From 01db2bb19d052c42885a76600dfe410d2e1b862f Mon Sep 17 00:00:00 2001 From: wux_labs Date: Fri, 10 Jan 2025 22:46:32 +0800 Subject: [PATCH] =?UTF-8?q?=E5=AE=8C=E5=96=84=E5=8A=9F=E8=83=BD=E3=80=82?= =?UTF-8?q?=E5=8F=91=E5=B8=83=201.0.0=20=E7=89=88=E6=9C=AC=E3=80=82?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- README.md | 183 +- package-lock.json | 7003 +++++++++++++++++ package.json | 115 + src/ai/config/AIConfig.ts | 1 + src/assets/images/watermark-compact.png | Bin 0 -> 3767 bytes src/assets/images/watermark-spacious.png | Bin 0 -> 3530 bytes src/components/Editor.ts | 1 + src/components/Footer.ts | 1 + src/components/Header.ts | 13 +- src/components/Icons.ts | 1 + src/components/ai/AIAction.ts | 12 +- src/components/containers/ChatContainer.ts | 14 +- src/components/containers/ImageContainer.ts | 15 +- src/components/containers/TocContainer.ts | 11 +- src/components/index.ts | 2 + src/components/menus/MenuButton.ts | 4 +- .../menus/bubble/AudioBubbleMenu.ts | 1 + .../menus/bubble/BubbleMenuPlugin.ts | 2 + .../menus/bubble/ImageBubbleMenu.ts | 1 + .../menus/bubble/TextSelectionBubbleMenu.ts | 2 + .../menus/bubble/VideoBubbleMenu.ts | 1 + .../menus/bubble/image/ImageFlipX.ts | 9 +- .../menus/bubble/image/ImageFlipY.ts | 9 +- src/components/menus/common/AlignCenter.ts | 11 +- .../menus/common/AlignDistributed.ts | 11 +- src/components/menus/common/AlignJustify.ts | 11 +- src/components/menus/common/AlignLeft.ts | 11 +- src/components/menus/common/AlignRight.ts | 11 +- src/components/menus/common/Bold.ts | 11 +- src/components/menus/common/FontColor.ts | 13 +- .../menus/common/FontSizeDecrease.ts | 11 +- .../menus/common/FontSizeIncrease.ts | 11 +- src/components/menus/common/Highlight.ts | 11 +- src/components/menus/common/Italic.ts | 11 +- src/components/menus/common/NodeDelete.ts | 11 +- src/components/menus/common/Strike.ts | 11 +- src/components/menus/common/Subscript.ts | 11 +- src/components/menus/common/Superscript.ts | 11 +- src/components/menus/common/Underline.ts | 11 +- .../menus/statusbar/CharacterCount.ts | 6 +- src/components/menus/statusbar/Feedback.ts | 11 +- src/components/menus/statusbar/Fullscreen.ts | 9 +- src/components/menus/statusbar/PoweredBy.ts | 11 +- src/components/menus/toolbar/Classic.ts | 4 +- src/components/menus/toolbar/Ribbon.ts | 3 +- src/components/menus/toolbar/ScrollableDiv.ts | 1 + src/components/menus/toolbar/ai/ToggleChat.ts | 11 +- .../menus/toolbar/ai/ToggleImage.ts | 11 +- .../menus/toolbar/base/BlockQuote.ts | 11 +- .../menus/toolbar/base/BulletList.ts | 10 +- .../menus/toolbar/base/ClearFormat.ts | 11 +- .../menus/toolbar/base/CodeBlock.ts | 11 +- .../menus/toolbar/base/FontFamily.ts | 8 +- src/components/menus/toolbar/base/FontSize.ts | 9 +- .../menus/toolbar/base/FormatPainter.ts | 11 +- src/components/menus/toolbar/base/Indent.ts | 11 +- .../menus/toolbar/base/LineHeight.ts | 11 +- .../menus/toolbar/base/OrderedList.ts | 11 +- src/components/menus/toolbar/base/Outdent.ts | 11 +- src/components/menus/toolbar/base/Print.ts | 11 +- src/components/menus/toolbar/base/Redo.ts | 11 +- src/components/menus/toolbar/base/TaskList.ts | 11 +- src/components/menus/toolbar/base/Undo.ts | 11 +- .../menus/toolbar/export/ExportDocx.ts | 11 +- .../menus/toolbar/export/ExportImage.ts | 11 +- .../menus/toolbar/export/ExportMarkdown.ts | 11 +- .../menus/toolbar/export/ExportOdt.ts | 11 +- .../menus/toolbar/export/ExportPdf.ts | 11 +- src/components/menus/toolbar/insert/Audio.ts | 11 +- src/components/menus/toolbar/insert/Emoji.ts | 11 +- .../menus/toolbar/insert/HardBreak.ts | 11 +- src/components/menus/toolbar/insert/Image.ts | 11 +- src/components/menus/toolbar/insert/Link.ts | 11 +- src/components/menus/toolbar/insert/Math.ts | 11 +- src/components/menus/toolbar/insert/Symbol.ts | 11 +- src/components/menus/toolbar/insert/Toc.ts | 10 +- src/components/menus/toolbar/insert/Video.ts | 11 +- .../menus/toolbar/page/BackgroundColor.ts | 11 +- .../menus/toolbar/page/ToggleToc.ts | 11 +- .../menus/toolbar/page/Watermark.ts | 11 +- .../menus/toolbar/table/AddColumnAfter.ts | 11 +- .../menus/toolbar/table/AddColumnBefore.ts | 11 +- .../menus/toolbar/table/AddRowAfter.ts | 11 +- .../menus/toolbar/table/AddRowBefore.ts | 11 +- .../menus/toolbar/table/DeleteColumn.ts | 11 +- .../menus/toolbar/table/DeleteRow.ts | 11 +- .../menus/toolbar/table/DeleteTable.ts | 11 +- .../menus/toolbar/table/InsertTable.ts | 11 +- .../menus/toolbar/tools/Diagrams.ts | 11 +- src/components/modals/CenterModal.ts | 1 + src/components/modals/FullScreenModal.ts | 4 +- src/components/popups/ColorPicker.ts | 4 +- src/core/UAIEditor.ts | 12 +- src/core/UAIExtensions.ts | 2 +- src/extensions/Audio.ts | 4 +- src/extensions/BulletList.ts | 1 + src/extensions/FontSize.ts | 1 + src/extensions/Image.ts | 4 +- src/extensions/Indent.ts | 2 + src/extensions/LineHeight.ts | 1 + src/extensions/NodeAlign.ts | 1 + src/extensions/OrderedList.ts | 1 + src/extensions/QuickCommand.ts | 5 +- src/extensions/SelectFile.ts | 2 + src/extensions/Selection.ts | 1 + src/extensions/Shortcuts.ts | 8 +- src/extensions/Toc.ts | 5 +- src/extensions/Video.ts | 4 +- src/i18n/zh.ts | 483 ++ src/index.ts | 3 + src/main.ts | 70 + src/styles/index.ts | 3 + src/styles/mixins.less | 127 + src/styles/uaieditor.less | 2374 ++++++ src/styles/variables.less | 102 + src/utils/CreateAvatar.ts | 1 + src/utils/DefineCustomElement.ts | 1 + src/utils/DiagramEditor.ts | 1 + src/utils/FileUploader.ts | 2 +- src/utils/MarkdownUtil.ts | 3 +- src/utils/Resize.ts | 1 + src/utils/UUID.ts | 1 + 122 files changed, 10997 insertions(+), 328 deletions(-) create mode 100644 package-lock.json create mode 100644 package.json create mode 100644 src/assets/images/watermark-compact.png create mode 100644 src/assets/images/watermark-spacious.png create mode 100644 src/i18n/zh.ts create mode 100644 src/index.ts create mode 100644 src/main.ts create mode 100644 src/styles/index.ts create mode 100644 src/styles/mixins.less create mode 100644 src/styles/uaieditor.less create mode 100644 src/styles/variables.less diff --git a/README.md b/README.md index 8906599..f161abe 100644 --- a/README.md +++ b/README.md @@ -1,32 +1,179 @@ -## 项目名称 -> 请介绍一下你的项目吧 +# UAI Editor:有爱文档,有爱、有AI、有UI。 +> 💪打造现代 UI 风格、面向 AI 的最强、最轻量级的个人&团队文档。 +> UAI Editor 是一个面向 AI 的、现代 UI 风格的下一代富文本编辑器。开箱即用、支持所有前端框架。 +- **【全行业】** 无论您是:金融、教育、医疗、零售、互联网还是传统行业。 +- **【全场景】** 无论您是:文章创作、会议记录、学术论文还是知识库管理。 +- **【全功能】** 功能丰富:文本编辑、格式排版、多媒体插入、表格制作等。 +- **【全模态】** 人工智能:文字、语音、图片、视频,全模态功能创作体验。 -## 运行条件 -> 列出运行该项目所必须的条件和相关依赖 -* 条件一 -* 条件二 -* 条件三 +## 与众不同 +UAI Editor 提供了完善的文档编辑能力和 AI 创作能力,支持 Markdown 语法,支持基础的富文本编辑功能,支持插入多种节点类型,提供了多种类型的实用工具。作为一个独立的纯前端文档编辑器,UAI Editor 可以轻松无缝集成到 Vue、React、Layui、Angular 等几乎任何前端框架。 +### 场景丰富 -## 运行说明 -> 说明如何运行和使用你的项目,建议给出具体的步骤说明 -* 操作一 -* 操作二 -* 操作三 +* 无论您是:金融、教育、医疗、零售、互联网还是传统行业。 +* 无论您是:文章创作、会议记录、学术论文还是知识库管理。 +* 即便是个人笔记整理,UAI Editor 都能成为您得力的助手。 +### 功能全面 +* **基础:** 标题、正文、字体、字号、加粗、斜体、下划线、删除线、链接、行内代码、上标、下标、分割线、引用... +* **增强:** 撤销、重做、格式刷、橡皮擦、字体颜色、背景颜色、对齐方式、行高、待办事项、有(无)序列表、段落缩进... +* **附件:** 支持图片、语音、视频、文件功能,支持选择上传、支持拖动调整大小... +* **Markdown:** 标题、引用、表格、图片、代码块、高亮块、各种列表、粗体、斜体、删除线... +* **AI:** AI 续写、AI 优化、AI 校对、AI 翻译、自定义 AI 菜单及其 Prompts... +* **更多:** 国际化、主题切换... -## 测试说明 -> 如果有测试相关内容需要说明,请填写在这里 +### 简单易用 +* UAI Editor 基于 Web Component 开发,支持与任意主流的前端框架集成。 +* UAI Editor 提供了友好的 UI 界面,强大的工具栏支持,助您轻松实现文档编辑。 +* UAI Editor 提供了便捷的快捷键支持,让您的文档编辑快人一步。 +### AI 驱动 -## 技术架构 -> 使用的技术框架或系统架构图等相关说明,请填写在这里 +* UAI Editor 旨在解决 Web 应用中文档编辑的复杂性,提供类似 Microsoft Word 的强大编辑能力,同时保持 Web 应用的便捷性。 +* UAI Editor 打造了一个完全由 AI 驱动的富文本编辑器,同时支持对接任意大模型,包括私有的大模型。 +* UAI Editor 支持全模态大模型,包括文本生成、语音识别、语音生成、文生图、图生图、局部重绘、图片理解、文生视频、图生视频、视频理解等。 +* UAI Editor 私有模型适配多种环境,包括英伟达显卡、天数智芯显卡、Pytorch、IPEX等。 +## 软件安装 -## 协作者 -> 高效的协作会激发无尽的创造力,将他们的名字记录在这里吧 \ No newline at end of file +### 基础软件安装 + +首先,我们需要安装 `nodejs`、`npm`等用于开发的基础软件。 + +Node.js 可以通过不同的方式安装,所有主要平台的官方软件包均可在 [https://nodejs.cn/download/](https://nodejs.cn/download/) 获得。 + +一种非常方便的安装 Node.js 的方法是通过包管理器,[https://nodejs.cn/download/package-manager/](https://nodejs.cn/download/package-manager/) 中列出了适用于 macOS、Linux 和 Windows 的其他软件包管理器。 + +### 有爱文档安装 + +其次,我们需要安装 UAI Editor 软件,软件已经打包发布到 [https://www.npmjs.com/](https://www.npmjs.com/) 平台,可以直接通过以下命令安装: + +```bash +npm i uai-editor +``` + +## 软件集成 + +然后,我们可以将 UAI Editor 与自己的项目进行集成。 + +作为一个独立的纯前端文档编辑器,UAI Editor 可以独立使用,也可以轻松无缝集成到 Vue、React、Layui、Angular 等几乎任何前端框架。 + +### 独立使用 + +* index.html + +```html + + + + + + UAI Editor + + + +
+ + + +``` + +* main.ts + +```js +import { UAIEditor } from "uai-editor"; +import "uai-editor/dist/style.css"; + +new UAIEditor({ + element: "#uai-editor", + content: 'UAI Editor 是一个面向 AI 的、现代 UI 风格的下一代富文本编辑器。开箱即用、支持所有前端框架。', +}) +``` + +### 与 VUE 集成 + +```ts + + + +``` + +### 与 React 集成 + +```js +import {useEffect, useRef} from 'react'; +import { UAIEditor } from "uai-editor"; +import "uai-editor/dist/style.css"; + +function App() { + const divRef = useRef(null); + useEffect(() => { + if (divRef.current) { + const uaiEditor = new UAIEditor({ + element: divRef.current, + content: 'UAI Editor 是一个面向 AI 的、现代 UI 风格的下一代富文本编辑器。开箱即用、支持所有前端框架。', + }) + return ()=>{ + uaiEditor.destroy(); + } + } + }, []) + + return ( + <> +
+ + ) +} + +export default App +``` + +## 软件运行 + +最后,我们需要运行项目,执行以下命令可以运行项目或自己的项目: + +```bash +npm i + +npm run dev +``` + +## 开源优势 + +* **免费使用:** 作为开源项目,UAI Editor 采用 [MIT 许可证](LICENSE) 对所有用户免费开放,无需担心版权问题。 + +* **持续更新:** UAI Editor 将持续迭代,不断优化功能,提升用户体验。 + +* **定制开发:** 开发者可根据项目需求进行定制化开发,打造专属的文档编辑器。 + +## 开源协议 + +UAI Editor 采用 [MIT 许可证](LICENSE),您可以自由地使用、修改和分发软件,可以用于个人项目或商业项目,**但禁止用于参加创新、创意类比赛**。 + +## 支持我们 + +如果您觉得 UAI Editor 有用,请考虑通过以下方式支持我们: + +* ⭐ 给 UAI Editor 仓库 点个 Star,表示对项目的支持。 +* 🔗 如果您在项目中使用了 UAI Editor,请添加一个链接到 [https://gitee.com/AI-Labs/uai-editor](https://gitee.com/AI-Labs/uai-editor)。 \ No newline at end of file diff --git a/package-lock.json b/package-lock.json new file mode 100644 index 0000000..322596c --- /dev/null +++ b/package-lock.json @@ -0,0 +1,7003 @@ +{ + "name": "uai-editor", + "version": "1.0.0", + "lockfileVersion": 3, + "requires": true, + "packages": { + "": { + "name": "uai-editor", + "version": "1.0.0", + "license": "MIT", + "dependencies": { + "@tiptap/core": "^2.10.3", + "@tiptap/extension-bubble-menu": "^2.10.3", + "@tiptap/extension-bullet-list": "^2.10.3", + "@tiptap/extension-character-count": "^2.10.3", + "@tiptap/extension-code-block-lowlight": "^2.10.3", + "@tiptap/extension-color": "^2.10.3", + "@tiptap/extension-font-family": "^2.10.3", + "@tiptap/extension-gapcursor": "^2.10.3", + "@tiptap/extension-heading": "^2.10.3", + "@tiptap/extension-highlight": "^2.10.3", + "@tiptap/extension-image": "^2.10.3", + "@tiptap/extension-link": "^2.10.3", + "@tiptap/extension-list-item": "^2.10.3", + "@tiptap/extension-mention": "^2.10.3", + "@tiptap/extension-placeholder": "^2.10.3", + "@tiptap/extension-subscript": "^2.10.3", + "@tiptap/extension-superscript": "^2.10.3", + "@tiptap/extension-table": "^2.10.3", + "@tiptap/extension-table-cell": "^2.10.3", + "@tiptap/extension-table-header": "^2.10.3", + "@tiptap/extension-table-row": "^2.10.3", + "@tiptap/extension-task-item": "^2.10.3", + "@tiptap/extension-task-list": "^2.10.3", + "@tiptap/extension-text-align": "^2.10.3", + "@tiptap/extension-text-style": "^2.10.3", + "@tiptap/extension-underline": "^2.10.3", + "@tiptap/pm": "^2.10.3", + "@tiptap/starter-kit": "^2.10.3", + "@tiptap/suggestion": "^2.10.3", + "@types/bootstrap": "^5.2.10", + "@types/evaluatex": "^2.2.8", + "@types/file-saver": "^2.0.7", + "@types/katex": "^0.16.7", + "@vscode/markdown-it-katex": "^1.1.0", + "bootstrap": "^5.3.3", + "crypto-js": "^4.2.0", + "dom-to-image-more": "^3.5.0", + "evaluatex": "^2.2.0", + "fast-glob": "^3.3.2", + "fetch-event-stream": "^0.1.5", + "file-saver": "^2.0.5", + "github-markdown-css": "^5.7.0", + "i18next": "^23.16.2", + "katex": "^0.16.11", + "lowlight": "^3.1.0", + "markdown-it": "^14.1.0", + "markdown-it-container": "^4.0.0", + "monaco-editor": "^0.52.2", + "openai": "^4.77.0", + "tippy.js": "^6.3.7", + "turndown": "^7.2.0", + "vite-plugin-svg-icons": "^2.0.1" + }, + "devDependencies": { + "@tiptap-pro/extension-export": "^2.16.1", + "@tiptap-pro/extension-mathematics": "^2.16.2", + "@tiptap-pro/extension-table-of-contents": "^2.17.0", + "@types/markdown-it": "^14.1.2", + "@types/markdown-it-container": "^2.0.10", + "@types/node": "^20.9.0", + "@types/turndown": "^5.0.5", + "less": "^4.2.0", + "typescript": "^5.0.2", + "vite": "^5.4.6", + "vite-plugin-dts": "^3.6.3" + } + }, + "node_modules/@babel/helper-string-parser": { + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.25.9.tgz", + "integrity": "sha512-4A/SCr/2KLd5jrtOMFzaKjVtAei3+2r/NChoBNoZ3EyP/+GlhoaEGoWOZUmFmoITP7zOJyHIMm+DYRd8o3PvHA==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-validator-identifier": { + "version": "7.25.9", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.25.9.tgz", + "integrity": "sha512-Ed61U6XJc3CVRfkERJWDz4dJwKe7iLmmJsbOGu9wSloNSFttHV0I8g6UAgb7qnK5ly5bGLPd4oXZlxCdANBOWQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/parser": { + "version": "7.26.2", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.26.2.tgz", + "integrity": "sha512-DWMCZH9WA4Maitz2q21SRKHo9QXZxkDsbNZoVD62gusNtNBBqDg9i7uOhASfTfIGNzW+O+r7+jAlM8dwphcJKQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/types": "^7.26.0" + }, + "bin": { + "parser": "bin/babel-parser.js" + }, + "engines": { + "node": ">=6.0.0" + } + }, + "node_modules/@babel/runtime": { + "version": "7.26.0", + "resolved": "https://registry.npmjs.org/@babel/runtime/-/runtime-7.26.0.tgz", + "integrity": "sha512-FDSOghenHTiToteC/QRlv2q3DhPZ/oOXTBoirfWNx1Cx3TMVcGWQtMMmQcSvb/JjpNeGzx8Pq/b4fKEJuWm1sw==", + "license": "MIT", + "dependencies": { + "regenerator-runtime": "^0.14.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/types": { + "version": "7.26.0", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.26.0.tgz", + "integrity": "sha512-Z/yiTPj+lDVnF7lWeKCIJzaIkI0vYO87dMpZ4bg4TDrFe4XXLFWL1TbXU27gBP3QccxV9mZICCrnjnYlJjXHOA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-string-parser": "^7.25.9", + "@babel/helper-validator-identifier": "^7.25.9" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@esbuild/aix-ppc64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.21.5.tgz", + "integrity": "sha512-1SDgH6ZSPTlggy1yI6+Dbkiz8xzpHJEVAlF/AM1tHPLsf5STom9rwtjE4hKAF20FfXXNTFqEYXyJNWh1GiZedQ==", + "cpu": [ + "ppc64" + ], + "license": "MIT", + "optional": true, + "os": [ + "aix" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/android-arm": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm/-/android-arm-0.21.5.tgz", + "integrity": "sha512-vCPvzSjpPHEi1siZdlvAlsPxXl7WbOVUBBAowWug4rJHb68Ox8KualB+1ocNvT5fjv6wpkX6o/iEpbDrf68zcg==", + "cpu": [ + "arm" + ], + "license": "MIT", + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/android-arm64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/android-arm64/-/android-arm64-0.21.5.tgz", + "integrity": "sha512-c0uX9VAUBQ7dTDCjq+wdyGLowMdtR/GoC2U5IYk/7D1H1JYC0qseD7+11iMP2mRLN9RcCMRcjC4YMclCzGwS/A==", + "cpu": [ + "arm64" + ], + "license": "MIT", + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/android-x64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/android-x64/-/android-x64-0.21.5.tgz", + "integrity": "sha512-D7aPRUUNHRBwHxzxRvp856rjUHRFW1SdQATKXH2hqA0kAZb1hKmi02OpYRacl0TxIGz/ZmXWlbZgjwWYaCakTA==", + "cpu": [ + "x64" + ], + "license": "MIT", + "optional": true, + "os": [ + "android" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/darwin-arm64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-arm64/-/darwin-arm64-0.21.5.tgz", + "integrity": "sha512-DwqXqZyuk5AiWWf3UfLiRDJ5EDd49zg6O9wclZ7kUMv2WRFr4HKjXp/5t8JZ11QbQfUS6/cRCKGwYhtNAY88kQ==", + "cpu": [ + "arm64" + ], + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/darwin-x64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/darwin-x64/-/darwin-x64-0.21.5.tgz", + "integrity": "sha512-se/JjF8NlmKVG4kNIuyWMV/22ZaerB+qaSi5MdrXtd6R08kvs2qCN4C09miupktDitvh8jRFflwGFBQcxZRjbw==", + "cpu": [ + "x64" + ], + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/freebsd-arm64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-arm64/-/freebsd-arm64-0.21.5.tgz", + "integrity": "sha512-5JcRxxRDUJLX8JXp/wcBCy3pENnCgBR9bN6JsY4OmhfUtIHe3ZW0mawA7+RDAcMLrMIZaf03NlQiX9DGyB8h4g==", + "cpu": [ + "arm64" + ], + "license": "MIT", + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/freebsd-x64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/freebsd-x64/-/freebsd-x64-0.21.5.tgz", + "integrity": "sha512-J95kNBj1zkbMXtHVH29bBriQygMXqoVQOQYA+ISs0/2l3T9/kj42ow2mpqerRBxDJnmkUDCaQT/dfNXWX/ZZCQ==", + "cpu": [ + "x64" + ], + "license": "MIT", + "optional": true, + "os": [ + "freebsd" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-arm": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm/-/linux-arm-0.21.5.tgz", + "integrity": "sha512-bPb5AHZtbeNGjCKVZ9UGqGwo8EUu4cLq68E95A53KlxAPRmUyYv2D6F0uUI65XisGOL1hBP5mTronbgo+0bFcA==", + "cpu": [ + "arm" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-arm64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-arm64/-/linux-arm64-0.21.5.tgz", + "integrity": "sha512-ibKvmyYzKsBeX8d8I7MH/TMfWDXBF3db4qM6sy+7re0YXya+K1cem3on9XgdT2EQGMu4hQyZhan7TeQ8XkGp4Q==", + "cpu": [ + "arm64" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-ia32": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ia32/-/linux-ia32-0.21.5.tgz", + "integrity": "sha512-YvjXDqLRqPDl2dvRODYmmhz4rPeVKYvppfGYKSNGdyZkA01046pLWyRKKI3ax8fbJoK5QbxblURkwK/MWY18Tg==", + "cpu": [ + "ia32" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-loong64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-loong64/-/linux-loong64-0.21.5.tgz", + "integrity": "sha512-uHf1BmMG8qEvzdrzAqg2SIG/02+4/DHB6a9Kbya0XDvwDEKCoC8ZRWI5JJvNdUjtciBGFQ5PuBlpEOXQj+JQSg==", + "cpu": [ + "loong64" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-mips64el": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-mips64el/-/linux-mips64el-0.21.5.tgz", + "integrity": "sha512-IajOmO+KJK23bj52dFSNCMsz1QP1DqM6cwLUv3W1QwyxkyIWecfafnI555fvSGqEKwjMXVLokcV5ygHW5b3Jbg==", + "cpu": [ + "mips64el" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-ppc64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-ppc64/-/linux-ppc64-0.21.5.tgz", + "integrity": "sha512-1hHV/Z4OEfMwpLO8rp7CvlhBDnjsC3CttJXIhBi+5Aj5r+MBvy4egg7wCbe//hSsT+RvDAG7s81tAvpL2XAE4w==", + "cpu": [ + "ppc64" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-riscv64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-riscv64/-/linux-riscv64-0.21.5.tgz", + "integrity": "sha512-2HdXDMd9GMgTGrPWnJzP2ALSokE/0O5HhTUvWIbD3YdjME8JwvSCnNGBnTThKGEB91OZhzrJ4qIIxk/SBmyDDA==", + "cpu": [ + "riscv64" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-s390x": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-s390x/-/linux-s390x-0.21.5.tgz", + "integrity": "sha512-zus5sxzqBJD3eXxwvjN1yQkRepANgxE9lgOW2qLnmr8ikMTphkjgXu1HR01K4FJg8h1kEEDAqDcZQtbrRnB41A==", + "cpu": [ + "s390x" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/linux-x64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/linux-x64/-/linux-x64-0.21.5.tgz", + "integrity": "sha512-1rYdTpyv03iycF1+BhzrzQJCdOuAOtaqHTWJZCWvijKD2N5Xu0TtVC8/+1faWqcP9iBCWOmjmhoH94dH82BxPQ==", + "cpu": [ + "x64" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/netbsd-x64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/netbsd-x64/-/netbsd-x64-0.21.5.tgz", + "integrity": "sha512-Woi2MXzXjMULccIwMnLciyZH4nCIMpWQAs049KEeMvOcNADVxo0UBIQPfSmxB3CWKedngg7sWZdLvLczpe0tLg==", + "cpu": [ + "x64" + ], + "license": "MIT", + "optional": true, + "os": [ + "netbsd" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/openbsd-x64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/openbsd-x64/-/openbsd-x64-0.21.5.tgz", + "integrity": "sha512-HLNNw99xsvx12lFBUwoT8EVCsSvRNDVxNpjZ7bPn947b8gJPzeHWyNVhFsaerc0n3TsbOINvRP2byTZ5LKezow==", + "cpu": [ + "x64" + ], + "license": "MIT", + "optional": true, + "os": [ + "openbsd" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/sunos-x64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/sunos-x64/-/sunos-x64-0.21.5.tgz", + "integrity": "sha512-6+gjmFpfy0BHU5Tpptkuh8+uw3mnrvgs+dSPQXQOv3ekbordwnzTVEb4qnIvQcYXq6gzkyTnoZ9dZG+D4garKg==", + "cpu": [ + "x64" + ], + "license": "MIT", + "optional": true, + "os": [ + "sunos" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/win32-arm64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/win32-arm64/-/win32-arm64-0.21.5.tgz", + "integrity": "sha512-Z0gOTd75VvXqyq7nsl93zwahcTROgqvuAcYDUr+vOv8uHhNSKROyU961kgtCD1e95IqPKSQKH7tBTslnS3tA8A==", + "cpu": [ + "arm64" + ], + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/win32-ia32": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/win32-ia32/-/win32-ia32-0.21.5.tgz", + "integrity": "sha512-SWXFF1CL2RVNMaVs+BBClwtfZSvDgtL//G/smwAc5oVK/UPu2Gu9tIaRgFmYFFKrmg3SyAjSrElf0TiJ1v8fYA==", + "cpu": [ + "ia32" + ], + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@esbuild/win32-x64": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/@esbuild/win32-x64/-/win32-x64-0.21.5.tgz", + "integrity": "sha512-tQd/1efJuzPC6rCFwEvLtci/xNFcTZknmXs98FYDfGE4wP9ClFV98nyKrzJKVPMhdDnjzLhdUyMX4PsQAPjwIw==", + "cpu": [ + "x64" + ], + "license": "MIT", + "optional": true, + "os": [ + "win32" + ], + "engines": { + "node": ">=12" + } + }, + "node_modules/@jridgewell/sourcemap-codec": { + "version": "1.5.0", + "resolved": "https://registry.npmjs.org/@jridgewell/sourcemap-codec/-/sourcemap-codec-1.5.0.tgz", + "integrity": "sha512-gv3ZRaISU3fjPAgNsriBRqGWQL6quFx04YMPW/zD8XMLsU32mhCCbfbO6KZFLjvYpCZ8zyDEgqsgf+PwPaM7GQ==", + "dev": true, + "license": "MIT" + }, + "node_modules/@microsoft/api-extractor": { + "version": "7.43.0", + "resolved": "https://registry.npmjs.org/@microsoft/api-extractor/-/api-extractor-7.43.0.tgz", + "integrity": "sha512-GFhTcJpB+MI6FhvXEI9b2K0snulNLWHqC/BbcJtyNYcKUiw7l3Lgis5ApsYncJ0leALX7/of4XfmXk+maT111w==", + "dev": true, + "license": "MIT", + "dependencies": { + "@microsoft/api-extractor-model": "7.28.13", + "@microsoft/tsdoc": "0.14.2", + "@microsoft/tsdoc-config": "~0.16.1", + "@rushstack/node-core-library": "4.0.2", + "@rushstack/rig-package": "0.5.2", + "@rushstack/terminal": "0.10.0", + "@rushstack/ts-command-line": "4.19.1", + "lodash": "~4.17.15", + "minimatch": "~3.0.3", + "resolve": "~1.22.1", + "semver": "~7.5.4", + "source-map": "~0.6.1", + "typescript": "5.4.2" + }, + "bin": { + "api-extractor": "bin/api-extractor" + } + }, + "node_modules/@microsoft/api-extractor-model": { + "version": "7.28.13", + "resolved": "https://registry.npmjs.org/@microsoft/api-extractor-model/-/api-extractor-model-7.28.13.tgz", + "integrity": "sha512-39v/JyldX4MS9uzHcdfmjjfS6cYGAoXV+io8B5a338pkHiSt+gy2eXQ0Q7cGFJ7quSa1VqqlMdlPrB6sLR/cAw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@microsoft/tsdoc": "0.14.2", + "@microsoft/tsdoc-config": "~0.16.1", + "@rushstack/node-core-library": "4.0.2" + } + }, + "node_modules/@microsoft/api-extractor/node_modules/semver": { + "version": "7.5.4", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", + "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", + "dev": true, + "license": "ISC", + "dependencies": { + "lru-cache": "^6.0.0" + }, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/@microsoft/api-extractor/node_modules/typescript": { + "version": "5.4.2", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.4.2.tgz", + "integrity": "sha512-+2/g0Fds1ERlP6JsakQQDXjZdZMM+rqpamFZJEKh4kwTIn3iDkgKtby0CeNd5ATNZ4Ry1ax15TMx0W2V+miizQ==", + "dev": true, + "license": "Apache-2.0", + "bin": { + "tsc": "bin/tsc", + "tsserver": "bin/tsserver" + }, + "engines": { + "node": ">=14.17" + } + }, + "node_modules/@microsoft/tsdoc": { + "version": "0.14.2", + "resolved": "https://registry.npmjs.org/@microsoft/tsdoc/-/tsdoc-0.14.2.tgz", + "integrity": "sha512-9b8mPpKrfeGRuhFH5iO1iwCLeIIsV6+H1sRfxbkoGXIyQE2BTsPd9zqSqQJ+pv5sJ/hT5M1zvOFL02MnEezFug==", + "dev": true, + "license": "MIT" + }, + "node_modules/@microsoft/tsdoc-config": { + "version": "0.16.2", + "resolved": "https://registry.npmjs.org/@microsoft/tsdoc-config/-/tsdoc-config-0.16.2.tgz", + "integrity": "sha512-OGiIzzoBLgWWR0UdRJX98oYO+XKGf7tiK4Zk6tQ/E4IJqGCe7dvkTvgDZV5cFJUzLGDOjeAXrnZoA6QkVySuxw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@microsoft/tsdoc": "0.14.2", + "ajv": "~6.12.6", + "jju": "~1.4.0", + "resolve": "~1.19.0" + } + }, + "node_modules/@microsoft/tsdoc-config/node_modules/resolve": { + "version": "1.19.0", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.19.0.tgz", + "integrity": "sha512-rArEXAgsBG4UgRGcynxWIWKFvh/XZCcS8UJdHhwy91zwAvCZIbcs+vAbflgBnNjYMs/i/i+/Ux6IZhML1yPvxg==", + "dev": true, + "license": "MIT", + "dependencies": { + "is-core-module": "^2.1.0", + "path-parse": "^1.0.6" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/@mixmark-io/domino": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/@mixmark-io/domino/-/domino-2.2.0.tgz", + "integrity": "sha512-Y28PR25bHXUg88kCV7nivXrP2Nj2RueZ3/l/jdx6J9f8J4nsEGcgX0Qe6lt7Pa+J79+kPiJU3LguR6O/6zrLOw==", + "license": "BSD-2-Clause" + }, + "node_modules/@nodelib/fs.scandir": { + "version": "2.1.5", + "resolved": "https://registry.npmmirror.com/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz", + "integrity": "sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==", + "license": "MIT", + "dependencies": { + "@nodelib/fs.stat": "2.0.5", + "run-parallel": "^1.1.9" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/@nodelib/fs.stat": { + "version": "2.0.5", + "resolved": "https://registry.npmmirror.com/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz", + "integrity": "sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==", + "license": "MIT", + "engines": { + "node": ">= 8" + } + }, + "node_modules/@nodelib/fs.walk": { + "version": "1.2.8", + "resolved": "https://registry.npmmirror.com/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz", + "integrity": "sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==", + "license": "MIT", + "dependencies": { + "@nodelib/fs.scandir": "2.1.5", + "fastq": "^1.6.0" + }, + "engines": { + "node": ">= 8" + } + }, + "node_modules/@popperjs/core": { + "version": "2.11.8", + "resolved": "https://registry.npmjs.org/@popperjs/core/-/core-2.11.8.tgz", + "integrity": "sha512-P1st0aksCrn9sGZhp8GMYwBnQsbvAWsZAX44oXNNvLHGqAOcoVxmjZiohstwQ7SqKnbR47akdNi+uleWD8+g6A==", + "license": "MIT", + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/popperjs" + } + }, + "node_modules/@remirror/core-constants": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/@remirror/core-constants/-/core-constants-3.0.0.tgz", + "integrity": "sha512-42aWfPrimMfDKDi4YegyS7x+/0tlzaqwPQCULLanv3DMIlu96KTJR0fM5isWX2UViOqlGnX6YFgqWepcX+XMNg==", + "license": "MIT" + }, + "node_modules/@rollup/pluginutils": { + "version": "5.1.3", + "resolved": "https://registry.npmjs.org/@rollup/pluginutils/-/pluginutils-5.1.3.tgz", + "integrity": "sha512-Pnsb6f32CD2W3uCaLZIzDmeFyQ2b8UWMFI7xtwUezpcGBDVDW6y9XgAWIlARiGAo6eNF5FK5aQTr0LFyNyqq5A==", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/estree": "^1.0.0", + "estree-walker": "^2.0.2", + "picomatch": "^4.0.2" + }, + "engines": { + "node": ">=14.0.0" + }, + "peerDependencies": { + "rollup": "^1.20.0||^2.0.0||^3.0.0||^4.0.0" + }, + "peerDependenciesMeta": { + "rollup": { + "optional": true + } + } + }, + "node_modules/@rollup/rollup-android-arm-eabi": { + "version": "4.28.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.28.0.tgz", + "integrity": "sha512-wLJuPLT6grGZsy34g4N1yRfYeouklTgPhH1gWXCYspenKYD0s3cR99ZevOGw5BexMNywkbV3UkjADisozBmpPQ==", + "cpu": [ + "arm" + ], + "license": "MIT", + "optional": true, + "os": [ + "android" + ] + }, + "node_modules/@rollup/rollup-android-arm64": { + "version": "4.28.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.28.0.tgz", + "integrity": "sha512-eiNkznlo0dLmVG/6wf+Ifi/v78G4d4QxRhuUl+s8EWZpDewgk7PX3ZyECUXU0Zq/Ca+8nU8cQpNC4Xgn2gFNDA==", + "cpu": [ + "arm64" + ], + "license": "MIT", + "optional": true, + "os": [ + "android" + ] + }, + "node_modules/@rollup/rollup-darwin-arm64": { + "version": "4.28.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.28.0.tgz", + "integrity": "sha512-lmKx9yHsppblnLQZOGxdO66gT77bvdBtr/0P+TPOseowE7D9AJoBw8ZDULRasXRWf1Z86/gcOdpBrV6VDUY36Q==", + "cpu": [ + "arm64" + ], + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ] + }, + "node_modules/@rollup/rollup-darwin-x64": { + "version": "4.28.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.28.0.tgz", + "integrity": "sha512-8hxgfReVs7k9Js1uAIhS6zq3I+wKQETInnWQtgzt8JfGx51R1N6DRVy3F4o0lQwumbErRz52YqwjfvuwRxGv1w==", + "cpu": [ + "x64" + ], + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ] + }, + "node_modules/@rollup/rollup-freebsd-arm64": { + "version": "4.28.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-freebsd-arm64/-/rollup-freebsd-arm64-4.28.0.tgz", + "integrity": "sha512-lA1zZB3bFx5oxu9fYud4+g1mt+lYXCoch0M0V/xhqLoGatbzVse0wlSQ1UYOWKpuSu3gyN4qEc0Dxf/DII1bhQ==", + "cpu": [ + "arm64" + ], + "license": "MIT", + "optional": true, + "os": [ + "freebsd" + ] + }, + "node_modules/@rollup/rollup-freebsd-x64": { + "version": "4.28.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-freebsd-x64/-/rollup-freebsd-x64-4.28.0.tgz", + "integrity": "sha512-aI2plavbUDjCQB/sRbeUZWX9qp12GfYkYSJOrdYTL/C5D53bsE2/nBPuoiJKoWp5SN78v2Vr8ZPnB+/VbQ2pFA==", + "cpu": [ + "x64" + ], + "license": "MIT", + "optional": true, + "os": [ + "freebsd" + ] + }, + "node_modules/@rollup/rollup-linux-arm-gnueabihf": { + "version": "4.28.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.28.0.tgz", + "integrity": "sha512-WXveUPKtfqtaNvpf0iOb0M6xC64GzUX/OowbqfiCSXTdi/jLlOmH0Ba94/OkiY2yTGTwteo4/dsHRfh5bDCZ+w==", + "cpu": [ + "arm" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-arm-musleabihf": { + "version": "4.28.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-musleabihf/-/rollup-linux-arm-musleabihf-4.28.0.tgz", + "integrity": "sha512-yLc3O2NtOQR67lI79zsSc7lk31xjwcaocvdD1twL64PK1yNaIqCeWI9L5B4MFPAVGEVjH5k1oWSGuYX1Wutxpg==", + "cpu": [ + "arm" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-arm64-gnu": { + "version": "4.28.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.28.0.tgz", + "integrity": "sha512-+P9G9hjEpHucHRXqesY+3X9hD2wh0iNnJXX/QhS/J5vTdG6VhNYMxJ2rJkQOxRUd17u5mbMLHM7yWGZdAASfcg==", + "cpu": [ + "arm64" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-arm64-musl": { + "version": "4.28.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.28.0.tgz", + "integrity": "sha512-1xsm2rCKSTpKzi5/ypT5wfc+4bOGa/9yI/eaOLW0oMs7qpC542APWhl4A37AENGZ6St6GBMWhCCMM6tXgTIplw==", + "cpu": [ + "arm64" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-powerpc64le-gnu": { + "version": "4.28.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-powerpc64le-gnu/-/rollup-linux-powerpc64le-gnu-4.28.0.tgz", + "integrity": "sha512-zgWxMq8neVQeXL+ouSf6S7DoNeo6EPgi1eeqHXVKQxqPy1B2NvTbaOUWPn/7CfMKL7xvhV0/+fq/Z/J69g1WAQ==", + "cpu": [ + "ppc64" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-riscv64-gnu": { + "version": "4.28.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-gnu/-/rollup-linux-riscv64-gnu-4.28.0.tgz", + "integrity": "sha512-VEdVYacLniRxbRJLNtzwGt5vwS0ycYshofI7cWAfj7Vg5asqj+pt+Q6x4n+AONSZW/kVm+5nklde0qs2EUwU2g==", + "cpu": [ + "riscv64" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-s390x-gnu": { + "version": "4.28.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-s390x-gnu/-/rollup-linux-s390x-gnu-4.28.0.tgz", + "integrity": "sha512-LQlP5t2hcDJh8HV8RELD9/xlYtEzJkm/aWGsauvdO2ulfl3QYRjqrKW+mGAIWP5kdNCBheqqqYIGElSRCaXfpw==", + "cpu": [ + "s390x" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-x64-gnu": { + "version": "4.28.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.28.0.tgz", + "integrity": "sha512-Nl4KIzteVEKE9BdAvYoTkW19pa7LR/RBrT6F1dJCV/3pbjwDcaOq+edkP0LXuJ9kflW/xOK414X78r+K84+msw==", + "cpu": [ + "x64" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-linux-x64-musl": { + "version": "4.28.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.28.0.tgz", + "integrity": "sha512-eKpJr4vBDOi4goT75MvW+0dXcNUqisK4jvibY9vDdlgLx+yekxSm55StsHbxUsRxSTt3JEQvlr3cGDkzcSP8bw==", + "cpu": [ + "x64" + ], + "license": "MIT", + "optional": true, + "os": [ + "linux" + ] + }, + "node_modules/@rollup/rollup-win32-arm64-msvc": { + "version": "4.28.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.28.0.tgz", + "integrity": "sha512-Vi+WR62xWGsE/Oj+mD0FNAPY2MEox3cfyG0zLpotZdehPFXwz6lypkGs5y38Jd/NVSbOD02aVad6q6QYF7i8Bg==", + "cpu": [ + "arm64" + ], + "license": "MIT", + "optional": true, + "os": [ + "win32" + ] + }, + "node_modules/@rollup/rollup-win32-ia32-msvc": { + "version": "4.28.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.28.0.tgz", + "integrity": "sha512-kN/Vpip8emMLn/eOza+4JwqDZBL6MPNpkdaEsgUtW1NYN3DZvZqSQrbKzJcTL6hd8YNmFTn7XGWMwccOcJBL0A==", + "cpu": [ + "ia32" + ], + "license": "MIT", + "optional": true, + "os": [ + "win32" + ] + }, + "node_modules/@rollup/rollup-win32-x64-msvc": { + "version": "4.28.0", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.28.0.tgz", + "integrity": "sha512-Bvno2/aZT6usSa7lRDL2+hMjVAGjuqaymF1ApZm31JXzniR/hvr14jpU+/z4X6Gt5BPlzosscyJZGUvguXIqeQ==", + "cpu": [ + "x64" + ], + "license": "MIT", + "optional": true, + "os": [ + "win32" + ] + }, + "node_modules/@rushstack/node-core-library": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/@rushstack/node-core-library/-/node-core-library-4.0.2.tgz", + "integrity": "sha512-hyES82QVpkfQMeBMteQUnrhASL/KHPhd7iJ8euduwNJG4mu2GSOKybf0rOEjOm1Wz7CwJEUm9y0yD7jg2C1bfg==", + "dev": true, + "license": "MIT", + "dependencies": { + "fs-extra": "~7.0.1", + "import-lazy": "~4.0.0", + "jju": "~1.4.0", + "resolve": "~1.22.1", + "semver": "~7.5.4", + "z-schema": "~5.0.2" + }, + "peerDependencies": { + "@types/node": "*" + }, + "peerDependenciesMeta": { + "@types/node": { + "optional": true + } + } + }, + "node_modules/@rushstack/node-core-library/node_modules/semver": { + "version": "7.5.4", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.5.4.tgz", + "integrity": "sha512-1bCSESV6Pv+i21Hvpxp3Dx+pSD8lIPt8uVjRrxAUt/nbswYc+tK6Y2btiULjd4+fnq15PX+nqQDC7Oft7WkwcA==", + "dev": true, + "license": "ISC", + "dependencies": { + "lru-cache": "^6.0.0" + }, + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/@rushstack/rig-package": { + "version": "0.5.2", + "resolved": "https://registry.npmjs.org/@rushstack/rig-package/-/rig-package-0.5.2.tgz", + "integrity": "sha512-mUDecIJeH3yYGZs2a48k+pbhM6JYwWlgjs2Ca5f2n1G2/kgdgP9D/07oglEGf6mRyXEnazhEENeYTSNDRCwdqA==", + "dev": true, + "license": "MIT", + "dependencies": { + "resolve": "~1.22.1", + "strip-json-comments": "~3.1.1" + } + }, + "node_modules/@rushstack/terminal": { + "version": "0.10.0", + "resolved": "https://registry.npmjs.org/@rushstack/terminal/-/terminal-0.10.0.tgz", + "integrity": "sha512-UbELbXnUdc7EKwfH2sb8ChqNgapUOdqcCIdQP4NGxBpTZV2sQyeekuK3zmfQSa/MN+/7b4kBogl2wq0vpkpYGw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@rushstack/node-core-library": "4.0.2", + "supports-color": "~8.1.1" + }, + "peerDependencies": { + "@types/node": "*" + }, + "peerDependenciesMeta": { + "@types/node": { + "optional": true + } + } + }, + "node_modules/@rushstack/ts-command-line": { + "version": "4.19.1", + "resolved": "https://registry.npmjs.org/@rushstack/ts-command-line/-/ts-command-line-4.19.1.tgz", + "integrity": "sha512-J7H768dgcpG60d7skZ5uSSwyCZs/S2HrWP1Ds8d1qYAyaaeJmpmmLr9BVw97RjFzmQPOYnoXcKA4GkqDCkduQg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@rushstack/terminal": "0.10.0", + "@types/argparse": "1.0.38", + "argparse": "~1.0.9", + "string-argv": "~0.3.1" + } + }, + "node_modules/@rushstack/ts-command-line/node_modules/argparse": { + "version": "1.0.10", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", + "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", + "dev": true, + "license": "MIT", + "dependencies": { + "sprintf-js": "~1.0.2" + } + }, + "node_modules/@tiptap-pro/extension-export": { + "version": "2.16.3", + "resolved": "https://registry.tiptap.dev/@tiptap-pro%2fextension-export/-/extension-export-2.16.3.tgz", + "integrity": "sha512-nJhln2YItecfE0F304+4HXDLNLuvqw/q54slqP3bjna1osuTGfYFZqK773lSZ7XYqwA9DFEJtV3Tf7XAPXbBMw==", + "dev": true, + "license": "SEE LICENSE IN LICENSE.md", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/ueberdosis" + }, + "peerDependencies": { + "@tiptap/core": "^2.0.0", + "@tiptap/pm": "^2.0.0" + } + }, + "node_modules/@tiptap-pro/extension-mathematics": { + "version": "2.16.3", + "resolved": "https://registry.tiptap.dev/@tiptap-pro%2fextension-mathematics/-/extension-mathematics-2.16.3.tgz", + "integrity": "sha512-HyfWbpR16zSd0GGQ1NM182n9wEZAs13jK8Gih9stz00a2CTEyW2wyXei/W0CDGb/uNM9dQ5vg1uHef15CYaw3A==", + "dev": true, + "license": "SEE LICENSE IN LICENSE.md", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/ueberdosis" + }, + "peerDependencies": { + "@tiptap/core": "^2.0.0", + "@tiptap/pm": "^2.0.0", + "katex": "^0.16.4" + } + }, + "node_modules/@tiptap-pro/extension-table-of-contents": { + "version": "2.17.0", + "resolved": "https://registry.tiptap.dev/@tiptap-pro%2fextension-table-of-contents/-/extension-table-of-contents-2.17.0.tgz", + "integrity": "sha512-0wLIERHmFIkA9GKCczc7NiICTzFBpQ1UX3lOLwFGpfFM9sJ0Owf5YWwanpUHxXVF4nGZ+gHIF6gG1vEyYFxx6w==", + "dev": true, + "license": "SEE LICENSE IN LICENSE.md", + "dependencies": { + "uuid": "^10.0.0" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/ueberdosis" + }, + "peerDependencies": { + "@tiptap/core": "^2.0.0", + "@tiptap/pm": "^2.0.0" + } + }, + "node_modules/@tiptap/core": { + "version": "2.10.3", + "resolved": "https://registry.npmjs.org/@tiptap/core/-/core-2.10.3.tgz", + "integrity": "sha512-wAG/0/UsLeZLmshWb6rtWNXKJftcmnned91/HLccHVQAuQZ1UWH+wXeQKu/mtodxEO7JcU2mVPR9mLGQkK0McQ==", + "license": "MIT", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/ueberdosis" + }, + "peerDependencies": { + "@tiptap/pm": "^2.7.0" + } + }, + "node_modules/@tiptap/extension-blockquote": { + "version": "2.10.3", + "resolved": "https://registry.npmjs.org/@tiptap/extension-blockquote/-/extension-blockquote-2.10.3.tgz", + "integrity": "sha512-u9Mq4r8KzoeGVT8ms6FQDIMN95dTh3TYcT7fZpwcVM96mIl2Oyt+Bk66mL8z4zuFptfRI57Cu9QdnHEeILd//w==", + "license": "MIT", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/ueberdosis" + }, + "peerDependencies": { + "@tiptap/core": "^2.7.0" + } + }, + "node_modules/@tiptap/extension-bold": { + "version": "2.10.3", + "resolved": "https://registry.npmjs.org/@tiptap/extension-bold/-/extension-bold-2.10.3.tgz", + "integrity": "sha512-xnF1tS2BsORenr11qyybW120gHaeHKiKq+ZOP14cGA0MsriKvWDnaCSocXP/xMEYHy7+2uUhJ0MsKkHVj4bPzQ==", + "license": "MIT", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/ueberdosis" + }, + "peerDependencies": { + "@tiptap/core": "^2.7.0" + } + }, + "node_modules/@tiptap/extension-bubble-menu": { + "version": "2.10.3", + "resolved": "https://registry.npmjs.org/@tiptap/extension-bubble-menu/-/extension-bubble-menu-2.10.3.tgz", + "integrity": "sha512-e9a4yMjQezuKy0rtyyzxbV2IAE1bm1PY3yoZEFrcaY0o47g1CMUn2Hwe+9As2HdntEjQpWR7NO1mZeKxHlBPYA==", + "license": "MIT", + "dependencies": { + "tippy.js": "^6.3.7" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/ueberdosis" + }, + "peerDependencies": { + "@tiptap/core": "^2.7.0", + "@tiptap/pm": "^2.7.0" + } + }, + "node_modules/@tiptap/extension-bullet-list": { + "version": "2.10.3", + "resolved": "https://registry.npmjs.org/@tiptap/extension-bullet-list/-/extension-bullet-list-2.10.3.tgz", + "integrity": "sha512-PTkwJOVlHi4RR4Wrs044tKMceweXwNmWA6EoQ93hPUVtQcwQL990Es5Izp+i88twTPLuGD9dH+o9QDyH9SkWdA==", + "license": "MIT", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/ueberdosis" + }, + "peerDependencies": { + "@tiptap/core": "^2.7.0" + } + }, + "node_modules/@tiptap/extension-character-count": { + "version": "2.10.3", + "resolved": "https://registry.npmjs.org/@tiptap/extension-character-count/-/extension-character-count-2.10.3.tgz", + "integrity": "sha512-7L3VS9+SZqwK94/Yk4c+NEpI6kDUAYW3tYGuxCRiKHDlUy3fkXkVkPlxsoNUpAA4O05KGAwD0YW5rvAkNXdi8w==", + "license": "MIT", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/ueberdosis" + }, + "peerDependencies": { + "@tiptap/core": "^2.7.0", + "@tiptap/pm": "^2.7.0" + } + }, + "node_modules/@tiptap/extension-code": { + "version": "2.10.3", + "resolved": "https://registry.npmjs.org/@tiptap/extension-code/-/extension-code-2.10.3.tgz", + "integrity": "sha512-JyLbfyY3cPctq9sVdpcRWTcoUOoq3/MnGE1eP6eBNyMTHyBPcM9TPhOkgj+xkD1zW/884jfelB+wa70RT/AMxQ==", + "license": "MIT", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/ueberdosis" + }, + "peerDependencies": { + "@tiptap/core": "^2.7.0" + } + }, + "node_modules/@tiptap/extension-code-block": { + "version": "2.10.3", + "resolved": "https://registry.npmjs.org/@tiptap/extension-code-block/-/extension-code-block-2.10.3.tgz", + "integrity": "sha512-yiDVNg22fYkzsFk5kBlDSHcjwVJgajvO/M5fDXA+Hfxwo2oNcG6aJyyHXFe+UaXTVjdkPej0J6kcMKrTMCiFug==", + "license": "MIT", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/ueberdosis" + }, + "peerDependencies": { + "@tiptap/core": "^2.7.0", + "@tiptap/pm": "^2.7.0" + } + }, + "node_modules/@tiptap/extension-code-block-lowlight": { + "version": "2.10.3", + "resolved": "https://registry.npmjs.org/@tiptap/extension-code-block-lowlight/-/extension-code-block-lowlight-2.10.3.tgz", + "integrity": "sha512-ieRSdfDW06pmKcsh73N506/EWNJrpMrZzyuFx3YGJtfM+Os0a9hMLy2TSuNleyRsihBi5mb+zvdeqeGdaJm7Ng==", + "license": "MIT", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/ueberdosis" + }, + "peerDependencies": { + "@tiptap/core": "^2.7.0", + "@tiptap/extension-code-block": "^2.7.0", + "@tiptap/pm": "^2.7.0", + "highlight.js": "^11", + "lowlight": "^2 || ^3" + } + }, + "node_modules/@tiptap/extension-color": { + "version": "2.10.3", + "resolved": "https://registry.npmjs.org/@tiptap/extension-color/-/extension-color-2.10.3.tgz", + "integrity": "sha512-FC2hPMSQ4w9UmO9kJCAdoU7gHpDbJ6MeJAmikB9EPp16dbGwFLrZm9TZ/4pv74fGfVm0lv720316ALOEgPEDjQ==", + "license": "MIT", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/ueberdosis" + }, + "peerDependencies": { + "@tiptap/core": "^2.7.0", + "@tiptap/extension-text-style": "^2.7.0" + } + }, + "node_modules/@tiptap/extension-document": { + "version": "2.10.3", + "resolved": "https://registry.npmjs.org/@tiptap/extension-document/-/extension-document-2.10.3.tgz", + "integrity": "sha512-6i8+xbS2zB6t8iFzli1O/QB01MmwyI5Hqiiv4m5lOxqavmJwLss2sRhoMC2hB3CyFg5UmeODy/f/RnI6q5Vixg==", + "license": "MIT", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/ueberdosis" + }, + "peerDependencies": { + "@tiptap/core": "^2.7.0" + } + }, + "node_modules/@tiptap/extension-dropcursor": { + "version": "2.10.3", + "resolved": "https://registry.npmjs.org/@tiptap/extension-dropcursor/-/extension-dropcursor-2.10.3.tgz", + "integrity": "sha512-wzWf82ixWzZQr0hxcf/A0ul8NNxgy1N63O+c56st6OomoLuKUJWOXF+cs9O7V+/5rZKWdbdYYoRB5QLvnDBAlQ==", + "license": "MIT", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/ueberdosis" + }, + "peerDependencies": { + "@tiptap/core": "^2.7.0", + "@tiptap/pm": "^2.7.0" + } + }, + "node_modules/@tiptap/extension-font-family": { + "version": "2.10.3", + "resolved": "https://registry.npmjs.org/@tiptap/extension-font-family/-/extension-font-family-2.10.3.tgz", + "integrity": "sha512-IF5oRNw44ZN4zicXiz1mz9b0KylGPkd1IvP0fpc8MkIZ9AsclC8y2VssmDZ69Wpj8Y6toX/u+ZCyOE7QUFOM3w==", + "license": "MIT", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/ueberdosis" + }, + "peerDependencies": { + "@tiptap/core": "^2.7.0", + "@tiptap/extension-text-style": "^2.7.0" + } + }, + "node_modules/@tiptap/extension-gapcursor": { + "version": "2.10.3", + "resolved": "https://registry.npmjs.org/@tiptap/extension-gapcursor/-/extension-gapcursor-2.10.3.tgz", + "integrity": "sha512-FskZi2DqDSTH1WkgLF2OLy0xU7qj3AgHsKhVsryeAtld4jAK5EsonneWgaipbz0e/MxuIvc1oyacfZKABpLaNg==", + "license": "MIT", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/ueberdosis" + }, + "peerDependencies": { + "@tiptap/core": "^2.7.0", + "@tiptap/pm": "^2.7.0" + } + }, + "node_modules/@tiptap/extension-hard-break": { + "version": "2.10.3", + "resolved": "https://registry.npmjs.org/@tiptap/extension-hard-break/-/extension-hard-break-2.10.3.tgz", + "integrity": "sha512-2rFlimUKAgKDwT6nqAMtPBjkrknQY8S7oBNyIcDOUGyFkvbDUl3Jd0PiC929S5F3XStJRppnMqhpNDAlWmvBLA==", + "license": "MIT", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/ueberdosis" + }, + "peerDependencies": { + "@tiptap/core": "^2.7.0" + } + }, + "node_modules/@tiptap/extension-heading": { + "version": "2.10.3", + "resolved": "https://registry.npmjs.org/@tiptap/extension-heading/-/extension-heading-2.10.3.tgz", + "integrity": "sha512-AlxXXPCWIvw8hQUDFRskasj32iMNB8Sb19VgyFWqwvntGs2/UffNu8VdsVqxD2HpZ0g5rLYCYtSW4wigs9R3og==", + "license": "MIT", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/ueberdosis" + }, + "peerDependencies": { + "@tiptap/core": "^2.7.0" + } + }, + "node_modules/@tiptap/extension-highlight": { + "version": "2.10.3", + "resolved": "https://registry.npmjs.org/@tiptap/extension-highlight/-/extension-highlight-2.10.3.tgz", + "integrity": "sha512-srMOdpUTcp1yPGmUqgKOkbmTpCYOF6Q/8CnquDkhrvK7Gyphj+n8TocrKiloaRYZKcoQWtmb+kcVPaHhHMzsWQ==", + "license": "MIT", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/ueberdosis" + }, + "peerDependencies": { + "@tiptap/core": "^2.7.0" + } + }, + "node_modules/@tiptap/extension-history": { + "version": "2.10.3", + "resolved": "https://registry.npmjs.org/@tiptap/extension-history/-/extension-history-2.10.3.tgz", + "integrity": "sha512-HaSiMdx9Im9Pb9qGlVud7W8bweRDRMez33Uzs5a2x0n1RWkelfH7TwYs41Y3wus8Ujs7kw6qh7jyhvPpQBKaSA==", + "license": "MIT", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/ueberdosis" + }, + "peerDependencies": { + "@tiptap/core": "^2.7.0", + "@tiptap/pm": "^2.7.0" + } + }, + "node_modules/@tiptap/extension-horizontal-rule": { + "version": "2.10.3", + "resolved": "https://registry.npmjs.org/@tiptap/extension-horizontal-rule/-/extension-horizontal-rule-2.10.3.tgz", + "integrity": "sha512-1a2IWhD00tgUNg/91RLnBvfENL7DLCui5L245+smcaLu+OXOOEpoBHawx59/M4hEpsjqvRRM79TzO9YXfopsPw==", + "license": "MIT", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/ueberdosis" + }, + "peerDependencies": { + "@tiptap/core": "^2.7.0", + "@tiptap/pm": "^2.7.0" + } + }, + "node_modules/@tiptap/extension-image": { + "version": "2.10.3", + "resolved": "https://registry.npmjs.org/@tiptap/extension-image/-/extension-image-2.10.3.tgz", + "integrity": "sha512-YIjAF5CwDkMe28OQ5pvnmdRgbJ9JcGMIHY1kyqNunSf2iwphK+6SWz9UEIkDFiT7AsRZySqxFSq93iK1XyTifw==", + "license": "MIT", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/ueberdosis" + }, + "peerDependencies": { + "@tiptap/core": "^2.7.0" + } + }, + "node_modules/@tiptap/extension-italic": { + "version": "2.10.3", + "resolved": "https://registry.npmjs.org/@tiptap/extension-italic/-/extension-italic-2.10.3.tgz", + "integrity": "sha512-wAiO6ZxoHx2H90phnKttLWGPjPZXrfKxhOCsqYrK8BpRByhr48godOFRuGwYnKaiwoVjpxc63t+kDJDWvqmgMw==", + "license": "MIT", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/ueberdosis" + }, + "peerDependencies": { + "@tiptap/core": "^2.7.0" + } + }, + "node_modules/@tiptap/extension-link": { + "version": "2.10.3", + "resolved": "https://registry.npmjs.org/@tiptap/extension-link/-/extension-link-2.10.3.tgz", + "integrity": "sha512-8esKlkZBzEiNcpt7I8Cd6l1mWmCc/66pPbUq9LfnIniDXE3U+ahBf4m3TJltYFBGbiiTR/xqMtJyVHOpuLDtAw==", + "license": "MIT", + "dependencies": { + "linkifyjs": "^4.1.0" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/ueberdosis" + }, + "peerDependencies": { + "@tiptap/core": "^2.7.0", + "@tiptap/pm": "^2.7.0" + } + }, + "node_modules/@tiptap/extension-list-item": { + "version": "2.10.3", + "resolved": "https://registry.npmjs.org/@tiptap/extension-list-item/-/extension-list-item-2.10.3.tgz", + "integrity": "sha512-9sok81gvZfSta2K1Dwrq5/HSz1jk4zHBpFqCx0oydzodGslx6X1bNxdca+eXJpXZmQIWALK7zEr4X8kg3WZsgw==", + "license": "MIT", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/ueberdosis" + }, + "peerDependencies": { + "@tiptap/core": "^2.7.0" + } + }, + "node_modules/@tiptap/extension-mention": { + "version": "2.10.3", + "resolved": "https://registry.npmjs.org/@tiptap/extension-mention/-/extension-mention-2.10.3.tgz", + "integrity": "sha512-h0+BrTS2HdjMfsuy6zkFIqmVGYL8w3jIG0gYaDHjWwwe/Lf2BDgOu3bZWcSr/3bKiJIwwzpOJrXssqta4TZ0yQ==", + "license": "MIT", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/ueberdosis" + }, + "peerDependencies": { + "@tiptap/core": "^2.7.0", + "@tiptap/pm": "^2.7.0", + "@tiptap/suggestion": "^2.7.0" + } + }, + "node_modules/@tiptap/extension-ordered-list": { + "version": "2.10.3", + "resolved": "https://registry.npmjs.org/@tiptap/extension-ordered-list/-/extension-ordered-list-2.10.3.tgz", + "integrity": "sha512-/SFuEDnbJxy3jvi72LeyiPHWkV+uFc0LUHTUHSh20vwyy+tLrzncJfXohGbTIv5YxYhzExQYZDRD4VbSghKdlw==", + "license": "MIT", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/ueberdosis" + }, + "peerDependencies": { + "@tiptap/core": "^2.7.0" + } + }, + "node_modules/@tiptap/extension-paragraph": { + "version": "2.10.3", + "resolved": "https://registry.npmjs.org/@tiptap/extension-paragraph/-/extension-paragraph-2.10.3.tgz", + "integrity": "sha512-sNkTX/iN+YoleDiTJsrWSBw9D7c4vsYwnW5y/G5ydfuJMIRQMF78pWSIWZFDRNOMkgK5UHkhu9anrbCFYgBfaA==", + "license": "MIT", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/ueberdosis" + }, + "peerDependencies": { + "@tiptap/core": "^2.7.0" + } + }, + "node_modules/@tiptap/extension-placeholder": { + "version": "2.10.3", + "resolved": "https://registry.npmjs.org/@tiptap/extension-placeholder/-/extension-placeholder-2.10.3.tgz", + "integrity": "sha512-0OkwnDLguZgoiJM85cfnOySuMmPUF7qqw7DHQ+c3zwTAYnvzpvqrvpupc+2Zi9GfC1sDgr+Ajrp8imBHa6PHfA==", + "license": "MIT", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/ueberdosis" + }, + "peerDependencies": { + "@tiptap/core": "^2.7.0", + "@tiptap/pm": "^2.7.0" + } + }, + "node_modules/@tiptap/extension-strike": { + "version": "2.10.3", + "resolved": "https://registry.npmjs.org/@tiptap/extension-strike/-/extension-strike-2.10.3.tgz", + "integrity": "sha512-jYoPy6F6njYp3txF3u23bgdRy/S5ATcWDO9LPZLHSeikwQfJ47nqb+EUNo5M8jIOgFBTn4MEbhuZ6OGyhnxopA==", + "license": "MIT", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/ueberdosis" + }, + "peerDependencies": { + "@tiptap/core": "^2.7.0" + } + }, + "node_modules/@tiptap/extension-subscript": { + "version": "2.10.3", + "resolved": "https://registry.npmjs.org/@tiptap/extension-subscript/-/extension-subscript-2.10.3.tgz", + "integrity": "sha512-GkOwXIruM7QksmlfqLTKTC6JBpWSBDN2eeoPwggxXuqetqYs4sIx1ul3LEGDQy0vglcFKGkbbO2IiHCO/0fSWA==", + "license": "MIT", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/ueberdosis" + }, + "peerDependencies": { + "@tiptap/core": "^2.7.0" + } + }, + "node_modules/@tiptap/extension-superscript": { + "version": "2.10.3", + "resolved": "https://registry.npmjs.org/@tiptap/extension-superscript/-/extension-superscript-2.10.3.tgz", + "integrity": "sha512-4bXDPyT10ByVCLXFR8A70TcpFJ0H3PicRsxKJcQ+KZIauNUo5BBUpkF2cK+IOUp4UZ1W5ZBeuMQG5HWMuV9T1A==", + "license": "MIT", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/ueberdosis" + }, + "peerDependencies": { + "@tiptap/core": "^2.7.0" + } + }, + "node_modules/@tiptap/extension-table": { + "version": "2.10.3", + "resolved": "https://registry.npmjs.org/@tiptap/extension-table/-/extension-table-2.10.3.tgz", + "integrity": "sha512-XAvq0ptpHfuN7lQhTeew4Sqo8aKYHTqroa7cHL8I+gWJqYqKJSTGb4FAqdGIFEzHvnSsMCFbTL//kAHXvTdsHg==", + "license": "MIT", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/ueberdosis" + }, + "peerDependencies": { + "@tiptap/core": "^2.7.0", + "@tiptap/pm": "^2.7.0" + } + }, + "node_modules/@tiptap/extension-table-cell": { + "version": "2.10.3", + "resolved": "https://registry.npmjs.org/@tiptap/extension-table-cell/-/extension-table-cell-2.10.3.tgz", + "integrity": "sha512-EYzBrnq7KUAcRhshIoTmC4ED8YoF4Ei5m8ZMPOctKX+QMAagKdcrw2UxuOf4tP2xgBYx+qDsKCautepZXQiL2g==", + "license": "MIT", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/ueberdosis" + }, + "peerDependencies": { + "@tiptap/core": "^2.7.0" + } + }, + "node_modules/@tiptap/extension-table-header": { + "version": "2.10.3", + "resolved": "https://registry.npmjs.org/@tiptap/extension-table-header/-/extension-table-header-2.10.3.tgz", + "integrity": "sha512-zJqzivz+VITYIFXNH09leBbkwAPuvp504rCAFL2PMa1uaME6+oiiRqZvXQrOiRkjNpOWEXH4dqvVLwkSMZoWaw==", + "license": "MIT", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/ueberdosis" + }, + "peerDependencies": { + "@tiptap/core": "^2.7.0" + } + }, + "node_modules/@tiptap/extension-table-row": { + "version": "2.10.3", + "resolved": "https://registry.npmjs.org/@tiptap/extension-table-row/-/extension-table-row-2.10.3.tgz", + "integrity": "sha512-l6P6BAE4SuIFdPmsRd+zGP2Ks9AhLAua7nfDlHFMWDnfOeaJu7g/t4oG++9xTojDcVDHhcIe8TJYUXfhOt2anw==", + "license": "MIT", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/ueberdosis" + }, + "peerDependencies": { + "@tiptap/core": "^2.7.0" + } + }, + "node_modules/@tiptap/extension-task-item": { + "version": "2.10.3", + "resolved": "https://registry.npmjs.org/@tiptap/extension-task-item/-/extension-task-item-2.10.3.tgz", + "integrity": "sha512-vE4qxGrZTdwynHq6l5xN0jI0ahDZpmKeoD6yuCMNyN831dgHXEjNrV8oBtZUvvqChFRc/LiSmUbrTInUn5xeNg==", + "license": "MIT", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/ueberdosis" + }, + "peerDependencies": { + "@tiptap/core": "^2.7.0", + "@tiptap/pm": "^2.7.0" + } + }, + "node_modules/@tiptap/extension-task-list": { + "version": "2.10.3", + "resolved": "https://registry.npmjs.org/@tiptap/extension-task-list/-/extension-task-list-2.10.3.tgz", + "integrity": "sha512-Zj1pj+6VrL8VXlFYWdcLlCMykzARsvdqdU8cGVnBuC0H0vrSSfLGl+GxGnQwxTnqiNtxR4t70DLi/UjFBvzlqw==", + "license": "MIT", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/ueberdosis" + }, + "peerDependencies": { + "@tiptap/core": "^2.7.0" + } + }, + "node_modules/@tiptap/extension-text": { + "version": "2.10.3", + "resolved": "https://registry.npmjs.org/@tiptap/extension-text/-/extension-text-2.10.3.tgz", + "integrity": "sha512-7p9XiRprsRZm8y9jvF/sS929FCELJ5N9FQnbzikOiyGNUx5mdI+exVZlfvBr9xOD5s7fBLg6jj9Vs0fXPNRkPg==", + "license": "MIT", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/ueberdosis" + }, + "peerDependencies": { + "@tiptap/core": "^2.7.0" + } + }, + "node_modules/@tiptap/extension-text-align": { + "version": "2.10.3", + "resolved": "https://registry.npmjs.org/@tiptap/extension-text-align/-/extension-text-align-2.10.3.tgz", + "integrity": "sha512-g75sNl73gtgjP3XIcl06kvv1qw3c0rGEUD848rUU1bvlBpU3IxjkcQLgYvHmv3vpuUp9cKUkA2wa7Sv6R3fjvw==", + "license": "MIT", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/ueberdosis" + }, + "peerDependencies": { + "@tiptap/core": "^2.7.0" + } + }, + "node_modules/@tiptap/extension-text-style": { + "version": "2.10.3", + "resolved": "https://registry.npmjs.org/@tiptap/extension-text-style/-/extension-text-style-2.10.3.tgz", + "integrity": "sha512-TalYIdlF7vBA4afFhmido7AORdBbu3sV+HCByda0FiNbM6cjng3Nr9oxHOCVJy+ChqrcgF4m54zDfLmamdyu5Q==", + "license": "MIT", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/ueberdosis" + }, + "peerDependencies": { + "@tiptap/core": "^2.7.0" + } + }, + "node_modules/@tiptap/extension-underline": { + "version": "2.10.3", + "resolved": "https://registry.npmjs.org/@tiptap/extension-underline/-/extension-underline-2.10.3.tgz", + "integrity": "sha512-VeGs0jeNiTnXddHHJEgOc/sKljZiyTEgSSuqMmsBACrr9aGFXbLTgKTvNjkZ9WzSnu7LwgJuBrwEhg8yYixUyQ==", + "license": "MIT", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/ueberdosis" + }, + "peerDependencies": { + "@tiptap/core": "^2.7.0" + } + }, + "node_modules/@tiptap/pm": { + "version": "2.10.3", + "resolved": "https://registry.npmjs.org/@tiptap/pm/-/pm-2.10.3.tgz", + "integrity": "sha512-771p53aU0KFvujvKpngvq2uAxThlEsjYaXcVVmwrhf0vxSSg+psKQEvqvWvHv/3BwkPVCGwmEKNVJZjaXFKu4g==", + "license": "MIT", + "dependencies": { + "prosemirror-changeset": "^2.2.1", + "prosemirror-collab": "^1.3.1", + "prosemirror-commands": "^1.6.2", + "prosemirror-dropcursor": "^1.8.1", + "prosemirror-gapcursor": "^1.3.2", + "prosemirror-history": "^1.4.1", + "prosemirror-inputrules": "^1.4.0", + "prosemirror-keymap": "^1.2.2", + "prosemirror-markdown": "^1.13.1", + "prosemirror-menu": "^1.2.4", + "prosemirror-model": "^1.23.0", + "prosemirror-schema-basic": "^1.2.3", + "prosemirror-schema-list": "^1.4.1", + "prosemirror-state": "^1.4.3", + "prosemirror-tables": "^1.6.1", + "prosemirror-trailing-node": "^3.0.0", + "prosemirror-transform": "^1.10.2", + "prosemirror-view": "^1.37.0" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/ueberdosis" + } + }, + "node_modules/@tiptap/starter-kit": { + "version": "2.10.3", + "resolved": "https://registry.npmjs.org/@tiptap/starter-kit/-/starter-kit-2.10.3.tgz", + "integrity": "sha512-oq8xdVIMqohSs91ofHSr7i5dCp2F56Lb9aYIAI25lZmwNwQJL2geGOYjMSfL0IC4cQHPylIuSKYCg7vRFdZmAA==", + "license": "MIT", + "dependencies": { + "@tiptap/core": "^2.10.3", + "@tiptap/extension-blockquote": "^2.10.3", + "@tiptap/extension-bold": "^2.10.3", + "@tiptap/extension-bullet-list": "^2.10.3", + "@tiptap/extension-code": "^2.10.3", + "@tiptap/extension-code-block": "^2.10.3", + "@tiptap/extension-document": "^2.10.3", + "@tiptap/extension-dropcursor": "^2.10.3", + "@tiptap/extension-gapcursor": "^2.10.3", + "@tiptap/extension-hard-break": "^2.10.3", + "@tiptap/extension-heading": "^2.10.3", + "@tiptap/extension-history": "^2.10.3", + "@tiptap/extension-horizontal-rule": "^2.10.3", + "@tiptap/extension-italic": "^2.10.3", + "@tiptap/extension-list-item": "^2.10.3", + "@tiptap/extension-ordered-list": "^2.10.3", + "@tiptap/extension-paragraph": "^2.10.3", + "@tiptap/extension-strike": "^2.10.3", + "@tiptap/extension-text": "^2.10.3", + "@tiptap/extension-text-style": "^2.10.3", + "@tiptap/pm": "^2.10.3" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/ueberdosis" + } + }, + "node_modules/@tiptap/suggestion": { + "version": "2.10.3", + "resolved": "https://registry.npmjs.org/@tiptap/suggestion/-/suggestion-2.10.3.tgz", + "integrity": "sha512-ReEwiPQoDTXn3RuWnj9D7Aod9dbNQz0QAoLRftWUTdbj3O2ohbvTNX6tlcfS+7x48Q+fAALiJGpp5BtctODlsA==", + "license": "MIT", + "funding": { + "type": "github", + "url": "https://github.com/sponsors/ueberdosis" + }, + "peerDependencies": { + "@tiptap/core": "^2.7.0", + "@tiptap/pm": "^2.7.0" + } + }, + "node_modules/@trysound/sax": { + "version": "0.2.0", + "resolved": "https://registry.npmmirror.com/@trysound/sax/-/sax-0.2.0.tgz", + "integrity": "sha512-L7z9BgrNEcYyUYtF+HaEfiS5ebkh9jXqbszz7pC0hRBPaatV0XjSD3+eHrpqFemQfgwiFF0QPIarnIihIDn7OA==", + "license": "ISC", + "engines": { + "node": ">=10.13.0" + } + }, + "node_modules/@types/argparse": { + "version": "1.0.38", + "resolved": "https://registry.npmjs.org/@types/argparse/-/argparse-1.0.38.tgz", + "integrity": "sha512-ebDJ9b0e702Yr7pWgB0jzm+CX4Srzz8RcXtLJDJB+BSccqMa36uyH/zUsSYao5+BD1ytv3k3rPYCq4mAE1hsXA==", + "dev": true, + "license": "MIT" + }, + "node_modules/@types/bootstrap": { + "version": "5.2.10", + "resolved": "https://registry.npmjs.org/@types/bootstrap/-/bootstrap-5.2.10.tgz", + "integrity": "sha512-F2X+cd6551tep0MvVZ6nM8v7XgGN/twpdNDjqS1TUM7YFNEtQYWk+dKAnH+T1gr6QgCoGMPl487xw/9hXooa2g==", + "license": "MIT", + "dependencies": { + "@popperjs/core": "^2.9.2" + } + }, + "node_modules/@types/estree": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.6.tgz", + "integrity": "sha512-AYnb1nQyY49te+VRAVgmzfcgjYS91mY5P0TKUDCLEM+gNnA+3T6rWITXRLYCpahpqSQbN5cE+gHpnPyXjHWxcw==", + "license": "MIT" + }, + "node_modules/@types/evaluatex": { + "version": "2.2.8", + "resolved": "https://registry.npmjs.org/@types/evaluatex/-/evaluatex-2.2.8.tgz", + "integrity": "sha512-jIhtDhJqIR6SbgwDWRejCulKbMXucf3lUVfgMmjUp35GysYscIZOzIz+I/yYCh7KsRfxkNOcvbh/MffOsAeKyg==", + "license": "MIT" + }, + "node_modules/@types/file-saver": { + "version": "2.0.7", + "resolved": "https://registry.npmjs.org/@types/file-saver/-/file-saver-2.0.7.tgz", + "integrity": "sha512-dNKVfHd/jk0SkR/exKGj2ggkB45MAkzvWCaqLUUgkyjITkGNzH8H+yUwr+BLJUBjZOe9w8X3wgmXhZDRg1ED6A==", + "license": "MIT" + }, + "node_modules/@types/hast": { + "version": "3.0.4", + "resolved": "https://registry.npmjs.org/@types/hast/-/hast-3.0.4.tgz", + "integrity": "sha512-WPs+bbQw5aCj+x6laNGWLH3wviHtoCv/P3+otBhbOhJgG8qtpdAMlTCxLtsTWA7LH1Oh/bFCHsBn0TPS5m30EQ==", + "license": "MIT", + "dependencies": { + "@types/unist": "*" + } + }, + "node_modules/@types/katex": { + "version": "0.16.7", + "resolved": "https://registry.npmjs.org/@types/katex/-/katex-0.16.7.tgz", + "integrity": "sha512-HMwFiRujE5PjrgwHQ25+bsLJgowjGjm5Z8FVSf0N6PwgJrwxH0QxzHYDcKsTfV3wva0vzrpqMTJS2jXPr5BMEQ==", + "license": "MIT" + }, + "node_modules/@types/linkify-it": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/@types/linkify-it/-/linkify-it-5.0.0.tgz", + "integrity": "sha512-sVDA58zAw4eWAffKOaQH5/5j3XeayukzDk+ewSsnv3p4yJEZHCCzMDiZM8e0OUrRvmpGZ85jf4yDHkHsgBNr9Q==", + "license": "MIT" + }, + "node_modules/@types/markdown-it": { + "version": "14.1.2", + "resolved": "https://registry.npmjs.org/@types/markdown-it/-/markdown-it-14.1.2.tgz", + "integrity": "sha512-promo4eFwuiW+TfGxhi+0x3czqTYJkG8qB17ZUJiVF10Xm7NLVRSLUsfRTU/6h1e24VvRnXCx+hG7li58lkzog==", + "license": "MIT", + "dependencies": { + "@types/linkify-it": "^5", + "@types/mdurl": "^2" + } + }, + "node_modules/@types/markdown-it-container": { + "version": "2.0.10", + "resolved": "https://registry.npmjs.org/@types/markdown-it-container/-/markdown-it-container-2.0.10.tgz", + "integrity": "sha512-zv+YxrlSYRq51e9kzm3orv4OvF4U79Ll1OyplNXr00o4ZC/8PukJk/jEWH7CnsMtrSWZlyv0czhz42jm9J4uLw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@types/markdown-it": "*" + } + }, + "node_modules/@types/mdurl": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/@types/mdurl/-/mdurl-2.0.0.tgz", + "integrity": "sha512-RGdgjQUZba5p6QEFAVx2OGb8rQDL/cPRG7GiedRzMcJ1tYnUANBncjbSB1NRGwbvjcPeikRABz2nshyPk1bhWg==", + "license": "MIT" + }, + "node_modules/@types/node": { + "version": "20.17.9", + "resolved": "https://registry.npmjs.org/@types/node/-/node-20.17.9.tgz", + "integrity": "sha512-0JOXkRyLanfGPE2QRCwgxhzlBAvaRdCNMcvbd7jFfpmD4eEXll7LRwy5ymJmyeZqk7Nh7eD2LeUyQ68BbndmXw==", + "license": "MIT", + "dependencies": { + "undici-types": "~6.19.2" + } + }, + "node_modules/@types/node-fetch": { + "version": "2.6.12", + "resolved": "https://registry.npmjs.org/@types/node-fetch/-/node-fetch-2.6.12.tgz", + "integrity": "sha512-8nneRWKCg3rMtF69nLQJnOYUcbafYeFSjqkw3jCRLsqkWFlHaoQrr5mXmofFGOx3DKn7UfmBMyov8ySvLRVldA==", + "license": "MIT", + "dependencies": { + "@types/node": "*", + "form-data": "^4.0.0" + } + }, + "node_modules/@types/svgo": { + "version": "2.6.4", + "resolved": "https://registry.npmmirror.com/@types/svgo/-/svgo-2.6.4.tgz", + "integrity": "sha512-l4cmyPEckf8moNYHdJ+4wkHvFxjyW6ulm9l4YGaOxeyBWPhBOT0gvni1InpFPdzx1dKf/2s62qGITwxNWnPQng==", + "license": "MIT", + "dependencies": { + "@types/node": "*" + } + }, + "node_modules/@types/turndown": { + "version": "5.0.5", + "resolved": "https://registry.npmjs.org/@types/turndown/-/turndown-5.0.5.tgz", + "integrity": "sha512-TL2IgGgc7B5j78rIccBtlYAnkuv8nUQqhQc+DSYV5j9Be9XOcm/SKOVRuA47xAVI3680Tk9B1d8flK2GWT2+4w==", + "dev": true, + "license": "MIT" + }, + "node_modules/@types/unist": { + "version": "3.0.3", + "resolved": "https://registry.npmjs.org/@types/unist/-/unist-3.0.3.tgz", + "integrity": "sha512-ko/gIFJRv177XgZsZcBwnqJN5x/Gien8qNOn0D5bQU/zAzVf9Zt3BlcUiLqhV9y4ARk0GbT3tnUiPNgnTXzc/Q==", + "license": "MIT" + }, + "node_modules/@volar/language-core": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@volar/language-core/-/language-core-1.11.1.tgz", + "integrity": "sha512-dOcNn3i9GgZAcJt43wuaEykSluAuOkQgzni1cuxLxTV0nJKanQztp7FxyswdRILaKH+P2XZMPRp2S4MV/pElCw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@volar/source-map": "1.11.1" + } + }, + "node_modules/@volar/source-map": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@volar/source-map/-/source-map-1.11.1.tgz", + "integrity": "sha512-hJnOnwZ4+WT5iupLRnuzbULZ42L7BWWPMmruzwtLhJfpDVoZLjNBxHDi2sY2bgZXCKlpU5XcsMFoYrsQmPhfZg==", + "dev": true, + "license": "MIT", + "dependencies": { + "muggle-string": "^0.3.1" + } + }, + "node_modules/@volar/typescript": { + "version": "1.11.1", + "resolved": "https://registry.npmjs.org/@volar/typescript/-/typescript-1.11.1.tgz", + "integrity": "sha512-iU+t2mas/4lYierSnoFOeRFQUhAEMgsFuQxoxvwn5EdQopw43j+J27a4lt9LMInx1gLJBC6qL14WYGlgymaSMQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "@volar/language-core": "1.11.1", + "path-browserify": "^1.0.1" + } + }, + "node_modules/@vscode/markdown-it-katex": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/@vscode/markdown-it-katex/-/markdown-it-katex-1.1.0.tgz", + "integrity": "sha512-9cF2eJpsJOEs2V1cCAoJW/boKz9GQQLvZhNvI030K90z6ZE9lRGc9hDVvKut8zdFO2ObjwylPXXXVYvTdP2O2Q==", + "license": "MIT", + "dependencies": { + "katex": "^0.16.4" + } + }, + "node_modules/@vue/compiler-core": { + "version": "3.5.13", + "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.5.13.tgz", + "integrity": "sha512-oOdAkwqUfW1WqpwSYJce06wvt6HljgY3fGeM9NcVA1HaYOij3mZG9Rkysn0OHuyUAGMbEbARIpsG+LPVlBJ5/Q==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/parser": "^7.25.3", + "@vue/shared": "3.5.13", + "entities": "^4.5.0", + "estree-walker": "^2.0.2", + "source-map-js": "^1.2.0" + } + }, + "node_modules/@vue/compiler-dom": { + "version": "3.5.13", + "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.5.13.tgz", + "integrity": "sha512-ZOJ46sMOKUjO3e94wPdCzQ6P1Lx/vhp2RSvfaab88Ajexs0AHeV0uasYhi99WPaogmBlRHNRuly8xV75cNTMDA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@vue/compiler-core": "3.5.13", + "@vue/shared": "3.5.13" + } + }, + "node_modules/@vue/language-core": { + "version": "1.8.27", + "resolved": "https://registry.npmjs.org/@vue/language-core/-/language-core-1.8.27.tgz", + "integrity": "sha512-L8Kc27VdQserNaCUNiSFdDl9LWT24ly8Hpwf1ECy3aFb9m6bDhBGQYOujDm21N7EW3moKIOKEanQwe1q5BK+mA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@volar/language-core": "~1.11.1", + "@volar/source-map": "~1.11.1", + "@vue/compiler-dom": "^3.3.0", + "@vue/shared": "^3.3.0", + "computeds": "^0.0.1", + "minimatch": "^9.0.3", + "muggle-string": "^0.3.1", + "path-browserify": "^1.0.1", + "vue-template-compiler": "^2.7.14" + }, + "peerDependencies": { + "typescript": "*" + }, + "peerDependenciesMeta": { + "typescript": { + "optional": true + } + } + }, + "node_modules/@vue/language-core/node_modules/brace-expansion": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-2.0.1.tgz", + "integrity": "sha512-XnAIvQ8eM+kC6aULx6wuQiwVsnzsi9d3WxzV3FpWTGA19F621kwdbsAcFKXgKUHZWsy+mY6iL1sHTxWEFCytDA==", + "dev": true, + "license": "MIT", + "dependencies": { + "balanced-match": "^1.0.0" + } + }, + "node_modules/@vue/language-core/node_modules/minimatch": { + "version": "9.0.5", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-9.0.5.tgz", + "integrity": "sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==", + "dev": true, + "license": "ISC", + "dependencies": { + "brace-expansion": "^2.0.1" + }, + "engines": { + "node": ">=16 || 14 >=14.17" + }, + "funding": { + "url": "https://github.com/sponsors/isaacs" + } + }, + "node_modules/@vue/shared": { + "version": "3.5.13", + "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.5.13.tgz", + "integrity": "sha512-/hnE/qP5ZoGpol0a5mDi45bOd7t3tjYJBjsgCsivow7D48cJeV5l05RD82lPqi7gRiphZM37rnhW1l6ZoCNNnQ==", + "dev": true, + "license": "MIT" + }, + "node_modules/abort-controller": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/abort-controller/-/abort-controller-3.0.0.tgz", + "integrity": "sha512-h8lQ8tacZYnR3vNQTgibj+tODHI5/+l06Au2Pcriv/Gmet0eaj4TwWH41sO9wnHDiQsEj19q0drzdWdeAHtweg==", + "license": "MIT", + "dependencies": { + "event-target-shim": "^5.0.0" + }, + "engines": { + "node": ">=6.5" + } + }, + "node_modules/agentkeepalive": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/agentkeepalive/-/agentkeepalive-4.5.0.tgz", + "integrity": "sha512-5GG/5IbQQpC9FpkRGsSvZI5QYeSCzlJHdpBQntCsuTOxhKD8lqKhrleg2Yi7yvMIf82Ycmmqln9U8V9qwEiJew==", + "license": "MIT", + "dependencies": { + "humanize-ms": "^1.2.1" + }, + "engines": { + "node": ">= 8.0.0" + } + }, + "node_modules/ajv": { + "version": "6.12.6", + "resolved": "https://registry.npmjs.org/ajv/-/ajv-6.12.6.tgz", + "integrity": "sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==", + "dev": true, + "license": "MIT", + "dependencies": { + "fast-deep-equal": "^3.1.1", + "fast-json-stable-stringify": "^2.0.0", + "json-schema-traverse": "^0.4.1", + "uri-js": "^4.2.2" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/epoberezkin" + } + }, + "node_modules/ansi-regex": { + "version": "2.1.1", + "resolved": "https://registry.npmmirror.com/ansi-regex/-/ansi-regex-2.1.1.tgz", + "integrity": "sha512-TIGnTpdo+E3+pCyAluZvtED5p5wCqLdezCyhPZzKPcxvFplEt4i+W7OONCKgeZFT3+y5NZZfOOS/Bdcanm1MYA==", + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/ansi-styles": { + "version": "2.2.1", + "resolved": "https://registry.npmmirror.com/ansi-styles/-/ansi-styles-2.2.1.tgz", + "integrity": "sha512-kmCevFghRiWM7HB5zTPULl4r9bVFSWjz62MhqizDGUrq2NWuNMQyuv4tHHoKJHs69M/MF64lEcHdYIocrdWQYA==", + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/argparse": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/argparse/-/argparse-2.0.1.tgz", + "integrity": "sha512-8+9WqebbFzpX9OR+Wa6O29asIogeRMzcGtAINdpMHHyAg10f05aSFVBbcEqGf/PXw1EjAZ+q2/bEBg3DvurK3Q==", + "license": "Python-2.0" + }, + "node_modules/arr-diff": { + "version": "4.0.0", + "resolved": "https://registry.npmmirror.com/arr-diff/-/arr-diff-4.0.0.tgz", + "integrity": "sha512-YVIQ82gZPGBebQV/a8dar4AitzCQs0jjXwMPZllpXMaGjXPYVUawSxQrRsjhjupyVxEvbHgUmIhKVlND+j02kA==", + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/arr-flatten": { + "version": "1.1.0", + "resolved": "https://registry.npmmirror.com/arr-flatten/-/arr-flatten-1.1.0.tgz", + "integrity": "sha512-L3hKV5R/p5o81R7O02IGnwpDmkp6E982XhtbuwSe3O4qOtMMMtodicASA1Cny2U+aCXcNpml+m4dPsvsJ3jatg==", + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/arr-union": { + "version": "3.1.0", + "resolved": "https://registry.npmmirror.com/arr-union/-/arr-union-3.1.0.tgz", + "integrity": "sha512-sKpyeERZ02v1FeCZT8lrfJq5u6goHCtpTAzPwJYe7c8SPFOboNjNg1vz2L4VTn9T4PQxEx13TbXLmYUcS6Ug7Q==", + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/array-buffer-byte-length": { + "version": "1.0.1", + "resolved": "https://registry.npmmirror.com/array-buffer-byte-length/-/array-buffer-byte-length-1.0.1.tgz", + "integrity": "sha512-ahC5W1xgou+KTXix4sAO8Ki12Q+jf4i0+tmk3sC+zgcynshkHxzpXdImBehiUYKKKDwvfFiJl1tZt6ewscS1Mg==", + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.5", + "is-array-buffer": "^3.0.4" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/array-unique": { + "version": "0.3.2", + "resolved": "https://registry.npmmirror.com/array-unique/-/array-unique-0.3.2.tgz", + "integrity": "sha512-SleRWjh9JUud2wH1hPs9rZBZ33H6T9HOiL0uwGnGx9FpE6wKGyfWugmbkEOIs6qWrZhg0LWeLziLrEwQJhs5mQ==", + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/arraybuffer.prototype.slice": { + "version": "1.0.3", + "resolved": "https://registry.npmmirror.com/arraybuffer.prototype.slice/-/arraybuffer.prototype.slice-1.0.3.tgz", + "integrity": "sha512-bMxMKAjg13EBSVscxTaYA4mRc5t1UAXa2kXiGTNfZ079HIWXEkKmkgFrh/nJqamaLSrXO5H4WFFkPEaLJWbs3A==", + "license": "MIT", + "dependencies": { + "array-buffer-byte-length": "^1.0.1", + "call-bind": "^1.0.5", + "define-properties": "^1.2.1", + "es-abstract": "^1.22.3", + "es-errors": "^1.2.1", + "get-intrinsic": "^1.2.3", + "is-array-buffer": "^3.0.4", + "is-shared-array-buffer": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/assign-symbols": { + "version": "1.0.0", + "resolved": "https://registry.npmmirror.com/assign-symbols/-/assign-symbols-1.0.0.tgz", + "integrity": "sha512-Q+JC7Whu8HhmTdBph/Tq59IoRtoy6KAm5zzPv00WdujX82lbAL8K7WVjne7vdCsAmbF4AYaDOPyO3k0kl8qIrw==", + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/asynckit": { + "version": "0.4.0", + "resolved": "https://registry.npmjs.org/asynckit/-/asynckit-0.4.0.tgz", + "integrity": "sha512-Oei9OH4tRh0YqU3GxhX79dM/mwVgvbZJaSNaRk+bshkj0S5cfHcgYakreBjrHwatXKbz+IoIdYLxrKim2MjW0Q==", + "license": "MIT" + }, + "node_modules/atob": { + "version": "2.1.2", + "resolved": "https://registry.npmmirror.com/atob/-/atob-2.1.2.tgz", + "integrity": "sha512-Wm6ukoaOGJi/73p/cl2GvLjTI5JM1k/O14isD73YML8StrH/7/lRFgmg8nICZgD3bZZvjwCGxtMOD3wWNAu8cg==", + "license": "(MIT OR Apache-2.0)", + "bin": { + "atob": "bin/atob.js" + }, + "engines": { + "node": ">= 4.5.0" + } + }, + "node_modules/available-typed-arrays": { + "version": "1.0.7", + "resolved": "https://registry.npmmirror.com/available-typed-arrays/-/available-typed-arrays-1.0.7.tgz", + "integrity": "sha512-wvUjBtSGN7+7SjNpq/9M2Tg350UZD3q62IFZLbRAR1bSMlCo1ZaeW+BJ+D090e4hIIZLBcTDWe4Mh4jvUDajzQ==", + "license": "MIT", + "dependencies": { + "possible-typed-array-names": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/balanced-match": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/balanced-match/-/balanced-match-1.0.2.tgz", + "integrity": "sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==", + "dev": true, + "license": "MIT" + }, + "node_modules/base": { + "version": "0.11.2", + "resolved": "https://registry.npmmirror.com/base/-/base-0.11.2.tgz", + "integrity": "sha512-5T6P4xPgpp0YDFvSWwEZ4NoE3aM4QBQXDzmVbraCkFj8zHM+mba8SyqB5DbZWyR7mYHo6Y7BdQo3MoA4m0TeQg==", + "license": "MIT", + "dependencies": { + "cache-base": "^1.0.1", + "class-utils": "^0.3.5", + "component-emitter": "^1.2.1", + "define-property": "^1.0.0", + "isobject": "^3.0.1", + "mixin-deep": "^1.2.0", + "pascalcase": "^0.1.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/big.js": { + "version": "5.2.2", + "resolved": "https://registry.npmmirror.com/big.js/-/big.js-5.2.2.tgz", + "integrity": "sha512-vyL2OymJxmarO8gxMr0mhChsO9QGwhynfuu4+MHTAW6czfq9humCB7rKpUjDd9YUiDPU4mzpyupFSvOClAwbmQ==", + "license": "MIT", + "engines": { + "node": "*" + } + }, + "node_modules/bluebird": { + "version": "3.7.2", + "resolved": "https://registry.npmmirror.com/bluebird/-/bluebird-3.7.2.tgz", + "integrity": "sha512-XpNj6GDQzdfW+r2Wnn7xiSAd7TM3jzkxGXBGTtWKuSXv1xUV+azxAm8jdWZN06QTQk+2N2XB9jRDkvbmQmcRtg==", + "license": "MIT" + }, + "node_modules/boolbase": { + "version": "1.0.0", + "resolved": "https://registry.npmmirror.com/boolbase/-/boolbase-1.0.0.tgz", + "integrity": "sha512-JZOSA7Mo9sNGB8+UjSgzdLtokWAky1zbztM3WRLCbZ70/3cTANmQmOdR7y2g+J0e2WXywy1yS468tY+IruqEww==", + "license": "ISC" + }, + "node_modules/bootstrap": { + "version": "5.3.3", + "resolved": "https://registry.npmjs.org/bootstrap/-/bootstrap-5.3.3.tgz", + "integrity": "sha512-8HLCdWgyoMguSO9o+aH+iuZ+aht+mzW0u3HIMzVu7Srrpv7EBBxTnrFlSCskwdY1+EOFQSm7uMJhNQHkdPcmjg==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/twbs" + }, + { + "type": "opencollective", + "url": "https://opencollective.com/bootstrap" + } + ], + "license": "MIT", + "peerDependencies": { + "@popperjs/core": "^2.11.8" + } + }, + "node_modules/brace-expansion": { + "version": "1.1.11", + "resolved": "https://registry.npmjs.org/brace-expansion/-/brace-expansion-1.1.11.tgz", + "integrity": "sha512-iCuPHDFgrHX7H2vEI/5xpz07zSHB00TpugqhmYtVmMO6518mCuRMoOYFldEBl0g187ufozdaHgWKcYFb61qGiA==", + "dev": true, + "license": "MIT", + "dependencies": { + "balanced-match": "^1.0.0", + "concat-map": "0.0.1" + } + }, + "node_modules/braces": { + "version": "2.3.2", + "resolved": "https://registry.npmmirror.com/braces/-/braces-2.3.2.tgz", + "integrity": "sha512-aNdbnj9P8PjdXU4ybaWLK2IF3jc/EoDYbC7AazW6to3TRsfXxscC9UXOB5iDiEQrkyIbWp2SLQda4+QAa7nc3w==", + "license": "MIT", + "dependencies": { + "arr-flatten": "^1.1.0", + "array-unique": "^0.3.2", + "extend-shallow": "^2.0.1", + "fill-range": "^4.0.0", + "isobject": "^3.0.1", + "repeat-element": "^1.1.2", + "snapdragon": "^0.8.1", + "snapdragon-node": "^2.0.1", + "split-string": "^3.0.2", + "to-regex": "^3.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/cache-base": { + "version": "1.0.1", + "resolved": "https://registry.npmmirror.com/cache-base/-/cache-base-1.0.1.tgz", + "integrity": "sha512-AKcdTnFSWATd5/GCPRxr2ChwIJ85CeyrEyjRHlKxQ56d4XJMGym0uAiKn0xbLOGOl3+yRpOTi484dVCEc5AUzQ==", + "license": "MIT", + "dependencies": { + "collection-visit": "^1.0.0", + "component-emitter": "^1.2.1", + "get-value": "^2.0.6", + "has-value": "^1.0.0", + "isobject": "^3.0.1", + "set-value": "^2.0.0", + "to-object-path": "^0.3.0", + "union-value": "^1.0.0", + "unset-value": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/call-bind": { + "version": "1.0.7", + "resolved": "https://registry.npmmirror.com/call-bind/-/call-bind-1.0.7.tgz", + "integrity": "sha512-GHTSNSYICQ7scH7sZ+M2rFopRoLh8t2bLSW6BbgrtLsahOIB5iyAVJf9GjWK3cYTDaMj4XdBpM1cA6pIS0Kv2w==", + "license": "MIT", + "dependencies": { + "es-define-property": "^1.0.0", + "es-errors": "^1.3.0", + "function-bind": "^1.1.2", + "get-intrinsic": "^1.2.4", + "set-function-length": "^1.2.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/chalk": { + "version": "1.1.3", + "resolved": "https://registry.npmmirror.com/chalk/-/chalk-1.1.3.tgz", + "integrity": "sha512-U3lRVLMSlsCfjqYPbLyVv11M9CPW4I728d6TCKMAOJueEeB9/8o+eSsMnxPJD+Q+K909sdESg7C+tIkoH6on1A==", + "license": "MIT", + "dependencies": { + "ansi-styles": "^2.2.1", + "escape-string-regexp": "^1.0.2", + "has-ansi": "^2.0.0", + "strip-ansi": "^3.0.0", + "supports-color": "^2.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/chalk/node_modules/escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmmirror.com/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", + "license": "MIT", + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/chalk/node_modules/supports-color": { + "version": "2.0.0", + "resolved": "https://registry.npmmirror.com/supports-color/-/supports-color-2.0.0.tgz", + "integrity": "sha512-KKNVtd6pCYgPIKU4cp2733HWYCpplQhddZLBUryaAHou723x+FRzQ5Df824Fj+IyyuiQTRoub4SnIFfIcrp70g==", + "license": "MIT", + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/class-utils": { + "version": "0.3.6", + "resolved": "https://registry.npmmirror.com/class-utils/-/class-utils-0.3.6.tgz", + "integrity": "sha512-qOhPa/Fj7s6TY8H8esGu5QNpMMQxz79h+urzrNYN6mn+9BnxlDGf5QZ+XeCDsxSjPqsSR56XOZOJmpeurnLMeg==", + "license": "MIT", + "dependencies": { + "arr-union": "^3.1.0", + "define-property": "^0.2.5", + "isobject": "^3.0.0", + "static-extend": "^0.1.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/class-utils/node_modules/define-property": { + "version": "0.2.5", + "resolved": "https://registry.npmmirror.com/define-property/-/define-property-0.2.5.tgz", + "integrity": "sha512-Rr7ADjQZenceVOAKop6ALkkRAmH1A4Gx9hV/7ZujPUN2rkATqFO0JZLZInbAjpZYoJ1gUx8MRMQVkYemcbMSTA==", + "license": "MIT", + "dependencies": { + "is-descriptor": "^0.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/class-utils/node_modules/is-descriptor": { + "version": "0.1.7", + "resolved": "https://registry.npmmirror.com/is-descriptor/-/is-descriptor-0.1.7.tgz", + "integrity": "sha512-C3grZTvObeN1xud4cRWl366OMXZTj0+HGyk4hvfpx4ZHt1Pb60ANSXqCK7pdOTeUQpRzECBSTphqvD7U+l22Eg==", + "license": "MIT", + "dependencies": { + "is-accessor-descriptor": "^1.0.1", + "is-data-descriptor": "^1.0.1" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/clone": { + "version": "2.1.2", + "resolved": "https://registry.npmmirror.com/clone/-/clone-2.1.2.tgz", + "integrity": "sha512-3Pe/CF1Nn94hyhIYpjtiLhdCoEoz0DqQ+988E9gmeEdQZlojxnOb74wctFyuwWQHzqyf9X7C7MG8juUpqBJT8w==", + "license": "MIT", + "engines": { + "node": ">=0.8" + } + }, + "node_modules/collection-visit": { + "version": "1.0.0", + "resolved": "https://registry.npmmirror.com/collection-visit/-/collection-visit-1.0.0.tgz", + "integrity": "sha512-lNkKvzEeMBBjUGHZ+q6z9pSJla0KWAQPvtzhEV9+iGyQYG+pBpl7xKDhxoNSOZH2hhv0v5k0y2yAM4o4SjoSkw==", + "license": "MIT", + "dependencies": { + "map-visit": "^1.0.0", + "object-visit": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/combined-stream": { + "version": "1.0.8", + "resolved": "https://registry.npmjs.org/combined-stream/-/combined-stream-1.0.8.tgz", + "integrity": "sha512-FQN4MRfuJeHf7cBbBMJFXhKSDq+2kAArBlmRBvcvFE5BB1HZKXtSFASDhdlz9zOYwxh8lDdnvmMOe/+5cdoEdg==", + "license": "MIT", + "dependencies": { + "delayed-stream": "~1.0.0" + }, + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/commander": { + "version": "8.3.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-8.3.0.tgz", + "integrity": "sha512-OkTL9umf+He2DZkUq8f8J9of7yL6RJKI24dVITBmNfZBmri9zYZQrKkuXiKhyfPSu8tUhnVBB1iKXevvnlR4Ww==", + "license": "MIT", + "engines": { + "node": ">= 12" + } + }, + "node_modules/component-emitter": { + "version": "1.3.1", + "resolved": "https://registry.npmmirror.com/component-emitter/-/component-emitter-1.3.1.tgz", + "integrity": "sha512-T0+barUSQRTUQASh8bx02dl+DhF54GtIDY13Y3m9oWTklKbb3Wv974meRpeZ3lp1JpLVECWWNHC4vaG2XHXouQ==", + "license": "MIT", + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/computeds": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/computeds/-/computeds-0.0.1.tgz", + "integrity": "sha512-7CEBgcMjVmitjYo5q8JTJVra6X5mQ20uTThdK+0kR7UEaDrAWEQcRiBtWJzga4eRpP6afNwwLsX2SET2JhVB1Q==", + "dev": true, + "license": "MIT" + }, + "node_modules/concat-map": { + "version": "0.0.1", + "resolved": "https://registry.npmjs.org/concat-map/-/concat-map-0.0.1.tgz", + "integrity": "sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==", + "dev": true, + "license": "MIT" + }, + "node_modules/copy-anything": { + "version": "2.0.6", + "resolved": "https://registry.npmjs.org/copy-anything/-/copy-anything-2.0.6.tgz", + "integrity": "sha512-1j20GZTsvKNkc4BY3NpMOM8tt///wY3FpIzozTOFO2ffuZcV61nojHXVKIy3WM+7ADCy5FVhdZYHYDdgTU0yJw==", + "devOptional": true, + "license": "MIT", + "dependencies": { + "is-what": "^3.14.1" + }, + "funding": { + "url": "https://github.com/sponsors/mesqueeb" + } + }, + "node_modules/copy-descriptor": { + "version": "0.1.1", + "resolved": "https://registry.npmmirror.com/copy-descriptor/-/copy-descriptor-0.1.1.tgz", + "integrity": "sha512-XgZ0pFcakEUlbwQEVNg3+QAis1FyTL3Qel9FYy8pSkQqoG3PNoT0bOCQtOXcOkur21r2Eq2kI+IE+gsmAEVlYw==", + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/cors": { + "version": "2.8.5", + "resolved": "https://registry.npmmirror.com/cors/-/cors-2.8.5.tgz", + "integrity": "sha512-KIHbLJqu73RGr/hnbrO9uBeixNGuvSQjul/jdFvS/KFSIH1hWVd1ng7zOHx+YrEfInLG7q4n6GHQ9cDtxv/P6g==", + "license": "MIT", + "dependencies": { + "object-assign": "^4", + "vary": "^1" + }, + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/crelt": { + "version": "1.0.6", + "resolved": "https://registry.npmjs.org/crelt/-/crelt-1.0.6.tgz", + "integrity": "sha512-VQ2MBenTq1fWZUH9DJNGti7kKv6EeAuYr3cLwxUWhIu1baTaXh4Ib5W2CqHVqib4/MqbYGJqiL3Zb8GJZr3l4g==", + "license": "MIT" + }, + "node_modules/crypto-js": { + "version": "4.2.0", + "resolved": "https://registry.npmjs.org/crypto-js/-/crypto-js-4.2.0.tgz", + "integrity": "sha512-KALDyEYgpY+Rlob/iriUtjV6d5Eq+Y191A5g4UqLAi8CyGP9N1+FdVbkc1SxKc2r4YAYqG8JzO2KGL+AizD70Q==", + "license": "MIT" + }, + "node_modules/css-select": { + "version": "4.3.0", + "resolved": "https://registry.npmmirror.com/css-select/-/css-select-4.3.0.tgz", + "integrity": "sha512-wPpOYtnsVontu2mODhA19JrqWxNsfdatRKd64kmpRbQgh1KtItko5sTnEpPdpSaJszTOhEMlF/RPz28qj4HqhQ==", + "license": "BSD-2-Clause", + "dependencies": { + "boolbase": "^1.0.0", + "css-what": "^6.0.1", + "domhandler": "^4.3.1", + "domutils": "^2.8.0", + "nth-check": "^2.0.1" + }, + "funding": { + "url": "https://github.com/sponsors/fb55" + } + }, + "node_modules/css-select/node_modules/dom-serializer": { + "version": "1.4.1", + "resolved": "https://registry.npmmirror.com/dom-serializer/-/dom-serializer-1.4.1.tgz", + "integrity": "sha512-VHwB3KfrcOOkelEG2ZOfxqLZdfkil8PtJi4P8N2MMXucZq2yLp75ClViUlOVwyoHEDjYU433Aq+5zWP61+RGag==", + "license": "MIT", + "dependencies": { + "domelementtype": "^2.0.1", + "domhandler": "^4.2.0", + "entities": "^2.0.0" + }, + "funding": { + "url": "https://github.com/cheeriojs/dom-serializer?sponsor=1" + } + }, + "node_modules/css-select/node_modules/domelementtype": { + "version": "2.3.0", + "resolved": "https://registry.npmmirror.com/domelementtype/-/domelementtype-2.3.0.tgz", + "integrity": "sha512-OLETBj6w0OsagBwdXnPdN0cnMfF9opN69co+7ZrbfPGrdpPVNBUj02spi6B1N7wChLQiPn4CSH/zJvXw56gmHw==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/fb55" + } + ], + "license": "BSD-2-Clause" + }, + "node_modules/css-select/node_modules/domhandler": { + "version": "4.3.1", + "resolved": "https://registry.npmmirror.com/domhandler/-/domhandler-4.3.1.tgz", + "integrity": "sha512-GrwoxYN+uWlzO8uhUXRl0P+kHE4GtVPfYzVLcUxPL7KNdHKj66vvlhiweIHqYYXWlw+T8iLMp42Lm67ghw4WMQ==", + "license": "BSD-2-Clause", + "dependencies": { + "domelementtype": "^2.2.0" + }, + "engines": { + "node": ">= 4" + }, + "funding": { + "url": "https://github.com/fb55/domhandler?sponsor=1" + } + }, + "node_modules/css-select/node_modules/domutils": { + "version": "2.8.0", + "resolved": "https://registry.npmmirror.com/domutils/-/domutils-2.8.0.tgz", + "integrity": "sha512-w96Cjofp72M5IIhpjgobBimYEfoPjx1Vx0BSX9P30WBdZW2WIKU0T1Bd0kz2eNZ9ikjKgHbEyKx8BB6H1L3h3A==", + "license": "BSD-2-Clause", + "dependencies": { + "dom-serializer": "^1.0.1", + "domelementtype": "^2.2.0", + "domhandler": "^4.2.0" + }, + "funding": { + "url": "https://github.com/fb55/domutils?sponsor=1" + } + }, + "node_modules/css-select/node_modules/entities": { + "version": "2.2.0", + "resolved": "https://registry.npmmirror.com/entities/-/entities-2.2.0.tgz", + "integrity": "sha512-p92if5Nz619I0w+akJrLZH0MX0Pb5DX39XOwQTtXSdQQOaYH03S1uIQp4mhOZtAXrxq4ViO67YTiLBo2638o9A==", + "license": "BSD-2-Clause", + "funding": { + "url": "https://github.com/fb55/entities?sponsor=1" + } + }, + "node_modules/css-tree": { + "version": "1.1.3", + "resolved": "https://registry.npmmirror.com/css-tree/-/css-tree-1.1.3.tgz", + "integrity": "sha512-tRpdppF7TRazZrjJ6v3stzv93qxRcSsFmW6cX0Zm2NVKpxE1WV1HblnghVv9TreireHkqI/VDEsfolRF1p6y7Q==", + "license": "MIT", + "dependencies": { + "mdn-data": "2.0.14", + "source-map": "^0.6.1" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/css-what": { + "version": "6.1.0", + "resolved": "https://registry.npmmirror.com/css-what/-/css-what-6.1.0.tgz", + "integrity": "sha512-HTUrgRJ7r4dsZKU6GjmpfRK1O76h97Z8MfS1G0FozR+oF2kG6Vfe8JE6zwrkbxigziPHinCJ+gCPjA9EaBDtRw==", + "license": "BSD-2-Clause", + "engines": { + "node": ">= 6" + }, + "funding": { + "url": "https://github.com/sponsors/fb55" + } + }, + "node_modules/csso": { + "version": "4.2.0", + "resolved": "https://registry.npmmirror.com/csso/-/csso-4.2.0.tgz", + "integrity": "sha512-wvlcdIbf6pwKEk7vHj8/Bkc0B4ylXZruLvOgs9doS5eOsOpuodOV2zJChSpkp+pRpYQLQMeF04nr3Z68Sta9jA==", + "license": "MIT", + "dependencies": { + "css-tree": "^1.1.2" + }, + "engines": { + "node": ">=8.0.0" + } + }, + "node_modules/data-view-buffer": { + "version": "1.0.1", + "resolved": "https://registry.npmmirror.com/data-view-buffer/-/data-view-buffer-1.0.1.tgz", + "integrity": "sha512-0lht7OugA5x3iJLOWFhWK/5ehONdprk0ISXqVFn/NFrDu+cuc8iADFrGQz5BnRK7LLU3JmkbXSxaqX+/mXYtUA==", + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.6", + "es-errors": "^1.3.0", + "is-data-view": "^1.0.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/data-view-byte-length": { + "version": "1.0.1", + "resolved": "https://registry.npmmirror.com/data-view-byte-length/-/data-view-byte-length-1.0.1.tgz", + "integrity": "sha512-4J7wRJD3ABAzr8wP+OcIcqq2dlUKp4DVflx++hs5h5ZKydWMI6/D/fAot+yh6g2tHh8fLFTvNOaVN357NvSrOQ==", + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.7", + "es-errors": "^1.3.0", + "is-data-view": "^1.0.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/data-view-byte-offset": { + "version": "1.0.0", + "resolved": "https://registry.npmmirror.com/data-view-byte-offset/-/data-view-byte-offset-1.0.0.tgz", + "integrity": "sha512-t/Ygsytq+R995EJ5PZlD4Cu56sWa8InXySaViRzw9apusqsOO2bQP+SbYzAhR0pFKoB+43lYy8rWban9JSuXnA==", + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.6", + "es-errors": "^1.3.0", + "is-data-view": "^1.0.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/de-indent": { + "version": "1.0.2", + "resolved": "https://registry.npmjs.org/de-indent/-/de-indent-1.0.2.tgz", + "integrity": "sha512-e/1zu3xH5MQryN2zdVaF0OrdNLUbvWxzMbi+iNA6Bky7l1RoP8a2fIbRocyHclXt/arDrrR6lL3TqFD9pMQTsg==", + "dev": true, + "license": "MIT" + }, + "node_modules/debug": { + "version": "4.3.7", + "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.7.tgz", + "integrity": "sha512-Er2nc/H7RrMXZBFCEim6TCmMk02Z8vLC2Rbi1KEBggpo0fS6l0S1nnapwmIi3yW/+GOJap1Krg4w0Hg80oCqgQ==", + "license": "MIT", + "dependencies": { + "ms": "^2.1.3" + }, + "engines": { + "node": ">=6.0" + }, + "peerDependenciesMeta": { + "supports-color": { + "optional": true + } + } + }, + "node_modules/decode-uri-component": { + "version": "0.2.2", + "resolved": "https://registry.npmmirror.com/decode-uri-component/-/decode-uri-component-0.2.2.tgz", + "integrity": "sha512-FqUYQ+8o158GyGTrMFJms9qh3CqTKvAqgqsTnkLI8sKu0028orqBhxNMFkFen0zGyg6epACD32pjVk58ngIErQ==", + "license": "MIT", + "engines": { + "node": ">=0.10" + } + }, + "node_modules/define-data-property": { + "version": "1.1.4", + "resolved": "https://registry.npmmirror.com/define-data-property/-/define-data-property-1.1.4.tgz", + "integrity": "sha512-rBMvIzlpA8v6E+SJZoo++HAYqsLrkg7MSfIinMPFhmkorw7X+dOXVJQs+QT69zGkzMyfDnIMN2Wid1+NbL3T+A==", + "license": "MIT", + "dependencies": { + "es-define-property": "^1.0.0", + "es-errors": "^1.3.0", + "gopd": "^1.0.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/define-properties": { + "version": "1.2.1", + "resolved": "https://registry.npmmirror.com/define-properties/-/define-properties-1.2.1.tgz", + "integrity": "sha512-8QmQKqEASLd5nx0U1B1okLElbUuuttJ/AnYmRXbbbGDWh6uS208EjD4Xqq/I9wK7u0v6O08XhTWnt5XtEbR6Dg==", + "license": "MIT", + "dependencies": { + "define-data-property": "^1.0.1", + "has-property-descriptors": "^1.0.0", + "object-keys": "^1.1.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/define-property": { + "version": "1.0.0", + "resolved": "https://registry.npmmirror.com/define-property/-/define-property-1.0.0.tgz", + "integrity": "sha512-cZTYKFWspt9jZsMscWo8sc/5lbPC9Q0N5nBLgb+Yd915iL3udB1uFgS3B8YCx66UVHq018DAVFoee7x+gxggeA==", + "license": "MIT", + "dependencies": { + "is-descriptor": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/delayed-stream": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/delayed-stream/-/delayed-stream-1.0.0.tgz", + "integrity": "sha512-ZySD7Nf91aLB0RxL4KGrKHBXl7Eds1DAmEdcoVawXnLD7SDhpNgtuII2aAkg7a7QS41jxPSZ17p4VdGnMHk3MQ==", + "license": "MIT", + "engines": { + "node": ">=0.4.0" + } + }, + "node_modules/dequal": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/dequal/-/dequal-2.0.3.tgz", + "integrity": "sha512-0je+qPKHEMohvfRTCEo3CrPG6cAzAYgmzKyxRiYSSDkS6eGJdyVJm7WaYA5ECaAD9wLB2T4EEeymA5aFVcYXCA==", + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/devlop": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/devlop/-/devlop-1.1.0.tgz", + "integrity": "sha512-RWmIqhcFf1lRYBvNmr7qTNuyCt/7/ns2jbpp1+PalgE/rDQcBT0fioSMUpJ93irlUhC5hrg4cYqe6U+0ImW0rA==", + "license": "MIT", + "dependencies": { + "dequal": "^2.0.0" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/dom-serializer": { + "version": "0.2.2", + "resolved": "https://registry.npmmirror.com/dom-serializer/-/dom-serializer-0.2.2.tgz", + "integrity": "sha512-2/xPb3ORsQ42nHYiSunXkDjPLBaEj/xTwUO4B7XCZQTRk7EBtTOPaygh10YAAh2OI1Qrp6NWfpAhzswj0ydt9g==", + "license": "MIT", + "dependencies": { + "domelementtype": "^2.0.1", + "entities": "^2.0.0" + } + }, + "node_modules/dom-serializer/node_modules/domelementtype": { + "version": "2.3.0", + "resolved": "https://registry.npmmirror.com/domelementtype/-/domelementtype-2.3.0.tgz", + "integrity": "sha512-OLETBj6w0OsagBwdXnPdN0cnMfF9opN69co+7ZrbfPGrdpPVNBUj02spi6B1N7wChLQiPn4CSH/zJvXw56gmHw==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/fb55" + } + ], + "license": "BSD-2-Clause" + }, + "node_modules/dom-serializer/node_modules/entities": { + "version": "2.2.0", + "resolved": "https://registry.npmmirror.com/entities/-/entities-2.2.0.tgz", + "integrity": "sha512-p92if5Nz619I0w+akJrLZH0MX0Pb5DX39XOwQTtXSdQQOaYH03S1uIQp4mhOZtAXrxq4ViO67YTiLBo2638o9A==", + "license": "BSD-2-Clause", + "funding": { + "url": "https://github.com/fb55/entities?sponsor=1" + } + }, + "node_modules/dom-to-image-more": { + "version": "3.5.0", + "resolved": "https://registry.npmjs.org/dom-to-image-more/-/dom-to-image-more-3.5.0.tgz", + "integrity": "sha512-VF/vwfHsPNMHJb5W/5sAmco3UIlEWSEFLppInQwqwN4joUvBULDwE3CqVcUDkUWleke/nZ5KwIVSrrFlGw7WPA==", + "license": "MIT" + }, + "node_modules/domelementtype": { + "version": "1.3.1", + "resolved": "https://registry.npmmirror.com/domelementtype/-/domelementtype-1.3.1.tgz", + "integrity": "sha512-BSKB+TSpMpFI/HOxCNr1O8aMOTZ8hT3pM3GQ0w/mWRmkhEDSFJkkyzz4XQsBV44BChwGkrDfMyjVD0eA2aFV3w==", + "license": "BSD-2-Clause" + }, + "node_modules/domhandler": { + "version": "2.4.2", + "resolved": "https://registry.npmmirror.com/domhandler/-/domhandler-2.4.2.tgz", + "integrity": "sha512-JiK04h0Ht5u/80fdLMCEmV4zkNh2BcoMFBmZ/91WtYZ8qVXSKjiw7fXMgFPnHcSZgOo3XdinHvmnDUeMf5R4wA==", + "license": "BSD-2-Clause", + "dependencies": { + "domelementtype": "1" + } + }, + "node_modules/domutils": { + "version": "1.7.0", + "resolved": "https://registry.npmmirror.com/domutils/-/domutils-1.7.0.tgz", + "integrity": "sha512-Lgd2XcJ/NjEw+7tFvfKxOzCYKZsdct5lczQ2ZaQY8Djz7pfAD3Gbp8ySJWtreII/vDlMVmxwa6pHmdxIYgttDg==", + "license": "BSD-2-Clause", + "dependencies": { + "dom-serializer": "0", + "domelementtype": "1" + } + }, + "node_modules/emojis-list": { + "version": "3.0.0", + "resolved": "https://registry.npmmirror.com/emojis-list/-/emojis-list-3.0.0.tgz", + "integrity": "sha512-/kyM18EfinwXZbno9FyUGeFh87KC8HRQBQGildHZbEuRyWFOmv1U10o9BBp8XVZDVNNuQKyIGIu5ZYAAXJ0V2Q==", + "license": "MIT", + "engines": { + "node": ">= 4" + } + }, + "node_modules/entities": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/entities/-/entities-4.5.0.tgz", + "integrity": "sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw==", + "license": "BSD-2-Clause", + "engines": { + "node": ">=0.12" + }, + "funding": { + "url": "https://github.com/fb55/entities?sponsor=1" + } + }, + "node_modules/errno": { + "version": "0.1.8", + "resolved": "https://registry.npmjs.org/errno/-/errno-0.1.8.tgz", + "integrity": "sha512-dJ6oBr5SQ1VSd9qkk7ByRgb/1SH4JZjCHSW/mr63/QcXO9zLVxvJ6Oy13nio03rxpSnVDDjFor75SjVeZWPW/A==", + "license": "MIT", + "optional": true, + "dependencies": { + "prr": "~1.0.1" + }, + "bin": { + "errno": "cli.js" + } + }, + "node_modules/es-abstract": { + "version": "1.23.5", + "resolved": "https://registry.npmmirror.com/es-abstract/-/es-abstract-1.23.5.tgz", + "integrity": "sha512-vlmniQ0WNPwXqA0BnmwV3Ng7HxiGlh6r5U6JcTMNx8OilcAGqVJBHJcPjqOMaczU9fRuRK5Px2BdVyPRnKMMVQ==", + "license": "MIT", + "dependencies": { + "array-buffer-byte-length": "^1.0.1", + "arraybuffer.prototype.slice": "^1.0.3", + "available-typed-arrays": "^1.0.7", + "call-bind": "^1.0.7", + "data-view-buffer": "^1.0.1", + "data-view-byte-length": "^1.0.1", + "data-view-byte-offset": "^1.0.0", + "es-define-property": "^1.0.0", + "es-errors": "^1.3.0", + "es-object-atoms": "^1.0.0", + "es-set-tostringtag": "^2.0.3", + "es-to-primitive": "^1.2.1", + "function.prototype.name": "^1.1.6", + "get-intrinsic": "^1.2.4", + "get-symbol-description": "^1.0.2", + "globalthis": "^1.0.4", + "gopd": "^1.0.1", + "has-property-descriptors": "^1.0.2", + "has-proto": "^1.0.3", + "has-symbols": "^1.0.3", + "hasown": "^2.0.2", + "internal-slot": "^1.0.7", + "is-array-buffer": "^3.0.4", + "is-callable": "^1.2.7", + "is-data-view": "^1.0.1", + "is-negative-zero": "^2.0.3", + "is-regex": "^1.1.4", + "is-shared-array-buffer": "^1.0.3", + "is-string": "^1.0.7", + "is-typed-array": "^1.1.13", + "is-weakref": "^1.0.2", + "object-inspect": "^1.13.3", + "object-keys": "^1.1.1", + "object.assign": "^4.1.5", + "regexp.prototype.flags": "^1.5.3", + "safe-array-concat": "^1.1.2", + "safe-regex-test": "^1.0.3", + "string.prototype.trim": "^1.2.9", + "string.prototype.trimend": "^1.0.8", + "string.prototype.trimstart": "^1.0.8", + "typed-array-buffer": "^1.0.2", + "typed-array-byte-length": "^1.0.1", + "typed-array-byte-offset": "^1.0.2", + "typed-array-length": "^1.0.6", + "unbox-primitive": "^1.0.2", + "which-typed-array": "^1.1.15" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/es-define-property": { + "version": "1.0.0", + "resolved": "https://registry.npmmirror.com/es-define-property/-/es-define-property-1.0.0.tgz", + "integrity": "sha512-jxayLKShrEqqzJ0eumQbVhTYQM27CfT1T35+gCgDFoL82JLsXqTJ76zv6A0YLOgEnLUMvLzsDsGIrl8NFpT2gQ==", + "license": "MIT", + "dependencies": { + "get-intrinsic": "^1.2.4" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/es-errors": { + "version": "1.3.0", + "resolved": "https://registry.npmmirror.com/es-errors/-/es-errors-1.3.0.tgz", + "integrity": "sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw==", + "license": "MIT", + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/es-object-atoms": { + "version": "1.0.0", + "resolved": "https://registry.npmmirror.com/es-object-atoms/-/es-object-atoms-1.0.0.tgz", + "integrity": "sha512-MZ4iQ6JwHOBQjahnjwaC1ZtIBH+2ohjamzAO3oaHcXYup7qxjF2fixyH+Q71voWHeOkI2q/TnJao/KfXYIZWbw==", + "license": "MIT", + "dependencies": { + "es-errors": "^1.3.0" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/es-set-tostringtag": { + "version": "2.0.3", + "resolved": "https://registry.npmmirror.com/es-set-tostringtag/-/es-set-tostringtag-2.0.3.tgz", + "integrity": "sha512-3T8uNMC3OQTHkFUsFq8r/BwAXLHvU/9O9mE0fBc/MY5iq/8H7ncvO947LmYA6ldWw9Uh8Yhf25zu6n7nML5QWQ==", + "license": "MIT", + "dependencies": { + "get-intrinsic": "^1.2.4", + "has-tostringtag": "^1.0.2", + "hasown": "^2.0.1" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/es-to-primitive": { + "version": "1.3.0", + "resolved": "https://registry.npmmirror.com/es-to-primitive/-/es-to-primitive-1.3.0.tgz", + "integrity": "sha512-w+5mJ3GuFL+NjVtJlvydShqE1eN3h3PbI7/5LAsYJP/2qtuMXjfL2LpHSRqo4b4eSF5K/DH1JXKUAHSB2UW50g==", + "license": "MIT", + "dependencies": { + "is-callable": "^1.2.7", + "is-date-object": "^1.0.5", + "is-symbol": "^1.0.4" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/esbuild": { + "version": "0.21.5", + "resolved": "https://registry.npmjs.org/esbuild/-/esbuild-0.21.5.tgz", + "integrity": "sha512-mg3OPMV4hXywwpoDxu3Qda5xCKQi+vCTZq8S9J/EpkhB2HzKXq4SNFZE3+NK93JYxc8VMSep+lOUSC/RVKaBqw==", + "hasInstallScript": true, + "license": "MIT", + "bin": { + "esbuild": "bin/esbuild" + }, + "engines": { + "node": ">=12" + }, + "optionalDependencies": { + "@esbuild/aix-ppc64": "0.21.5", + "@esbuild/android-arm": "0.21.5", + "@esbuild/android-arm64": "0.21.5", + "@esbuild/android-x64": "0.21.5", + "@esbuild/darwin-arm64": "0.21.5", + "@esbuild/darwin-x64": "0.21.5", + "@esbuild/freebsd-arm64": "0.21.5", + "@esbuild/freebsd-x64": "0.21.5", + "@esbuild/linux-arm": "0.21.5", + "@esbuild/linux-arm64": "0.21.5", + "@esbuild/linux-ia32": "0.21.5", + "@esbuild/linux-loong64": "0.21.5", + "@esbuild/linux-mips64el": "0.21.5", + "@esbuild/linux-ppc64": "0.21.5", + "@esbuild/linux-riscv64": "0.21.5", + "@esbuild/linux-s390x": "0.21.5", + "@esbuild/linux-x64": "0.21.5", + "@esbuild/netbsd-x64": "0.21.5", + "@esbuild/openbsd-x64": "0.21.5", + "@esbuild/sunos-x64": "0.21.5", + "@esbuild/win32-arm64": "0.21.5", + "@esbuild/win32-ia32": "0.21.5", + "@esbuild/win32-x64": "0.21.5" + } + }, + "node_modules/escape-string-regexp": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/escape-string-regexp/-/escape-string-regexp-4.0.0.tgz", + "integrity": "sha512-TtpcNJ3XAzx3Gq8sWRzJaVajRs0uVxA2YAkdb1jm2YkPz4G6egUFAyA3n5vtEIZefPk5Wa4UXbKuS5fKkJWdgA==", + "license": "MIT", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/estree-walker": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/estree-walker/-/estree-walker-2.0.2.tgz", + "integrity": "sha512-Rfkk/Mp/DL7JVje3u18FxFujQlTNR2q6QfMSMB7AvCBx91NGj/ba3kCfza0f6dVDbw7YlRf/nDrn7pQrCCyQ/w==", + "dev": true, + "license": "MIT" + }, + "node_modules/etag": { + "version": "1.8.1", + "resolved": "https://registry.npmmirror.com/etag/-/etag-1.8.1.tgz", + "integrity": "sha512-aIL5Fx7mawVa300al2BnEE4iNvo1qETxLrPI/o05L7z6go7fCw1J6EQmbK4FmJ2AS7kgVF/KEZWufBfdClMcPg==", + "license": "MIT", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/evaluatex": { + "version": "2.2.0", + "resolved": "https://registry.npmjs.org/evaluatex/-/evaluatex-2.2.0.tgz", + "integrity": "sha512-QVtGvYTf9HvQyDjbBCwoDQPP9KMuVB56H8KalrkLsPPCQfngpVmkiIoxJ4FU/SVmlmhnbr/heOmP5VlbCTEJpg==", + "license": "MIT" + }, + "node_modules/event-target-shim": { + "version": "5.0.1", + "resolved": "https://registry.npmjs.org/event-target-shim/-/event-target-shim-5.0.1.tgz", + "integrity": "sha512-i/2XbnSz/uxRCU6+NdVJgKWDTM427+MqYbkQzD321DuCQJUqOuJKIA0IM2+W2xtYHdKOmZ4dR6fExsd4SXL+WQ==", + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/expand-brackets": { + "version": "2.1.4", + "resolved": "https://registry.npmmirror.com/expand-brackets/-/expand-brackets-2.1.4.tgz", + "integrity": "sha512-w/ozOKR9Obk3qoWeY/WDi6MFta9AoMR+zud60mdnbniMcBxRuFJyDt2LdX/14A1UABeqk+Uk+LDfUpvoGKppZA==", + "license": "MIT", + "dependencies": { + "debug": "^2.3.3", + "define-property": "^0.2.5", + "extend-shallow": "^2.0.1", + "posix-character-classes": "^0.1.0", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/expand-brackets/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmmirror.com/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "license": "MIT", + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/expand-brackets/node_modules/define-property": { + "version": "0.2.5", + "resolved": "https://registry.npmmirror.com/define-property/-/define-property-0.2.5.tgz", + "integrity": "sha512-Rr7ADjQZenceVOAKop6ALkkRAmH1A4Gx9hV/7ZujPUN2rkATqFO0JZLZInbAjpZYoJ1gUx8MRMQVkYemcbMSTA==", + "license": "MIT", + "dependencies": { + "is-descriptor": "^0.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/expand-brackets/node_modules/is-descriptor": { + "version": "0.1.7", + "resolved": "https://registry.npmmirror.com/is-descriptor/-/is-descriptor-0.1.7.tgz", + "integrity": "sha512-C3grZTvObeN1xud4cRWl366OMXZTj0+HGyk4hvfpx4ZHt1Pb60ANSXqCK7pdOTeUQpRzECBSTphqvD7U+l22Eg==", + "license": "MIT", + "dependencies": { + "is-accessor-descriptor": "^1.0.1", + "is-data-descriptor": "^1.0.1" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/expand-brackets/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmmirror.com/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", + "license": "MIT" + }, + "node_modules/extend-shallow": { + "version": "2.0.1", + "resolved": "https://registry.npmmirror.com/extend-shallow/-/extend-shallow-2.0.1.tgz", + "integrity": "sha512-zCnTtlxNoAiDc3gqY2aYAWFx7XWWiasuF2K8Me5WbN8otHKTUKBwjPtNpRs/rbUZm7KxWAaNj7P1a/p52GbVug==", + "license": "MIT", + "dependencies": { + "is-extendable": "^0.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/extglob": { + "version": "2.0.4", + "resolved": "https://registry.npmmirror.com/extglob/-/extglob-2.0.4.tgz", + "integrity": "sha512-Nmb6QXkELsuBr24CJSkilo6UHHgbekK5UiZgfE6UHD3Eb27YC6oD+bhcT+tJ6cl8dmsgdQxnWlcry8ksBIBLpw==", + "license": "MIT", + "dependencies": { + "array-unique": "^0.3.2", + "define-property": "^1.0.0", + "expand-brackets": "^2.1.4", + "extend-shallow": "^2.0.1", + "fragment-cache": "^0.2.1", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/fast-deep-equal": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/fast-deep-equal/-/fast-deep-equal-3.1.3.tgz", + "integrity": "sha512-f3qQ9oQy9j2AhBe/H9VC91wLmKBCCU/gDOnKNAYG5hswO7BLKj09Hc5HYNz9cGI++xlpDCIgDaitVs03ATR84Q==", + "dev": true, + "license": "MIT" + }, + "node_modules/fast-glob": { + "version": "3.3.2", + "resolved": "https://registry.npmmirror.com/fast-glob/-/fast-glob-3.3.2.tgz", + "integrity": "sha512-oX2ruAFQwf/Orj8m737Y5adxDQO0LAB7/S5MnxCdTNDd4p6BsyIVsv9JQsATbTSq8KHRpLwIHbVlUNatxd+1Ow==", + "license": "MIT", + "dependencies": { + "@nodelib/fs.stat": "^2.0.2", + "@nodelib/fs.walk": "^1.2.3", + "glob-parent": "^5.1.2", + "merge2": "^1.3.0", + "micromatch": "^4.0.4" + }, + "engines": { + "node": ">=8.6.0" + } + }, + "node_modules/fast-glob/node_modules/braces": { + "version": "3.0.3", + "resolved": "https://registry.npmmirror.com/braces/-/braces-3.0.3.tgz", + "integrity": "sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==", + "license": "MIT", + "dependencies": { + "fill-range": "^7.1.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/fast-glob/node_modules/fill-range": { + "version": "7.1.1", + "resolved": "https://registry.npmmirror.com/fill-range/-/fill-range-7.1.1.tgz", + "integrity": "sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==", + "license": "MIT", + "dependencies": { + "to-regex-range": "^5.0.1" + }, + "engines": { + "node": ">=8" + } + }, + "node_modules/fast-glob/node_modules/is-number": { + "version": "7.0.0", + "resolved": "https://registry.npmmirror.com/is-number/-/is-number-7.0.0.tgz", + "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", + "license": "MIT", + "engines": { + "node": ">=0.12.0" + } + }, + "node_modules/fast-glob/node_modules/micromatch": { + "version": "4.0.8", + "resolved": "https://registry.npmmirror.com/micromatch/-/micromatch-4.0.8.tgz", + "integrity": "sha512-PXwfBhYu0hBCPw8Dn0E+WDYb7af3dSLVWKi3HGv84IdF4TyFoC0ysxFd0Goxw7nSv4T/PzEJQxsYsEiFCKo2BA==", + "license": "MIT", + "dependencies": { + "braces": "^3.0.3", + "picomatch": "^2.3.1" + }, + "engines": { + "node": ">=8.6" + } + }, + "node_modules/fast-glob/node_modules/picomatch": { + "version": "2.3.1", + "resolved": "https://registry.npmmirror.com/picomatch/-/picomatch-2.3.1.tgz", + "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", + "license": "MIT", + "engines": { + "node": ">=8.6" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } + }, + "node_modules/fast-glob/node_modules/to-regex-range": { + "version": "5.0.1", + "resolved": "https://registry.npmmirror.com/to-regex-range/-/to-regex-range-5.0.1.tgz", + "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", + "license": "MIT", + "dependencies": { + "is-number": "^7.0.0" + }, + "engines": { + "node": ">=8.0" + } + }, + "node_modules/fast-json-stable-stringify": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/fast-json-stable-stringify/-/fast-json-stable-stringify-2.1.0.tgz", + "integrity": "sha512-lhd/wF+Lk98HZoTCtlVraHtfh5XYijIjalXck7saUtuanSDyLMxnHhSXEDJqHxD7msR8D0uCmqlkwjCV8xvwHw==", + "dev": true, + "license": "MIT" + }, + "node_modules/fastq": { + "version": "1.17.1", + "resolved": "https://registry.npmmirror.com/fastq/-/fastq-1.17.1.tgz", + "integrity": "sha512-sRVD3lWVIXWg6By68ZN7vho9a1pQcN/WBFaAAsDDFzlJjvoGx0P8z7V1t72grFJfJhu3YPZBuu25f7Kaw2jN1w==", + "license": "ISC", + "dependencies": { + "reusify": "^1.0.4" + } + }, + "node_modules/fetch-event-stream": { + "version": "0.1.5", + "resolved": "https://registry.npmjs.org/fetch-event-stream/-/fetch-event-stream-0.1.5.tgz", + "integrity": "sha512-V1PWovkspxQfssq/NnxoEyQo1DV+MRK/laPuPblIZmSjMN8P5u46OhlFQznSr9p/t0Sp8Uc6SbM3yCMfr0KU8g==", + "license": "MIT" + }, + "node_modules/file-saver": { + "version": "2.0.5", + "resolved": "https://registry.npmjs.org/file-saver/-/file-saver-2.0.5.tgz", + "integrity": "sha512-P9bmyZ3h/PRG+Nzga+rbdI4OEpNDzAVyy74uVO9ATgzLK6VtAsYybF/+TOCvrc0MO793d6+42lLyZTw7/ArVzA==", + "license": "MIT" + }, + "node_modules/fill-range": { + "version": "4.0.0", + "resolved": "https://registry.npmmirror.com/fill-range/-/fill-range-4.0.0.tgz", + "integrity": "sha512-VcpLTWqWDiTerugjj8e3+esbg+skS3M9e54UuR3iCeIDMXCLTsAH8hTSzDQU/X6/6t3eYkOKoZSef2PlU6U1XQ==", + "license": "MIT", + "dependencies": { + "extend-shallow": "^2.0.1", + "is-number": "^3.0.0", + "repeat-string": "^1.6.1", + "to-regex-range": "^2.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/for-each": { + "version": "0.3.3", + "resolved": "https://registry.npmmirror.com/for-each/-/for-each-0.3.3.tgz", + "integrity": "sha512-jqYfLp7mo9vIyQf8ykW2v7A+2N4QjeCeI5+Dz9XraiO1ign81wjiH7Fb9vSOWvQfNtmSa4H2RoQTrrXivdUZmw==", + "license": "MIT", + "dependencies": { + "is-callable": "^1.1.3" + } + }, + "node_modules/for-in": { + "version": "1.0.2", + "resolved": "https://registry.npmmirror.com/for-in/-/for-in-1.0.2.tgz", + "integrity": "sha512-7EwmXrOjyL+ChxMhmG5lnW9MPt1aIeZEwKhQzoBUdTV0N3zuwWDZYVJatDvZ2OyzPUvdIAZDsCetk3coyMfcnQ==", + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/form-data": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/form-data/-/form-data-4.0.1.tgz", + "integrity": "sha512-tzN8e4TX8+kkxGPK8D5u0FNmjPUjw3lwC9lSLxxoB/+GtsJG91CO8bSWy73APlgAZzZbXEYZJuxjkHH2w+Ezhw==", + "license": "MIT", + "dependencies": { + "asynckit": "^0.4.0", + "combined-stream": "^1.0.8", + "mime-types": "^2.1.12" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/form-data-encoder": { + "version": "1.7.2", + "resolved": "https://registry.npmjs.org/form-data-encoder/-/form-data-encoder-1.7.2.tgz", + "integrity": "sha512-qfqtYan3rxrnCk1VYaA4H+Ms9xdpPqvLZa6xmMgFvhO32x7/3J/ExcTd6qpxM0vH2GdMI+poehyBZvqfMTto8A==", + "license": "MIT" + }, + "node_modules/formdata-node": { + "version": "4.4.1", + "resolved": "https://registry.npmjs.org/formdata-node/-/formdata-node-4.4.1.tgz", + "integrity": "sha512-0iirZp3uVDjVGt9p49aTaqjk84TrglENEDuqfdlZQ1roC9CWlPk6Avf8EEnZNcAqPonwkG35x4n3ww/1THYAeQ==", + "license": "MIT", + "dependencies": { + "node-domexception": "1.0.0", + "web-streams-polyfill": "4.0.0-beta.3" + }, + "engines": { + "node": ">= 12.20" + } + }, + "node_modules/fragment-cache": { + "version": "0.2.1", + "resolved": "https://registry.npmmirror.com/fragment-cache/-/fragment-cache-0.2.1.tgz", + "integrity": "sha512-GMBAbW9antB8iZRHLoGw0b3HANt57diZYFO/HL1JGIC1MjKrdmhxvrJbupnVvpys0zsz7yBApXdQyfepKly2kA==", + "license": "MIT", + "dependencies": { + "map-cache": "^0.2.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/fs-extra": { + "version": "7.0.1", + "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-7.0.1.tgz", + "integrity": "sha512-YJDaCJZEnBmcbw13fvdAM9AwNOJwOzrE4pqMqBq5nFiEqXUqHwlK4B+3pUw6JNvfSPtX05xFHtYy/1ni01eGCw==", + "dev": true, + "license": "MIT", + "dependencies": { + "graceful-fs": "^4.1.2", + "jsonfile": "^4.0.0", + "universalify": "^0.1.0" + }, + "engines": { + "node": ">=6 <7 || >=8" + } + }, + "node_modules/fsevents": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz", + "integrity": "sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==", + "hasInstallScript": true, + "license": "MIT", + "optional": true, + "os": [ + "darwin" + ], + "engines": { + "node": "^8.16.0 || ^10.6.0 || >=11.0.0" + } + }, + "node_modules/function-bind": { + "version": "1.1.2", + "resolved": "https://registry.npmjs.org/function-bind/-/function-bind-1.1.2.tgz", + "integrity": "sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==", + "license": "MIT", + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/function.prototype.name": { + "version": "1.1.6", + "resolved": "https://registry.npmmirror.com/function.prototype.name/-/function.prototype.name-1.1.6.tgz", + "integrity": "sha512-Z5kx79swU5P27WEayXM1tBi5Ze/lbIyiNgU3qyXUOf9b2rgXYyF9Dy9Cx+IQv/Lc8WCG6L82zwUPpSS9hGehIg==", + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.2", + "define-properties": "^1.2.0", + "es-abstract": "^1.22.1", + "functions-have-names": "^1.2.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/functions-have-names": { + "version": "1.2.3", + "resolved": "https://registry.npmmirror.com/functions-have-names/-/functions-have-names-1.2.3.tgz", + "integrity": "sha512-xckBUXyTIqT97tq2x2AMb+g163b5JFysYk0x4qxNFwbfQkmNZoiRHb6sPzI9/QV33WeuvVYBUIiD4NzNIyqaRQ==", + "license": "MIT", + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/get-intrinsic": { + "version": "1.2.4", + "resolved": "https://registry.npmmirror.com/get-intrinsic/-/get-intrinsic-1.2.4.tgz", + "integrity": "sha512-5uYhsJH8VJBTv7oslg4BznJYhDoRI6waYCxMmCdnTrcCrHA/fCFKoTFz2JKKE0HdDFUF7/oQuhzumXJK7paBRQ==", + "license": "MIT", + "dependencies": { + "es-errors": "^1.3.0", + "function-bind": "^1.1.2", + "has-proto": "^1.0.1", + "has-symbols": "^1.0.3", + "hasown": "^2.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/get-symbol-description": { + "version": "1.0.2", + "resolved": "https://registry.npmmirror.com/get-symbol-description/-/get-symbol-description-1.0.2.tgz", + "integrity": "sha512-g0QYk1dZBxGwk+Ngc+ltRH2IBp2f7zBkBMBJZCDerh6EhlhSR6+9irMCuT/09zD6qkarHUSn529sK/yL4S27mg==", + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.5", + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.4" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/get-value": { + "version": "2.0.6", + "resolved": "https://registry.npmmirror.com/get-value/-/get-value-2.0.6.tgz", + "integrity": "sha512-Ln0UQDlxH1BapMu3GPtf7CuYNwRZf2gwCuPqbyG6pB8WfmFpzqcy4xtAaAMUhnNqjMKTiCPZG2oMT3YSx8U2NA==", + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/github-markdown-css": { + "version": "5.8.1", + "resolved": "https://registry.npmjs.org/github-markdown-css/-/github-markdown-css-5.8.1.tgz", + "integrity": "sha512-8G+PFvqigBQSWLQjyzgpa2ThD9bo7+kDsriUIidGcRhXgmcaAWUIpCZf8DavJgc+xifjbCG+GvMyWr0XMXmc7g==", + "license": "MIT", + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/glob-parent": { + "version": "5.1.2", + "resolved": "https://registry.npmmirror.com/glob-parent/-/glob-parent-5.1.2.tgz", + "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", + "license": "ISC", + "dependencies": { + "is-glob": "^4.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/globalthis": { + "version": "1.0.4", + "resolved": "https://registry.npmmirror.com/globalthis/-/globalthis-1.0.4.tgz", + "integrity": "sha512-DpLKbNU4WylpxJykQujfCcwYWiV/Jhm50Goo0wrVILAv5jOr9d+H+UR3PhSCD2rCCEIg0uc+G+muBTwD54JhDQ==", + "license": "MIT", + "dependencies": { + "define-properties": "^1.2.1", + "gopd": "^1.0.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/gopd": { + "version": "1.1.0", + "resolved": "https://registry.npmmirror.com/gopd/-/gopd-1.1.0.tgz", + "integrity": "sha512-FQoVQnqcdk4hVM4JN1eromaun4iuS34oStkdlLENLdpULsuQcTyXj8w7ayhuUfPwEYZ1ZOooOTT6fdA9Vmx/RA==", + "license": "MIT", + "dependencies": { + "get-intrinsic": "^1.2.4" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/graceful-fs": { + "version": "4.2.11", + "resolved": "https://registry.npmjs.org/graceful-fs/-/graceful-fs-4.2.11.tgz", + "integrity": "sha512-RbJ5/jmFcNNCcDV5o9eTnBLJ/HszWV0P73bc+Ff4nS/rJj+YaS6IGyiOL0VoBYX+l1Wrl3k63h/KrH+nhJ0XvQ==", + "license": "ISC" + }, + "node_modules/has-ansi": { + "version": "2.0.0", + "resolved": "https://registry.npmmirror.com/has-ansi/-/has-ansi-2.0.0.tgz", + "integrity": "sha512-C8vBJ8DwUCx19vhm7urhTuUsr4/IyP6l4VzNQDv+ryHQObW3TTTp9yB68WpYgRe2bbaGuZ/se74IqFeVnMnLZg==", + "license": "MIT", + "dependencies": { + "ansi-regex": "^2.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/has-bigints": { + "version": "1.0.2", + "resolved": "https://registry.npmmirror.com/has-bigints/-/has-bigints-1.0.2.tgz", + "integrity": "sha512-tSvCKtBr9lkF0Ex0aQiP9N+OpV4zi2r/Nee5VkRDbaqv35RLYMzbwQfFSZZH0kR+Rd6302UJZ2p/bJCEoR3VoQ==", + "license": "MIT", + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/has-flag": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/has-flag/-/has-flag-4.0.0.tgz", + "integrity": "sha512-EykJT/Q1KjTWctppgIAgfSO0tKVuZUjhgMr17kqTumMl6Afv3EISleU7qZUzoXDFTAHTDC4NOoG/ZxU3EvlMPQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/has-property-descriptors": { + "version": "1.0.2", + "resolved": "https://registry.npmmirror.com/has-property-descriptors/-/has-property-descriptors-1.0.2.tgz", + "integrity": "sha512-55JNKuIW+vq4Ke1BjOTjM2YctQIvCT7GFzHwmfZPGo5wnrgkid0YQtnAleFSqumZm4az3n2BS+erby5ipJdgrg==", + "license": "MIT", + "dependencies": { + "es-define-property": "^1.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/has-proto": { + "version": "1.1.0", + "resolved": "https://registry.npmmirror.com/has-proto/-/has-proto-1.1.0.tgz", + "integrity": "sha512-QLdzI9IIO1Jg7f9GT1gXpPpXArAn6cS31R1eEZqz08Gc+uQ8/XiqHWt17Fiw+2p6oTTIq5GXEpQkAlA88YRl/Q==", + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.7" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/has-symbols": { + "version": "1.1.0", + "resolved": "https://registry.npmmirror.com/has-symbols/-/has-symbols-1.1.0.tgz", + "integrity": "sha512-1cDNdwJ2Jaohmb3sg4OmKaMBwuC48sYni5HUw2DvsC8LjGTLK9h+eb1X6RyuOHe4hT0ULCW68iomhjUoKUqlPQ==", + "license": "MIT", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/has-tostringtag": { + "version": "1.0.2", + "resolved": "https://registry.npmmirror.com/has-tostringtag/-/has-tostringtag-1.0.2.tgz", + "integrity": "sha512-NqADB8VjPFLM2V0VvHUewwwsw0ZWBaIdgo+ieHtK3hasLz4qeCRjYcqfB6AQrBggRKppKF8L52/VqdVsO47Dlw==", + "license": "MIT", + "dependencies": { + "has-symbols": "^1.0.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/has-value": { + "version": "1.0.0", + "resolved": "https://registry.npmmirror.com/has-value/-/has-value-1.0.0.tgz", + "integrity": "sha512-IBXk4GTsLYdQ7Rvt+GRBrFSVEkmuOUy4re0Xjd9kJSUQpnTrWR4/y9RpfexN9vkAPMFuQoeWKwqzPozRTlasGw==", + "license": "MIT", + "dependencies": { + "get-value": "^2.0.6", + "has-values": "^1.0.0", + "isobject": "^3.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/has-values": { + "version": "1.0.0", + "resolved": "https://registry.npmmirror.com/has-values/-/has-values-1.0.0.tgz", + "integrity": "sha512-ODYZC64uqzmtfGMEAX/FvZiRyWLpAC3vYnNunURUnkGVTS+mI0smVsWaPydRBsE3g+ok7h960jChO8mFcWlHaQ==", + "license": "MIT", + "dependencies": { + "is-number": "^3.0.0", + "kind-of": "^4.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/has-values/node_modules/kind-of": { + "version": "4.0.0", + "resolved": "https://registry.npmmirror.com/kind-of/-/kind-of-4.0.0.tgz", + "integrity": "sha512-24XsCxmEbRwEDbz/qz3stgin8TTzZ1ESR56OMCN0ujYg+vRutNSiOj9bHH9u85DKgXguraugV5sFuvbD4FW/hw==", + "license": "MIT", + "dependencies": { + "is-buffer": "^1.1.5" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/hasown": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/hasown/-/hasown-2.0.2.tgz", + "integrity": "sha512-0hJU9SCPvmMzIBdZFqNPXWa6dqh7WdH0cII9y+CyS8rG3nL48Bclra9HmKhVVUHyPWNH5Y7xDwAB7bfgSjkUMQ==", + "license": "MIT", + "dependencies": { + "function-bind": "^1.1.2" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/he": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/he/-/he-1.2.0.tgz", + "integrity": "sha512-F/1DnUGPopORZi0ni+CvrCgHQ5FyEAHRLSApuYWMmrbSwoN2Mn/7k+Gl38gJnR7yyDZk6WLXwiGod1JOWNDKGw==", + "license": "MIT", + "bin": { + "he": "bin/he" + } + }, + "node_modules/highlight.js": { + "version": "11.10.0", + "resolved": "https://registry.npmjs.org/highlight.js/-/highlight.js-11.10.0.tgz", + "integrity": "sha512-SYVnVFswQER+zu1laSya563s+F8VDGt7o35d4utbamowvUNLLMovFqwCLSocpZTz3MgaSRA1IbqRWZv97dtErQ==", + "license": "BSD-3-Clause", + "engines": { + "node": ">=12.0.0" + } + }, + "node_modules/htmlparser2": { + "version": "3.10.1", + "resolved": "https://registry.npmmirror.com/htmlparser2/-/htmlparser2-3.10.1.tgz", + "integrity": "sha512-IgieNijUMbkDovyoKObU1DUhm1iwNYE/fuifEoEHfd1oZKZDaONBSkal7Y01shxsM49R4XaMdGez3WnF9UfiCQ==", + "license": "MIT", + "dependencies": { + "domelementtype": "^1.3.1", + "domhandler": "^2.3.0", + "domutils": "^1.5.1", + "entities": "^1.1.1", + "inherits": "^2.0.1", + "readable-stream": "^3.1.1" + } + }, + "node_modules/htmlparser2/node_modules/entities": { + "version": "1.1.2", + "resolved": "https://registry.npmmirror.com/entities/-/entities-1.1.2.tgz", + "integrity": "sha512-f2LZMYl1Fzu7YSBKg+RoROelpOaNrcGmE9AZubeDfrCEia483oW4MI4VyFd5VNHIgQ/7qm1I0wUHK1eJnn2y2w==", + "license": "BSD-2-Clause" + }, + "node_modules/humanize-ms": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/humanize-ms/-/humanize-ms-1.2.1.tgz", + "integrity": "sha512-Fl70vYtsAFb/C06PTS9dZBo7ihau+Tu/DNCk/OyHhea07S+aeMWpFFkUaXRa8fI+ScZbEI8dfSxwY7gxZ9SAVQ==", + "license": "MIT", + "dependencies": { + "ms": "^2.0.0" + } + }, + "node_modules/i18next": { + "version": "23.16.8", + "resolved": "https://registry.npmjs.org/i18next/-/i18next-23.16.8.tgz", + "integrity": "sha512-06r/TitrM88Mg5FdUXAKL96dJMzgqLE5dv3ryBAra4KCwD9mJ4ndOTS95ZuymIGoE+2hzfdaMak2X11/es7ZWg==", + "funding": [ + { + "type": "individual", + "url": "https://locize.com" + }, + { + "type": "individual", + "url": "https://locize.com/i18next.html" + }, + { + "type": "individual", + "url": "https://www.i18next.com/how-to/faq#i18next-is-awesome.-how-can-i-support-the-project" + } + ], + "license": "MIT", + "dependencies": { + "@babel/runtime": "^7.23.2" + } + }, + "node_modules/iconv-lite": { + "version": "0.6.3", + "resolved": "https://registry.npmjs.org/iconv-lite/-/iconv-lite-0.6.3.tgz", + "integrity": "sha512-4fCk79wshMdzMp2rH06qWrJE4iolqLhCUH+OiuIgU++RB0+94NlDL81atO7GX55uUKueo0txHNtvEyI6D7WdMw==", + "license": "MIT", + "optional": true, + "dependencies": { + "safer-buffer": ">= 2.1.2 < 3.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/image-size": { + "version": "0.5.5", + "resolved": "https://registry.npmjs.org/image-size/-/image-size-0.5.5.tgz", + "integrity": "sha512-6TDAlDPZxUFCv+fuOkIoXT/V/f3Qbq8e37p+YOiYrUv3v9cc3/6x78VdfPgFVaB9dZYeLUfKgHRebpkm/oP2VQ==", + "license": "MIT", + "bin": { + "image-size": "bin/image-size.js" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/import-lazy": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/import-lazy/-/import-lazy-4.0.0.tgz", + "integrity": "sha512-rKtvo6a868b5Hu3heneU+L4yEQ4jYKLtjpnPeUdK7h0yzXGmyBTypknlkCvHFBqfX9YlorEiMM6Dnq/5atfHkw==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + } + }, + "node_modules/inherits": { + "version": "2.0.4", + "resolved": "https://registry.npmmirror.com/inherits/-/inherits-2.0.4.tgz", + "integrity": "sha512-k/vGaX4/Yla3WzyMCvTQOXYeIHvqOKtnqBduzTHpzpQZzAskKMhZ2K+EnBiSM9zGSoIFeMpXKxa4dYeZIQqewQ==", + "license": "ISC" + }, + "node_modules/internal-slot": { + "version": "1.0.7", + "resolved": "https://registry.npmmirror.com/internal-slot/-/internal-slot-1.0.7.tgz", + "integrity": "sha512-NGnrKwXzSms2qUUih/ILZ5JBqNTSa1+ZmP6flaIp6KmSElgE9qdndzS3cqjrDovwFdmwsGsLdeFgB6suw+1e9g==", + "license": "MIT", + "dependencies": { + "es-errors": "^1.3.0", + "hasown": "^2.0.0", + "side-channel": "^1.0.4" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/is-accessor-descriptor": { + "version": "1.0.1", + "resolved": "https://registry.npmmirror.com/is-accessor-descriptor/-/is-accessor-descriptor-1.0.1.tgz", + "integrity": "sha512-YBUanLI8Yoihw923YeFUS5fs0fF2f5TSFTNiYAAzhhDscDa3lEqYuz1pDOEP5KvX94I9ey3vsqjJcLVFVU+3QA==", + "license": "MIT", + "dependencies": { + "hasown": "^2.0.0" + }, + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/is-array-buffer": { + "version": "3.0.4", + "resolved": "https://registry.npmmirror.com/is-array-buffer/-/is-array-buffer-3.0.4.tgz", + "integrity": "sha512-wcjaerHw0ydZwfhiKbXJWLDY8A7yV7KhjQOpb83hGgGfId/aQa4TOvwyzn2PuswW2gPCYEL/nEAiSVpdOj1lXw==", + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.2", + "get-intrinsic": "^1.2.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-async-function": { + "version": "2.0.0", + "resolved": "https://registry.npmmirror.com/is-async-function/-/is-async-function-2.0.0.tgz", + "integrity": "sha512-Y1JXKrfykRJGdlDwdKlLpLyMIiWqWvuSd17TvZk68PLAOGOoF4Xyav1z0Xhoi+gCYjZVeC5SI+hYFOfvXmGRCA==", + "license": "MIT", + "dependencies": { + "has-tostringtag": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-bigint": { + "version": "1.1.0", + "resolved": "https://registry.npmmirror.com/is-bigint/-/is-bigint-1.1.0.tgz", + "integrity": "sha512-n4ZT37wG78iz03xPRKJrHTdZbe3IicyucEtdRsV5yglwc3GyUfbAfpSeD0FJ41NbUNSt5wbhqfp1fS+BgnvDFQ==", + "license": "MIT", + "dependencies": { + "has-bigints": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-boolean-object": { + "version": "1.2.0", + "resolved": "https://registry.npmmirror.com/is-boolean-object/-/is-boolean-object-1.2.0.tgz", + "integrity": "sha512-kR5g0+dXf/+kXnqI+lu0URKYPKgICtHGGNCDSB10AaUFj3o/HkB3u7WfpRBJGFopxxY0oH3ux7ZsDjLtK7xqvw==", + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.7", + "has-tostringtag": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-buffer": { + "version": "1.1.6", + "resolved": "https://registry.npmmirror.com/is-buffer/-/is-buffer-1.1.6.tgz", + "integrity": "sha512-NcdALwpXkTm5Zvvbk7owOUSvVvBKDgKP5/ewfXEznmQFfs4ZRmanOeKBTjRVjka3QFoN6XJ+9F3USqfHqTaU5w==", + "license": "MIT" + }, + "node_modules/is-callable": { + "version": "1.2.7", + "resolved": "https://registry.npmmirror.com/is-callable/-/is-callable-1.2.7.tgz", + "integrity": "sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA==", + "license": "MIT", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-core-module": { + "version": "2.15.1", + "resolved": "https://registry.npmjs.org/is-core-module/-/is-core-module-2.15.1.tgz", + "integrity": "sha512-z0vtXSwucUJtANQWldhbtbt7BnL0vxiFjIdDLAatwhDYty2bad6s+rijD6Ri4YuYJubLzIJLUidCh09e1djEVQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "hasown": "^2.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-data-descriptor": { + "version": "1.0.1", + "resolved": "https://registry.npmmirror.com/is-data-descriptor/-/is-data-descriptor-1.0.1.tgz", + "integrity": "sha512-bc4NlCDiCr28U4aEsQ3Qs2491gVq4V8G7MQyws968ImqjKuYtTJXrl7Vq7jsN7Ly/C3xj5KWFrY7sHNeDkAzXw==", + "license": "MIT", + "dependencies": { + "hasown": "^2.0.0" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/is-data-view": { + "version": "1.0.1", + "resolved": "https://registry.npmmirror.com/is-data-view/-/is-data-view-1.0.1.tgz", + "integrity": "sha512-AHkaJrsUVW6wq6JS8y3JnM/GJF/9cf+k20+iDzlSaJrinEo5+7vRiteOSwBhHRiAyQATN1AmY4hwzxJKPmYf+w==", + "license": "MIT", + "dependencies": { + "is-typed-array": "^1.1.13" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-date-object": { + "version": "1.0.5", + "resolved": "https://registry.npmmirror.com/is-date-object/-/is-date-object-1.0.5.tgz", + "integrity": "sha512-9YQaSxsAiSwcvS33MBk3wTCVnWK+HhF8VZR2jRxehM16QcVOdHqPn4VPHmRK4lSr38n9JriurInLcP90xsYNfQ==", + "license": "MIT", + "dependencies": { + "has-tostringtag": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-descriptor": { + "version": "1.0.3", + "resolved": "https://registry.npmmirror.com/is-descriptor/-/is-descriptor-1.0.3.tgz", + "integrity": "sha512-JCNNGbwWZEVaSPtS45mdtrneRWJFp07LLmykxeFV5F6oBvNF8vHSfJuJgoT472pSfk+Mf8VnlrspaFBHWM8JAw==", + "license": "MIT", + "dependencies": { + "is-accessor-descriptor": "^1.0.1", + "is-data-descriptor": "^1.0.1" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/is-extendable": { + "version": "0.1.1", + "resolved": "https://registry.npmmirror.com/is-extendable/-/is-extendable-0.1.1.tgz", + "integrity": "sha512-5BMULNob1vgFX6EjQw5izWDxrecWK9AM72rugNr0TFldMOi0fj6Jk+zeKIt0xGj4cEfQIJth4w3OKWOJ4f+AFw==", + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-extglob": { + "version": "2.1.1", + "resolved": "https://registry.npmmirror.com/is-extglob/-/is-extglob-2.1.1.tgz", + "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==", + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-finalizationregistry": { + "version": "1.1.0", + "resolved": "https://registry.npmmirror.com/is-finalizationregistry/-/is-finalizationregistry-1.1.0.tgz", + "integrity": "sha512-qfMdqbAQEwBw78ZyReKnlA8ezmPdb9BemzIIip/JkjaZUhitfXDkkr+3QTboW0JrSXT1QWyYShpvnNHGZ4c4yA==", + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.7" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-generator-function": { + "version": "1.0.10", + "resolved": "https://registry.npmmirror.com/is-generator-function/-/is-generator-function-1.0.10.tgz", + "integrity": "sha512-jsEjy9l3yiXEQ+PsXdmBwEPcOxaXWLspKdplFUVI9vq1iZgIekeC0L167qeu86czQaxed3q/Uzuw0swL0irL8A==", + "license": "MIT", + "dependencies": { + "has-tostringtag": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-glob": { + "version": "4.0.3", + "resolved": "https://registry.npmmirror.com/is-glob/-/is-glob-4.0.3.tgz", + "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", + "license": "MIT", + "dependencies": { + "is-extglob": "^2.1.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-map": { + "version": "2.0.3", + "resolved": "https://registry.npmmirror.com/is-map/-/is-map-2.0.3.tgz", + "integrity": "sha512-1Qed0/Hr2m+YqxnM09CjA2d/i6YZNfF6R2oRAOj36eUdS6qIV/huPJNSEpKbupewFs+ZsJlxsjjPbc0/afW6Lw==", + "license": "MIT", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-negative-zero": { + "version": "2.0.3", + "resolved": "https://registry.npmmirror.com/is-negative-zero/-/is-negative-zero-2.0.3.tgz", + "integrity": "sha512-5KoIu2Ngpyek75jXodFvnafB6DJgr3u8uuK0LEZJjrU19DrMD3EVERaR8sjz8CCGgpZvxPl9SuE1GMVPFHx1mw==", + "license": "MIT", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-number": { + "version": "3.0.0", + "resolved": "https://registry.npmmirror.com/is-number/-/is-number-3.0.0.tgz", + "integrity": "sha512-4cboCqIpliH+mAvFNegjZQ4kgKc3ZUhQVr3HvWbSh5q3WH2v82ct+T2Y1hdU5Gdtorx/cLifQjqCbL7bpznLTg==", + "license": "MIT", + "dependencies": { + "kind-of": "^3.0.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-number-object": { + "version": "1.1.0", + "resolved": "https://registry.npmmirror.com/is-number-object/-/is-number-object-1.1.0.tgz", + "integrity": "sha512-KVSZV0Dunv9DTPkhXwcZ3Q+tUc9TsaE1ZwX5J2WMvsSGS6Md8TFPun5uwh0yRdrNerI6vf/tbJxqSx4c1ZI1Lw==", + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.7", + "has-tostringtag": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-number/node_modules/kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmmirror.com/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==", + "license": "MIT", + "dependencies": { + "is-buffer": "^1.1.5" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-plain-obj": { + "version": "1.1.0", + "resolved": "https://registry.npmmirror.com/is-plain-obj/-/is-plain-obj-1.1.0.tgz", + "integrity": "sha512-yvkRyxmFKEOQ4pNXCmJG5AEQNlXJS5LaONXo5/cLdTZdWvsZ1ioJEonLGAosKlMWE8lwUy/bJzMjcw8az73+Fg==", + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-plain-object": { + "version": "2.0.4", + "resolved": "https://registry.npmmirror.com/is-plain-object/-/is-plain-object-2.0.4.tgz", + "integrity": "sha512-h5PpgXkWitc38BBMYawTYMWJHFZJVnBquFE57xFpjB8pJFiF6gZ+bU+WyI/yqXiFR5mdLsgYNaPe8uao6Uv9Og==", + "license": "MIT", + "dependencies": { + "isobject": "^3.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/is-regex": { + "version": "1.2.0", + "resolved": "https://registry.npmmirror.com/is-regex/-/is-regex-1.2.0.tgz", + "integrity": "sha512-B6ohK4ZmoftlUe+uvenXSbPJFo6U37BH7oO1B3nQH8f/7h27N56s85MhUtbFJAziz5dcmuR3i8ovUl35zp8pFA==", + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.7", + "gopd": "^1.1.0", + "has-tostringtag": "^1.0.2", + "hasown": "^2.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-set": { + "version": "2.0.3", + "resolved": "https://registry.npmmirror.com/is-set/-/is-set-2.0.3.tgz", + "integrity": "sha512-iPAjerrse27/ygGLxw+EBR9agv9Y6uLeYVJMu+QNCoouJ1/1ri0mGrcWpfCqFZuzzx3WjtwxG098X+n4OuRkPg==", + "license": "MIT", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-shared-array-buffer": { + "version": "1.0.3", + "resolved": "https://registry.npmmirror.com/is-shared-array-buffer/-/is-shared-array-buffer-1.0.3.tgz", + "integrity": "sha512-nA2hv5XIhLR3uVzDDfCIknerhx8XUKnstuOERPNNIinXG7v9u+ohXF67vxm4TPTEPU6lm61ZkwP3c9PCB97rhg==", + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.7" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-string": { + "version": "1.1.0", + "resolved": "https://registry.npmmirror.com/is-string/-/is-string-1.1.0.tgz", + "integrity": "sha512-PlfzajuF9vSo5wErv3MJAKD/nqf9ngAs1NFQYm16nUYFO2IzxJ2hcm+IOCg+EEopdykNNUhVq5cz35cAUxU8+g==", + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.7", + "has-tostringtag": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-symbol": { + "version": "1.1.0", + "resolved": "https://registry.npmmirror.com/is-symbol/-/is-symbol-1.1.0.tgz", + "integrity": "sha512-qS8KkNNXUZ/I+nX6QT8ZS1/Yx0A444yhzdTKxCzKkNjQ9sHErBxJnJAgh+f5YhusYECEcjo4XcyH87hn6+ks0A==", + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.7", + "has-symbols": "^1.0.3", + "safe-regex-test": "^1.0.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-typed-array": { + "version": "1.1.13", + "resolved": "https://registry.npmmirror.com/is-typed-array/-/is-typed-array-1.1.13.tgz", + "integrity": "sha512-uZ25/bUAlUY5fR4OKT4rZQEBrzQWYV9ZJYGGsUmEJ6thodVJ1HX64ePQ6Z0qPWP+m+Uq6e9UugrE38jeYsDSMw==", + "license": "MIT", + "dependencies": { + "which-typed-array": "^1.1.14" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-weakmap": { + "version": "2.0.2", + "resolved": "https://registry.npmmirror.com/is-weakmap/-/is-weakmap-2.0.2.tgz", + "integrity": "sha512-K5pXYOm9wqY1RgjpL3YTkF39tni1XajUIkawTLUo9EZEVUFga5gSQJF8nNS7ZwJQ02y+1YCNYcMh+HIf1ZqE+w==", + "license": "MIT", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-weakref": { + "version": "1.0.2", + "resolved": "https://registry.npmmirror.com/is-weakref/-/is-weakref-1.0.2.tgz", + "integrity": "sha512-qctsuLZmIQ0+vSSMfoVvyFe2+GSEvnmZ2ezTup1SBse9+twCCeial6EEi3Nc2KFcf6+qz2FBPnjXsk8xhKSaPQ==", + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.2" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-weakset": { + "version": "2.0.3", + "resolved": "https://registry.npmmirror.com/is-weakset/-/is-weakset-2.0.3.tgz", + "integrity": "sha512-LvIm3/KWzS9oRFHugab7d+M/GcBXuXX5xZkzPmN+NxihdQlZUQ4dWuSV1xR/sq6upL1TJEDrfBgRepHFdBtSNQ==", + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.7", + "get-intrinsic": "^1.2.4" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/is-what": { + "version": "3.14.1", + "resolved": "https://registry.npmjs.org/is-what/-/is-what-3.14.1.tgz", + "integrity": "sha512-sNxgpk9793nzSs7bA6JQJGeIuRBQhAaNGG77kzYQgMkrID+lS6SlK07K5LaptscDlSaIgH+GPFzf+d75FVxozA==", + "devOptional": true, + "license": "MIT" + }, + "node_modules/is-windows": { + "version": "1.0.2", + "resolved": "https://registry.npmmirror.com/is-windows/-/is-windows-1.0.2.tgz", + "integrity": "sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA==", + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/isarray": { + "version": "2.0.5", + "resolved": "https://registry.npmmirror.com/isarray/-/isarray-2.0.5.tgz", + "integrity": "sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==", + "license": "MIT" + }, + "node_modules/isobject": { + "version": "3.0.1", + "resolved": "https://registry.npmmirror.com/isobject/-/isobject-3.0.1.tgz", + "integrity": "sha512-WhB9zCku7EGTj/HQQRz5aUQEUeoQZH2bWcltRErOpymJ4boYE6wL9Tbr23krRPSZ+C5zqNSrSw+Cc7sZZ4b7vg==", + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/jju": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/jju/-/jju-1.4.0.tgz", + "integrity": "sha512-8wb9Yw966OSxApiCt0K3yNJL8pnNeIv+OEq2YMidz4FKP6nonSRoOXc80iXY4JaN2FC11B9qsNmDsm+ZOfMROA==", + "dev": true, + "license": "MIT" + }, + "node_modules/js-base64": { + "version": "2.6.4", + "resolved": "https://registry.npmmirror.com/js-base64/-/js-base64-2.6.4.tgz", + "integrity": "sha512-pZe//GGmwJndub7ZghVHz7vjb2LgC1m8B07Au3eYqeqv9emhESByMXxaEgkUkEqJe87oBbSniGYoQNIBklc7IQ==", + "license": "BSD-3-Clause" + }, + "node_modules/json-schema-traverse": { + "version": "0.4.1", + "resolved": "https://registry.npmjs.org/json-schema-traverse/-/json-schema-traverse-0.4.1.tgz", + "integrity": "sha512-xbbCH5dCYU5T8LcEhhuh7HJ88HXuW3qsI3Y0zOZFKfZEHcpWiHU/Jxzk629Brsab/mMiHQti9wMP+845RPe3Vg==", + "dev": true, + "license": "MIT" + }, + "node_modules/json5": { + "version": "1.0.2", + "resolved": "https://registry.npmmirror.com/json5/-/json5-1.0.2.tgz", + "integrity": "sha512-g1MWMLBiz8FKi1e4w0UyVL3w+iJceWAFBAaBnnGKOpNa5f8TLktkbre1+s6oICydWAm+HRUGTmI+//xv2hvXYA==", + "license": "MIT", + "dependencies": { + "minimist": "^1.2.0" + }, + "bin": { + "json5": "lib/cli.js" + } + }, + "node_modules/jsonfile": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-4.0.0.tgz", + "integrity": "sha512-m6F1R3z8jjlf2imQHS2Qez5sjKWQzbuuhuJ/FKYFRZvPE3PuHcSMVZzfsLhGVOkfd20obL5SWEBew5ShlquNxg==", + "dev": true, + "license": "MIT", + "optionalDependencies": { + "graceful-fs": "^4.1.6" + } + }, + "node_modules/katex": { + "version": "0.16.11", + "resolved": "https://registry.npmjs.org/katex/-/katex-0.16.11.tgz", + "integrity": "sha512-RQrI8rlHY92OLf3rho/Ts8i/XvjgguEjOkO1BEXcU3N8BqPpSzBNwV/G0Ukr+P/l3ivvJUE/Fa/CwbS6HesGNQ==", + "funding": [ + "https://opencollective.com/katex", + "https://github.com/sponsors/katex" + ], + "license": "MIT", + "dependencies": { + "commander": "^8.3.0" + }, + "bin": { + "katex": "cli.js" + } + }, + "node_modules/kind-of": { + "version": "5.1.0", + "resolved": "https://registry.npmmirror.com/kind-of/-/kind-of-5.1.0.tgz", + "integrity": "sha512-NGEErnH6F2vUuXDh+OlbcKW7/wOcfdRHaZ7VWtqCztfHri/++YKmP51OdWeGPuqCOba6kk2OTe5d02VmTB80Pw==", + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/kolorist": { + "version": "1.8.0", + "resolved": "https://registry.npmjs.org/kolorist/-/kolorist-1.8.0.tgz", + "integrity": "sha512-Y+60/zizpJ3HRH8DCss+q95yr6145JXZo46OTpFvDZWLfRCE4qChOyk1b26nMaNpfHHgxagk9dXT5OP0Tfe+dQ==", + "dev": true, + "license": "MIT" + }, + "node_modules/less": { + "version": "4.2.1", + "resolved": "https://registry.npmjs.org/less/-/less-4.2.1.tgz", + "integrity": "sha512-CasaJidTIhWmjcqv0Uj5vccMI7pJgfD9lMkKtlnTHAdJdYK/7l8pM9tumLyJ0zhbD4KJLo/YvTj+xznQd5NBhg==", + "devOptional": true, + "license": "Apache-2.0", + "dependencies": { + "copy-anything": "^2.0.1", + "parse-node-version": "^1.0.1", + "tslib": "^2.3.0" + }, + "bin": { + "lessc": "bin/lessc" + }, + "engines": { + "node": ">=6" + }, + "optionalDependencies": { + "errno": "^0.1.1", + "graceful-fs": "^4.1.2", + "image-size": "~0.5.0", + "make-dir": "^2.1.0", + "mime": "^1.4.1", + "needle": "^3.1.0", + "source-map": "~0.6.0" + } + }, + "node_modules/linkify-it": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/linkify-it/-/linkify-it-5.0.0.tgz", + "integrity": "sha512-5aHCbzQRADcdP+ATqnDuhhJ/MRIqDkZX5pyjFHRRysS8vZ5AbqGEoFIb6pYHPZ+L/OC2Lc+xT8uHVVR5CAK/wQ==", + "license": "MIT", + "dependencies": { + "uc.micro": "^2.0.0" + } + }, + "node_modules/linkifyjs": { + "version": "4.1.4", + "resolved": "https://registry.npmjs.org/linkifyjs/-/linkifyjs-4.1.4.tgz", + "integrity": "sha512-0/NxkHNpiJ0k9VrYCkAn9OtU1eu8xEr1tCCpDtSsVRm/SF0xAak2Gzv3QimSfgUgqLBCDlfhMbu73XvaEHUTPQ==", + "license": "MIT" + }, + "node_modules/loader-utils": { + "version": "1.4.2", + "resolved": "https://registry.npmmirror.com/loader-utils/-/loader-utils-1.4.2.tgz", + "integrity": "sha512-I5d00Pd/jwMD2QCduo657+YM/6L3KZu++pmX9VFncxaxvHcru9jx1lBaFft+r4Mt2jK0Yhp41XlRAihzPxHNCg==", + "license": "MIT", + "dependencies": { + "big.js": "^5.2.2", + "emojis-list": "^3.0.0", + "json5": "^1.0.1" + }, + "engines": { + "node": ">=4.0.0" + } + }, + "node_modules/lodash": { + "version": "4.17.21", + "resolved": "https://registry.npmjs.org/lodash/-/lodash-4.17.21.tgz", + "integrity": "sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==", + "dev": true, + "license": "MIT" + }, + "node_modules/lodash.get": { + "version": "4.4.2", + "resolved": "https://registry.npmjs.org/lodash.get/-/lodash.get-4.4.2.tgz", + "integrity": "sha512-z+Uw/vLuy6gQe8cfaFWD7p0wVv8fJl3mbzXh33RS+0oW2wvUqiRXiQ69gLWSLpgB5/6sU+r6BlQR0MBILadqTQ==", + "dev": true, + "license": "MIT" + }, + "node_modules/lodash.isequal": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/lodash.isequal/-/lodash.isequal-4.5.0.tgz", + "integrity": "sha512-pDo3lu8Jhfjqls6GkMgpahsF9kCyayhgykjyLMNFTKWrpVdAQtYyB4muAMWozBB4ig/dtWAmsMxLEI8wuz+DYQ==", + "dev": true, + "license": "MIT" + }, + "node_modules/lowlight": { + "version": "3.2.0", + "resolved": "https://registry.npmjs.org/lowlight/-/lowlight-3.2.0.tgz", + "integrity": "sha512-8Me8xHTCBYEXwcJIPcurnXTeERl3plwb4207v6KPye48kX/oaYDiwXy+OCm3M/pyAPUrkMhalKsbYPm24f/UDg==", + "license": "MIT", + "dependencies": { + "@types/hast": "^3.0.0", + "devlop": "^1.0.0", + "highlight.js": "~11.10.0" + }, + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" + } + }, + "node_modules/lru-cache": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/lru-cache/-/lru-cache-6.0.0.tgz", + "integrity": "sha512-Jo6dJ04CmSjuznwJSS3pUeWmd/H0ffTlkXXgwZi+eq1UCmqQwCh+eLsYOYCwY991i2Fah4h1BEMCx4qThGbsiA==", + "dev": true, + "license": "ISC", + "dependencies": { + "yallist": "^4.0.0" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/magic-string": { + "version": "0.30.14", + "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.30.14.tgz", + "integrity": "sha512-5c99P1WKTed11ZC0HMJOj6CDIue6F8ySu+bJL+85q1zBEIY8IklrJ1eiKC2NDRh3Ct3FcvmJPyQHb9erXMTJNw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@jridgewell/sourcemap-codec": "^1.5.0" + } + }, + "node_modules/make-dir": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/make-dir/-/make-dir-2.1.0.tgz", + "integrity": "sha512-LS9X+dc8KLxXCb8dni79fLIIUA5VyZoyjSMCwTluaXA0o27cCK0bhXkpgw+sTXVpPy/lSO57ilRixqk0vDmtRA==", + "license": "MIT", + "optional": true, + "dependencies": { + "pify": "^4.0.1", + "semver": "^5.6.0" + }, + "engines": { + "node": ">=6" + } + }, + "node_modules/map-cache": { + "version": "0.2.2", + "resolved": "https://registry.npmmirror.com/map-cache/-/map-cache-0.2.2.tgz", + "integrity": "sha512-8y/eV9QQZCiyn1SprXSrCmqJN0yNRATe+PO8ztwqrvrbdRLA3eYJF0yaR0YayLWkMbsQSKWS9N2gPcGEc4UsZg==", + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/map-visit": { + "version": "1.0.0", + "resolved": "https://registry.npmmirror.com/map-visit/-/map-visit-1.0.0.tgz", + "integrity": "sha512-4y7uGv8bd2WdM9vpQsiQNo41Ln1NvhvDRuVt0k2JZQ+ezN2uaQes7lZeZ+QQUHOLQAtDaBJ+7wCbi+ab/KFs+w==", + "license": "MIT", + "dependencies": { + "object-visit": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/markdown-it": { + "version": "14.1.0", + "resolved": "https://registry.npmjs.org/markdown-it/-/markdown-it-14.1.0.tgz", + "integrity": "sha512-a54IwgWPaeBCAAsv13YgmALOF1elABB08FxO9i+r4VFk5Vl4pKokRPeX8u5TCgSsPi6ec1otfLjdOpVcgbpshg==", + "license": "MIT", + "dependencies": { + "argparse": "^2.0.1", + "entities": "^4.4.0", + "linkify-it": "^5.0.0", + "mdurl": "^2.0.0", + "punycode.js": "^2.3.1", + "uc.micro": "^2.1.0" + }, + "bin": { + "markdown-it": "bin/markdown-it.mjs" + } + }, + "node_modules/markdown-it-container": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/markdown-it-container/-/markdown-it-container-4.0.0.tgz", + "integrity": "sha512-HaNccxUH0l7BNGYbFbjmGpf5aLHAMTinqRZQAEQbMr2cdD3z91Q6kIo1oUn1CQndkT03jat6ckrdRYuwwqLlQw==", + "license": "MIT" + }, + "node_modules/mdn-data": { + "version": "2.0.14", + "resolved": "https://registry.npmmirror.com/mdn-data/-/mdn-data-2.0.14.tgz", + "integrity": "sha512-dn6wd0uw5GsdswPFfsgMp5NSB0/aDe6fK94YJV/AJDYXL6HVLWBsxeq7js7Ad+mU2K9LAlwpk6kN2D5mwCPVow==", + "license": "CC0-1.0" + }, + "node_modules/mdurl": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/mdurl/-/mdurl-2.0.0.tgz", + "integrity": "sha512-Lf+9+2r+Tdp5wXDXC4PcIBjTDtq4UKjCPMQhKIuzpJNW0b96kVqSwW0bT7FhRSfmAiFYgP+SCRvdrDozfh0U5w==", + "license": "MIT" + }, + "node_modules/merge-options": { + "version": "1.0.1", + "resolved": "https://registry.npmmirror.com/merge-options/-/merge-options-1.0.1.tgz", + "integrity": "sha512-iuPV41VWKWBIOpBsjoxjDZw8/GbSfZ2mk7N1453bwMrfzdrIk7EzBd+8UVR6rkw67th7xnk9Dytl3J+lHPdxvg==", + "license": "MIT", + "dependencies": { + "is-plain-obj": "^1.1" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/merge2": { + "version": "1.4.1", + "resolved": "https://registry.npmmirror.com/merge2/-/merge2-1.4.1.tgz", + "integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==", + "license": "MIT", + "engines": { + "node": ">= 8" + } + }, + "node_modules/micromatch": { + "version": "3.1.0", + "resolved": "https://registry.npmmirror.com/micromatch/-/micromatch-3.1.0.tgz", + "integrity": "sha512-3StSelAE+hnRvMs8IdVW7Uhk8CVed5tp+kLLGlBP6WiRAXS21GPGu/Nat4WNPXj2Eoc24B02SaeoyozPMfj0/g==", + "license": "MIT", + "dependencies": { + "arr-diff": "^4.0.0", + "array-unique": "^0.3.2", + "braces": "^2.2.2", + "define-property": "^1.0.0", + "extend-shallow": "^2.0.1", + "extglob": "^2.0.2", + "fragment-cache": "^0.2.1", + "kind-of": "^5.0.2", + "nanomatch": "^1.2.1", + "object.pick": "^1.3.0", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/mime": { + "version": "1.6.0", + "resolved": "https://registry.npmjs.org/mime/-/mime-1.6.0.tgz", + "integrity": "sha512-x0Vn8spI+wuJ1O6S7gnbaQg8Pxh4NNHb7KSINmEWKiPE4RKOplvijn+NkmYmmRgP68mc70j2EbeTFRsrswaQeg==", + "license": "MIT", + "optional": true, + "bin": { + "mime": "cli.js" + }, + "engines": { + "node": ">=4" + } + }, + "node_modules/mime-db": { + "version": "1.52.0", + "resolved": "https://registry.npmjs.org/mime-db/-/mime-db-1.52.0.tgz", + "integrity": "sha512-sPU4uV7dYlvtWJxwwxHD0PuihVNiE7TyAbQ5SWxDCB9mUYvOgroQOwYQQOKPJ8CIbE+1ETVlOoK1UC2nU3gYvg==", + "license": "MIT", + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/mime-types": { + "version": "2.1.35", + "resolved": "https://registry.npmjs.org/mime-types/-/mime-types-2.1.35.tgz", + "integrity": "sha512-ZDY+bPm5zTTF+YpCrAU9nK0UgICYPT0QtT1NZWFv4s++TNkcgVaT0g6+4R2uI4MjQjzysHB1zxuWL50hzaeXiw==", + "license": "MIT", + "dependencies": { + "mime-db": "1.52.0" + }, + "engines": { + "node": ">= 0.6" + } + }, + "node_modules/minimatch": { + "version": "3.0.8", + "resolved": "https://registry.npmjs.org/minimatch/-/minimatch-3.0.8.tgz", + "integrity": "sha512-6FsRAQsxQ61mw+qP1ZzbL9Bc78x2p5OqNgNpnoAFLTrX8n5Kxph0CsnhmKKNXTWjXqU5L0pGPR7hYk+XWZr60Q==", + "dev": true, + "license": "ISC", + "dependencies": { + "brace-expansion": "^1.1.7" + }, + "engines": { + "node": "*" + } + }, + "node_modules/minimist": { + "version": "1.2.8", + "resolved": "https://registry.npmmirror.com/minimist/-/minimist-1.2.8.tgz", + "integrity": "sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==", + "license": "MIT", + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/mixin-deep": { + "version": "1.3.2", + "resolved": "https://registry.npmmirror.com/mixin-deep/-/mixin-deep-1.3.2.tgz", + "integrity": "sha512-WRoDn//mXBiJ1H40rqa3vH0toePwSsGb45iInWlTySa+Uu4k3tYUSxa2v1KqAiLtvlrSzaExqS1gtk96A9zvEA==", + "license": "MIT", + "dependencies": { + "for-in": "^1.0.2", + "is-extendable": "^1.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/mixin-deep/node_modules/is-extendable": { + "version": "1.0.1", + "resolved": "https://registry.npmmirror.com/is-extendable/-/is-extendable-1.0.1.tgz", + "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", + "license": "MIT", + "dependencies": { + "is-plain-object": "^2.0.4" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/monaco-editor": { + "version": "0.52.2", + "resolved": "https://mirrors.cloud.tencent.com/npm/monaco-editor/-/monaco-editor-0.52.2.tgz", + "integrity": "sha512-GEQWEZmfkOGLdd3XK8ryrfWz3AIP8YymVXiPHEdewrUq7mh0qrKrfHLNCXcbB6sTnMLnOZ3ztSiKcciFUkIJwQ==", + "license": "MIT" + }, + "node_modules/ms": { + "version": "2.1.3", + "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.3.tgz", + "integrity": "sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==", + "license": "MIT" + }, + "node_modules/muggle-string": { + "version": "0.3.1", + "resolved": "https://registry.npmjs.org/muggle-string/-/muggle-string-0.3.1.tgz", + "integrity": "sha512-ckmWDJjphvd/FvZawgygcUeQCxzvohjFO5RxTjj4eq8kw359gFF3E1brjfI+viLMxss5JrHTDRHZvu2/tuy0Qg==", + "dev": true, + "license": "MIT" + }, + "node_modules/nanoid": { + "version": "3.3.8", + "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.8.tgz", + "integrity": "sha512-WNLf5Sd8oZxOm+TzppcYk8gVOgP+l58xNy58D0nbUnOxOWRWvlcCV4kUF7ltmI6PsrLl/BgKEyS4mqsGChFN0w==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "license": "MIT", + "bin": { + "nanoid": "bin/nanoid.cjs" + }, + "engines": { + "node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1" + } + }, + "node_modules/nanomatch": { + "version": "1.2.13", + "resolved": "https://registry.npmmirror.com/nanomatch/-/nanomatch-1.2.13.tgz", + "integrity": "sha512-fpoe2T0RbHwBTBUOftAfBPaDEi06ufaUai0mE6Yn1kacc3SnTErfb/h+X94VXzI64rKFHYImXSvdwGGCmwOqCA==", + "license": "MIT", + "dependencies": { + "arr-diff": "^4.0.0", + "array-unique": "^0.3.2", + "define-property": "^2.0.2", + "extend-shallow": "^3.0.2", + "fragment-cache": "^0.2.1", + "is-windows": "^1.0.2", + "kind-of": "^6.0.2", + "object.pick": "^1.3.0", + "regex-not": "^1.0.0", + "snapdragon": "^0.8.1", + "to-regex": "^3.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/nanomatch/node_modules/define-property": { + "version": "2.0.2", + "resolved": "https://registry.npmmirror.com/define-property/-/define-property-2.0.2.tgz", + "integrity": "sha512-jwK2UV4cnPpbcG7+VRARKTZPUWowwXA8bzH5NP6ud0oeAxyYPuGZUAC7hMugpCdz4BeSZl2Dl9k66CHJ/46ZYQ==", + "license": "MIT", + "dependencies": { + "is-descriptor": "^1.0.2", + "isobject": "^3.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/nanomatch/node_modules/extend-shallow": { + "version": "3.0.2", + "resolved": "https://registry.npmmirror.com/extend-shallow/-/extend-shallow-3.0.2.tgz", + "integrity": "sha512-BwY5b5Ql4+qZoefgMj2NUmx+tehVTH/Kf4k1ZEtOHNFcm2wSxMRo992l6X3TIgni2eZVTZ85xMOjF31fwZAj6Q==", + "license": "MIT", + "dependencies": { + "assign-symbols": "^1.0.0", + "is-extendable": "^1.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/nanomatch/node_modules/is-extendable": { + "version": "1.0.1", + "resolved": "https://registry.npmmirror.com/is-extendable/-/is-extendable-1.0.1.tgz", + "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", + "license": "MIT", + "dependencies": { + "is-plain-object": "^2.0.4" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/nanomatch/node_modules/kind-of": { + "version": "6.0.3", + "resolved": "https://registry.npmmirror.com/kind-of/-/kind-of-6.0.3.tgz", + "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==", + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/needle": { + "version": "3.3.1", + "resolved": "https://registry.npmjs.org/needle/-/needle-3.3.1.tgz", + "integrity": "sha512-6k0YULvhpw+RoLNiQCRKOl09Rv1dPLr8hHnVjHqdolKwDrdNyk+Hmrthi4lIGPPz3r39dLx0hsF5s40sZ3Us4Q==", + "license": "MIT", + "optional": true, + "dependencies": { + "iconv-lite": "^0.6.3", + "sax": "^1.2.4" + }, + "bin": { + "needle": "bin/needle" + }, + "engines": { + "node": ">= 4.4.x" + } + }, + "node_modules/node-domexception": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/node-domexception/-/node-domexception-1.0.0.tgz", + "integrity": "sha512-/jKZoMpw0F8GRwl4/eLROPA3cfcXtLApP0QzLmUT/HuPCZWyB7IY9ZrMeKw2O/nFIqPQB3PVM9aYm0F312AXDQ==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/jimmywarting" + }, + { + "type": "github", + "url": "https://paypal.me/jimmywarting" + } + ], + "license": "MIT", + "engines": { + "node": ">=10.5.0" + } + }, + "node_modules/node-fetch": { + "version": "2.7.0", + "resolved": "https://registry.npmjs.org/node-fetch/-/node-fetch-2.7.0.tgz", + "integrity": "sha512-c4FRfUm/dbcWZ7U+1Wq0AwCyFL+3nt2bEw05wfxSz+DWpWsitgmSgYmy2dQdWyKC1694ELPqMs/YzUSNozLt8A==", + "license": "MIT", + "dependencies": { + "whatwg-url": "^5.0.0" + }, + "engines": { + "node": "4.x || >=6.0.0" + }, + "peerDependencies": { + "encoding": "^0.1.0" + }, + "peerDependenciesMeta": { + "encoding": { + "optional": true + } + } + }, + "node_modules/nth-check": { + "version": "2.1.1", + "resolved": "https://registry.npmmirror.com/nth-check/-/nth-check-2.1.1.tgz", + "integrity": "sha512-lqjrjmaOoAnWfMmBPL+XNnynZh2+swxiX3WUE0s4yEHI6m+AwrK2UZOimIRl3X/4QctVqS8AiZjFqyOGrMXb/w==", + "license": "BSD-2-Clause", + "dependencies": { + "boolbase": "^1.0.0" + }, + "funding": { + "url": "https://github.com/fb55/nth-check?sponsor=1" + } + }, + "node_modules/object-assign": { + "version": "4.1.1", + "resolved": "https://registry.npmmirror.com/object-assign/-/object-assign-4.1.1.tgz", + "integrity": "sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==", + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/object-copy": { + "version": "0.1.0", + "resolved": "https://registry.npmmirror.com/object-copy/-/object-copy-0.1.0.tgz", + "integrity": "sha512-79LYn6VAb63zgtmAteVOWo9Vdj71ZVBy3Pbse+VqxDpEP83XuujMrGqHIwAXJ5I/aM0zU7dIyIAhifVTPrNItQ==", + "license": "MIT", + "dependencies": { + "copy-descriptor": "^0.1.0", + "define-property": "^0.2.5", + "kind-of": "^3.0.3" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/object-copy/node_modules/define-property": { + "version": "0.2.5", + "resolved": "https://registry.npmmirror.com/define-property/-/define-property-0.2.5.tgz", + "integrity": "sha512-Rr7ADjQZenceVOAKop6ALkkRAmH1A4Gx9hV/7ZujPUN2rkATqFO0JZLZInbAjpZYoJ1gUx8MRMQVkYemcbMSTA==", + "license": "MIT", + "dependencies": { + "is-descriptor": "^0.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/object-copy/node_modules/is-descriptor": { + "version": "0.1.7", + "resolved": "https://registry.npmmirror.com/is-descriptor/-/is-descriptor-0.1.7.tgz", + "integrity": "sha512-C3grZTvObeN1xud4cRWl366OMXZTj0+HGyk4hvfpx4ZHt1Pb60ANSXqCK7pdOTeUQpRzECBSTphqvD7U+l22Eg==", + "license": "MIT", + "dependencies": { + "is-accessor-descriptor": "^1.0.1", + "is-data-descriptor": "^1.0.1" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/object-copy/node_modules/kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmmirror.com/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==", + "license": "MIT", + "dependencies": { + "is-buffer": "^1.1.5" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/object-inspect": { + "version": "1.13.3", + "resolved": "https://registry.npmmirror.com/object-inspect/-/object-inspect-1.13.3.tgz", + "integrity": "sha512-kDCGIbxkDSXE3euJZZXzc6to7fCrKHNI/hSRQnRuQ+BWjFNzZwiFF8fj/6o2t2G9/jTj8PSIYTfCLelLZEeRpA==", + "license": "MIT", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/object-keys": { + "version": "1.1.1", + "resolved": "https://registry.npmmirror.com/object-keys/-/object-keys-1.1.1.tgz", + "integrity": "sha512-NuAESUOUMrlIXOfHKzD6bpPu3tYt3xvjNdRIQ+FeT0lNb4K8WR70CaDxhuNguS2XG+GjkyMwOzsN5ZktImfhLA==", + "license": "MIT", + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/object-visit": { + "version": "1.0.1", + "resolved": "https://registry.npmmirror.com/object-visit/-/object-visit-1.0.1.tgz", + "integrity": "sha512-GBaMwwAVK9qbQN3Scdo0OyvgPW7l3lnaVMj84uTOZlswkX0KpF6fyDBJhtTthf7pymztoN36/KEr1DyhF96zEA==", + "license": "MIT", + "dependencies": { + "isobject": "^3.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/object.assign": { + "version": "4.1.5", + "resolved": "https://registry.npmmirror.com/object.assign/-/object.assign-4.1.5.tgz", + "integrity": "sha512-byy+U7gp+FVwmyzKPYhW2h5l3crpmGsxl7X2s8y43IgxvG4g3QZ6CffDtsNQy1WsmZpQbO+ybo0AlW7TY6DcBQ==", + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.5", + "define-properties": "^1.2.1", + "has-symbols": "^1.0.3", + "object-keys": "^1.1.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/object.pick": { + "version": "1.3.0", + "resolved": "https://registry.npmmirror.com/object.pick/-/object.pick-1.3.0.tgz", + "integrity": "sha512-tqa/UMy/CCoYmj+H5qc07qvSL9dqcs/WZENZ1JbtWBlATP+iVOe778gE6MSijnyCnORzDuX6hU+LA4SZ09YjFQ==", + "license": "MIT", + "dependencies": { + "isobject": "^3.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/openai": { + "version": "4.77.0", + "resolved": "https://registry.npmjs.org/openai/-/openai-4.77.0.tgz", + "integrity": "sha512-WWacavtns/7pCUkOWvQIjyOfcdr9X+9n9Vvb0zFeKVDAqwCMDHB+iSr24SVaBAhplvSG6JrRXFpcNM9gWhOGIw==", + "license": "Apache-2.0", + "dependencies": { + "@types/node": "^18.11.18", + "@types/node-fetch": "^2.6.4", + "abort-controller": "^3.0.0", + "agentkeepalive": "^4.2.1", + "form-data-encoder": "1.7.2", + "formdata-node": "^4.3.2", + "node-fetch": "^2.6.7" + }, + "bin": { + "openai": "bin/cli" + }, + "peerDependencies": { + "zod": "^3.23.8" + }, + "peerDependenciesMeta": { + "zod": { + "optional": true + } + } + }, + "node_modules/openai/node_modules/@types/node": { + "version": "18.19.68", + "resolved": "https://registry.npmjs.org/@types/node/-/node-18.19.68.tgz", + "integrity": "sha512-QGtpFH1vB99ZmTa63K4/FU8twThj4fuVSBkGddTp7uIL/cuoLWIUSL2RcOaigBhfR+hg5pgGkBnkoOxrTVBMKw==", + "license": "MIT", + "dependencies": { + "undici-types": "~5.26.4" + } + }, + "node_modules/openai/node_modules/undici-types": { + "version": "5.26.5", + "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-5.26.5.tgz", + "integrity": "sha512-JlCMO+ehdEIKqlFxk6IfVoAUVmgz7cU7zD/h9XZ0qzeosSHmUJVOzSQvvYSYWXkFXC+IfLKSIffhv0sVZup6pA==", + "license": "MIT" + }, + "node_modules/orderedmap": { + "version": "2.1.1", + "resolved": "https://registry.npmjs.org/orderedmap/-/orderedmap-2.1.1.tgz", + "integrity": "sha512-TvAWxi0nDe1j/rtMcWcIj94+Ffe6n7zhow33h40SKxmsmozs6dz/e+EajymfoFcHd7sxNn8yHM8839uixMOV6g==", + "license": "MIT" + }, + "node_modules/parse-node-version": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/parse-node-version/-/parse-node-version-1.0.1.tgz", + "integrity": "sha512-3YHlOa/JgH6Mnpr05jP9eDG254US9ek25LyIxZlDItp2iJtwyaXQb57lBYLdT3MowkUFYEV2XXNAYIPlESvJlA==", + "devOptional": true, + "license": "MIT", + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/pascalcase": { + "version": "0.1.1", + "resolved": "https://registry.npmmirror.com/pascalcase/-/pascalcase-0.1.1.tgz", + "integrity": "sha512-XHXfu/yOQRy9vYOtUDVMN60OEJjW013GoObG1o+xwQTpB9eYJX/BjXMsdW13ZDPruFhYYn0AG22w0xgQMwl3Nw==", + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/path-browserify": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/path-browserify/-/path-browserify-1.0.1.tgz", + "integrity": "sha512-b7uo2UCUOYZcnF/3ID0lulOJi/bafxa1xPe7ZPsammBSpjSWQkjNxlt635YGS2MiR9GjvuXCtz2emr3jbsz98g==", + "dev": true, + "license": "MIT" + }, + "node_modules/path-parse": { + "version": "1.0.7", + "resolved": "https://registry.npmjs.org/path-parse/-/path-parse-1.0.7.tgz", + "integrity": "sha512-LDJzPVEEEPR+y48z93A0Ed0yXb8pAByGWo/k5YYdYgpY2/2EsOsksJrq7lOHxryrVOn1ejG6oAp8ahvOIQD8sw==", + "dev": true, + "license": "MIT" + }, + "node_modules/pathe": { + "version": "0.2.0", + "resolved": "https://registry.npmmirror.com/pathe/-/pathe-0.2.0.tgz", + "integrity": "sha512-sTitTPYnn23esFR3RlqYBWn4c45WGeLcsKzQiUpXJAyfcWkolvlYpV8FLo7JishK946oQwMFUCHXQ9AjGPKExw==", + "license": "MIT" + }, + "node_modules/picocolors": { + "version": "1.1.1", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.1.1.tgz", + "integrity": "sha512-xceH2snhtb5M9liqDsmEw56le376mTZkEX/jEb/RxNFyegNul7eNslCXP9FDj/Lcu0X8KEyMceP2ntpaHrDEVA==", + "license": "ISC" + }, + "node_modules/picomatch": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-4.0.2.tgz", + "integrity": "sha512-M7BAV6Rlcy5u+m6oPhAPFgJTzAioX/6B0DxyvDlo9l8+T3nLKbrczg2WLUyzd45L8RqfUMyGPzekbMvX2Ldkwg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/jonschlinkert" + } + }, + "node_modules/pify": { + "version": "4.0.1", + "resolved": "https://registry.npmjs.org/pify/-/pify-4.0.1.tgz", + "integrity": "sha512-uB80kBFb/tfd68bVleG9T5GGsGPjJrLAUpR5PZIrhBnIaRTQRjqdJSsIKkOP6OAIFbj7GOrcudc5pNjZ+geV2g==", + "license": "MIT", + "optional": true, + "engines": { + "node": ">=6" + } + }, + "node_modules/posix-character-classes": { + "version": "0.1.1", + "resolved": "https://registry.npmmirror.com/posix-character-classes/-/posix-character-classes-0.1.1.tgz", + "integrity": "sha512-xTgYBc3fuo7Yt7JbiuFxSYGToMoz8fLoE6TC9Wx1P/u+LfeThMOAqmuyECnlBaaJb+u1m9hHiXUEtwW4OzfUJg==", + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/possible-typed-array-names": { + "version": "1.0.0", + "resolved": "https://registry.npmmirror.com/possible-typed-array-names/-/possible-typed-array-names-1.0.0.tgz", + "integrity": "sha512-d7Uw+eZoloe0EHDIYoe+bQ5WXnGMOpmiZFTuMWCwpjzzkL2nTjcKiAk4hh8TjnGye2TwWOk3UXucZ+3rbmBa8Q==", + "license": "MIT", + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/postcss": { + "version": "8.4.49", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.49.tgz", + "integrity": "sha512-OCVPnIObs4N29kxTjzLfUryOkvZEq+pf8jTF0lg8E7uETuWHA+v7j3c/xJmiqpX450191LlmZfUKkXxkTry7nA==", + "funding": [ + { + "type": "opencollective", + "url": "https://opencollective.com/postcss/" + }, + { + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/postcss" + }, + { + "type": "github", + "url": "https://github.com/sponsors/ai" + } + ], + "license": "MIT", + "dependencies": { + "nanoid": "^3.3.7", + "picocolors": "^1.1.1", + "source-map-js": "^1.2.1" + }, + "engines": { + "node": "^10 || ^12 || >=14" + } + }, + "node_modules/postcss-prefix-selector": { + "version": "1.16.1", + "resolved": "https://registry.npmmirror.com/postcss-prefix-selector/-/postcss-prefix-selector-1.16.1.tgz", + "integrity": "sha512-Umxu+FvKMwlY6TyDzGFoSUnzW+NOfMBLyC1tAkIjgX+Z/qGspJeRjVC903D7mx7TuBpJlwti2ibXtWuA7fKMeQ==", + "license": "MIT", + "peerDependencies": { + "postcss": ">4 <9" + } + }, + "node_modules/posthtml": { + "version": "0.9.2", + "resolved": "https://registry.npmmirror.com/posthtml/-/posthtml-0.9.2.tgz", + "integrity": "sha512-spBB5sgC4cv2YcW03f/IAUN1pgDJWNWD8FzkyY4mArLUMJW+KlQhlmUdKAHQuPfb00Jl5xIfImeOsf6YL8QK7Q==", + "license": "MIT", + "dependencies": { + "posthtml-parser": "^0.2.0", + "posthtml-render": "^1.0.5" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/posthtml-parser": { + "version": "0.2.1", + "resolved": "https://registry.npmmirror.com/posthtml-parser/-/posthtml-parser-0.2.1.tgz", + "integrity": "sha512-nPC53YMqJnc/+1x4fRYFfm81KV2V+G9NZY+hTohpYg64Ay7NemWWcV4UWuy/SgMupqQ3kJ88M/iRfZmSnxT+pw==", + "license": "MIT", + "dependencies": { + "htmlparser2": "^3.8.3", + "isobject": "^2.1.0" + } + }, + "node_modules/posthtml-parser/node_modules/isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmmirror.com/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==", + "license": "MIT" + }, + "node_modules/posthtml-parser/node_modules/isobject": { + "version": "2.1.0", + "resolved": "https://registry.npmmirror.com/isobject/-/isobject-2.1.0.tgz", + "integrity": "sha512-+OUdGJlgjOBZDfxnDjYYG6zp487z0JGNQq3cYQYg5f5hKR+syHMsaztzGeml/4kGG55CSpKSpWTY+jYGgsHLgA==", + "license": "MIT", + "dependencies": { + "isarray": "1.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/posthtml-rename-id": { + "version": "1.0.12", + "resolved": "https://registry.npmmirror.com/posthtml-rename-id/-/posthtml-rename-id-1.0.12.tgz", + "integrity": "sha512-UKXf9OF/no8WZo9edRzvuMenb6AD5hDLzIepJW+a4oJT+T/Lx7vfMYWT4aWlGNQh0WMhnUx1ipN9OkZ9q+ddEw==", + "license": "MIT", + "dependencies": { + "escape-string-regexp": "1.0.5" + } + }, + "node_modules/posthtml-rename-id/node_modules/escape-string-regexp": { + "version": "1.0.5", + "resolved": "https://registry.npmmirror.com/escape-string-regexp/-/escape-string-regexp-1.0.5.tgz", + "integrity": "sha512-vbRorB5FUQWvla16U8R/qgaFIya2qGzwDrNmCZuYKrbdSUMG6I1ZCGQRefkRVhuOkIGVne7BQ35DSfo1qvJqFg==", + "license": "MIT", + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/posthtml-render": { + "version": "1.4.0", + "resolved": "https://registry.npmmirror.com/posthtml-render/-/posthtml-render-1.4.0.tgz", + "integrity": "sha512-W1779iVHGfq0Fvh2PROhCe2QhB8mEErgqzo1wpIt36tCgChafP+hbXIhLDOM8ePJrZcFs0vkNEtdibEWVqChqw==", + "license": "MIT", + "engines": { + "node": ">=10" + } + }, + "node_modules/posthtml-svg-mode": { + "version": "1.0.3", + "resolved": "https://registry.npmmirror.com/posthtml-svg-mode/-/posthtml-svg-mode-1.0.3.tgz", + "integrity": "sha512-hEqw9NHZ9YgJ2/0G7CECOeuLQKZi8HjWLkBaSVtOWjygQ9ZD8P7tqeowYs7WrFdKsWEKG7o+IlsPY8jrr0CJpQ==", + "license": "MIT", + "dependencies": { + "merge-options": "1.0.1", + "posthtml": "^0.9.2", + "posthtml-parser": "^0.2.1", + "posthtml-render": "^1.0.6" + } + }, + "node_modules/prosemirror-changeset": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/prosemirror-changeset/-/prosemirror-changeset-2.2.1.tgz", + "integrity": "sha512-J7msc6wbxB4ekDFj+n9gTW/jav/p53kdlivvuppHsrZXCaQdVgRghoZbSS3kwrRyAstRVQ4/+u5k7YfLgkkQvQ==", + "license": "MIT", + "dependencies": { + "prosemirror-transform": "^1.0.0" + } + }, + "node_modules/prosemirror-collab": { + "version": "1.3.1", + "resolved": "https://registry.npmjs.org/prosemirror-collab/-/prosemirror-collab-1.3.1.tgz", + "integrity": "sha512-4SnynYR9TTYaQVXd/ieUvsVV4PDMBzrq2xPUWutHivDuOshZXqQ5rGbZM84HEaXKbLdItse7weMGOUdDVcLKEQ==", + "license": "MIT", + "dependencies": { + "prosemirror-state": "^1.0.0" + } + }, + "node_modules/prosemirror-commands": { + "version": "1.6.2", + "resolved": "https://registry.npmjs.org/prosemirror-commands/-/prosemirror-commands-1.6.2.tgz", + "integrity": "sha512-0nDHH++qcf/BuPLYvmqZTUUsPJUCPBUXt0J1ErTcDIS369CTp773itzLGIgIXG4LJXOlwYCr44+Mh4ii6MP1QA==", + "license": "MIT", + "dependencies": { + "prosemirror-model": "^1.0.0", + "prosemirror-state": "^1.0.0", + "prosemirror-transform": "^1.10.2" + } + }, + "node_modules/prosemirror-dropcursor": { + "version": "1.8.1", + "resolved": "https://registry.npmjs.org/prosemirror-dropcursor/-/prosemirror-dropcursor-1.8.1.tgz", + "integrity": "sha512-M30WJdJZLyXHi3N8vxN6Zh5O8ZBbQCz0gURTfPmTIBNQ5pxrdU7A58QkNqfa98YEjSAL1HUyyU34f6Pm5xBSGw==", + "license": "MIT", + "dependencies": { + "prosemirror-state": "^1.0.0", + "prosemirror-transform": "^1.1.0", + "prosemirror-view": "^1.1.0" + } + }, + "node_modules/prosemirror-gapcursor": { + "version": "1.3.2", + "resolved": "https://registry.npmjs.org/prosemirror-gapcursor/-/prosemirror-gapcursor-1.3.2.tgz", + "integrity": "sha512-wtjswVBd2vaQRrnYZaBCbyDqr232Ed4p2QPtRIUK5FuqHYKGWkEwl08oQM4Tw7DOR0FsasARV5uJFvMZWxdNxQ==", + "license": "MIT", + "dependencies": { + "prosemirror-keymap": "^1.0.0", + "prosemirror-model": "^1.0.0", + "prosemirror-state": "^1.0.0", + "prosemirror-view": "^1.0.0" + } + }, + "node_modules/prosemirror-history": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/prosemirror-history/-/prosemirror-history-1.4.1.tgz", + "integrity": "sha512-2JZD8z2JviJrboD9cPuX/Sv/1ChFng+xh2tChQ2X4bB2HeK+rra/bmJ3xGntCcjhOqIzSDG6Id7e8RJ9QPXLEQ==", + "license": "MIT", + "dependencies": { + "prosemirror-state": "^1.2.2", + "prosemirror-transform": "^1.0.0", + "prosemirror-view": "^1.31.0", + "rope-sequence": "^1.3.0" + } + }, + "node_modules/prosemirror-inputrules": { + "version": "1.4.0", + "resolved": "https://registry.npmjs.org/prosemirror-inputrules/-/prosemirror-inputrules-1.4.0.tgz", + "integrity": "sha512-6ygpPRuTJ2lcOXs9JkefieMst63wVJBgHZGl5QOytN7oSZs3Co/BYbc3Yx9zm9H37Bxw8kVzCnDsihsVsL4yEg==", + "license": "MIT", + "dependencies": { + "prosemirror-state": "^1.0.0", + "prosemirror-transform": "^1.0.0" + } + }, + "node_modules/prosemirror-keymap": { + "version": "1.2.2", + "resolved": "https://registry.npmjs.org/prosemirror-keymap/-/prosemirror-keymap-1.2.2.tgz", + "integrity": "sha512-EAlXoksqC6Vbocqc0GtzCruZEzYgrn+iiGnNjsJsH4mrnIGex4qbLdWWNza3AW5W36ZRrlBID0eM6bdKH4OStQ==", + "license": "MIT", + "dependencies": { + "prosemirror-state": "^1.0.0", + "w3c-keyname": "^2.2.0" + } + }, + "node_modules/prosemirror-markdown": { + "version": "1.13.1", + "resolved": "https://registry.npmjs.org/prosemirror-markdown/-/prosemirror-markdown-1.13.1.tgz", + "integrity": "sha512-Sl+oMfMtAjWtlcZoj/5L/Q39MpEnVZ840Xo330WJWUvgyhNmLBLN7MsHn07s53nG/KImevWHSE6fEj4q/GihHw==", + "license": "MIT", + "dependencies": { + "@types/markdown-it": "^14.0.0", + "markdown-it": "^14.0.0", + "prosemirror-model": "^1.20.0" + } + }, + "node_modules/prosemirror-menu": { + "version": "1.2.4", + "resolved": "https://registry.npmjs.org/prosemirror-menu/-/prosemirror-menu-1.2.4.tgz", + "integrity": "sha512-S/bXlc0ODQup6aiBbWVsX/eM+xJgCTAfMq/nLqaO5ID/am4wS0tTCIkzwytmao7ypEtjj39i7YbJjAgO20mIqA==", + "license": "MIT", + "dependencies": { + "crelt": "^1.0.0", + "prosemirror-commands": "^1.0.0", + "prosemirror-history": "^1.0.0", + "prosemirror-state": "^1.0.0" + } + }, + "node_modules/prosemirror-model": { + "version": "1.24.0", + "resolved": "https://registry.npmjs.org/prosemirror-model/-/prosemirror-model-1.24.0.tgz", + "integrity": "sha512-Ft7epNnycoQSM+2ObF35SBbBX+5WY39v8amVlrtlAcpglhlHs2tCTnWl7RX5tbp/PsMKcRcWV9cXPuoBWq0AIQ==", + "license": "MIT", + "dependencies": { + "orderedmap": "^2.0.0" + } + }, + "node_modules/prosemirror-schema-basic": { + "version": "1.2.3", + "resolved": "https://registry.npmjs.org/prosemirror-schema-basic/-/prosemirror-schema-basic-1.2.3.tgz", + "integrity": "sha512-h+H0OQwZVqMon1PNn0AG9cTfx513zgIG2DY00eJ00Yvgb3UD+GQ/VlWW5rcaxacpCGT1Yx8nuhwXk4+QbXUfJA==", + "license": "MIT", + "dependencies": { + "prosemirror-model": "^1.19.0" + } + }, + "node_modules/prosemirror-schema-list": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/prosemirror-schema-list/-/prosemirror-schema-list-1.4.1.tgz", + "integrity": "sha512-jbDyaP/6AFfDfu70VzySsD75Om2t3sXTOdl5+31Wlxlg62td1haUpty/ybajSfJ1pkGadlOfwQq9kgW5IMo1Rg==", + "license": "MIT", + "dependencies": { + "prosemirror-model": "^1.0.0", + "prosemirror-state": "^1.0.0", + "prosemirror-transform": "^1.7.3" + } + }, + "node_modules/prosemirror-state": { + "version": "1.4.3", + "resolved": "https://registry.npmjs.org/prosemirror-state/-/prosemirror-state-1.4.3.tgz", + "integrity": "sha512-goFKORVbvPuAQaXhpbemJFRKJ2aixr+AZMGiquiqKxaucC6hlpHNZHWgz5R7dS4roHiwq9vDctE//CZ++o0W1Q==", + "license": "MIT", + "dependencies": { + "prosemirror-model": "^1.0.0", + "prosemirror-transform": "^1.0.0", + "prosemirror-view": "^1.27.0" + } + }, + "node_modules/prosemirror-tables": { + "version": "1.6.1", + "resolved": "https://registry.npmjs.org/prosemirror-tables/-/prosemirror-tables-1.6.1.tgz", + "integrity": "sha512-p8WRJNA96jaNQjhJolmbxTzd6M4huRE5xQ8OxjvMhQUP0Nzpo4zz6TztEiwk6aoqGBhz9lxRWR1yRZLlpQN98w==", + "license": "MIT", + "dependencies": { + "prosemirror-keymap": "^1.1.2", + "prosemirror-model": "^1.8.1", + "prosemirror-state": "^1.3.1", + "prosemirror-transform": "^1.2.1", + "prosemirror-view": "^1.13.3" + } + }, + "node_modules/prosemirror-trailing-node": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/prosemirror-trailing-node/-/prosemirror-trailing-node-3.0.0.tgz", + "integrity": "sha512-xiun5/3q0w5eRnGYfNlW1uU9W6x5MoFKWwq/0TIRgt09lv7Hcser2QYV8t4muXbEr+Fwo0geYn79Xs4GKywrRQ==", + "license": "MIT", + "dependencies": { + "@remirror/core-constants": "3.0.0", + "escape-string-regexp": "^4.0.0" + }, + "peerDependencies": { + "prosemirror-model": "^1.22.1", + "prosemirror-state": "^1.4.2", + "prosemirror-view": "^1.33.8" + } + }, + "node_modules/prosemirror-transform": { + "version": "1.10.2", + "resolved": "https://registry.npmjs.org/prosemirror-transform/-/prosemirror-transform-1.10.2.tgz", + "integrity": "sha512-2iUq0wv2iRoJO/zj5mv8uDUriOHWzXRnOTVgCzSXnktS/2iQRa3UUQwVlkBlYZFtygw6Nh1+X4mGqoYBINn5KQ==", + "license": "MIT", + "dependencies": { + "prosemirror-model": "^1.21.0" + } + }, + "node_modules/prosemirror-view": { + "version": "1.37.0", + "resolved": "https://registry.npmjs.org/prosemirror-view/-/prosemirror-view-1.37.0.tgz", + "integrity": "sha512-z2nkKI1sJzyi7T47Ji/ewBPuIma1RNvQCCYVdV+MqWBV7o4Sa1n94UJCJJ1aQRF/xRkFfyqLGlGFWitIcCOtbg==", + "license": "MIT", + "dependencies": { + "prosemirror-model": "^1.20.0", + "prosemirror-state": "^1.0.0", + "prosemirror-transform": "^1.1.0" + } + }, + "node_modules/prr": { + "version": "1.0.1", + "resolved": "https://registry.npmjs.org/prr/-/prr-1.0.1.tgz", + "integrity": "sha512-yPw4Sng1gWghHQWj0B3ZggWUm4qVbPwPFcRG8KyxiU7J2OHFSoEHKS+EZ3fv5l1t9CyCiop6l/ZYeWbrgoQejw==", + "license": "MIT", + "optional": true + }, + "node_modules/punycode": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/punycode/-/punycode-2.3.1.tgz", + "integrity": "sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/punycode.js": { + "version": "2.3.1", + "resolved": "https://registry.npmjs.org/punycode.js/-/punycode.js-2.3.1.tgz", + "integrity": "sha512-uxFIHU0YlHYhDQtV4R9J6a52SLx28BCjT+4ieh7IGbgwVJWO+km431c4yRlREUAsAmt/uMjQUyQHNEPf0M39CA==", + "license": "MIT", + "engines": { + "node": ">=6" + } + }, + "node_modules/query-string": { + "version": "4.3.4", + "resolved": "https://registry.npmmirror.com/query-string/-/query-string-4.3.4.tgz", + "integrity": "sha512-O2XLNDBIg1DnTOa+2XrIwSiXEV8h2KImXUnjhhn2+UsvZ+Es2uyd5CCRTNQlDGbzUQOW3aYCBx9rVA6dzsiY7Q==", + "license": "MIT", + "dependencies": { + "object-assign": "^4.1.0", + "strict-uri-encode": "^1.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/queue-microtask": { + "version": "1.2.3", + "resolved": "https://registry.npmmirror.com/queue-microtask/-/queue-microtask-1.2.3.tgz", + "integrity": "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "license": "MIT" + }, + "node_modules/readable-stream": { + "version": "3.6.2", + "resolved": "https://registry.npmmirror.com/readable-stream/-/readable-stream-3.6.2.tgz", + "integrity": "sha512-9u/sniCrY3D5WdsERHzHE4G2YCXqoG5FTHUiCC4SIbr6XcLZBY05ya9EKjYek9O5xOAwjGq+1JdGBAS7Q9ScoA==", + "license": "MIT", + "dependencies": { + "inherits": "^2.0.3", + "string_decoder": "^1.1.1", + "util-deprecate": "^1.0.1" + }, + "engines": { + "node": ">= 6" + } + }, + "node_modules/reflect.getprototypeof": { + "version": "1.0.7", + "resolved": "https://registry.npmmirror.com/reflect.getprototypeof/-/reflect.getprototypeof-1.0.7.tgz", + "integrity": "sha512-bMvFGIUKlc/eSfXNX+aZ+EL95/EgZzuwA0OBPTbZZDEJw/0AkentjMuM1oiRfwHrshqk4RzdgiTg5CcDalXN5g==", + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.5", + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.4", + "gopd": "^1.0.1", + "which-builtin-type": "^1.1.4" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/regenerator-runtime": { + "version": "0.14.1", + "resolved": "https://registry.npmjs.org/regenerator-runtime/-/regenerator-runtime-0.14.1.tgz", + "integrity": "sha512-dYnhHh0nJoMfnkZs6GmmhFknAGRrLznOu5nc9ML+EJxGvrx6H7teuevqVqCuPcPK//3eDrrjQhehXVx9cnkGdw==", + "license": "MIT" + }, + "node_modules/regex-not": { + "version": "1.0.2", + "resolved": "https://registry.npmmirror.com/regex-not/-/regex-not-1.0.2.tgz", + "integrity": "sha512-J6SDjUgDxQj5NusnOtdFxDwN/+HWykR8GELwctJ7mdqhcyy1xEc4SRFHUXvxTp661YaVKAjfRLZ9cCqS6tn32A==", + "license": "MIT", + "dependencies": { + "extend-shallow": "^3.0.2", + "safe-regex": "^1.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/regex-not/node_modules/extend-shallow": { + "version": "3.0.2", + "resolved": "https://registry.npmmirror.com/extend-shallow/-/extend-shallow-3.0.2.tgz", + "integrity": "sha512-BwY5b5Ql4+qZoefgMj2NUmx+tehVTH/Kf4k1ZEtOHNFcm2wSxMRo992l6X3TIgni2eZVTZ85xMOjF31fwZAj6Q==", + "license": "MIT", + "dependencies": { + "assign-symbols": "^1.0.0", + "is-extendable": "^1.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/regex-not/node_modules/is-extendable": { + "version": "1.0.1", + "resolved": "https://registry.npmmirror.com/is-extendable/-/is-extendable-1.0.1.tgz", + "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", + "license": "MIT", + "dependencies": { + "is-plain-object": "^2.0.4" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/regexp.prototype.flags": { + "version": "1.5.3", + "resolved": "https://registry.npmmirror.com/regexp.prototype.flags/-/regexp.prototype.flags-1.5.3.tgz", + "integrity": "sha512-vqlC04+RQoFalODCbCumG2xIOvapzVMHwsyIGM/SIE8fRhFFsXeH8/QQ+s0T0kDAhKc4k30s73/0ydkHQz6HlQ==", + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-errors": "^1.3.0", + "set-function-name": "^2.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/repeat-element": { + "version": "1.1.4", + "resolved": "https://registry.npmmirror.com/repeat-element/-/repeat-element-1.1.4.tgz", + "integrity": "sha512-LFiNfRcSu7KK3evMyYOuCzv3L10TW7yC1G2/+StMjK8Y6Vqd2MG7r/Qjw4ghtuCOjFvlnms/iMmLqpvW/ES/WQ==", + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/repeat-string": { + "version": "1.6.1", + "resolved": "https://registry.npmmirror.com/repeat-string/-/repeat-string-1.6.1.tgz", + "integrity": "sha512-PV0dzCYDNfRi1jCDbJzpW7jNNDRuCOG/jI5ctQcGKt/clZD+YcPS3yIlWuTJMmESC8aevCFmWJy5wjAFgNqN6w==", + "license": "MIT", + "engines": { + "node": ">=0.10" + } + }, + "node_modules/resolve": { + "version": "1.22.8", + "resolved": "https://registry.npmjs.org/resolve/-/resolve-1.22.8.tgz", + "integrity": "sha512-oKWePCxqpd6FlLvGV1VU0x7bkPmmCNolxzjMf4NczoDnQcIWrAF+cPtZn5i6n+RfD2d9i0tzpKnG6Yk168yIyw==", + "dev": true, + "license": "MIT", + "dependencies": { + "is-core-module": "^2.13.0", + "path-parse": "^1.0.7", + "supports-preserve-symlinks-flag": "^1.0.0" + }, + "bin": { + "resolve": "bin/resolve" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/resolve-url": { + "version": "0.2.1", + "resolved": "https://registry.npmmirror.com/resolve-url/-/resolve-url-0.2.1.tgz", + "integrity": "sha512-ZuF55hVUQaaczgOIwqWzkEcEidmlD/xl44x1UZnhOXcYuFN2S6+rcxpG+C1N3So0wvNI3DmJICUFfu2SxhBmvg==", + "deprecated": "https://github.com/lydell/resolve-url#deprecated", + "license": "MIT" + }, + "node_modules/ret": { + "version": "0.1.15", + "resolved": "https://registry.npmmirror.com/ret/-/ret-0.1.15.tgz", + "integrity": "sha512-TTlYpa+OL+vMMNG24xSlQGEJ3B/RzEfUlLct7b5G/ytav+wPrplCpVMFuwzXbkecJrb6IYo1iFb0S9v37754mg==", + "license": "MIT", + "engines": { + "node": ">=0.12" + } + }, + "node_modules/reusify": { + "version": "1.0.4", + "resolved": "https://registry.npmmirror.com/reusify/-/reusify-1.0.4.tgz", + "integrity": "sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==", + "license": "MIT", + "engines": { + "iojs": ">=1.0.0", + "node": ">=0.10.0" + } + }, + "node_modules/rollup": { + "version": "4.28.0", + "resolved": "https://registry.npmjs.org/rollup/-/rollup-4.28.0.tgz", + "integrity": "sha512-G9GOrmgWHBma4YfCcX8PjH0qhXSdH8B4HDE2o4/jaxj93S4DPCIDoLcXz99eWMji4hB29UFCEd7B2gwGJDR9cQ==", + "license": "MIT", + "dependencies": { + "@types/estree": "1.0.6" + }, + "bin": { + "rollup": "dist/bin/rollup" + }, + "engines": { + "node": ">=18.0.0", + "npm": ">=8.0.0" + }, + "optionalDependencies": { + "@rollup/rollup-android-arm-eabi": "4.28.0", + "@rollup/rollup-android-arm64": "4.28.0", + "@rollup/rollup-darwin-arm64": "4.28.0", + "@rollup/rollup-darwin-x64": "4.28.0", + "@rollup/rollup-freebsd-arm64": "4.28.0", + "@rollup/rollup-freebsd-x64": "4.28.0", + "@rollup/rollup-linux-arm-gnueabihf": "4.28.0", + "@rollup/rollup-linux-arm-musleabihf": "4.28.0", + "@rollup/rollup-linux-arm64-gnu": "4.28.0", + "@rollup/rollup-linux-arm64-musl": "4.28.0", + "@rollup/rollup-linux-powerpc64le-gnu": "4.28.0", + "@rollup/rollup-linux-riscv64-gnu": "4.28.0", + "@rollup/rollup-linux-s390x-gnu": "4.28.0", + "@rollup/rollup-linux-x64-gnu": "4.28.0", + "@rollup/rollup-linux-x64-musl": "4.28.0", + "@rollup/rollup-win32-arm64-msvc": "4.28.0", + "@rollup/rollup-win32-ia32-msvc": "4.28.0", + "@rollup/rollup-win32-x64-msvc": "4.28.0", + "fsevents": "~2.3.2" + } + }, + "node_modules/rope-sequence": { + "version": "1.3.4", + "resolved": "https://registry.npmjs.org/rope-sequence/-/rope-sequence-1.3.4.tgz", + "integrity": "sha512-UT5EDe2cu2E/6O4igUr5PSFs23nvvukicWHx6GnOPlHAiiYbzNuCRQCuiUdHJQcqKalLKlrYJnjY0ySGsXNQXQ==", + "license": "MIT" + }, + "node_modules/run-parallel": { + "version": "1.2.0", + "resolved": "https://registry.npmmirror.com/run-parallel/-/run-parallel-1.2.0.tgz", + "integrity": "sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "license": "MIT", + "dependencies": { + "queue-microtask": "^1.2.2" + } + }, + "node_modules/safe-array-concat": { + "version": "1.1.2", + "resolved": "https://registry.npmmirror.com/safe-array-concat/-/safe-array-concat-1.1.2.tgz", + "integrity": "sha512-vj6RsCsWBCf19jIeHEfkRMw8DPiBb+DMXklQ/1SGDHOMlHdPUkZXFQ2YdplS23zESTijAcurb1aSgJA3AgMu1Q==", + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.7", + "get-intrinsic": "^1.2.4", + "has-symbols": "^1.0.3", + "isarray": "^2.0.5" + }, + "engines": { + "node": ">=0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/safe-buffer": { + "version": "5.2.1", + "resolved": "https://registry.npmmirror.com/safe-buffer/-/safe-buffer-5.2.1.tgz", + "integrity": "sha512-rp3So07KcdmmKbGvgaNxQSJr7bGVSVk5S9Eq1F+ppbRo70+YeaDxkw5Dd8NPN+GD6bjnYm2VuPuCXmpuYvmCXQ==", + "funding": [ + { + "type": "github", + "url": "https://github.com/sponsors/feross" + }, + { + "type": "patreon", + "url": "https://www.patreon.com/feross" + }, + { + "type": "consulting", + "url": "https://feross.org/support" + } + ], + "license": "MIT" + }, + "node_modules/safe-regex": { + "version": "1.1.0", + "resolved": "https://registry.npmmirror.com/safe-regex/-/safe-regex-1.1.0.tgz", + "integrity": "sha512-aJXcif4xnaNUzvUuC5gcb46oTS7zvg4jpMTnuqtrEPlR3vFr4pxtdTwaF1Qs3Enjn9HK+ZlwQui+a7z0SywIzg==", + "license": "MIT", + "dependencies": { + "ret": "~0.1.10" + } + }, + "node_modules/safe-regex-test": { + "version": "1.0.3", + "resolved": "https://registry.npmmirror.com/safe-regex-test/-/safe-regex-test-1.0.3.tgz", + "integrity": "sha512-CdASjNJPvRa7roO6Ra/gLYBTzYzzPyyBXxIMdGW3USQLyjWEls2RgW5UBTXaQVp+OrpeCK3bLem8smtmheoRuw==", + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.6", + "es-errors": "^1.3.0", + "is-regex": "^1.1.4" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/safer-buffer": { + "version": "2.1.2", + "resolved": "https://registry.npmjs.org/safer-buffer/-/safer-buffer-2.1.2.tgz", + "integrity": "sha512-YZo3K82SD7Riyi0E1EQPojLz7kpepnSQI9IyPbHHg1XXXevb5dJI7tpyN2ADxGcQbHG7vcyRHk0cbwqcQriUtg==", + "license": "MIT", + "optional": true + }, + "node_modules/sax": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/sax/-/sax-1.4.1.tgz", + "integrity": "sha512-+aWOz7yVScEGoKNd4PA10LZ8sk0A/z5+nXQG5giUO5rprX9jgYsTdov9qCchZiPIZezbZH+jRut8nPodFAX4Jg==", + "license": "ISC", + "optional": true + }, + "node_modules/semver": { + "version": "5.7.2", + "resolved": "https://registry.npmjs.org/semver/-/semver-5.7.2.tgz", + "integrity": "sha512-cBznnQ9KjJqU67B52RMC65CMarK2600WFnbkcaiwWq3xy/5haFJlshgnpjovMVJ+Hff49d8GEn0b87C5pDQ10g==", + "license": "ISC", + "optional": true, + "bin": { + "semver": "bin/semver" + } + }, + "node_modules/set-function-length": { + "version": "1.2.2", + "resolved": "https://registry.npmmirror.com/set-function-length/-/set-function-length-1.2.2.tgz", + "integrity": "sha512-pgRc4hJ4/sNjWCSS9AmnS40x3bNMDTknHgL5UaMBTMyJnU90EgWh1Rz+MC9eFu4BuN/UwZjKQuY/1v3rM7HMfg==", + "license": "MIT", + "dependencies": { + "define-data-property": "^1.1.4", + "es-errors": "^1.3.0", + "function-bind": "^1.1.2", + "get-intrinsic": "^1.2.4", + "gopd": "^1.0.1", + "has-property-descriptors": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/set-function-name": { + "version": "2.0.2", + "resolved": "https://registry.npmmirror.com/set-function-name/-/set-function-name-2.0.2.tgz", + "integrity": "sha512-7PGFlmtwsEADb0WYyvCMa1t+yke6daIG4Wirafur5kcf+MhUnPms1UeR0CKQdTZD81yESwMHbtn+TR+dMviakQ==", + "license": "MIT", + "dependencies": { + "define-data-property": "^1.1.4", + "es-errors": "^1.3.0", + "functions-have-names": "^1.2.3", + "has-property-descriptors": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/set-value": { + "version": "2.0.1", + "resolved": "https://registry.npmmirror.com/set-value/-/set-value-2.0.1.tgz", + "integrity": "sha512-JxHc1weCN68wRY0fhCoXpyK55m/XPHafOmK4UWD7m2CI14GMcFypt4w/0+NV5f/ZMby2F6S2wwA7fgynh9gWSw==", + "license": "MIT", + "dependencies": { + "extend-shallow": "^2.0.1", + "is-extendable": "^0.1.1", + "is-plain-object": "^2.0.3", + "split-string": "^3.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/side-channel": { + "version": "1.0.6", + "resolved": "https://registry.npmmirror.com/side-channel/-/side-channel-1.0.6.tgz", + "integrity": "sha512-fDW/EZ6Q9RiO8eFG8Hj+7u/oW+XrPTIChwCOM2+th2A6OblDtYYIpve9m+KvI9Z4C9qSEXlaGR6bTEYHReuglA==", + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.7", + "es-errors": "^1.3.0", + "get-intrinsic": "^1.2.4", + "object-inspect": "^1.13.1" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/snapdragon": { + "version": "0.8.2", + "resolved": "https://registry.npmmirror.com/snapdragon/-/snapdragon-0.8.2.tgz", + "integrity": "sha512-FtyOnWN/wCHTVXOMwvSv26d+ko5vWlIDD6zoUJ7LW8vh+ZBC8QdljveRP+crNrtBwioEUWy/4dMtbBjA4ioNlg==", + "license": "MIT", + "dependencies": { + "base": "^0.11.1", + "debug": "^2.2.0", + "define-property": "^0.2.5", + "extend-shallow": "^2.0.1", + "map-cache": "^0.2.2", + "source-map": "^0.5.6", + "source-map-resolve": "^0.5.0", + "use": "^3.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/snapdragon-node": { + "version": "2.1.1", + "resolved": "https://registry.npmmirror.com/snapdragon-node/-/snapdragon-node-2.1.1.tgz", + "integrity": "sha512-O27l4xaMYt/RSQ5TR3vpWCAB5Kb/czIcqUFOM/C4fYcLnbZUc1PkjTAMjof2pBWaSTwOUd6qUHcFGVGj7aIwnw==", + "license": "MIT", + "dependencies": { + "define-property": "^1.0.0", + "isobject": "^3.0.0", + "snapdragon-util": "^3.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/snapdragon-util": { + "version": "3.0.1", + "resolved": "https://registry.npmmirror.com/snapdragon-util/-/snapdragon-util-3.0.1.tgz", + "integrity": "sha512-mbKkMdQKsjX4BAL4bRYTj21edOf8cN7XHdYUJEe+Zn99hVEYcMvKPct1IqNe7+AZPirn8BCDOQBHQZknqmKlZQ==", + "license": "MIT", + "dependencies": { + "kind-of": "^3.2.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/snapdragon-util/node_modules/kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmmirror.com/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==", + "license": "MIT", + "dependencies": { + "is-buffer": "^1.1.5" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/snapdragon/node_modules/debug": { + "version": "2.6.9", + "resolved": "https://registry.npmmirror.com/debug/-/debug-2.6.9.tgz", + "integrity": "sha512-bC7ElrdJaJnPbAP+1EotYvqZsb3ecl5wi6Bfi6BJTUcNowp6cvspg0jXznRTKDjm/E7AdgFBVeAPVMNcKGsHMA==", + "license": "MIT", + "dependencies": { + "ms": "2.0.0" + } + }, + "node_modules/snapdragon/node_modules/define-property": { + "version": "0.2.5", + "resolved": "https://registry.npmmirror.com/define-property/-/define-property-0.2.5.tgz", + "integrity": "sha512-Rr7ADjQZenceVOAKop6ALkkRAmH1A4Gx9hV/7ZujPUN2rkATqFO0JZLZInbAjpZYoJ1gUx8MRMQVkYemcbMSTA==", + "license": "MIT", + "dependencies": { + "is-descriptor": "^0.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/snapdragon/node_modules/is-descriptor": { + "version": "0.1.7", + "resolved": "https://registry.npmmirror.com/is-descriptor/-/is-descriptor-0.1.7.tgz", + "integrity": "sha512-C3grZTvObeN1xud4cRWl366OMXZTj0+HGyk4hvfpx4ZHt1Pb60ANSXqCK7pdOTeUQpRzECBSTphqvD7U+l22Eg==", + "license": "MIT", + "dependencies": { + "is-accessor-descriptor": "^1.0.1", + "is-data-descriptor": "^1.0.1" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/snapdragon/node_modules/ms": { + "version": "2.0.0", + "resolved": "https://registry.npmmirror.com/ms/-/ms-2.0.0.tgz", + "integrity": "sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==", + "license": "MIT" + }, + "node_modules/snapdragon/node_modules/source-map": { + "version": "0.5.7", + "resolved": "https://registry.npmmirror.com/source-map/-/source-map-0.5.7.tgz", + "integrity": "sha512-LbrmJOMUSdEVxIKvdcJzQC+nQhe8FUZQTXQy6+I75skNgn3OoQ0DZA8YnFa7gp8tqtL3KPf1kmo0R5DoApeSGQ==", + "license": "BSD-3-Clause", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/source-map": { + "version": "0.6.1", + "resolved": "https://registry.npmjs.org/source-map/-/source-map-0.6.1.tgz", + "integrity": "sha512-UjgapumWlbMhkBgzT7Ykc5YXUT46F0iKu8SGXq0bcwP5dz/h0Plj6enJqjz1Zbq2l5WaqYnrVbwWOWMyF3F47g==", + "license": "BSD-3-Clause", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/source-map-js": { + "version": "1.2.1", + "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.2.1.tgz", + "integrity": "sha512-UXWMKhLOwVKb728IUtQPXxfYU+usdybtUrK/8uGE8CQMvrhOpwvzDBwj0QhSL7MQc7vIsISBG8VQ8+IDQxpfQA==", + "license": "BSD-3-Clause", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/source-map-resolve": { + "version": "0.5.3", + "resolved": "https://registry.npmmirror.com/source-map-resolve/-/source-map-resolve-0.5.3.tgz", + "integrity": "sha512-Htz+RnsXWk5+P2slx5Jh3Q66vhQj1Cllm0zvnaY98+NFx+Dv2CF/f5O/t8x+KaNdrdIAsruNzoh/KpialbqAnw==", + "deprecated": "See https://github.com/lydell/source-map-resolve#deprecated", + "license": "MIT", + "dependencies": { + "atob": "^2.1.2", + "decode-uri-component": "^0.2.0", + "resolve-url": "^0.2.1", + "source-map-url": "^0.4.0", + "urix": "^0.1.0" + } + }, + "node_modules/source-map-url": { + "version": "0.4.1", + "resolved": "https://registry.npmmirror.com/source-map-url/-/source-map-url-0.4.1.tgz", + "integrity": "sha512-cPiFOTLUKvJFIg4SKVScy4ilPPW6rFgMgfuZJPNoDuMs3nC1HbMUycBoJw77xFIp6z1UJQJOfx6C9GMH80DiTw==", + "deprecated": "See https://github.com/lydell/source-map-url#deprecated", + "license": "MIT" + }, + "node_modules/split-string": { + "version": "3.1.0", + "resolved": "https://registry.npmmirror.com/split-string/-/split-string-3.1.0.tgz", + "integrity": "sha512-NzNVhJDYpwceVVii8/Hu6DKfD2G+NrQHlS/V/qgv763EYudVwEcMQNxd2lh+0VrUByXN/oJkl5grOhYWvQUYiw==", + "license": "MIT", + "dependencies": { + "extend-shallow": "^3.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/split-string/node_modules/extend-shallow": { + "version": "3.0.2", + "resolved": "https://registry.npmmirror.com/extend-shallow/-/extend-shallow-3.0.2.tgz", + "integrity": "sha512-BwY5b5Ql4+qZoefgMj2NUmx+tehVTH/Kf4k1ZEtOHNFcm2wSxMRo992l6X3TIgni2eZVTZ85xMOjF31fwZAj6Q==", + "license": "MIT", + "dependencies": { + "assign-symbols": "^1.0.0", + "is-extendable": "^1.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/split-string/node_modules/is-extendable": { + "version": "1.0.1", + "resolved": "https://registry.npmmirror.com/is-extendable/-/is-extendable-1.0.1.tgz", + "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", + "license": "MIT", + "dependencies": { + "is-plain-object": "^2.0.4" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/sprintf-js": { + "version": "1.0.3", + "resolved": "https://registry.npmjs.org/sprintf-js/-/sprintf-js-1.0.3.tgz", + "integrity": "sha512-D9cPgkvLlV3t3IzL0D0YLvGA9Ahk4PcvVwUbN0dSGr1aP0Nrt4AEnTUbuGvquEC0mA64Gqt1fzirlRs5ibXx8g==", + "dev": true, + "license": "BSD-3-Clause" + }, + "node_modules/stable": { + "version": "0.1.8", + "resolved": "https://registry.npmmirror.com/stable/-/stable-0.1.8.tgz", + "integrity": "sha512-ji9qxRnOVfcuLDySj9qzhGSEFVobyt1kIOSkj1qZzYLzq7Tos/oUUWvotUPQLlrsidqsK6tBH89Bc9kL5zHA6w==", + "deprecated": "Modern JS already guarantees Array#sort() is a stable sort, so this library is deprecated. See the compatibility table on MDN: https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Array/sort#browser_compatibility", + "license": "MIT" + }, + "node_modules/static-extend": { + "version": "0.1.2", + "resolved": "https://registry.npmmirror.com/static-extend/-/static-extend-0.1.2.tgz", + "integrity": "sha512-72E9+uLc27Mt718pMHt9VMNiAL4LMsmDbBva8mxWUCkT07fSzEGMYUCk0XWY6lp0j6RBAG4cJ3mWuZv2OE3s0g==", + "license": "MIT", + "dependencies": { + "define-property": "^0.2.5", + "object-copy": "^0.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/static-extend/node_modules/define-property": { + "version": "0.2.5", + "resolved": "https://registry.npmmirror.com/define-property/-/define-property-0.2.5.tgz", + "integrity": "sha512-Rr7ADjQZenceVOAKop6ALkkRAmH1A4Gx9hV/7ZujPUN2rkATqFO0JZLZInbAjpZYoJ1gUx8MRMQVkYemcbMSTA==", + "license": "MIT", + "dependencies": { + "is-descriptor": "^0.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/static-extend/node_modules/is-descriptor": { + "version": "0.1.7", + "resolved": "https://registry.npmmirror.com/is-descriptor/-/is-descriptor-0.1.7.tgz", + "integrity": "sha512-C3grZTvObeN1xud4cRWl366OMXZTj0+HGyk4hvfpx4ZHt1Pb60ANSXqCK7pdOTeUQpRzECBSTphqvD7U+l22Eg==", + "license": "MIT", + "dependencies": { + "is-accessor-descriptor": "^1.0.1", + "is-data-descriptor": "^1.0.1" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/strict-uri-encode": { + "version": "1.1.0", + "resolved": "https://registry.npmmirror.com/strict-uri-encode/-/strict-uri-encode-1.1.0.tgz", + "integrity": "sha512-R3f198pcvnB+5IpnBlRkphuE9n46WyVl8I39W/ZUTZLz4nqSP/oLYUrcnJrw462Ds8he4YKMov2efsTIw1BDGQ==", + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/string_decoder": { + "version": "1.3.0", + "resolved": "https://registry.npmmirror.com/string_decoder/-/string_decoder-1.3.0.tgz", + "integrity": "sha512-hkRX8U1WjJFd8LsDJ2yQ/wWWxaopEsABU1XfkM8A+j0+85JAGppt16cr1Whg6KIbb4okU6Mql6BOj+uup/wKeA==", + "license": "MIT", + "dependencies": { + "safe-buffer": "~5.2.0" + } + }, + "node_modules/string-argv": { + "version": "0.3.2", + "resolved": "https://registry.npmjs.org/string-argv/-/string-argv-0.3.2.tgz", + "integrity": "sha512-aqD2Q0144Z+/RqG52NeHEkZauTAUWJO8c6yTftGJKO3Tja5tUgIfmIl6kExvhtxSDP7fXB6DvzkfMpCd/F3G+Q==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=0.6.19" + } + }, + "node_modules/string.prototype.trim": { + "version": "1.2.9", + "resolved": "https://registry.npmmirror.com/string.prototype.trim/-/string.prototype.trim-1.2.9.tgz", + "integrity": "sha512-klHuCNxiMZ8MlsOihJhJEBJAiMVqU3Z2nEXWfWnIqjN0gEFS9J9+IxKozWWtQGcgoa1WUZzLjKPTr4ZHNFTFxw==", + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.0", + "es-object-atoms": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/string.prototype.trimend": { + "version": "1.0.8", + "resolved": "https://registry.npmmirror.com/string.prototype.trimend/-/string.prototype.trimend-1.0.8.tgz", + "integrity": "sha512-p73uL5VCHCO2BZZ6krwwQE3kCzM7NKmis8S//xEC6fQonchbum4eP6kR4DLEjQFO3Wnj3Fuo8NM0kOSjVdHjZQ==", + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-object-atoms": "^1.0.0" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/string.prototype.trimstart": { + "version": "1.0.8", + "resolved": "https://registry.npmmirror.com/string.prototype.trimstart/-/string.prototype.trimstart-1.0.8.tgz", + "integrity": "sha512-UXSH262CSZY1tfu3G3Secr6uGLCFVPMhIqHjlgCUtCCcgihYc/xKs9djMTMUOb2j1mVSeU8EU6NWc/iQKU6Gfg==", + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-object-atoms": "^1.0.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/strip-ansi": { + "version": "3.0.1", + "resolved": "https://registry.npmmirror.com/strip-ansi/-/strip-ansi-3.0.1.tgz", + "integrity": "sha512-VhumSSbBqDTP8p2ZLKj40UjBCV4+v8bUSEpUb4KjRgWk9pbqGF4REFj6KEagidb2f/M6AzC0EmFyDNGaw9OCzg==", + "license": "MIT", + "dependencies": { + "ansi-regex": "^2.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/strip-json-comments": { + "version": "3.1.1", + "resolved": "https://registry.npmjs.org/strip-json-comments/-/strip-json-comments-3.1.1.tgz", + "integrity": "sha512-6fPc+R4ihwqP6N/aIv2f1gMH8lOVtWQHoqC4yK6oSDVVocumAsfCqjkXnqiYMhmMwS/mEHLp7Vehlt3ql6lEig==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=8" + }, + "funding": { + "url": "https://github.com/sponsors/sindresorhus" + } + }, + "node_modules/supports-color": { + "version": "8.1.1", + "resolved": "https://registry.npmjs.org/supports-color/-/supports-color-8.1.1.tgz", + "integrity": "sha512-MpUEN2OodtUzxvKQl72cUF7RQ5EiHsGvSsVG0ia9c5RbWGL2CI4C7EpPS8UTBIplnlzZiNuV56w+FuNxy3ty2Q==", + "dev": true, + "license": "MIT", + "dependencies": { + "has-flag": "^4.0.0" + }, + "engines": { + "node": ">=10" + }, + "funding": { + "url": "https://github.com/chalk/supports-color?sponsor=1" + } + }, + "node_modules/supports-preserve-symlinks-flag": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/supports-preserve-symlinks-flag/-/supports-preserve-symlinks-flag-1.0.0.tgz", + "integrity": "sha512-ot0WnXS9fgdkgIcePe6RHNk1WA8+muPa6cSjeR3V8K27q9BB1rTE3R1p7Hv0z1ZyAc8s6Vvv8DIyWf681MAt0w==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/svg-baker": { + "version": "1.7.0", + "resolved": "https://registry.npmmirror.com/svg-baker/-/svg-baker-1.7.0.tgz", + "integrity": "sha512-nibslMbkXOIkqKVrfcncwha45f97fGuAOn1G99YwnwTj8kF9YiM6XexPcUso97NxOm6GsP0SIvYVIosBis1xLg==", + "license": "MIT", + "dependencies": { + "bluebird": "^3.5.0", + "clone": "^2.1.1", + "he": "^1.1.1", + "image-size": "^0.5.1", + "loader-utils": "^1.1.0", + "merge-options": "1.0.1", + "micromatch": "3.1.0", + "postcss": "^5.2.17", + "postcss-prefix-selector": "^1.6.0", + "posthtml-rename-id": "^1.0", + "posthtml-svg-mode": "^1.0.3", + "query-string": "^4.3.2", + "traverse": "^0.6.6" + } + }, + "node_modules/svg-baker/node_modules/has-flag": { + "version": "1.0.0", + "resolved": "https://registry.npmmirror.com/has-flag/-/has-flag-1.0.0.tgz", + "integrity": "sha512-DyYHfIYwAJmjAjSSPKANxI8bFY9YtFrgkAfinBojQ8YJTOuOuav64tMUJv584SES4xl74PmuaevIyaLESHdTAA==", + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/svg-baker/node_modules/postcss": { + "version": "5.2.18", + "resolved": "https://registry.npmmirror.com/postcss/-/postcss-5.2.18.tgz", + "integrity": "sha512-zrUjRRe1bpXKsX1qAJNJjqZViErVuyEkMTRrwu4ud4sbTtIBRmtaYDrHmcGgmrbsW3MHfmtIf+vJumgQn+PrXg==", + "license": "MIT", + "dependencies": { + "chalk": "^1.1.3", + "js-base64": "^2.1.9", + "source-map": "^0.5.6", + "supports-color": "^3.2.3" + }, + "engines": { + "node": ">=0.12" + } + }, + "node_modules/svg-baker/node_modules/source-map": { + "version": "0.5.7", + "resolved": "https://registry.npmmirror.com/source-map/-/source-map-0.5.7.tgz", + "integrity": "sha512-LbrmJOMUSdEVxIKvdcJzQC+nQhe8FUZQTXQy6+I75skNgn3OoQ0DZA8YnFa7gp8tqtL3KPf1kmo0R5DoApeSGQ==", + "license": "BSD-3-Clause", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/svg-baker/node_modules/supports-color": { + "version": "3.2.3", + "resolved": "https://registry.npmmirror.com/supports-color/-/supports-color-3.2.3.tgz", + "integrity": "sha512-Jds2VIYDrlp5ui7t8abHN2bjAu4LV/q4N2KivFPpGH0lrka0BMq/33AmECUXlKPcHigkNaqfXRENFju+rlcy+A==", + "license": "MIT", + "dependencies": { + "has-flag": "^1.0.0" + }, + "engines": { + "node": ">=0.8.0" + } + }, + "node_modules/svgo": { + "version": "2.8.0", + "resolved": "https://registry.npmmirror.com/svgo/-/svgo-2.8.0.tgz", + "integrity": "sha512-+N/Q9kV1+F+UeWYoSiULYo4xYSDQlTgb+ayMobAXPwMnLvop7oxKMo9OzIrX5x3eS4L4f2UHhc9axXwY8DpChg==", + "license": "MIT", + "dependencies": { + "@trysound/sax": "0.2.0", + "commander": "^7.2.0", + "css-select": "^4.1.3", + "css-tree": "^1.1.3", + "csso": "^4.2.0", + "picocolors": "^1.0.0", + "stable": "^0.1.8" + }, + "bin": { + "svgo": "bin/svgo" + }, + "engines": { + "node": ">=10.13.0" + } + }, + "node_modules/svgo/node_modules/commander": { + "version": "7.2.0", + "resolved": "https://registry.npmmirror.com/commander/-/commander-7.2.0.tgz", + "integrity": "sha512-QrWXB+ZQSVPmIWIhtEO9H+gwHaMGYiF5ChvoJ+K9ZGHG/sVsa6yiesAD1GC/x46sET00Xlwo1u49RVVVzvcSkw==", + "license": "MIT", + "engines": { + "node": ">= 10" + } + }, + "node_modules/tippy.js": { + "version": "6.3.7", + "resolved": "https://registry.npmjs.org/tippy.js/-/tippy.js-6.3.7.tgz", + "integrity": "sha512-E1d3oP2emgJ9dRQZdf3Kkn0qJgI6ZLpyS5z6ZkY1DF3kaQaBsGZsndEpHwx+eC+tYM41HaSNvNtLx8tU57FzTQ==", + "license": "MIT", + "dependencies": { + "@popperjs/core": "^2.9.0" + } + }, + "node_modules/to-object-path": { + "version": "0.3.0", + "resolved": "https://registry.npmmirror.com/to-object-path/-/to-object-path-0.3.0.tgz", + "integrity": "sha512-9mWHdnGRuh3onocaHzukyvCZhzvr6tiflAy/JRFXcJX0TjgfWA9pk9t8CMbzmBE4Jfw58pXbkngtBtqYxzNEyg==", + "license": "MIT", + "dependencies": { + "kind-of": "^3.0.2" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/to-object-path/node_modules/kind-of": { + "version": "3.2.2", + "resolved": "https://registry.npmmirror.com/kind-of/-/kind-of-3.2.2.tgz", + "integrity": "sha512-NOW9QQXMoZGg/oqnVNoNTTIFEIid1627WCffUBJEdMxYApq7mNE7CpzucIPc+ZQg25Phej7IJSmX3hO+oblOtQ==", + "license": "MIT", + "dependencies": { + "is-buffer": "^1.1.5" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/to-regex": { + "version": "3.0.2", + "resolved": "https://registry.npmmirror.com/to-regex/-/to-regex-3.0.2.tgz", + "integrity": "sha512-FWtleNAtZ/Ki2qtqej2CXTOayOH9bHDQF+Q48VpWyDXjbYxA4Yz8iDB31zXOBUlOHHKidDbqGVrTUvQMPmBGBw==", + "license": "MIT", + "dependencies": { + "define-property": "^2.0.2", + "extend-shallow": "^3.0.2", + "regex-not": "^1.0.2", + "safe-regex": "^1.1.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/to-regex-range": { + "version": "2.1.1", + "resolved": "https://registry.npmmirror.com/to-regex-range/-/to-regex-range-2.1.1.tgz", + "integrity": "sha512-ZZWNfCjUokXXDGXFpZehJIkZqq91BcULFq/Pi7M5i4JnxXdhMKAK682z8bCW3o8Hj1wuuzoKcW3DfVzaP6VuNg==", + "license": "MIT", + "dependencies": { + "is-number": "^3.0.0", + "repeat-string": "^1.6.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/to-regex/node_modules/define-property": { + "version": "2.0.2", + "resolved": "https://registry.npmmirror.com/define-property/-/define-property-2.0.2.tgz", + "integrity": "sha512-jwK2UV4cnPpbcG7+VRARKTZPUWowwXA8bzH5NP6ud0oeAxyYPuGZUAC7hMugpCdz4BeSZl2Dl9k66CHJ/46ZYQ==", + "license": "MIT", + "dependencies": { + "is-descriptor": "^1.0.2", + "isobject": "^3.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/to-regex/node_modules/extend-shallow": { + "version": "3.0.2", + "resolved": "https://registry.npmmirror.com/extend-shallow/-/extend-shallow-3.0.2.tgz", + "integrity": "sha512-BwY5b5Ql4+qZoefgMj2NUmx+tehVTH/Kf4k1ZEtOHNFcm2wSxMRo992l6X3TIgni2eZVTZ85xMOjF31fwZAj6Q==", + "license": "MIT", + "dependencies": { + "assign-symbols": "^1.0.0", + "is-extendable": "^1.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/to-regex/node_modules/is-extendable": { + "version": "1.0.1", + "resolved": "https://registry.npmmirror.com/is-extendable/-/is-extendable-1.0.1.tgz", + "integrity": "sha512-arnXMxT1hhoKo9k1LZdmlNyJdDDfy2v0fXjFlmok4+i8ul/6WlbVge9bhM74OpNPQPMGUToDtz+KXa1PneJxOA==", + "license": "MIT", + "dependencies": { + "is-plain-object": "^2.0.4" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/tr46": { + "version": "0.0.3", + "resolved": "https://registry.npmjs.org/tr46/-/tr46-0.0.3.tgz", + "integrity": "sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==", + "license": "MIT" + }, + "node_modules/traverse": { + "version": "0.6.10", + "resolved": "https://registry.npmmirror.com/traverse/-/traverse-0.6.10.tgz", + "integrity": "sha512-hN4uFRxbK+PX56DxYiGHsTn2dME3TVr9vbNqlQGcGcPhJAn+tdP126iA+TArMpI4YSgnTkMWyoLl5bf81Hi5TA==", + "license": "MIT", + "dependencies": { + "gopd": "^1.0.1", + "typedarray.prototype.slice": "^1.0.3", + "which-typed-array": "^1.1.15" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/tslib": { + "version": "2.8.1", + "resolved": "https://registry.npmjs.org/tslib/-/tslib-2.8.1.tgz", + "integrity": "sha512-oJFu94HQb+KVduSUQL7wnpmqnfmLsOA/nAh6b6EH0wCEoK0/mPeXU6c3wKDV83MkOuHPRHtSXKKU99IBazS/2w==", + "devOptional": true, + "license": "0BSD" + }, + "node_modules/turndown": { + "version": "7.2.0", + "resolved": "https://registry.npmjs.org/turndown/-/turndown-7.2.0.tgz", + "integrity": "sha512-eCZGBN4nNNqM9Owkv9HAtWRYfLA4h909E/WGAWWBpmB275ehNhZyk87/Tpvjbp0jjNl9XwCsbe6bm6CqFsgD+A==", + "license": "MIT", + "dependencies": { + "@mixmark-io/domino": "^2.2.0" + } + }, + "node_modules/typed-array-buffer": { + "version": "1.0.2", + "resolved": "https://registry.npmmirror.com/typed-array-buffer/-/typed-array-buffer-1.0.2.tgz", + "integrity": "sha512-gEymJYKZtKXzzBzM4jqa9w6Q1Jjm7x2d+sh19AdsD4wqnMPDYyvwpsIc2Q/835kHuo3BEQ7CjelGhfTsoBb2MQ==", + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.7", + "es-errors": "^1.3.0", + "is-typed-array": "^1.1.13" + }, + "engines": { + "node": ">= 0.4" + } + }, + "node_modules/typed-array-byte-length": { + "version": "1.0.1", + "resolved": "https://registry.npmmirror.com/typed-array-byte-length/-/typed-array-byte-length-1.0.1.tgz", + "integrity": "sha512-3iMJ9q0ao7WE9tWcaYKIptkNBuOIcZCCT0d4MRvuuH88fEoEH62IuQe0OtraD3ebQEoTRk8XCBoknUNc1Y67pw==", + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.7", + "for-each": "^0.3.3", + "gopd": "^1.0.1", + "has-proto": "^1.0.3", + "is-typed-array": "^1.1.13" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/typed-array-byte-offset": { + "version": "1.0.3", + "resolved": "https://registry.npmmirror.com/typed-array-byte-offset/-/typed-array-byte-offset-1.0.3.tgz", + "integrity": "sha512-GsvTyUHTriq6o/bHcTd0vM7OQ9JEdlvluu9YISaA7+KzDzPaIzEeDFNkTfhdE3MYcNhNi0vq/LlegYgIs5yPAw==", + "license": "MIT", + "dependencies": { + "available-typed-arrays": "^1.0.7", + "call-bind": "^1.0.7", + "for-each": "^0.3.3", + "gopd": "^1.0.1", + "has-proto": "^1.0.3", + "is-typed-array": "^1.1.13", + "reflect.getprototypeof": "^1.0.6" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/typed-array-length": { + "version": "1.0.7", + "resolved": "https://registry.npmmirror.com/typed-array-length/-/typed-array-length-1.0.7.tgz", + "integrity": "sha512-3KS2b+kL7fsuk/eJZ7EQdnEmQoaho/r6KUef7hxvltNA5DR8NAUM+8wJMbJyZ4G9/7i3v5zPBIMN5aybAh2/Jg==", + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.7", + "for-each": "^0.3.3", + "gopd": "^1.0.1", + "is-typed-array": "^1.1.13", + "possible-typed-array-names": "^1.0.0", + "reflect.getprototypeof": "^1.0.6" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/typedarray.prototype.slice": { + "version": "1.0.3", + "resolved": "https://registry.npmmirror.com/typedarray.prototype.slice/-/typedarray.prototype.slice-1.0.3.tgz", + "integrity": "sha512-8WbVAQAUlENo1q3c3zZYuy5k9VzBQvp8AX9WOtbvyWlLM1v5JaSRmjubLjzHF4JFtptjH/5c/i95yaElvcjC0A==", + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.7", + "define-properties": "^1.2.1", + "es-abstract": "^1.23.0", + "es-errors": "^1.3.0", + "typed-array-buffer": "^1.0.2", + "typed-array-byte-offset": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/typescript": { + "version": "5.7.2", + "resolved": "https://registry.npmjs.org/typescript/-/typescript-5.7.2.tgz", + "integrity": "sha512-i5t66RHxDvVN40HfDd1PsEThGNnlMCMT3jMUuoh9/0TaqWevNontacunWyN02LA9/fIbEWlcHZcgTKb9QoaLfg==", + "dev": true, + "license": "Apache-2.0", + "bin": { + "tsc": "bin/tsc", + "tsserver": "bin/tsserver" + }, + "engines": { + "node": ">=14.17" + } + }, + "node_modules/uc.micro": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/uc.micro/-/uc.micro-2.1.0.tgz", + "integrity": "sha512-ARDJmphmdvUk6Glw7y9DQ2bFkKBHwQHLi2lsaH6PPmz/Ka9sFOBsBluozhDltWmnv9u/cF6Rt87znRTPV+yp/A==", + "license": "MIT" + }, + "node_modules/unbox-primitive": { + "version": "1.0.2", + "resolved": "https://registry.npmmirror.com/unbox-primitive/-/unbox-primitive-1.0.2.tgz", + "integrity": "sha512-61pPlCD9h51VoreyJ0BReideM3MDKMKnh6+V9L08331ipq6Q8OFXZYiqP6n/tbHx4s5I9uRhcye6BrbkizkBDw==", + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.2", + "has-bigints": "^1.0.2", + "has-symbols": "^1.0.3", + "which-boxed-primitive": "^1.0.2" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/undici-types": { + "version": "6.19.8", + "resolved": "https://registry.npmjs.org/undici-types/-/undici-types-6.19.8.tgz", + "integrity": "sha512-ve2KP6f/JnbPBFyobGHuerC9g1FYGn/F8n1LWTwNxCEzd6IfqTwUQcNXgEtmmQ6DlRrC1hrSrBnCZPokRrDHjw==", + "license": "MIT" + }, + "node_modules/union-value": { + "version": "1.0.1", + "resolved": "https://registry.npmmirror.com/union-value/-/union-value-1.0.1.tgz", + "integrity": "sha512-tJfXmxMeWYnczCVs7XAEvIV7ieppALdyepWMkHkwciRpZraG/xwT+s2JN8+pr1+8jCRf80FFzvr+MpQeeoF4Xg==", + "license": "MIT", + "dependencies": { + "arr-union": "^3.1.0", + "get-value": "^2.0.6", + "is-extendable": "^0.1.1", + "set-value": "^2.0.1" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/universalify": { + "version": "0.1.2", + "resolved": "https://registry.npmjs.org/universalify/-/universalify-0.1.2.tgz", + "integrity": "sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 4.0.0" + } + }, + "node_modules/unset-value": { + "version": "1.0.0", + "resolved": "https://registry.npmmirror.com/unset-value/-/unset-value-1.0.0.tgz", + "integrity": "sha512-PcA2tsuGSF9cnySLHTLSh2qrQiJ70mn+r+Glzxv2TWZblxsxCC52BDlZoPCsz7STd9pN7EZetkWZBAvk4cgZdQ==", + "license": "MIT", + "dependencies": { + "has-value": "^0.3.1", + "isobject": "^3.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/unset-value/node_modules/has-value": { + "version": "0.3.1", + "resolved": "https://registry.npmmirror.com/has-value/-/has-value-0.3.1.tgz", + "integrity": "sha512-gpG936j8/MzaeID5Yif+577c17TxaDmhuyVgSwtnL/q8UUTySg8Mecb+8Cf1otgLoD7DDH75axp86ER7LFsf3Q==", + "license": "MIT", + "dependencies": { + "get-value": "^2.0.3", + "has-values": "^0.1.4", + "isobject": "^2.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/unset-value/node_modules/has-value/node_modules/isobject": { + "version": "2.1.0", + "resolved": "https://registry.npmmirror.com/isobject/-/isobject-2.1.0.tgz", + "integrity": "sha512-+OUdGJlgjOBZDfxnDjYYG6zp487z0JGNQq3cYQYg5f5hKR+syHMsaztzGeml/4kGG55CSpKSpWTY+jYGgsHLgA==", + "license": "MIT", + "dependencies": { + "isarray": "1.0.0" + }, + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/unset-value/node_modules/has-values": { + "version": "0.1.4", + "resolved": "https://registry.npmmirror.com/has-values/-/has-values-0.1.4.tgz", + "integrity": "sha512-J8S0cEdWuQbqD9//tlZxiMuMNmxB8PlEwvYwuxsTmR1G5RXUePEX/SJn7aD0GMLieuZYSwNH0cQuJGwnYunXRQ==", + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/unset-value/node_modules/isarray": { + "version": "1.0.0", + "resolved": "https://registry.npmmirror.com/isarray/-/isarray-1.0.0.tgz", + "integrity": "sha512-VLghIWNM6ELQzo7zwmcg0NmTVyWKYjvIeM83yjp0wRDTmUnrM678fQbcKBo6n2CJEF0szoG//ytg+TKla89ALQ==", + "license": "MIT" + }, + "node_modules/uri-js": { + "version": "4.4.1", + "resolved": "https://registry.npmjs.org/uri-js/-/uri-js-4.4.1.tgz", + "integrity": "sha512-7rKUyy33Q1yc98pQ1DAmLtwX109F7TIfWlW1Ydo8Wl1ii1SeHieeh0HHfPeL2fMXK6z0s8ecKs9frCuLJvndBg==", + "dev": true, + "license": "BSD-2-Clause", + "dependencies": { + "punycode": "^2.1.0" + } + }, + "node_modules/urix": { + "version": "0.1.0", + "resolved": "https://registry.npmmirror.com/urix/-/urix-0.1.0.tgz", + "integrity": "sha512-Am1ousAhSLBeB9cG/7k7r2R0zj50uDRlZHPGbazid5s9rlF1F/QKYObEKSIunSjIOkJZqwRRLpvewjEkM7pSqg==", + "deprecated": "Please see https://github.com/lydell/urix#deprecated", + "license": "MIT" + }, + "node_modules/use": { + "version": "3.1.1", + "resolved": "https://registry.npmmirror.com/use/-/use-3.1.1.tgz", + "integrity": "sha512-cwESVXlO3url9YWlFW/TA9cshCEhtu7IKJ/p5soJ/gGpj7vbvFrAY/eIioQ6Dw23KjZhYgiIo8HOs1nQ2vr/oQ==", + "license": "MIT", + "engines": { + "node": ">=0.10.0" + } + }, + "node_modules/util-deprecate": { + "version": "1.0.2", + "resolved": "https://registry.npmmirror.com/util-deprecate/-/util-deprecate-1.0.2.tgz", + "integrity": "sha512-EPD5q1uXyFxJpCrLnCc1nHnq3gOa6DZBocAIiI2TaSCA7VCJ1UJDMagCzIkXNsUYfD1daK//LTEQ8xiIbrHtcw==", + "license": "MIT" + }, + "node_modules/uuid": { + "version": "10.0.0", + "resolved": "https://registry.npmjs.org/uuid/-/uuid-10.0.0.tgz", + "integrity": "sha512-8XkAphELsDnEGrDxUOHB3RGvXz6TeuYSGEZBOjtTtPm2lwhGBjLgOzLHB63IUWfBpNucQjND6d3AOudO+H3RWQ==", + "dev": true, + "funding": [ + "https://github.com/sponsors/broofa", + "https://github.com/sponsors/ctavan" + ], + "license": "MIT", + "bin": { + "uuid": "dist/bin/uuid" + } + }, + "node_modules/validator": { + "version": "13.12.0", + "resolved": "https://registry.npmjs.org/validator/-/validator-13.12.0.tgz", + "integrity": "sha512-c1Q0mCiPlgdTVVVIJIrBuxNicYE+t/7oKeI9MWLj3fh/uq2Pxh/3eeWbVZ4OcGW1TUf53At0njHw5SMdA3tmMg==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">= 0.10" + } + }, + "node_modules/vary": { + "version": "1.1.2", + "resolved": "https://registry.npmmirror.com/vary/-/vary-1.1.2.tgz", + "integrity": "sha512-BNGbWLfd0eUPabhkXUVm0j8uuvREyTh5ovRa/dyow/BqAbZJyC+5fU+IzQOzmAKzYqYRAISoRhdQr3eIZ/PXqg==", + "license": "MIT", + "engines": { + "node": ">= 0.8" + } + }, + "node_modules/vite": { + "version": "5.4.11", + "resolved": "https://registry.npmjs.org/vite/-/vite-5.4.11.tgz", + "integrity": "sha512-c7jFQRklXua0mTzneGW9QVyxFjUgwcihC4bXEtujIo2ouWCe1Ajt/amn2PCxYnhYfd5k09JX3SB7OYWFKYqj8Q==", + "license": "MIT", + "dependencies": { + "esbuild": "^0.21.3", + "postcss": "^8.4.43", + "rollup": "^4.20.0" + }, + "bin": { + "vite": "bin/vite.js" + }, + "engines": { + "node": "^18.0.0 || >=20.0.0" + }, + "funding": { + "url": "https://github.com/vitejs/vite?sponsor=1" + }, + "optionalDependencies": { + "fsevents": "~2.3.3" + }, + "peerDependencies": { + "@types/node": "^18.0.0 || >=20.0.0", + "less": "*", + "lightningcss": "^1.21.0", + "sass": "*", + "sass-embedded": "*", + "stylus": "*", + "sugarss": "*", + "terser": "^5.4.0" + }, + "peerDependenciesMeta": { + "@types/node": { + "optional": true + }, + "less": { + "optional": true + }, + "lightningcss": { + "optional": true + }, + "sass": { + "optional": true + }, + "sass-embedded": { + "optional": true + }, + "stylus": { + "optional": true + }, + "sugarss": { + "optional": true + }, + "terser": { + "optional": true + } + } + }, + "node_modules/vite-plugin-dts": { + "version": "3.9.1", + "resolved": "https://registry.npmjs.org/vite-plugin-dts/-/vite-plugin-dts-3.9.1.tgz", + "integrity": "sha512-rVp2KM9Ue22NGWB8dNtWEr+KekN3rIgz1tWD050QnRGlriUCmaDwa7qA5zDEjbXg5lAXhYMSBJtx3q3hQIJZSg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@microsoft/api-extractor": "7.43.0", + "@rollup/pluginutils": "^5.1.0", + "@vue/language-core": "^1.8.27", + "debug": "^4.3.4", + "kolorist": "^1.8.0", + "magic-string": "^0.30.8", + "vue-tsc": "^1.8.27" + }, + "engines": { + "node": "^14.18.0 || >=16.0.0" + }, + "peerDependencies": { + "typescript": "*", + "vite": "*" + }, + "peerDependenciesMeta": { + "vite": { + "optional": true + } + } + }, + "node_modules/vite-plugin-svg-icons": { + "version": "2.0.1", + "resolved": "https://registry.npmmirror.com/vite-plugin-svg-icons/-/vite-plugin-svg-icons-2.0.1.tgz", + "integrity": "sha512-6ktD+DhV6Rz3VtedYvBKKVA2eXF+sAQVaKkKLDSqGUfnhqXl3bj5PPkVTl3VexfTuZy66PmINi8Q6eFnVfRUmA==", + "license": "MIT", + "dependencies": { + "@types/svgo": "^2.6.1", + "cors": "^2.8.5", + "debug": "^4.3.3", + "etag": "^1.8.1", + "fs-extra": "^10.0.0", + "pathe": "^0.2.0", + "svg-baker": "1.7.0", + "svgo": "^2.8.0" + }, + "peerDependencies": { + "vite": ">=2.0.0" + } + }, + "node_modules/vite-plugin-svg-icons/node_modules/fs-extra": { + "version": "10.1.0", + "resolved": "https://registry.npmmirror.com/fs-extra/-/fs-extra-10.1.0.tgz", + "integrity": "sha512-oRXApq54ETRj4eMiFzGnHWGy+zo5raudjuxN0b8H7s/RU2oW0Wvsx9O0ACRN/kRq9E8Vu/ReskGB5o3ji+FzHQ==", + "license": "MIT", + "dependencies": { + "graceful-fs": "^4.2.0", + "jsonfile": "^6.0.1", + "universalify": "^2.0.0" + }, + "engines": { + "node": ">=12" + } + }, + "node_modules/vite-plugin-svg-icons/node_modules/jsonfile": { + "version": "6.1.0", + "resolved": "https://registry.npmmirror.com/jsonfile/-/jsonfile-6.1.0.tgz", + "integrity": "sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ==", + "license": "MIT", + "dependencies": { + "universalify": "^2.0.0" + }, + "optionalDependencies": { + "graceful-fs": "^4.1.6" + } + }, + "node_modules/vite-plugin-svg-icons/node_modules/universalify": { + "version": "2.0.1", + "resolved": "https://registry.npmmirror.com/universalify/-/universalify-2.0.1.tgz", + "integrity": "sha512-gptHNQghINnc/vTGIk0SOFGFNXw7JVrlRUtConJRlvaw6DuX0wO5Jeko9sWrMBhh+PsYAZ7oXAiOnf/UKogyiw==", + "license": "MIT", + "engines": { + "node": ">= 10.0.0" + } + }, + "node_modules/vue-template-compiler": { + "version": "2.7.16", + "resolved": "https://registry.npmjs.org/vue-template-compiler/-/vue-template-compiler-2.7.16.tgz", + "integrity": "sha512-AYbUWAJHLGGQM7+cNTELw+KsOG9nl2CnSv467WobS5Cv9uk3wFcnr1Etsz2sEIHEZvw1U+o9mRlEO6QbZvUPGQ==", + "dev": true, + "license": "MIT", + "dependencies": { + "de-indent": "^1.0.2", + "he": "^1.2.0" + } + }, + "node_modules/vue-tsc": { + "version": "1.8.27", + "resolved": "https://registry.npmjs.org/vue-tsc/-/vue-tsc-1.8.27.tgz", + "integrity": "sha512-WesKCAZCRAbmmhuGl3+VrdWItEvfoFIPXOvUJkjULi+x+6G/Dy69yO3TBRJDr9eUlmsNAwVmxsNZxvHKzbkKdg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@volar/typescript": "~1.11.1", + "@vue/language-core": "1.8.27", + "semver": "^7.5.4" + }, + "bin": { + "vue-tsc": "bin/vue-tsc.js" + }, + "peerDependencies": { + "typescript": "*" + } + }, + "node_modules/vue-tsc/node_modules/semver": { + "version": "7.6.3", + "resolved": "https://registry.npmjs.org/semver/-/semver-7.6.3.tgz", + "integrity": "sha512-oVekP1cKtI+CTDvHWYFUcMtsK/00wmAEfyqKfNdARm8u1wNVhSgaX7A8d4UuIlUI5e84iEwOhs7ZPYRmzU9U6A==", + "dev": true, + "license": "ISC", + "bin": { + "semver": "bin/semver.js" + }, + "engines": { + "node": ">=10" + } + }, + "node_modules/w3c-keyname": { + "version": "2.2.8", + "resolved": "https://registry.npmjs.org/w3c-keyname/-/w3c-keyname-2.2.8.tgz", + "integrity": "sha512-dpojBhNsCNN7T82Tm7k26A6G9ML3NkhDsnw9n/eoxSRlVBB4CEtIQ/KTCLI2Fwf3ataSXRhYFkQi3SlnFwPvPQ==", + "license": "MIT" + }, + "node_modules/web-streams-polyfill": { + "version": "4.0.0-beta.3", + "resolved": "https://registry.npmjs.org/web-streams-polyfill/-/web-streams-polyfill-4.0.0-beta.3.tgz", + "integrity": "sha512-QW95TCTaHmsYfHDybGMwO5IJIM93I/6vTRk+daHTWFPhwh+C8Cg7j7XyKrwrj8Ib6vYXe0ocYNrmzY4xAAN6ug==", + "license": "MIT", + "engines": { + "node": ">= 14" + } + }, + "node_modules/webidl-conversions": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/webidl-conversions/-/webidl-conversions-3.0.1.tgz", + "integrity": "sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==", + "license": "BSD-2-Clause" + }, + "node_modules/whatwg-url": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/whatwg-url/-/whatwg-url-5.0.0.tgz", + "integrity": "sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==", + "license": "MIT", + "dependencies": { + "tr46": "~0.0.3", + "webidl-conversions": "^3.0.0" + } + }, + "node_modules/which-boxed-primitive": { + "version": "1.1.0", + "resolved": "https://registry.npmmirror.com/which-boxed-primitive/-/which-boxed-primitive-1.1.0.tgz", + "integrity": "sha512-Ei7Miu/AXe2JJ4iNF5j/UphAgRoma4trE6PtisM09bPygb3egMH3YLW/befsWb1A1AxvNSFidOFTB18XtnIIng==", + "license": "MIT", + "dependencies": { + "is-bigint": "^1.1.0", + "is-boolean-object": "^1.2.0", + "is-number-object": "^1.1.0", + "is-string": "^1.1.0", + "is-symbol": "^1.1.0" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/which-builtin-type": { + "version": "1.2.0", + "resolved": "https://registry.npmmirror.com/which-builtin-type/-/which-builtin-type-1.2.0.tgz", + "integrity": "sha512-I+qLGQ/vucCby4tf5HsLmGueEla4ZhwTBSqaooS+Y0BuxN4Cp+okmGuV+8mXZ84KDI9BA+oklo+RzKg0ONdSUA==", + "license": "MIT", + "dependencies": { + "call-bind": "^1.0.7", + "function.prototype.name": "^1.1.6", + "has-tostringtag": "^1.0.2", + "is-async-function": "^2.0.0", + "is-date-object": "^1.0.5", + "is-finalizationregistry": "^1.1.0", + "is-generator-function": "^1.0.10", + "is-regex": "^1.1.4", + "is-weakref": "^1.0.2", + "isarray": "^2.0.5", + "which-boxed-primitive": "^1.0.2", + "which-collection": "^1.0.2", + "which-typed-array": "^1.1.15" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/which-collection": { + "version": "1.0.2", + "resolved": "https://registry.npmmirror.com/which-collection/-/which-collection-1.0.2.tgz", + "integrity": "sha512-K4jVyjnBdgvc86Y6BkaLZEN933SwYOuBFkdmBu9ZfkcAbdVbpITnDmjvZ/aQjRXQrv5EPkTnD1s39GiiqbngCw==", + "license": "MIT", + "dependencies": { + "is-map": "^2.0.3", + "is-set": "^2.0.3", + "is-weakmap": "^2.0.2", + "is-weakset": "^2.0.3" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/which-typed-array": { + "version": "1.1.16", + "resolved": "https://registry.npmmirror.com/which-typed-array/-/which-typed-array-1.1.16.tgz", + "integrity": "sha512-g+N+GAWiRj66DngFwHvISJd+ITsyphZvD1vChfVg6cEdnzy53GzB3oy0fUNlvhz7H7+MiqhYr26qxQShCpKTTQ==", + "license": "MIT", + "dependencies": { + "available-typed-arrays": "^1.0.7", + "call-bind": "^1.0.7", + "for-each": "^0.3.3", + "gopd": "^1.0.1", + "has-tostringtag": "^1.0.2" + }, + "engines": { + "node": ">= 0.4" + }, + "funding": { + "url": "https://github.com/sponsors/ljharb" + } + }, + "node_modules/yallist": { + "version": "4.0.0", + "resolved": "https://registry.npmjs.org/yallist/-/yallist-4.0.0.tgz", + "integrity": "sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==", + "dev": true, + "license": "ISC" + }, + "node_modules/z-schema": { + "version": "5.0.5", + "resolved": "https://registry.npmjs.org/z-schema/-/z-schema-5.0.5.tgz", + "integrity": "sha512-D7eujBWkLa3p2sIpJA0d1pr7es+a7m0vFAnZLlCEKq/Ij2k0MLi9Br2UPxoxdYystm5K1yeBGzub0FlYUEWj2Q==", + "dev": true, + "license": "MIT", + "dependencies": { + "lodash.get": "^4.4.2", + "lodash.isequal": "^4.5.0", + "validator": "^13.7.0" + }, + "bin": { + "z-schema": "bin/z-schema" + }, + "engines": { + "node": ">=8.0.0" + }, + "optionalDependencies": { + "commander": "^9.4.1" + } + }, + "node_modules/z-schema/node_modules/commander": { + "version": "9.5.0", + "resolved": "https://registry.npmjs.org/commander/-/commander-9.5.0.tgz", + "integrity": "sha512-KRs7WVDKg86PWiuAqhDrAQnTXZKraVcCc6vFdL14qrZ/DcWwuRo7VoiYXalXO7S5GKpqYiVEwCbgFDfxNHKJBQ==", + "dev": true, + "license": "MIT", + "optional": true, + "engines": { + "node": "^12.20.0 || >=14" + } + } + } +} diff --git a/package.json b/package.json new file mode 100644 index 0000000..8025043 --- /dev/null +++ b/package.json @@ -0,0 +1,115 @@ +{ + "name": "uai-editor", + "author": "wux-labs", + "version": "1.0.0", + "type": "module", + "keywords": [ + "editor", + "ai", + "uai editor" + ], + "main": "./dist/index.cjs", + "module": "./dist/index.js", + "types": "./dist/index.d.ts", + "exports": { + ".": { + "require": "./dist/index.cjs", + "import": "./dist/index.js", + "types": "./dist/index.d.ts" + }, + "./dist/style.css": { + "import": "./dist/style.css", + "require": "./dist/style.css" + } + }, + "files": [ + "dist", + "LICENSE", + "README.md" + ], + "scripts": { + "dev": "vite --host --open --force", + "build": "tsc && vite build", + "preview": "vite preview" + }, + "devDependencies": { + "@tiptap-pro/extension-export": "^2.16.1", + "@tiptap-pro/extension-mathematics": "^2.16.2", + "@tiptap-pro/extension-table-of-contents": "^2.17.0", + "@types/markdown-it": "^14.1.2", + "@types/markdown-it-container": "^2.0.10", + "@types/node": "^20.9.0", + "@types/turndown": "^5.0.5", + "less": "^4.2.0", + "typescript": "^5.0.2", + "vite": "^5.4.6", + "vite-plugin-dts": "^3.6.3" + }, + "dependencies": { + "@tiptap/core": "^2.10.3", + "@tiptap/extension-bubble-menu": "^2.10.3", + "@tiptap/extension-bullet-list": "^2.10.3", + "@tiptap/extension-character-count": "^2.10.3", + "@tiptap/extension-code-block-lowlight": "^2.10.3", + "@tiptap/extension-color": "^2.10.3", + "@tiptap/extension-font-family": "^2.10.3", + "@tiptap/extension-gapcursor": "^2.10.3", + "@tiptap/extension-heading": "^2.10.3", + "@tiptap/extension-highlight": "^2.10.3", + "@tiptap/extension-image": "^2.10.3", + "@tiptap/extension-link": "^2.10.3", + "@tiptap/extension-list-item": "^2.10.3", + "@tiptap/extension-mention": "^2.10.3", + "@tiptap/extension-placeholder": "^2.10.3", + "@tiptap/extension-subscript": "^2.10.3", + "@tiptap/extension-superscript": "^2.10.3", + "@tiptap/extension-table": "^2.10.3", + "@tiptap/extension-table-cell": "^2.10.3", + "@tiptap/extension-table-header": "^2.10.3", + "@tiptap/extension-table-row": "^2.10.3", + "@tiptap/extension-task-item": "^2.10.3", + "@tiptap/extension-task-list": "^2.10.3", + "@tiptap/extension-text-align": "^2.10.3", + "@tiptap/extension-text-style": "^2.10.3", + "@tiptap/extension-underline": "^2.10.3", + "@tiptap/pm": "^2.10.3", + "@tiptap/starter-kit": "^2.10.3", + "@tiptap/suggestion": "^2.10.3", + "@types/bootstrap": "^5.2.10", + "@types/evaluatex": "^2.2.8", + "@types/file-saver": "^2.0.7", + "@types/katex": "^0.16.7", + "@vscode/markdown-it-katex": "^1.1.0", + "bootstrap": "^5.3.3", + "crypto-js": "^4.2.0", + "dom-to-image-more": "^3.5.0", + "evaluatex": "^2.2.0", + "fast-glob": "^3.3.2", + "fetch-event-stream": "^0.1.5", + "file-saver": "^2.0.5", + "github-markdown-css": "^5.7.0", + "i18next": "^23.16.2", + "katex": "^0.16.11", + "lowlight": "^3.1.0", + "markdown-it": "^14.1.0", + "markdown-it-container": "^4.0.0", + "monaco-editor": "^0.52.2", + "openai": "^4.77.0", + "tippy.js": "^6.3.7", + "turndown": "^7.2.0", + "vite-plugin-svg-icons": "^2.0.1" + }, + "publishConfig": { + "access": "public", + "registry": "https://registry.npmjs.org/" + }, + "repository": { + "type": "git", + "url": "https://gitee.com/AI-Labs/uai-editor" + }, + "bugs": { + "url": "https://gitee.com/AI-Labs/uai-editor/issues" + }, + "homepage": "https://gitee.com/AI-Labs/uai-editor#readme", + "license": "MIT" +} diff --git a/src/ai/config/AIConfig.ts b/src/ai/config/AIConfig.ts index 2f3bbc9..009963a 100644 --- a/src/ai/config/AIConfig.ts +++ b/src/ai/config/AIConfig.ts @@ -1,5 +1,6 @@ // Copyright (c) 2024-present AI-Labs +// @ ts-nocheck /** * 模型对话的基本配置信息 */ diff --git a/src/assets/images/watermark-compact.png b/src/assets/images/watermark-compact.png new file mode 100644 index 0000000000000000000000000000000000000000..1fbabef88d51444c8e3a5bc4a5afa4ec29fc2a59 GIT binary patch literal 3767 zcmeHKdsGuw9u7W0UcOMEh;9t>v`J<{-V&)KD4~QR#3LdWCX<1TB$=252nfDV5l(Sc z2(YN@inwY$SXxoKJ^;nSc6|aaRw!CPM5XvxVO3PzJG{i6*5e<$`&V<$%-qL!zu$L% z_q#JUSz)0|>}_0ZC=`mlG)NK-o+fbpWzsls4@&T_0}pFm&EV(UO&7L=kr&Y;Z} zmq!{SWg$Y8&@d1sp}-g>jSiqG6hD8H4nY$zBUORL<605z(djB06<3OA%Q-SgrW0c- zJSbIQ76hSLNR#xx;1Cd`1yDUASSviCzZno+dD7?=d24D0<> zVuL(IhcUx31CgjlvA`ruYjhh4rc)6{!k{94L)&QgI|`NPXh2<}UOku|CCbFqmqItQ(sSfkhL@ zVV=-eAmni7Lwq3w4MAnV2};C>d>EKe;&CY-0+q>xQmw&=Xi-cm5z&As297I*EFQ{7 zP=zmDDd1srHi`)70#=-Wj`0)_%!T+c8$$bE(hWB**qHcZCo*-CiF5w39{=uwp}U~hv|tpTn#!5;Y$Lj(m*j6 z7I3+A76YbHm8dX|&}$H2HC%(lV@#bko-{s?0j3*-8^9{33~!|fY|U^7}9E;*3~ufA)cBX$4Yt5I3$$TTxoM!_~?371rdK zS3W(1E<-=f`{q#hp1wx1Uh{FWx%OlmUJ)_5@9LVbU$(=C=jMAIakJd*U;D(hGPJkn zjHgVT>LTx0WB;{8Ivai^DgQwo_+_!yNu!vZIq=QtsEg+7(=yU4T3)=^P#Yh4f^I(k z+`gzi!F=5*W0l9XXFDs8zR7Sg{4R_NgcAUCq zqTM(+13q3b-`gR>8(l3d?d)!1*gslPx$X-G_5NME;6m;Gl`(VTZtp$dp7t+Z>vH*v z;NaR=pRS9m_m-^DEA)oL;V$=l+?OF`%-f~-y!HEAo>|we{O5G{nF=VzZ_eUro}c;C z9=kmaao1SX+|F)_?U66YyVv&A9MzKU?uENKUuxX#+xFZda)C4`qQMa={L~w& zh|W59civQo%YDx3E8a6ain`%wQo`rXKR>vTofYR~cLUHLx81s;bUX?A`GMaCvbCup zT>EvWmv(4hS2%!?hbk`g6P_MLeg2Nk zSy^$S`UP{+K(tc-KE?QUp{WQlV75 pFBrJ^Zt%xXD@ul)P%&#gWn;z8Jg=9@e&kNO&e`Yt z_SxUQ_pEG7h+FDl=VFJ$;T)o)!V|%-3VbVVt-v*EUC?FlGff(mEXU#OXPds0aQn)g zaX4F75j#nd#ENAgn3x3fFfK|`iKPII!vzGXq%g7$Rp7a(KqO%j3{B?yr#43I#KDqy@yoFS1jR7`?7F9Y10hRFoH8KPLn zB!rj>;*(ej_%KX{;(bXF5rH5o-j7bA_|j;;kQbf`Q6VzqL#9xP6ki5JV^I9?mJb0` zlkxbB#PCQPIkcUhZlxE5@%<}LM zGMa&kL2fy~Qq26Mj4&ArD=--w!!pJjl`virPoy)t_%Ub{29@dw`7oD2v62mdF*b1VN+2nFK(J zBogr$eh`hugSZgUm&fxX()=NBBAts+i9SC5R3AQ_;?MJ=n|Xot;TV!>(!#WU%(y%Z z0XZi0WS|J2PxI!}i71cjPvrX3_(U%1ix7QyG`c^Ziy{;s|M6_`G7)%o;EcDknpp8b zMsIJJPUF&0(`r7E#`oqEVJ^%gQV|qFXnYEULRd;J#*ly8vp42oqbfx#oQ=xl z76n3K!5b~!;LMmfSPZ< ztN^!x?K9UT#mC31F7AC^c;JY{se}F4w)IMCFLi2x-}esRJ9D~H_pelog9kLOvDDdL zU2QpE^~_oBIh0>XxmwO}p+8adtpUe$VR|@n7RJ55!)F zx;p${bbhRE`Q#FNIBa>|g5E#n1;l1apfC3S`&o^y@qvHi=!5iKOE<-N6BFCn94uu_ruFyVQT4P}xPDmcIP&Qxz16jC#uuN&R5-ZYn!dyNd`sX+^hcbVVlZ^J zDihy&7@D3%3%$`a__f1szT^zM$ex?7d~SEf&|FS?}LW4%%P0{*z$ z&AaoaUvr{9`r4K)ck2G>Z|>Q>qJ523HMU&Nn>X`Tz>s6pcdH&7Do?u1 z!97h^3qs^4!XDx(j1Qa+Ch9lOxiaD%-tn1Rs=9gvcXi4`AtyMwesdJrLus~#inf*atzUE{rwygy z4Hc!F@nDWQi0JQ1&K#;ZGOTSs*gP=Yb;nMpoPS2iVdpxvY!GC&DVKvFE!XMd20>Mu z@^#me>RL05p;PYfT9T4))ZX79Xd8pA%5}P8UUL$x0fBadU~Zdo=2<0Yd2ZiNXX{JV zhK*;Gje$cIWy9K{V+KNwp{CqO`q~_Dvkf&3MpDtRHm2HO1%g^5>FBU_t=jMqz;+u+ zwPu(G%p5hwbv1>|H*|i-CmPavfB^G^n}Gnq_W2eW%+lC_VY4)zaglSDCADour&YV0 z^n$laP^reJP+ zN#x0bw)T?3x`NVDo)w*nMX!aUr~LvyuP4RR}$G!&~~fD2Govl5cw~= zU8n7l75~VemQq}(yEUuP%|U(6#Aonc-uXMTII&?lf1d9Jd-xpQQ`|Itcb&%NW=rML z6wR@wnR*)Rh49Z^E;qMYq?zvg3ohzq!ui{Ry#&+0 Ot>}oj@Y>KdpZ*6ZF{&&8 literal 0 HcmV?d00001 diff --git a/src/components/Editor.ts b/src/components/Editor.ts index 4a0e7eb..438fd11 100644 --- a/src/components/Editor.ts +++ b/src/components/Editor.ts @@ -2,6 +2,7 @@ // @ ts-nocheck import { EditorEvents } from "@tiptap/core"; + import { UAIEditorEventListener, UAIEditorOptions } from "../core/UAIEditor.ts"; /** diff --git a/src/components/Footer.ts b/src/components/Footer.ts index 6e826a0..a4f833c 100644 --- a/src/components/Footer.ts +++ b/src/components/Footer.ts @@ -2,6 +2,7 @@ // @ ts-nocheck import { EditorEvents } from "@tiptap/core"; + import { UAIEditorEventListener, UAIEditorOptions } from "../core/UAIEditor.ts"; import { ToggleToc } from "./menus/toolbar/page/ToggleToc"; diff --git a/src/components/Header.ts b/src/components/Header.ts index 86bce45..75e0096 100644 --- a/src/components/Header.ts +++ b/src/components/Header.ts @@ -1,17 +1,20 @@ // Copyright (c) 2024-present AI-Labs // @ ts-nocheck +import { EditorEvents } from "@tiptap/core"; + import { t } from "i18next"; +import tippy, { Instance, Props } from "tippy.js"; + +import { InnerEditor, UAIEditorEventListener, UAIEditorOptions } from "../core/UAIEditor.ts"; +import { Ribbon } from "./menus/toolbar/Ribbon.ts"; +import { Classic } from "./menus/toolbar/Classic.ts"; + import expandDownIcon from "../assets/icons/expand-down.svg"; import toolbarRibbon from "../assets/icons/toolbar-ribbon.svg"; import toolbarClassic from "../assets/icons/toolbar-classic.svg"; import toolbarSource from "../assets/icons/toolbar-source.svg"; import codeblock from "../assets/icons/codeblock.svg"; -import { Ribbon } from "./menus/toolbar/Ribbon"; -import { Classic } from "./menus/toolbar/Classic"; -import { InnerEditor, UAIEditorEventListener, UAIEditorOptions } from "../core/UAIEditor.ts"; -import { EditorEvents } from "@tiptap/core"; -import tippy, { Instance, Props } from "tippy.js"; /** * 文档顶部菜单栏 diff --git a/src/components/Icons.ts b/src/components/Icons.ts index 3bdc54e..e3f1cf0 100644 --- a/src/components/Icons.ts +++ b/src/components/Icons.ts @@ -1,5 +1,6 @@ // Copyright (c) 2024-present AI-Labs +// @ ts-nocheck /** * 定义常用的图标 */ diff --git a/src/components/ai/AIAction.ts b/src/components/ai/AIAction.ts index 9b67a42..db50fb6 100644 --- a/src/components/ai/AIAction.ts +++ b/src/components/ai/AIAction.ts @@ -3,15 +3,17 @@ // @ ts-nocheck import { Editor, EditorEvents } from "@tiptap/core"; import { Slice } from "@tiptap/pm/model"; -import iconTask from "../../assets/icons/task-list.svg"; -import { Icons } from "../Icons"; -import { AICommand } from "../../ai/config/AIConfig"; +import tippy, { Instance, Props } from "tippy.js"; +import { t } from "i18next"; + import { InnerEditor, UAIEditorEventListener, UAIEditorOptions } from "../../core/UAIEditor"; import { markdownToHtml } from "../../utils/MarkdownUtil"; -import { t } from "i18next"; import { MenuButton, MenuButtonOptions } from "../menus/MenuButton"; -import tippy, { Instance, Props } from "tippy.js"; +import { AICommand } from "../../ai/config/AIConfig"; +import { Icons } from "../Icons"; + +import iconTask from "../../assets/icons/task-list.svg"; /** * 抽象AI Action类 diff --git a/src/components/containers/ChatContainer.ts b/src/components/containers/ChatContainer.ts index cdb581a..5ec3064 100644 --- a/src/components/containers/ChatContainer.ts +++ b/src/components/containers/ChatContainer.ts @@ -1,19 +1,21 @@ // Copyright (c) 2024-present AI-Labs // @ ts-nocheck -import closeIcon from "../../assets/icons/close.svg"; -import titleIcon from "../../assets/icons/chat-bot.svg"; -import sendIcon from "../../assets/icons/send-message.svg"; -import { t } from "i18next"; -import { UAIEditorEventListener, UAIEditorOptions } from "../../core/UAIEditor.ts"; import { EditorEvents } from "@tiptap/core"; +import OpenAI from "openai"; +import { t } from "i18next"; + +import { UAIEditorEventListener, UAIEditorOptions } from "../../core/UAIEditor.ts"; import { createAvatar } from "../../utils/CreateAvatar.ts"; import { Icons } from "../Icons.ts"; -import OpenAI from "openai"; import { AIChatConfig } from "../../ai/config/AIConfig.ts"; import { markdownToHtml } from "../../utils/MarkdownUtil.ts"; import { AIRequestAction, AIChatResponseAction } from "../ai/AIAction.ts"; +import closeIcon from "../../assets/icons/close.svg"; +import titleIcon from "../../assets/icons/chat-bot.svg"; +import sendIcon from "../../assets/icons/send-message.svg"; + /** * 定义聊天对话界面的容器 */ diff --git a/src/components/containers/ImageContainer.ts b/src/components/containers/ImageContainer.ts index 42dd8f7..c1684a9 100644 --- a/src/components/containers/ImageContainer.ts +++ b/src/components/containers/ImageContainer.ts @@ -1,19 +1,22 @@ // Copyright (c) 2024-present AI-Labs // @ ts-nocheck -import closeIcon from "../../assets/icons/close.svg"; -import titleIcon from "../../assets/icons/image-bot.svg"; -import sendIcon from "../../assets/icons/send-message.svg"; -import { t } from "i18next"; -import { UAIEditorEventListener, UAIEditorOptions } from "../../core/UAIEditor.ts"; import { EditorEvents } from "@tiptap/core"; + +import { t } from "i18next"; +import OpenAI from "openai"; + +import { UAIEditorEventListener, UAIEditorOptions } from "../../core/UAIEditor.ts"; import { createAvatar } from "../../utils/CreateAvatar.ts"; import { Icons } from "../Icons.ts"; -import OpenAI from "openai"; import { AIChatConfig } from "../../ai/config/AIConfig.ts"; import { markdownToHtml } from "../../utils/MarkdownUtil.ts"; import { AIRequestAction, AIImageResponseAction } from "../ai/AIAction.ts"; +import closeIcon from "../../assets/icons/close.svg"; +import titleIcon from "../../assets/icons/image-bot.svg"; +import sendIcon from "../../assets/icons/send-message.svg"; + /** * 定义图像处理容器 */ diff --git a/src/components/containers/TocContainer.ts b/src/components/containers/TocContainer.ts index f9a5537..483e85a 100644 --- a/src/components/containers/TocContainer.ts +++ b/src/components/containers/TocContainer.ts @@ -1,13 +1,16 @@ // Copyright (c) 2024-present AI-Labs // @ ts-nocheck -import closeIcon from "../../assets/icons/close.svg"; -import titleIcon from "../../assets/icons/toc.svg"; -import { t } from "i18next"; -import { UAIEditor, UAIEditorEventListener, UAIEditorOptions } from "../../core/UAIEditor.ts"; import { EditorEvents } from "@tiptap/core"; import { TextSelection } from "@tiptap/pm/state"; +import { t } from "i18next"; + +import { UAIEditor, UAIEditorEventListener, UAIEditorOptions } from "../../core/UAIEditor.ts"; + +import closeIcon from "../../assets/icons/close.svg"; +import titleIcon from "../../assets/icons/toc.svg"; + /** * 定义文档大纲容器 */ diff --git a/src/components/index.ts b/src/components/index.ts index 4d06161..a858b51 100644 --- a/src/components/index.ts +++ b/src/components/index.ts @@ -1,6 +1,8 @@ // Copyright (c) 2024-present AI-Labs +// @ ts-nocheck import { defineCustomElement } from "../utils/DefineCustomElement.ts"; + import { Header } from "../components/Header.ts"; import { Editor } from "../components/Editor.ts"; import { Footer } from "../components/Footer.ts"; diff --git a/src/components/menus/MenuButton.ts b/src/components/menus/MenuButton.ts index d508736..7e38cc3 100644 --- a/src/components/menus/MenuButton.ts +++ b/src/components/menus/MenuButton.ts @@ -2,8 +2,10 @@ // @ ts-nocheck import { EditorEvents } from "@tiptap/core"; -import { UAIEditorEventListener, UAIEditorOptions } from "../../core/UAIEditor.ts"; + import tippy, { Instance, Props } from "tippy.js"; + +import { UAIEditorEventListener, UAIEditorOptions } from "../../core/UAIEditor.ts"; import { Icons } from "../Icons.ts"; /** diff --git a/src/components/menus/bubble/AudioBubbleMenu.ts b/src/components/menus/bubble/AudioBubbleMenu.ts index d736613..9185ed9 100644 --- a/src/components/menus/bubble/AudioBubbleMenu.ts +++ b/src/components/menus/bubble/AudioBubbleMenu.ts @@ -2,6 +2,7 @@ // @ ts-nocheck import { EditorEvents } from "@tiptap/core"; + import { UAIEditorEventListener, UAIEditor, UAIEditorOptions } from "../../../core/UAIEditor.ts"; import { AlignLeft } from "../common/AlignLeft.ts"; diff --git a/src/components/menus/bubble/BubbleMenuPlugin.ts b/src/components/menus/bubble/BubbleMenuPlugin.ts index ea2da3e..296525c 100644 --- a/src/components/menus/bubble/BubbleMenuPlugin.ts +++ b/src/components/menus/bubble/BubbleMenuPlugin.ts @@ -1,10 +1,12 @@ // Copyright (c) 2024-present AI-Labs +// @ ts-nocheck import { Editor, isNodeSelection, posToDOMRect, } from '@tiptap/core' import { EditorState, Plugin, PluginKey } from '@tiptap/pm/state' import { EditorView } from '@tiptap/pm/view' + import tippy, { Instance, Props } from 'tippy.js' export type BubbleMenuPluginOptions = { diff --git a/src/components/menus/bubble/ImageBubbleMenu.ts b/src/components/menus/bubble/ImageBubbleMenu.ts index e7e64dc..c685b15 100644 --- a/src/components/menus/bubble/ImageBubbleMenu.ts +++ b/src/components/menus/bubble/ImageBubbleMenu.ts @@ -2,6 +2,7 @@ // @ ts-nocheck import { EditorEvents } from "@tiptap/core"; + import { UAIEditorEventListener, UAIEditor, UAIEditorOptions } from "../../../core/UAIEditor"; import { AlignLeft } from "../common/AlignLeft.ts"; diff --git a/src/components/menus/bubble/TextSelectionBubbleMenu.ts b/src/components/menus/bubble/TextSelectionBubbleMenu.ts index a03dee0..7fa8fd6 100644 --- a/src/components/menus/bubble/TextSelectionBubbleMenu.ts +++ b/src/components/menus/bubble/TextSelectionBubbleMenu.ts @@ -2,7 +2,9 @@ // @ ts-nocheck import { EditorEvents } from "@tiptap/core"; + import { UAIEditor, UAIEditorEventListener, UAIEditorOptions } from "../../../core/UAIEditor"; + import { Bold } from "../common/Bold"; import { FontSizeDecrease } from "../common/FontSizeDecrease"; import { FontSizeIncrease } from "../common/FontSizeIncrease"; diff --git a/src/components/menus/bubble/VideoBubbleMenu.ts b/src/components/menus/bubble/VideoBubbleMenu.ts index 614e15d..aff5a74 100644 --- a/src/components/menus/bubble/VideoBubbleMenu.ts +++ b/src/components/menus/bubble/VideoBubbleMenu.ts @@ -2,6 +2,7 @@ // @ ts-nocheck import { EditorEvents } from "@tiptap/core"; + import { UAIEditorEventListener, UAIEditor, UAIEditorOptions } from "../../../core/UAIEditor.ts"; import { AlignLeft } from "../common/AlignLeft.ts"; diff --git a/src/components/menus/bubble/image/ImageFlipX.ts b/src/components/menus/bubble/image/ImageFlipX.ts index ea2efad..bc13d31 100644 --- a/src/components/menus/bubble/image/ImageFlipX.ts +++ b/src/components/menus/bubble/image/ImageFlipX.ts @@ -1,13 +1,14 @@ // Copyright (c) 2024-present AI-Labs // @ ts-nocheck -import { MenuButton, MenuButtonOptions } from "../../MenuButton.ts"; -import icon from "../../../../assets/icons/image-flip-x.svg"; -import { t } from "i18next"; -import { UAIEditorEventListener, UAIEditorOptions } from "../../../../core/UAIEditor.ts"; import { EditorEvents } from "@tiptap/core"; + +import { UAIEditorEventListener, UAIEditorOptions } from "../../../../core/UAIEditor.ts"; +import { MenuButton, MenuButtonOptions } from "../../MenuButton.ts"; import { getSelectionNode } from "../../../../extensions/Selection.ts"; +import icon from "../../../../assets/icons/image-flip-x.svg"; + /** * 定义垂直翻转功能 */ diff --git a/src/components/menus/bubble/image/ImageFlipY.ts b/src/components/menus/bubble/image/ImageFlipY.ts index 616f00e..eaca4dd 100644 --- a/src/components/menus/bubble/image/ImageFlipY.ts +++ b/src/components/menus/bubble/image/ImageFlipY.ts @@ -1,13 +1,14 @@ // Copyright (c) 2024-present AI-Labs // @ ts-nocheck -import { MenuButton, MenuButtonOptions } from "../../MenuButton.ts"; -import icon from "../../../../assets/icons/image-flip.svg"; -import { t } from "i18next"; -import { UAIEditorEventListener, UAIEditorOptions } from "../../../../core/UAIEditor.ts"; import { EditorEvents } from "@tiptap/core"; + +import { UAIEditorEventListener, UAIEditorOptions } from "../../../../core/UAIEditor.ts"; +import { MenuButton, MenuButtonOptions } from "../../MenuButton.ts"; import { getSelectionNode } from "../../../../extensions/Selection.ts"; +import icon from "../../../../assets/icons/image-flip.svg"; + /** * 定义水平翻转功能 */ diff --git a/src/components/menus/common/AlignCenter.ts b/src/components/menus/common/AlignCenter.ts index e6b98e6..d4b0347 100644 --- a/src/components/menus/common/AlignCenter.ts +++ b/src/components/menus/common/AlignCenter.ts @@ -1,12 +1,15 @@ // Copyright (c) 2024-present AI-Labs // @ ts-nocheck -import { MenuButton, MenuButtonOptions } from "../MenuButton.ts"; -import icon from "../../../assets/icons/align-center.svg"; -import { t } from "i18next"; -import { UAIEditorEventListener, UAIEditorOptions } from "../../../core/UAIEditor.ts"; import { EditorEvents } from "@tiptap/core"; +import { t } from "i18next"; + +import { UAIEditorEventListener, UAIEditorOptions } from "../../../core/UAIEditor.ts"; +import { MenuButton, MenuButtonOptions } from "../MenuButton.ts"; + +import icon from "../../../assets/icons/align-center.svg"; + /** * 公共菜单:居中对齐 */ diff --git a/src/components/menus/common/AlignDistributed.ts b/src/components/menus/common/AlignDistributed.ts index 77422d1..8931447 100644 --- a/src/components/menus/common/AlignDistributed.ts +++ b/src/components/menus/common/AlignDistributed.ts @@ -1,12 +1,15 @@ // Copyright (c) 2024-present AI-Labs // @ ts-nocheck -import { MenuButton, MenuButtonOptions } from "../MenuButton.ts"; -import icon from "../../../assets/icons/align-distributed.svg"; -import { t } from "i18next"; -import { UAIEditorEventListener, UAIEditorOptions } from "../../../core/UAIEditor.ts"; import { EditorEvents } from "@tiptap/core"; +import { t } from "i18next"; + +import { UAIEditorEventListener, UAIEditorOptions } from "../../../core/UAIEditor.ts"; +import { MenuButton, MenuButtonOptions } from "../MenuButton.ts"; + +import icon from "../../../assets/icons/align-distributed.svg"; + /** * 公共菜单:分散对齐 */ diff --git a/src/components/menus/common/AlignJustify.ts b/src/components/menus/common/AlignJustify.ts index 7ee3f01..e856c78 100644 --- a/src/components/menus/common/AlignJustify.ts +++ b/src/components/menus/common/AlignJustify.ts @@ -1,12 +1,15 @@ // Copyright (c) 2024-present AI-Labs // @ ts-nocheck -import { MenuButton, MenuButtonOptions } from "../MenuButton.ts"; -import icon from "../../../assets/icons/align-justify.svg"; -import { t } from "i18next"; -import { UAIEditorEventListener, UAIEditorOptions } from "../../../core/UAIEditor.ts"; import { EditorEvents } from "@tiptap/core"; +import { t } from "i18next"; + +import { UAIEditorEventListener, UAIEditorOptions } from "../../../core/UAIEditor.ts"; +import { MenuButton, MenuButtonOptions } from "../MenuButton.ts"; + +import icon from "../../../assets/icons/align-justify.svg"; + /** * 公共菜单:两端对齐 */ diff --git a/src/components/menus/common/AlignLeft.ts b/src/components/menus/common/AlignLeft.ts index 220ed6a..d8c6561 100644 --- a/src/components/menus/common/AlignLeft.ts +++ b/src/components/menus/common/AlignLeft.ts @@ -1,12 +1,15 @@ // Copyright (c) 2024-present AI-Labs // @ ts-nocheck -import { MenuButton, MenuButtonOptions } from "../MenuButton.ts"; -import icon from "../../../assets/icons/align-left.svg"; -import { t } from "i18next"; -import { UAIEditorEventListener, UAIEditorOptions } from "../../../core/UAIEditor.ts"; import { EditorEvents } from "@tiptap/core"; +import { t } from "i18next"; + +import { UAIEditorEventListener, UAIEditorOptions } from "../../../core/UAIEditor.ts"; +import { MenuButton, MenuButtonOptions } from "../MenuButton.ts"; + +import icon from "../../../assets/icons/align-left.svg"; + /** * 公共菜单:左对齐 */ diff --git a/src/components/menus/common/AlignRight.ts b/src/components/menus/common/AlignRight.ts index 2748db4..b48b201 100644 --- a/src/components/menus/common/AlignRight.ts +++ b/src/components/menus/common/AlignRight.ts @@ -1,12 +1,15 @@ // Copyright (c) 2024-present AI-Labs // @ ts-nocheck -import { MenuButton, MenuButtonOptions } from "../MenuButton.ts"; -import icon from "../../../assets/icons/align-right.svg"; -import { t } from "i18next"; -import { UAIEditorEventListener, UAIEditorOptions } from "../../../core/UAIEditor.ts"; import { EditorEvents } from "@tiptap/core"; +import { t } from "i18next"; + +import { UAIEditorEventListener, UAIEditorOptions } from "../../../core/UAIEditor.ts"; +import { MenuButton, MenuButtonOptions } from "../MenuButton.ts"; + +import icon from "../../../assets/icons/align-right.svg"; + /** * 公共菜单:右对齐 */ diff --git a/src/components/menus/common/Bold.ts b/src/components/menus/common/Bold.ts index 2e34229..3d52a74 100644 --- a/src/components/menus/common/Bold.ts +++ b/src/components/menus/common/Bold.ts @@ -1,12 +1,15 @@ // Copyright (c) 2024-present AI-Labs // @ ts-nocheck -import { MenuButton, MenuButtonOptions } from "../MenuButton.ts"; -import icon from "../../../assets/icons/bold.svg"; -import { t } from "i18next"; -import { UAIEditorEventListener, UAIEditorOptions } from "../../../core/UAIEditor.ts"; import { EditorEvents } from "@tiptap/core"; +import { t } from "i18next"; + +import { UAIEditorEventListener, UAIEditorOptions } from "../../../core/UAIEditor.ts"; +import { MenuButton, MenuButtonOptions } from "../MenuButton.ts"; + +import icon from "../../../assets/icons/bold.svg"; + /** * 公共菜单:粗体 */ diff --git a/src/components/menus/common/FontColor.ts b/src/components/menus/common/FontColor.ts index 6a8ba19..06294db 100644 --- a/src/components/menus/common/FontColor.ts +++ b/src/components/menus/common/FontColor.ts @@ -1,14 +1,17 @@ // Copyright (c) 2024-present AI-Labs // @ ts-nocheck -import { MenuButton, MenuButtonOptions } from "../MenuButton.ts"; -import icon from "../../../assets/icons/color.svg"; -import { t } from "i18next"; -import { InnerEditor, UAIEditorEventListener, UAIEditorOptions } from "../../../core/UAIEditor.ts"; import { EditorEvents } from "@tiptap/core"; -import tippy, { Instance, Props } from "tippy.js"; + +import tippy from "tippy.js"; +import { t } from "i18next"; + +import { UAIEditorEventListener, UAIEditorOptions } from "../../../core/UAIEditor.ts"; +import { MenuButton, MenuButtonOptions } from "../MenuButton.ts"; import { ColorPicker } from "../../popups/ColorPicker.ts"; +import icon from "../../../assets/icons/color.svg"; + /** * 公共菜单:设置字体颜色 */ diff --git a/src/components/menus/common/FontSizeDecrease.ts b/src/components/menus/common/FontSizeDecrease.ts index 01d9628..80a0380 100644 --- a/src/components/menus/common/FontSizeDecrease.ts +++ b/src/components/menus/common/FontSizeDecrease.ts @@ -1,12 +1,15 @@ // Copyright (c) 2024-present AI-Labs // @ ts-nocheck -import { MenuButton, MenuButtonOptions } from "../MenuButton.ts"; -import icon from "../../../assets/icons/font-size-decrease.svg"; -import { t } from "i18next"; -import { UAIEditorEventListener, UAIEditorOptions } from "../../../core/UAIEditor.ts"; import { EditorEvents } from "@tiptap/core"; +import { t } from "i18next"; + +import { UAIEditorEventListener, UAIEditorOptions } from "../../../core/UAIEditor.ts"; +import { MenuButton, MenuButtonOptions } from "../MenuButton.ts"; + +import icon from "../../../assets/icons/font-size-decrease.svg"; + /** * 公共菜单:减小字号 */ diff --git a/src/components/menus/common/FontSizeIncrease.ts b/src/components/menus/common/FontSizeIncrease.ts index 8869fdc..377dc1d 100644 --- a/src/components/menus/common/FontSizeIncrease.ts +++ b/src/components/menus/common/FontSizeIncrease.ts @@ -1,12 +1,15 @@ // Copyright (c) 2024-present AI-Labs // @ ts-nocheck -import { MenuButton, MenuButtonOptions } from "../MenuButton.ts"; -import icon from "../../../assets/icons/font-size-increase.svg"; -import { t } from "i18next"; -import { UAIEditorEventListener, UAIEditorOptions } from "../../../core/UAIEditor.ts"; import { EditorEvents } from "@tiptap/core"; +import { t } from "i18next"; + +import { UAIEditorEventListener, UAIEditorOptions } from "../../../core/UAIEditor.ts"; +import { MenuButton, MenuButtonOptions } from "../MenuButton.ts"; + +import icon from "../../../assets/icons/font-size-increase.svg"; + /** * 公共菜单:增大字号 */ diff --git a/src/components/menus/common/Highlight.ts b/src/components/menus/common/Highlight.ts index b466fbb..b852470 100644 --- a/src/components/menus/common/Highlight.ts +++ b/src/components/menus/common/Highlight.ts @@ -1,14 +1,17 @@ // Copyright (c) 2024-present AI-Labs // @ ts-nocheck -import { MenuButton, MenuButtonOptions } from "../MenuButton.ts"; -import icon from "../../../assets/icons/highlight.svg"; -import { t } from "i18next"; -import { UAIEditorEventListener, UAIEditorOptions } from "../../../core/UAIEditor.ts"; import { EditorEvents } from "@tiptap/core"; + import tippy from "tippy.js"; +import { t } from "i18next"; + +import { UAIEditorEventListener, UAIEditorOptions } from "../../../core/UAIEditor.ts"; +import { MenuButton, MenuButtonOptions } from "../MenuButton.ts"; import { ColorPicker } from "../../popups/ColorPicker.ts"; +import icon from "../../../assets/icons/highlight.svg"; + /** * 公共菜单:高亮 */ diff --git a/src/components/menus/common/Italic.ts b/src/components/menus/common/Italic.ts index 3306996..0cb3837 100644 --- a/src/components/menus/common/Italic.ts +++ b/src/components/menus/common/Italic.ts @@ -1,12 +1,15 @@ // Copyright (c) 2024-present AI-Labs // @ ts-nocheck -import { MenuButton, MenuButtonOptions } from "../MenuButton.ts"; -import icon from "../../../assets/icons/italic.svg"; -import { t } from "i18next"; -import { UAIEditorEventListener, UAIEditorOptions } from "../../../core/UAIEditor.ts"; import { EditorEvents } from "@tiptap/core"; +import { t } from "i18next"; + +import { UAIEditorEventListener, UAIEditorOptions } from "../../../core/UAIEditor.ts"; +import { MenuButton, MenuButtonOptions } from "../MenuButton.ts"; + +import icon from "../../../assets/icons/italic.svg"; + /** * 公共菜单:斜体 */ diff --git a/src/components/menus/common/NodeDelete.ts b/src/components/menus/common/NodeDelete.ts index 950550b..66fe09c 100644 --- a/src/components/menus/common/NodeDelete.ts +++ b/src/components/menus/common/NodeDelete.ts @@ -1,12 +1,15 @@ // Copyright (c) 2024-present AI-Labs // @ ts-nocheck -import { MenuButton, MenuButtonOptions } from "../MenuButton.ts"; -import icon from "../../../assets/icons/node-delete.svg"; -import { t } from "i18next"; -import { UAIEditorEventListener, UAIEditorOptions } from "../../../core/UAIEditor.ts"; import { EditorEvents } from "@tiptap/core"; +import { t } from "i18next"; + +import { UAIEditorEventListener, UAIEditorOptions } from "../../../core/UAIEditor.ts"; +import { MenuButton, MenuButtonOptions } from "../MenuButton.ts"; + +import icon from "../../../assets/icons/node-delete.svg"; + /** * 公共菜单:删除节点 */ diff --git a/src/components/menus/common/Strike.ts b/src/components/menus/common/Strike.ts index d1c489b..9cb4c40 100644 --- a/src/components/menus/common/Strike.ts +++ b/src/components/menus/common/Strike.ts @@ -1,12 +1,15 @@ // Copyright (c) 2024-present AI-Labs // @ ts-nocheck -import { MenuButton, MenuButtonOptions } from "../MenuButton.ts"; -import icon from "../../../assets/icons/strike.svg"; -import { t } from "i18next"; -import { UAIEditorEventListener, UAIEditorOptions } from "../../../core/UAIEditor.ts"; import { EditorEvents } from "@tiptap/core"; +import { t } from "i18next"; + +import { UAIEditorEventListener, UAIEditorOptions } from "../../../core/UAIEditor.ts"; +import { MenuButton, MenuButtonOptions } from "../MenuButton.ts"; + +import icon from "../../../assets/icons/strike.svg"; + /** * 公共菜单:删除线 */ diff --git a/src/components/menus/common/Subscript.ts b/src/components/menus/common/Subscript.ts index f7e854b..3c53b81 100644 --- a/src/components/menus/common/Subscript.ts +++ b/src/components/menus/common/Subscript.ts @@ -1,12 +1,15 @@ // Copyright (c) 2024-present AI-Labs // @ ts-nocheck -import { MenuButton, MenuButtonOptions } from "../MenuButton.ts"; -import icon from "../../../assets/icons/subscript.svg"; -import { t } from "i18next"; -import { UAIEditorEventListener, UAIEditorOptions } from "../../../core/UAIEditor.ts"; import { EditorEvents } from "@tiptap/core"; +import { t } from "i18next"; + +import { UAIEditorEventListener, UAIEditorOptions } from "../../../core/UAIEditor.ts"; +import { MenuButton, MenuButtonOptions } from "../MenuButton.ts"; + +import icon from "../../../assets/icons/subscript.svg"; + /** * 公共菜单:设置下标 */ diff --git a/src/components/menus/common/Superscript.ts b/src/components/menus/common/Superscript.ts index 7d2b5e0..2c2e53f 100644 --- a/src/components/menus/common/Superscript.ts +++ b/src/components/menus/common/Superscript.ts @@ -1,12 +1,15 @@ // Copyright (c) 2024-present AI-Labs // @ ts-nocheck -import { MenuButton, MenuButtonOptions } from "../MenuButton.ts"; -import icon from "../../../assets/icons/superscript.svg"; -import { t } from "i18next"; -import { UAIEditorEventListener, UAIEditorOptions } from "../../../core/UAIEditor.ts"; import { EditorEvents } from "@tiptap/core"; +import { t } from "i18next"; + +import { UAIEditorEventListener, UAIEditorOptions } from "../../../core/UAIEditor.ts"; +import { MenuButton, MenuButtonOptions } from "../MenuButton.ts"; + +import icon from "../../../assets/icons/superscript.svg"; + /** * 公共菜单:设置上标 */ diff --git a/src/components/menus/common/Underline.ts b/src/components/menus/common/Underline.ts index 35a0ce9..3118015 100644 --- a/src/components/menus/common/Underline.ts +++ b/src/components/menus/common/Underline.ts @@ -1,12 +1,15 @@ // Copyright (c) 2024-present AI-Labs // @ ts-nocheck -import { MenuButton, MenuButtonOptions } from "../MenuButton.ts"; -import icon from "../../../assets/icons/underline.svg"; -import { t } from "i18next"; -import { UAIEditorEventListener, UAIEditorOptions } from "../../../core/UAIEditor.ts"; import { EditorEvents } from "@tiptap/core"; +import { t } from "i18next"; + +import { UAIEditorEventListener, UAIEditorOptions } from "../../../core/UAIEditor.ts"; +import { MenuButton, MenuButtonOptions } from "../MenuButton.ts"; + +import icon from "../../../assets/icons/underline.svg"; + /** * 公共菜单:添加下划线 */ diff --git a/src/components/menus/statusbar/CharacterCount.ts b/src/components/menus/statusbar/CharacterCount.ts index 416de08..88fa99d 100644 --- a/src/components/menus/statusbar/CharacterCount.ts +++ b/src/components/menus/statusbar/CharacterCount.ts @@ -1,10 +1,12 @@ // Copyright (c) 2024-present AI-Labs // @ ts-nocheck -import { t } from "i18next"; -import { UAIEditorEventListener, UAIEditorOptions } from "../../../core/UAIEditor.ts"; import { EditorEvents } from "@tiptap/core"; + import tippy, { Instance, Props } from "tippy.js"; +import { t } from "i18next"; + +import { UAIEditorEventListener, UAIEditorOptions } from "../../../core/UAIEditor.ts"; /** * 状态栏菜单:字数统计 diff --git a/src/components/menus/statusbar/Feedback.ts b/src/components/menus/statusbar/Feedback.ts index 9945ba9..6e02df3 100644 --- a/src/components/menus/statusbar/Feedback.ts +++ b/src/components/menus/statusbar/Feedback.ts @@ -1,12 +1,15 @@ // Copyright (c) 2024-present AI-Labs // @ ts-nocheck -import { MenuButton, MenuButtonOptions } from "../MenuButton.ts"; -import icon from "../../../assets/icons/message.svg"; -import { t } from "i18next"; -import { UAIEditorEventListener, UAIEditorOptions } from "../../../core/UAIEditor.ts"; import { EditorEvents } from "@tiptap/core"; +import { t } from "i18next"; + +import { UAIEditorEventListener, UAIEditorOptions } from "../../../core/UAIEditor.ts"; +import { MenuButton, MenuButtonOptions } from "../MenuButton.ts"; + +import icon from "../../../assets/icons/message.svg"; + /** * 状态栏菜单:问题与建议 */ diff --git a/src/components/menus/statusbar/Fullscreen.ts b/src/components/menus/statusbar/Fullscreen.ts index 0574cf6..104c514 100644 --- a/src/components/menus/statusbar/Fullscreen.ts +++ b/src/components/menus/statusbar/Fullscreen.ts @@ -1,12 +1,15 @@ // Copyright (c) 2024-present AI-Labs // @ ts-nocheck +import { EditorEvents } from "@tiptap/core"; + +import { t } from "i18next"; + +import { InnerEditor, UAIEditorEventListener, UAIEditorOptions } from "../../../core/UAIEditor.ts"; import { MenuButton, MenuButtonOptions } from "../MenuButton.ts"; + import fullIcon from "../../../assets/icons/full-screen.svg"; import exitIcon from "../../../assets/icons/full-screen-exit.svg"; -import { t } from "i18next"; -import { InnerEditor, UAIEditorEventListener, UAIEditorOptions } from "../../../core/UAIEditor.ts"; -import { EditorEvents } from "@tiptap/core"; /** * 状态栏菜单:全屏 diff --git a/src/components/menus/statusbar/PoweredBy.ts b/src/components/menus/statusbar/PoweredBy.ts index 2596dce..5f9ba14 100644 --- a/src/components/menus/statusbar/PoweredBy.ts +++ b/src/components/menus/statusbar/PoweredBy.ts @@ -1,12 +1,15 @@ // Copyright (c) 2024-present AI-Labs // @ ts-nocheck -import { MenuButton, MenuButtonOptions } from "../MenuButton.ts"; -import icon from "../../../assets/icons/home-page.svg"; -import { t } from "i18next"; -import { UAIEditorEventListener, UAIEditorOptions } from "../../../core/UAIEditor.ts"; import { EditorEvents } from "@tiptap/core"; +import { t } from "i18next"; + +import { UAIEditorEventListener, UAIEditorOptions } from "../../../core/UAIEditor.ts"; +import { MenuButton, MenuButtonOptions } from "../MenuButton.ts"; + +import icon from "../../../assets/icons/home-page.svg"; + /** * 状态栏菜单:技术支持 */ diff --git a/src/components/menus/toolbar/Classic.ts b/src/components/menus/toolbar/Classic.ts index 4927e94..114024e 100644 --- a/src/components/menus/toolbar/Classic.ts +++ b/src/components/menus/toolbar/Classic.ts @@ -2,9 +2,9 @@ // @ ts-nocheck import { EditorEvents } from "@tiptap/core"; + import { UAIEditorEventListener, UAIEditorOptions } from "../../../core/UAIEditor.ts"; -import menuIcon from "../../../assets/icons/menu.svg"; import { ScrollableDiv } from "./ScrollableDiv.ts"; import { FontSizeIncrease } from "../common/FontSizeIncrease.ts"; @@ -80,6 +80,8 @@ import { ExportImage } from "./export/ExportImage.ts"; import { ToggleChat } from "./ai/ToggleChat.ts"; import { ToggleImage } from "./ai/ToggleImage.ts"; +import menuIcon from "../../../assets/icons/menu.svg"; + /** * 传统菜单栏 */ diff --git a/src/components/menus/toolbar/Ribbon.ts b/src/components/menus/toolbar/Ribbon.ts index a1f2946..c3beb1e 100644 --- a/src/components/menus/toolbar/Ribbon.ts +++ b/src/components/menus/toolbar/Ribbon.ts @@ -2,9 +2,10 @@ // @ ts-nocheck import { EditorEvents } from "@tiptap/core"; -import { UAIEditorEventListener, UAIEditorOptions } from "../../../core/UAIEditor.ts"; import { t } from "i18next"; + +import { UAIEditorEventListener, UAIEditorOptions } from "../../../core/UAIEditor.ts"; import { ScrollableDiv } from "./ScrollableDiv.ts"; import { Icons } from "../../Icons.ts"; diff --git a/src/components/menus/toolbar/ScrollableDiv.ts b/src/components/menus/toolbar/ScrollableDiv.ts index 705f68a..374adda 100644 --- a/src/components/menus/toolbar/ScrollableDiv.ts +++ b/src/components/menus/toolbar/ScrollableDiv.ts @@ -2,6 +2,7 @@ // @ ts-nocheck import { EditorEvents } from "@tiptap/core"; + import { UAIEditorEventListener, UAIEditorOptions } from "../../../core/UAIEditor.ts"; /** diff --git a/src/components/menus/toolbar/ai/ToggleChat.ts b/src/components/menus/toolbar/ai/ToggleChat.ts index dcbf04e..de75a23 100644 --- a/src/components/menus/toolbar/ai/ToggleChat.ts +++ b/src/components/menus/toolbar/ai/ToggleChat.ts @@ -1,12 +1,15 @@ // Copyright (c) 2024-present AI-Labs // @ ts-nocheck -import { MenuButton, MenuButtonOptions } from "../../MenuButton.ts"; -import icon from "../../../../assets/icons/chat-bot.svg"; -import { t } from "i18next"; -import { UAIEditorEventListener, UAIEditorOptions, InnerEditor } from "../../../../core/UAIEditor.ts"; import { EditorEvents } from "@tiptap/core"; +import { t } from "i18next"; + +import { UAIEditorEventListener, UAIEditorOptions, InnerEditor } from "../../../../core/UAIEditor.ts"; +import { MenuButton, MenuButtonOptions } from "../../MenuButton.ts"; + +import icon from "../../../../assets/icons/chat-bot.svg"; + /** * 人工智能菜单:聊天 */ diff --git a/src/components/menus/toolbar/ai/ToggleImage.ts b/src/components/menus/toolbar/ai/ToggleImage.ts index 0a14eb7..79c6467 100644 --- a/src/components/menus/toolbar/ai/ToggleImage.ts +++ b/src/components/menus/toolbar/ai/ToggleImage.ts @@ -1,12 +1,15 @@ // Copyright (c) 2024-present AI-Labs // @ ts-nocheck -import { MenuButton, MenuButtonOptions } from "../../MenuButton.ts"; -import icon from "../../../../assets/icons/image-bot.svg"; -import { t } from "i18next"; -import { UAIEditorEventListener, UAIEditorOptions, InnerEditor } from "../../../../core/UAIEditor.ts"; import { EditorEvents } from "@tiptap/core"; +import { t } from "i18next"; + +import { UAIEditorEventListener, UAIEditorOptions, InnerEditor } from "../../../../core/UAIEditor.ts"; +import { MenuButton, MenuButtonOptions } from "../../MenuButton.ts"; + +import icon from "../../../../assets/icons/image-bot.svg"; + /** * 人工智能菜单:画图 */ diff --git a/src/components/menus/toolbar/base/BlockQuote.ts b/src/components/menus/toolbar/base/BlockQuote.ts index 6f196f0..879edbf 100644 --- a/src/components/menus/toolbar/base/BlockQuote.ts +++ b/src/components/menus/toolbar/base/BlockQuote.ts @@ -1,12 +1,15 @@ // Copyright (c) 2024-present AI-Labs // @ ts-nocheck -import { MenuButton, MenuButtonOptions } from "../../MenuButton.ts"; -import icon from "../../../../assets/icons/blockquote.svg"; -import { t } from "i18next"; -import { UAIEditorEventListener, UAIEditorOptions } from "../../../../core/UAIEditor.ts"; import { EditorEvents } from "@tiptap/core"; +import { t } from "i18next"; + +import { UAIEditorEventListener, UAIEditorOptions } from "../../../../core/UAIEditor.ts"; +import { MenuButton, MenuButtonOptions } from "../../MenuButton.ts"; + +import icon from "../../../../assets/icons/blockquote.svg"; + /** * 基础菜单:引用 */ diff --git a/src/components/menus/toolbar/base/BulletList.ts b/src/components/menus/toolbar/base/BulletList.ts index d86f0af..7f4c87a 100644 --- a/src/components/menus/toolbar/base/BulletList.ts +++ b/src/components/menus/toolbar/base/BulletList.ts @@ -1,6 +1,11 @@ // Copyright (c) 2024-present AI-Labs // @ ts-nocheck +import { EditorEvents } from "@tiptap/core"; +import tippy, { Instance, Props } from "tippy.js"; +import { t } from "i18next"; + +import { UAIEditorEventListener, UAIEditorOptions } from "../../../../core/UAIEditor.ts"; import { MenuButton, MenuButtonOptions } from "../../MenuButton.ts"; import icon0 from "../../../../assets/icons/bullet-list.svg"; @@ -8,11 +13,6 @@ import icon1 from "../../../../assets/icons/bullet-list-disc.svg"; import icon2 from "../../../../assets/icons/bullet-list-circle.svg"; import icon3 from "../../../../assets/icons/bullet-list-square.svg"; -import { t } from "i18next"; -import { UAIEditorEventListener, UAIEditorOptions } from "../../../../core/UAIEditor.ts"; -import { EditorEvents } from "@tiptap/core"; -import tippy, { Instance, Props } from "tippy.js"; - /** * 基础菜单:无序列表 */ diff --git a/src/components/menus/toolbar/base/ClearFormat.ts b/src/components/menus/toolbar/base/ClearFormat.ts index 57e69ce..3ae07cc 100644 --- a/src/components/menus/toolbar/base/ClearFormat.ts +++ b/src/components/menus/toolbar/base/ClearFormat.ts @@ -1,12 +1,15 @@ // Copyright (c) 2024-present AI-Labs // @ ts-nocheck -import { MenuButton, MenuButtonOptions } from "../../MenuButton.ts"; -import icon from "../../../../assets/icons/clear-format.svg"; -import { t } from "i18next"; -import { UAIEditorEventListener, UAIEditorOptions } from "../../../../core/UAIEditor.ts"; import { EditorEvents } from "@tiptap/core"; +import { t } from "i18next"; + +import { UAIEditorEventListener, UAIEditorOptions } from "../../../../core/UAIEditor.ts"; +import { MenuButton, MenuButtonOptions } from "../../MenuButton.ts"; + +import icon from "../../../../assets/icons/clear-format.svg"; + /** * 基础菜单:清除格式 */ diff --git a/src/components/menus/toolbar/base/CodeBlock.ts b/src/components/menus/toolbar/base/CodeBlock.ts index ff2b823..186b215 100644 --- a/src/components/menus/toolbar/base/CodeBlock.ts +++ b/src/components/menus/toolbar/base/CodeBlock.ts @@ -1,12 +1,15 @@ // Copyright (c) 2024-present AI-Labs // @ ts-nocheck -import { MenuButton, MenuButtonOptions } from "../../MenuButton.ts"; -import icon from "../../../../assets/icons/codeblock.svg"; -import { t } from "i18next"; -import { UAIEditorEventListener, UAIEditorOptions } from "../../../../core/UAIEditor.ts"; import { EditorEvents } from "@tiptap/core"; +import { t } from "i18next"; + +import { UAIEditorEventListener, UAIEditorOptions } from "../../../../core/UAIEditor.ts"; +import { MenuButton, MenuButtonOptions } from "../../MenuButton.ts"; + +import icon from "../../../../assets/icons/codeblock.svg"; + /** * 基础菜单:设置代码块 */ diff --git a/src/components/menus/toolbar/base/FontFamily.ts b/src/components/menus/toolbar/base/FontFamily.ts index c9b4269..2707de0 100644 --- a/src/components/menus/toolbar/base/FontFamily.ts +++ b/src/components/menus/toolbar/base/FontFamily.ts @@ -1,11 +1,13 @@ // Copyright (c) 2024-present AI-Labs // @ ts-nocheck -import { MenuButton, MenuButtonOptions } from "../../MenuButton.ts"; -import { t } from "i18next"; -import { UAIEditorEventListener, UAIEditorOptions } from "../../../../core/UAIEditor.ts"; import { EditorEvents } from "@tiptap/core"; +import { t } from "i18next"; + +import { UAIEditorEventListener, UAIEditorOptions } from "../../../../core/UAIEditor.ts"; +import { MenuButton, MenuButtonOptions } from "../../MenuButton.ts"; + /** * 基础菜单:设置字体 */ diff --git a/src/components/menus/toolbar/base/FontSize.ts b/src/components/menus/toolbar/base/FontSize.ts index 6bd5dd8..224f55d 100644 --- a/src/components/menus/toolbar/base/FontSize.ts +++ b/src/components/menus/toolbar/base/FontSize.ts @@ -1,10 +1,13 @@ // Copyright (c) 2024-present AI-Labs -import { MenuButton, MenuButtonOptions } from "../../MenuButton.ts"; -import { t } from "i18next"; -import { UAIEditorEventListener, UAIEditorOptions } from "../../../../core/UAIEditor.ts"; +// @ ts-nocheck import { EditorEvents } from "@tiptap/core"; +import { t } from "i18next"; + +import { UAIEditorEventListener, UAIEditorOptions } from "../../../../core/UAIEditor.ts"; +import { MenuButton, MenuButtonOptions } from "../../MenuButton.ts"; + /** * 基础菜单:设置字号 */ diff --git a/src/components/menus/toolbar/base/FormatPainter.ts b/src/components/menus/toolbar/base/FormatPainter.ts index 7df54df..f65c33a 100644 --- a/src/components/menus/toolbar/base/FormatPainter.ts +++ b/src/components/menus/toolbar/base/FormatPainter.ts @@ -1,12 +1,15 @@ // Copyright (c) 2024-present AI-Labs // @ ts-nocheck -import { MenuButton, MenuButtonOptions } from "../../MenuButton.ts"; -import icon from "../../../../assets/icons/format-painter.svg"; -import { t } from "i18next"; -import { UAIEditorEventListener, UAIEditorOptions } from "../../../../core/UAIEditor.ts"; import { EditorEvents } from "@tiptap/core"; +import { t } from "i18next"; + +import { UAIEditorEventListener, UAIEditorOptions } from "../../../../core/UAIEditor.ts"; +import { MenuButton, MenuButtonOptions } from "../../MenuButton.ts"; + +import icon from "../../../../assets/icons/format-painter.svg"; + /** * 基础菜单:格式刷 */ diff --git a/src/components/menus/toolbar/base/Indent.ts b/src/components/menus/toolbar/base/Indent.ts index 489cd2a..4d956f3 100644 --- a/src/components/menus/toolbar/base/Indent.ts +++ b/src/components/menus/toolbar/base/Indent.ts @@ -1,12 +1,15 @@ // Copyright (c) 2024-present AI-Labs // @ ts-nocheck -import { MenuButton, MenuButtonOptions } from "../../MenuButton.ts"; -import icon from "../../../../assets/icons/indent.svg"; -import { t } from "i18next"; -import { UAIEditorEventListener, UAIEditorOptions } from "../../../../core/UAIEditor.ts"; import { EditorEvents } from "@tiptap/core"; +import { t } from "i18next"; + +import { UAIEditorEventListener, UAIEditorOptions } from "../../../../core/UAIEditor.ts"; +import { MenuButton, MenuButtonOptions } from "../../MenuButton.ts"; + +import icon from "../../../../assets/icons/indent.svg"; + /** * 基础菜单:向右缩进 */ diff --git a/src/components/menus/toolbar/base/LineHeight.ts b/src/components/menus/toolbar/base/LineHeight.ts index 5fd7303..b92f591 100644 --- a/src/components/menus/toolbar/base/LineHeight.ts +++ b/src/components/menus/toolbar/base/LineHeight.ts @@ -1,15 +1,16 @@ // Copyright (c) 2024-present AI-Labs // @ ts-nocheck +import { EditorEvents } from "@tiptap/core"; + +import tippy, { Instance, Props } from "tippy.js"; +import { t } from "i18next"; + +import { UAIEditorEventListener, UAIEditorOptions } from "../../../../core/UAIEditor.ts"; import { MenuButton, MenuButtonOptions } from "../../MenuButton.ts"; import icon from "../../../../assets/icons/line-height.svg"; -import { t } from "i18next"; -import { UAIEditorEventListener, UAIEditorOptions } from "../../../../core/UAIEditor.ts"; -import { EditorEvents } from "@tiptap/core"; -import tippy, { Instance, Props } from "tippy.js"; - /** * 基础菜单:行高 */ diff --git a/src/components/menus/toolbar/base/OrderedList.ts b/src/components/menus/toolbar/base/OrderedList.ts index 5a426ef..e01580f 100644 --- a/src/components/menus/toolbar/base/OrderedList.ts +++ b/src/components/menus/toolbar/base/OrderedList.ts @@ -1,6 +1,12 @@ // Copyright (c) 2024-present AI-Labs // @ ts-nocheck +import { EditorEvents } from "@tiptap/core"; + +import tippy, { Instance, Props } from "tippy.js"; +import { t } from "i18next"; + +import { UAIEditorEventListener, UAIEditorOptions } from "../../../../core/UAIEditor.ts"; import { MenuButton, MenuButtonOptions } from "../../MenuButton.ts"; import icon0 from "../../../../assets/icons/ordered-list.svg"; @@ -13,11 +19,6 @@ import icon6 from "../../../../assets/icons/ordered-list-upper-latin.svg"; import icon7 from "../../../../assets/icons/ordered-list-trad-chinese-informal.svg"; import icon8 from "../../../../assets/icons/ordered-list-simp-chinese-formal.svg"; -import { t } from "i18next"; -import { UAIEditorEventListener, UAIEditorOptions } from "../../../../core/UAIEditor.ts"; -import { EditorEvents } from "@tiptap/core"; -import tippy, { Instance, Props } from "tippy.js"; - /** * 基础菜单:有序列表 */ diff --git a/src/components/menus/toolbar/base/Outdent.ts b/src/components/menus/toolbar/base/Outdent.ts index 09c8302..85cbffa 100644 --- a/src/components/menus/toolbar/base/Outdent.ts +++ b/src/components/menus/toolbar/base/Outdent.ts @@ -1,12 +1,15 @@ // Copyright (c) 2024-present AI-Labs // @ ts-nocheck -import { MenuButton, MenuButtonOptions } from "../../MenuButton.ts"; -import icon from "../../../../assets/icons/outdent.svg"; -import { t } from "i18next"; -import { UAIEditorEventListener, UAIEditorOptions } from "../../../../core/UAIEditor.ts"; import { EditorEvents } from "@tiptap/core"; +import { t } from "i18next"; + +import { UAIEditorEventListener, UAIEditorOptions } from "../../../../core/UAIEditor.ts"; +import { MenuButton, MenuButtonOptions } from "../../MenuButton.ts"; + +import icon from "../../../../assets/icons/outdent.svg"; + /** * 基础菜单:向左缩进 */ diff --git a/src/components/menus/toolbar/base/Print.ts b/src/components/menus/toolbar/base/Print.ts index 9e73c14..c58a545 100644 --- a/src/components/menus/toolbar/base/Print.ts +++ b/src/components/menus/toolbar/base/Print.ts @@ -1,12 +1,15 @@ // Copyright (c) 2024-present AI-Labs // @ ts-nocheck -import { MenuButton, MenuButtonOptions } from "../../MenuButton.ts"; -import icon from "../../../../assets/icons/print.svg"; -import { t } from "i18next"; -import { UAIEditorEventListener, UAIEditorOptions } from "../../../../core/UAIEditor.ts"; import { EditorEvents } from "@tiptap/core"; +import { t } from "i18next"; + +import { UAIEditorEventListener, UAIEditorOptions } from "../../../../core/UAIEditor.ts"; +import { MenuButton, MenuButtonOptions } from "../../MenuButton.ts"; + +import icon from "../../../../assets/icons/print.svg"; + /** * 基础菜单:打印 */ diff --git a/src/components/menus/toolbar/base/Redo.ts b/src/components/menus/toolbar/base/Redo.ts index fa75da4..c45a717 100644 --- a/src/components/menus/toolbar/base/Redo.ts +++ b/src/components/menus/toolbar/base/Redo.ts @@ -1,12 +1,15 @@ // Copyright (c) 2024-present AI-Labs // @ ts-nocheck -import { MenuButton, MenuButtonOptions } from "../../MenuButton.ts"; -import icon from "../../../../assets/icons/redo.svg"; -import { t } from "i18next"; -import { UAIEditorEventListener, UAIEditorOptions } from "../../../../core/UAIEditor.ts"; import { EditorEvents } from "@tiptap/core"; +import { t } from "i18next"; + +import { UAIEditorEventListener, UAIEditorOptions } from "../../../../core/UAIEditor.ts"; +import { MenuButton, MenuButtonOptions } from "../../MenuButton.ts"; + +import icon from "../../../../assets/icons/redo.svg"; + /** * 基础菜单:重做 */ diff --git a/src/components/menus/toolbar/base/TaskList.ts b/src/components/menus/toolbar/base/TaskList.ts index 0be65c9..2e673a1 100644 --- a/src/components/menus/toolbar/base/TaskList.ts +++ b/src/components/menus/toolbar/base/TaskList.ts @@ -1,15 +1,16 @@ // Copyright (c) 2024-present AI-Labs // @ ts-nocheck +import { EditorEvents } from "@tiptap/core"; + +import tippy, { Instance, Props } from "tippy.js"; +import { t } from "i18next"; + +import { UAIEditorEventListener, UAIEditorOptions } from "../../../../core/UAIEditor.ts"; import { MenuButton, MenuButtonOptions } from "../../MenuButton.ts"; import icon from "../../../../assets/icons/task-list.svg"; -import { t } from "i18next"; -import { UAIEditorEventListener, UAIEditorOptions } from "../../../../core/UAIEditor.ts"; -import { EditorEvents } from "@tiptap/core"; -import tippy, { Instance, Props } from "tippy.js"; - /** * 基础菜单:任务列表 */ diff --git a/src/components/menus/toolbar/base/Undo.ts b/src/components/menus/toolbar/base/Undo.ts index 3a9f036..aec400a 100644 --- a/src/components/menus/toolbar/base/Undo.ts +++ b/src/components/menus/toolbar/base/Undo.ts @@ -1,12 +1,15 @@ // Copyright (c) 2024-present AI-Labs // @ ts-nocheck -import { MenuButton, MenuButtonOptions } from "../../MenuButton.ts"; -import icon from "../../../../assets/icons/undo.svg"; -import { t } from "i18next"; -import { UAIEditorEventListener, UAIEditorOptions } from "../../../../core/UAIEditor.ts"; import { EditorEvents } from "@tiptap/core"; +import { t } from "i18next"; + +import { UAIEditorEventListener, UAIEditorOptions } from "../../../../core/UAIEditor.ts"; +import { MenuButton, MenuButtonOptions } from "../../MenuButton.ts"; + +import icon from "../../../../assets/icons/undo.svg"; + /** * 基础菜单:撤销 */ diff --git a/src/components/menus/toolbar/export/ExportDocx.ts b/src/components/menus/toolbar/export/ExportDocx.ts index 04522a2..3e73478 100644 --- a/src/components/menus/toolbar/export/ExportDocx.ts +++ b/src/components/menus/toolbar/export/ExportDocx.ts @@ -1,12 +1,15 @@ // Copyright (c) 2024-present AI-Labs // @ ts-nocheck -import { MenuButton, MenuButtonOptions } from "../../MenuButton.ts"; -import icon from "../../../../assets/icons/file-docx.svg"; -import { t } from "i18next"; -import { UAIEditorEventListener, UAIEditorOptions, InnerEditor } from "../../../../core/UAIEditor.ts"; import { EditorEvents } from "@tiptap/core"; +import { t } from "i18next"; + +import { UAIEditorEventListener, UAIEditorOptions } from "../../../../core/UAIEditor.ts"; +import { MenuButton, MenuButtonOptions } from "../../MenuButton.ts"; + +import icon from "../../../../assets/icons/file-docx.svg"; + /** * 导出菜单:导出Docx */ diff --git a/src/components/menus/toolbar/export/ExportImage.ts b/src/components/menus/toolbar/export/ExportImage.ts index 676c8a3..14bcd7d 100644 --- a/src/components/menus/toolbar/export/ExportImage.ts +++ b/src/components/menus/toolbar/export/ExportImage.ts @@ -1,13 +1,16 @@ // Copyright (c) 2024-present AI-Labs // @ ts-nocheck -import { MenuButton, MenuButtonOptions } from "../../MenuButton.ts"; -import icon from "../../../../assets/icons/image.svg"; -import { t } from "i18next"; -import { UAIEditorEventListener, UAIEditorOptions } from "../../../../core/UAIEditor.ts"; import { EditorEvents } from "@tiptap/core"; + import domtoimage from 'dom-to-image-more'; import { saveAs } from 'file-saver'; +import { t } from "i18next"; + +import { MenuButton, MenuButtonOptions } from "../../MenuButton.ts"; +import { UAIEditorEventListener, UAIEditorOptions } from "../../../../core/UAIEditor.ts"; + +import icon from "../../../../assets/icons/image.svg"; /** * 导出菜单:导出图片 diff --git a/src/components/menus/toolbar/export/ExportMarkdown.ts b/src/components/menus/toolbar/export/ExportMarkdown.ts index ecf8d05..5232802 100644 --- a/src/components/menus/toolbar/export/ExportMarkdown.ts +++ b/src/components/menus/toolbar/export/ExportMarkdown.ts @@ -1,12 +1,15 @@ // Copyright (c) 2024-present AI-Labs // @ ts-nocheck -import { MenuButton, MenuButtonOptions } from "../../MenuButton.ts"; -import icon from "../../../../assets/icons/file-markdown.svg"; -import { t } from "i18next"; -import { UAIEditorEventListener, UAIEditorOptions, InnerEditor } from "../../../../core/UAIEditor.ts"; import { EditorEvents } from "@tiptap/core"; +import { t } from "i18next"; + +import { UAIEditorEventListener, UAIEditorOptions } from "../../../../core/UAIEditor.ts"; +import { MenuButton, MenuButtonOptions } from "../../MenuButton.ts"; + +import icon from "../../../../assets/icons/file-markdown.svg"; + /** * 导出菜单:导出Markdown */ diff --git a/src/components/menus/toolbar/export/ExportOdt.ts b/src/components/menus/toolbar/export/ExportOdt.ts index 338b789..919afac 100644 --- a/src/components/menus/toolbar/export/ExportOdt.ts +++ b/src/components/menus/toolbar/export/ExportOdt.ts @@ -1,12 +1,15 @@ // Copyright (c) 2024-present AI-Labs // @ ts-nocheck -import { MenuButton, MenuButtonOptions } from "../../MenuButton.ts"; -import icon from "../../../../assets/icons/file-odt.svg"; -import { t } from "i18next"; -import { UAIEditorEventListener, UAIEditorOptions, InnerEditor } from "../../../../core/UAIEditor.ts"; import { EditorEvents } from "@tiptap/core"; +import { t } from "i18next"; + +import { UAIEditorEventListener, UAIEditorOptions } from "../../../../core/UAIEditor.ts"; +import { MenuButton, MenuButtonOptions } from "../../MenuButton.ts"; + +import icon from "../../../../assets/icons/file-odt.svg"; + /** * 导出菜单:导出Odt */ diff --git a/src/components/menus/toolbar/export/ExportPdf.ts b/src/components/menus/toolbar/export/ExportPdf.ts index 53e8911..b3739ea 100644 --- a/src/components/menus/toolbar/export/ExportPdf.ts +++ b/src/components/menus/toolbar/export/ExportPdf.ts @@ -1,12 +1,15 @@ // Copyright (c) 2024-present AI-Labs // @ ts-nocheck -import { MenuButton, MenuButtonOptions } from "../../MenuButton.ts"; -import icon from "../../../../assets/icons/file-pdf.svg"; -import { t } from "i18next"; -import { UAIEditorEventListener, UAIEditorOptions, InnerEditor } from "../../../../core/UAIEditor.ts"; import { EditorEvents } from "@tiptap/core"; +import { t } from "i18next"; + +import { UAIEditorEventListener, UAIEditorOptions } from "../../../../core/UAIEditor.ts"; +import { MenuButton, MenuButtonOptions } from "../../MenuButton.ts"; + +import icon from "../../../../assets/icons/file-pdf.svg"; + /** * 导出菜单:导出PDF */ diff --git a/src/components/menus/toolbar/insert/Audio.ts b/src/components/menus/toolbar/insert/Audio.ts index a060fd3..903bebc 100644 --- a/src/components/menus/toolbar/insert/Audio.ts +++ b/src/components/menus/toolbar/insert/Audio.ts @@ -1,12 +1,15 @@ // Copyright (c) 2024-present AI-Labs // @ ts-nocheck -import { MenuButton, MenuButtonOptions } from "../../MenuButton.ts"; -import icon from "../../../../assets/icons/audio.svg"; -import { t } from "i18next"; -import { UAIEditorEventListener, UAIEditorOptions } from "../../../../core/UAIEditor.ts"; import { EditorEvents } from "@tiptap/core"; +import { t } from "i18next"; + +import { UAIEditorEventListener, UAIEditorOptions } from "../../../../core/UAIEditor.ts"; +import { MenuButton, MenuButtonOptions } from "../../MenuButton.ts"; + +import icon from "../../../../assets/icons/audio.svg"; + /** * 插入菜单:插入音频 */ diff --git a/src/components/menus/toolbar/insert/Emoji.ts b/src/components/menus/toolbar/insert/Emoji.ts index d8a38d3..909fc51 100644 --- a/src/components/menus/toolbar/insert/Emoji.ts +++ b/src/components/menus/toolbar/insert/Emoji.ts @@ -1,12 +1,15 @@ // Copyright (c) 2024-present AI-Labs // @ ts-nocheck -import { MenuButton, MenuButtonOptions } from "../../MenuButton.ts"; -import icon from "../../../../assets/icons/emoji.svg"; -import { t } from "i18next"; -import { UAIEditorEventListener, UAIEditorOptions } from "../../../../core/UAIEditor.ts"; import { EditorEvents } from "@tiptap/core"; + import tippy, { Instance, Props } from "tippy.js"; +import { t } from "i18next"; + +import { UAIEditorEventListener, UAIEditorOptions } from "../../../../core/UAIEditor.ts"; +import { MenuButton, MenuButtonOptions } from "../../MenuButton.ts"; + +import icon from "../../../../assets/icons/emoji.svg"; /** * 插入菜单:插入表情 diff --git a/src/components/menus/toolbar/insert/HardBreak.ts b/src/components/menus/toolbar/insert/HardBreak.ts index da0cdd5..fe81bd9 100644 --- a/src/components/menus/toolbar/insert/HardBreak.ts +++ b/src/components/menus/toolbar/insert/HardBreak.ts @@ -1,12 +1,15 @@ // Copyright (c) 2024-present AI-Labs // @ ts-nocheck -import { MenuButton, MenuButtonOptions } from "../../MenuButton.ts"; -import icon from "../../../../assets/icons/hard-break.svg"; -import { t } from "i18next"; -import { UAIEditorEventListener, UAIEditorOptions } from "../../../../core/UAIEditor.ts"; import { EditorEvents } from "@tiptap/core"; +import { t } from "i18next"; + +import { UAIEditorEventListener, UAIEditorOptions } from "../../../../core/UAIEditor.ts"; +import { MenuButton, MenuButtonOptions } from "../../MenuButton.ts"; + +import icon from "../../../../assets/icons/hard-break.svg"; + /** * 插入菜单:插入换行 */ diff --git a/src/components/menus/toolbar/insert/Image.ts b/src/components/menus/toolbar/insert/Image.ts index de593f4..c7230e0 100644 --- a/src/components/menus/toolbar/insert/Image.ts +++ b/src/components/menus/toolbar/insert/Image.ts @@ -1,12 +1,15 @@ // Copyright (c) 2024-present AI-Labs // @ ts-nocheck -import { MenuButton, MenuButtonOptions } from "../../MenuButton.ts"; -import icon from "../../../../assets/icons/image.svg"; -import { t } from "i18next"; -import { UAIEditorEventListener, UAIEditorOptions } from "../../../../core/UAIEditor.ts"; import { EditorEvents } from "@tiptap/core"; +import { t } from "i18next"; + +import { UAIEditorEventListener, UAIEditorOptions } from "../../../../core/UAIEditor.ts"; +import { MenuButton, MenuButtonOptions } from "../../MenuButton.ts"; + +import icon from "../../../../assets/icons/image.svg"; + /** * 插入菜单:插入图片 */ diff --git a/src/components/menus/toolbar/insert/Link.ts b/src/components/menus/toolbar/insert/Link.ts index fe984b5..17a51a2 100644 --- a/src/components/menus/toolbar/insert/Link.ts +++ b/src/components/menus/toolbar/insert/Link.ts @@ -1,13 +1,16 @@ // Copyright (c) 2024-present AI-Labs // @ ts-nocheck -import { MenuButton, MenuButtonOptions } from "../../MenuButton.ts"; -import icon from "../../../../assets/icons/link.svg"; -import { t } from "i18next"; -import { UAIEditorEventListener, UAIEditorOptions, InnerEditor } from "../../../../core/UAIEditor.ts"; import { EditorEvents } from "@tiptap/core"; + +import { t } from "i18next"; + +import { UAIEditorEventListener, UAIEditorOptions } from "../../../../core/UAIEditor.ts"; +import { MenuButton, MenuButtonOptions } from "../../MenuButton.ts"; import { CenterModal } from "../../../modals/CenterModal.ts"; +import icon from "../../../../assets/icons/link.svg"; + /** * 插入菜单:插入链接 */ diff --git a/src/components/menus/toolbar/insert/Math.ts b/src/components/menus/toolbar/insert/Math.ts index dc61761..d6c42a1 100644 --- a/src/components/menus/toolbar/insert/Math.ts +++ b/src/components/menus/toolbar/insert/Math.ts @@ -1,12 +1,15 @@ // Copyright (c) 2024-present AI-Labs // @ ts-nocheck -import { MenuButton, MenuButtonOptions } from "../../MenuButton.ts"; -import icon from "../../../../assets/icons/math.svg"; -import { t } from "i18next"; -import { UAIEditorEventListener, UAIEditorOptions } from "../../../../core/UAIEditor.ts"; import { EditorEvents } from "@tiptap/core"; +import { t } from "i18next"; + +import { UAIEditorEventListener, UAIEditorOptions } from "../../../../core/UAIEditor.ts"; +import { MenuButton, MenuButtonOptions } from "../../MenuButton.ts"; + +import icon from "../../../../assets/icons/math.svg"; + /** * 插入菜单:插入公式 */ diff --git a/src/components/menus/toolbar/insert/Symbol.ts b/src/components/menus/toolbar/insert/Symbol.ts index ed41678..73da67d 100644 --- a/src/components/menus/toolbar/insert/Symbol.ts +++ b/src/components/menus/toolbar/insert/Symbol.ts @@ -1,12 +1,15 @@ // Copyright (c) 2024-present AI-Labs // @ ts-nocheck -import { MenuButton, MenuButtonOptions } from "../../MenuButton.ts"; -import icon from "../../../../assets/icons/symbol.svg"; -import { t } from "i18next"; -import { UAIEditorEventListener, UAIEditorOptions } from "../../../../core/UAIEditor.ts"; import { EditorEvents } from "@tiptap/core"; + import tippy, { Instance, Props } from "tippy.js"; +import { t } from "i18next"; + +import { UAIEditorEventListener, UAIEditorOptions } from "../../../../core/UAIEditor.ts"; +import { MenuButton, MenuButtonOptions } from "../../MenuButton.ts"; + +import icon from "../../../../assets/icons/symbol.svg"; /** * 插入菜单:插入符号 diff --git a/src/components/menus/toolbar/insert/Toc.ts b/src/components/menus/toolbar/insert/Toc.ts index ba04b51..0de903c 100644 --- a/src/components/menus/toolbar/insert/Toc.ts +++ b/src/components/menus/toolbar/insert/Toc.ts @@ -1,12 +1,14 @@ // Copyright (c) 2024-present AI-Labs // @ ts-nocheck -import { MenuButton, MenuButtonOptions } from "../../MenuButton.ts"; -import icon from "../../../../assets/icons/toc.svg"; -import { t } from "i18next"; -import { UAIEditorEventListener, UAIEditorOptions } from "../../../../core/UAIEditor.ts"; import { EditorEvents } from "@tiptap/core"; +import { t } from "i18next"; + +import { UAIEditorEventListener, UAIEditorOptions } from "../../../../core/UAIEditor.ts"; +import { MenuButton, MenuButtonOptions } from "../../MenuButton.ts"; + +import icon from "../../../../assets/icons/toc.svg"; /** * 插入菜单:插入大纲 */ diff --git a/src/components/menus/toolbar/insert/Video.ts b/src/components/menus/toolbar/insert/Video.ts index 906c069..d0d58ee 100644 --- a/src/components/menus/toolbar/insert/Video.ts +++ b/src/components/menus/toolbar/insert/Video.ts @@ -1,12 +1,15 @@ // Copyright (c) 2024-present AI-Labs // @ ts-nocheck -import { MenuButton, MenuButtonOptions } from "../../MenuButton.ts"; -import icon from "../../../../assets/icons/video.svg"; -import { t } from "i18next"; -import { UAIEditorEventListener, UAIEditorOptions } from "../../../../core/UAIEditor.ts"; import { EditorEvents } from "@tiptap/core"; +import { t } from "i18next"; + +import { UAIEditorEventListener, UAIEditorOptions } from "../../../../core/UAIEditor.ts"; +import { MenuButton, MenuButtonOptions } from "../../MenuButton.ts"; + +import icon from "../../../../assets/icons/video.svg"; + /** * 插入菜单:插入视频 */ diff --git a/src/components/menus/toolbar/page/BackgroundColor.ts b/src/components/menus/toolbar/page/BackgroundColor.ts index 8a63601..0e7198d 100644 --- a/src/components/menus/toolbar/page/BackgroundColor.ts +++ b/src/components/menus/toolbar/page/BackgroundColor.ts @@ -1,12 +1,15 @@ // Copyright (c) 2024-present AI-Labs // @ ts-nocheck -import { MenuButton, MenuButtonOptions } from "../../MenuButton.ts"; -import icon from "../../../../assets/icons/page-background.svg"; -import { t } from "i18next"; -import { UAIEditorEventListener, UAIEditorOptions } from "../../../../core/UAIEditor.ts"; import { EditorEvents } from "@tiptap/core"; + import tippy, { Instance, Props } from "tippy.js"; +import { t } from "i18next"; + +import { UAIEditorEventListener, UAIEditorOptions } from "../../../../core/UAIEditor.ts"; +import { MenuButton, MenuButtonOptions } from "../../MenuButton.ts"; + +import icon from "../../../../assets/icons/page-background.svg"; /** * 页面菜单:设置背景色 diff --git a/src/components/menus/toolbar/page/ToggleToc.ts b/src/components/menus/toolbar/page/ToggleToc.ts index 38ebd03..2202ad0 100644 --- a/src/components/menus/toolbar/page/ToggleToc.ts +++ b/src/components/menus/toolbar/page/ToggleToc.ts @@ -1,12 +1,15 @@ // Copyright (c) 2024-present AI-Labs // @ ts-nocheck -import { MenuButton, MenuButtonOptions } from "../../MenuButton.ts"; -import icon from "../../../../assets/icons/toc.svg"; -import { t } from "i18next"; -import { UAIEditorEventListener, UAIEditorOptions, InnerEditor } from "../../../../core/UAIEditor.ts"; import { EditorEvents } from "@tiptap/core"; +import { t } from "i18next"; + +import { UAIEditorEventListener, UAIEditorOptions, InnerEditor } from "../../../../core/UAIEditor.ts"; +import { MenuButton, MenuButtonOptions } from "../../MenuButton.ts"; + +import icon from "../../../../assets/icons/toc.svg"; + /** * 页面菜单:打开文档大纲 */ diff --git a/src/components/menus/toolbar/page/Watermark.ts b/src/components/menus/toolbar/page/Watermark.ts index bb8b912..34ac0a9 100644 --- a/src/components/menus/toolbar/page/Watermark.ts +++ b/src/components/menus/toolbar/page/Watermark.ts @@ -1,14 +1,17 @@ // Copyright (c) 2024-present AI-Labs // @ ts-nocheck -import { MenuButton, MenuButtonOptions } from "../../MenuButton.ts"; -import icon from "../../../../assets/icons/watermark.svg"; -import { t } from "i18next"; -import { UAIEditorEventListener, UAIEditorOptions } from "../../../../core/UAIEditor.ts"; import { EditorEvents } from "@tiptap/core"; + import tippy, { Instance, Props } from "tippy.js"; +import { t } from "i18next"; import domtoimage from 'dom-to-image-more'; +import { UAIEditorEventListener, UAIEditorOptions } from "../../../../core/UAIEditor.ts"; +import { MenuButton, MenuButtonOptions } from "../../MenuButton.ts"; + +import icon from "../../../../assets/icons/watermark.svg"; + /** * 页面菜单:设置水印 */ diff --git a/src/components/menus/toolbar/table/AddColumnAfter.ts b/src/components/menus/toolbar/table/AddColumnAfter.ts index e27aa66..7b91d36 100644 --- a/src/components/menus/toolbar/table/AddColumnAfter.ts +++ b/src/components/menus/toolbar/table/AddColumnAfter.ts @@ -1,12 +1,15 @@ // Copyright (c) 2024-present AI-Labs // @ ts-nocheck -import { MenuButton, MenuButtonOptions } from "../../MenuButton.ts"; -import icon from "../../../../assets/icons/table-add-column-after.svg"; -import { t } from "i18next"; -import { UAIEditorEventListener, UAIEditorOptions, InnerEditor } from "../../../../core/UAIEditor.ts"; import { EditorEvents } from "@tiptap/core"; +import { t } from "i18next"; + +import { UAIEditorEventListener, UAIEditorOptions } from "../../../../core/UAIEditor.ts"; +import { MenuButton, MenuButtonOptions } from "../../MenuButton.ts"; + +import icon from "../../../../assets/icons/table-add-column-after.svg"; + /** * 表格菜单:后面添加列 */ diff --git a/src/components/menus/toolbar/table/AddColumnBefore.ts b/src/components/menus/toolbar/table/AddColumnBefore.ts index bd2d2de..f2e957b 100644 --- a/src/components/menus/toolbar/table/AddColumnBefore.ts +++ b/src/components/menus/toolbar/table/AddColumnBefore.ts @@ -1,12 +1,15 @@ // Copyright (c) 2024-present AI-Labs // @ ts-nocheck -import { MenuButton, MenuButtonOptions } from "../../MenuButton.ts"; -import icon from "../../../../assets/icons/table-add-column-after.svg"; -import { t } from "i18next"; -import { UAIEditorEventListener, UAIEditorOptions, InnerEditor } from "../../../../core/UAIEditor.ts"; import { EditorEvents } from "@tiptap/core"; +import { t } from "i18next"; + +import { UAIEditorEventListener, UAIEditorOptions } from "../../../../core/UAIEditor.ts"; +import { MenuButton, MenuButtonOptions } from "../../MenuButton.ts"; + +import icon from "../../../../assets/icons/table-add-column-after.svg"; + /** * 表格菜单:前面添加列 */ diff --git a/src/components/menus/toolbar/table/AddRowAfter.ts b/src/components/menus/toolbar/table/AddRowAfter.ts index f164973..ed3edad 100644 --- a/src/components/menus/toolbar/table/AddRowAfter.ts +++ b/src/components/menus/toolbar/table/AddRowAfter.ts @@ -1,12 +1,15 @@ // Copyright (c) 2024-present AI-Labs // @ ts-nocheck -import { MenuButton, MenuButtonOptions } from "../../MenuButton.ts"; -import icon from "../../../../assets/icons/table-add-row-after.svg"; -import { t } from "i18next"; -import { UAIEditorEventListener, UAIEditorOptions, InnerEditor } from "../../../../core/UAIEditor.ts"; import { EditorEvents } from "@tiptap/core"; +import { t } from "i18next"; + +import { UAIEditorEventListener, UAIEditorOptions } from "../../../../core/UAIEditor.ts"; +import { MenuButton, MenuButtonOptions } from "../../MenuButton.ts"; + +import icon from "../../../../assets/icons/table-add-row-after.svg"; + /** * 表格菜单:后面添加行 */ diff --git a/src/components/menus/toolbar/table/AddRowBefore.ts b/src/components/menus/toolbar/table/AddRowBefore.ts index bbf50fb..2da144a 100644 --- a/src/components/menus/toolbar/table/AddRowBefore.ts +++ b/src/components/menus/toolbar/table/AddRowBefore.ts @@ -1,12 +1,15 @@ // Copyright (c) 2024-present AI-Labs // @ ts-nocheck -import { MenuButton, MenuButtonOptions } from "../../MenuButton.ts"; -import icon from "../../../../assets/icons/table-add-row-before.svg"; -import { t } from "i18next"; -import { UAIEditorEventListener, UAIEditorOptions, InnerEditor } from "../../../../core/UAIEditor.ts"; import { EditorEvents } from "@tiptap/core"; +import { t } from "i18next"; + +import { UAIEditorEventListener, UAIEditorOptions } from "../../../../core/UAIEditor.ts"; +import { MenuButton, MenuButtonOptions } from "../../MenuButton.ts"; + +import icon from "../../../../assets/icons/table-add-row-before.svg"; + /** * 表格菜单:前面添加行 */ diff --git a/src/components/menus/toolbar/table/DeleteColumn.ts b/src/components/menus/toolbar/table/DeleteColumn.ts index 5f73dfa..4be1ff4 100644 --- a/src/components/menus/toolbar/table/DeleteColumn.ts +++ b/src/components/menus/toolbar/table/DeleteColumn.ts @@ -1,12 +1,15 @@ // Copyright (c) 2024-present AI-Labs // @ ts-nocheck -import { MenuButton, MenuButtonOptions } from "../../MenuButton.ts"; -import icon from "../../../../assets/icons/table-delete-column.svg"; -import { t } from "i18next"; -import { UAIEditorEventListener, UAIEditorOptions, InnerEditor } from "../../../../core/UAIEditor.ts"; import { EditorEvents } from "@tiptap/core"; +import { t } from "i18next"; + +import { UAIEditorEventListener, UAIEditorOptions } from "../../../../core/UAIEditor.ts"; +import { MenuButton, MenuButtonOptions } from "../../MenuButton.ts"; + +import icon from "../../../../assets/icons/table-delete-column.svg"; + /** * 表格菜单:删除列 */ diff --git a/src/components/menus/toolbar/table/DeleteRow.ts b/src/components/menus/toolbar/table/DeleteRow.ts index a7da6f4..3966c2a 100644 --- a/src/components/menus/toolbar/table/DeleteRow.ts +++ b/src/components/menus/toolbar/table/DeleteRow.ts @@ -1,12 +1,15 @@ // Copyright (c) 2024-present AI-Labs // @ ts-nocheck -import { MenuButton, MenuButtonOptions } from "../../MenuButton.ts"; -import icon from "../../../../assets/icons/table-delete-row.svg"; -import { t } from "i18next"; -import { UAIEditorEventListener, UAIEditorOptions, InnerEditor } from "../../../../core/UAIEditor.ts"; import { EditorEvents } from "@tiptap/core"; +import { t } from "i18next"; + +import { UAIEditorEventListener, UAIEditorOptions } from "../../../../core/UAIEditor.ts"; +import { MenuButton, MenuButtonOptions } from "../../MenuButton.ts"; + +import icon from "../../../../assets/icons/table-delete-row.svg"; + /** * 表格菜单:删除行 */ diff --git a/src/components/menus/toolbar/table/DeleteTable.ts b/src/components/menus/toolbar/table/DeleteTable.ts index 945f176..43fbadd 100644 --- a/src/components/menus/toolbar/table/DeleteTable.ts +++ b/src/components/menus/toolbar/table/DeleteTable.ts @@ -1,12 +1,15 @@ // Copyright (c) 2024-present AI-Labs // @ ts-nocheck -import { MenuButton, MenuButtonOptions } from "../../MenuButton.ts"; -import icon from "../../../../assets/icons/table-delete.svg"; -import { t } from "i18next"; -import { UAIEditorEventListener, UAIEditorOptions, InnerEditor } from "../../../../core/UAIEditor.ts"; import { EditorEvents } from "@tiptap/core"; +import { t } from "i18next"; + +import { UAIEditorEventListener, UAIEditorOptions } from "../../../../core/UAIEditor.ts"; +import { MenuButton, MenuButtonOptions } from "../../MenuButton.ts"; + +import icon from "../../../../assets/icons/table-delete.svg"; + /** * 表格菜单:删除表格 */ diff --git a/src/components/menus/toolbar/table/InsertTable.ts b/src/components/menus/toolbar/table/InsertTable.ts index 798fa70..26c1f68 100644 --- a/src/components/menus/toolbar/table/InsertTable.ts +++ b/src/components/menus/toolbar/table/InsertTable.ts @@ -1,12 +1,15 @@ // Copyright (c) 2024-present AI-Labs // @ ts-nocheck -import { MenuButton, MenuButtonOptions } from "../../MenuButton.ts"; -import icon from "../../../../assets/icons/table.svg"; -import { t } from "i18next"; -import { UAIEditorEventListener, UAIEditorOptions } from "../../../../core/UAIEditor.ts"; import { EditorEvents } from "@tiptap/core"; + import tippy, { Instance, Props } from "tippy.js"; +import { t } from "i18next"; + +import { UAIEditorEventListener, UAIEditorOptions } from "../../../../core/UAIEditor.ts"; +import { MenuButton, MenuButtonOptions } from "../../MenuButton.ts"; + +import icon from "../../../../assets/icons/table.svg"; /** * 表格菜单:插入表格 diff --git a/src/components/menus/toolbar/tools/Diagrams.ts b/src/components/menus/toolbar/tools/Diagrams.ts index 7e58a5e..2374d52 100644 --- a/src/components/menus/toolbar/tools/Diagrams.ts +++ b/src/components/menus/toolbar/tools/Diagrams.ts @@ -1,15 +1,18 @@ // Copyright (c) 2024-present AI-Labs // @ ts-nocheck -import { MenuButton, MenuButtonOptions } from "../../MenuButton.ts"; -import icon from "../../../../assets/icons/diagrams.svg"; -import { t } from "i18next"; -import { UAIEditorEventListener, UAIEditorOptions, InnerEditor } from "../../../../core/UAIEditor.ts"; import { EditorEvents } from "@tiptap/core"; + +import { t } from "i18next"; + +import { UAIEditorEventListener, UAIEditorOptions } from "../../../../core/UAIEditor.ts"; +import { MenuButton, MenuButtonOptions } from "../../MenuButton.ts"; import { FullScreenModal } from "../../../modals/FullScreenModal.ts"; import DiagramEditor from "../../../../utils/DiagramEditor.ts"; import { uuid } from "../../../../utils/UUID.ts"; +import icon from "../../../../assets/icons/diagrams.svg"; + /** * 工具菜单:插入流程图 */ diff --git a/src/components/modals/CenterModal.ts b/src/components/modals/CenterModal.ts index 4723ec6..9266cc6 100644 --- a/src/components/modals/CenterModal.ts +++ b/src/components/modals/CenterModal.ts @@ -1,5 +1,6 @@ // Copyright (c) 2024-present AI-Labs +// @ ts-nocheck import { Modal } from "bootstrap"; import 'bootstrap/dist/css/bootstrap.css'; diff --git a/src/components/modals/FullScreenModal.ts b/src/components/modals/FullScreenModal.ts index f68cce6..30d358f 100644 --- a/src/components/modals/FullScreenModal.ts +++ b/src/components/modals/FullScreenModal.ts @@ -1,10 +1,12 @@ // Copyright (c) 2024-present AI-Labs +// @ ts-nocheck import { Modal } from "bootstrap"; -import closeIcon from "../../assets/icons/close.svg"; import 'bootstrap/dist/css/bootstrap.css'; +import closeIcon from "../../assets/icons/close.svg"; + /** * 全屏的模态弹出框 */ diff --git a/src/components/popups/ColorPicker.ts b/src/components/popups/ColorPicker.ts index 90afac0..ecdff52 100644 --- a/src/components/popups/ColorPicker.ts +++ b/src/components/popups/ColorPicker.ts @@ -2,9 +2,11 @@ // @ ts-nocheck import { EditorEvents } from "@tiptap/core"; -import { UAIEditorEventListener, UAIEditorOptions } from "../../core/UAIEditor.ts"; + import { t } from "i18next"; +import { UAIEditorEventListener, UAIEditorOptions } from "../../core/UAIEditor.ts"; + /** * 所有可选颜色 */ diff --git a/src/core/UAIEditor.ts b/src/core/UAIEditor.ts index 615237e..fdabd4f 100644 --- a/src/core/UAIEditor.ts +++ b/src/core/UAIEditor.ts @@ -1,15 +1,19 @@ // Copyright (c) 2024-present AI-Labs +// @ ts-nocheck import { Editor as TipTap, EditorEvents, EditorOptions, } from "@tiptap/core"; - import { DOMParser } from "@tiptap/pm/model"; - import { TableOfContentData } from "@tiptap-pro/extension-table-of-contents"; +import * as monaco from 'monaco-editor'; +import HtmlWorker from 'monaco-editor/esm/vs/language/html/html.worker.js?worker'; +import i18next from "i18next"; +import { Resource } from "i18next"; + import "../components" import { Header } from "../components/Header.ts"; import { ChatContainer } from "../components/containers/ChatContainer.ts"; @@ -17,14 +21,10 @@ import { ImageContainer } from "../components/containers/ImageContainer.ts"; import { TocContainer } from "../components/containers/TocContainer.ts"; import { Editor } from "../components/Editor.ts"; import { Footer } from "../components/Footer.ts"; -import * as monaco from 'monaco-editor'; -import HtmlWorker from 'monaco-editor/esm/vs/language/html/html.worker.js?worker'; import "../styles"; -import i18next from "i18next"; import { zh } from "../i18n/zh.ts"; -import { Resource } from "i18next"; import { allExtensions } from "./UAIExtensions.ts"; import { AICommand } from "../ai/config/AIConfig.ts"; import { AIChatConfig, Text2ImageConfig } from "../ai/config/AIConfig.ts"; diff --git a/src/core/UAIExtensions.ts b/src/core/UAIExtensions.ts index bf9bfc5..ca4f216 100644 --- a/src/core/UAIExtensions.ts +++ b/src/core/UAIExtensions.ts @@ -2,7 +2,6 @@ // @ ts-nocheck import { Extension, Extensions, getTextBetween } from "@tiptap/core"; -import { UAIEditor, UAIEditorOptions } from "./UAIEditor"; import { StarterKit } from "@tiptap/starter-kit"; import { CharacterCount } from "@tiptap/extension-character-count"; @@ -26,6 +25,7 @@ import { Export } from '@tiptap-pro/extension-export'; import { Mathematics } from '@tiptap-pro/extension-mathematics'; import { TableOfContents, getHierarchicalIndexes } from '@tiptap-pro/extension-table-of-contents' +import { UAIEditor, UAIEditorOptions } from "./UAIEditor"; import Audio from "../extensions/Audio.ts"; import BulletList from "../extensions/BulletList.ts"; import FontSize from "../extensions/FontSize.ts"; diff --git a/src/extensions/Audio.ts b/src/extensions/Audio.ts index 27f38b4..d767313 100644 --- a/src/extensions/Audio.ts +++ b/src/extensions/Audio.ts @@ -1,7 +1,9 @@ // Copyright (c) 2024-present AI-Labs +// @ ts-nocheck import { mergeAttributes, Node } from '@tiptap/core' -import { resize } from '../utils/resize.ts' + +import { resize } from '../utils/Resize.ts' declare module '@tiptap/core' { interface Commands { diff --git a/src/extensions/BulletList.ts b/src/extensions/BulletList.ts index 09a4c40..5f03135 100644 --- a/src/extensions/BulletList.ts +++ b/src/extensions/BulletList.ts @@ -1,5 +1,6 @@ // Copyright (c) 2024-present AI-Labs +// @ ts-nocheck import BulletList from '@tiptap/extension-bullet-list' // https://www.npmjs.com/package/tiptap-extension-bullet-list diff --git a/src/extensions/FontSize.ts b/src/extensions/FontSize.ts index cd40ebb..9ca82ae 100644 --- a/src/extensions/FontSize.ts +++ b/src/extensions/FontSize.ts @@ -1,5 +1,6 @@ // Copyright (c) 2024-present AI-Labs +// @ ts-nocheck import { Extension } from '@tiptap/core' export interface FontSizeOptions { diff --git a/src/extensions/Image.ts b/src/extensions/Image.ts index cef6eff..4ffd3fe 100644 --- a/src/extensions/Image.ts +++ b/src/extensions/Image.ts @@ -1,8 +1,10 @@ // Copyright (c) 2024-present AI-Labs +// @ ts-nocheck import { NodeViewRendererProps } from '@tiptap/core' import Image from '@tiptap/extension-image' -import { resize } from '../utils/resize.ts' + +import { resize } from '../utils/Resize.ts' declare module '@tiptap/core' { interface Commands { diff --git a/src/extensions/Indent.ts b/src/extensions/Indent.ts index 25ee06c..98fc43e 100644 --- a/src/extensions/Indent.ts +++ b/src/extensions/Indent.ts @@ -1,6 +1,8 @@ // Copyright (c) 2024-present AI-Labs +// @ ts-nocheck import { Command, Extension } from '@tiptap/core'; + import { AllSelection, TextSelection, Transaction } from 'prosemirror-state'; export interface IndentOptions { diff --git a/src/extensions/LineHeight.ts b/src/extensions/LineHeight.ts index 53dbd7b..a6a260d 100644 --- a/src/extensions/LineHeight.ts +++ b/src/extensions/LineHeight.ts @@ -1,5 +1,6 @@ // Copyright (c) 2024-present AI-Labs +// @ ts-nocheck import { Extension } from '@tiptap/core' export interface LineHeightOptions { diff --git a/src/extensions/NodeAlign.ts b/src/extensions/NodeAlign.ts index 020d285..5d2970b 100644 --- a/src/extensions/NodeAlign.ts +++ b/src/extensions/NodeAlign.ts @@ -1,5 +1,6 @@ // Copyright (c) 2024-present AI-Labs +// @ ts-nocheck import { Extension } from '@tiptap/core' declare module '@tiptap/core' { diff --git a/src/extensions/OrderedList.ts b/src/extensions/OrderedList.ts index 8bf1be7..408a9c1 100644 --- a/src/extensions/OrderedList.ts +++ b/src/extensions/OrderedList.ts @@ -1,5 +1,6 @@ // Copyright (c) 2024-present AI-Labs +// @ ts-nocheck import OrderedList from '@tiptap/extension-ordered-list' // https://www.npmjs.com/package/tiptap-extension-ordered-list diff --git a/src/extensions/QuickCommand.ts b/src/extensions/QuickCommand.ts index 3657b11..3344019 100644 --- a/src/extensions/QuickCommand.ts +++ b/src/extensions/QuickCommand.ts @@ -2,12 +2,13 @@ // @ ts-nocheck import { Extension } from '@tiptap/core'; - import Suggestion, { SuggestionOptions, SuggestionProps } from '@tiptap/suggestion'; + import tippy, { Instance } from 'tippy.js'; +import OpenAI from "openai"; + import { InnerEditor } from '../core/UAIEditor.ts'; import { AICommand } from '../ai/config/AIConfig.ts'; -import OpenAI from "openai"; import { markdownToHtml } from '../utils/MarkdownUtil.ts'; import { uuid } from '../utils/UUID.ts'; diff --git a/src/extensions/SelectFile.ts b/src/extensions/SelectFile.ts index 9f3c18c..a8faa15 100644 --- a/src/extensions/SelectFile.ts +++ b/src/extensions/SelectFile.ts @@ -1,8 +1,10 @@ // Copyright (c) 2024-present AI-Labs +// @ ts-nocheck import { Node, mergeAttributes } from '@tiptap/core'; import { Plugin, PluginKey, TextSelection } from '@tiptap/pm/state'; import { Decoration, DecorationSet } from '@tiptap/pm/view'; + import { InnerEditor } from '../core/UAIEditor.ts'; import { Base64Uploader } from '../utils/FileUploader.ts'; import { uuid } from '../utils/UUID.ts'; diff --git a/src/extensions/Selection.ts b/src/extensions/Selection.ts index 72b39a1..ca2b188 100644 --- a/src/extensions/Selection.ts +++ b/src/extensions/Selection.ts @@ -1,5 +1,6 @@ // Copyright (c) 2024-present AI-Labs +// @ ts-nocheck import { type Editor, Extension, findParentNode } from '@tiptap/core' import { type NodeSelection, Plugin, PluginKey } from '@tiptap/pm/state' import { Decoration, DecorationSet } from '@tiptap/pm/view' diff --git a/src/extensions/Shortcuts.ts b/src/extensions/Shortcuts.ts index 91a65e6..f0bfdf3 100644 --- a/src/extensions/Shortcuts.ts +++ b/src/extensions/Shortcuts.ts @@ -1,9 +1,11 @@ // Copyright (c) 2024-present AI-Labs +// @ ts-nocheck import { Extension } from '@tiptap/core'; -import { Fullscreen } from '../components/menus/statusbar/Fullscreen'; -import { InnerEditor } from '../core/UAIEditor'; -import { Print } from '../components/menus/toolbar/base/Print'; + +import { InnerEditor } from '../core/UAIEditor.ts'; +import { Fullscreen } from '../components/menus/statusbar/Fullscreen.ts'; +import { Print } from '../components/menus/toolbar/base/Print.ts'; /** * 自定义快捷键 diff --git a/src/extensions/Toc.ts b/src/extensions/Toc.ts index bbd036c..f0a5439 100644 --- a/src/extensions/Toc.ts +++ b/src/extensions/Toc.ts @@ -1,10 +1,13 @@ // Copyright (c) 2024-present AI-Labs +// @ ts-nocheck import { mergeAttributes, Node, NodeViewRendererProps } from '@tiptap/core' -import { InnerEditor } from '../core/UAIEditor' import { TextSelection } from '@tiptap/pm/state' + import { t } from 'i18next' +import { InnerEditor } from '../core/UAIEditor.ts' + declare module '@tiptap/core' { interface Commands { addTableOfContents: { diff --git a/src/extensions/Video.ts b/src/extensions/Video.ts index 72898ab..b6b87ae 100644 --- a/src/extensions/Video.ts +++ b/src/extensions/Video.ts @@ -1,7 +1,9 @@ // Copyright (c) 2024-present AI-Labs +// @ ts-nocheck import { mergeAttributes, Node } from '@tiptap/core' -import { resize } from '../utils/resize' + +import { resize } from '../utils/Resize.ts' declare module '@tiptap/core' { interface Commands { diff --git a/src/i18n/zh.ts b/src/i18n/zh.ts new file mode 100644 index 0000000..eab0232 --- /dev/null +++ b/src/i18n/zh.ts @@ -0,0 +1,483 @@ +export const zh = { + "feedback": "问题建议反馈", + "poweredBy": "技术支持", + "toolbar": { + "ribbon": "专业工具栏", + "classic": "经典工具栏", + "toggle": "切换工具栏", + "show": "显示工具栏", + "hide": "隐藏工具栏", + "source": "编辑源代码", + "base": "开始", + "insert": "插入", + "table": "表格", + "tools": "工具", + "page": "页面", + "export": "导出", + "ai": "人工智能" + }, + "base": { + "align": { + "title": "对齐方式", + "left": "左对齐", + "center": "居中对齐", + "right": "右对齐", + "justify": "两端对齐", + "distributed": "分散对齐" + }, + "bgColor": "字体背景颜色", + "bold": "粗体", + "clearFormat": "清除文本格式", + "codeblock": "代码", + "color": "字体颜色", + "fontFamily": { + "text": "选择字体", + "all": "常用字体", + "recent": "最近使用", + "used": "已使用字体", + "unsupport": "可能无法正常显示该字体,可能是本机未安装该字体" + }, + "fontSize": { + "text": "字体大小", + "increase": "增大字号", + "decrease": "减小字号", + "default": "默认", + "42pt": "初号", + "36pt": "小初", + "26pt": "一号", + "24pt": "小一", + "22pt": "二号", + "18pt": "小二", + "16pt": "三号", + "15pt": "小三", + "14pt": "四号", + "12pt": "小四", + "10_5pt": "五号", + "9pt": "小五", + "7_5pt": "小六", + "6_5pt": "默认" + }, + "formatPainter": { + "text": "格式刷", + "tip": "格式刷:双击可重复使用,按 ESC 退出" + }, + "heading": { + "text": "标题 {level}", + "paragraph": "正文", + "tip": "设置标题,可依据标题生成大纲" + }, + "highlight": { + "text": "高亮显示", + "clear": "清除高亮显示", + "yellowBg": "黄色背景", + "purpleBg": "紫色背景", + "greenBg": "绿色背景", + "blueBg": "蓝色背景", + "red": "红色字体", + "green": "绿色字体" + }, + "indent": "增加缩进", + "italic": "斜体", + "lineHeight": { + "text": "行高", + "default": " (默认)" + }, + "outdent": "减少缩进", + "margin": { + "text": "上下间距", + "top": "上间距", + "bottom": "下间距", + "default": "默认", + "reset": "自动间距" + }, + "importWord": { + "text": "导入 Word", + "loadScript": { + "title": "错误提示", + "message": "正在加载转换的脚本,请稍后重试。" + }, + "limitSize": "文件大小不能超过 5MB。", + "converting": "正在转换Word文档,请稍后...", + "convertError": "解析 Word 文档出错", + "importError": "导入 Word 文档出错" + }, + "markdown": { + "text": "Markdown", + "enable": "开启 Markdown 模式", + "disable": "关闭 Markdown 模式", + "message": "此操作会重置编辑器,切换后当前历史记录会丢失,将无法进行“撤回”等操作,确定要现在切换吗?", + "toggle": "立即切换" + }, + "blockquote": "引用", + "redo": "重做", + "selectAll": "全选", + "strike": "中划线", + "subscript": "下标", + "superscript": "上标", + "underline": "下划线", + "undo": "撤消", + "print": { + "text": "打印", + "title": "打印文档", + }, + }, + "insert": { + "audio": "音频", + "codeBlock": "代码块", + "date": "日期", + "emoji": "表情符", + "file": "文件", + "hardBreak": "换行符", + "hr": { + "text": "分隔线", + "title": "分割线类型", + "color": "分割线颜色", + "signle": "细线", + "double": "双细线", + "dotted": "点线", + "dashed": "虚线", + "dashedDouble": "双虚线", + "signleBold": "粗线", + "doubleBoldTop": "粗细线", + "doubleBoldBottom": "细粗线", + "wavy": "波浪线" + }, + "image": "图片", + "link": { + "text": "链接", + "title": "插入链接", + "insert": "插入", + "hrefText": "链接文本:", + "hrefTextTip": "请输入或选中链接文本", + "href": "链接地址:", + "hrefTip": "请输入链接地址,一般以 http:// 或 https:// 开头" + }, + "math": "数学公式", + "symbol": "特殊字符", + "template": "模板", + "textBox": "文本框", + "toc": "页面大纲", + "video": "视频", + "web": { + "text": "网页", + "insert": "插入", + "title": "插入网页", + "tip": "某些网页可能不支持嵌入。", + "placeholder": "请输入网页地址,以 http:// 或 https:// 开头" + } + }, + "table": { + "addColumnAfter": "插入列(右)", + "addColumnBefore": "插入列(左)", + "addRowAfter": "插入行(后)", + "addRowBefore": "插入行(前)", + "borderColor": "边框颜色", + "cellAlign": { + "text": "对齐方式", + "tip": "单元格对齐方式", + "lt": "靠上左对齐", + "ct": "靠上居中对齐", + "rt": "靠上右对齐", + "jt": "靠上两端对齐", + "lm": "中间左对齐", + "cm": "中间居中对齐", + "rm": "中间右对齐", + "jm": "中间两端对齐", + "lb": "靠下左对齐", + "cb": "靠下居中对齐", + "rb": "靠下右对齐", + "jb": "靠下两端对齐" + }, + "cellBgColor": { + "text": "背景颜色", + "tip": "单元格背景颜色" + }, + "deleteColumn": { + "text": "删除列", + "title": "删除表格列", + "message": "此操作会删除当前选中的表格列,是否继续?", + "delete": "立即删除", + "success": "删除成功" + }, + "deleteRow": { + "text": "删除行", + "title": "删除表格行", + "message": "此操作会删除当前选中的表格行,是否继续?", + "delete": "立即删除", + "success": "删除成功" + }, + "delete": { + "text": "删除表格", + "title": "删除当前表格", + "message": "此操作会删除当前整个表格,是否继续?", + "delete": "立即删除", + "success": "删除成功" + }, + "fix": { + "text": "修复", + "tip": "当表格有错乱时,点击此按钮可自动修复表格" + }, + "insert": { + "text": "插入表格", + "tip": "插入新表格", + "property": "表格属性", + "withHeader": "包含表头", + "rows": "行数:", + "cols": "列数:", + "create": "创建表格" + }, + "mergeCells": "合并单元格", + "nextCell": "下一个单元格", + "prevCell": "上一个单元格", + "splitCell": "拆分单元格", + "toggleHeaderCell": "切换表头单元格", + "toggleHeaderRow": "切换表头行", + "toggleHeaderColumn": "切换表头列" + }, + "tools": { + "barcode": { + "text": "条形码", + "edit": "编辑条形码", + "title": "条形码生成", + "format": "条形码标准", + "font": "文字字体", + "lineColor": "条形码及文字颜色", + "bgColor": "条形码背景颜色", + "more": "更多", + "width": "单个条形的宽度:", + "height": "条形码的高度:", + "margin": "条形码四周留白:", + "displayValue": "是否显示文字", + "displayValueText": "显示文字", + "textContent": "文字内容:", + "textContentTip": "填写后会覆盖条形码内容文本", + "textPosition": "文字所在位置:", + "top": "顶部", + "bottom": "底部", + "textMargin": "文字上下距离:", + "fontSize": "文字字体大小:", + "placeholder": "请输入要转化成条形码的内容", + "error": "您输入的内容可能不符合当前选择的条形码规范约束,请检查。", + "preview": "预览", + "renderError": "当前无预览内容", + "notEmpty": "条形码内容不能为空" + }, + "chineseCase": { + "text": "中文大小写", + "tip": "中文大小写" + }, + "diagrams": { + "text": "流程图", + "edit": "编辑流程图", + "loading": "加载中..." + }, + "mermaid": { + "text": "Mermaid", + "edit": "编辑 Mermaid", + "placeholder": "请输入 Mermaid 代码", + "preview": "预览", + "notEmpty": "Mermaid 内容不能为空" + }, + "mindMap": "思维导图", + "qrcode": { + "text": "二维码", + "edit": "编辑二维码", + "level": "二维码容错能力", + "levelL": "低", + "levelM": "中", + "levelQ": "高", + "levelH": "最高", + "padding": "四周留白:", + "paddingTip": "二维码四周留白大小", + "width": "宽高度:", + "widthTip": "二维码的宽度和高度", + "color": "二维码颜色", + "bgColor": "二维码背景颜色", + "placeholder": "请输入要转化成二维码的内容", + "preview": "预览", + "renderError": "二维码生成失败", + "notEmpty": "二维码内容不能为空" + }, + "seal": { + "text": "电子签章", + "title": "插入电子签章", + "insert": "插入", + "tip": "选择纯色背景电子章的影印件或者照片,将自动扣取电子章,所有操作在本地完成,不会向服务器发送数据,请放心使用。", + "insertTip": "点击此处选择电子章图片", + "converting1": "正在加载抠图组件...", + "converting2": "正在加载抠图组件: {ppercentage}%", + "converting3": "正在抠图中,请稍后...", + "convertError": "电子章抠取失败,请重试", + "notEmpty": "请选择电子章" + }, + "signature": { + "text": "电子签名", + "title": "插入电子签名", + "clear": "清空画布", + "lineWidth": "画笔粗细", + "lineColor": "画笔颜色", + "smooth": "显示笔锋", + "reset": "重置设置", + "tip": "请在当前区域签名", + "notEmpty": "没有检测到您的签名" + } + }, + "page": { + "bg": { + "text": "页面背景", + "custom": "自定义页面背景", + "default": "默认背景", + "color1": "护眼绿", + "color2": "淡雅黄", + "color3": "云水蓝", + "color4": "天空蓝", + "color5": "暗夜黑" + }, + "break": "分页符", + "footer": { + "show": "显示页脚", + "hide": "隐藏页脚" + }, + "header": { + "show": "显示页眉", + "hide": "隐藏页眉" + }, + "lineNumber": "显示行号", + "margin": "页边距", + "orientation": { + "text": "页面方向", + "landscape": "横向", + "portrait": "纵向" + }, + "preview": "演示模式", + "size": { + "text": "页面大小", + "cm": "厘米", + "custom": "自定义设置" + }, + "watermark": { + "text": "页面水印", + "fontFamily": "水印文字字体", + "fontSize": "水印文字大小", + "fontColor": "水印文字颜色", + "content": "水印文字内容", + "type": "水印类型", + "compact": "紧凑型", + "spacious": "宽松型", + "clear": "清除水印" + } + }, + "export": { + "embed": { + "text": "Embed", + "title": "Embed 嵌入", + "tip": "复制后,请手动修改 iframe 的宽度和高度,以便获得更好的浏览效果。", + "copy": "复制", + "copied": "代码已复制到剪切板" + }, + "image": { + "text": "图片", + "title": "导出图片", + "jpg": "JPG 格式", + "png": "PNG 格式", + "error": { + "title": "错误提示", + "message": "导出图片失败,请重试或尝试刷新页面。" + } + }, + "share": { + "text": "分享文档", + "tip": "复制链接发给需要分享的人。", + "copy": "复制链接", + "copied": "链接已复制到剪切板" + }, + "pdf": { + "text": "PDF文档", + "title": "导出 PDF 文档", + "message": "导出 PDF 文档前,请确保所有页面中的图片已加载完毕。然后在弹出的打印框中选择”打印机 - 另存为PDF“,再点击”保存“按钮即可。如果遇到节点背景不显示,请在打印框中勾选 “背景图形”选项。", + "confirm": "我知道了" + }, + "docx": { + "text": "Word 文档", + "title": "导出 Word 文档", + }, + "odt": { + "text": "ODT 文档", + "title": "导出 ODT 文档", + }, + "markdown": { + "text": "Markdown 文档", + "title": "导出 Markdown 文档", + }, + "text": "文本文档" + }, + "ai": { + "chat": { + "title": "有爱智聊" + }, + "image": { + "title": "有爱智画" + } + }, + "bubbleMenu": { + "delete": "删除", + }, + "colorPicker": { + "default": "默认颜色", + "standard": "标准色", + "recent": "最近使用", + "more": "更多颜色" + }, + "list": { + "bullet": { + "text": "无序列表", + "disc": "实心圆点", + "circle": "空心圆点", + "square": "实心方块" + }, + "ordered": { + "text": "有序列表", + "property": "列表属性", + "startAt": "起始编号:", + "decimal": "数字", + "decimalLeadingZero": "以 0 的开头的数字", + "lowerRoman": "小写罗马数字", + "upperRoman": "大写罗马数字", + "lowerLatin": "小写英文编号", + "upperLatin": "大写英文编号", + "tradChineseInformal": "中文编号", + "simpChineseFormal": "大写中文编号" + }, + "task": { + "text": "待办事项", + "split": "增加任务", + "sink": "设为子任务", + "lift": "移除任务" + } + }, + "toc": { + "title": "页面大纲", + "show": "显示大纲", + "hide": "隐藏大纲", + "empty": "暂无页面大纲" + }, + "wordCount": { + "characters": "字符", + "title": "文档信息统计", + "input": "已输入字数", + "selection": "已选中字数", + "limit": "字数限制" + }, + "fullscreen": { + "title": "全屏模式", + "disable": "退出全屏" + }, + "zoom": { + "zoomIn": "增加缩放", + "zoomOut": "减小缩放", + "level": "当前缩放比例:", + "autoWidth": "最佳宽度", + "autoWidthError": "页面自动宽度计算出错", + "reset": "快速设置为 100%" + }, +} diff --git a/src/index.ts b/src/index.ts new file mode 100644 index 0000000..99931af --- /dev/null +++ b/src/index.ts @@ -0,0 +1,3 @@ +// Copyright (c) 2024-present AI-Labs + +export * from './core/UAIEditor.ts'; diff --git a/src/main.ts b/src/main.ts new file mode 100644 index 0000000..b05cb39 --- /dev/null +++ b/src/main.ts @@ -0,0 +1,70 @@ +// Copyright (c) 2024-present AI-Labs + +import { UAIEditor } from "./core/UAIEditor.ts"; + +new UAIEditor({ + element: "#uai-editor", + content: `> UAI Editor 是一个面向 AI 的、现代 UI 风格的下一代富文本编辑器。开箱即用、支持所有前端框架。\n\n + +# 冬日游记 + +北风呼啸,白雪皑皑,冬日踏上了这片宁静的大地。我独自一人,踏着轻盈的步伐,走进了这个银装素裹的世界,去感受那冬日的诗意与宁静。 + +清晨,阳光透过窗户洒在床头,我揉了揉惺忪的睡眼,拉开窗帘,眼前的景象让我陶醉。那一片片洁白的雪花,像无数只蝴蝶翩翩起舞,在空中划过优美的弧线,最终静静地躺在地上,与大地拥抱。我迫不及待地穿上厚厚的羽绒服,戴上手套和帽子,踏上了寻雪之旅。 + +沿着蜿蜒的小路,我来到了一片雪原。脚下传来“咯吱咯吱”的声音,那是雪与鞋底相触的旋律。我深吸一口冷空气,那股清新的气息瞬间让我神清气爽。四周一片寂静,只有雪花飘落的声音,仿佛是大自然在诉说着冬日的秘密。 + +我漫步在雪原上,任雪花飘落在我的发梢、肩头。忽然,我发现了一只小松鼠,它正忙碌地从树上摘下松果,然后迅速地藏进树洞。我静静地注视着它,心中涌起一股暖意。在这个寒冷的冬日,小松鼠的勤劳和智慧让我敬佩不已。 + +午后,我来到了一座雪山。站在山脚下,仰望那巍峨的山峰,我仿佛看到了天地相连的壮丽景象。我沿着蜿蜒的山路向上攀登,一路上,雪花纷飞,将我包裹在一片白色的世界里。当我爬到山顶时,眼前豁然开朗,一片雪原尽收眼底。我倚靠在山石上,闭上眼睛,感受着阳光的温暖和风儿的轻拂,那一刻,我仿佛与大自然融为一体。 + +夜幕降临,我来到了一个村庄。这里的房屋都披上了银白的雪衣,宛如童话世界一般。我走进一家小酒馆,点了一壶热酒,品尝着浓郁的酒香,与酒馆老板闲聊着。他告诉我,这里的冬天虽然寒冷,但村民们都十分热情好客。我心中涌起一股暖意,仿佛感受到了这个村庄的温暖。 + +归途中,我漫步在雪地中,看着那一盏盏明亮的路灯,照亮了我前行的道路。我感慨万分,这个冬日,让我领略了大自然的美妙,也让我感受到了人间的温情。 + +时光荏苒,冬日的旅程即将结束。我带着满满的回忆,踏上了回家的路。虽然冬天即将过去,但我相信,那些美好的瞬间将永远留在我的心中,成为我人生中最宝贵的财富。 +`, + header: "ribbon", + ai: { + chat: { + models: { + "default": { + modelType: 'openai', + baseUrl: 'https://open.bigmodel.cn/api/paas/v4', + apiKey: process.env.CHATGLM_APIKEY, + model: 'glm-4-flash' + }, + "GLM-4": { + modelType: 'openai', + baseUrl: 'https://open.bigmodel.cn/api/paas/v4', + apiKey: process.env.CHATGLM_APIKEY, + model: 'glm-4-flash' + }, + "InternLM2.5": { + modelType: 'openai', + baseUrl: 'https://internlm-chat.intern-ai.org.cn/puyu/api/v1', + apiKey: process.env.INTERNLM_TOKEN, + model: 'internlm2.5-latest' + }, + }, + }, + image: { + models: { + text2image: { + "default": { + modelType: 'openai', + baseUrl: 'https://open.bigmodel.cn/api/paas/v4', // images/generations + apiKey: process.env.CHATGLM_APIKEY, + model: 'cogview-3-flash' + }, + "CogView-3": { + modelType: 'openai', + baseUrl: 'https://open.bigmodel.cn/api/paas/v4', // images/generations + apiKey: process.env.CHATGLM_APIKEY, + model: 'cogview-3-flash' + }, + } + } + } + } +}) diff --git a/src/styles/index.ts b/src/styles/index.ts new file mode 100644 index 0000000..23c86f9 --- /dev/null +++ b/src/styles/index.ts @@ -0,0 +1,3 @@ +import './mixins.less'; +import './variables.less'; +import './uaieditor.less'; diff --git a/src/styles/mixins.less b/src/styles/mixins.less new file mode 100644 index 0000000..4f2190b --- /dev/null +++ b/src/styles/mixins.less @@ -0,0 +1,127 @@ +.uai-scrollbar() { + overflow: auto; + &::-webkit-scrollbar { + width: var(--uai-scrollbar-size) !important; + height: var(--uai-scrollbar-size) !important; + position: absolute; + } + &::-webkit-scrollbar-track { + width: var(--uai-scrollbar-size) !important; + background: transparent; + } + &:hover::-webkit-scrollbar-thumb { + background-color: var(--uai-scrollbar-thumb-color); + background-clip: padding-box; + border-radius: 1em; + transition: background-color 0.3s; + cursor: pointer; + } + &::-webkit-scrollbar-thumb:hover { + background-color: var(--uai-scrollbar-thumb-hover-color); + } +} + +.uai-page-divider() { + display: block; + white-space: nowrap; + letter-spacing: 100vw; + overflow: hidden; + width: 100%; + user-select: none; + border: none; + height: unset; + &::before { + display: block; + content: '\2000'; + overflow: hidden; + text-decoration-line: line-through; + text-decoration-style: solid; + text-decoration-thickness: 0.1em; + } + &::after { + overflow: hidden; + } + &[data-type='signle'] { + &::before { + text-decoration-style: solid; + } + } + &[data-type='signle-bold'] { + &::before { + text-decoration-style: solid; + text-decoration-thickness: 0.3em; + } + } + &[data-type='double'] { + &::before { + text-decoration-style: double; + } + } + &[data-type='dotted'] { + &::before { + text-decoration-style: dotted; + } + } + &[data-type='dashed'] { + &::before { + text-decoration-style: dashed; + } + } + &[data-type='dashed-double'] { + &::before { + text-decoration-style: dashed; + text-decoration-thickness: 0.1em; + margin-top: 0.5em; + line-height: 0.4em; + } + &::after { + display: block; + content: '\2000'; + text-decoration-line: line-through; + text-decoration-thickness: 0.1em; + text-decoration-style: dashed; + line-height: 0.4em; + margin-bottom: 0.5em; + } + } + &[data-type='double-bold-top'] { + &::before { + text-decoration-style: solid; + text-decoration-thickness: 0.3em; + margin-top: 0.5em; + line-height: 0.4em; + } + &::after { + display: block; + content: '\2000'; + text-decoration-line: line-through; + text-decoration-thickness: 0.05em; + text-decoration-style: solid; + line-height: 0.4em; + margin-bottom: 0.5em; + } + } + &[data-type='double-bold-bottom'] { + &::before { + text-decoration-style: solid; + text-decoration-thickness: 0.05em; + margin-top: 0.5em; + line-height: 0.4em; + } + &::after { + display: block; + content: '\2000'; + text-decoration-line: line-through; + text-decoration-thickness: 0.3em; + text-decoration-style: solid; + line-height: 0.4em; + margin-bottom: 0.5em; + } + } + &[data-type='wavy'] { + &::before { + text-decoration-style: wavy; + text-decoration-thickness: 0.12em; + } + } +} diff --git a/src/styles/uaieditor.less b/src/styles/uaieditor.less new file mode 100644 index 0000000..8df5caf --- /dev/null +++ b/src/styles/uaieditor.less @@ -0,0 +1,2374 @@ +@import './mixins.less'; +@import './variables.less'; +@import (less) 'github-markdown-css/github-markdown.css'; + +.uai-editor-container { + --td-brand-color: var(--uai-primary-color); + --td-warning-color: var(--uai-warning-color); + --td-error-color: var(--uai-error-color); + --td-text-color-primary: var(--uai-text-color); + --td-text-color-disabled: var(--uai-text-color-disabled); + width: 100%; + height: 100%; + display: flex; + flex-direction: column; + color: var(--uai-text-color); + font-family: var(--uai-font-family); + position: relative !important; + + .uai-toolbar, + .uai-footer { + background-color: var(--uai-color-white); + } + + .katex .katex-html { + display: none; + } + + .uai-icon { + display: flex; + } + + .uai-menu-disabled { + cursor: not-allowed !important; + } + + .uai-menu-enabled { + cursor: pointer !important; + } + + .uai-toolbar { + .uai-input.uai-size-s { + --td-comp-paddingLR-s: 5px; + + &.uai-input--suffix { + padding-right: 2px !important; + } + + &__suffix { + &:not(:empty) { + margin-left: 0 !important; + } + } + } + + .uai-toolbar-container { + display: flex; + justify-content: space-between; + user-select: none; + border-bottom: solid 1px var(--uai-border-color); + position: relative; + + .uai-editor-menu-select { + border: solid 1px var(--uai-border-color-light); + border-radius: var(--uai-radius); + margin-left: 3px; + } + + .uai-editor-menu-select-3 { + padding: 3px; + border: solid 1px var(--uai-border-color-light); + border-radius: var(--uai-radius); + } + + .uai-ribbon-menu { + + .uai-ribbon-tabs { + padding: 10px 10px 0; + display: flex; + + &-item { + font-size: var(--uai-font-size-small); + margin-right: 25px; + cursor: pointer; + display: flex; + align-items: center; + flex-direction: column; + + &:hover { + font-weight: 600; + + &::after { + display: block; + content: ''; + height: 3px; + width: 100%; + margin-top: 5px; + background-color: var(--uai-border-color); + } + } + + &.active { + color: var(--uai-primary-color); + font-weight: 600; + + &::after { + display: block; + content: ''; + height: 3px; + width: 100%; + margin-top: 5px; + background-color: var(--uai-primary-color); + transition: width 0.3s; + } + + &:hover::after { + width: 120%; + } + } + + @media screen and (max-width: 640px) { + margin-right: 10px; + } + } + } + + .uai-ribbon-scrollable-container { + padding: 10px; + box-sizing: border-box; + + .uai-ribbon-container { + display: flex; + height: 61px; + flex-shrink: 0; + + select { + border: none; + outline: none; + } + + .uai-ribbon-virtual-group { + padding: 0 20px; + border-left: solid 1px var(--uai-border-color-light); + flex-shrink: 0; + + &:empty { + display: none; + } + + &:first-child { + padding-left: 0; + } + + &:first-child { + border-left: none; + } + + &-row { + display: flex; + align-items: center; + + :deep(> *:not(:last-child)) { + margin-right: 5px; + } + + &:not(:last-child) { + margin-bottom: 5px; + } + } + } + } + } + } + + .uai-classic-scrollable-container { + height: 50px; + padding: 10px; + display: flex; + align-items: center; + + .uai-classic-scrollable-menu { + display: flex; + overflow: hidden; + } + + .uai-classic-menu { + display: flex; + align-items: center; + flex: 1; + width: 100%; + + select { + border: none; + outline: none; + } + + .uai-classic-virtual-group { + display: flex; + align-items: center; + // border-left: solid 1px #db2323;// var(--uai-border-color-light); + flex-shrink: 0; + + &:empty { + display: none; + } + + // &:not(:last-child) { + &::before { + content: ''; + display: block; + height: 18px; + width: 1px; + background-color: var(--uai-border-color-light); + margin: 0 10px; + } + // } + + &:first-child::before { + display: none; + } + + :deep(.uai-menu-button .uai-button--shape-square) { + .uai-icon { + font-size: 14px; + } + } + + &-row { + display: flex; + } + } + } + } + + .uai-scrollable-control-button { + padding: 0 10px; + background: var(--uai-primary-color); + border-radius: var(--uai-radius); + display: flex; + align-items: center; + /* 垂直居中子元素 */ + justify-content: center; + /* 如果你也想要水平居中 */ + vertical-align: middle; + + &:hover { + cursor: pointer; + } + } + + .uai-toolbar-actions { + padding: 6px 10px; + font-size: small; + min-width: 110px; + + &.ribbon { + position: absolute; + right: 0; + top: 1px; + } + + &-button { + cursor: pointer; + + &.active { + background-color: var(--uai-button-hover-background); + } + + &:not(:last-child) { + margin-right: 3px; + } + + :deep(.uai-button__text) { + display: flex; + align-items: center; + + .uai-icon { + margin-right: 3px; + } + } + } + + @media screen and (max-width: 640px) { + padding-left: 0; + + .uai-status-online { + margin-right: 0; + } + + .uai-button-text { + display: none; + } + } + } + } + } + + .uai-menu-button { + --td-comp-paddingLR-s: 5px; + --td-radius-default: var(--uai-radius); + border: none; + margin: 0 3px; + display: flex; + flex-direction: row; + + &.show-text { + width: auto; + padding-left: var(--td-comp-paddingLR-s); + padding-right: var(--td-comp-paddingLR-s); + + .uai-button-content .uai-button-text { + display: block !important; + margin-left: 3px; + } + } + + &[disabled] { + .uai-button-icon { + --uai-primary-color: var(--uai-text-color-disabled); + color: var(--uai-text-color-disabled) !important; + } + + .uai-button-text { + color: var(--uai-text-color-disabled) !important; + } + } + + &-wrap { + display: inline-flex; + + &:not(:last-child) { + margin-right: 5px; + } + } + + &:hover, + &.active { + background-color: var(--uai-button-hover-background); + border-radius: var(--uai-radius); + + .uai-button-icon-arrow.uai-button-handle { + background-color: rgba(0, 0, 0, 0.05); + } + } + + .uai-button-content { + display: flex; + padding: 5px; + align-items: center; + justify-content: center; + + .uai-button-icon, + :deep(.uai-icon) { + font-size: 16px; + } + + .uai-button-icon-svg { + display: flex; + + :deep(svg) { + width: 16px; + height: 16px; + } + } + + .uai-button-text { + display: none; + } + } + + .uai-button-icon-arrow { + width: 14px; + margin-left: -3px; + border-top-right-radius: var(--uai-radius); + border-bottom-right-radius: var(--uai-radius); + + &:hover { + background-color: #ddd; // var(--td-bg-color-container-active); + } + } + + &.huge { + width: auto; + height: 56px; + margin-bottom: 0; + flex-direction: row; + + .uai-button-content { + display: flex; + padding: 10px; + align-items: center; + justify-content: center; + flex-direction: column; + min-width: 32px; + + .uai-button-icon { + display: block; + font-size: 24px; + margin-top: 3px; + } + + .uai-button-icon-svg { + display: flex; + margin-top: 3px; + + :deep(svg) { + width: 24px; + height: 24px; + } + } + + .uai-button-text { + display: block; + font-size: 12px; + color: var(--uai-text-color); + } + } + + .uai-button-icon-arrow { + width: 14px; + margin-left: -10px; + padding-top: 10px; + border-top-right-radius: var(--uai-radius); + border-bottom-right-radius: var(--uai-radius); + + &:hover { + background-color: #ddd; // var(--td-bg-color-container-active); + } + } + + &.has-arrow { + .uai-button-content { + min-width: 40px; + } + } + } + + &.classic-text { + width: auto; + + .uai-button-content .uai-button-text { + display: block !important; + font-size: 12px; + color: var(--uai-text-color); + margin-left: 3px; + } + } + } + + .uai-emojis-container { + width: 404px; + max-height: var(--uai-popup-max-height); + min-height: 320px; + overflow: auto; + margin: calc(var(--uai-popup-content-padding) * -1); + } + + .uai-emojis-group { + position: relative; + + &-title { + color: var(--uai-text-color-light); + font-size: 12px; + position: sticky; + line-height: 2.4; + top: 0; + background-color: var(--uai-button-hover-background); + padding-left: calc(var(--uai-popup-content-padding) + 5px); + + &:first-child { + margin-top: 0; + } + } + + &-container { + display: flex; + flex-wrap: wrap; + background-color: #fff; + padding: 10px var(--uai-popup-content-padding); + overflow: auto; + gap: 2px; + } + + &-item { + flex-basis: 32px; + display: flex; + align-items: center; + justify-content: center; + width: 32px; + height: 32px; + line-height: 1em; + border-radius: var(--uai-radius); + cursor: pointer; + font-size: 20px; + margin-bottom: 2px; + color: var(--uai-text-color); + transition: font-size 0.2s; + + &:hover { + background-color: var(--uai-button-hover-background); + font-size: 24px; + } + } + } + + .tippy-box { + max-width: 1000px !important; + } + + .tippy-box[data-animation="fade"][data-state="hidden"] { + opacity: 0; + } + + [data-tippy-root] { + max-width: calc(100% - 10px); + } + + .tippy-box { + position: relative; + //background-color: #333; + //color: #fff; + border-radius: var(--uai-radius); + font-size: 14px; + line-height: 1.4; + white-space: normal; + outline: 0; + transition-property: transform, visibility, opacity; + } + + .tippy-box[data-placement^="top"]>.tippy-arrow { + bottom: 0; + } + + .tippy-box[data-placement^="top"]>.tippy-arrow:before { + bottom: -7px; + left: 0; + border-width: 8px 8px 0; + border-top-color: initial; + transform-origin: center top; + } + + .tippy-box[data-placement^="bottom"]>.tippy-arrow { + top: 0; + } + + .tippy-box[data-placement^="bottom"]>.tippy-arrow:before { + top: -7px; + left: 0; + border-width: 0 8px 8px; + border-bottom-color: initial; + transform-origin: center bottom; + } + + .tippy-box[data-placement^="left"]>.tippy-arrow { + right: 0; + } + + .tippy-box[data-placement^="left"]>.tippy-arrow:before { + border-width: 8px 0 8px 8px; + border-left-color: initial; + right: -7px; + transform-origin: center left; + } + + .tippy-box[data-placement^="right"]>.tippy-arrow { + left: 0; + } + + .tippy-box[data-placement^="right"]>.tippy-arrow:before { + left: -7px; + border-width: 8px 8px 8px 0; + border-right-color: initial; + transform-origin: center right; + } + + .tippy-box[data-inertia][data-state="visible"] { + transition-timing-function: cubic-bezier(0.54, 1.5, 0.38, 1.11); + } + + .tippy-arrow { + width: 16px; + height: 16px; + } + + .tippy-arrow:before { + content: ""; + position: absolute; + border-color: transparent; + border-style: solid; + } + + .tippy-content { + position: relative; + padding: 5px 9px; + z-index: 1; + } + + .tippy-box[data-theme~='uai-tips'] { + background-color: var(--uai-menu-tips-bg-color); + color: var(--uai-menu-tips-text-color); + border: solid 1px var(--uai-border-color); + box-shadow: 2px 2px 2px 2px rgba(150, 150, 150, 0.1); + } + + .tippy-box[data-theme~='uai-tips'][data-placement^='top']>.tippy-arrow::before { + border-top-color: var(--uai-menu-tips-bg-color); + border: solid 1px var(--uai-border-color); + } + + .tippy-box[data-theme~='uai-tips'][data-placement^='bottom']>.tippy-arrow::before { + border-bottom-color: var(--uai-menu-tips-bg-color); + border: solid 1px var(--uai-border-color); + } + + .tippy-box[data-theme~='uai-tips'][data-placement^='left']>.tippy-arrow::before { + border-left-color: var(--uai-menu-tips-bg-color); + } + + .tippy-box[data-theme~='uai-tips'][data-placement^='right']>.tippy-arrow::before { + border-right-color: var(--uai-menu-tips-bg-color); + } + + .uai-color-picker { + width: 260px; + background-color: #fff; + border: solid 1px var(--uai-border-color); + box-shadow: 4px 4px rgba(236, 236, 236, 0.5); + + &-container { + width: 236px; + margin: 0 auto; + } + + &-default-button { + .uai-button { + height: 30px; + border: solid 1px var(--uai-border-color); + border-radius: var(--uai-radius); + text-align: center; + align-items: center; + vertical-align: middle; + margin-top: 10px; + padding-top: 5px; + + &:hover { + color: var(--uai-primary-color); + border: solid 1px var(--uai-primary-color); + cursor: pointer; + } + } + } + + &-group { + display: flex; + flex-wrap: wrap; + margin: 8px 0; + gap: 4px; + + &-title { + color: var(--uai-text-color-light); + font-size: 12px; + margin: 5px 0 2px; + } + } + + &-item { + width: 20px; + height: 20px; + border: solid 1px rgba(0, 0, 0, 0.1); + margin-bottom: 2px; + flex-basis: 20px; + box-sizing: border-box; + transition: all 0.2s; + cursor: pointer; + border-radius: 3px; + + &:hover { + transform: scale(1.1); + border-color: rgba(0, 0, 0, 0.3); + } + } + + &-divider { + height: 1px; + background-color: var(--uai-border-color-light); + margin: 10px 0; + } + + &-more { + display: flex; + justify-content: space-between; + align-items: center; + padding: 5px; + cursor: pointer; + + &:hover, + &.active { + background-color: var(--td-bg-color-container-hover); + border-radius: var(--uai-radius); + } + + &-menu { + display: flex; + align-items: center; + font-size: 12px; + color: var(--uai-text-color-light); + cursor: pointer; + + .uai-icon { + margin-right: 5px; + font-size: 18px; + } + } + + &-arrow { + .uai-icon { + transform: rotate(-90deg); + } + } + } + } + + .uai-ordered-list { + background-color: #fff; + padding: 10px; + border: solid 1px var(--uai-border-color); + box-shadow: 4px 4px rgba(236, 236, 236, 0.5); + + .uai-ordered-list-group { + display: flex; + align-items: center; + justify-content: flex-start; + flex-wrap: wrap; + gap: 8px; + max-width: 248px; + margin-bottom: 10px; + + .uai-ordered-list-item { + cursor: pointer; + padding: 5px; + border: solid 1px var(--uai-border-color); + box-sizing: border-box; + + &:nth-child(4n) { + margin-right: 0; + } + + &:hover { + background-color: var(--uai-button-hover-background); + } + + &.active { + border-color: var(--uai-primary-color); + } + } + + .uai-icon-ordered-list { + font-size: 44px; + } + } + } + + .uai-ordered-list-title { + color: var(--uai-text-color-light); + font-size: 12px; + margin: 7px 0 4px; + } + + .uai-ordered-list-divider { + height: 1px; + background-color: var(--uai-border-color-light); + margin: 5px 0 0; + } + + .uai-ordered-list-properties { + display: flex; + flex-direction: column; + + :deep(.uai-input-number) { + width: 248px; + } + } + + .uai-popup-action-list { + background-color: #fff; + padding: 8px; + border: solid 1px var(--uai-border-color); + box-shadow: 4px 4px rgba(236, 236, 236, 0.5); + + .uai-popup-action-item { + padding: 5px; + margin: 2px; + display: flex; + align-items: center; + + &:hover { + cursor: pointer; + background: var(--uai-button-hover-background); + border-radius: var(--uai-radius); + } + } + + hr { + margin: 5px; + color: var(--uai-border-color); + height: 2px; + } + } + + .uai-ribbon-heading-container { + width: 321px; + height: 56px; + display: flex; + position: relative; + z-index: 100; + background-color: var(--uai-container-background); + border: solid 1px var(--uai-border-color); + border-radius: var(--uai-radius); + + .uai-ribbon-heading-list { + margin: 5px; + display: flex; + flex-wrap: wrap; + max-width: 300px; + overflow: hidden; + } + + .uai-ribbon-heading-arrow { + margin-top: 8px; + margin-right: 5px; + padding-top: 8px; + height: 40px; + width: 16px; + border-radius: var(--uai-radius); + + &:hover { + cursor: pointer; + background: #ddd; // var(--uai-content-node-selected-background); + border-radius: var(--uai-radius); + } + } + + .uai-ribbon-heading-item { + width: 140px; + height: 42px; + margin: 2px; + padding: 0; + text-align: center; + background-color: #fff; + border: solid 1px var(--uai-border-color); + border-radius: var(--uai-radius); + padding: 5px 10px; + box-sizing: border-box; + cursor: pointer; + flex: 0 0 68px; + + &:hover, + &.active { + border-color: var(--uai-primary-color); + } + + &-title { + line-height: 18px; + font-weight: 600; + + &.text { + font-size: 12px; + font-weight: 400; + } + + &.h1 { + font-size: 15px; + } + + &.h2 { + font-size: 14px; + } + + &.h3 { + font-size: 13px; + } + + &.h4 { + font-size: 12px; + } + + &.h5 { + font-size: 11px; + } + + &.h6 { + font-size: 10px; + } + } + + &-subtitle { + font-size: 8px; + color: var(--uai-text-color-light); + text-transform: capitalize; + margin-top: 3px; + line-height: 1; + } + } + } + + .uai-modal { + display: none; + /* 默认隐藏 */ + position: relative; + /* 固定位置 */ + z-index: 9999; + /* 放在顶部 */ + left: 100px; + top: 0px; + width: 500px; + /* 全宽 */ + height: 500px; + /* 全高 */ + overflow: auto; + /* 如果内容溢出,则可以滚动 */ + background-color: rgba(0, 0, 0, 0.4); + /* 半透明 */ + } + + .uai-pannel-container { + background-color: var(--uai-color-white); + border-right: solid 1px var(--uai-border-color); + width: 400px; + height: 100%; + box-sizing: border-box; + display: flex; + flex-direction: column; + + .uai-pannel-title { + border-bottom: solid 1px var(--uai-border-color-light); + display: flex; + align-items: center; + position: relative; + padding: 10px 15px; + + .uai-pannel-icon { + margin-right: 5px; + font-size: 20px; + + svg { + margin: auto; + width: 8px; + fill: #ccc; + animation: rotate 2s linear infinite; + } + } + + .uai-pannel-close { + position: absolute; + right: 15px; + display: flex; + align-items: center; + justify-content: center; + } + } + + .uai-container-app-models { + display: flex; + align-items: center; + font-size: 16px; + padding: 10px; + color: var(--uai-text-color); + border-bottom: solid 1px var(--uai-border-color); + + .uai-model-select { + height: 24px; + font-size: large; + } + + select { + border: solid 1px var(--uai-border-color); + } + } + + .uai-toc-content { + list-style: none; + flex: 1; + display: flex; + padding: 10px; + flex-direction: column; + overflow: auto; + .uai-scrollbar(); + + .uai-toc-item { + border-radius: 3px; + padding: 5px; + box-sizing: border-box; + align-items: center; + position: relative; + margin: 2px 0; + + &:hover { + cursor: pointer; + background: var(--uai-content-node-selected-background); + color: var(--uai-primary-color); + + &::before { + color: var(--uai-primary-color); + border-color: var(--uai-primary-color); + } + } + + &.active { + background: var(--uai-button-hover-background); + color: var(--uai-primary-color); + + &::before { + color: var(--uai-primary-color); + border-color: var(--uai-primary-color); + } + } + + &.level-1 { + margin-left: 0; + width: 100%; + } + + &.level-2 { + margin-left: 15px; + width: calc(100% - 15px); + } + + &.level-3 { + margin-left: 30px; + width: calc(100% - 30px); + } + + &.level-4 { + margin-left: 45px; + width: calc(100% - 45px); + } + + &.level-5 { + margin-left: 60px; + width: calc(100% - 60px); + } + + &.level-6 { + padding-left: 75px; + width: calc(100% - 75px); + } + + .uai-toc-text { + text-overflow: ellipsis; + word-break: break-all; + white-space: nowrap; + overflow: hidden; + } + } + } + + .uai-ai-content { + flex: 1; + display: flex; + flex-direction: column; + overflow: auto; + .uai-scrollbar(); + word-break: break-all; + + .uai-directory { + margin: 30px 10px; + width: calc(100% - 20px); + overflow: hidden; + z-index: 0; + color: var(--uai-text-color); + + h5 { + margin: 15px auto; + text-align: center; + font-size: 16px; + text-indent: 4px; + line-height: 10px; + } + + a { + color: var(--uai-text-color); + height: 30px; + font-size: 14px; + line-height: 30px; + text-decoration: none; + width: 100%; + display: inline-block; + margin: 0; + padding: 0; + white-space: nowrap; + overflow: hidden; + -o-text-overflow: ellipsis; + text-overflow: ellipsis; + } + + a:hover { + cursor: pointer; + background-color: #334d660f; + border-radius: 4px; + } + } + + .user-avatar { + margin-left: 5px; + } + + .bot-avatar { + margin-right: 5px; + } + + .message { + margin: 10px; + display: flex; + vertical-align: middle; + } + + .hidden-content { + cursor: pointer; + display: none; + height: 100%; + width: 40px; + margin: 3px; + border: none; + font-size: large; + } + + .message:hover .hidden-content { + display: flex; + } + + .message-sent { + justify-content: flex-end; + } + + .message-received { + justify-content: flex-start; + } + + .bubble { + padding: 10px; + display: inline-block; + height: 100%; + min-height: auto !important; + max-width: calc(100% - 97px); + } + + .bubble-sent { + border-radius: 10px 0; + background-color: var(--uai-app-bubble-sent-background-color); + align-self: flex-end; + } + + .bubble-received { + border-radius: 0 10px; + background-color: var(--uai-app-bubble-reveived-background-color); + align-self: flex-start; + } + } + + .uai-container-app-input { + text-align: center; + box-sizing: border-box; + + .uai-message-container { + border: 1px solid var(--uai-border-color); + border-radius: var(--uai-radius); + margin: 10px; + text-align: center; + display: flex; + align-items: last baseline; + + .uai-message-textarea { + width: calc(100% - 40px); + font-size: 16px; + padding: 5px; + margin: 5px; + outline: none; + min-height: 20px; + max-height: 200px; + height: auto; + overflow: auto; + box-sizing: border-box; + scrollbar-width: none; + border: none; + resize: none; + color: var(--uai-text-color); + + ::-webkit-scrollbar { + display: none; + } + } + + .uai-image-button { + border: none; + margin: 5px 10px; + /* 移除边框 */ + background: none; + /* 移除背景 */ + padding: 0; + /* 移除内边距 */ + cursor: pointer; + /* 鼠标悬停时显示指针 */ + } + } + } + } + + .uai-loader-placeholder { + width: 50px; + height: 50px; + background: #eee; + display: flex; + + svg { + margin: auto; + fill: #ccc; + } + + @keyframes rotate { + from { + transform: rotate(0deg); + } + + to { + transform: rotate(360deg); + } + } + } + + .uai-resize-wrapper { + position: relative; + display: inline-flex; + + img { + position: relative; + } + + &:hover .uai-resize { + display: inline-block; + } + + .uai-resize { + display: none; + position: absolute; + top: -2px; + left: -2px; + border: 2px solid #609eec; + width: calc(100% + 4px); + height: calc(100% + 4px); + + div { + position: absolute; + display: flex; + width: 20px; + height: 20px; + z-index: 1; + } + + div::after { + content: ""; + display: block; + margin: auto; + width: 10px; + height: 10px; + border: solid 2px #609eec; + background: #fff; + } + + .uai-resize-btn-top-left { + left: -10px; + top: -10px; + cursor: nwse-resize; + } + + .uai-resize-btn-top-center { + left: calc(50% - 10px); + top: -10px; + cursor: n-resize; + } + + .uai-resize-btn-top-right { + right: -10px; + top: -10px; + cursor: nesw-resize; + } + + .uai-resize-btn-left-center { + left: -10px; + top: calc(50% - 10px); + cursor: w-resize; + } + + .uai-resize-btn-right-center { + right: -10px; + top: calc(50% - 10px); + cursor: e-resize; + } + + .uai-resize-btn-bottom-left { + left: -10px; + bottom: -10px; + cursor: nesw-resize; + } + + .uai-resize-btn-bottom-center { + left: calc(50% - 10px); + bottom: -10px; + cursor: s-resize; + } + + .uai-resize-btn-bottom-right { + right: -10px; + bottom: -10px; + cursor: nwse-resize; + } + } + } + + .uai-bubble-menu-container { + display: flex; + align-items: center; + flex: 1; + // width: 100%; + border: solid 1px var(--uai-border-color); + background-color: #fff; + box-shadow: 2px 2px 2px 2px rgba(150, 150, 150, 0.1); + padding: 5px; + + select { + border: none; + outline: none; + } + + .uai-bubble-menu-virtual-group { + display: flex; + align-items: center; + flex-shrink: 0; + + &:empty { + display: none; + } + + &::before { + content: ''; + display: block; + height: 18px; + width: 1px; + background-color: var(--uai-border-color-light); + margin: 0 10px; + } + + &:first-child::before { + display: none; + } + } + } + + .uai-main { + flex: 1; + background-color: var(--uai-container-background); + overflow: auto; + .uai-scrollbar(); + + &.preview-mode { + &.laser-pointer { + .uai-main { + cursor: url('@/assets/images/laser-pointer.svg'), auto; + } + } + } + + .uai-page-container { + display: flex; + position: relative; + } + + .uai-zoomable-container { + flex: 1; + padding: 20px 20px; + scroll-behavior: smooth; + + .uai-zoomable-content { + margin: 0 auto; + width: 21cm; + min-height: 29.7cm; + position: relative; + background-color: white; + padding: 30px 50px; + + .uai-page-content { + transform-origin: 0 0; + box-sizing: border-box; + display: flex; + position: relative; + overflow: visible !important; + + [contenteditable] { + outline: none; + } + } + } + } + } + + .uai-footer { + .uai-status-bar { + padding: 5px; + display: flex; + justify-content: space-between; + font-size: var(--uai-font-size-small); + border-top: solid 1px var(--uai-border-color); + + @media screen and (max-width: 640px) { + overflow-x: auto; + + &::-webkit-scrollbar { + display: none; + } + } + + .uai-status-bar-split { + height: 18px; + width: 1px; + background-color: var(--uai-border-color); + margin-left: 13px; + } + + .uai-status-bar-button { + --td-comp-size-xs: 18px; + --td-comp-paddingLR-l: 8px; + --td-radius-default: 2px; + font-size: 14px; + margin: 0 4px; + color: var(--uai-text-color); + cursor: pointer; + + &:not(.auto-width) { + width: var(--td-comp-size-xs); + } + + &.auto-width { + font-size: var(--uai-font-size-small); + padding-left: 6px; + padding-right: 6px; + } + + &.word-count { + padding-left: 2px; + padding-right: 0; + + :deep(.uai-button__text) { + display: flex; + align-items: center; + + .uai-icon { + margin-left: 3px; + transform: rotate(180deg); + } + } + } + + :deep(.uai-button__text) { + padding: 0 5px; + } + + &.active { + background-color: var(--uai-button-hover-background); + border-color: var(--uai-button-hover-background); + color: var(--uai-primary-color); + } + } + + &-left { + display: flex; + align-items: center; + } + + &-right { + display: flex; + align-items: center; + padding-right: 15px; + + .uai-zoom-level-bar { + width: 240px; + display: flex; + --td-comp-size-xxxs: 8px; + --td-size-2: 3px; + --td-brand-color: var(--uai-text-color); + + .uai-zoom-level-slider { + :deep(.uai-slider__button) { + background: var(--td-brand-color); + border: none; + box-shadow: none; + } + + :deep(.uai-slider__track) { + background: none; + } + } + } + + .uai-lang-button { + :deep(.uai-button__text) { + display: flex; + align-items: center; + + .uai-icon { + font-size: 16px; + margin-right: 3px; + } + } + } + + @media screen and (max-width: 720px) { + .uai-zoom-level-bar { + width: auto; + } + + .uai-zoom-level-slider, + .uai-lang-button { + display: none !important; + } + } + } + } + } + + .uai-source-editor { + width: 100%; + height: 100%; + background-color: #609eec; + } + + //******************************/ + + @media print { + overflow: auto; + height: auto; + } + + &.is-empty { + .uai-page-node-content> :first-child { + &::after { + content: var(--uai-editor-placeholder); + color: var(--uai-content-placeholder-color); + position: absolute; + top: 0; + cursor: text; + } + } + } + + &.show-line-number { + .uai-page-node-content { + >*:not([data-line-number='false']):not(div):not(.uai-node-focused) { + position: relative; + + &::before { + position: absolute; + content: counter(title) '.'; + counter-increment: title; + right: 100%; + margin-right: 20px; + color: var(--uai-content-line-number-color); + font-family: var(--uai-font-family); + font-size: 14px; + font-weight: 400; + } + } + } + } + + &.format-painter { + cursor: url('@/assets/images/format-painter.svg'), text; + } + + .uai-editor { + height: 100%; + width: 100%; + outline: none; + counter-reset: title; + color: var(--uai-content-text-color); + + @media print { + height: auto; + width: auto; + } + + .uai-page-node-content { + >* { + position: relative; + z-index: 1; + + +* { + margin-top: var(--uai-content-node-bottom); + } + + &.uai-node-focused { + &:not(hr):not(.tableWrapper):not(table):before { + content: ''; + display: block; + position: absolute; + left: -8px; + top: -5px; + right: -8px; + bottom: -5px; + border-radius: var(--uai-radius); + background: var(--uai-content-node-selected-background); + pointer-events: none; + z-index: -1; + } + + &:is(div):not(.uai-node-view-empty) { + &::before { + top: -8px !important; + bottom: -8px !important; + } + } + + &.uai-node-view-empty { + &::before { + top: 3px !important; + bottom: auto; + height: 2px; + left: 0 !important; + right: 0 !important; + background: var(--uai-primary-color) !important; + } + } + + &.uai-page-divider { + border-radius: var(--uai-radius); + background: var(--uai-content-node-selected-background); + margin-left: -8px; + margin-right: -8px; + padding-left: 8px; + padding-right: 8px; + } + + .uai-select-outline { + outline: solid 1px var(--uai-primary-color); + } + } + } + } + + .is-editor-empty { + &:first-child { + >* { + display: none; + } + + &::before { + color: var(--uai-content-placeholder-color); + content: attr(data-placeholder); + float: left; + height: 0; + pointer-events: none; + } + } + } + } + + .uai-text-selection { + background-color: var(--uai-text-selection-background); + } + + ::selection { + background-color: var(--uai-text-selection-background); + } + + a { + color: var(--uai-primary-color); + text-decoration: none; + cursor: pointer; + + &:hover { + opacity: 0.8; + text-decoration: underline; + } + } + + code { + color: var(--uai-content-code-color); + background-color: var(--uai-content-code-background); + font-family: var(--uai-content-code-family); + border-radius: 3px; + padding: 0.1em 0.4em; + margin-left: 0.25em; + margin-right: 0.25em; + } + + ul, + ol { + list-style-position: inside; + padding-left: 0; + + li { + padding: 0.25em 0 0.25em 3px; + + p { + display: inline; + } + } + } + + ol li p { + margin-left: 0.25em; + word-break: break-all; + } + + blockquote { + border-left: 3px solid var(--uai-primary-color); + padding: 0.5em 1em; + color: #777; + background-color: rgba(0, 0, 0, 0.03); + } + + table { + border-collapse: collapse; + table-layout: fixed; + width: 100%; + margin: 0; + overflow: hidden; + page-break-inside: auto; + + tr { + page-break-inside: avoid; + page-break-after: auto; + } + + // thead { + // display: table-header-group; + // } + td, + th { + min-width: 1em; + border: 1px solid var(--uai-content-table-border-color); + padding: 3px 5px; + vertical-align: middle; + box-sizing: border-box; + position: relative; + + >* { + margin-bottom: 0; + } + + &[data-align='left-top'] { + vertical-align: top; + text-align: left; + } + + &[data-align='center-top'] { + vertical-align: top; + text-align: center; + } + + &[data-align='right-top'] { + vertical-align: middle; + text-align: right; + } + + &[data-align='justify-top'] { + vertical-align: middle; + text-align: justify; + } + + &[data-align='left-middle'] { + vertical-align: middle; + text-align: left; + } + + &[data-align='center-middle'] { + vertical-align: middle; + text-align: center; + } + + &[data-align='right-middle'] { + vertical-align: middle; + text-align: right; + } + + &[data-align='justify-middle'] { + vertical-align: middle; + text-align: justify; + } + + &[data-align='left-bottom'] { + vertical-align: bottom; + text-align: left; + } + + &[data-align='center-bottom'] { + vertical-align: middle; + text-align: center; + } + + &[data-align='right-bottom'] { + vertical-align: bottom; + text-align: right; + } + + &[data-align='justify-bottom'] { + vertical-align: bottom; + text-align: justify; + } + } + + th { + font-weight: bold; + text-align: left; + background-color: var(--uai-content-table-thead-background); + } + + .selectedCell:after { + z-index: 2; + position: absolute; + content: ''; + left: 0; + right: 0; + top: 0; + bottom: 0; + background: var(--uai-content-table-selected-background); + pointer-events: none; + } + + .column-resize-handle { + position: absolute; + right: -1px; + top: 0; + bottom: -1px; + width: 3px; + background-color: var(--uai-primary-color); + pointer-events: none; + } + + p { + margin: 0; + } + } + + .indent-1 { + text-indent: 2em; + } + + .indent-2 { + text-indent: 4em; + } + + .indent-3 { + text-indent: 6em; + } + + .indent-4 { + text-indent: 8em; + } + + .indent-5 { + text-indent: 10em; + } + + .indent-6 { + text-indent: 12em; + } + + .indent-7 { + text-indent: 14em; + } + + .indent-8 { + text-indent: 16em; + } + + .tableWrapper { + max-width: 100%; + overflow-x: auto; + } + + .resize-cursor { + cursor: col-resize; + } + + .uai-task-list { + list-style: none; + padding: 0; + + li { + display: flex; + align-items: first baseline; + + &[data-checked='true'] { + p { + opacity: 0.5; + text-decoration: line-through; + + &:has([style]) { + text-decoration: inherit; + } + + * { + text-decoration: line-through; + } + } + } + + >label { + flex: 0 0 auto; + margin-right: 10px; + user-select: none; + + input { + transform: translateY(0.2em); + } + } + + >div { + flex: 1 1 auto; + } + } + + input[type='checkbox'] { + cursor: pointer; + font-family: unset; + color: var(--uai-primary-color); + border: 1px solid var(--uai-primary-color); + border-radius: 0; + margin: 0.25em; + width: 16px; + height: 16px; + padding: 0.1em 0.4em; + background: white; + opacity: 0.5; + } + } + + .uai-search-result { + background-color: var(--uai-content-search-result-background); + + &-current { + background: var(--uai-content-search-result-current-background); + } + } + + .uai-page-divider { + .uai-page-divider(); + } + + .uai-node-view { + display: flex; + position: relative; + max-height: 100%; + + .uai-node-container { + max-height: 100%; + } + + .uai-hover-shadow:hover { + box-shadow: var(--uai-shadow); + } + + .uai-node-toc { + padding: 35px 20px 20px; + position: relative; + outline: solid 1px var(--uai-content-node-border); + border-radius: var(--uai-content-node-radius); + width: 100%; + + &-head { + font-weight: 500; + margin: 0; + position: absolute; + top: 0; + left: 1rem; + padding: 0.25rem 0.5rem; + border-bottom-left-radius: 3px; + border-bottom-right-radius: 3px; + font-size: 12px; + background: rgba(black, 0.05); + } + + &-body { + list-style: none; + padding: 0; + } + + &-empty { + color: var(--uai-text-color-light); + font-size: 12px; + margin-top: 5px; + } + + &-item { + font-weight: bold; + font-size: 14px; + + &.level-2 { + text-indent: 20px; + } + + &.level-3 { + text-indent: 40px; + } + + &.level-4 { + text-indent: 60px; + } + + &.level-5 { + text-indent: 80px; + } + + &.level-6 { + text-indent: 100px; + } + } + } + } + + // 插件样式 + .ProseMirror-gapcursor { + height: 24px; + display: flex; + + &:after { + width: 1px; + height: 16px; + margin-top: 8px; + background-color: var(--uai-color-black); + } + } + + .Tiptap-mathematics { + &-editor { + background: var(--uai-content-node-selected-background); + font-family: monospace; + padding: 0.2em 0.5em; + // outline: solid 1px var(--uai-primary-color); + } + + &-render { + cursor: pointer; + padding: 0 0.25em; + transition: background 0.2s; + + &:hover { + background: var(--uai-content-node-selected-background); + } + } + + &-editor, + &-render { + border-radius: 0.2em; + display: inline-block; + } + } + + .uai-color-highlighter { + white-space: nowrap; + + &::before { + background-color: var(--color); + border: 1px solid rgba(128, 128, 128, 0.3); + border-radius: 2px; + content: ' '; + display: inline-block; + height: 1em; + margin-bottom: 0.15em; + margin-right: 0.1em; + vertical-align: middle; + width: 1em; + } + } + + .uai-table-container { + background-color: #fff; + border: 1px solid var(--uai-border-color); + padding: 10px 5px; + + .uai-table-grid { + .row { + display: flex; + gap: 4px; + margin: 0px 5px; + } + + .cell { + width: 16px; + height: 16px; + border: 1px solid var(--uai-border-color); + cursor: pointer; + margin-bottom: 4px; + padding: 0; + + &.selected { + border-color: var(--uai-primary-color); + background-color: rgba(0, 0, 0, 0.03); + } + } + } + + .uai-table-custom { + :deep(.uai-input-number) { + width: 196px; + display: block; + margin-bottom: 8px; + } + + &-title { + color: var(--uai-text-color-light); + font-size: 12px; + margin: 8px 5px 5px; + } + + &-input { + border: 1px solid var(--uai-border-color); + border-radius: var(--uai-radius); + font-size: 14px; + margin: 5px; + padding: 1px 0 1px 5px; + + &:hover { + border-color: var(--uai-primary-color); + } + + input { + font-size: 16px; + border: none; + outline: none; + width: 147px; + text-align: right; + } + } + + .uai-table-custom-header { + margin: 5px; + display: flex; + } + + .uai-table-insert-button { + margin: 5px; + padding: 5px; + text-align: center; + cursor: pointer; + color: var(--uai-primary-color); + border: 1px solid var(--uai-primary-color); + border-radius: var(--uai-radius); + } + } + } +} + +.uai-print-iframe { + visibility: hidden; + position: fixed; + width: 0; + height: 0; + border: none; + overflow: auto; + scrollbar-width: 0; +} + +.uai-word-count { + margin-right: 0.25em; + + &-detail { + padding: 10px 0 8px; + width: 160px; + font-size: 12px; + color: var(--uai-text-color-light); + + li { + list-style: none; + cursor: default; + padding: 0 12px; + display: flex; + justify-content: space-between; + line-height: 28px; + color: var(--uai-text-color); + + &:hover { + background-color: var(--td-bg-color-container-hover); + } + } + } + + &-title { + padding: 0 12px; + margin-bottom: 3px; + } +} + +.uai-diagrams-container { + height: 100%; + + .uai-diagrams-iframe { + width: 100%; + height: 100%; + border: none; + display: block; + } +} + + +.uai-background-container { + display: flex; + flex-wrap: wrap; + background-color: var(--uai-color-white); + border: 1px solid var(--uai-border-color); + padding: 10px; + width: 254px; + justify-content: space-between; + gap: 9px; + user-select: none; + + .uai-background-item { + width: 70px; + height: 90px; + border: solid 1px rgba(0, 0, 0, 0.1); + border-radius: var(--uai-radius); + display: flex; + align-items: center; + justify-content: center; + font-size: 10px; + color: var(--uai-text-color-light); + text-align: center; + cursor: pointer; + white-space: pre; + line-height: 1.5; + + &:hover { + border-color: rgba(0, 0, 0, 0.2); + transform: scale(1.02); + } + + &.active { + color: var(--uai-primary-color); + border-color: var(--uai-primary-color); + } + } +} + +.uai-background-more { + display: flex; + justify-content: space-between; + align-items: center; + padding: 5px; + cursor: pointer; + margin-top: 10px; + + &:hover, + &.active { + background-color: var(--td-bg-color-container-hover); + border-radius: var(--uai-radius); + } + + &-menu { + display: flex; + align-items: center; + font-size: 12px; + cursor: pointer; + + .uai-icon { + margin-right: 5px; + font-size: 16px; + } + } + + &-arrow { + .uai-icon { + transform: rotate(-90deg); + } + } +} + +.uai-watermark-container { + background-color: var(--uai-color-white); + border: 1px solid var(--uai-border-color); + padding: 10px; + + .uai-watermark-toolbar { + display: flex; + align-items: center; + margin-bottom: 10px; + } + + .uai-watermark-type { + display: flex; + + &-title { + color: var(--uai-text-color-light); + margin: 10px 0; + font-size: 12px; + } + + .item { + cursor: pointer; + + &:first-child { + margin-right: 10px; + } + + .bg { + width: 70px; + height: 90px; + border: solid 1px var(--uai-border-color); + position: relative; + border-radius: var(--uai-radius); + background-size: cover; + background-position: center center; + background-repeat: no-repeat; + } + + span { + display: block; + background-color: rgba(0, 0, 0, 0.05); + border-radius: 12px; + padding: 0 10px; + text-align: center; + margin-top: 8px; + font-size: 12px; + } + + &:hover, + &.active { + .bg { + border-color: var(--uai-primary-color); + } + + span { + color: var(--uai-primary-color); + } + } + + &.compact .bg { + background-image: url('../assets/images/watermark-compact.png'); + } + + &.spacious .bg { + background-image: url('../assets/images/watermark-spacious.png'); + } + } + } + + .uai-clear-button { + margin-top: 10px; + padding: 5px; + text-align: center; + cursor: pointer; + color: var(--uai-primary-color); + border: 1px solid var(--uai-primary-color); + border-radius: var(--uai-radius); + } +} + +.uai-watermark { + top: 0; + left: 0; + width: 100%; + height: 100%; + color: rgba(100, 100, 100, 0.5); // 水印颜色和透明度 + font-size: 20px; + font-family: Arial; + display: flex; + justify-content: center; + align-items: center; + transform: rotate(-30deg); // 旋转水印 +} + +.uai-editor-page-computed { + width: 100%; + height: 0; + position: absolute; + border: none; +} \ No newline at end of file diff --git a/src/styles/variables.less b/src/styles/variables.less new file mode 100644 index 0000000..6e5f9d8 --- /dev/null +++ b/src/styles/variables.less @@ -0,0 +1,102 @@ +:root { + // 主题色 + --uai-primary-color: #3480f9; + --uai-color-white: #fff; + --uai-color-black: #000; + // 警示颜色 + --uai-warning-color: #f6913e; + --uai-error-color: #ef3f35; + // 背景颜色 + --uai-container-background: #f4f5f7; + --uai-button-hover-background: #f1f3f5; + // 文本选中时的背景颜色 + --uai-text-selection-background: #94cfff; + + // 字体相关 + --uai-font-family: helvetica neue, helvetica, pingfang sc, hiragino sans gb, + microsoft yahei, simsun, sans-serif; + --uai-font-size: 14px; + --uai-font-size-small: 12px; + --uai-text-color: rgb(51, 54, 57); + --uai-text-color-light: rgba(0, 0, 0, 0.5); + --uai-text-color-disabled: #a7abac; + + // 边框 + --uai-shadow: 0 3px 14px 2px rgba(0, 0, 0, 0.03), + 0 8px 10px 1px rgba(0, 0, 0, 4%), 0 5px 5px -3px rgba(0, 0, 0, 8%); + --uai-border-color: rgba(0, 0, 0, 0.08); + --uai-border-color-dark: #ddd; + --uai-border-color-light: rgba(0, 0, 0, 0.05); + + // 圆角 + --uai-radius: 5px; + --uai-radius-medium: 5px; + + // 提示 + --uai-menu-tips-bg-color: #fff; + --uai-menu-tips-text-color: #000; + + // 弹出层 + --uai-popup-content-padding: 12px; + --uai-popup-max-height: max(60vh, 180px); + --uai-tooltip-content-padding: 6px 10px; + --uai-mask-color: transparent; + + // 编辑器 + --uai-content-placeholder-color: #999; + --uai-content-text-color: #333; + --uai-content-node-border: #e7e7e7; + --uai-content-node-radius: var(--uai-radius); + --uai-content-node-bottom: 0.75em; + --uai-content-node-selected-background: #f5f8fc; + --uai-content-table-border-color: #333; + --uai-content-table-thead-background: #f1f3f5; + --uai-content-table-selected-background: rgba(200, 200, 255, 0.4); + --uai-content-line-number-color: #e7e8ea; + --uai-content-search-result-background: #fefc7ef2; + --uai-content-search-result-current-background: #0dff00c3; + --uai-content-invisible-break-color: rgb(78, 139, 252); + --uai-content-code-color: var(--uai-primary-color); + --uai-content-code-background: #f1f3f5; + --uai-content-code-family: Consolas, Monaco, Andale Mono, Ubuntu Mono, + monospace; + + // 滚动条 + --uai-scrollbar-size: 10px; + --uai-scrollbar-thumb-color: rgba(0, 0, 0, 0.2); + --uai-scrollbar-thumb-hover-color: rgba(0, 0, 0, 0.35); + + --uai-app-bubble-sent-background-color: #a5f5a5; + --uai-app-bubble-reveived-background-color: #a5f5f5; +} + +[theme-mode='dark'] { + // 主题色 + --uai-color-white: #17171a; + --uai-color-black: #fff; + + // 警示颜色 + --uai-warning-color: rgb(207, 110, 45); + --uai-error-color: rgb(198, 71, 81); + + // 背景颜色 + --uai-container-background: #2a2b2d; + --uai-button-hover-background: #2c2c2c; + + // 字体相关 + --uai-text-color: #ddd; + --uai-text-color-light: #bbb; + --uai-text-color-disabled: #999; + + // 边框 + --uai-border-color: rgba(255, 255, 255, 0.15); + --uai-border-color-dark: rgba(255, 255, 255, 0.2); + --uai-border-color-light: rgba(255, 255, 255, 0.08); + + // 编辑器 + --uai-content-text-color: #000; + + // 滚动条 + --uai-scrollbar-thumb-color: rgba(255, 255, 255, 0.3); + --uai-scrollbar-thumb-hover-color: rgba(255, 255, 255, 0.45); +} diff --git a/src/utils/CreateAvatar.ts b/src/utils/CreateAvatar.ts index 7a8a8f1..3d82e60 100644 --- a/src/utils/CreateAvatar.ts +++ b/src/utils/CreateAvatar.ts @@ -1,5 +1,6 @@ // Copyright (c) 2024-present AI-Labs +// @ ts-nocheck /** * 创建头像 * @param icon diff --git a/src/utils/DefineCustomElement.ts b/src/utils/DefineCustomElement.ts index 8fcf74a..2642ee7 100644 --- a/src/utils/DefineCustomElement.ts +++ b/src/utils/DefineCustomElement.ts @@ -1,5 +1,6 @@ // Copyright (c) 2024-present AI-Labs +// @ ts-nocheck /** * 注册Web组件 * @param name diff --git a/src/utils/DiagramEditor.ts b/src/utils/DiagramEditor.ts index c68043e..7d66c58 100644 --- a/src/utils/DiagramEditor.ts +++ b/src/utils/DiagramEditor.ts @@ -1,5 +1,6 @@ // Copyright (c) 2024-present AI-Labs +// @ ts-nocheck // https://www.diagrams.com/doc/faq/embed-mode class DiagramEditor { frame: HTMLIFrameElement | undefined diff --git a/src/utils/FileUploader.ts b/src/utils/FileUploader.ts index ff109db..927942d 100644 --- a/src/utils/FileUploader.ts +++ b/src/utils/FileUploader.ts @@ -1,6 +1,6 @@ - // Copyright (c) 2024-present AI-Labs +// @ ts-nocheck /** * 定义文件上传类 */ diff --git a/src/utils/MarkdownUtil.ts b/src/utils/MarkdownUtil.ts index 4dcd9c1..1682d47 100644 --- a/src/utils/MarkdownUtil.ts +++ b/src/utils/MarkdownUtil.ts @@ -1,11 +1,10 @@ // Copyright (c) 2024-present AI-Labs +// @ ts-nocheck import markdownItKatex from '@vscode/markdown-it-katex'; import MarkdownIt from 'markdown-it'; import container from 'markdown-it-container'; - import TurndownService from 'turndown'; - import hljs from 'highlight.js'; const md = MarkdownIt({ diff --git a/src/utils/Resize.ts b/src/utils/Resize.ts index 6e69a18..674fce1 100644 --- a/src/utils/Resize.ts +++ b/src/utils/Resize.ts @@ -1,5 +1,6 @@ // Copyright (c) 2024-present AI-Labs +// @ ts-nocheck /** * 调整对象大小 * @param container diff --git a/src/utils/UUID.ts b/src/utils/UUID.ts index b579255..8e513fa 100644 --- a/src/utils/UUID.ts +++ b/src/utils/UUID.ts @@ -1,5 +1,6 @@ // Copyright (c) 2024-present AI-Labs +// @ ts-nocheck /** * 生成UUID * @returns