diff --git a/.github/workflows/static.yml b/.github/workflows/static.yml index 0fe735d..4910116 100644 --- a/.github/workflows/static.yml +++ b/.github/workflows/static.yml @@ -35,7 +35,7 @@ jobs: uses: actions/setup-node@v3 with: node-version: 20 - - name: Build VuePress site + - name: Build VitePress site run: npm install && npm run docs:build - name: Setup Pages uses: actions/configure-pages@v3 @@ -43,7 +43,7 @@ jobs: uses: actions/upload-pages-artifact@v2 with: # Upload entire repository - path: 'docs/.vuepress/dist' + path: 'docs/.vitepress/dist' - name: Deploy to GitHub Pages id: deployment uses: actions/deploy-pages@v2 diff --git a/.gitignore b/.gitignore index d80c248..fbdbde0 100644 --- a/.gitignore +++ b/.gitignore @@ -1,5 +1,4 @@ node_modules -.temp -.cache .vscode -/docs/.vuepress/dist/ \ No newline at end of file +/docs/.vitepress/dist/ +/docs/.vitepress/cache/ \ No newline at end of file diff --git a/docs/.vitepress/config.mts b/docs/.vitepress/config.mts new file mode 100644 index 0000000..f0be980 --- /dev/null +++ b/docs/.vitepress/config.mts @@ -0,0 +1,13 @@ +import { defineConfig } from 'vitepress' +import { shared } from './shared' +import { en_us } from './en-us' +import { zh_cn } from './zh-cn' + +// https://vitepress.dev/reference/site-config +export default defineConfig({ + ...shared, + locales: { + root: { label: 'English', ...en_us }, + "zh-cn": { label: '简体中文', ...zh_cn } + } +}) diff --git a/docs/.vitepress/en-us.ts b/docs/.vitepress/en-us.ts new file mode 100644 index 0000000..ad711da --- /dev/null +++ b/docs/.vitepress/en-us.ts @@ -0,0 +1,156 @@ +import { defineConfig, type DefaultTheme } from 'vitepress' + +export const en_us = defineConfig({ + lang: 'en-US', + description: "Office Tool Plus is a powerful and useful tool for Office deployment and management.", + themeConfig: { + nav: nav(), + + sidebar: { + '/introduction/': { base: '/introduction/', items: sidebarIntroduction() }, + '/usage/': { base: '/usage/', items: sidebarUsage() }, + '/help/': { base: '/help/', items: sidebarHelp() } + }, + + editLink: { + pattern: 'https://github.com/YerongAI/Office-Tool-docs/edit/main/docs/:path', + text: 'Edit this page on GitHub' + }, + + footer: { + message: 'MIT Licensed', + copyright: `Copyright © 2016 - ${new Date().getFullYear()} Yerong All Rights Reserved.` + }, + + docFooter: { + prev: '← Previous page', + next: 'Next page →' + } + } +}) + +function nav(): DefaultTheme.NavItem[] { + return [ + { + text: 'Introduction', + link: '/introduction/what-is-otp', + activeMatch: '/introduction/' + }, + { + text: 'Usage', + link: '/usage/deploy/clean-deployment', + activeMatch: '/usage/' + }, + { + text: 'Help', + link: '/help/about', + activeMatch: '/help/' + } + ] +} + +function sidebarIntroduction(): DefaultTheme.SidebarItem[] { + return [ + { + text: "Introduction", + collapsed: false, + items: [ + { text: 'What is Office Tool Plus?', link: 'what-is-otp' }, + { text: 'System requirements', link: 'requirement' }, + { text: 'Download', link: 'download' } + ] + }, + { + text: "Pages", + collapsed: false, + items: [ + { text: 'Deploy', link: 'pages/deploy-page' }, + { text: 'Activate', link: 'pages/activate-page' }, + { text: 'Toolbox', link: 'pages/toolbox-page' }, + { text: 'Convert documents', link: 'pages/convert-doc-page' }, + { text: 'Check hash', link: 'pages/check-hash-page' }, + ] + } + ] +} + +function sidebarUsage(): DefaultTheme.SidebarItem[] { + return [ + { + text: 'Deploy', + collapsed: false, + items: [ + { text: 'Clean deploy', link: 'deploy/clean-deployment' }, + { text: 'Modify', link: 'deploy/modify-deployment' }, + { text: 'Basic settings', link: 'deploy/settings/basic' }, + { text: 'Advanced settings', link: 'deploy/settings/advanced' } + ] + }, + { + text: 'Create Office ISO', + collapsed: false, + items: [ + { text: 'Prepare', link: 'deploy/create-iso/prepare' }, + { text: '不含任何配置的 ISO', link: 'deploy/create-iso/no-config' }, + { text: '包含默认配置的 ISO', link: 'deploy/create-iso/default-config' }, + { text: '使用 ISO 命令的 ISO', link: 'deploy/create-iso/iso-command' }, + { text: '使用 loadconfig 命令的 ISO', link: 'deploy/create-iso/config-command' }, + { text: '完全自定义安装的 ISO', link: 'deploy/create-iso/deploy-command' }, + ] + }, + { + text: 'Activation', + collapsed: false, + items: [ + { text: 'What is license?', link: 'activate/what-is-license' }, + { text: 'Activation management', link: 'activate/manage' }, + { text: 'Online activation', link: 'activate/online-activation' }, + { text: 'Phone activation', link: 'activate/phone-activation' }, + { text: 'KMS activation', link: 'activate/kms-activation' } + ] + }, + { + text: 'Toolbox', + collapsed: false, + items: [ + { text: 'General tools', link: 'toolbox/general' }, + { text: 'Office tools', link: 'toolbox/office' }, + { text: 'Windows tools', link: 'toolbox/windows' } + ] + }, + { + text: 'Command', + collapsed: false, + items: [ + { text: 'Keyboard shortcuts', link: 'command/keyboard' }, + { text: 'Application commands', link: 'command/application' }, + { text: 'Deploy commands', link: 'command/deploy' }, + { text: 'Activation commands', link: 'command/activate' } + ] + }, + { + text: 'Others', + collapsed: false, + items: [ + { text: 'Check hash' }, + { text: 'Settings', link: 'settings' }, + { text: 'Updates' } + ] + } + ] +} + +function sidebarHelp(): DefaultTheme.SidebarItem[] { + return [ + { + text: 'Help', + collapsed: false, + items: [ + { text: 'About', link: 'about' }, + { text: 'Application', link: 'application' }, + { text: 'Deploy', link: 'deploy' }, + { text: 'Activation', link: 'activation' } + ] + } + ] +} \ No newline at end of file diff --git a/docs/.vitepress/shared.ts b/docs/.vitepress/shared.ts new file mode 100644 index 0000000..e988529 --- /dev/null +++ b/docs/.vitepress/shared.ts @@ -0,0 +1,34 @@ +import { defineConfig } from 'vitepress' + +export const shared = defineConfig({ + title: 'Office Tool Plus', + + lastUpdated: true, + cleanUrls: true, + metaChunk: true, + + /* prettier-ignore */ + head: [ + ['link', { rel: 'icon', href: '/logo.ico' }], + ['meta', { name: 'theme-color', content: '#0078D4' }], + ['meta', { property: 'og:type', content: 'website' }], + ['meta', { property: 'og:locale', content: 'en' }], + ['meta', { property: 'og:title', content: 'Office Tool Plus | Documentation' }], + ['meta', { property: 'og:site_name', content: 'Office Tool Plus' }], + ['meta', { property: 'og:image', content: 'https://img.lancdn.co/otp/global/x/header-x.png' }], + ['meta', { property: 'og:url', content: 'https://otp.landian.vip/' }], + ], + + themeConfig: { + logo: '/logo.ico', + + socialLinks: [ + { icon: 'github', link: 'https://github.com/YerongAI/Office-Tool' }, + { icon: 'discord', link: 'https://discord.gg/TpXTgfgf2a' } + ], + + search: { + provider: 'local' + } + } +}) \ No newline at end of file diff --git a/docs/.vitepress/zh-cn.ts b/docs/.vitepress/zh-cn.ts new file mode 100644 index 0000000..37fc6db --- /dev/null +++ b/docs/.vitepress/zh-cn.ts @@ -0,0 +1,175 @@ +import { defineConfig, type DefaultTheme } from 'vitepress' + +export const zh_cn = defineConfig({ + lang: 'zh-CN', + description: "Office Tool Plus 是一个强大且实用的 Office 部署&管理工具。", + themeConfig: { + nav: nav(), + + sidebar: { + '/zh-cn/introduction/': { base: '/zh-cn/introduction/', items: sidebarIntroduction() }, + '/zh-cn/usage/': { base: '/zh-cn/usage/', items: sidebarUsage() }, + '/zh-cn/help/': { base: '/zh-cn/help/', items: sidebarHelp() } + }, + + editLink: { + pattern: 'https://github.com/YerongAI/Office-Tool-docs/edit/main/docs/:path', + text: '在 GitHub 上编辑此页' + }, + + footer: { + message: 'MIT Licensed', + copyright: `Copyright © 2016 - ${new Date().getFullYear()} Yerong All Rights Reserved.` + }, + + docFooter: { + prev: '← 上一页', + next: '下一页 →' + }, + + outline: { + label: '页面目录' + }, + + lastUpdated: { + text: '最后更新于', + formatOptions: { + dateStyle: 'short', + timeStyle: 'medium' + } + }, + + langMenuLabel: '多语言', + returnToTopLabel: '回到顶部', + sidebarMenuLabel: '菜单', + darkModeSwitchLabel: '主题', + lightModeSwitchTitle: '切换到浅色模式', + darkModeSwitchTitle: '切换到深色模式' + } +}) + +function nav(): DefaultTheme.NavItem[] { + return [ + { + text: '介绍', + link: '/zh-cn/introduction/what-is-otp', + activeMatch: '/zh-cn/introduction/' + }, + { + text: '使用方法', + link: '/zh-cn/usage/deploy/clean-deployment', + activeMatch: '/zh-cn/usage/' + }, + { + text: '帮助', + link: '/zh-cn/help/about', + activeMatch: '/zh-cn/help/' + } + ] +} + +function sidebarIntroduction(): DefaultTheme.SidebarItem[] { + return [ + { + text: "介绍", + collapsed: false, + items: [ + { text: '什么是 Office Tool Plus?', link: 'what-is-otp' }, + { text: '系统要求', link: 'requirement' }, + { text: '下载', link: 'download' } + ] + }, + { + text: "页面", + collapsed: false, + items: [ + { text: '部署', link: 'pages/deploy-page' }, + { text: '激活', link: 'pages/activate-page' }, + { text: '工具箱', link: 'pages/toolbox-page' }, + { text: '文档转换', link: 'pages/convert-doc-page' }, + { text: '哈希值校验', link: 'pages/check-hash-page' }, + ] + } + ] +} + +function sidebarUsage(): DefaultTheme.SidebarItem[] { + return [ + { + text: '部署', + collapsed: false, + items: [ + { text: '初次安装', link: 'deploy/clean-deployment' }, + { text: '修改安装', link: 'deploy/modify-deployment' }, + { text: '基础设置', link: 'deploy/settings/basic' }, + { text: '高级设置', link: 'deploy/settings/advanced' } + ] + }, + { + text: '创建 Office ISO', + collapsed: false, + items: [ + { text: '准备', link: 'deploy/create-iso/prepare' }, + { text: '不含任何配置的 ISO', link: 'deploy/create-iso/no-config' }, + { text: '包含默认配置的 ISO', link: 'deploy/create-iso/default-config' }, + { text: '使用 ISO 命令的 ISO', link: 'deploy/create-iso/iso-command' }, + { text: '使用 loadconfig 命令的 ISO', link: 'deploy/create-iso/config-command' }, + { text: '完全自定义安装的 ISO', link: 'deploy/create-iso/deploy-command' }, + ] + }, + { + text: '激活', + collapsed: false, + items: [ + { text: '许可证是什么?', link: 'activate/what-is-license' }, + { text: '激活管理', link: 'activate/manage' }, + { text: '在线激活', link: 'activate/online-activation' }, + { text: '电话激活', link: 'activate/phone-activation' }, + { text: 'KMS 激活', link: 'activate/kms-activation' } + ] + }, + { + text: '工具箱', + collapsed: false, + items: [ + { text: '常规工具', link: 'toolbox/general' }, + { text: 'Office 工具', link: 'toolbox/office' }, + { text: 'Windows 工具', link: 'toolbox/windows' } + ] + }, + { + text: '命令', + collapsed: false, + items: [ + { text: '键盘快捷键', link: 'command/keyboard' }, + { text: '应用程序命令', link: 'command/application' }, + { text: '部署命令', link: 'command/deploy' }, + { text: '激活命令', link: 'command/activate' } + ] + }, + { + text: '其它', + collapsed: false, + items: [ + { text: '哈希值校验' }, + { text: '设置', link: 'settings' }, + { text: '更新' } + ] + } + ] +} + +function sidebarHelp(): DefaultTheme.SidebarItem[] { + return [ + { + text: '帮助', + collapsed: false, + items: [ + { text: '关于', link: 'about' }, + { text: '程序', link: 'application' }, + { text: '部署', link: 'deploy' }, + { text: '激活', link: 'activation' }, + ] + } + ] +} \ No newline at end of file diff --git a/docs/.vuepress/config.ts b/docs/.vuepress/config.ts deleted file mode 100644 index c423cef..0000000 --- a/docs/.vuepress/config.ts +++ /dev/null @@ -1,146 +0,0 @@ -import { defineUserConfig } from '@vuepress/cli' -import { viteBundler } from '@vuepress/bundler-vite' -import { defaultTheme } from '@vuepress/theme-default' -import { searchPlugin } from '@vuepress/plugin-search' -import { googleAnalyticsPlugin } from '@vuepress/plugin-google-analytics' -import { - head, - navbarEnUS, - navbarZhCN, - navbarZhTW, - sidebarEnUS, - sidebarZhCN, - sidebarZhTW, -} from './configs/index.js' - -export default defineUserConfig({ - base: '/', - shouldPreload: false, - shouldPrefetch: false, - head, - bundler: viteBundler(), - - // site-level locales config - locales: { - '/': { - lang: 'en-US', - title: 'Office Tool Plus docs', - description: 'Office Tool Plus is a powerful and useful tool for Office deployment and management. Support multiple editions of Office.', - }, - '/zh-cn/': { - lang: 'zh-CN', - title: 'Office Tool Plus 文档', - description: 'Office Tool Plus 是一个强大且实用的 Office 部署、管理工具。支持多种 Office 版本,可方便、快捷地部署、激活您的 Office。', - }, - '/zh-tw/': { - lang: 'zh-TW', - title: 'Office Tool Plus 文档', - description: 'Office Tool Plus 是一个强大且实用的 Office 部署、管理工具。支持多种 Office 版本,可方便、快捷地部署、激活您的 Office。', - } - }, - - plugins: [ - searchPlugin({ - locales: { - '/': { - placeholder: 'Search' - }, - '/zh-cn/': { - placeholder: '搜索' - }, - '/zh-tw/': { - placeholder: '搜尋' - } - }, - }), - googleAnalyticsPlugin({ - id: 'G-L3WG8DCE0S' - }) - ], - - // configure default theme - theme: defaultTheme({ - logo: '/logo.ico', - repo: 'YerongAI/Office-Tool-docs', - docsDir: 'docs', - sidebarDepth: 1, - - // theme-level locales config - locales: { - // English locale config - '/': { - // navbar - navbar: navbarEnUS, - // sidebar - sidebar: sidebarEnUS, - }, - - // Simplified Chinese - '/zh-cn/': { - // navbar - navbar: navbarZhCN, - selectLanguageName: '简体中文', - selectLanguageText: 'Languages', - selectLanguageAriaLabel: '选择语言', - // sidebar - sidebar: sidebarZhCN, - // page meta - editLinkText: '在 GitHub 上编辑此页', - lastUpdatedText: '上次更新', - contributorsText: '贡献者', - // custom containers - tip: '提示', - warning: '注意', - danger: '警告', - // 404 page - notFound: [ - '这里什么都没有', - '我们怎么到这来了?', - '这是一个 404 页面', - '看起来我们进入了错误的链接', - ], - backToHome: '返回首页', - // a11y - openInNewWindow: '在新窗口打开', - toggleColorMode: '切换颜色模式', - toggleSidebar: '切换侧边栏' - }, - - // - '/zh-tw/': { - // navbar - navbar: navbarZhTW, - selectLanguageName: '繁體中文', - selectLanguageText: 'Languages', - selectLanguageAriaLabel: '选择语言', - // sidebar - sidebar: sidebarZhTW, - // page meta - editLinkText: '在 GitHub 上编辑此页', - lastUpdatedText: '上次更新', - contributorsText: '贡献者', - // custom containers - tip: '提示', - warning: '注意', - danger: '警告', - // 404 page - notFound: [ - '这里什么都没有', - '我们怎么到这来了?', - '这是一个 404 页面', - '看起来我们进入了错误的链接', - ], - backToHome: '返回首页', - // a11y - openInNewWindow: '在新窗口打开', - toggleColorMode: '切换颜色模式', - toggleSidebar: '切换侧边栏' - } - }, - - themePlugins: { - // Disable git plugin, git plugin shows contributor and last update time. - git: false - }, - }) -}) \ No newline at end of file diff --git a/docs/.vuepress/configs/head.ts b/docs/.vuepress/configs/head.ts deleted file mode 100644 index 10f9992..0000000 --- a/docs/.vuepress/configs/head.ts +++ /dev/null @@ -1,20 +0,0 @@ -import type { HeadConfig } from '@vuepress/core' - -export const head: HeadConfig[] = [ - [ - 'link', - { - rel: 'icon', - href: `/logo.ico`, - }, - ], - ['meta', { name: 'application-name', content: 'Office Tool Plus' }], - ['meta', { name: 'apple-mobile-web-app-title', content: 'Office Tool Plus' }], - ['meta', { name: 'apple-mobile-web-app-status-bar-style', content: 'black' }], - [ - 'link', - { rel: 'apple-touch-icon', href: `/logo.ico` }, - ], - ['meta', { name: 'msapplication-TileColor', content: '#0078D4' }], - ['meta', { name: 'theme-color', content: '#0078D4' }], -] \ No newline at end of file diff --git a/docs/.vuepress/configs/index.ts b/docs/.vuepress/configs/index.ts deleted file mode 100644 index 47e327b..0000000 --- a/docs/.vuepress/configs/index.ts +++ /dev/null @@ -1,3 +0,0 @@ -export * from './head.js' -export * from './navbar/index.js' -export * from './sidebar/index.js' \ No newline at end of file diff --git a/docs/.vuepress/configs/navbar/en-us.ts b/docs/.vuepress/configs/navbar/en-us.ts deleted file mode 100644 index df929a9..0000000 --- a/docs/.vuepress/configs/navbar/en-us.ts +++ /dev/null @@ -1,50 +0,0 @@ -import type { NavbarConfig } from '@vuepress/theme-default' - -export const navbarEnUS: NavbarConfig = [ - { - text: 'Start', - link: '/start/' - }, - { - text: 'Deploy', - link: '/deploy/' - }, - { - text: 'Activate', - link: '/activate/' - }, - { - text: 'FAQ', - link: '/faq/' - }, - { - text: 'More', - children: [ - { - text: 'Toolbox', - link: '/toolbox/' - }, - { - text: 'Settings', - link: '/settings/' - }, - { - text: 'Commands', - link: '/commands/' - } - ] - }, - { - text: 'Groups', - children: [ - { - text: 'Telegram', - link: 'https://otp.landian.vip/grouplink/telegram.html' - }, - { - text: 'Discord', - link: 'https://discord.gg/TpXTgfgf2a' - } - ] - } -] \ No newline at end of file diff --git a/docs/.vuepress/configs/navbar/index.ts b/docs/.vuepress/configs/navbar/index.ts deleted file mode 100644 index d0eab44..0000000 --- a/docs/.vuepress/configs/navbar/index.ts +++ /dev/null @@ -1,3 +0,0 @@ -export * from './en-us.js' -export * from './zh-cn.js' -export * from './zh-tw.js' \ No newline at end of file diff --git a/docs/.vuepress/configs/navbar/zh-cn.ts b/docs/.vuepress/configs/navbar/zh-cn.ts deleted file mode 100644 index 10c8b45..0000000 --- a/docs/.vuepress/configs/navbar/zh-cn.ts +++ /dev/null @@ -1,54 +0,0 @@ -import type { NavbarConfig } from '@vuepress/theme-default' - -export const navbarZhCN: NavbarConfig = [ - { - text: '入门', - link: '/zh-cn/start/' - }, - { - text: '部署', - link: '/zh-cn/deploy/' - }, - { - text: '激活', - link: '/zh-cn/activate/' - }, - { - text: '常见问题', - link: '/zh-cn/faq/' - }, - { - text: '更多', - children: [ - { - text: '工具箱', - link: '/zh-cn/toolbox/' - }, - { - text: '设置', - link: '/zh-cn/settings/' - }, - { - text: '命令', - link: '/zh-cn/commands/' - } - ] - }, - { - text: '群组', - children: [ - { - text: 'QQ | 微信', - link: 'https://otp.landian.vip/grouplink/qq.html' - }, - { - text: 'Telegram', - link: 'https://otp.landian.vip/grouplink/telegram.html' - }, - { - text: 'Discord', - link: 'https://discord.gg/TpXTgfgf2a' - } - ] - } -] \ No newline at end of file diff --git a/docs/.vuepress/configs/navbar/zh-tw.ts b/docs/.vuepress/configs/navbar/zh-tw.ts deleted file mode 100644 index d537c3f..0000000 --- a/docs/.vuepress/configs/navbar/zh-tw.ts +++ /dev/null @@ -1,50 +0,0 @@ -import type { NavbarConfig } from '@vuepress/theme-default' - -export const navbarZhTW: NavbarConfig = [ - { - text: '入门', - link: '/zh-tw/start/' - }, - { - text: '部署', - link: '/zh-tw/deploy/' - }, - { - text: '激活', - link: '/zh-tw/activate/' - }, - { - text: '常见问题', - link: '/zh-tw/faq/' - }, - { - text: '更多', - children: [ - { - text: '工具箱', - link: '/zh-tw/toolbox/' - }, - { - text: '设置', - link: '/zh-tw/settings/' - }, - { - text: '命令', - link: '/zh-tw/commands/' - } - ] - }, - { - text: '群组', - children: [ - { - text: 'Telegram', - link: 'https://otp.landian.vip/grouplink/telegram.html' - }, - { - text: 'Discord', - link: 'https://discord.gg/TpXTgfgf2a' - } - ] - } -] \ No newline at end of file diff --git a/docs/.vuepress/configs/sidebar/en-us.ts b/docs/.vuepress/configs/sidebar/en-us.ts deleted file mode 100644 index 986bae0..0000000 --- a/docs/.vuepress/configs/sidebar/en-us.ts +++ /dev/null @@ -1,89 +0,0 @@ -import type { SidebarConfig } from '@vuepress/theme-default' - -export const sidebarEnUS: SidebarConfig = { - '/start/': [ - { - text: 'Start', - children: [ - '/start/README.md', - '/start/requirement.md' - ] - } - ], - '/deploy/': [ - { - text: 'Deploy', - children: [ - '/deploy/README.md', - '/deploy/modify.md' - ] - }, - { - text: 'Configuration', - children: [ - '/deploy/settings/basic.md', - '/deploy/settings/advanced.md' - ] - }, - { - text: 'Create Office ISO', - children: [ - '/deploy/create-iso/README.md', - '/deploy/create-iso/basic.md', - '/deploy/create-iso/default-config.md', - '/deploy/create-iso/iso-command.md', - '/deploy/create-iso/config-command.md', - '/deploy/create-iso/deploy-command.md' - ] - } - ], - '/activate': [ - { - text: 'Activate', - children: [ - '/activate/README.md', - '/activate/activate-steps.md' - ] - } - ], - '/toolbox': [ - { - text: 'Toolbox', - children: [ - '/toolbox/README.md', - '/toolbox/office.md', - '/toolbox/windows.md' - ] - } - ], - '/settings': [ - { - text: 'Settings', - children: [ - '/settings/README.md' - ] - } - ], - '/commands': [ - { - text: 'Application commands', - children: [ - '/commands/README.md', - '/commands/build-in.md', - '/commands/deploy.md', - '/commands/activate.md' - ] - } - ], - '/faq': [ - { - text: 'FAQ', - children: [ - '/faq/README.md', - '/faq/application.md', - '/faq/deploy.md', - '/faq/activation.md' - ] - } - ] -} \ No newline at end of file diff --git a/docs/.vuepress/configs/sidebar/index.ts b/docs/.vuepress/configs/sidebar/index.ts deleted file mode 100644 index d0eab44..0000000 --- a/docs/.vuepress/configs/sidebar/index.ts +++ /dev/null @@ -1,3 +0,0 @@ -export * from './en-us.js' -export * from './zh-cn.js' -export * from './zh-tw.js' \ No newline at end of file diff --git a/docs/.vuepress/configs/sidebar/zh-cn.ts b/docs/.vuepress/configs/sidebar/zh-cn.ts deleted file mode 100644 index 7e2a68f..0000000 --- a/docs/.vuepress/configs/sidebar/zh-cn.ts +++ /dev/null @@ -1,89 +0,0 @@ -import type { SidebarConfig } from '@vuepress/theme-default' - -export const sidebarZhCN: SidebarConfig = { - '/zh-cn/start/': [ - { - text: '入门', - children: [ - '/zh-cn/start/README.md', - '/zh-cn/start/requirement.md' - ] - } - ], - '/zh-cn/deploy/': [ - { - text: '部署', - children: [ - '/zh-cn/deploy/README.md', - '/zh-cn/deploy/modify.md' - ] - }, - { - text: '配置', - children: [ - '/zh-cn/deploy/settings/basic.md', - '/zh-cn/deploy/settings/advanced.md' - ] - }, - { - text: '创建 Office ISO', - children: [ - '/zh-cn/deploy/create-iso/README.md', - '/zh-cn/deploy/create-iso/basic.md', - '/zh-cn/deploy/create-iso/default-config.md', - '/zh-cn/deploy/create-iso/iso-command.md', - '/zh-cn/deploy/create-iso/config-command.md', - '/zh-cn/deploy/create-iso/deploy-command.md' - ] - } - ], - '/zh-cn/activate': [ - { - text: '激活', - children: [ - '/zh-cn/activate/README.md', - '/zh-cn/activate/activate-steps.md' - ] - } - ], - '/zh-cn/toolbox': [ - { - text: '工具箱', - children: [ - '/zh-cn/toolbox/README.md', - '/zh-cn/toolbox/office.md', - '/zh-cn/toolbox/windows.md' - ] - } - ], - '/zh-cn/settings': [ - { - text: '设置', - children: [ - '/zh-cn/settings/README.md' - ] - } - ], - '/zh-cn/commands': [ - { - text: '程序命令', - children: [ - '/zh-cn/commands/README.md', - '/zh-cn/commands/build-in.md', - '/zh-cn/commands/deploy.md', - '/zh-cn/commands/activate.md' - ] - } - ], - '/zh-cn/faq': [ - { - text: '疑难解答', - children: [ - '/zh-cn/faq/README.md', - '/zh-cn/faq/application.md', - '/zh-cn/faq/deploy.md', - '/zh-cn/faq/activation.md' - ] - } - ] -} \ No newline at end of file diff --git a/docs/.vuepress/configs/sidebar/zh-tw.ts b/docs/.vuepress/configs/sidebar/zh-tw.ts deleted file mode 100644 index 1731bb5..0000000 --- a/docs/.vuepress/configs/sidebar/zh-tw.ts +++ /dev/null @@ -1,89 +0,0 @@ -import type { SidebarConfig } from '@vuepress/theme-default' - -export const sidebarZhTW: SidebarConfig = { - '/zh-tw/start/': [ - { - text: '入门', - children: [ - '/zh-tw/start/README.md', - '/zh-tw/start/requirement.md' - ] - } - ], - '/zh-tw/deploy/': [ - { - text: '部署', - children: [ - '/zh-tw/deploy/README.md', - '/zh-tw/deploy/modify.md' - ] - }, - { - text: '配置', - children: [ - '/zh-tw/deploy/settings/basic.md', - '/zh-tw/deploy/settings/advanced.md' - ] - }, - { - text: '创建 Office ISO', - children: [ - '/zh-tw/deploy/create-iso/README.md', - '/zh-tw/deploy/create-iso/basic.md', - '/zh-tw/deploy/create-iso/default-config.md', - '/zh-tw/deploy/create-iso/iso-command.md', - '/zh-tw/deploy/create-iso/config-command.md', - '/zh-tw/deploy/create-iso/deploy-command.md' - ] - } - ], - '/zh-tw/activate': [ - { - text: '激活', - children: [ - '/zh-tw/activate/README.md', - '/zh-tw/activate/activate-steps.md' - ] - } - ], - '/zh-tw/toolbox': [ - { - text: '工具箱', - children: [ - '/zh-tw/toolbox/README.md', - '/zh-tw/toolbox/office.md', - '/zh-tw/toolbox/windows.md' - ] - } - ], - '/zh-tw/settings': [ - { - text: '设置', - children: [ - '/zh-tw/settings/README.md' - ] - } - ], - '/zh-tw/commands': [ - { - text: '程序命令', - children: [ - '/zh-tw/commands/README.md', - '/zh-tw/commands/build-in.md', - '/zh-tw/commands/deploy.md', - '/zh-tw/commands/activate.md' - ] - } - ], - '/zh-tw/faq': [ - { - text: '疑难解答', - children: [ - '/zh-tw/faq/README.md', - '/zh-tw/faq/application.md', - '/zh-tw/faq/deploy.md', - '/zh-tw/faq/activation.md' - ] - } - ] -} \ No newline at end of file diff --git a/docs/README.md b/docs/README.md deleted file mode 100644 index b3b6d47..0000000 --- a/docs/README.md +++ /dev/null @@ -1,17 +0,0 @@ ---- -home: true -heroImage: /images/logo.webp -heroText: -tagline: A powerful and useful tool for Office deployments. -actions: - - text: Get started - link: /start/ -features: -- title: Simple - details: Deploy Office in just a few steps. -- title: Practical - details: Born for Office deployments. -- title: Powerful - details: Full support of customize. -footer: MIT Licensed | Copyright © 2016 - 2024 Yerong All Rights Reserved. ---- \ No newline at end of file diff --git a/docs/activate/activate-steps.md b/docs/activate/activate-steps.md deleted file mode 100644 index 2aa3683..0000000 --- a/docs/activate/activate-steps.md +++ /dev/null @@ -1,27 +0,0 @@ -# Activation steps - -## Key activation (online activation) - -Input your Office product key on Keys management, click **Install key**, finally click **Activate**. - -::: tip Tip - -If you get an error code [0xC004F069](/faq/activation.md#_0xc004f069) when installing key, install Office licenses for the corresponding product first. - -::: - -## Phone activation (offline activation) - -Input your Office product key on Keys management, click **Install key**. After installed key, click **Refresh** on **Licenses list**. Expand the license that you want to activate, click **Copy Installation ID**. - -Use the *installation ID* to get *confirmation ID* from Microsoft. click **Install confirmation ID** from the sub menu of **Install key** and input the CID. - -::: tip Tip - -If you get an error code [0xC004F069](/faq/activation.md#_0xc004f069) when installing key, install Office licenses for the corresponding product first. - -::: - -## KMS activation (online activation) - -Install Office ***volume*** licenses for the corresponding product, set a KMS host in KMS management and click **Set host**. Finally click **Activate**. diff --git a/docs/faq/README.md b/docs/help/about.md similarity index 100% rename from docs/faq/README.md rename to docs/help/about.md diff --git a/docs/faq/activation.md b/docs/help/activation.md similarity index 84% rename from docs/faq/activation.md rename to docs/help/activation.md index fc62356..9831c15 100644 --- a/docs/faq/activation.md +++ b/docs/help/activation.md @@ -35,18 +35,18 @@ The Office product key you are installing does not have a corresponding license, Do the following things: - Check your network connection is normal. -- Make sure the KMS host which you are using is working. [How to test?](/toolbox/README.md#test-kms-host-reachability) +- Make sure the KMS host which you are using is working. [How to test?](/usage/toolbox/general.md#test-kms-host-reachability) Do the following thins: -- [Reset Software Protection service](/toolbox/windows.md#reset-software-protection-service). +- [Reset Software Protection service](/usage/toolbox/windows.md#reset-software-protection-service). - Try activating again. ## 0xC004E015 > The Software Licensing Service reported that license consumption failed. -Please refer to [Rebuild Windows Activation Token](/toolbox/windows.md#rebuild-windows-activation-token). +Please refer to [Rebuild Windows Activation Token](/usage/toolbox/windows.md#rebuild-windows-activation-token). ## 0x8004E108 @@ -62,11 +62,11 @@ Do the following things: - Check your OS time is correct or not. - Check your network connection is normal. -- Make sure the KMS host which you are using is working. [How to test?](/toolbox/README.md#test-kms-host-reachability) +- Make sure the KMS host which you are using is working. [How to test?](/usage/toolbox/general.md#test-kms-host-reachability) Do the following thins: -- [Reset Software Protection service](/toolbox/windows.md#reset-software-protection-service). +- [Reset Software Protection service](/usage/toolbox/windows.md#reset-software-protection-service). - Try activating again. ## 0x8007007B diff --git a/docs/faq/application.md b/docs/help/application.md similarity index 86% rename from docs/faq/application.md rename to docs/help/application.md index 87242d3..aec5bb0 100644 --- a/docs/faq/application.md +++ b/docs/help/application.md @@ -10,8 +10,8 @@ If Office Tool Plus is working, reconnect to network. Open CMD or PowerShell, and using the following command to disable hardware acceleration: -``` batch -"Office Tool Plus" /enablehwacc false +``` powershell +.\"Office Tool Plus" /enablehwacc false ``` **To solve the problem, please try to upgrade your GPU driver.** diff --git a/docs/faq/deploy.md b/docs/help/deploy.md similarity index 81% rename from docs/faq/deploy.md rename to docs/help/deploy.md index 5f357e5..99ca806 100644 --- a/docs/faq/deploy.md +++ b/docs/help/deploy.md @@ -23,22 +23,22 @@ You can't install newer version of Office on Windows 7 even you changed the inst Microsoft does not allow Office to be installed in other path, nor do we recommend that you force change it. -## The path is null or empty, please check your system variables +## The path is null or empty -To fix the problem, go to Toolbox page and [reset system variables](/toolbox/windows.md#reset-system-variables). +To fix the problem, go to Toolbox page and [reset system variables](/usage/toolbox/windows.md#reset-system-variables). ## Office installation is stuck If Office installation progress is stuck between 0-49%, it means that the Office installer could not get the required files. - If you are installing online, please check your network connection or try a different network. -- Enable [download first](/deploy/README.md#download-first), this can minimize problems due to the network. -- Try to [verify Office installation files](/deploy/settings/basic.md#installation-files), sometimes there are problems with the files. +- Enable [download first](/usage/deploy/clean-deployment.md#download-first), this can minimize problems due to the network. +- Try to [verify Office installation files](/usage/deploy/settings/basic.md#installation-files), sometimes there are problems with the files. If Office installation progress is stuck between 50-100%, it means that an error occurred during the Office installation. - If the installer allows you to ignore this error, then you can choose to ignore it, but VBA or certain functions may not be available. - Try to close or exit all third-party software. Some third-party software may incorrectly prevent the installer from running. -- Try to [remove Office](/toolbox/office.md#remove-office), then try to install again. +- Try to [remove Office](/usage/toolbox/office.md#remove-office), then try to install again. If the above suggestions does not work, you may need to reinstall Windows. diff --git a/docs/index.md b/docs/index.md new file mode 100644 index 0000000..f0d90dc --- /dev/null +++ b/docs/index.md @@ -0,0 +1,32 @@ +--- +layout: home + +hero: + name: "Office Tool Plus" + text: "A powerful and useful tool for Office deployments." + tagline: Documentation for quick start and usage. + image: + src: /images/logo.webp + alt: Office Tool Plus logo + actions: + - theme: brand + text: Start + link: /introduction/what-is-otp + - theme: alt + text: Homepage + link: https://otp.landian.vip/ + - theme: alt + text: Download + link: /introduction/download + - theme: alt + text: GitHub + link: https://github.com/YerongAI/Office-Tool + +features: + - title: Simple + details: Deploy Office in just a few steps. + - title: Practical + details: Born for Office deployments. + - title: Powerful + details: Full support of customize. +--- diff --git a/docs/introduction/download.md b/docs/introduction/download.md new file mode 100644 index 0000000..3df7835 --- /dev/null +++ b/docs/introduction/download.md @@ -0,0 +1,44 @@ +# Download + +You can download Office Tool Plus from there sites: + +- [Yuntu mirror](https://www.officetool.plus/redirect/download.php?site=yuntu) +- [OneDrive](https://www.officetool.plus/redirect/download.php?site=onedrive) +- [GitHub Releases](https://www.officetool.plus/redirect/download.php?site=github) +- [SDU Mirror](https://www.officetool.plus/redirect/download.php?site=sdumirror) +- [SJTU Mirror](https://www.officetool.plus/redirect/download.php?site=sjtumirror) +- [NJU Mirror](https://www.officetool.plus/redirect/download.php?site=nju) +- [LZU Mirror](https://www.officetool.plus/redirect/download.php?site=lzu) +- [NYIST Mirror](https://www.officetool.plus/redirect/download.php?site=nyist) +- [JCUT Mirror](https://www.officetool.plus/redirect/download.php?site=jcut) + +Or download Office Tool Plus using PowerShell: + +Site 1: + +```powershell +irm https://otp.landian.vip/get/ | iex +``` + +Site 2: + +```powershell +irm https://officetool.plus/get/ | iex +``` + +Differences between the versions: + +- Includes runtime: Includes .NET Runtime, you can run Office Tool Plus without .NET Runtime installation. +- Normal: Only Office Tool Plus and base components. + +> We recommend you to download Office Tool Plus which includes runtime. + +Differences between the architecture: + +- x86 (32-bit): Works on 32 bit, 64 bit and ARM64 of Windows. `Thunder` engine is supported. +- x64 (64-bit): Works on 64 bit and ARM64 of Windows. `Thunder` engine is **not** supported. +- ARM64: Only works on ARM64 of Windows. Better compatibility and performance for ARM64 platform, others are same as the x64. + +## Unpack + +Extract Office Tool Plus to a normal location, such as desktop. **Do NOT run Office Tool Plus without unpacking**. diff --git a/docs/introduction/pages/activate-page.md b/docs/introduction/pages/activate-page.md new file mode 100644 index 0000000..a88d448 --- /dev/null +++ b/docs/introduction/pages/activate-page.md @@ -0,0 +1 @@ +# Activate diff --git a/docs/introduction/pages/check-hash-page.md b/docs/introduction/pages/check-hash-page.md new file mode 100644 index 0000000..d8a4467 --- /dev/null +++ b/docs/introduction/pages/check-hash-page.md @@ -0,0 +1 @@ +# Check hash diff --git a/docs/introduction/pages/convert-doc-page.md b/docs/introduction/pages/convert-doc-page.md new file mode 100644 index 0000000..b1daccf --- /dev/null +++ b/docs/introduction/pages/convert-doc-page.md @@ -0,0 +1 @@ +# Convert documents diff --git a/docs/introduction/pages/deploy-page.md b/docs/introduction/pages/deploy-page.md new file mode 100644 index 0000000..168a970 --- /dev/null +++ b/docs/introduction/pages/deploy-page.md @@ -0,0 +1 @@ +# Deploy diff --git a/docs/introduction/pages/toolbox-page.md b/docs/introduction/pages/toolbox-page.md new file mode 100644 index 0000000..088d407 --- /dev/null +++ b/docs/introduction/pages/toolbox-page.md @@ -0,0 +1 @@ +# Toolbox diff --git a/docs/start/requirement.md b/docs/introduction/requirement.md similarity index 100% rename from docs/start/requirement.md rename to docs/introduction/requirement.md diff --git a/docs/start/README.md b/docs/introduction/what-is-otp.md similarity index 68% rename from docs/start/README.md rename to docs/introduction/what-is-otp.md index 452d245..71cf071 100644 --- a/docs/start/README.md +++ b/docs/introduction/what-is-otp.md @@ -1,6 +1,4 @@ -# Welcome - -## Introduction +# What is Office Tool Plus? Office Tool Plus is a powerful and useful tool for Office Deployment. @@ -13,45 +11,6 @@ The following products are supported: - Visio 2016, 2019, 2021, 2024 and Visio Online Plan 2. - Project 2016, 2019, 2021, 2024 and Project Online Desktop Client. -No matter what, Office Tool Plus is always your best helper. - -## Download - -Download Office Tool Plus from: - -- [Office Tool Plus official website](http://otp.landian.vip/) - -Or download Office Tool Plus using PowerShell: - -Site 1: - -```powershell -irm https://otp.landian.vip/get/ | iex -``` - -Site 2: - -```powershell -irm https://officetool.plus/get/ | iex -``` - -Differences between the versions: - -- Includes runtime: Includes .NET Runtime, you can run Office Tool Plus without .NET Runtime installation. -- Normal: Only Office Tool Plus and base components. - -> We recommend you to download Office Tool Plus which includes runtime. - -Differences between the architecture: - -- x86 (32-bit): Works on 32 bit, 64 bit and ARM64 of Windows. `Thunder` engine is supported. -- x64 (64-bit): Works on 64 bit and ARM64 of Windows. `Thunder` engine is **not** supported. -- ARM64: Only works on ARM64 of Windows. Better compatibility and performance for ARM64 platform, others are same as the x64. - -### Unpack - -Extract Office Tool Plus to a normal location, such as desktop. **Do NOT run Office Tool Plus without unpacking**. - ## Features - Create Office installation configuration. The config can be exported to local, or imported from local or web. diff --git a/docs/.vuepress/public/images/en-us/activation/check-vNext-license.png b/docs/public/images/en-us/activation/check-vNext-license.png similarity index 100% rename from docs/.vuepress/public/images/en-us/activation/check-vNext-license.png rename to docs/public/images/en-us/activation/check-vNext-license.png diff --git a/docs/.vuepress/public/images/en-us/command-box.png b/docs/public/images/en-us/command-box.png similarity index 100% rename from docs/.vuepress/public/images/en-us/command-box.png rename to docs/public/images/en-us/command-box.png diff --git a/docs/.vuepress/public/images/en-us/deploy/download-first.png b/docs/public/images/en-us/deploy/download-first.png similarity index 100% rename from docs/.vuepress/public/images/en-us/deploy/download-first.png rename to docs/public/images/en-us/deploy/download-first.png diff --git a/docs/.vuepress/public/images/en-us/deploy/migrate-office.png b/docs/public/images/en-us/deploy/migrate-office.png similarity index 100% rename from docs/.vuepress/public/images/en-us/deploy/migrate-office.png rename to docs/public/images/en-us/deploy/migrate-office.png diff --git a/docs/.vuepress/public/images/en-us/deploy/modify-applications.png b/docs/public/images/en-us/deploy/modify-applications.png similarity index 100% rename from docs/.vuepress/public/images/en-us/deploy/modify-applications.png rename to docs/public/images/en-us/deploy/modify-applications.png diff --git a/docs/.vuepress/public/images/en-us/deploy/office-installation.png b/docs/public/images/en-us/deploy/office-installation.png similarity index 100% rename from docs/.vuepress/public/images/en-us/deploy/office-installation.png rename to docs/public/images/en-us/deploy/office-installation.png diff --git a/docs/.vuepress/public/images/en-us/deploy/upgrade-product.png b/docs/public/images/en-us/deploy/upgrade-product.png similarity index 100% rename from docs/.vuepress/public/images/en-us/deploy/upgrade-product.png rename to docs/public/images/en-us/deploy/upgrade-product.png diff --git a/docs/.vuepress/public/images/en-us/product-owner.png b/docs/public/images/en-us/product-owner.png similarity index 100% rename from docs/.vuepress/public/images/en-us/product-owner.png rename to docs/public/images/en-us/product-owner.png diff --git a/docs/.vuepress/public/images/en-us/settings/download-settings.png b/docs/public/images/en-us/settings/download-settings.png similarity index 100% rename from docs/.vuepress/public/images/en-us/settings/download-settings.png rename to docs/public/images/en-us/settings/download-settings.png diff --git a/docs/.vuepress/public/images/en-us/toolbox/change-license-owner.png b/docs/public/images/en-us/toolbox/change-license-owner.png similarity index 100% rename from docs/.vuepress/public/images/en-us/toolbox/change-license-owner.png rename to docs/public/images/en-us/toolbox/change-license-owner.png diff --git a/docs/.vuepress/public/images/en-us/toolbox/query-office-update-channel.png b/docs/public/images/en-us/toolbox/query-office-update-channel.png similarity index 100% rename from docs/.vuepress/public/images/en-us/toolbox/query-office-update-channel.png rename to docs/public/images/en-us/toolbox/query-office-update-channel.png diff --git a/docs/.vuepress/public/images/logo.webp b/docs/public/images/logo.webp similarity index 100% rename from docs/.vuepress/public/images/logo.webp rename to docs/public/images/logo.webp diff --git a/docs/.vuepress/public/images/zh-cn/activation/check-vNext-license.png b/docs/public/images/zh-cn/activation/check-vNext-license.png similarity index 100% rename from docs/.vuepress/public/images/zh-cn/activation/check-vNext-license.png rename to docs/public/images/zh-cn/activation/check-vNext-license.png diff --git a/docs/.vuepress/public/images/zh-cn/command-box.png b/docs/public/images/zh-cn/command-box.png similarity index 100% rename from docs/.vuepress/public/images/zh-cn/command-box.png rename to docs/public/images/zh-cn/command-box.png diff --git a/docs/.vuepress/public/images/zh-cn/deploy/download-first.png b/docs/public/images/zh-cn/deploy/download-first.png similarity index 100% rename from docs/.vuepress/public/images/zh-cn/deploy/download-first.png rename to docs/public/images/zh-cn/deploy/download-first.png diff --git a/docs/.vuepress/public/images/zh-cn/deploy/migrate-office.png b/docs/public/images/zh-cn/deploy/migrate-office.png similarity index 100% rename from docs/.vuepress/public/images/zh-cn/deploy/migrate-office.png rename to docs/public/images/zh-cn/deploy/migrate-office.png diff --git a/docs/.vuepress/public/images/zh-cn/deploy/modify-applications.png b/docs/public/images/zh-cn/deploy/modify-applications.png similarity index 100% rename from docs/.vuepress/public/images/zh-cn/deploy/modify-applications.png rename to docs/public/images/zh-cn/deploy/modify-applications.png diff --git a/docs/.vuepress/public/images/zh-cn/deploy/office-installation.png b/docs/public/images/zh-cn/deploy/office-installation.png similarity index 100% rename from docs/.vuepress/public/images/zh-cn/deploy/office-installation.png rename to docs/public/images/zh-cn/deploy/office-installation.png diff --git a/docs/.vuepress/public/images/zh-cn/deploy/upgrade-product.png b/docs/public/images/zh-cn/deploy/upgrade-product.png similarity index 100% rename from docs/.vuepress/public/images/zh-cn/deploy/upgrade-product.png rename to docs/public/images/zh-cn/deploy/upgrade-product.png diff --git a/docs/.vuepress/public/images/zh-cn/product-owner.png b/docs/public/images/zh-cn/product-owner.png similarity index 100% rename from docs/.vuepress/public/images/zh-cn/product-owner.png rename to docs/public/images/zh-cn/product-owner.png diff --git a/docs/.vuepress/public/images/zh-cn/settings/download-settings.png b/docs/public/images/zh-cn/settings/download-settings.png similarity index 100% rename from docs/.vuepress/public/images/zh-cn/settings/download-settings.png rename to docs/public/images/zh-cn/settings/download-settings.png diff --git a/docs/.vuepress/public/images/zh-cn/toolbox/change-license-owner.png b/docs/public/images/zh-cn/toolbox/change-license-owner.png similarity index 100% rename from docs/.vuepress/public/images/zh-cn/toolbox/change-license-owner.png rename to docs/public/images/zh-cn/toolbox/change-license-owner.png diff --git a/docs/.vuepress/public/images/zh-cn/toolbox/query-office-update-channel.png b/docs/public/images/zh-cn/toolbox/query-office-update-channel.png similarity index 100% rename from docs/.vuepress/public/images/zh-cn/toolbox/query-office-update-channel.png rename to docs/public/images/zh-cn/toolbox/query-office-update-channel.png diff --git a/docs/.vuepress/public/images/zh-tw/activation/check-vNext-license.png b/docs/public/images/zh-tw/activation/check-vNext-license.png similarity index 100% rename from docs/.vuepress/public/images/zh-tw/activation/check-vNext-license.png rename to docs/public/images/zh-tw/activation/check-vNext-license.png diff --git a/docs/.vuepress/public/images/zh-tw/command-box.png b/docs/public/images/zh-tw/command-box.png similarity index 100% rename from docs/.vuepress/public/images/zh-tw/command-box.png rename to docs/public/images/zh-tw/command-box.png diff --git a/docs/.vuepress/public/images/zh-tw/deploy/download-first.png b/docs/public/images/zh-tw/deploy/download-first.png similarity index 100% rename from docs/.vuepress/public/images/zh-tw/deploy/download-first.png rename to docs/public/images/zh-tw/deploy/download-first.png diff --git a/docs/.vuepress/public/images/zh-tw/deploy/migrate-office.png b/docs/public/images/zh-tw/deploy/migrate-office.png similarity index 100% rename from docs/.vuepress/public/images/zh-tw/deploy/migrate-office.png rename to docs/public/images/zh-tw/deploy/migrate-office.png diff --git a/docs/.vuepress/public/images/zh-tw/deploy/modify-applications.png b/docs/public/images/zh-tw/deploy/modify-applications.png similarity index 100% rename from docs/.vuepress/public/images/zh-tw/deploy/modify-applications.png rename to docs/public/images/zh-tw/deploy/modify-applications.png diff --git a/docs/.vuepress/public/images/zh-tw/deploy/office-installation.png b/docs/public/images/zh-tw/deploy/office-installation.png similarity index 100% rename from docs/.vuepress/public/images/zh-tw/deploy/office-installation.png rename to docs/public/images/zh-tw/deploy/office-installation.png diff --git a/docs/.vuepress/public/images/zh-tw/deploy/upgrade-product.png b/docs/public/images/zh-tw/deploy/upgrade-product.png similarity index 100% rename from docs/.vuepress/public/images/zh-tw/deploy/upgrade-product.png rename to docs/public/images/zh-tw/deploy/upgrade-product.png diff --git a/docs/.vuepress/public/images/zh-tw/product-owner.png b/docs/public/images/zh-tw/product-owner.png similarity index 100% rename from docs/.vuepress/public/images/zh-tw/product-owner.png rename to docs/public/images/zh-tw/product-owner.png diff --git a/docs/.vuepress/public/images/zh-tw/settings/download-settings.png b/docs/public/images/zh-tw/settings/download-settings.png similarity index 100% rename from docs/.vuepress/public/images/zh-tw/settings/download-settings.png rename to docs/public/images/zh-tw/settings/download-settings.png diff --git a/docs/.vuepress/public/images/zh-tw/toolbox/change-license-owner.png b/docs/public/images/zh-tw/toolbox/change-license-owner.png similarity index 100% rename from docs/.vuepress/public/images/zh-tw/toolbox/change-license-owner.png rename to docs/public/images/zh-tw/toolbox/change-license-owner.png diff --git a/docs/.vuepress/public/images/zh-tw/toolbox/query-office-update-channel.png b/docs/public/images/zh-tw/toolbox/query-office-update-channel.png similarity index 100% rename from docs/.vuepress/public/images/zh-tw/toolbox/query-office-update-channel.png rename to docs/public/images/zh-tw/toolbox/query-office-update-channel.png diff --git a/docs/.vuepress/public/logo.ico b/docs/public/logo.ico similarity index 100% rename from docs/.vuepress/public/logo.ico rename to docs/public/logo.ico diff --git a/docs/usage/activate/kms-activation.md b/docs/usage/activate/kms-activation.md new file mode 100644 index 0000000..69658fc --- /dev/null +++ b/docs/usage/activate/kms-activation.md @@ -0,0 +1,37 @@ +# KMS activation + +## Prerequisites + +- An Internet or Intranet network that can connect to the KMS. + +## Steps + +- In License management, install a volume license, such as *Office LTSC Professional Plus 2024 - Volume License*. +- In KMS management, configure a KMS host. The KMS host can be either a domain name or an IP address. +- Click the **Activate** button in Licenses management and wait for the product activation to complete. + +::: warning Attention + +Do not install Office LTSC 2021 SPLA licenses, SPLA licenses do not support KMS activation. + +::: + +::: tip Tip + +If there is a problem during activation, you can click on the blue error code displayed by Office Tool Plus to navigate to possible solutions. + +::: + +## More info + +Typically, a KMS activation is valid for 180 days. After 7 days (when the remaining time is less than 173 days), the system automatically attempts to renew (reactivate), unless KMS specifies a different renewal policy. + +### Active Directory 域中的 KMS 激活 + +为了简化大型企业中的 Windows 和 Office 激活管理,微软开发了[基于 Active Directory 的激活服务](https://learn.microsoft.com/en-us/windows/deployment/volume-activation/activate-using-active-directory-based-activation-client)。配置好域控制器之后,加入该域的所有计算机都将会自动通过 KMS 进行激活。 + +如上所述,企业机构可以配置 AD 域并配置 KMS 激活服务以自动激活组织内的 Windows 和 Office 副本。但由于计算机加入了 AD 域,因此该计算机会受域所控制,域管理员可以针对域中的计算机进行控制,包括但不限于下发命令、安装软件、抹掉数据等。 + +但由于理解错误,一些用户认为使用 KMS 激活会导致电脑被他人控制。 + +正常情况下,使用 KMS 激活并不代表你的计算机就加入了 AD 域,KMS 激活可以在不加入 AD 域的情况下使用,所以你的计算机不会因此被他人所控制。 diff --git a/docs/activate/README.md b/docs/usage/activate/manage.md similarity index 53% rename from docs/activate/README.md rename to docs/usage/activate/manage.md index c981324..ca1676f 100644 --- a/docs/activate/README.md +++ b/docs/usage/activate/manage.md @@ -1,76 +1,55 @@ -# Activation introduces - -On activation page, you can install the licenses, install the product keys, configure KMS and more. - -If you purchased an Office license, you can activate Office by opening Office and signing in to your Microsoft account. - -## License - -### Retail license - -Retail licenses can only be activated via a valid product key, The Microsoft 365 products can only be activated by logging into a Microsoft account that has a genuine license. - -Most retail licenses are tied to a Microsoft account, so retail licenses are not usually activated via Office Tool Plus. - -### Volume license - -Volume licenses can be activated using MAK or via KMS. - -- Multiple Activation Key (MAK): can be used in multiple times within specific limits. Once activated, the activation will be permanent. -- Key Management Service (KMS): KMS activation requires the use of GVLK and setting up the KMS host. - -The KMS renewal policy is determined by the KMS host. Typically, an activation is valid for 180 days and is renewed every 7 days. - -## Licenses management - -### Install licenses - -You can choose which licenses you want to install from list. The Grace key is the default key for Retail licenses, GVLK is the default key for volume licenses. - -When installing a new license, the existing licenses are not overwritten, so the licenses can coexist. - -::: tip Tip - -You can holding Ctrl to select multiple items when installing licenses. You can also type `|` in the filter box to filter by multiple conditions. For example, type `office ltsc 2021|visio 2021` to filter Office 2021 LTSC licenses and Visio 2021 licenses. - -::: - -### Install other licenses - -You can install other licenses if you needed. Usually the Office licenses storage on `C:\Program Files\Microsoft Office\root\Licenses16`. You need to install Office product key for the licenses you installed. - -### Uninstall all licenses - -The operation will removing all licenses, but except product keys. - -## Key management - -### Install key - -Input a valid key for Office product to install. If you get an error code [0xC004F069](/faq/activation.md#_0xc004f069) when installing key, install Office licenses for the corresponding product first. - -### Uninstall all unactivated keys - -This will query all licenses and uninstall all unactivated keys automatically. Be careful when using the function. - -### Install confirmation ID (CID) - -You can install CID to activate your Office via phone activation. - -## KMS management - -KMS host can be a domain name or IP address, such as `kms.example.com` or `192.168.123.1`. - -The default port of KMS is 1688, you can change it if needed, such as `kms.example.com:1688` or `192.168.123.1:1688`. - -## Office licenses list - -You can query information about all installed Office licenses, support vNext licenses and legacy licenses. - -### vNext licenses - -Office Tool Plus supports to view the status, expiration date and user info for vNext license. You should log out of your MS account on Office applications before deleting the license. - -### Office legacy licenses - -Office Tool Plus supports to query basic info for license. You can uninstall key for the license, or copy the CID for phone activation. +# Activation management + +## Licenses management + +### Install license + +You can find the license you need from the list and install it. Office Tool Plus has built-in Grace product keys for retail licenses and built-in KMS client product keys (GVLK) for volume licenses, which will be automatically installed after installing the license. + +When installing a new license, the existing licenses are not overwritten, so the licenses can coexist. + +::: tip Tip + +You can holding Ctrl to select multiple items when installing licenses. You can also type `|` in the filter box to filter by multiple conditions. For example, type `office ltsc 2021|visio 2021` to filter Office 2021 LTSC licenses and Visio 2021 licenses. + +::: + +### Install other licenses + +You can install other licenses if you needed. Usually the Office licenses storage on `C:\Program Files\Microsoft Office\root\Licenses16`. This operation does not automatically install the corresponding Office product key, so you need to install the corresponding Office product key yourself after installing the license, otherwise the Office license may not be displayed in the Office application or licenses list. + +### Uninstall all licenses + +The operation will removing all licenses, but except product keys. + +## Key management + +### Install key + +Input a valid key for Office product to install. If you get an error code [0xC004F069](/help/activation.md#_0xc004f069) when installing key, install Office licenses for the corresponding product first. + +### Uninstall all unactivated keys + +This will query all licenses and uninstall all unactivated keys automatically. Be careful when using the function. + +### Install confirmation ID (CID) + +You can install CID to activate your Office via phone activation. + +## KMS management + +KMS host can be a domain name or IP address, such as `kms.example.com` or `192.168.123.1`. + +The default port of KMS is 1688, you can change it if needed, such as `kms.example.com:1688` or `192.168.123.1:1688`. + +## Office licenses list + +You can query information about all installed Office licenses, support vNext licenses and legacy licenses. + +### vNext licenses + +Office Tool Plus supports to view the status, expiration date and user info for vNext license. You should log out of your MS account on Office applications before deleting the license. + +### Office legacy licenses + +Office Tool Plus supports to query basic info for license. You can uninstall key for the license, or copy the CID for phone activation. diff --git a/docs/usage/activate/online-activation.md b/docs/usage/activate/online-activation.md new file mode 100644 index 0000000..b8325e4 --- /dev/null +++ b/docs/usage/activate/online-activation.md @@ -0,0 +1,21 @@ +# Online activation + +## Prerequisites + +- Available MAK or Retail key. +- Internet connection required. + +## Steps + +- Input your Office product key in Keys management, click **Install key**. +- Click the **Activate** button in Licenses management and wait for the product activation to complete. + +::: tip Tip + +If there is a problem during activation, you can click on the blue error code displayed by Office Tool Plus to navigate to possible solutions. + +::: + +## More info + +Retail keys are usually tied to a Microsoft account. This means that most of the time, you only need to log in to your Microsoft account in the Office applications, and activation should be done automatically. diff --git a/docs/usage/activate/phone-activation.md b/docs/usage/activate/phone-activation.md new file mode 100644 index 0000000..ced3f0b --- /dev/null +++ b/docs/usage/activate/phone-activation.md @@ -0,0 +1,22 @@ +# Phone activation + +## Prerequisites + +- An Office product key that can be used for phone activation. + +## Steps + +- Input your Office product key in Keys management, click **Install key**. +- After installing key, click **Refresh** in Licenses list. Expand the license that you want to activate, click **Copy Installation ID**. +- Use the *installation ID* to get *confirmation ID* from Microsoft. +- Click **Install confirmation ID** from the sub menu of **Install key**, input the *confirmation ID*, click OK and wait for the product activation to complete. + +::: tip Tip + +If there is a problem during activation, you can click on the blue error code displayed by Office Tool Plus to navigate to possible solutions. + +::: + +## More info + +Not all Office product keys support phone activation, and some product keys are blocked by the activation server. Licenses activated by phone activation are permanent, but the license cannot be migrated. diff --git a/docs/usage/activate/what-is-license.md b/docs/usage/activate/what-is-license.md new file mode 100644 index 0000000..c5d5c48 --- /dev/null +++ b/docs/usage/activate/what-is-license.md @@ -0,0 +1,30 @@ +# What is Office license? + +Office licenses are generally divided into two categories, namely retail licenses and volume licenses. Different licenses have different activation methods and correspond to different licensing periods. + +Microsoft is also introducing vNext licenses for Microsoft 365 subscriptions. + +## Retail license + +Retail licenses can only be activated via a valid product key. + +Most retail licenses are tied to a Microsoft account, you can log in to your Microsoft account in the Office application to activate it. So retail licenses are not usually activated via Office Tool Plus. + +## Volume license + +Volume licenses can be activated using MAK or via KMS. + +- Multiple Activation Key (MAK): can be used in multiple times within specific limits. Once activated, the activation will be permanent. +- KMS activation refers to activation using the Key Management Service. Usually, an activation is valid for 180 days unless KMS specifies another policy. + +::: warning Warning + +Office LTSC 2021 SPLA licenses do not support KMS activation, only MAK activation supported. + +::: + +## vNext license + +vNext licenses are exclusive to Microsoft 365 subscriptions. These licenses are generated by Microsoft servers and issued to Office applications. These licenses are protected by digital signatures. vNext licenses contain the information of Microsoft account and specify the availability of Office applications. + +Generally, vNext licenses have a three-month authorization period, so an Internet connection is required to use Microsoft 365 apps uninterruptedly. vNext licenses also have certain device limits. Microsoft 365 Apps for Personal and Family versions allow 5 devices to be used, and Microsoft 365 Apps for Enterprise versions allow 10 devices to be used. diff --git a/docs/commands/activate.md b/docs/usage/command/activate.md similarity index 100% rename from docs/commands/activate.md rename to docs/usage/command/activate.md diff --git a/docs/commands/build-in.md b/docs/usage/command/application.md similarity index 65% rename from docs/commands/build-in.md rename to docs/usage/command/application.md index 2146501..decde65 100644 --- a/docs/commands/build-in.md +++ b/docs/usage/command/application.md @@ -10,10 +10,11 @@ These commands can be only used on command box. You can open command box via but | Command | Instruction | | | :-- | :-- | :-- | -| /setimage *value* | Set the background image. | *value*: path to image file. Support BMP, PNG or JPG. Support local or web location. | -| /getkey *value* | Get the default key for a product. | *value*: product ID. | -| /resetnotif | Reset notifications to show closed notifications again. | | -| /loadconfig *value* | Load config from web location. | *value*: web url. | +| `/getkey` *value* | Get the default key for a product. | *value*: product ID. | +| `/loadconfig` *value* | Load config from web location. | *value*: web url. | +| `/setimage` *value* | Set the background image. | *value*: path to image file. Support BMP, PNG or JPG. Support local or web location. | +| `/resetnotif` | Reset notifications to show closed notifications again. | | +| `/getlogs` | Get the application logs. | | ## Commands @@ -21,11 +22,11 @@ These commands can be only used on command-line. | Command | Instruction | | | :-- | :-- | :-- | -| /isoinstall | Read the ISO configuration and start the installer. | You must create the Office ISO, make sure the ISO file contains ConfigForISO.xml, and mount the ISO before running the command. | -| /loadconfig *value* | Read the XML configuration and start the installer. | *value*: XML file path. | -| /srcpath *value* | Overrides the source path attribute in the XML configuration. This command must be used together with the `/loadconfig` command. | *value*: path to source. | -| /edition *value* | Overrides the client edition attribute in the XML configuration. This command must be used together with the `/loadconfig` command. | *value*: `32` or `64`. | -| /enablehwacc *value* | Enable hardware acceleration. | *value*: `true` or `false`, default value is `true` | +| `/isoinstall` | Read the ISO configuration and start the installer. | You must create the Office ISO, make sure the ISO file contains ConfigForISO.xml, and mount the ISO before running the command. | +| `/loadconfig` *value* | Read the XML configuration and start the installer. | *value*: XML file path. | +| `/srcpath` *value* | Overrides the source path attribute in the XML configuration. This command must be used together with the `/loadconfig` command. | *value*: path to source. | +| `/edition` *value* | Overrides the client edition attribute in the XML configuration. This command must be used together with the `/loadconfig` command. | *value*: `32` or `64`. | +| `/enablehwacc` *value* | Enable hardware acceleration. | *value*: `true` or `false`, default value is `true` | ## Office Tool Plus Console Helper diff --git a/docs/commands/deploy.md b/docs/usage/command/deploy.md similarity index 92% rename from docs/commands/deploy.md rename to docs/usage/command/deploy.md index 1abc782..d724142 100644 --- a/docs/commands/deploy.md +++ b/docs/usage/command/deploy.md @@ -20,8 +20,8 @@ deploy /add O365ProPlusRetail_en-us | /rm *values[]* | Uninstall products. | values: productID_languages, usage same as `/add`. | | /rmall | Uninstall all products. | | | /rmmsi | Uninstall all Office MSI products. | | -| /channel *value* | Set update channel. | *value*: channel ID. [More info](/deploy/settings/basic.md#update-channel) | -| /branch *value* | Set update channel according to branch value. The command will override the `/channel` command. | *value*: branch of channel. [More info](/toolbox/office.md#query-office-version) | +| /channel *value* | Set update channel. | *value*: channel ID. [More info](/usage/deploy/settings/basic.md#update-channel) | +| /branch *value* | Set update channel according to branch value. The command will override the `/channel` command. | *value*: branch of channel. [More info](/usage/toolbox/general.md#query-office-version) | | /edition *value* | Set architecture. | *value*: `32` or `64`, default value is `32`. | | /migratearch | Migrate architecture. | | | /ver *value* | Set Office version. | *value*: Office version number. | @@ -35,6 +35,12 @@ deploy /add O365ProPlusRetail_en-us | /dlfirst | Download first, then deploy. | | | /shortcuts | Create desktop shortcuts. | | +::: warning Attention + +If you specify the source path property with the `/srcpath` command, you must also specify the `/ver` and `/channel` properties or the Office installation may fail. + +::: + ## Deploying Office Examples When specifying multiple applications or languages, you need to separate them with commas. Such as `Access,Lync` or `en-us,en-us`. diff --git a/docs/commands/README.md b/docs/usage/command/keyboard.md similarity index 100% rename from docs/commands/README.md rename to docs/usage/command/keyboard.md diff --git a/docs/deploy/README.md b/docs/usage/deploy/clean-deployment.md similarity index 79% rename from docs/deploy/README.md rename to docs/usage/deploy/clean-deployment.md index 9abb231..59188ac 100644 --- a/docs/deploy/README.md +++ b/docs/usage/deploy/clean-deployment.md @@ -8,10 +8,10 @@ Online installation requires Internet connection. If you have a bad connection i Open Office Tool Plus, go to deploy page and do the following things: -- Add [product(s)](/deploy/settings/basic.md#products). -- Add [language(s)](/deploy/settings/basic.md#languages). +- Add [product(s)](/usage/deploy/settings/basic.md#products). +- Add [language(s)](/usage/deploy/settings/basic.md#languages). -Add products and languages according to your needs. If you don't know what products to add, please check [products](/deploy/settings/basic.md#products) section. +Add products and languages according to your needs. If you don't know what products to add, please check [products](/usage/deploy/settings/basic.md#products) section. --- @@ -19,15 +19,15 @@ If needed, you can also check the following configuration. ### Architecture -By default, 32-bit Office will be installed. For more information please check [architecture](/deploy/settings/basic.md#architecture) section. +By default, 32-bit Office will be installed. For more information please check [architecture](/usage/deploy/settings/basic.md#architecture) section. ### Update channel -If you want to install Office 2019/2021 volume products, you need to configure update channel to Office 2019/2021 Perpetual Enterprise channel. Other times just use the default channel. For more information please check [update channel](/deploy/settings/basic.md#update-channel) section. +If you want to install Office 2019/2021 volume products, you need to configure update channel to Office 2019/2021 Perpetual Enterprise channel. Other times just use the default channel. For more information please check [update channel](/usage/deploy/settings/basic.md#update-channel) section. ### Applications -We usually recommend just selecting the applications which you need, such as the Word, PowerPoint and Excel. For more information please check [applications](/deploy/settings/basic.md#applications) section. +We usually recommend just selecting the applications which you need, such as the Word, PowerPoint and Excel. For more information please check [applications](/usage/deploy/settings/basic.md#applications) section. ### Download first @@ -48,7 +48,7 @@ The offline installation means that install Office using already packaged instal If you have an image file (.iso), you can mount it as a DVD drive. If you have a compressed package (such as .zip, .7z, .rar), please unpack it to a folder. -After mounting/unpacking, run Office Tool Plus from the archives. If not, [download](/start/README.md#download) Office Tool Plus first. +After mounting/unpacking, run Office Tool Plus from the archives. If not, [download](/introduction/download) Office Tool Plus first. After opened Office Tool Plus, navigate to deploy page, make sure the installation files was loaded. If not, click `Select` button and choose the file. @@ -62,9 +62,9 @@ Office installation files should show version number and languages information i After installation files was loaded, do the following things: -- Add [product(s)](/deploy/settings/basic.md#products). -- Add [language(s)](/deploy/settings/basic.md#languages). -- Configure [applications](/deploy/settings/basic.md#applications) (if needed). +- Add [product(s)](/usage/deploy/settings/basic.md#products). +- Add [language(s)](/usage/deploy/settings/basic.md#languages). +- Configure [applications](/usage/deploy/settings/basic.md#applications) (if needed). The architecture and update channels have been automatically matched based on the installation files, so you don't need to change them again unless you have multiple installations. The language(s) should also match the installation file. If the installation files does not contain the language(s) you added, the installation will still require an Internet connection, otherwise the installation will fail. diff --git a/docs/deploy/create-iso/config-command.md b/docs/usage/deploy/create-iso/config-command.md similarity index 100% rename from docs/deploy/create-iso/config-command.md rename to docs/usage/deploy/create-iso/config-command.md diff --git a/docs/deploy/create-iso/default-config.md b/docs/usage/deploy/create-iso/default-config.md similarity index 100% rename from docs/deploy/create-iso/default-config.md rename to docs/usage/deploy/create-iso/default-config.md diff --git a/docs/deploy/create-iso/deploy-command.md b/docs/usage/deploy/create-iso/deploy-command.md similarity index 100% rename from docs/deploy/create-iso/deploy-command.md rename to docs/usage/deploy/create-iso/deploy-command.md diff --git a/docs/deploy/create-iso/iso-command.md b/docs/usage/deploy/create-iso/iso-command.md similarity index 100% rename from docs/deploy/create-iso/iso-command.md rename to docs/usage/deploy/create-iso/iso-command.md diff --git a/docs/deploy/create-iso/basic.md b/docs/usage/deploy/create-iso/no-config.md similarity index 100% rename from docs/deploy/create-iso/basic.md rename to docs/usage/deploy/create-iso/no-config.md diff --git a/docs/deploy/create-iso/README.md b/docs/usage/deploy/create-iso/prepare.md similarity index 93% rename from docs/deploy/create-iso/README.md rename to docs/usage/deploy/create-iso/prepare.md index 08d56bb..e57050a 100644 --- a/docs/deploy/create-iso/README.md +++ b/docs/usage/deploy/create-iso/prepare.md @@ -22,7 +22,7 @@ Office Tool Plus 在 ISO 模式中工作时会自动调整一些设置,您无 ## 获取合适的 Office Tool Plus 版本 -我们建议您[下载](/start/README.md#下载)包含框架的 Office Tool Plus。不需要在客户端上安装 .NET Desktop Runtime 即可运行 Office Tool Plus。 +我们建议您[下载](/introduction/download)包含框架的 Office Tool Plus。不需要在客户端上安装 .NET Desktop Runtime 即可运行 Office Tool Plus。 如果您决定创建 64 位的 Office ISO,您可以下载 64 位版本的 Office Tool Plus。否则您应该下载 32 位的 Office Tool Plus。 diff --git a/docs/deploy/modify.md b/docs/usage/deploy/modify-deployment.md similarity index 86% rename from docs/deploy/modify.md rename to docs/usage/deploy/modify-deployment.md index 663ee4a..39caef3 100644 --- a/docs/deploy/modify.md +++ b/docs/usage/deploy/modify-deployment.md @@ -20,7 +20,7 @@ If the applications does not have the items you want, such as Access, add a new ![Upgrade Office](/images/en-us/deploy/upgrade-product.png) -Download Office installation from another PC, then make an ISO or copy the files to the client. Make sure the [Installation files](/deploy/settings/basic.md#installation-files) was loaded the Office installation, if not, select the file manually. Add the same products as installed products, finally click **Start deploy**. +Download Office installation from another PC, then make an ISO or copy the files to the client. Make sure the [Installation files](/usage/deploy/settings/basic.md#installation-files) was loaded the Office installation, if not, select the file manually. Add the same products as installed products, finally click **Start deploy**. ## Migration architecture diff --git a/docs/deploy/settings/advanced.md b/docs/usage/deploy/settings/advanced.md similarity index 92% rename from docs/deploy/settings/advanced.md rename to docs/usage/deploy/settings/advanced.md index 8cbf496..014ef5a 100644 --- a/docs/deploy/settings/advanced.md +++ b/docs/usage/deploy/settings/advanced.md @@ -20,7 +20,7 @@ If you have downloaded Office installation files, the versions of all Office ins ### Source path -If you have Office installation files, you should select them on [Installation files](/deploy/settings/basic.md#installation-files) panel, instead of writing the path here. +If you have Office installation files, you should select them on [Installation files](/usage/deploy/settings/basic.md#installation-files) panel, instead of writing the path here. ## Activation settings diff --git a/docs/deploy/settings/basic.md b/docs/usage/deploy/settings/basic.md similarity index 96% rename from docs/deploy/settings/basic.md rename to docs/usage/deploy/settings/basic.md index 0409fb1..61b1dcf 100644 --- a/docs/deploy/settings/basic.md +++ b/docs/usage/deploy/settings/basic.md @@ -40,8 +40,9 @@ In most cases, `Current Channel` is the default channel. The table below lists t | Monthly Enterprise Channel | MonthlyEnterprise | Once a month, on the second Tuesday of the month | Same as release frequency | | Office 2019 Perpetual Enterprise | PerpetualVL2019 | Once a month, on the second Tuesday of the month | None | | Office 2021 Perpetual Enterprise | PerpetualVL2021 | Once a month, on the second Tuesday of the month | None | +| Office 2024 Perpetual Enterprise | PerpetualVL2024 | Once a month, on the second Tuesday of the month | None | -> The Perpetual Enterprise channel is a dedicated channel for Office 2019/2021 volume products. +> The Perpetual Enterprise channel is a dedicated channel for Office 2019/2021/2024 volume products. All of the channels listed in the table are stable channels and can be used on a daily basis. diff --git a/docs/settings/README.md b/docs/usage/settings.md similarity index 96% rename from docs/settings/README.md rename to docs/usage/settings.md index a57b9a7..8f56d2a 100644 --- a/docs/settings/README.md +++ b/docs/usage/settings.md @@ -20,7 +20,7 @@ By default, Office Tool Plus automatically switches between light theme (Light B By default, Office Tool Plus automatically choose background according to environment. Mica effect is the default background on Windows 11, and Bing wallpaper for others. If remote session is detected, the background will be off. You can adjust it to other backgrounds according to your preference, or use local images as background image, supporting PNG, JPG and BMP. -If you want to set a web image as the background image, please use [/setimage](/commands/build-in.md#in-application-commands) command. +If you want to set a web image as the background image, please use [/setimage](/usage/command/application.md#in-application-commands) command. ::: warning Notice @@ -38,7 +38,7 @@ There may be a delay in dragging windows when using the Acrylic effect on Window 但如果您在使用 Office Tool Plus 的过程中遇到了窗口变全透明、加载图片时内存溢出等问题,你可以通过关闭硬件加速来缓解这些问题。 -你也可以通过使用[命令行](/commands/build-in.md#commands)的方式临时关闭硬件加速。 +你也可以通过使用[命令行](/usage/command/application.md#commands)的方式临时关闭硬件加速。 ## Deploy diff --git a/docs/toolbox/README.md b/docs/usage/toolbox/general.md similarity index 69% rename from docs/toolbox/README.md rename to docs/usage/toolbox/general.md index 286d4a1..67f4010 100644 --- a/docs/toolbox/README.md +++ b/docs/usage/toolbox/general.md @@ -1,5 +1,13 @@ # General tools +## Query Office version + +You can get the version information of Office update channel from Microsoft, including the channel name, branch, version number, and creation time. + +![Query Office version](/images/en-us/toolbox/query-office-update-channel.png) + +To display internal channels, please enable [Display internal products and channels](/usage/settings.md#display-internal-products-and-channels). + ## Query error code description 通常情况下,一些程序或脚本会在执行时出错,然后给出一个错误代码,错误代码通常以 0x 开头(十六进制),也可以是普通数字,例如 2(十进制)。 diff --git a/docs/toolbox/office.md b/docs/usage/toolbox/office.md similarity index 87% rename from docs/toolbox/office.md rename to docs/usage/toolbox/office.md index 33fd653..38bc202 100644 --- a/docs/toolbox/office.md +++ b/docs/usage/toolbox/office.md @@ -1,13 +1,5 @@ # Office tools -## Query Office version - -You can get the version information of Office update channel from Microsoft, including the channel name, branch, version number, and creation time. - -![Query Office version](/images/en-us/toolbox/query-office-update-channel.png) - -To display internal channels, please enable [Display internal products and channels](/settings/README.md#display-internal-products-and-channels). - ## Remove Office Support to remove all versions of Office. diff --git a/docs/toolbox/windows.md b/docs/usage/toolbox/windows.md similarity index 100% rename from docs/toolbox/windows.md rename to docs/usage/toolbox/windows.md diff --git a/docs/zh-cn/README.md b/docs/zh-cn/README.md deleted file mode 100644 index a8a24aa..0000000 --- a/docs/zh-cn/README.md +++ /dev/null @@ -1,17 +0,0 @@ ---- -home: true -heroImage: /images/logo.webp -heroText: -tagline: 一个强大且实用的 Office 部署工具 -actions: - - text: 开始 - link: /zh-cn/start/ -features: -- title: 简单 - details: 只需几步配置,便可开始部署 Office. -- title: 实用 - details: 没有多余的东西,只为 Office 而生。 -- title: 强大 - details: 完整的自定义支持。 -footer: MIT Licensed | Copyright © 2016 - 2024 Yerong All Rights Reserved. ---- diff --git a/docs/zh-cn/activate/README.md b/docs/zh-cn/activate/README.md deleted file mode 100644 index cc1c55d..0000000 --- a/docs/zh-cn/activate/README.md +++ /dev/null @@ -1,76 +0,0 @@ -# 功能介绍 - -在激活页面,你可以安装许可证、安装产品密钥,配置 KMS 等,进行 Office 的激活。 - -购买有正版授权的用户可直接打开 Office 应用程序并登录微软账号即可激活 Office. - -## 许可证说明 - -### 零售(Retail)许可证 - -零售许可证只能使用产品密钥激活。Microsoft 365 产品只能通过登录拥有正版许可证的微软账户激活。 - -目前大多数的零售许可都与微软账户绑定,因此零售版产品通常不使用 Office Tool Plus 进行激活。 - -### 批量(Volume)许可证 - -批量许可证可以使用 MAK 激活,也可以使用 KMS 激活。 - -- MAK 指的是批量激活密钥(Multiple Activation Key),MAK 密钥有使用次数上限,可以多次使用并激活 Office。一旦激活成功,激活将永久有效。 -- KMS 激活指的是使用密钥管理服务(Key Management Service)进行激活,KMS 激活需要使用 GVLK,并设置 KMS 主机。 - -KMS 续期策略由 KMS 主机决定。通常情况下,一次激活的有效期是 180 天,每隔 7 天续期一次。 - -## 许可证管理 - -### 安装许可证 - -你可以从列表中找到你需要的许可证并安装。Office Tool Plus 为零售许可证内置了默认密钥,为批量许可证内置了 GVLK 密钥。 - -安装新的许可证时,现有的许可证不会被覆盖,因此许可证可以共存。 - -::: tip 提示 - -安装许可证时,你可以按住 Ctrl 以同时选择多个许可证。您也可以在筛选框中键入 `|` 以进行多条件筛选。例如键入 `office ltsc 2021|visio 2021` 以筛选 Office 2021 LTSC 许可证和 Visio 2021 许可证。 - -::: - -### 安装其他许可证 - -如果你需要,你可以安装其他许可证,通常情况下,Office 许可证储存在 `C:\Program Files\Microsoft Office\root\Licenses16`。使用该功能不会安装 Office 产品密钥,需要自行安装密钥。 - -### 卸载所有许可证 - -此功能会删除系统上安装了的所有的 Office 许可证,不会清除密钥。 - -## 密钥管理 - -### 安装密钥 - -输入一个完整的 Office 产品密钥即可进行安装。如果你在安装产品密钥时显示错误代码 [0xC004F069](/zh-cn/faq/activation.md#_0xc004f069),请确保你已经安装该密钥对应的 Office 许可证。 - -### 卸载所有未激活的密钥 - -此功能会检索当前所有的 Office 许可证,并自动卸载未激活的产品密钥。执行此操作可能会丢失你的 Office 产品密钥,请小心。 - -### 安装确认 ID (CID) - -此功能允许你输入并安装一个确认 ID,用于电话激活。 - -## KMS 管理 - -KMS 主机可以是一个域名,也可以是一个 IP 地址,例如:`kms.example.com` 或者 `192.168.123.1`。 - -KMS 主机的默认端口是 1688,如果需要,可以手动输入指定为其他端口。例如:`kms.example.com:1688` 或者 `192.168.123.1:1688`。 - -## 许可证列表 - -您可以从这里检索当前设备上已安装的 Office 许可证的信息,支持 vNext 许可证和传统的 Office 许可证。 - -### vNext 许可证 - -Office Tool Plus 支持查看 vNext 许可证的状态、期限、使用者等信息。您也可以在这里删除不想要/不需要的 vNext 许可证。在删除之前,建议先从 Office 应用程序内退出相应微软账户的登录。 - -### Office 传统许可证 - -Office Tool Plus 支持查看许可证的基础信息,可以针对单个许可证卸载产品密钥,也可以获取安装 ID 以用于电话激活。 diff --git a/docs/zh-cn/activate/activate-steps.md b/docs/zh-cn/activate/activate-steps.md deleted file mode 100644 index ad84e75..0000000 --- a/docs/zh-cn/activate/activate-steps.md +++ /dev/null @@ -1,27 +0,0 @@ -# 激活步骤 - -## 密钥激活(联网激活) - -在密钥管理中输入你的 Office 产品密钥并点击**安装密钥**,然后点击**激活**即可。 - -::: tip 提示 - -如果安装 Office 产品密钥时显示错误代码 [0xC004F069](/zh-cn/faq/activation.md#_0xc004f069),先安装对应产品的 Office 许可证,然后再试。 - -::: - -## 电话激活(脱机激活) - -在密钥管理中输入你的 Office 产品密钥并点击**安装密钥**,然后在**许可证列表**中点击刷新,找到想要激活的许可证,展开,并点击**复制安装 ID**。 - -使用这个 *安装 ID* 通过微软官方途径获得 *确认 ID*,然后在**密钥管理**的按钮菜单中选择**安装确认 ID**,安装你获取到的**确认 ID** 即可。 - -::: tip 提示 - -如果安装 Office 产品密钥时显示错误代码 [0xC004F069](/zh-cn/faq/activation.md#_0xc004f069),先安装对应产品的 Office 许可证,然后再试。 - -::: - -## KMS 激活(需连接 KMS 主机) - -在许可证管理中安装对应产品的批量许可证,然后在 KMS 管理中设置一个 KMS 主机,最后点击**激活**即可。 diff --git a/docs/zh-cn/deploy/README.md b/docs/zh-cn/deploy/README.md deleted file mode 100644 index 082756a..0000000 --- a/docs/zh-cn/deploy/README.md +++ /dev/null @@ -1,73 +0,0 @@ -# 初次安装 - -部署 Office 时,安装和卸载可以同时进行,因此你可以将多个步骤结合在一起,无需分开执行。 - -## 在线安装 - -在线安装需要使用网络数据,如果您的网络环境较差,可能会需要较长的时间完成安装。 - -打开 Office Tool Plus,转到部署页面,以下是需要做的事情: - -- 添加[产品](/zh-cn/deploy/settings/basic.md#产品) -- 添加[语言](/zh-cn/deploy/settings/basic.md#语言) - -产品和语言请根据自己的需求添加。如果不知道应该添加什么产品,请参阅[产品](/zh-cn/deploy/settings/basic.md#产品)部分。 - ---- - -如果有需要,您还可以检查如下配置。 - -### 体系结构 - -如果您不了解体系结构,保持默认的 32 位即可。更多信息请查看[体系结构](/zh-cn/deploy/settings/basic.md#体系结构)部分。 - -### 更新通道 - -如果你需要安装 Office 2019/2021 批量许可证产品,你需要更改通道为 Office 2019/2021 企业长期版,其他时候只需要使用默认通道即可,更多信息请查看[更新通道](/zh-cn/deploy/settings/basic.md#更新通道)部分。 - -### 应用程序 - -一些产品通常带有许多应用程序,例如 Word, PowerPoint, Excel, Outlook, OneNote, Publisher 等。我们通常建议只选择您需要的应用程序进行部署即可,例如常用的 Word, PowerPoint 和 Excel。更多信息请查看[应用程序](/zh-cn/deploy/settings/basic.md#应用程序)部分。 - -### 下载后再部署 - -此选项为关闭状态时,Office 将会下载时部署,打开时为下载后部署。 - -![Download first](/images/zh-cn/deploy/download-first.png) - -- 下载时部署:这个模式下无法暂停或取消。Office 安装程序会从 Office CDN 下载安装所需的文件,然后再进行安装。如果因为网络问题而导致文件无法下载,Office 安装程序会卡在一定的进度,无法继续部署。 -- 下载后部署:下载通常由 Office Tool Plus 进行,因此在开始安装前,您可以随时取消或暂停下载。下载完成后,Office 的安装不依赖网络,不会受网络影响。 - ---- - -配置完成且无报错后,即可开始部署 Office。Office 安装程序需要从 Office CDN 下载文件,因此网络质量可能会影响你的安装用时。 - -## 离线安装 - -离线安装指的是使用已经打包好的安装文件来安装 Office。 - -如果您的文件类型是镜像文件(.iso),请双击打开、挂载,您也可以将其解压到某个文件夹中。如果您的文件类型是压缩包(例如 .zip, .7z, .rar),请将其解压到某个文件夹中。 - -挂载/解压后,如果文件中包含 Office Tool Plus,请双击并打开 Office Tool Plus。如果没有,请先[下载](/zh-cn/start/README.md#下载)并打开 Office Tool Plus 然后再继续操作。 - -打开 Office Tool Plus 后,转到部署页面,确保安装文件能够正确加载并识别。如果没有,请点击**选择**按钮并根据提示选择 Office 安装文件。 - -![Office installation](/images/zh-cn/deploy/office-installation.png) - -::: tip 提示 - -Office 安装文件应该能够完整展示版本号和语言包信息,并且没有错误消息。如果安装文件不包含语言,或者仅包含校对工具,则安装的时候依然需要联网,否则会安装失败。 - -::: - -安装文件加载后,请进行如下配置: - -- 添加[产品](/zh-cn/deploy/settings/basic.md#产品) -- 添加[语言](/zh-cn/deploy/settings/basic.md#语言) -- 配置[应用程序](/zh-cn/deploy/settings/basic.md#应用程序)(如果需要) - -体系结构和更新通道已根据安装文件自动匹配,因此您无需再更改,除非您有多个安装文件。语言也应当与安装文件的一致,如果安装文件不包含您所添加的语言,则安装时依然需要联网,否则安装会失败。 - -如果您在添加产品时,程序提示此产品无法安装在选定的通道上,则代表您所下载的 Office 安装文件无法安装您所选择的产品。请选择另外的产品,或下载另外的 Office 安装文件。 - -配置完成且无报错后,即可开始部署 Office。 diff --git a/docs/zh-cn/faq/activation.md b/docs/zh-cn/faq/activation.md deleted file mode 100644 index 9bae7f0..0000000 --- a/docs/zh-cn/faq/activation.md +++ /dev/null @@ -1,96 +0,0 @@ -# 激活问题 - -## 0x80131500 - -此错误代码没有准确意义,请参考给出的错误信息进行问题排查。 - -## 0x80131539 - -此错误代码没有准确意义,请参考给出的错误信息进行问题排查。 - -## 0xC004F015 - -> 软件授权服务报告许可证未安装。 - -如果您的 Office 已经激活,则不需要理会此消息。 - -如果您的 Office 尚未激活,请检查自己的操作步骤是否有错误,是否安装了正确的 Office 许可证,或者向微软[购买](https://otp.landian.vip/zh-cn/#store) Office 许可证授权。 - -## 0xC004F017 - -> 软件授权服务报告许可证未安装。 - -解决方案同[0xC004F015](activation.md#_0xc004f015)。 - -## 0xC004F069 - -> 软件授权服务报告找不到产品 SKU。 - -这个错误代码表示你正在安装的 Office 产品密钥没有对应的许可证,你需要先安装对应的 Office 许可证,然后再安装这个产品密钥。 - -## 0xC004F074 - -> 软件授权服务报告无法激活该产品,无法联系任何密钥管理服务(KMS)。 - -确保以下事项没有问题: - -- 网络连接正常。 -- 你正在使用的 KMS 主机能够正常工作。[如何测试?](/zh-cn/toolbox/README.md#测试-kms-主机可用性) - -然后做以下事情: - -- [重置 Software Protection 服务](/zh-cn/toolbox/windows.md#重置-software-protection-服务)。 -- 再次尝试激活。 - -## 0xC004E015 - -> 软件授权服务报告许可证使用失败 - -请参考[重建 Windows 激活令牌](/zh-cn/toolbox/windows.md#重建-windows-激活令牌)。 - -## 0x8004E108 - -> 软件授权服务报告令牌存储中的令牌包含无效的哈希 - -解决方案同[0xC004E015](activation.md#_0xc004e015)。 - -## 0x8007000D - -> 数据无效 - -确保以下事项没有问题: - -- 系统时间正确。 -- 网络连接正常。 -- 你正在使用的 KMS 主机能够正常工作。[如何测试?](/zh-cn/toolbox/README.md#测试-kms-主机可用性) - -然后做以下事情: - -- [重置 Software Protection 服务](/zh-cn/toolbox/windows.md#重置-software-protection-服务)。 -- 再次尝试激活。 - -## 0x8007007B - -> 文件名、目录名或卷标语法不正确 - -解决方案同[0x8007000D](activation.md#_0x8007000d)。 - -## .NET Framework 问题 - -> The native library 'C:\Windows\Microsoft.NET\Framework64\v4.0.30319\wminet_utils.dll' does not have all required functions. Please update the .NET Framework. - -请使用 Windows Update 检查并安装所有的 .NET Framework 更新。 - -## 没有在系统中找到有效的 Office KMS 许可证 - -若要使用 KMS 激活,你需要为 Office 安装批量(Volume)许可证和 GVLK。 - -通常情况下,当您在 Office Tool Plus 中安装对应的批量许可证后,您就可以正常使用 KMS 进行激活了,但以下情况除外: - -- SPLA 许可证:SPLA 许可证仅能使用 MAK 进行激活,不支持 KMS 激活。 -- 预览版产品:处于预览阶段的产品没有 GVLK,因此您还需要手动安装 GVLK 才可进行 KMS 激活。 - -## 尚无解决方案的错误 - -- 错误代码:0x80040154,没有注册类。 -- 错误代码:0x80070002,系统找不到指定的文件。 diff --git a/docs/zh-cn/faq/application.md b/docs/zh-cn/faq/application.md deleted file mode 100644 index 77452f6..0000000 --- a/docs/zh-cn/faq/application.md +++ /dev/null @@ -1,21 +0,0 @@ -# 程序问题 - -## Insufficient memory to continue the execution of the program - -断开网络连接,然后重新打开 Office Tool Plus. - -如果一切正常,恢复网络连接。 - -## Office Tool Plus 的窗口一片空白,看不见任何东西 - -打开 CMD 或 PowerShell,使用以下命令关闭 Office Tool Plus 的硬件加速: - -``` batch -"Office Tool Plus" /enablehwacc false -``` - -**为了能永久解决此问题,请尝试更新您的显卡驱动。** - -## UCEERR_RENDERTHREADFAILURE (0x88980406) - -解决方案同上。 diff --git a/docs/zh-cn/faq/README.md b/docs/zh-cn/help/about.md similarity index 100% rename from docs/zh-cn/faq/README.md rename to docs/zh-cn/help/about.md diff --git a/docs/zh-tw/faq/activation.md b/docs/zh-cn/help/activation.md similarity index 83% rename from docs/zh-tw/faq/activation.md rename to docs/zh-cn/help/activation.md index 9bae7f0..1aeb2fe 100644 --- a/docs/zh-tw/faq/activation.md +++ b/docs/zh-cn/help/activation.md @@ -35,18 +35,18 @@ 确保以下事项没有问题: - 网络连接正常。 -- 你正在使用的 KMS 主机能够正常工作。[如何测试?](/zh-cn/toolbox/README.md#测试-kms-主机可用性) +- 你正在使用的 KMS 主机能够正常工作。[如何测试?](/zh-cn/usage/toolbox/general.md#测试-kms-主机可用性) 然后做以下事情: -- [重置 Software Protection 服务](/zh-cn/toolbox/windows.md#重置-software-protection-服务)。 +- [重置 Software Protection 服务](/zh-cn/usage/toolbox/windows.md#重置-software-protection-服务)。 - 再次尝试激活。 ## 0xC004E015 > 软件授权服务报告许可证使用失败 -请参考[重建 Windows 激活令牌](/zh-cn/toolbox/windows.md#重建-windows-激活令牌)。 +请参考[重建 Windows 激活令牌](/zh-cn/usage/toolbox/windows.md#重建-windows-激活令牌)。 ## 0x8004E108 @@ -62,11 +62,11 @@ - 系统时间正确。 - 网络连接正常。 -- 你正在使用的 KMS 主机能够正常工作。[如何测试?](/zh-cn/toolbox/README.md#测试-kms-主机可用性) +- 你正在使用的 KMS 主机能够正常工作。[如何测试?](/zh-cn/usage/toolbox/general.md#测试-kms-主机可用性) 然后做以下事情: -- [重置 Software Protection 服务](/zh-cn/toolbox/windows.md#重置-software-protection-服务)。 +- [重置 Software Protection 服务](/zh-cn/usage/toolbox/windows.md#重置-software-protection-服务)。 - 再次尝试激活。 ## 0x8007007B diff --git a/docs/zh-tw/faq/application.md b/docs/zh-cn/help/application.md similarity index 86% rename from docs/zh-tw/faq/application.md rename to docs/zh-cn/help/application.md index 77452f6..2170713 100644 --- a/docs/zh-tw/faq/application.md +++ b/docs/zh-cn/help/application.md @@ -10,8 +10,8 @@ 打开 CMD 或 PowerShell,使用以下命令关闭 Office Tool Plus 的硬件加速: -``` batch -"Office Tool Plus" /enablehwacc false +``` powershell +.\"Office Tool Plus" /enablehwacc false ``` **为了能永久解决此问题,请尝试更新您的显卡驱动。** diff --git a/docs/zh-cn/faq/deploy.md b/docs/zh-cn/help/deploy.md similarity index 80% rename from docs/zh-cn/faq/deploy.md rename to docs/zh-cn/help/deploy.md index 3e89603..b4908bf 100644 --- a/docs/zh-cn/faq/deploy.md +++ b/docs/zh-cn/help/deploy.md @@ -23,22 +23,22 @@ Microsoft 365 应用可能无法在老旧的系统上安装或运行。微软强 微软不允许将 Office 安装到其他位置,我们也不建议您强制更改其安装位置。 -## The path is null or empty, please check your system variables +## The path is null or empty -要修复这个错误,请在工具箱页面[重置系统变量](/zh-cn/toolbox/windows.md#重置系统变量). +要修复这个错误,请在工具箱页面[重置系统变量](/zh-cn/usage/toolbox/windows.md#重置系统变量). ## Office 安装进度卡住不动 如果安装进度卡在 0-49% 之间,则表示 Office 安装程序无法获取所需文件。 - 如果是在线安装,请检查网络状况是否良好,或者尝试换个网络。 -- 尝试使用[下载后再部署](/zh-cn/deploy/README.md#下载后再部署),这能够最大程度避免因网络而出现问题。 -- 尝试[校验 Office 安装文件](/zh-cn/deploy/settings/basic.md#安装文件),有时候是文件出现了问题。 +- 尝试使用[下载后再部署](/zh-cn/usage/deploy/clean-deployment.md#下载后再部署),这能够最大程度避免因网络而出现问题。 +- 尝试[校验 Office 安装文件](/zh-cn/usage/deploy/settings/basic.md#安装文件),有时候是文件出现了问题。 如果安装进度卡在 50-100% 之间,则表示 Office 安装过程中出现了错误。 - 如果安装程序允许你忽略这个错误,那你可以选择忽略,但 VBA 或者某些功能可能不可用。 - 尝试退出所有第三方软件,某些第三方软件可能会错误阻止安装程序的运行。 -- 尝试[移除 Office](/zh-cn/toolbox/office.md#移除-office),然后重新安装。 +- 尝试[移除 Office](/zh-cn/usage/toolbox/office.md#移除-office),然后重新安装。 如果以上步骤不起作用,您可能需要重新安装 Windows。 diff --git a/docs/zh-cn/index.md b/docs/zh-cn/index.md new file mode 100644 index 0000000..544ab4d --- /dev/null +++ b/docs/zh-cn/index.md @@ -0,0 +1,32 @@ +--- +layout: home + +hero: + name: "Office Tool Plus" + text: "一个强大且实用的 Office 部署工具" + tagline: 快速入门和技术文档 + image: + src: /images/logo.webp + alt: Office Tool Plus logo + actions: + - theme: brand + text: 开始 + link: /zh-cn/introduction/what-is-otp + - theme: alt + text: 主页 + link: https://otp.landian.vip/ + - theme: alt + text: 博客 + link: https://www.coolhub.top/ + - theme: alt + text: GitHub + link: https://github.com/YerongAI/Office-Tool + +features: + - title: 简单 + details: 只需几步配置,便可开始部署 Office. + - title: 实用 + details: 没有多余的东西,只为 Office 而生。 + - title: 强大 + details: 完整的自定义支持。 +--- diff --git a/docs/zh-cn/introduction/download.md b/docs/zh-cn/introduction/download.md new file mode 100644 index 0000000..60c2cdd --- /dev/null +++ b/docs/zh-cn/introduction/download.md @@ -0,0 +1,52 @@ +# 下载 + +你可以从这些站点中下载 Office Tool Plus: + +- [云图小镇](https://www.officetool.plus/redirect/download.php?site=yuntu) +- [OneDrive](https://www.officetool.plus/redirect/download.php?site=onedrive) +- [GitHub Releases](https://www.officetool.plus/redirect/download.php?site=github) +- [山东大学镜像站](https://www.officetool.plus/redirect/download.php?site=sdumirror) +- [上海交通大学镜像站](https://www.officetool.plus/redirect/download.php?site=sjtumirror) +- [南京大学镜像站](https://www.officetool.plus/redirect/download.php?site=nju) +- [兰州大学镜像站](https://www.officetool.plus/redirect/download.php?site=lzu) +- [南阳理工学院镜像站](https://www.officetool.plus/redirect/download.php?site=nyist) +- [荆楚理工学院镜像站](https://www.officetool.plus/redirect/download.php?site=jcut) + +或者使用 PowerShell 下载 Office Tool Plus: + +站点 1(第一个为简体中文,第二个为英文): + +```powershell +irm https://otp.landian.vip/get/?lang=zh-cn | iex +``` + +```powershell +irm https://otp.landian.vip/get/ | iex +``` + +站点 2(第一个为简体中文,第二个为英文): + +```powershell +irm https://officetool.plus/get/?lang=zh-cn | iex +``` + +```powershell +irm https://officetool.plus/get/ | iex +``` + +版本区别: + +- 包含框架版本:包含 .NET Runtime,可以在不安装 .NET Runtime 的情况下直接运行 Office Tool Plus. +- 普通版本:仅包含 Office Tool Plus 以及基本组件。 + +> 推荐下载包含框架的版本,方便使用。 + +体系架构区别: + +- x86(32 位): 可以在 32 位、64 位 或 ARM64 的 Windows 中运行,支持使用迅雷云加速开放平台作为下载引擎。 +- x64(64 位): 可以在 64 位 或 ARM64 的 Windows 中运行,不支持使用迅雷云加速开放平台。 +- ARM64: 仅能在 ARM64 的 Windows 中运行,针对 ARM64 平台有更好的兼容性和性能表现,其余同 x64 版本。 + +## 解压 + +下载完成后,请将整个压缩包解压到一个合适的位置,例如桌面。**请勿在压缩包内直接双击运行 Office Tool Plus**. diff --git a/docs/zh-cn/introduction/pages/activate-page.md b/docs/zh-cn/introduction/pages/activate-page.md new file mode 100644 index 0000000..a88d448 --- /dev/null +++ b/docs/zh-cn/introduction/pages/activate-page.md @@ -0,0 +1 @@ +# Activate diff --git a/docs/zh-cn/introduction/pages/check-hash-page.md b/docs/zh-cn/introduction/pages/check-hash-page.md new file mode 100644 index 0000000..d8a4467 --- /dev/null +++ b/docs/zh-cn/introduction/pages/check-hash-page.md @@ -0,0 +1 @@ +# Check hash diff --git a/docs/zh-cn/introduction/pages/convert-doc-page.md b/docs/zh-cn/introduction/pages/convert-doc-page.md new file mode 100644 index 0000000..b1daccf --- /dev/null +++ b/docs/zh-cn/introduction/pages/convert-doc-page.md @@ -0,0 +1 @@ +# Convert documents diff --git a/docs/zh-cn/introduction/pages/deploy-page.md b/docs/zh-cn/introduction/pages/deploy-page.md new file mode 100644 index 0000000..168a970 --- /dev/null +++ b/docs/zh-cn/introduction/pages/deploy-page.md @@ -0,0 +1 @@ +# Deploy diff --git a/docs/zh-cn/introduction/pages/toolbox-page.md b/docs/zh-cn/introduction/pages/toolbox-page.md new file mode 100644 index 0000000..088d407 --- /dev/null +++ b/docs/zh-cn/introduction/pages/toolbox-page.md @@ -0,0 +1 @@ +# Toolbox diff --git a/docs/zh-cn/start/requirement.md b/docs/zh-cn/introduction/requirement.md similarity index 100% rename from docs/zh-cn/start/requirement.md rename to docs/zh-cn/introduction/requirement.md diff --git a/docs/zh-tw/start/README.md b/docs/zh-cn/introduction/what-is-otp.md similarity index 67% rename from docs/zh-tw/start/README.md rename to docs/zh-cn/introduction/what-is-otp.md index 31e2a67..962248b 100644 --- a/docs/zh-tw/start/README.md +++ b/docs/zh-cn/introduction/what-is-otp.md @@ -15,43 +15,6 @@ Office Tool Plus 基于 [Office 部署工具](https://aka.ms/ODT)制作,可以 无论你是个体还是团队,Office Tool Plus 都是你的得力小助手。 -## 下载 - -下载 Office Tool Plus: - -- [Office Tool Plus 官方网站](http://otp.landian.vip/) - -或者使用 PowerShell 下载 Office Tool Plus: - -站点 1: - -```powershell -irm https://otp.landian.vip/get/ | iex -``` - -站点 2: - -```powershell -irm https://officetool.plus/get/ | iex -``` - -版本区别: - -- 包含框架版本:包含 .NET Runtime,可以在不安装 .NET Runtime 的情况下直接运行 Office Tool Plus. -- 普通版本:仅包含 Office Tool Plus 以及基本组件。 - -> 推荐下载包含框架的版本,方便使用。 - -体系架构区别: - -- x86(32 位): 可以在 32 位、64 位 或 ARM64 的 Windows 中运行,支持使用迅雷云加速开放平台作为下载引擎。 -- x64(64 位): 可以在 64 位 或 ARM64 的 Windows 中运行,不支持使用迅雷云加速开放平台。 -- ARM64: 仅能在 ARM64 的 Windows 中运行,针对 ARM64 平台有更好的兼容性和性能表现,其余同 x64 版本。 - -### 解压 - -下载完成后,请将整个压缩包解压到一个合适的位置,例如桌面。**请勿在压缩包内直接双击运行 Office Tool Plus**. - ## 功能 - 创建 Office 安装配置,支持导出到本地,或从本地或网络位置导入。 diff --git a/docs/zh-cn/start/README.md b/docs/zh-cn/start/README.md deleted file mode 100644 index 6d5b564..0000000 --- a/docs/zh-cn/start/README.md +++ /dev/null @@ -1,97 +0,0 @@ -# 欢迎使用 Office Tool Plus - -## 介绍 - -Office Tool Plus 是一个强大且实用的 Office 部署工具。 - -Office Tool Plus 基于 [Office 部署工具](https://aka.ms/ODT)制作,可以很方便的部署 Office,其内置迅雷云加速开放平台和 [Downloader](https://github.com/bezzad/Downloader) 引擎可帮助您更快地下载 Office。你也可以使用 Office Tool Plus 的其他功能、小工具快捷、方便地激活和管理 Office 哦! - -支持下列产品: - -- Microsoft 365 -- Office 2016, 2019, 2021, 2024 -- Visio 2016, 2019, 2021, 2024 & Visio Online Plan 2 -- Project 2016, 2019, 2021, 2024 & Project Online Desktop Client - -无论你是个体还是团队,Office Tool Plus 都是你的得力小助手。 - -## 下载 - -下载 Office Tool Plus: - -- [Office Tool Plus 官方网站](http://otp.landian.vip/) - -或者使用 PowerShell 下载 Office Tool Plus: - -站点 1(第一个为简体中文,第二个为英文): - -```powershell -irm https://otp.landian.vip/get/?lang=zh-cn | iex -``` - -```powershell -irm https://otp.landian.vip/get/ | iex -``` - -站点 2(第一个为简体中文,第二个为英文): - -```powershell -irm https://officetool.plus/get/?lang=zh-cn | iex -``` - -```powershell -irm https://officetool.plus/get/ | iex -``` - -版本区别: - -- 包含框架版本:包含 .NET Runtime,可以在不安装 .NET Runtime 的情况下直接运行 Office Tool Plus. -- 普通版本:仅包含 Office Tool Plus 以及基本组件。 - -> 推荐下载包含框架的版本,方便使用。 - -体系架构区别: - -- x86(32 位): 可以在 32 位、64 位 或 ARM64 的 Windows 中运行,支持使用迅雷云加速开放平台作为下载引擎。 -- x64(64 位): 可以在 64 位 或 ARM64 的 Windows 中运行,不支持使用迅雷云加速开放平台。 -- ARM64: 仅能在 ARM64 的 Windows 中运行,针对 ARM64 平台有更好的兼容性和性能表现,其余同 x64 版本。 - -### 解压 - -下载完成后,请将整个压缩包解压到一个合适的位置,例如桌面。**请勿在压缩包内直接双击运行 Office Tool Plus**. - -## 功能 - -- 创建 Office 安装配置,支持导出到本地,或从本地或网络位置导入。 -- 下载 Office,支持所有通道的 Office,支持所有的 Office 语言。 -- 安装 Office,支持对现有的 Office 进行修改,例如产品、语言、应用程序的安装与卸载。 -- 创建 Office ISO,支持默认安装配置、静默安装配置、扩展安装脚本。 -- 激活 Office,支持在线激活、电话激活、KMS 激活。 -- 支持 Office 授权管理,包括许可证管理,密钥管理以及 KMS 管理。 -- 修改 Office 更新通道,支持在不重装 Office 的情况下升级/降级 Office. -- 移除 Office,在 Office 无法正常卸载的情况下强制移除 Office,支持 Office 2003 - Office 最新版本。 -- 内置 Office 工具箱,包括重置设置,修复安装问题,修复激活问题等。 -- 转换 Office 文档,基于 Office COM,稳定、快速、可靠。 -- 自定义主题,打造你自己的专属 Office Tool Plus. - -::: tip 注意事项 - -1. Office Tool Plus 只提供激活管理功能,你需要拥有正版许可证才可以激活你的 Office. - -::: - -## 组件与结构 - -``` txt -Office Tool -├── Office Tool Plus.exe (主程序) -├── Office Tool Plus.Console.exe (终端助手) -├── hostfxr.dll (.NET Host) -├── shared (.NET Runtimes) -└── files - ├── setup.exe (微软 Office 部署工具) - ├── preferences (Office 应用程序首选项数据,由微软提供) - └── Thunder (迅雷云加速开放平台相关文件) -``` - -通常情况下,Office Tool Plus 会自动下载缺失的组件并自动保持其为最新版本。如果某些组件丢失或者无法自动下载,建议重新下载 Office Tool Plus 以解决问题。 diff --git a/docs/zh-cn/usage/activate/kms-activation.md b/docs/zh-cn/usage/activate/kms-activation.md new file mode 100644 index 0000000..7c0162d --- /dev/null +++ b/docs/zh-cn/usage/activate/kms-activation.md @@ -0,0 +1,37 @@ +# KMS 激活 + +## 前置条件 + +- 可连接至 KMS 的 Internet 或 Intranet 网络。 + +## 激活步骤 + +- 在许可证管理中安装批量许可证,例如 *Office LTSC 专业增强版 2024 - 批量许可证*。 +- 在 KMS 管理中设置一个 KMS 主机。KMS 主机可以是一个域名,也可以是一个 IP 地址。 +- 点击许可证管理中的**激活**按钮,等待产品激活完毕。 + +::: warning 注意 + +请勿安装 Office LTSC 2021 SPLA 许可证,SPLA 许可证不支持使用 KMS 进行激活。 + +::: + +::: tip 提示 + +如果激活过程中出现了问题,您可以点击程序显示的蓝色的错误代码以导航到可能的解决方案中。 + +::: + +## 更多信息 + +通常情况下,一次 KMS 激活的有效期为 180 天。7 天之后(剩余时间不足 173 天时),系统会自动尝试续期(重新激活),除非 KMS 指定了另外的续期策略。 + +### Active Directory 域中的 KMS 激活 + +为了简化大型企业中的 Windows 和 Office 激活管理,微软开发了[基于 Active Directory 的激活服务](https://learn.microsoft.com/zh-cn/windows/deployment/volume-activation/activate-using-active-directory-based-activation-client)。配置好域控制器之后,加入该域的所有计算机都将会自动通过 KMS 进行激活。 + +如上所述,企业机构可以配置 AD 域并配置 KMS 激活服务以自动激活组织内的 Windows 和 Office 副本。但由于计算机加入了 AD 域,因此该计算机会受域所控制,域管理员可以针对域中的计算机进行控制,包括但不限于下发命令、安装软件、抹掉数据等。 + +但由于理解错误,一些用户认为使用 KMS 激活会导致电脑被他人控制。 + +正常情况下,使用 KMS 激活并不代表你的计算机就加入了 AD 域,KMS 激活可以在不加入 AD 域的情况下使用,所以你的计算机不会因此被他人所控制。 diff --git a/docs/zh-tw/activate/README.md b/docs/zh-cn/usage/activate/manage.md similarity index 53% rename from docs/zh-tw/activate/README.md rename to docs/zh-cn/usage/activate/manage.md index cc1c55d..1b90ce6 100644 --- a/docs/zh-tw/activate/README.md +++ b/docs/zh-cn/usage/activate/manage.md @@ -1,76 +1,55 @@ -# 功能介绍 - -在激活页面,你可以安装许可证、安装产品密钥,配置 KMS 等,进行 Office 的激活。 - -购买有正版授权的用户可直接打开 Office 应用程序并登录微软账号即可激活 Office. - -## 许可证说明 - -### 零售(Retail)许可证 - -零售许可证只能使用产品密钥激活。Microsoft 365 产品只能通过登录拥有正版许可证的微软账户激活。 - -目前大多数的零售许可都与微软账户绑定,因此零售版产品通常不使用 Office Tool Plus 进行激活。 - -### 批量(Volume)许可证 - -批量许可证可以使用 MAK 激活,也可以使用 KMS 激活。 - -- MAK 指的是批量激活密钥(Multiple Activation Key),MAK 密钥有使用次数上限,可以多次使用并激活 Office。一旦激活成功,激活将永久有效。 -- KMS 激活指的是使用密钥管理服务(Key Management Service)进行激活,KMS 激活需要使用 GVLK,并设置 KMS 主机。 - -KMS 续期策略由 KMS 主机决定。通常情况下,一次激活的有效期是 180 天,每隔 7 天续期一次。 - -## 许可证管理 - -### 安装许可证 - -你可以从列表中找到你需要的许可证并安装。Office Tool Plus 为零售许可证内置了默认密钥,为批量许可证内置了 GVLK 密钥。 - -安装新的许可证时,现有的许可证不会被覆盖,因此许可证可以共存。 - -::: tip 提示 - -安装许可证时,你可以按住 Ctrl 以同时选择多个许可证。您也可以在筛选框中键入 `|` 以进行多条件筛选。例如键入 `office ltsc 2021|visio 2021` 以筛选 Office 2021 LTSC 许可证和 Visio 2021 许可证。 - -::: - -### 安装其他许可证 - -如果你需要,你可以安装其他许可证,通常情况下,Office 许可证储存在 `C:\Program Files\Microsoft Office\root\Licenses16`。使用该功能不会安装 Office 产品密钥,需要自行安装密钥。 - -### 卸载所有许可证 - -此功能会删除系统上安装了的所有的 Office 许可证,不会清除密钥。 - -## 密钥管理 - -### 安装密钥 - -输入一个完整的 Office 产品密钥即可进行安装。如果你在安装产品密钥时显示错误代码 [0xC004F069](/zh-cn/faq/activation.md#_0xc004f069),请确保你已经安装该密钥对应的 Office 许可证。 - -### 卸载所有未激活的密钥 - -此功能会检索当前所有的 Office 许可证,并自动卸载未激活的产品密钥。执行此操作可能会丢失你的 Office 产品密钥,请小心。 - -### 安装确认 ID (CID) - -此功能允许你输入并安装一个确认 ID,用于电话激活。 - -## KMS 管理 - -KMS 主机可以是一个域名,也可以是一个 IP 地址,例如:`kms.example.com` 或者 `192.168.123.1`。 - -KMS 主机的默认端口是 1688,如果需要,可以手动输入指定为其他端口。例如:`kms.example.com:1688` 或者 `192.168.123.1:1688`。 - -## 许可证列表 - -您可以从这里检索当前设备上已安装的 Office 许可证的信息,支持 vNext 许可证和传统的 Office 许可证。 - -### vNext 许可证 - -Office Tool Plus 支持查看 vNext 许可证的状态、期限、使用者等信息。您也可以在这里删除不想要/不需要的 vNext 许可证。在删除之前,建议先从 Office 应用程序内退出相应微软账户的登录。 - -### Office 传统许可证 - -Office Tool Plus 支持查看许可证的基础信息,可以针对单个许可证卸载产品密钥,也可以获取安装 ID 以用于电话激活。 +# 激活管理 + +## 许可证管理 + +### 安装许可证 + +你可以从列表中找到你需要的许可证并安装。Office Tool Plus 为零售许可证内置了 Grace 产品密钥,为批量许可证内置了 KMS 客户端产品密钥(GVLK),这些密钥会在安装了许可证之后自动安装。 + +安装新的许可证时,现有的许可证不会被覆盖,因此许可证可以共存。 + +::: tip 提示 + +安装许可证时,你可以按住 Ctrl 以同时选择多个许可证。您也可以在筛选框中键入 `|` 以进行多条件筛选。例如键入 `office ltsc 2021|visio 2021` 以筛选 Office 2021 LTSC 许可证和 Visio 2021 许可证。 + +::: + +### 安装其他许可证 + +如果你需要,你可以安装其他许可证。通常情况下,Office 许可证储存在 `C:\Program Files\Microsoft Office\root\Licenses16`。该功能不会自动安装对应的 Office 产品密钥,因此你需要在安装许可证后自行安装对应的 Office 产品密钥,否则 Office 许可证可能不会显示在 Office 应用程序或许可证列表中。 + +### 卸载所有许可证 + +此功能会删除系统上所有已安装的 Office 许可证,不会删除 Office 产品密钥。 + +## 密钥管理 + +### 安装密钥 + +输入一个完整的 Office 产品密钥即可进行安装。如果你在安装产品密钥时显示错误代码 [0xC004F069](/zh-cn/help/activation.md#_0xc004f069),请确保你已经安装该产品密钥对应的 Office 许可证。 + +### 卸载所有未激活的密钥 + +此功能会检索当前所有的 Office 许可证,并自动卸载未激活的产品密钥。执行此操作可能会丢失你的 Office 产品密钥,请小心。 + +### 安装确认 ID (CID) + +此功能允许你输入并安装一个确认 ID,用于电话激活。 + +## KMS 管理 + +KMS 主机可以是一个域名,也可以是一个 IP 地址,例如:`kms.example.com` 或者 `192.168.123.1`。 + +KMS 主机的默认端口是 1688,如果需要,可以手动输入指定为其他端口。例如:`kms.example.com:1688` 或者 `192.168.123.1:1688`。 + +## 许可证列表 + +您可以从这里检索当前设备上已安装的 Office 许可证的信息,支持 vNext 许可证和传统的 Office 许可证。 + +### vNext 许可证 + +Office Tool Plus 支持查看 vNext 许可证的状态、期限、使用者等信息。您也可以在这里删除不想要/不需要的 vNext 许可证。在删除之前,建议先从 Office 应用程序内退出相应微软账户的登录。 + +### Office 传统许可证 + +Office Tool Plus 支持查看许可证的基础信息,可以针对单个许可证卸载产品密钥,也可以获取安装 ID 以用于电话激活。 \ No newline at end of file diff --git a/docs/zh-cn/usage/activate/online-activation.md b/docs/zh-cn/usage/activate/online-activation.md new file mode 100644 index 0000000..9f4e89b --- /dev/null +++ b/docs/zh-cn/usage/activate/online-activation.md @@ -0,0 +1,21 @@ +# 在线激活 + +## 前置条件 + +- 可用的 MAK 或 Retail 密钥。 +- 需要 Internet 网络连接。 + +## 激活步骤 + +- 在密钥管理中输入你的 Office 产品密钥并点击**安装密钥**。 +- 点击许可证管理中的**激活**按钮,等待产品激活完毕。 + +::: tip 提示 + +如果激活过程中出现了问题,您可以点击程序显示的蓝色的错误代码以导航到可能的解决方案中。 + +::: + +## 更多信息 + +一般情况下,零售版(Retail)密钥通常与微软账户绑定。这意味着大多数时候,您只需要在 Office 应用程序中登录您的微软账号,然后激活应该就能自动进行,而无需借助 Office Tool Plus 进行额外的操作。 diff --git a/docs/zh-cn/usage/activate/phone-activation.md b/docs/zh-cn/usage/activate/phone-activation.md new file mode 100644 index 0000000..4c72948 --- /dev/null +++ b/docs/zh-cn/usage/activate/phone-activation.md @@ -0,0 +1,22 @@ +# 电话激活 + +## 前置条件 + +- 可用于电话激活的 Office 产品密钥。 + +## 激活步骤 + +- 在密钥管理中输入你的 Office 产品密钥并点击**安装密钥**。 +- 在许可证列表中点击**刷新**,找到想要激活的许可证,展开,并点击**复制安装 ID**。 +- 使用这个*安装 ID* 通过微软官方途径获得*确认 ID*。 +- 在密钥管理的按钮菜单中选择**安装确认 ID**,安装你获取到的*确认 ID*,等待产品激活完毕。 + +::: tip 提示 + +如果激活过程中出现了问题,您可以点击程序显示的蓝色的错误代码以导航到可能的解决方案中。 + +::: + +## 更多信息 + +并不是所有的 Office 产品密钥都支持通过电话激活,一些被激活服务器阻止的产品密钥无法进行激活。通过电话激活的许可证为永久授权,不会过期,但无法迁移授权。 diff --git a/docs/zh-cn/usage/activate/what-is-license.md b/docs/zh-cn/usage/activate/what-is-license.md new file mode 100644 index 0000000..c38efd7 --- /dev/null +++ b/docs/zh-cn/usage/activate/what-is-license.md @@ -0,0 +1,30 @@ +# 什么是许可证? + +Office 许可证一般分为两大类,即零售许可证(Retail license)和批量许可证(Volume license),不同的许可证有不同的激活方式,也对应不同的许可期限。 + +针对 Microsoft 365 订阅,微软还引入了 vNext 许可证。 + +## 零售(Retail)许可证 + +零售许可证只能使用产品密钥激活。 + +目前大多数的零售许可都与微软账户绑定,在 Office 应用程序中登录对应的微软账户即可自动进行激活,因此零售版产品通常不使用 Office Tool Plus 进行激活。 + +## 批量(Volume)许可证 + +批量许可证可以使用 MAK 激活,也可以使用 KMS 激活。 + +- MAK 指的是批量激活密钥(Multiple Activation Key),MAK 密钥有使用次数上限,可以多次使用并激活 Office。一旦激活成功,激活将永久有效。 +- KMS 激活指的是使用密钥管理服务(Key Management Service)进行激活。通常情况下,一次激活的有效期是 180 天,除非 KMS 指定了另外的策略。 + +::: warning 注意 + +Office LTSC 2021 SPLA 许可证不支持 KMS 激活,仅支持 MAK 激活。 + +::: + +## vNext 许可证 + +vNext 许可证是 Microsoft 365 订阅专属的许可证,这些许可证由微软服务器生成,并下发给 Office 应用程序使用。这类许可证有数字签名保护,并定期进行验证。vNext 许可证中包含了微软账户的信息,并指定了 Office 应用程序的可用性。 + +一般情况下,vNext 许可证有三个月的授权时间,因此需要 Internet 连接才能不间断地使用 Microsoft 365 应用。vNext 许可证也有一定的设备数量限制,Microsoft 365 个人和家庭版允许五台设备进行使用,Microsoft 365 企业版则可以允许 10 台设备进行使用。 diff --git a/docs/zh-cn/commands/activate.md b/docs/zh-cn/usage/command/activate.md similarity index 100% rename from docs/zh-cn/commands/activate.md rename to docs/zh-cn/usage/command/activate.md diff --git a/docs/zh-cn/commands/build-in.md b/docs/zh-cn/usage/command/application.md similarity index 68% rename from docs/zh-cn/commands/build-in.md rename to docs/zh-cn/usage/command/application.md index eea7122..94155c8 100644 --- a/docs/zh-cn/commands/build-in.md +++ b/docs/zh-cn/usage/command/application.md @@ -10,10 +10,11 @@ | 命令 | 说明 | | | :-- | :-- | :-- | -| /setimage *value* | 设置背景图 | *value*: 路径,支持 BMP, PNG 或 JPG。支持本地以及 HTTP 路径。 | -| /getkey *value* | 获取产品默认密钥 | *value*: 产品 ID. | -| /resetnotif | 重置通知,以便再次显示已经关闭了的通知 | | -| /loadconfig *value* | 从 Web 路径加载 XML 配置文件 | *value*: 网址 | +| `/getkey` *value* | 获取产品默认密钥 | *value*: 产品 ID. | +| `/loadconfig` *value* | 从 Web 路径加载 XML 配置文件 | *value*: 网址 | +| `/setimage` *value* | 设置背景图 | *value*: 路径,支持 BMP, PNG 或 JPG。支持本地以及 HTTP 路径。 | +| `/resetnotif` | 重置通知,以便再次显示已经关闭了的通知 | | +| `/getlogs` | 获取应用程序的运行日志 | | ## 命令行命令 @@ -21,11 +22,11 @@ | 命令 | 说明 | | | :-- | :-- | :-- | -| /isoinstall | 读取 ISO 配置文件并启动安装程序。 | 你必须创建 Office ISO,确保 ISO 内含 ConfigForISO.xml,挂载后再执行命令 | -| /loadconfig *value* | 读取 XML 配置文件并启动安装程序。 | *value*: XML 文件路径 | -| /srcpath *value* | 覆写 XML 配置文件中的源路径属性,该命令需与 `/loadconfig` 命令一起使用 | *value*: 源路径 | -| /edition *value* | 覆写 XML 配置文件中的体系结构属性。该命令需与 `/loadconfig` 命令一起使用 | *value*: `32` 或 `64` | -| /enablehwacc *value* | 启用硬件加速 | *value*: `true` 或 `false`,默认为 `true` | +| `/isoinstall` | 读取 ISO 配置文件并启动安装程序。 | 你必须创建 Office ISO,确保 ISO 内含 ConfigForISO.xml,挂载后再执行命令 | +| `/loadconfig` *value* | 读取 XML 配置文件并启动安装程序。 | *value*: XML 文件路径 | +| `/srcpath` *value* | 覆写 XML 配置文件中的源路径属性,该命令需与 `/loadconfig` 命令一起使用 | *value*: 源路径 | +| `/edition` *value* | 覆写 XML 配置文件中的体系结构属性。该命令需与 `/loadconfig` 命令一起使用 | *value*: `32` 或 `64` | +| `/enablehwacc` *value* | 启用硬件加速 | *value*: `true` 或 `false`,默认为 `true` | ## Office Tool Plus Console Helper diff --git a/docs/zh-cn/commands/deploy.md b/docs/zh-cn/usage/command/deploy.md similarity index 92% rename from docs/zh-cn/commands/deploy.md rename to docs/zh-cn/usage/command/deploy.md index 8bba001..70b122d 100644 --- a/docs/zh-cn/commands/deploy.md +++ b/docs/zh-cn/usage/command/deploy.md @@ -20,8 +20,8 @@ deploy /add O365ProPlusRetail_zh-cn | /rm *values[]* | 卸载一个或多个产品 | values: productID_languages,使用方法同 `/add` | | /rmall | 卸载全部产品 | | | /rmmsi | 卸载全部 Office MSI 产品 | | -| /channel *value* | 设置更新通道 | *value*: 通道 ID,[更多信息](/zh-cn/deploy/settings/basic.md#更新通道) | -| /branch *value* | 根据分支名称设置更新通道,这个命令会覆盖 `/channel` 命令。 | *value*: 通道的分支名,[更多信息](/zh-cn/toolbox/office.md#查询-office-版本信息) | +| /channel *value* | 设置更新通道 | *value*: 通道 ID,[更多信息](/zh-cn/usage/deploy/settings/basic.md#更新通道) | +| /branch *value* | 根据分支名称设置更新通道,这个命令会覆盖 `/channel` 命令。 | *value*: 通道的分支名,[更多信息](/zh-cn/usage/toolbox/general.md#查询-office-版本信息) | | /edition *value* | 设置体系结构 | *value*: `32` 或 `64`,默认值为 `32` | | /migratearch | 迁移体系结构 | | | /ver *value* | 设置 Office 版本号 | *value*: Office 版本号 | @@ -35,6 +35,12 @@ deploy /add O365ProPlusRetail_zh-cn | /dlfirst | 下载后再安装 | | | /shortcuts | 创建桌面快捷方式 | | +::: warning 注意 + +如果使用 `/srcpath` 命令指定了源路径属性,则需要同时指定 `/ver` 和 `/channel` 属性,否则 Office 安装将会失败。 + +::: + ## 部署 Office 示例 指定多个应用程序或语言时,你需要使用「英文逗号」将其隔开,例如 `Access,Lync` 或 `zh-cn,en-us` diff --git a/docs/zh-cn/commands/README.md b/docs/zh-cn/usage/command/keyboard.md similarity index 100% rename from docs/zh-cn/commands/README.md rename to docs/zh-cn/usage/command/keyboard.md diff --git a/docs/zh-tw/deploy/README.md b/docs/zh-cn/usage/deploy/clean-deployment.md similarity index 80% rename from docs/zh-tw/deploy/README.md rename to docs/zh-cn/usage/deploy/clean-deployment.md index 082756a..58e92eb 100644 --- a/docs/zh-tw/deploy/README.md +++ b/docs/zh-cn/usage/deploy/clean-deployment.md @@ -8,10 +8,10 @@ 打开 Office Tool Plus,转到部署页面,以下是需要做的事情: -- 添加[产品](/zh-cn/deploy/settings/basic.md#产品) -- 添加[语言](/zh-cn/deploy/settings/basic.md#语言) +- 添加[产品](/zh-cn/usage/deploy/settings/basic.md#产品) +- 添加[语言](/zh-cn/usage/deploy/settings/basic.md#语言) -产品和语言请根据自己的需求添加。如果不知道应该添加什么产品,请参阅[产品](/zh-cn/deploy/settings/basic.md#产品)部分。 +产品和语言请根据自己的需求添加。如果不知道应该添加什么产品,请参阅[产品](/zh-cn/usage/deploy/settings/basic.md#产品)部分。 --- @@ -19,15 +19,15 @@ ### 体系结构 -如果您不了解体系结构,保持默认的 32 位即可。更多信息请查看[体系结构](/zh-cn/deploy/settings/basic.md#体系结构)部分。 +如果您不了解体系结构,保持默认的 32 位即可。更多信息请查看[体系结构](/zh-cn/usage/deploy/settings/basic.md#体系结构)部分。 ### 更新通道 -如果你需要安装 Office 2019/2021 批量许可证产品,你需要更改通道为 Office 2019/2021 企业长期版,其他时候只需要使用默认通道即可,更多信息请查看[更新通道](/zh-cn/deploy/settings/basic.md#更新通道)部分。 +如果你需要安装 Office 2019/2021 批量许可证产品,你需要更改通道为 Office 2019/2021 企业长期版,其他时候只需要使用默认通道即可,更多信息请查看[更新通道](/zh-cn/usage/deploy/settings/basic.md#更新通道)部分。 ### 应用程序 -一些产品通常带有许多应用程序,例如 Word, PowerPoint, Excel, Outlook, OneNote, Publisher 等。我们通常建议只选择您需要的应用程序进行部署即可,例如常用的 Word, PowerPoint 和 Excel。更多信息请查看[应用程序](/zh-cn/deploy/settings/basic.md#应用程序)部分。 +一些产品通常带有许多应用程序,例如 Word, PowerPoint, Excel, Outlook, OneNote, Publisher 等。我们通常建议只选择您需要的应用程序进行部署即可,例如常用的 Word, PowerPoint 和 Excel。更多信息请查看[应用程序](/zh-cn/usage/deploy/settings/basic.md#应用程序)部分。 ### 下载后再部署 @@ -48,7 +48,7 @@ 如果您的文件类型是镜像文件(.iso),请双击打开、挂载,您也可以将其解压到某个文件夹中。如果您的文件类型是压缩包(例如 .zip, .7z, .rar),请将其解压到某个文件夹中。 -挂载/解压后,如果文件中包含 Office Tool Plus,请双击并打开 Office Tool Plus。如果没有,请先[下载](/zh-cn/start/README.md#下载)并打开 Office Tool Plus 然后再继续操作。 +挂载/解压后,如果文件中包含 Office Tool Plus,请双击并打开 Office Tool Plus。如果没有,请先[下载](/zh-cn/introduction/download.md)并打开 Office Tool Plus 然后再继续操作。 打开 Office Tool Plus 后,转到部署页面,确保安装文件能够正确加载并识别。如果没有,请点击**选择**按钮并根据提示选择 Office 安装文件。 @@ -62,9 +62,9 @@ Office 安装文件应该能够完整展示版本号和语言包信息,并且 安装文件加载后,请进行如下配置: -- 添加[产品](/zh-cn/deploy/settings/basic.md#产品) -- 添加[语言](/zh-cn/deploy/settings/basic.md#语言) -- 配置[应用程序](/zh-cn/deploy/settings/basic.md#应用程序)(如果需要) +- 添加[产品](/zh-cn/usage/deploy/settings/basic.md#产品) +- 添加[语言](/zh-cn/usage/deploy/settings/basic.md#语言) +- 配置[应用程序](/zh-cn/usage/deploy/settings/basic.md#应用程序)(如果需要) 体系结构和更新通道已根据安装文件自动匹配,因此您无需再更改,除非您有多个安装文件。语言也应当与安装文件的一致,如果安装文件不包含您所添加的语言,则安装时依然需要联网,否则安装会失败。 diff --git a/docs/zh-cn/deploy/create-iso/config-command.md b/docs/zh-cn/usage/deploy/create-iso/config-command.md similarity index 100% rename from docs/zh-cn/deploy/create-iso/config-command.md rename to docs/zh-cn/usage/deploy/create-iso/config-command.md diff --git a/docs/zh-cn/deploy/create-iso/default-config.md b/docs/zh-cn/usage/deploy/create-iso/default-config.md similarity index 100% rename from docs/zh-cn/deploy/create-iso/default-config.md rename to docs/zh-cn/usage/deploy/create-iso/default-config.md diff --git a/docs/zh-cn/deploy/create-iso/deploy-command.md b/docs/zh-cn/usage/deploy/create-iso/deploy-command.md similarity index 100% rename from docs/zh-cn/deploy/create-iso/deploy-command.md rename to docs/zh-cn/usage/deploy/create-iso/deploy-command.md diff --git a/docs/zh-cn/deploy/create-iso/iso-command.md b/docs/zh-cn/usage/deploy/create-iso/iso-command.md similarity index 100% rename from docs/zh-cn/deploy/create-iso/iso-command.md rename to docs/zh-cn/usage/deploy/create-iso/iso-command.md diff --git a/docs/zh-cn/deploy/create-iso/basic.md b/docs/zh-cn/usage/deploy/create-iso/no-config.md similarity index 100% rename from docs/zh-cn/deploy/create-iso/basic.md rename to docs/zh-cn/usage/deploy/create-iso/no-config.md diff --git a/docs/zh-cn/deploy/create-iso/README.md b/docs/zh-cn/usage/deploy/create-iso/prepare.md similarity index 93% rename from docs/zh-cn/deploy/create-iso/README.md rename to docs/zh-cn/usage/deploy/create-iso/prepare.md index cbdd52f..def375e 100644 --- a/docs/zh-cn/deploy/create-iso/README.md +++ b/docs/zh-cn/usage/deploy/create-iso/prepare.md @@ -22,7 +22,7 @@ Office Tool Plus 在 ISO 模式中工作时会自动调整一些设置,您无 ## 获取合适的 Office Tool Plus 版本 -我们建议您[下载](/zh-cn/start/README.md#下载)包含框架的 Office Tool Plus。不需要在客户端上安装 .NET Desktop Runtime 即可运行 Office Tool Plus。 +我们建议您[下载](/zh-cn/introduction/download)包含框架的 Office Tool Plus。不需要在客户端上安装 .NET Desktop Runtime 即可运行 Office Tool Plus。 如果您决定创建 64 位的 Office ISO,您可以下载 64 位版本的 Office Tool Plus。否则您应该下载 32 位的 Office Tool Plus。 diff --git a/docs/zh-cn/deploy/modify.md b/docs/zh-cn/usage/deploy/modify-deployment.md similarity index 85% rename from docs/zh-cn/deploy/modify.md rename to docs/zh-cn/usage/deploy/modify-deployment.md index 1cf0d0a..e70043f 100644 --- a/docs/zh-cn/deploy/modify.md +++ b/docs/zh-cn/usage/deploy/modify-deployment.md @@ -20,7 +20,7 @@ ![Upgrade Office](/images/zh-cn/deploy/upgrade-product.png) -在另外的 PC 上下载 Office 安装文件,创建 Office ISO 或者将其拷贝到客户端计算机中。确保[安装文件](/zh-cn/deploy/settings/basic.md#安装文件)已正确加载数据,如果没有,请手动选择文件进行加载。然后在部署页面添加一个与当前已安装的 Office 一摸一样的产品即可开始部署。 +在另外的 PC 上下载 Office 安装文件,创建 Office ISO 或者将其拷贝到客户端计算机中。确保[安装文件](/zh-cn/usage/deploy/settings/basic.md#安装文件)已正确加载数据,如果没有,请手动选择文件进行加载。然后在部署页面添加一个与当前已安装的 Office 一摸一样的产品即可开始部署。 ## 迁移体系结构 diff --git a/docs/zh-cn/deploy/settings/advanced.md b/docs/zh-cn/usage/deploy/settings/advanced.md similarity index 93% rename from docs/zh-cn/deploy/settings/advanced.md rename to docs/zh-cn/usage/deploy/settings/advanced.md index 3fbe20e..e1e3209 100644 --- a/docs/zh-cn/deploy/settings/advanced.md +++ b/docs/zh-cn/usage/deploy/settings/advanced.md @@ -20,7 +20,7 @@ ### 源路径 -如果你在本地有 Office 安装包,则应该在[安装文件管理](/zh-cn/deploy/settings/basic.md#安装文件)中选择文件,而不是在此处写入路径。 +如果你在本地有 Office 安装包,则应该在[安装文件管理](/zh-cn/usage/deploy/settings/basic.md#安装文件)中选择文件,而不是在此处写入路径。 ## 激活设置 diff --git a/docs/zh-cn/deploy/settings/basic.md b/docs/zh-cn/usage/deploy/settings/basic.md similarity index 96% rename from docs/zh-cn/deploy/settings/basic.md rename to docs/zh-cn/usage/deploy/settings/basic.md index 72c0ae6..f5f1ada 100644 --- a/docs/zh-cn/deploy/settings/basic.md +++ b/docs/zh-cn/usage/deploy/settings/basic.md @@ -40,8 +40,9 @@ Office 安装包包含 Office、Visio 和 Project,由微软提供,无法精 | 月度企业通道 | MonthlyEnterprise | 每月的第二个星期二 | 同发布频率 | | Office 2019 企业长期版 | PerpetualVL2019 | 每月的第二个星期二 | 无 | | Office 2021 企业长期版 | PerpetualVL2021 | 每月的第二个星期二 | 无 | +| Office 2024 企业长期版 | PerpetualVL2024 | 每月的第二个星期二 | 无 | -> 企业长期版通道是 Office 2019/2021 批量产品的专用通道。 +> 企业长期版通道是 Office 2019/2021/2024 批量产品的专用通道。 表中列出的所有通道都是稳定通道,非测试通道,因此都可以日常使用。 diff --git a/docs/zh-cn/settings/README.md b/docs/zh-cn/usage/settings.md similarity index 96% rename from docs/zh-cn/settings/README.md rename to docs/zh-cn/usage/settings.md index 3524212..697c4d2 100644 --- a/docs/zh-cn/settings/README.md +++ b/docs/zh-cn/usage/settings.md @@ -20,7 +20,7 @@ 默认情况下,Office Tool Plus 会根据系统环境自动选择合适的背景。Windows 11 中会选择云母效果作为背景,其他系统则是必应壁纸。如果程序检测到远程桌面会话,将会关闭所有的背景效果。你可以根据自己的喜好调整为其他背景,或使用本地图片作为程序背景,支持 PNG, JPG 和 BMP。 -如果你需要设置网络图片为背景图,请使用 [/setimage](/zh-cn/commands/build-in.md#程序内命令) 命令。 +如果你需要设置网络图片为背景图,请使用 [/setimage](/zh-cn/usage/command/application.md#程序内命令) 命令。 ::: warning 注意 @@ -38,7 +38,7 @@ 但如果您在使用 Office Tool Plus 的过程中遇到了窗口变全透明、加载图片时内存溢出等问题,你可以通过关闭硬件加速来缓解这些问题。 -你也可以通过使用[命令行](/zh-cn/commands/build-in.md#命令行命令)的方式临时关闭硬件加速。 +你也可以通过使用[命令行](/zh-cn/usage/command/application.md#命令行命令)的方式临时关闭硬件加速。 ## 部署 diff --git a/docs/zh-cn/toolbox/README.md b/docs/zh-cn/usage/toolbox/general.md similarity index 71% rename from docs/zh-cn/toolbox/README.md rename to docs/zh-cn/usage/toolbox/general.md index 559fc75..1c2fbb6 100644 --- a/docs/zh-cn/toolbox/README.md +++ b/docs/zh-cn/usage/toolbox/general.md @@ -1,5 +1,13 @@ # 常规工具 +## 查询 Office 版本信息 + +此功能可以从微软服务器获取 Office 更新通道的版本信息,包括通道名、分支、版本号和创建时间。 + +![查询 Office 更新通道](/images/zh-cn/toolbox/query-office-update-channel.png) + +若要显示内部通道,请打开[显示内部产品和通道](/zh-cn/usage/settings.md#显示内部产品和通道)。 + ## 查询错误代码描述 通常情况下,一些程序或脚本会在执行时出错,然后给出一个错误代码,错误代码通常以 0x 开头(十六进制),也可以是普通数字,例如 2(十进制)。 diff --git a/docs/zh-cn/toolbox/office.md b/docs/zh-cn/usage/toolbox/office.md similarity index 88% rename from docs/zh-cn/toolbox/office.md rename to docs/zh-cn/usage/toolbox/office.md index f4722d3..dc72af3 100644 --- a/docs/zh-cn/toolbox/office.md +++ b/docs/zh-cn/usage/toolbox/office.md @@ -1,13 +1,5 @@ # Office 工具 -## 查询 Office 版本信息 - -此功能可以从微软服务器获取 Office 更新通道的版本信息,包括通道名、分支、版本号和创建时间。 - -![查询 Office 更新通道](/images/zh-cn/toolbox/query-office-update-channel.png) - -若要显示内部通道,请打开[显示内部产品和通道](/zh-cn/settings/README.md#显示内部产品和通道)。 - ## 移除 Office 此功能支持移除所有版本的 Office. diff --git a/docs/zh-cn/toolbox/windows.md b/docs/zh-cn/usage/toolbox/windows.md similarity index 100% rename from docs/zh-cn/toolbox/windows.md rename to docs/zh-cn/usage/toolbox/windows.md diff --git a/docs/zh-tw/README.md b/docs/zh-tw/README.md deleted file mode 100644 index 11adee7..0000000 --- a/docs/zh-tw/README.md +++ /dev/null @@ -1,17 +0,0 @@ ---- -home: true -heroImage: /images/logo.webp -heroText: -tagline: 一个强大且实用的 Office 部署工具 -actions: - - text: 开始 - link: /zh-tw/start/ -features: -- title: 简单 - details: 只需几步配置,便可开始部署 Office. -- title: 实用 - details: 没有多余的东西,只为 Office 而生。 -- title: 强大 - details: 完整的自定义支持。 -footer: MIT Licensed | Copyright © 2016 - 2024 Yerong All Rights Reserved. ---- diff --git a/docs/zh-tw/activate/activate-steps.md b/docs/zh-tw/activate/activate-steps.md deleted file mode 100644 index 3b3806d..0000000 --- a/docs/zh-tw/activate/activate-steps.md +++ /dev/null @@ -1,27 +0,0 @@ -# 激活步骤 - -## 密钥激活(联网激活) - -在密钥管理中输入你的 Office 产品密钥并点击**安装密钥**,然后点击**激活**即可。 - -::: tip 提示 - -如果安装 Office 产品密钥时显示错误代码 [0xC004F069](/zh-tw/faq/activation.md#_0xc004f069),先安装对应产品的 Office 许可证,然后再试。 - -::: - -## 电话激活(脱机激活) - -在密钥管理中输入你的 Office 产品密钥并点击**安装密钥**,然后在**许可证列表**中点击刷新,找到想要激活的许可证,展开,并点击**复制安装 ID**。 - -使用这个 *安装 ID* 通过微软官方途径获得 *确认 ID*,然后在**密钥管理**的按钮菜单中选择**安装确认 ID**,安装你获取到的**确认 ID** 即可。 - -::: tip 提示 - -如果安装 Office 产品密钥时显示错误代码 [0xC004F069](/zh-tw/faq/activation.md#_0xc004f069),先安装对应产品的 Office 许可证,然后再试。 - -::: - -## KMS 激活(需连接 KMS 主机) - -在许可证管理中安装对应产品的批量许可证,然后在 KMS 管理中设置一个 KMS 主机,最后点击**激活**即可。 diff --git a/docs/zh-tw/commands/README.md b/docs/zh-tw/commands/README.md deleted file mode 100644 index d95e6fc..0000000 --- a/docs/zh-tw/commands/README.md +++ /dev/null @@ -1,29 +0,0 @@ -# 快捷键命令 - -- F1: 显示帮助 -- Ctrl + 1: 切换到主页 -- Ctrl + 2: 切换到部署页面 -- Ctrl + Alt + 2: 切换到部署 - 高级设置页面 -- Ctrl + 3: 切换到激活页面 -- Ctrl + 4: 切换到工具箱页面 -- Ctrl + Alt + 4: 切换到 Office 更新通道查询页面 -- Ctrl + 5: 切换到文档转换页面 -- Ctrl + 6: 切换到哈希值校验页面 -- Ctrl + 7: 切换到设置页面 -- Ctrl + 8: 切换到关于页面 -- Alt + : 返回上一页 -- Ctrl + Shift + P: 打开命令框 - -## 部署页面 - -- F5Ctrl + R: 刷新 Office 信息并重置配置 -- Ctrl + I: 从网络导入配置文件 -- Ctrl + O: 打开配置文件 -- Ctrl + S: 保存配置文件到本地 -- Ctrl + E: 查看 XML 配置代码 - -## 激活页面 - -- Ctrl + D: 刷新许可证列表 -- Ctrl + Shift + D: 刷新许可证列表并显示所有的许可证 -- Ctrl + Alt + P: 安装许可证 diff --git a/docs/zh-tw/commands/activate.md b/docs/zh-tw/commands/activate.md deleted file mode 100644 index cc0e2ff..0000000 --- a/docs/zh-tw/commands/activate.md +++ /dev/null @@ -1,26 +0,0 @@ -# 激活命令 - -这些命令可以在命令行和命令框中使用,命令不区分大小写。 - -``` batch -ospp params -``` - -例如以下是一条简单的激活命令: - -``` batch -ospp /inslicid ProPlus2021Volume /inpkey XXXXX-XXXXX-XXXXX-XXXXX-XXXXX /act -``` - -| 命令 | 说明 | 使用方法 | -| :-- | :-- | :-- | -| /clall | 清除所有已安装的 Office 许可证和产品密钥 | /clall | -| /cllicenses | 清除所有已安装的 Office 许可证 | /cllicenses | -| /clkeys | 清除所有已安装的 Office 产品密钥 | /clkeys | -| /inslicid *values* | 安装指定产品的 Office 许可证 | `/inslicid ProPlus2021Volume` 或 `/inslicid ProPlus2021Volume,VisioPro2021Volume` | -| /inpkey *value* | 安装指定的 Office 密钥 | /inpkey XXXXX-XXXXX-XXXXX-XXXXX-XXXXX | -| /unpkey *value* | 卸载指定的 Office 密钥 | /unpkey XXXXX | -| /sethst *value* | 设置 KMS 主机地址 | /sethst kms.example.com | -| /setprt *value* | 设置 KMS 主机端口,默认值: 1688 | /setprt 1688 | -| /act | 激活 Office 客户端产品 | /act | -| /dstatus | 显示 Office 激活信息(仅在命令行中可用) | /dstatus | diff --git a/docs/zh-tw/commands/build-in.md b/docs/zh-tw/commands/build-in.md deleted file mode 100644 index 2f97821..0000000 --- a/docs/zh-tw/commands/build-in.md +++ /dev/null @@ -1,72 +0,0 @@ -# 程序命令 - -命令不区分大小写。如果命令参数中含有空格,请使用 "" (英文双引号) 将其包括起来。 - -## 程序内命令 - -这些命令只能在命令框中使用。命令框可以点击按钮打开,也可以按下快捷键 Ctrl + Shift + P 打开。 - -![Command box](/images/zh-tw/command-box.png) - -| 命令 | 说明 | | -| :-- | :-- | :-- | -| /setimage *value* | 设置背景图 | *value*: 路径,支持 BMP, PNG 或 JPG。支持本地以及 HTTP 路径。 | -| /getkey *value* | 获取产品默认密钥 | *value*: 产品 ID. | -| /resetnotif | 重置通知,以便再次显示已经关闭了的通知 | | -| /loadconfig *value* | 从 Web 路径加载 XML 配置文件 | *value*: 网址 | - -## 命令行命令 - -这些命令只能够从命令行中执行。 - -| 命令 | 说明 | | -| :-- | :-- | :-- | -| /isoinstall | 读取 ISO 配置文件并启动安装程序。 | 你必须创建 Office ISO,确保 ISO 内含 ConfigForISO.xml,挂载后再执行命令 | -| /loadconfig *value* | 读取 XML 配置文件并启动安装程序。 | *value*: XML 文件路径 | -| /srcpath *value* | 覆写 XML 配置文件中的源路径属性,该命令需与 `/loadconfig` 命令一起使用 | *value*: 源路径 | -| /edition *value* | 覆写 XML 配置文件中的体系结构属性。该命令需与 `/loadconfig` 命令一起使用 | *value*: `32` 或 `64` | -| /enablehwacc *value* | 启用硬件加速 | *value*: `true` 或 `false`,默认为 `true` | - -## Office Tool Plus Console Helper - -Office Tool Plus.Console 是一个命令行程序,默认情况下,通过 Office Tool Plus 执行命令时,CMD 将会立即返回,不会等待 Office Tool Plus 退出。通过 Office Tool Plus.Console 执行命令时,CMD 将会等待程序退出,并且支持输出程序日志。 - -以下命令示例启动 Office Tool Plus 日志输出: - -``` powershell -.\"Office Tool Plus.Console" /log -``` - -::: tip 提示 - -`deploy` and `ospp` 命令默认启用日志输出,您无需额外指定 `/log` 参数。`deploy` 和 `ospp` 命令不可以和其他命令混用,否则会无法识别。 - -::: - -如果您需要使用[部署命令](deploy.md)或者[激活命令](activate.md),像这样用即可: - -``` powershell -.\"Office Tool Plus.Console" deploy /add ... -``` - -### Batch 文件 - -如果你需要使用 BAT 文件运行 "Office Tool Plus.Console",请确保你有管理员权限执行这个脚本。 - -以下是一个模板: - -``` batch -@echo off -title Office Tool Plus - Console - -:: Change the working directory to current directory. -:: Make sure you have administrator permission. -set "Apply=%*" -cd /d "%~dp0" && ( if exist "%temp%\getadmin.vbs" del "%temp%\getadmin.vbs" ) && fsutil dirty query %systemdrive% 1>nul 2>nul || ( cmd /u /c echo Set UAC = CreateObject^("Shell.Application"^) : UAC.ShellExecute "cmd.exe", "/k cd ""%~sdp0"" && ""%~s0"" %Apply%", "", "runas", 1 >> "%temp%\getadmin.vbs" && "%temp%\getadmin.vbs" && exit /B ) - -:: Run commands. -"Office Tool Plus.Console" /isoinstall -"Office Tool Plus.Console" ospp /inslicid ProPlus2021Volume /sethst kms.example.com /setprt 1688 /act -``` - -第 1-9 行的内容无需更改,您只需要按照需求更改第九行之后的文本即可。 diff --git a/docs/zh-tw/commands/deploy.md b/docs/zh-tw/commands/deploy.md deleted file mode 100644 index 144c3fb..0000000 --- a/docs/zh-tw/commands/deploy.md +++ /dev/null @@ -1,84 +0,0 @@ -# 部署命令 - -这些命令可以在命令行和命令框中使用,命令不区分大小写。如果命令参数中含有空格,请使用 "" (英文双引号) 将其包括起来。 - -``` batch -deploy params -``` - -例如以下是一条简单的部署命令: - -``` batch -deploy /add O365ProPlusRetail_zh-tw -``` - -| 命令 | 说明 | | -| :-- | :-- | :-- | -| /add *values[]* | 添加一个或多个产品 | values: productID_languages,**其中 productID 为必需参数**。使用方法见[部署示例](deploy.md#部署-office-示例) | -| /Product_ID.exclapps *values* | 为产品设置排除的应用程序 | `Product_ID` 根据 `/add` 参数中的 productID 设置。使用方法见[部署示例](deploy.md#部署-office-示例) | -| /Product_ID.mak *values* | 为产品设置 MAK | `Product_ID` 根据 `/add` 参数中的 productID 设置。使用方法见[部署示例](deploy.md#部署-office-示例) | -| /rm *values[]* | 卸载一个或多个产品 | values: productID_languages,使用方法同 `/add` | -| /rmall | 卸载全部产品 | | -| /rmmsi | 卸载全部 Office MSI 产品 | | -| /channel *value* | 设置更新通道 | *value*: 通道 ID,[更多信息](/zh-tw/deploy/settings/basic.md#更新通道) | -| /branch *value* | 根据分支名称设置更新通道,这个命令会覆盖 `/channel` 命令。 | *value*: 通道的分支名,[更多信息](/zh-tw/toolbox/office.md#查詢-office-版本編號) | -| /edition *value* | 设置体系结构 | *value*: `32` 或 `64`,默认值为 `32` | -| /migratearch | 迁移体系结构 | | -| /ver *value* | 设置 Office 版本号 | *value*: Office 版本号 | -| /srcpath *value* | 设置源路径属性 | *value*: 本地路径、SMB 路径 | -| /fallback | 在本地找不到语言包时回退到 Office CDN | *value*: `true` 或 `false`,默认值为 `true` | -| /display *value* | 设置是否显示 Office 安装界面 | *value*: `true` 显示,`false` 隐藏,默认值为 `true` | -| /acpteula | 代表用户接受最终用户许可协议 | | -| /enableupdates | 是否启用 Office 更新 | *value*: `true` 启用,`false` 禁用 | -| /updatepath | 设置 Office 更新下载路径 | *value*: 本地路径、SMB 路径 | -| /module *value* | 设置安装模块 | *value*: `0`: Office 部署工具,`1`: Office Tool Plus。默认值为 `0` | -| /dlfirst | 下载后再安装 | | -| /shortcuts | 创建桌面快捷方式 | | - -## 部署 Office 示例 - -指定多个应用程序或语言时,你需要使用「英文逗号」将其隔开,例如 `Access,Lync` 或 `zh-tw,en-us` - -如果需要添加/卸载语言包或者校对工具,请使用 `LanguagePack` 或 `ProofingTools` 作为产品 ID。 - -部署 Office 2021 专业增强版 - 批量版,繁体中文,排除 Access, Outlook, OneNote,可以这样写: - -``` batch -deploy /add ProPlus2021Volume_zh-tw /ProPlus2021Volume.exclapps Access,Outlook,OneNote /channel PerpetualVL2021 -``` - -使用本地源部署 Office 时,你需要设置 `/srcpath` 和 `/ver` 参数。如果安装 64 位的 Office,还需设置 `/edition` 参数: - -``` batch -deploy /add O365ProPlusRetail_zh-tw /O365ProPlusRetail.exclapps Access,Outlook,OneNote /edition 64 /srcpath "D:\Test\Office Tool" /ver 16.0.xxxxx.xxxxx /channel Current -``` - -若要为批量产品设置 MAK,可以这样写: - -``` batch -deploy /add ProPlus2021Volume_zh-tw /ProPlus2021Volume.exclapps Access,Outlook,OneNote /ProPlus2021Volume.MAK XXXXX-XXXXX-XXXXX-XXXXX-XXXXX /channel PerpetualVL2021 -``` - -若要添加多个产品,可以这样写: - -``` batch -deploy /add "ProPlus2021Volume_zh-tw|VisioPro2021Volume_zh-tw" /ProPlus2021Volume.exclapps Access,Outlook,OneNote,OneDrive,Groove /VisioPro2021Volume.exclapps OneDrive,Groove /channel PerpetualVL2021 -``` - -若要卸载产品,可以这样写: - -``` batch -deploy /rm ProPlus2021Volume -``` - -卸载多个产品时,可以这样写: - -``` batch -deploy /rm "ProPlus2021Volume|VisioPro2021Volume" -``` - -若要卸载语言包,可以这样写: - -``` batch -deploy /rm LanguagePack_en-us -``` diff --git a/docs/zh-tw/deploy/create-iso/README.md b/docs/zh-tw/deploy/create-iso/README.md deleted file mode 100644 index 1f9c509..0000000 --- a/docs/zh-tw/deploy/create-iso/README.md +++ /dev/null @@ -1,45 +0,0 @@ -# 前期准备 - -使用 Office Tool Plus 创建 ISO 映像文件可以将 Office Tool Plus 和 Office 安装文件一起打包。ISO 映像文件可以与他人共享,或者用于多次安装。 - -Office 会固定在每个月的第二个星期二(太平洋时间)更新一次,我们建议您在此时间后及时更新 Office Tool Plus 和 Office ISO,以确保您始终可以获得最佳的部署体验。 - -若要创建 Office ISO,您需要完成以下步骤: - -- 下载合适的 Office Tool Plus。 -- 创建 Office ISO 文件。 -- 测试 Office ISO 是否和预期的一样工作。 - -## 注意事项 - -为了确保 Office 安装文件下载完整,我们建议您勾选**设置 - 下载 - 校验文件**。 - -Office Tool Plus 默认下载适合当前操作系统的 Office 版本。若要下载适用于其他 Windows 的 Office 版本,请更改**设置 - 下载 - Windows 版本**。 - -![Download settings](/images/zh-tw/settings/download-settings.png) - -Office Tool Plus 在 ISO 模式中工作时会自动调整一些设置,您无需更改我们没有在教程中提到的设置。 - -## 获取合适的 Office Tool Plus 版本 - -我们建议您[下载](/zh-cn/start/README.md#下载)包含框架的 Office Tool Plus。不需要在客户端上安装 .NET Desktop Runtime 即可运行 Office Tool Plus。 - -如果您决定创建 64 位的 Office ISO,您可以下载 64 位版本的 Office Tool Plus。否则您应该下载 32 位的 Office Tool Plus。 - -下载完成后,请将整个压缩包解压到一个合适的位置,例如桌面。**请勿在压缩包内直接双击运行 Office Tool Plus**. - -## 创建 Office ISO - -您可以根据需要创建以下格式的 Office ISO 文件: - -1. [不含任何配置](basic.md):像正常使用一样进行配置以及部署。 -2. [包含默认配置](default-config.md):程序会自动加载配置,询问用户是否开始部署。 -3. [使用 ISO 命令](iso-command.md):程序会自动寻找配置并直接开始部署。 -4. [使用 loadConfig 命令](config-command.md):程序会根据您指定的命令创建配置并直接开始部署。 -5. [完全自定义安装](deploy-command.md):程序会根据您指定的命令创建配置并直接开始部署。 - -通常情况下,如果您需要创建 32 位和 64 位的 Office ISO,我们建议您分开创建两个文件。如果您决定创建同时包含 32 位和 64 位的 Office ISO,则我们不建议您使用第二或第三种方法创建 Office ISO,这两个方法无法自由选择 32 位或 64 位进行部署。 - -## 完成之后 - -当你完成了 Office ISO 的创建后,我们建议您在虚拟机内测试 Office ISO 是否和您预期的一样工作。 diff --git a/docs/zh-tw/deploy/create-iso/basic.md b/docs/zh-tw/deploy/create-iso/basic.md deleted file mode 100644 index 548eb18..0000000 --- a/docs/zh-tw/deploy/create-iso/basic.md +++ /dev/null @@ -1,25 +0,0 @@ -# 不含任何配置的 ISO - -转到部署页面,将**部署模式**更改为**创建 ISO 文件**。 - -如果您已经下载好了 Office 安装文件,或者已经选择好了一个本地的安装文件,直接开始部署即可。 - ---- - -如果您还没有下载 Office 安装文件,请根据以下指引操作: - -- 添加产品,按需选择。若不添加,则无法确保后续是否正确。 -- 添加语言,按需选择。若不添加或错加,则安装时需要联网。 -- 选择体系结构,如无特殊需求,保持默认即可。 -- 选择合适的通道,如无特殊需求,保持默认即可。 -- 打开**下载后再部署**,如果没有安装文件,程序会报错而无法继续。 - -确保以上几点做好后即可「开始部署」,其他高级设置可以按需更改。 - -**在下载 Office 过程中,请按下 F5 或者手动清空所有产品和语言,以确保创建的 Office ISO 不包含 ConfigForISO.xml.** - -::: tip 提示 - -如果你需要创建同时包含 32 位和 64 位的 Office ISO,请在 Office 下载时将体系结构更改为 64 位(或 32 位),然后再次点击开始部署即可。Office Tool Plus 会自动添加相应的下载任务。 - -::: diff --git a/docs/zh-tw/deploy/create-iso/config-command.md b/docs/zh-tw/deploy/create-iso/config-command.md deleted file mode 100644 index 166503f..0000000 --- a/docs/zh-tw/deploy/create-iso/config-command.md +++ /dev/null @@ -1,35 +0,0 @@ -# 使用 loadconfig 的 ISO - -创建 Office ISO 前,您需要在 Office Tool Plus 的根目录(Office Tool 文件夹)内创建批处理文件,例如 Setup.bat。 - -使用 `/loadconfig` 命令可以加载 XML 配置文件,并修改其中的参数,以便进行安装。 - -例如如果您创建了同时包含 32 位和 64 位的 Office ISO,您可以使用以下命令安装对应的版本: - -其中 `/edition 32` 指定安装 32 位的 Office ,`/edition 64` 指定安装 64 位的 Office。 - -``` batch -@echo off -title Office Tool Plus - Console - -:: For 32-bit -"Office Tool Plus.exe" /loadconfig %~dp0ConfigForISO.xml /srcpath %~dp0 /edition 32 -``` - -``` batch -@echo off -title Office Tool Plus - Console - -:: For 64-bit -"Office Tool Plus.exe" /loadconfig %~dp0ConfigForISO.xml /srcpath %~dp0 /edition 64 -``` - -::: tip 小知识 - -`%~dp0` 在批处理中代表批处理所在的文件夹路径。例如当您挂载 Office ISO 为 E 盘时,`%~dp0` 会被自动替换为 `E:\`。 - -::: - -批处理文件编写完成后保存,需要**使用英文命名,否则会无法识别**。 - -然后按照创建[包含默认配置的 ISO](default-config.md) 的步骤创建 Office ISO 即可。 diff --git a/docs/zh-tw/deploy/create-iso/default-config.md b/docs/zh-tw/deploy/create-iso/default-config.md deleted file mode 100644 index 90f1420..0000000 --- a/docs/zh-tw/deploy/create-iso/default-config.md +++ /dev/null @@ -1,23 +0,0 @@ -# 包含默认配置的 ISO - -转到部署页面,将**部署模式**更改为**创建 ISO 文件**。 - -请根据以下指引操作: - -- 添加产品,按需选择。若不添加,则无法确保后续是否正确。 -- 添加语言,按需选择。若不添加或错加,则安装时需要联网。 -- 选择体系结构,如无特殊需求,保持默认即可。 -- 选择合适的通道,如无特殊需求,保持默认即可。 -- 如果您还没有下载 Office 安装文件,请打开**下载后再部署**,否则程序会报错而无法继续。 - -确保以上几点做好后即可「开始部署」,其他高级设置可以按需更改。 - -**Office ISO 创建完成后,ISO 内应包含 ConfigForISO.xml 文件。** - -::: tip 提示 - -如果你需要创建同时包含 32 位和 64 位的 Office ISO,请在 Office 下载时将体系结构更改为 64 位(或 32 位),然后再次点击开始部署即可。Office Tool Plus 会自动添加相应的下载任务。 - -挂载 Office ISO 后,您应该能从 CD-ROM 上下文菜单中看到「立即安装」选项,或者正常启动 Office Tool Plus 然后确认安装。 - -::: diff --git a/docs/zh-tw/deploy/create-iso/deploy-command.md b/docs/zh-tw/deploy/create-iso/deploy-command.md deleted file mode 100644 index 1ef9834..0000000 --- a/docs/zh-tw/deploy/create-iso/deploy-command.md +++ /dev/null @@ -1,45 +0,0 @@ -# 完全自定义安装的 ISO - -创建 Office ISO 前,您需要在 Office Tool Plus 的根目录(Office Tool 文件夹)内创建批处理文件,例如 Setup.bat。 - -您可以使用 [deploy](/zh-tw/commands/deploy.md) 命令完全自定义您的 Office 安装。 - -例如以下示例安装简体中文 32 位的 Microsoft 365,排除 Access, Bing, Groove, Lync, OneDrive 应用程序: - -``` batch -@echo off -title Office Tool Plus - Console - -"Office Tool Plus" deploy /add O365ProPlusRetail_zh-cn /O365ProPlusRetail.exclapps Access,Bing,Groove,Lync,OneDrive /srcpath %~dp0 /edition 32 /channel Current /ver 16.0.xxxxx.xxxxx -``` - -如果您需要等待安装完成,请调用 Office Tool Plus.Console: - -``` batch -@echo off -title Office Tool Plus - Console - -:: Change the working directory to current directory. -:: Make sure you have administrator permission. -set "Apply=%*" -cd /d "%~dp0" && ( if exist "%temp%\getadmin.vbs" del "%temp%\getadmin.vbs" ) && fsutil dirty query %systemdrive% 1>nul 2>nul || ( cmd /u /c echo Set UAC = CreateObject^("Shell.Application"^) : UAC.ShellExecute "cmd.exe", "/k cd ""%~sdp0"" && ""%~s0"" %Apply%", "", "runas", 1 >> "%temp%\getadmin.vbs" && "%temp%\getadmin.vbs" && exit /B ) - -:: Run commands. -"Office Tool Plus.Console" deploy /add O365ProPlusRetail_zh-cn /O365ProPlusRetail.exclapps Access,Bing,Groove,Lync,OneDrive /srcpath %~dp0 /edition 32 /channel Current /ver 16.0.xxxxx.xxxxx -``` - -::: warning 注意 - -请根据实际情况将 `/channel`, `/ver` 和 `/edition` 参数替换为实际值,否则安装会失败。 - -::: - -::: tip 小知识 - -`%~dp0` 在批处理中代表批处理所在的文件夹路径。例如当您挂载 Office ISO 为 E 盘时,`%~dp0` 会被自动替换为 `E:\`。 - -::: - -批处理文件编写完成后保存,需要**使用英文命名,否则会无法识别**。 - -然后按照创建[不含任何配置的 ISO](basic.md) 的步骤创建 Office ISO 即可。 diff --git a/docs/zh-tw/deploy/create-iso/iso-command.md b/docs/zh-tw/deploy/create-iso/iso-command.md deleted file mode 100644 index 928ae01..0000000 --- a/docs/zh-tw/deploy/create-iso/iso-command.md +++ /dev/null @@ -1,35 +0,0 @@ -# 使用 ISO 命令的 ISO - -创建 Office ISO 前,您需要在 Office Tool Plus 的根目录(Office Tool 文件夹)内创建批处理文件,例如 Setup.bat。 - -以下是 Setup.bat 的一些示例。 - ---- - -启动 Office Tool Plus,不等待执行完毕: - -``` batch -@echo off -title Office Tool Plus - Console - -"Office Tool Plus.exe" /isoinstall -```` - -启动 Office Tool Plus,等待执行完毕: - -``` batch -@echo off -title Office Tool Plus - Console - -:: Change the working directory to current directory. -:: Make sure you have administrator permission. -set "Apply=%*" -cd /d "%~dp0" && ( if exist "%temp%\getadmin.vbs" del "%temp%\getadmin.vbs" ) && fsutil dirty query %systemdrive% 1>nul 2>nul || ( cmd /u /c echo Set UAC = CreateObject^("Shell.Application"^) : UAC.ShellExecute "cmd.exe", "/k cd ""%~sdp0"" && ""%~s0"" %Apply%", "", "runas", 1 >> "%temp%\getadmin.vbs" && "%temp%\getadmin.vbs" && exit /B ) - -:: Run commands. -"Office Tool Plus.Console" /isoinstall -``` - -批处理文件编写完成后保存,需要**使用英文命名,否则会无法识别**。 - -然后按照创建[包含默认配置的 ISO](default-config.md) 的步骤创建 Office ISO 即可。 diff --git a/docs/zh-tw/deploy/modify.md b/docs/zh-tw/deploy/modify.md deleted file mode 100644 index 423a743..0000000 --- a/docs/zh-tw/deploy/modify.md +++ /dev/null @@ -1,35 +0,0 @@ -# 修改安装 - -## 更改产品或语言 - -添加你想添加的产品或者语言,点击**卸载**将不需要的产品或语言标记为即将卸载。 - -如果没有问题,请点击**开始部署**以确认操作。 - -## 更改应用程序 - -![Modify Applications](/images/zh-tw/deploy/modify-applications.png) - -若要新增一个应用程序,请将其选中;若要卸载一个应用程序,请将其取消选中。 - -其他不需要更改的应用程序保持原来的设置即可。如果没有问题,请点击**开始部署**以确认操作。 - -如果应用程序中没有你想要的程序,比如 Access,那么新增一个产品,选择 Access 即可。 - -## 升级现有的 Office - -![Upgrade Office](/images/zh-tw/deploy/upgrade-product.png) - -在另外的 PC 上下载 Office 安装文件,创建 Office ISO 或者将其拷贝到客户端计算机中。确保[安装文件](/zh-tw/deploy/settings/basic.md#安装文件)已正确加载数据,如果没有,请手动选择文件进行加载。然后在部署页面添加一个与当前已安装的 Office 一摸一样的产品即可开始部署。 - -## 迁移体系结构 - -Office Tool Plus 支持将 Office 从 32 位更改为 64 位(反之亦可),自动化操作,无需过多的人工干预。 - -首先将体系结构更改为自己想要的,如果你想迁移到 64 位的 Office。那么现在就选择 64 位。 - -![Migrate Office](/images/zh-tw/deploy/migrate-office.png) - -之后将 **高级设置 - 升级选项 - 迁移体系结构** 勾选,然后**开始部署**即可。 - -Office 安装程序会首先将你的 Office 卸载,然后安装新的 Office. diff --git a/docs/zh-tw/deploy/settings/advanced.md b/docs/zh-tw/deploy/settings/advanced.md deleted file mode 100644 index 36218e2..0000000 --- a/docs/zh-tw/deploy/settings/advanced.md +++ /dev/null @@ -1,41 +0,0 @@ -# 高级设置 - -::: warning 警告 - -不要随意更改你看不懂的设置,否则极有可能导致您的 Office 部署失败。 - -::: - -## 常规设置 - -你可以给这个配置文件添加一个说明,用于记录或者备注。Office Tool Plus 支持显示 markdown 格式的文本,并且这些内容会在开始部署之前展示给用户看。 - -## 安装设置 - -### Office 版本 - -如果你需要安装 Office 的历史版本,你可以从下拉框中选择可用的历史版本,也可以从 [Microsoft 文档](https://docs.microsoft.com/zh-tw/officeupdates/update-history-microsoft365-apps-by-date)获取可用的 Office 历史版本。如果下拉框中没有显示可用的历史版本,可能是你的网络连接失败,也可能是你所选择的更新通道没有可用的历史版本。 - -如果你下载了 Office 安装包,则此处会显示相应通道下所有 Office 安装包的版本。 - -### 源路径 - -如果你在本地有 Office 安装包,则应该在[安装文件管理](/zh-cn/deploy/settings/basic.md#安装文件)中选择文件,而不是在此处写入路径。 - -## 激活设置 - -此处的激活设置仅供企业管理员进行批量部署时使用,个人用户不应更改此处设置,否则极有可能导致 Office 无法激活。 - -## 应用程序首选项 - -> 应用程序首选项由微软提供数据,其文本均为机器翻译,可能存在某些语法错误,请以英文版本的为准。 - -应用程序首选项使你可以在部署 Office 前进行 Office 的设置,包括 VBA 宏通知、默认文件位置和默认文件格式。 - -除此之外,你还可以将应用程序首选项应用到现有的 Office 中。 - -您所定义的应用程序首选项将应用于设备的所有现有用户以及未来添加到该设备的任何新用户。如果在 Office 应用程序运行时应用首选项,则新的设置将在 Office 下次运行时生效。 - -## 其他选项 - -其他选项介绍以及用法在[微软官方文档](https://docs.microsoft.com/zh-tw/deployoffice/office-deployment-tool-configuration-options)中有详细介绍,使用方法相同,在这里不再重复叙述。 diff --git a/docs/zh-tw/deploy/settings/basic.md b/docs/zh-tw/deploy/settings/basic.md deleted file mode 100644 index 0e9cdc1..0000000 --- a/docs/zh-tw/deploy/settings/basic.md +++ /dev/null @@ -1,181 +0,0 @@ -# 基础设置 - -## 部署模式 - -| 模式 | 说明 | -| :-- | :-- | -| 编辑配置 | 仅用于生成/修改 XML 配置文件,不能进行部署 | -| 下载 | 仅下载 Office 安装包,不会也不能启动安装程序 | -| 安装 | 可以在计算机上进行安装、卸载、修改 Office 等操作 | -| 创建 ISO 文件 | 将 Office 安装包与 Office Tool Plus 一起打包 | - -Office 安装包包含 Office、Visio 和 Project,由微软提供,无法精简。 - -## 体系结构 - -32 位的 Office 是默认的选择。运行 64 位 Windows 的计算机通常比 32 位版本拥有更多资源,例如处理能力和内存。此外,与 32 位应用程序相比,64 位应用程序可以访问更多内存。因此,如果你的方案包含大型文件和/或处理大型数据集,且你的计算机运行 64 位版 Windows,则存在下列情况时,64 位是恰当的选择: - -- 处理大型数据集,例如包含复杂计算、许多数据透视表、与外部数据库的数据连接、Power Pivot、三维地图、Power View 或获取和转换的企业级 Excel 工作簿。 在这些情况下,64 位版 Office 可能表现更出色。 -- 在 PowerPoint 中处理超大图片、视频或动画。 64 位版 Office 可能更适合处理这些复杂幻灯片。 -- 在 Project 中处理超过 2 GB 的文件,尤其是项目包含许多子项目时。 -- 开发内部 Office 解决方案,例如加载项或文档级别的自定义。 使用 64 位版 Office 将允许你提供这些解决方案的 64 位版和 32 位版。 -- Access 中的 Long Long 数据类型,虽然 32 位 Access 支持此数据类型,但在使用 32 位 VBA 库的代码或表达式时可能会看到意外结果。 64 位 VBA 提供 Long Long 数据类型的完整支持。 - -如果需要了解详细信息,请参阅[選擇 64 位元或 32 位元版的 Office](https://support.microsoft.com/zh-tw/office/選擇-64-位元或-32-位元版的-office-2dee7807-8f95-4d0c-b5fe-6c6f49b8d261) - -::: tip 提示 - -如果您使用的是基于 ARM64 的 Windows,您可以选择 ARM64 (兼容 64 位) 以获得更好的性能和兼容性。 - -::: - -## 更新通道 - -大多数情况下,只需要选择**当前通道**即可,下表列出了通道之间的区别: - -| 通道 | 通道 ID | 发布频率 | 功能更新 | -| --------------------- | ----------------- | ----------------- | ----------- | -| 当前通道 | Current | 每个月至少一次 | 同发布频率 | -| 半年度企业通道 | SemiAnnual | 每月的第二个星期二 | 一月和七月 | -| 月度企业通道 | MonthlyEnterprise | 每月的第二个星期二 | 同发布频率 | -| Office 2019 企业长期版 | PerpetualVL2019 | 每月的第二个星期二 | 无 | -| Office 2021 企业长期版 | PerpetualVL2021 | 每月的第二个星期二 | 无 | - -> 企业长期版通道是 Office 2019/2021 批量产品的专用通道。 - -表中列出的所有通道都是稳定通道,非测试通道,因此都可以日常使用。 - -每个通道都会在每个月的第二个星期二发布安全更新(如果需要),这是设定好的计划。 - -如果需要了解详细信息,请参阅 [Microsoft 365 应用版的更新通道概述](https://docs.microsoft.com/zh-tw/deployoffice/overview-update-channels)。 - -## 安装模块 - -### Office 部署工具 - -Office 部署工具是微软官方工具,提供了部署 Office 的完整支持,适合所有人使用。 - -### Office Tool Plus - -此模块是我们自行开发的安装模块,可以实现 Office 部署工具的大多数功能。下表列出了两者的区别: - -| 功能 | Office 部署工具 | Office Tool Plus | -| :-- | --- | --- | -| 移除现有的 MSI 版本的 Office | ✓ | × | -| 安装与 MSI 版本相同的语言 | ✓ | × | -| 使用 Office 内部通道 | × | ✓ | -| 安装内部产品 | × | ✓ | - -我们建议优先使用 Office 部署工具,如果 Office 部署工具出现了无法解决的问题,或者有特殊需求,才应该选择 Office Tool Plus 作为安装模块。 - -## 产品 - -购买了 Microsoft 365 的用户,添加产品的时候选择 Microsoft 365 产品即可,具体视你所拥有的授权而选择家庭版、个人版或企业版。 - -购买了 Office 2019/2021 的用户,按照自己购买的版本选择即可,例如家庭和学生版,或者专业增强版。 - -如果需要使用 KMS 或 MAK 激活,请安装批量许可证产品,例如 Office 2019 批量许可证或 Office 2021 批量许可证。 - -> 不确定自己是否拥有 Office 授权?登录你的[个人账户](https://account.microsoft.com/services/)或者[企业账户](https://portal.office.com/account/?ref=MeControl#subscriptions)进行验证。 - -::: details Office 365 产品对照表 - -| 订阅计划 | 产品 ID | -| ------------- |:-------------:| -| 适用于企业的 Microsoft 365 应用 | O365ProPlusRetail | -| Office 365 企业版 E3 | O365ProPlusRetail | -| Office 365 企业版 E4 | O365ProPlusRetail | -| Office 365 企业版 E5 | O365ProPlusRetail | -| Office 365 中型企业版 | O365ProPlusRetail | -| Microsoft 365 应用商业版 | O365BusinessRetail | -| Microsoft 365 商业标准版 | O365BusinessRetail | -| Office 小型企业高级版 | O365SmallBusPremRetail | -| Microsoft 365 E3 | O365ProPlusRetail | -| Microsoft 365 E5 | O365ProPlusRetail | -| Microsoft 365 商业高级版 | O365BusinessRetail | - -::: - -::: tip 提示 - -添加产品时,您可以按住 Ctrl 以同时选择多个产品。您可以在筛选框中键入您所需要的产品名称或产品 ID 进行筛选,也可以在筛选框中键入 `|` 以进行多条件筛选。例如键入 `365|VisioPro` 以筛选 Microsoft 365 产品和 Visio 专业版产品。 - -::: - -### 应用程序 - -应用程序会随你选择的产品不同而显示不同的内容。 - -::: tip 建议 - -我们建议您选择您能理解的应用程序,例如 Word,PowerPoint 和 Excel。 - -::: - -- `Groove` 代表的是 **OneDrive for Business**。 -- `Lync` 代表的是 **Skype for Business**。 - -某些应用程序可能需要重启才能完成安装,例如 *Teams* 和 *OneDrive*。 - -Bing 是一个用于 Chrome 和 Edge 的浏览器插件。若要了解更多信息请访问 [Microsoft 必应搜索和 Microsoft 365 企业应用版](https://docs.microsoft.com/zh-cn/deployoffice/microsoft-search-bing)。 - -### 附加组件 - -附加组件会随你选择的产品不同而显示不同的内容。 - -::: warning 警告 - -如果你不能理解附加组件是什么,**请不要取消**勾选它们,取消选择某些附加组件可能导致 Office 功能不完整。 - -::: - -- `DCF` 代表的是 **Database Compare** 和 **Spreadsheet Compare**。 -- `OSM` 代表的是 **Telemetry Dashboard**。 -- `OSMUX` 代表的是 **Office 遥测日志**。 - -了解有关 [PowerPivot](https://support.microsoft.com/zh-cn/office/powerpivot-%E6%A6%82%E8%BF%B0%E5%92%8C%E5%AD%A6%E4%B9%A0-f9001958-7901-4caa-ad80-028a6d2432ed) 的更多信息。 - -了解有关 [Power View](https://support.microsoft.com/zh-cn/office/power-view-%E6%A6%82%E8%BF%B0%E5%92%8C%E5%AD%A6%E4%B9%A0-5380e429-3ee0-4be2-97b7-64d7930020b6) 的更多信息。 - -有关更多产品、应用程序和附加组件的信息,您可以访问 [Office Products Information](https://www.coolhub.top/tech-articles/products.html)。 - -## 语言 - -可以添加一个语言,也可以添加多个语言,列表中的首个完整类型的语言决定了 Shell UI 区域性,包括快捷方式、右键单击关联菜单和工具提示。如果决定要在初始安装后更改 Shell UI 语言,必须重新安装 Office。 - -如果你没有添加语言,安装 Office 时将会自动匹配系统语言,如果系统语言无法匹配,则回退到 *高级设置 - 安装设置 - 备用语言* 所指定的语言。 - -如果你选择了“部署为校对工具”,则该语言将会被安装为校对工具,不包含 Office 显示语言。 - -::: tip 提示 - -添加语言时,您可以按住 Ctrl 以同时选择多个语言。您可以在筛选框中键入您所需要的语言名称或语言 ID 进行筛选,也可以在筛选框中键入 `|` 以进行多条件筛选。例如键入 `en-us|zh` 以筛选 English (United States) 和中文语言包。 - -::: - -### 语言类型区别 - -| 语言类型       | 说明 | -| :------------------ | :--- | -| 完整         | 包含显示语言和校对工具 | -| 部分         | 包含部分 Office 应用程序的显示语言,包含校对工具 | -| 部分但不包含校对工具 | 包含部分 Office 应用程序的显示语言,但不包含校对工具 | -| 校对工具       | 仅包含拼写检查器 | - -## 安装文件 - -默认情况下,当你从 Office Tool Plus 下载 Office 安装包后,Office Tool Plus 会自动识别 Office 安装包信息并显示在此处。 - -![Office installation](/images/zh-tw/deploy/office-installation.png) - -::: tip 提示 - -Office 安装文件应该能够完整展示版本号和语言包信息,并且没有错误消息。如果安装文件不包含语言,或者仅包含校对工具,则安装的时候依然需要联网,否则会安装失败。 - -::: - -如果你有本地安装包,你可以点击**选择文件**,然后指定 Office 安装文件中的任意一个 CAB 文件。 - -Office ISO 镜像应先挂载或者解压后,再选择其中内含的 CAB 文件。 - -如果安装包显示错误,则不应该继续部署 Office,检查问题所在,解决问题后再继续部署操作。 diff --git a/docs/zh-tw/faq/README.md b/docs/zh-tw/faq/README.md deleted file mode 100644 index 70bd781..0000000 --- a/docs/zh-tw/faq/README.md +++ /dev/null @@ -1,7 +0,0 @@ -# 关于 FAQ - -在这里,你可以找到一些关于 Office Tool Plus 或者 Office 的问题解答或解决方案。 - -某些情况下,你可能需要重装 Windows 以解决某些问题。 - -如果你在这里没有找到自己想要的答案,你可以在 [GitHub](https://github.com/YerongAI/Office-Tool/issues) 上进行提问。 diff --git a/docs/zh-tw/faq/deploy.md b/docs/zh-tw/faq/deploy.md deleted file mode 100644 index ef59a9f..0000000 --- a/docs/zh-tw/faq/deploy.md +++ /dev/null @@ -1,44 +0,0 @@ -# 部署问题 - -## Windows 支持终止和 Microsoft 365 应用 - -Microsoft 365 应用可能无法在老旧的系统上安装或运行。微软强烈建议您迁移到受支持的操作系统以便获得更好的使用体验。 - -如果你仍然想在你的 PC 上安装 Microsoft 365 应用,请使用**当前通道**作为部署时的通道。如果你在安装 Microsoft 365 应用时收到操作系统不受支持的提示,你可以尝试将安装模块从 `Office 部署工具`更改为 `Office Tool Plus` 以跳过操作系统兼容性检查。 - -获取更多信息请访问: - -- [Windows 7 支持终止和 Microsoft 365 应用](https://docs.microsoft.com/zh-tw/deployoffice/endofsupport/windows-7-support). -- [Windows 8 支持终止和 Microsoft 365 应用](https://docs.microsoft.com/zh-tw/deployoffice/endofsupport/windows-8-support). -- [Windows 8.1 支持终止和 Microsoft 365 应用](https://docs.microsoft.com/zh-tw/deployoffice/endofsupport/windows-81-support). -- [Windows Server 支持终止和 Microsoft 365 应用](https://docs.microsoft.com/zh-tw/deployoffice/endofsupport/windows-server-support). - -::: warning 注意 - -即使你更改安装模块,你也无法在 Windows 7 中安装高版本的 Office。 - -::: - -## 如何将 Office 安装到其他位置 - -微软不允许将 Office 安装到其他位置,我们也不建议您强制更改其安装位置。 - -## The path is null or empty, please check your system variables - -要修复这个错误,请在工具箱页面[重置系统变量](/zh-tw/toolbox/windows.md#重置系统变量). - -## Office 安装进度卡住不动 - -如果安装进度卡在 0-49% 之间,则表示 Office 安装程序无法获取所需文件。 - -- 如果是在线安装,请检查网络状况是否良好,或者尝试换个网络。 -- 尝试使用[下载后再部署](/zh-tw/deploy/README.md#下载后再部署),这能够最大程度避免因网络而出现问题。 -- 尝试[校验 Office 安装文件](/zh-tw/deploy/settings/basic.md#安装文件),有时候是文件出现了问题。 - -如果安装进度卡在 50-100% 之间,则表示 Office 安装过程中出现了错误。 - -- 如果安装程序允许你忽略这个错误,那你可以选择忽略,但 VBA 或者某些功能可能不可用。 -- 尝试退出所有第三方软件,某些第三方软件可能会错误阻止安装程序的运行。 -- 尝试[移除 Office](/zh-tw/toolbox/office.md#移除-office),然后重新安装。 - -如果以上步骤不起作用,您可能需要重新安装 Windows。 diff --git a/docs/zh-tw/settings/README.md b/docs/zh-tw/settings/README.md deleted file mode 100644 index ff598b8..0000000 --- a/docs/zh-tw/settings/README.md +++ /dev/null @@ -1,108 +0,0 @@ -# 程序设置 - -在设置页面,你可以调整程序的语言、主题、背景等设置,还可以调整一些下载或者部署设置。 - -如果系统语言无法匹配,则默认使用英语(美国)作为显示语言。 - -::: tip 提示 - -若要保存更改,请打开**保存设置**按钮,否则所有设置将在重启程序后丢失。 - -::: - -## 外观和行为 - -### 主题 - -默认情况下,Office Tool Plus 会跟随 Windows 设置自动切换浅色主题(Light Blue)和深色主题(Dark White)。你也可以根据自己的喜好设置一个特定的主题。 - -### 背景 - -默认情况下,Office Tool Plus 会根据系统环境自动选择合适的背景。Windows 11 中会选择云母效果作为背景,其他系统则是必应壁纸。如果程序检测到远程桌面会话,将会关闭所有的背景效果。你可以根据自己的喜好调整为其他背景,或使用本地图片作为程序背景,支持 PNG, JPG 和 BMP。 - -如果你需要设置网络图片为背景图,请使用 [/setimage](/zh-cn/commands/build-in.md#程序内命令) 命令。 - -::: warning 注意 - -云母效果仅在 Windows 11 中可用。使用亚克力、模糊或云母效果时,标题栏会自动变更为 Windows 11 样式。 - -在 Windows 10 中使用亚克力效果时,拖动窗口可能会有延迟。 - -::: - -## 高级 - -### 硬件加速 - -使用硬件加速能够为程序带来更好的性能和动画效果。关闭硬件加速可能会极大降低应用程序性能,因此我们非常不建议关闭硬件加速。 - -但如果您在使用 Office Tool Plus 的过程中遇到了窗口变全透明、加载图片时内存溢出等问题,你可以通过关闭硬件加速来缓解这些问题。 - -你也可以通过使用[命令行](/zh-cn/commands/build-in.md#命令行命令)的方式临时关闭硬件加速。 - -## 部署 - -### Office 语言显示格式 - -默认情况下,Office Tool Plus 显示 Office 语言为本地格式,例如英语显示为 English (United States). - -- 本地名称:显示语言的本地名称,例如英语是 English,德语是:Deutsch -- 英文名称:显示语言的英文名称,例如中文是 Chinese,德语是:German -- 本地化名称:按照系统语言设置显示,例如你的系统语言是中文,那么所有的语言都显示为中文。 - -本地名称、英文名称以及本地化名称由 Windows 提供数据,不同版本的 Windows 显示结果可能不同。 - -### 显示内部产品和通道 - -默认情况下,Office Tool Plus 不会显示非公开的产品和更新通道,例如 `ProPlusVolume` 或 `MondoVolume` 等产品,又或者 `Dofgood::DevMain` 等更新通道。 - -内部产品和更新通道不受 Office 部署工具的支持,因此您无法直接使用。但如果您需要,您可以打开此开关,Office Tool Plus 将会显示这些内部产品和更新通道。 - -::: danger 警告 - -如果您不了解内部产品和更新通道,**请勿使用**它们。 - -::: - -## 下载 - -### 校验文件 - -当您打开此开关后,Office Tool Plus 将会在下载 Office 安装文件后对文件进行校验,校验可以检查出版本不匹配,文件损坏等问题。 - -如果在文件损坏的情况下继续部署 Office,可能会遇到安装进度卡住不动的问题,因此我们强烈建议您在部署之前校验 Office 安装文件是否存在问题。 - -::: warning 注意 - -Office 安装文件校验功能对在线部署时不起作用,仅可用于下载模式或在**下载后再部署**已启用的情况下。 - -::: - -### 使用 HTTPS 连接 - -默认情况下,Office Tool Plus 使用 HTTP 请求下载 Office 安装文件。 - -如果您下载 Office 安装文件时进度缓慢或者出现了意料之外的错误,您可以尝试打开此开关,然后重试下载。 - -### 引擎 - -下载引擎之间的区别: - -| 引擎 | x86 | x64 & ARM64 | 显示进度 | 代理 | 暂停 & 继续 | 取消 | -| :--------------------- | :-- | :-- | :-- | :-- | :-- | :-- | -| Thunder | ✓ | × | ✓ | ✓ | ✓ | ✓ | -| bezzad.Downloader | ✓ | ✓ | ✓ | × | ✓ | ✓ | -| Office Tool Plus | ✓ | ✓ | ✓ | × | × | ✓ | -| Office 部署工具 | ✓ | ✓ | × | × | × | × | - -下载引擎默认为 *bezzad.Downloader*。 - -::: warning 警告 - -使用 *bezzad.Downloader* 作为下载引擎时,如果储存 Office 安装文件的目标硬盘是机械硬盘 (HDD),则不建议设置过高的**分块**数量,过多的**分块**同时下载会导致文件写入速度下降。 - -::: - -### Windows 版本 - -默认情况下,Office Tool Plus 自动识别当前系统版本并下载对应的 Office 版本。若要为其他系统下载 Office 安装文件,请在此处更改为对应的 Windows 版本。 diff --git a/docs/zh-tw/start/requirement.md b/docs/zh-tw/start/requirement.md deleted file mode 100644 index aa5201e..0000000 --- a/docs/zh-tw/start/requirement.md +++ /dev/null @@ -1,21 +0,0 @@ -# 系统要求 - -## 操作系统 - -- Windows 10 或者更高。 -- Windows Server 2016 或者更高。 -- 体系结构:x86, x64 或 ARM64。 - -> Office Tool Plus 不支持其它操作系统,例如 macOS 或者 Linux。 - -## 硬件要求 - -屏幕分辨率: 1024 x 768 或者更高。 - -## 运行时环境 - -- [.NET 8.0 Desktop Runtime x86](https://aka.ms/dotnet/8.0/windowsdesktop-runtime-win-x86.exe). -- [.NET 8.0 Desktop Runtime x64](https://aka.ms/dotnet/8.0/windowsdesktop-runtime-win-x64.exe). -- [.NET 8.0 Desktop Runtime ARM64](https://aka.ms/dotnet/8.0/windowsdesktop-runtime-win-arm64.exe). - -你可以下载包含框架的 Office Tool Plus,这样即可在不安装 .NET Runtime 的情况下运行 Office Tool Plus。 diff --git a/docs/zh-tw/toolbox/README.md b/docs/zh-tw/toolbox/README.md deleted file mode 100644 index 559fc75..0000000 --- a/docs/zh-tw/toolbox/README.md +++ /dev/null @@ -1,15 +0,0 @@ -# 常规工具 - -## 查询错误代码描述 - -通常情况下,一些程序或脚本会在执行时出错,然后给出一个错误代码,错误代码通常以 0x 开头(十六进制),也可以是普通数字,例如 2(十进制)。 - -你可以将错误代码放到这里进行查询,Office Tool Plus 会直接告诉你这个错误代码的含义。有时候也有可能会弹出来一个 Windows 激活的错误框,不要担心,你只需要点击**查看详细信息**就能看到你所查询的错误代码的含义了。 - -## 测试 KMS 主机可用性 - -默认情况下,Office Tool Plus 使用 TCP 连接测试 KMS 主机是否可以连通,不能检测 KMS 主机是否正常工作。 - -如果 Office Tool Plus 检测到 vlmcs 组件,则会使用 vlmcs 进行更详细的检测,包括延迟以及激活结果。 - -[点击此处](https://download.coolhub.top/Extensions/Components/)获取 vlmcs 组件 diff --git a/docs/zh-tw/toolbox/office.md b/docs/zh-tw/toolbox/office.md deleted file mode 100644 index 1aacba5..0000000 --- a/docs/zh-tw/toolbox/office.md +++ /dev/null @@ -1,79 +0,0 @@ -# Office 工具 - -## 查询 Office 版本信息 - -此功能可以从微软服务器获取 Office 更新通道的版本信息,包括通道名、分支、版本号和创建时间。 - -![查询 Office 更新通道](/images/zh-tw/toolbox/query-office-update-channel.png) - -若要显示内部通道,请打开[显示内部产品和通道](/zh-tw/settings/README.md#显示内部产品和通道)。 - -## 移除 Office - -此功能支持移除所有版本的 Office. - -如果移除 Office 出现了某些文件无法访问的问题,你可以多试几次,也可以手动找到文件删除。 - -当你启用**同时移除 Microsoft Store 版本的 Office** 时,程序会执行如下 PowerShell 命令以删除微软商店版本的 Office: - -``` powershell -Get-AppxPackage -name "Microsoft.Office.Desktop" | Remove-AppxPackage -``` - -当你启用**同时清除激活信息**时,Office Tool Plus 会同时卸载所有 Office 许可证和产品密钥。 - -获取详细信息请访问[从 PC 卸载 Office](https://support.microsoft.com/zh-tw/office/从-pc-卸载-office-9dd49b83-264a-477a-8fcc-2fdf5dbf61d8) - -## 更改 Office 更新通道 - -此功能可以更改 Office 更新通道,从而实现不重装进行 Office 的升级/降级。 - -::: warning 注意 - -Office 企业版长期通道被锁定,一般情况下无法更改,也无法从别的通道更改到此通道。 - -::: - -## 更改 Office 产品属于者 - -Office 产品属于者指的是许可证的属于者,例如下图中的 *Yerong™ | NekoNeko*: - -![Product owner](/images/zh-tw/product-owner.png) - -直接设置新的名称时,Office Tool Plus 会尝试更改所有 vNext 许可证和 Office 传统许可证的名称。如果您需要单独更改某个许可证的名称,请按照以下方法进行。 - -::: warning 注意 - -Office Tool Plus 无法识别您自行安装的 Office 传统许可证,因此您需要为安装的许可证单独设置名称。 - -::: - -### 更改 vNext 许可证的属于者 - -第一步,获取 vNext 许可证的用户 ID。如下图所示,转到激活页面,在 Office 许可证列表中找到你想更改的许可证,然后点击**复制用户 ID** 按钮。 - -![Copy user ID](/images/zh-tw/activation/check-vNext-license.png) - -第二步,回到工具箱,在**更改 Office 产品属于者**中按照以下格式输入 `[User ID]:[Name]` - -User ID 为刚才复制的用户 ID,Name 是你想设置的名字,例如:`bbbbxxx:小明` - -![Change product owner](/images/zh-tw/toolbox/change-license-owner.png) - -填写完成后,点击**设置名称**按钮,重启你的 Office 应用程序即可看到新的名称。 - -### 更改 Office 传统许可证的属于者 - -在部署页面查看您已安装的产品的 ID,例如 `ProPlus2021Volume` 或 `VisioPro2021Volume`。 - -然后回到工具箱,在**更改 Office 产品属于者**中按照以下格式输入 `[Product ID]:[Name]` - -Product ID 为产品 ID,Name 是你想设置的名字,例如:`ProPlus2021Volume:小明` - -填写完成后,点击**设置名称**按钮,重启你的 Office 应用程序即可看到新的名称。 - -::: warning 注意 - -如果您自行安装了其他 Office 许可证并激活,请在上文中输入您安装的许可证的 ID,而不是已安装的产品的 ID。 - -::: diff --git a/docs/zh-tw/toolbox/windows.md b/docs/zh-tw/toolbox/windows.md deleted file mode 100644 index 298d4ff..0000000 --- a/docs/zh-tw/toolbox/windows.md +++ /dev/null @@ -1,73 +0,0 @@ -# Windows 工具 - -## 重置 Software Protection 服务 - -此功能会删除注册表中和 Software Protection 相关的一些 KMS 信息,例如 KMS 主机地址或一些续期策略。除此之外,如果 Office Tool Plus 检测到您的 Software Protection 服务被 `SppExtComObjHook.dll` 劫持,程序还会尝试解除劫持并删除 `SppExtComObjHook.dll` 文件。 - -重置完成后,您可能需要重新设置 KMS 主机信息并重新激活 Office。 - -::: details 适用情况 - -激活 Office 时出现以下错误代码: - -- 0x8007000D:数据无效 -- 0x8007007B:文件名、目录名或卷标语法不正确 - -::: - -## 重建 Windows 激活令牌 - -此功能会尝试删除 `%SystemRoot%\System32\spp\store\2.0`(Windows Insider 为 `%SystemRoot%\System32\spp\store_test\2.0`)文件夹下的 `data.dat`, `tokens.dat` 和 `cache.dat`。 - -删除后,Windows 将会尝试重建这些文件,您的 Windows 激活状态可能会丢失(如果激活已绑定主板或微软账户则无需担心此问题),Office 也需要重新安装许可证并重新激活。 - -重建 Windows 激活令牌后,请稍等几分钟,然后再继续激活操作。 - -::: warning 注意 - -**除非明确要求,否则请勿随意使用此功能。** - -::: - -::: details 适用情况 - -激活 Office 时出现以下错误代码: - -- 0xC004E015:许可证使用失败 -- 0x8004E108:令牌存储中的令牌包含无效的哈希 - -::: - -## 重置系统变量 - -此功能会重置一些系统变量,例如 `%ProgramFiles%`, `%CommonProgramFiles%` 等系统变量。某些系统变量丢失时会导致 Office 安装程序或 Click to Run 服务无法正常工作。 - -::: warning 注意 - -**除非明确要求,否则请勿随意使用此功能。** - -::: - -::: details 适用情况 - -- 使用 Office Tool Plus 安装或移除 Office 时出现错误提示:*The path is null or empty* - -::: - -## 修复 WMI 组件 - -此功能会重新注册所有 WMI 组件。 - -::: warning 注意 - -**除非明确要求,否则请勿随意使用此功能。** - -::: - -::: details 适用情况 - -- 安装 Office 许可证时出现以下问题: - - 无效类 - - 0x80070057:参数错误 - -::: diff --git a/package-lock.json b/package-lock.json index a106767..10b54d0 100644 --- a/package-lock.json +++ b/package-lock.json @@ -1,27 +1,381 @@ { "name": "Office-Tool-docs", - "version": "2.0.0", "lockfileVersion": 3, "requires": true, "packages": { "": { - "name": "Office-Tool-docs", - "version": "2.0.0", - "license": "MIT", "devDependencies": { - "@vuepress/bundler-vite": "^2.0.0-rc.14", - "@vuepress/plugin-google-analytics": "^2.0.0-rc.37", - "@vuepress/plugin-search": "^2.0.0-rc.37", - "@vuepress/theme-default": "^2.0.0-rc.37", - "vuepress": "^2.0.0-rc.14" + "vitepress": "^1.3.4" } }, - "node_modules/@babel/parser": { + "node_modules/@algolia/autocomplete-core": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/@algolia/autocomplete-core/-/autocomplete-core-1.9.3.tgz", + "integrity": "sha512-009HdfugtGCdC4JdXUbVJClA0q0zh24yyePn+KUGk3rP7j8FEe/m5Yo/z65gn6nP/cM39PxpzqKrL7A6fP6PPw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@algolia/autocomplete-plugin-algolia-insights": "1.9.3", + "@algolia/autocomplete-shared": "1.9.3" + } + }, + "node_modules/@algolia/autocomplete-plugin-algolia-insights": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/@algolia/autocomplete-plugin-algolia-insights/-/autocomplete-plugin-algolia-insights-1.9.3.tgz", + "integrity": "sha512-a/yTUkcO/Vyy+JffmAnTWbr4/90cLzw+CC3bRbhnULr/EM0fGNvM13oQQ14f2moLMcVDyAx/leczLlAOovhSZg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@algolia/autocomplete-shared": "1.9.3" + }, + "peerDependencies": { + "search-insights": ">= 1 < 3" + } + }, + "node_modules/@algolia/autocomplete-preset-algolia": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/@algolia/autocomplete-preset-algolia/-/autocomplete-preset-algolia-1.9.3.tgz", + "integrity": "sha512-d4qlt6YmrLMYy95n5TB52wtNDr6EgAIPH81dvvvW8UmuWRgxEtY0NJiPwl/h95JtG2vmRM804M0DSwMCNZlzRA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@algolia/autocomplete-shared": "1.9.3" + }, + "peerDependencies": { + "@algolia/client-search": ">= 4.9.1 < 6", + "algoliasearch": ">= 4.9.1 < 6" + } + }, + "node_modules/@algolia/autocomplete-shared": { + "version": "1.9.3", + "resolved": "https://registry.npmjs.org/@algolia/autocomplete-shared/-/autocomplete-shared-1.9.3.tgz", + "integrity": "sha512-Wnm9E4Ye6Rl6sTTqjoymD+l8DjSTHsHboVRYrKgEt8Q7UHm9nYbqhN/i0fhUYA3OAEH7WA8x3jfpnmJm3rKvaQ==", + "dev": true, + "license": "MIT", + "peerDependencies": { + "@algolia/client-search": ">= 4.9.1 < 6", + "algoliasearch": ">= 4.9.1 < 6" + } + }, + "node_modules/@algolia/cache-browser-local-storage": { + "version": "4.24.0", + "resolved": "https://registry.npmjs.org/@algolia/cache-browser-local-storage/-/cache-browser-local-storage-4.24.0.tgz", + "integrity": "sha512-t63W9BnoXVrGy9iYHBgObNXqYXM3tYXCjDSHeNwnsc324r4o5UiVKUiAB4THQ5z9U5hTj6qUvwg/Ez43ZD85ww==", + "dev": true, + "license": "MIT", + "dependencies": { + "@algolia/cache-common": "4.24.0" + } + }, + "node_modules/@algolia/cache-common": { + "version": "4.24.0", + "resolved": "https://registry.npmjs.org/@algolia/cache-common/-/cache-common-4.24.0.tgz", + "integrity": "sha512-emi+v+DmVLpMGhp0V9q9h5CdkURsNmFC+cOS6uK9ndeJm9J4TiqSvPYVu+THUP8P/S08rxf5x2P+p3CfID0Y4g==", + "dev": true, + "license": "MIT" + }, + "node_modules/@algolia/cache-in-memory": { + "version": "4.24.0", + "resolved": "https://registry.npmjs.org/@algolia/cache-in-memory/-/cache-in-memory-4.24.0.tgz", + "integrity": "sha512-gDrt2so19jW26jY3/MkFg5mEypFIPbPoXsQGQWAi6TrCPsNOSEYepBMPlucqWigsmEy/prp5ug2jy/N3PVG/8w==", + "dev": true, + "license": "MIT", + "dependencies": { + "@algolia/cache-common": "4.24.0" + } + }, + "node_modules/@algolia/client-account": { + "version": "4.24.0", + "resolved": "https://registry.npmjs.org/@algolia/client-account/-/client-account-4.24.0.tgz", + "integrity": "sha512-adcvyJ3KjPZFDybxlqnf+5KgxJtBjwTPTeyG2aOyoJvx0Y8dUQAEOEVOJ/GBxX0WWNbmaSrhDURMhc+QeevDsA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@algolia/client-common": "4.24.0", + "@algolia/client-search": "4.24.0", + "@algolia/transporter": "4.24.0" + } + }, + "node_modules/@algolia/client-account/node_modules/@algolia/client-common": { + "version": "4.24.0", + "resolved": "https://registry.npmjs.org/@algolia/client-common/-/client-common-4.24.0.tgz", + "integrity": "sha512-bc2ROsNL6w6rqpl5jj/UywlIYC21TwSSoFHKl01lYirGMW+9Eek6r02Tocg4gZ8HAw3iBvu6XQiM3BEbmEMoiA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@algolia/requester-common": "4.24.0", + "@algolia/transporter": "4.24.0" + } + }, + "node_modules/@algolia/client-account/node_modules/@algolia/client-search": { + "version": "4.24.0", + "resolved": "https://registry.npmjs.org/@algolia/client-search/-/client-search-4.24.0.tgz", + "integrity": "sha512-uRW6EpNapmLAD0mW47OXqTP8eiIx5F6qN9/x/7HHO6owL3N1IXqydGwW5nhDFBrV+ldouro2W1VX3XlcUXEFCA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@algolia/client-common": "4.24.0", + "@algolia/requester-common": "4.24.0", + "@algolia/transporter": "4.24.0" + } + }, + "node_modules/@algolia/client-analytics": { + "version": "4.24.0", + "resolved": "https://registry.npmjs.org/@algolia/client-analytics/-/client-analytics-4.24.0.tgz", + "integrity": "sha512-y8jOZt1OjwWU4N2qr8G4AxXAzaa8DBvyHTWlHzX/7Me1LX8OayfgHexqrsL4vSBcoMmVw2XnVW9MhL+Y2ZDJXg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@algolia/client-common": "4.24.0", + "@algolia/client-search": "4.24.0", + "@algolia/requester-common": "4.24.0", + "@algolia/transporter": "4.24.0" + } + }, + "node_modules/@algolia/client-analytics/node_modules/@algolia/client-common": { + "version": "4.24.0", + "resolved": "https://registry.npmjs.org/@algolia/client-common/-/client-common-4.24.0.tgz", + "integrity": "sha512-bc2ROsNL6w6rqpl5jj/UywlIYC21TwSSoFHKl01lYirGMW+9Eek6r02Tocg4gZ8HAw3iBvu6XQiM3BEbmEMoiA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@algolia/requester-common": "4.24.0", + "@algolia/transporter": "4.24.0" + } + }, + "node_modules/@algolia/client-analytics/node_modules/@algolia/client-search": { + "version": "4.24.0", + "resolved": "https://registry.npmjs.org/@algolia/client-search/-/client-search-4.24.0.tgz", + "integrity": "sha512-uRW6EpNapmLAD0mW47OXqTP8eiIx5F6qN9/x/7HHO6owL3N1IXqydGwW5nhDFBrV+ldouro2W1VX3XlcUXEFCA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@algolia/client-common": "4.24.0", + "@algolia/requester-common": "4.24.0", + "@algolia/transporter": "4.24.0" + } + }, + "node_modules/@algolia/client-common": { + "version": "5.6.1", + "resolved": "https://registry.npmjs.org/@algolia/client-common/-/client-common-5.6.1.tgz", + "integrity": "sha512-4MGqXqiAyqsUJw+KamKWZO2Gxn9iMpc05vC0vy8+iQRjKRZEDB1a+3Da6CnkWzXa162pJb7a/chDAAKA9rye8A==", + "dev": true, + "license": "MIT", + "peer": true, + "engines": { + "node": ">= 14.0.0" + } + }, + "node_modules/@algolia/client-personalization": { + "version": "4.24.0", + "resolved": "https://registry.npmjs.org/@algolia/client-personalization/-/client-personalization-4.24.0.tgz", + "integrity": "sha512-l5FRFm/yngztweU0HdUzz1rC4yoWCFo3IF+dVIVTfEPg906eZg5BOd1k0K6rZx5JzyyoP4LdmOikfkfGsKVE9w==", + "dev": true, + "license": "MIT", + "dependencies": { + "@algolia/client-common": "4.24.0", + "@algolia/requester-common": "4.24.0", + "@algolia/transporter": "4.24.0" + } + }, + "node_modules/@algolia/client-personalization/node_modules/@algolia/client-common": { + "version": "4.24.0", + "resolved": "https://registry.npmjs.org/@algolia/client-common/-/client-common-4.24.0.tgz", + "integrity": "sha512-bc2ROsNL6w6rqpl5jj/UywlIYC21TwSSoFHKl01lYirGMW+9Eek6r02Tocg4gZ8HAw3iBvu6XQiM3BEbmEMoiA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@algolia/requester-common": "4.24.0", + "@algolia/transporter": "4.24.0" + } + }, + "node_modules/@algolia/client-search": { + "version": "5.6.1", + "resolved": "https://registry.npmjs.org/@algolia/client-search/-/client-search-5.6.1.tgz", + "integrity": "sha512-HloeR0Ef29vf2yJc1lhjw1OYial3YgB0f3TQaqqMlSnM/IkAw9TnX1IOYLurnI91apMKggFpA9t8lRp7TGEKEg==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@algolia/client-common": "5.6.1", + "@algolia/requester-browser-xhr": "5.6.1", + "@algolia/requester-fetch": "5.6.1", + "@algolia/requester-node-http": "5.6.1" + }, + "engines": { + "node": ">= 14.0.0" + } + }, + "node_modules/@algolia/logger-common": { + "version": "4.24.0", + "resolved": "https://registry.npmjs.org/@algolia/logger-common/-/logger-common-4.24.0.tgz", + "integrity": "sha512-LLUNjkahj9KtKYrQhFKCzMx0BY3RnNP4FEtO+sBybCjJ73E8jNdaKJ/Dd8A/VA4imVHP5tADZ8pn5B8Ga/wTMA==", + "dev": true, + "license": "MIT" + }, + "node_modules/@algolia/logger-console": { + "version": "4.24.0", + "resolved": "https://registry.npmjs.org/@algolia/logger-console/-/logger-console-4.24.0.tgz", + "integrity": "sha512-X4C8IoHgHfiUROfoRCV+lzSy+LHMgkoEEU1BbKcsfnV0i0S20zyy0NLww9dwVHUWNfPPxdMU+/wKmLGYf96yTg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@algolia/logger-common": "4.24.0" + } + }, + "node_modules/@algolia/recommend": { + "version": "4.24.0", + "resolved": "https://registry.npmjs.org/@algolia/recommend/-/recommend-4.24.0.tgz", + "integrity": "sha512-P9kcgerfVBpfYHDfVZDvvdJv0lEoCvzNlOy2nykyt5bK8TyieYyiD0lguIJdRZZYGre03WIAFf14pgE+V+IBlw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@algolia/cache-browser-local-storage": "4.24.0", + "@algolia/cache-common": "4.24.0", + "@algolia/cache-in-memory": "4.24.0", + "@algolia/client-common": "4.24.0", + "@algolia/client-search": "4.24.0", + "@algolia/logger-common": "4.24.0", + "@algolia/logger-console": "4.24.0", + "@algolia/requester-browser-xhr": "4.24.0", + "@algolia/requester-common": "4.24.0", + "@algolia/requester-node-http": "4.24.0", + "@algolia/transporter": "4.24.0" + } + }, + "node_modules/@algolia/recommend/node_modules/@algolia/client-common": { + "version": "4.24.0", + "resolved": "https://registry.npmjs.org/@algolia/client-common/-/client-common-4.24.0.tgz", + "integrity": "sha512-bc2ROsNL6w6rqpl5jj/UywlIYC21TwSSoFHKl01lYirGMW+9Eek6r02Tocg4gZ8HAw3iBvu6XQiM3BEbmEMoiA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@algolia/requester-common": "4.24.0", + "@algolia/transporter": "4.24.0" + } + }, + "node_modules/@algolia/recommend/node_modules/@algolia/client-search": { + "version": "4.24.0", + "resolved": "https://registry.npmjs.org/@algolia/client-search/-/client-search-4.24.0.tgz", + "integrity": "sha512-uRW6EpNapmLAD0mW47OXqTP8eiIx5F6qN9/x/7HHO6owL3N1IXqydGwW5nhDFBrV+ldouro2W1VX3XlcUXEFCA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@algolia/client-common": "4.24.0", + "@algolia/requester-common": "4.24.0", + "@algolia/transporter": "4.24.0" + } + }, + "node_modules/@algolia/recommend/node_modules/@algolia/requester-browser-xhr": { + "version": "4.24.0", + "resolved": "https://registry.npmjs.org/@algolia/requester-browser-xhr/-/requester-browser-xhr-4.24.0.tgz", + "integrity": "sha512-Z2NxZMb6+nVXSjF13YpjYTdvV3032YTBSGm2vnYvYPA6mMxzM3v5rsCiSspndn9rzIW4Qp1lPHBvuoKJV6jnAA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@algolia/requester-common": "4.24.0" + } + }, + "node_modules/@algolia/recommend/node_modules/@algolia/requester-node-http": { + "version": "4.24.0", + "resolved": "https://registry.npmjs.org/@algolia/requester-node-http/-/requester-node-http-4.24.0.tgz", + "integrity": "sha512-JF18yTjNOVYvU/L3UosRcvbPMGT9B+/GQWNWnenIImglzNVGpyzChkXLnrSf6uxwVNO6ESGu6oN8MqcGQcjQJw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@algolia/requester-common": "4.24.0" + } + }, + "node_modules/@algolia/requester-browser-xhr": { + "version": "5.6.1", + "resolved": "https://registry.npmjs.org/@algolia/requester-browser-xhr/-/requester-browser-xhr-5.6.1.tgz", + "integrity": "sha512-tY1RW60sGF9sMpxbd8j53IqLLwnkNhrAarVhFfNZzDZNvI8WyzG78W5ZD/SFvtkgNPPSav3T/3LpBT8xBpzbGw==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@algolia/client-common": "5.6.1" + }, + "engines": { + "node": ">= 14.0.0" + } + }, + "node_modules/@algolia/requester-common": { + "version": "4.24.0", + "resolved": "https://registry.npmjs.org/@algolia/requester-common/-/requester-common-4.24.0.tgz", + "integrity": "sha512-k3CXJ2OVnvgE3HMwcojpvY6d9kgKMPRxs/kVohrwF5WMr2fnqojnycZkxPoEg+bXm8fi5BBfFmOqgYztRtHsQA==", + "dev": true, + "license": "MIT" + }, + "node_modules/@algolia/requester-fetch": { + "version": "5.6.1", + "resolved": "https://registry.npmjs.org/@algolia/requester-fetch/-/requester-fetch-5.6.1.tgz", + "integrity": "sha512-4TvR5IodrH+o+ji4ka+VBufWY0GfHr43nFqnDTStabtjspfo4rlcV16x534vvnbfp694oBxrz0SO/Ny8VemvXg==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@algolia/client-common": "5.6.1" + }, + "engines": { + "node": ">= 14.0.0" + } + }, + "node_modules/@algolia/requester-node-http": { + "version": "5.6.1", + "resolved": "https://registry.npmjs.org/@algolia/requester-node-http/-/requester-node-http-5.6.1.tgz", + "integrity": "sha512-K7tlss87aq6UnWnU8+fPIe+Is9Mvyqwzysp6Ty/HpQ7YNKUU7opgkMOVKxzTwt3fm40NfNX4ENvVKHoYABL6vw==", + "dev": true, + "license": "MIT", + "peer": true, + "dependencies": { + "@algolia/client-common": "5.6.1" + }, + "engines": { + "node": ">= 14.0.0" + } + }, + "node_modules/@algolia/transporter": { + "version": "4.24.0", + "resolved": "https://registry.npmjs.org/@algolia/transporter/-/transporter-4.24.0.tgz", + "integrity": "sha512-86nI7w6NzWxd1Zp9q3413dRshDqAzSbsQjhcDhPIatEFiZrL1/TjnHL8S7jVKFePlIMzDsZWXAXwXzcok9c5oA==", + "dev": true, + "license": "MIT", + "dependencies": { + "@algolia/cache-common": "4.24.0", + "@algolia/logger-common": "4.24.0", + "@algolia/requester-common": "4.24.0" + } + }, + "node_modules/@babel/helper-string-parser": { + "version": "7.24.8", + "resolved": "https://registry.npmjs.org/@babel/helper-string-parser/-/helper-string-parser-7.24.8.tgz", + "integrity": "sha512-pO9KhhRcuUyGnJWwyEgnRJTSIZHiT+vMD0kPeD+so0l7mxkMT19g3pjY9GTnHySck/hDzq+dtW/4VgnMkippsQ==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/helper-validator-identifier": { "version": "7.24.7", - "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.24.7.tgz", - "integrity": "sha512-9uUYRm6OqQrCqQdG1iCBwBPZgN8ciDBro2nIOFaiRz1/BCxaI7CNvQbDHvsArAC7Tw9Hda/B3U+6ui9u4HWXPw==", + "resolved": "https://registry.npmjs.org/@babel/helper-validator-identifier/-/helper-validator-identifier-7.24.7.tgz", + "integrity": "sha512-rR+PBcQ1SMQDDyF6X0wxtG8QyLCgUB0eRAGguqRLfkCA87l7yAP7ehq8SNj96OOGTO8OBV70KhuFYcIkHXOg0w==", + "dev": true, + "license": "MIT", + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@babel/parser": { + "version": "7.25.6", + "resolved": "https://registry.npmjs.org/@babel/parser/-/parser-7.25.6.tgz", + "integrity": "sha512-trGdfBdbD0l1ZPmcJ83eNxB9rbEax4ALFTF7fN386TMYbeCQbyme5cOEXQhbGXKebwGaB/J52w1mrklMcbgy6Q==", "dev": true, "license": "MIT", + "dependencies": { + "@babel/types": "^7.25.6" + }, "bin": { "parser": "bin/babel-parser.js" }, @@ -29,6 +383,72 @@ "node": ">=6.0.0" } }, + "node_modules/@babel/types": { + "version": "7.25.6", + "resolved": "https://registry.npmjs.org/@babel/types/-/types-7.25.6.tgz", + "integrity": "sha512-/l42B1qxpG6RdfYf343Uw1vmDjeNhneUXtzhojE7pDgfpEypmRhI6j1kr17XCVv4Cgl9HdAiQY2x0GwKm7rWCw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@babel/helper-string-parser": "^7.24.8", + "@babel/helper-validator-identifier": "^7.24.7", + "to-fast-properties": "^2.0.0" + }, + "engines": { + "node": ">=6.9.0" + } + }, + "node_modules/@docsearch/css": { + "version": "3.6.1", + "resolved": "https://registry.npmjs.org/@docsearch/css/-/css-3.6.1.tgz", + "integrity": "sha512-VtVb5DS+0hRIprU2CO6ZQjK2Zg4QU5HrDM1+ix6rT0umsYvFvatMAnf97NHZlVWDaaLlx7GRfR/7FikANiM2Fg==", + "dev": true, + "license": "MIT" + }, + "node_modules/@docsearch/js": { + "version": "3.6.1", + "resolved": "https://registry.npmjs.org/@docsearch/js/-/js-3.6.1.tgz", + "integrity": "sha512-erI3RRZurDr1xES5hvYJ3Imp7jtrXj6f1xYIzDzxiS7nNBufYWPbJwrmMqWC5g9y165PmxEmN9pklGCdLi0Iqg==", + "dev": true, + "license": "MIT", + "dependencies": { + "@docsearch/react": "3.6.1", + "preact": "^10.0.0" + } + }, + "node_modules/@docsearch/react": { + "version": "3.6.1", + "resolved": "https://registry.npmjs.org/@docsearch/react/-/react-3.6.1.tgz", + "integrity": "sha512-qXZkEPvybVhSXj0K7U3bXc233tk5e8PfhoZ6MhPOiik/qUQxYC+Dn9DnoS7CxHQQhHfCvTiN0eY9M12oRghEXw==", + "dev": true, + "license": "MIT", + "dependencies": { + "@algolia/autocomplete-core": "1.9.3", + "@algolia/autocomplete-preset-algolia": "1.9.3", + "@docsearch/css": "3.6.1", + "algoliasearch": "^4.19.1" + }, + "peerDependencies": { + "@types/react": ">= 16.8.0 < 19.0.0", + "react": ">= 16.8.0 < 19.0.0", + "react-dom": ">= 16.8.0 < 19.0.0", + "search-insights": ">= 1 < 3" + }, + "peerDependenciesMeta": { + "@types/react": { + "optional": true + }, + "react": { + "optional": true + }, + "react-dom": { + "optional": true + }, + "search-insights": { + "optional": true + } + } + }, "node_modules/@esbuild/aix-ppc64": { "version": "0.21.5", "resolved": "https://registry.npmjs.org/@esbuild/aix-ppc64/-/aix-ppc64-0.21.5.tgz", @@ -427,215 +847,83 @@ "dev": true, "license": "MIT" }, - "node_modules/@mdit-vue/plugin-component": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/@mdit-vue/plugin-component/-/plugin-component-2.1.3.tgz", - "integrity": "sha512-9AG17beCgpEw/4ldo/M6Y/1Rh4E1bqMmr/rCkWKmCAxy9tJz3lzY7HQJanyHMJufwsb3WL5Lp7Om/aPcQTZ9SA==", + "node_modules/@rollup/rollup-android-arm-eabi": { + "version": "4.22.4", + "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.22.4.tgz", + "integrity": "sha512-Fxamp4aEZnfPOcGA8KSNEohV8hX7zVHOemC8jVBoBUHu5zpJK/Eu3uJwt6BMgy9fkvzxDaurgj96F/NiLukF2w==", + "cpu": [ + "arm" + ], "dev": true, "license": "MIT", - "dependencies": { - "@types/markdown-it": "^14.1.1", - "markdown-it": "^14.1.0" - } + "optional": true, + "os": [ + "android" + ] }, - "node_modules/@mdit-vue/plugin-frontmatter": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/@mdit-vue/plugin-frontmatter/-/plugin-frontmatter-2.1.3.tgz", - "integrity": "sha512-KxsSCUVBEmn6sJcchSTiI5v9bWaoRxe68RBYRDGcSEY1GTnfQ5gQPMIsM48P4q1luLEIWurVGGrRu7u93//LDQ==", + "node_modules/@rollup/rollup-android-arm64": { + "version": "4.22.4", + "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.22.4.tgz", + "integrity": "sha512-VXoK5UMrgECLYaMuGuVTOx5kcuap1Jm8g/M83RnCHBKOqvPPmROFJGQaZhGccnsFtfXQ3XYa4/jMCJvZnbJBdA==", + "cpu": [ + "arm64" + ], "dev": true, "license": "MIT", - "dependencies": { - "@mdit-vue/types": "2.1.0", - "@types/markdown-it": "^14.1.1", - "gray-matter": "^4.0.3", - "markdown-it": "^14.1.0" - } + "optional": true, + "os": [ + "android" + ] }, - "node_modules/@mdit-vue/plugin-headers": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/@mdit-vue/plugin-headers/-/plugin-headers-2.1.3.tgz", - "integrity": "sha512-AcL7a7LHQR3ISINhfjGJNE/bHyM0dcl6MYm1Sr//zF7ZgokPGwD/HhD7TzwmrKA9YNYCcO9P3QmF/RN9XyA6CA==", + "node_modules/@rollup/rollup-darwin-arm64": { + "version": "4.22.4", + "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.22.4.tgz", + "integrity": "sha512-xMM9ORBqu81jyMKCDP+SZDhnX2QEVQzTcC6G18KlTQEzWK8r/oNZtKuZaCcHhnsa6fEeOBionoyl5JsAbE/36Q==", + "cpu": [ + "arm64" + ], "dev": true, "license": "MIT", - "dependencies": { - "@mdit-vue/shared": "2.1.3", - "@mdit-vue/types": "2.1.0", - "@types/markdown-it": "^14.1.1", - "markdown-it": "^14.1.0" - } + "optional": true, + "os": [ + "darwin" + ] }, - "node_modules/@mdit-vue/plugin-sfc": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/@mdit-vue/plugin-sfc/-/plugin-sfc-2.1.3.tgz", - "integrity": "sha512-Ezl0dNvQNS639Yl4siXm+cnWtQvlqHrg+u+lnau/OHpj9Xh3LVap/BSQVugKIV37eR13jXXYf3VaAOP1fXPN+w==", + "node_modules/@rollup/rollup-darwin-x64": { + "version": "4.22.4", + "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.22.4.tgz", + "integrity": "sha512-aJJyYKQwbHuhTUrjWjxEvGnNNBCnmpHDvrb8JFDbeSH3m2XdHcxDd3jthAzvmoI8w/kSjd2y0udT+4okADsZIw==", + "cpu": [ + "x64" + ], "dev": true, "license": "MIT", - "dependencies": { - "@mdit-vue/types": "2.1.0", - "@types/markdown-it": "^14.1.1", - "markdown-it": "^14.1.0" - } + "optional": true, + "os": [ + "darwin" + ] }, - "node_modules/@mdit-vue/plugin-title": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/@mdit-vue/plugin-title/-/plugin-title-2.1.3.tgz", - "integrity": "sha512-XWVOQoZqczoN97xCDrnQicmXKoqwOjIymIm9HQnRXhHnYKOgJPW1CxSGhkcOGzvDU1v0mD/adojVyyj/s6ggWw==", + "node_modules/@rollup/rollup-linux-arm-gnueabihf": { + "version": "4.22.4", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.22.4.tgz", + "integrity": "sha512-j63YtCIRAzbO+gC2L9dWXRh5BFetsv0j0va0Wi9epXDgU/XUi5dJKo4USTttVyK7fGw2nPWK0PbAvyliz50SCQ==", + "cpu": [ + "arm" + ], "dev": true, "license": "MIT", - "dependencies": { - "@mdit-vue/shared": "2.1.3", - "@mdit-vue/types": "2.1.0", - "@types/markdown-it": "^14.1.1", - "markdown-it": "^14.1.0" - } + "optional": true, + "os": [ + "linux" + ] }, - "node_modules/@mdit-vue/plugin-toc": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/@mdit-vue/plugin-toc/-/plugin-toc-2.1.3.tgz", - "integrity": "sha512-41Q+iXpLHZt0zJdApVwoVt7WF6za/xUjtjEPf90Z3KLzQO01TXsv48Xp9BsrFHPcPcm8tiZ0+O1/ICJO80V/MQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "@mdit-vue/shared": "2.1.3", - "@mdit-vue/types": "2.1.0", - "@types/markdown-it": "^14.1.1", - "markdown-it": "^14.1.0" - } - }, - "node_modules/@mdit-vue/shared": { - "version": "2.1.3", - "resolved": "https://registry.npmjs.org/@mdit-vue/shared/-/shared-2.1.3.tgz", - "integrity": "sha512-27YI8b0VVZsAlNwaWoaOCWbr4eL8B04HxiYk/y2ktblO/nMcOEOLt4p0RjuobvdyUyjHvGOS09RKhq7qHm1CHQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "@mdit-vue/types": "2.1.0", - "@types/markdown-it": "^14.1.1", - "markdown-it": "^14.1.0" - } - }, - "node_modules/@mdit-vue/types": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/@mdit-vue/types/-/types-2.1.0.tgz", - "integrity": "sha512-TMBB/BQWVvwtpBdWD75rkZx4ZphQ6MN0O4QB2Bc0oI5PC2uE57QerhNxdRZ7cvBHE2iY2C+BUNUziCfJbjIRRA==", - "dev": true, - "license": "MIT" - }, - "node_modules/@nodelib/fs.scandir": { - "version": "2.1.5", - "resolved": "https://registry.npmjs.org/@nodelib/fs.scandir/-/fs.scandir-2.1.5.tgz", - "integrity": "sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==", - "dev": true, - "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.npmjs.org/@nodelib/fs.stat/-/fs.stat-2.0.5.tgz", - "integrity": "sha512-RkhPPp2zrqDAQA/2jNhnztcPAlv64XdhIp7a7454A5ovI7Bukxgt7MX7udwAu3zg1DcpPU0rz3VV1SeaqvY4+A==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 8" - } - }, - "node_modules/@nodelib/fs.walk": { - "version": "1.2.8", - "resolved": "https://registry.npmjs.org/@nodelib/fs.walk/-/fs.walk-1.2.8.tgz", - "integrity": "sha512-oGB+UxlgWcgQkgwo8GcEGwemoTFt3FIO9ababBmaGwXIoBKZ+GTy0pP185beGg7Llih/NSHSV2XAs1lnznocSg==", - "dev": true, - "license": "MIT", - "dependencies": { - "@nodelib/fs.scandir": "2.1.5", - "fastq": "^1.6.0" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/@rollup/rollup-android-arm-eabi": { - "version": "4.18.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm-eabi/-/rollup-android-arm-eabi-4.18.1.tgz", - "integrity": "sha512-lncuC4aHicncmbORnx+dUaAgzee9cm/PbIqgWz1PpXuwc+sa1Ct83tnqUDy/GFKleLiN7ZIeytM6KJ4cAn1SxA==", - "cpu": [ - "arm" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "android" - ] - }, - "node_modules/@rollup/rollup-android-arm64": { - "version": "4.18.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-android-arm64/-/rollup-android-arm64-4.18.1.tgz", - "integrity": "sha512-F/tkdw0WSs4ojqz5Ovrw5r9odqzFjb5LIgHdHZG65dFI1lWTWRVy32KDJLKRISHgJvqUeUhdIvy43fX41znyDg==", - "cpu": [ - "arm64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "android" - ] - }, - "node_modules/@rollup/rollup-darwin-arm64": { - "version": "4.18.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-arm64/-/rollup-darwin-arm64-4.18.1.tgz", - "integrity": "sha512-vk+ma8iC1ebje/ahpxpnrfVQJibTMyHdWpOGZ3JpQ7Mgn/3QNHmPq7YwjZbIE7km73dH5M1e6MRRsnEBW7v5CQ==", - "cpu": [ - "arm64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "darwin" - ] - }, - "node_modules/@rollup/rollup-darwin-x64": { - "version": "4.18.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-darwin-x64/-/rollup-darwin-x64-4.18.1.tgz", - "integrity": "sha512-IgpzXKauRe1Tafcej9STjSSuG0Ghu/xGYH+qG6JwsAUxXrnkvNHcq/NL6nz1+jzvWAnQkuAJ4uIwGB48K9OCGA==", - "cpu": [ - "x64" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "darwin" - ] - }, - "node_modules/@rollup/rollup-linux-arm-gnueabihf": { - "version": "4.18.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-gnueabihf/-/rollup-linux-arm-gnueabihf-4.18.1.tgz", - "integrity": "sha512-P9bSiAUnSSM7EmyRK+e5wgpqai86QOSv8BwvkGjLwYuOpaeomiZWifEos517CwbG+aZl1T4clSE1YqqH2JRs+g==", - "cpu": [ - "arm" - ], - "dev": true, - "license": "MIT", - "optional": true, - "os": [ - "linux" - ] - }, - "node_modules/@rollup/rollup-linux-arm-musleabihf": { - "version": "4.18.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-musleabihf/-/rollup-linux-arm-musleabihf-4.18.1.tgz", - "integrity": "sha512-5RnjpACoxtS+aWOI1dURKno11d7krfpGDEn19jI8BuWmSBbUC4ytIADfROM1FZrFhQPSoP+KEa3NlEScznBTyQ==", - "cpu": [ - "arm" - ], + "node_modules/@rollup/rollup-linux-arm-musleabihf": { + "version": "4.22.4", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm-musleabihf/-/rollup-linux-arm-musleabihf-4.22.4.tgz", + "integrity": "sha512-dJnWUgwWBX1YBRsuKKMOlXCzh2Wu1mlHzv20TpqEsfdZLb3WoJW2kIEsGwLkroYf24IrPAvOT/ZQ2OYMV6vlrg==", + "cpu": [ + "arm" + ], "dev": true, "license": "MIT", "optional": true, @@ -644,9 +932,9 @@ ] }, "node_modules/@rollup/rollup-linux-arm64-gnu": { - "version": "4.18.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.18.1.tgz", - "integrity": "sha512-8mwmGD668m8WaGbthrEYZ9CBmPug2QPGWxhJxh/vCgBjro5o96gL04WLlg5BA233OCWLqERy4YUzX3bJGXaJgQ==", + "version": "4.22.4", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-gnu/-/rollup-linux-arm64-gnu-4.22.4.tgz", + "integrity": "sha512-AdPRoNi3NKVLolCN/Sp4F4N1d98c4SBnHMKoLuiG6RXgoZ4sllseuGioszumnPGmPM2O7qaAX/IJdeDU8f26Aw==", "cpu": [ "arm64" ], @@ -658,9 +946,9 @@ ] }, "node_modules/@rollup/rollup-linux-arm64-musl": { - "version": "4.18.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.18.1.tgz", - "integrity": "sha512-dJX9u4r4bqInMGOAQoGYdwDP8lQiisWb9et+T84l2WXk41yEej8v2iGKodmdKimT8cTAYt0jFb+UEBxnPkbXEQ==", + "version": "4.22.4", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-arm64-musl/-/rollup-linux-arm64-musl-4.22.4.tgz", + "integrity": "sha512-Gl0AxBtDg8uoAn5CCqQDMqAx22Wx22pjDOjBdmG0VIWX3qUBHzYmOKh8KXHL4UpogfJ14G4wk16EQogF+v8hmA==", "cpu": [ "arm64" ], @@ -672,9 +960,9 @@ ] }, "node_modules/@rollup/rollup-linux-powerpc64le-gnu": { - "version": "4.18.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-powerpc64le-gnu/-/rollup-linux-powerpc64le-gnu-4.18.1.tgz", - "integrity": "sha512-V72cXdTl4EI0x6FNmho4D502sy7ed+LuVW6Ym8aI6DRQ9hQZdp5sj0a2usYOlqvFBNKQnLQGwmYnujo2HvjCxQ==", + "version": "4.22.4", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-powerpc64le-gnu/-/rollup-linux-powerpc64le-gnu-4.22.4.tgz", + "integrity": "sha512-3aVCK9xfWW1oGQpTsYJJPF6bfpWfhbRnhdlyhak2ZiyFLDaayz0EP5j9V1RVLAAxlmWKTDfS9wyRyY3hvhPoOg==", "cpu": [ "ppc64" ], @@ -686,9 +974,9 @@ ] }, "node_modules/@rollup/rollup-linux-riscv64-gnu": { - "version": "4.18.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-gnu/-/rollup-linux-riscv64-gnu-4.18.1.tgz", - "integrity": "sha512-f+pJih7sxoKmbjghrM2RkWo2WHUW8UbfxIQiWo5yeCaCM0TveMEuAzKJte4QskBp1TIinpnRcxkquY+4WuY/tg==", + "version": "4.22.4", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-riscv64-gnu/-/rollup-linux-riscv64-gnu-4.22.4.tgz", + "integrity": "sha512-ePYIir6VYnhgv2C5Xe9u+ico4t8sZWXschR6fMgoPUK31yQu7hTEJb7bCqivHECwIClJfKgE7zYsh1qTP3WHUA==", "cpu": [ "riscv64" ], @@ -700,9 +988,9 @@ ] }, "node_modules/@rollup/rollup-linux-s390x-gnu": { - "version": "4.18.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-s390x-gnu/-/rollup-linux-s390x-gnu-4.18.1.tgz", - "integrity": "sha512-qb1hMMT3Fr/Qz1OKovCuUM11MUNLUuHeBC2DPPAWUYYUAOFWaxInaTwTQmc7Fl5La7DShTEpmYwgdt2hG+4TEg==", + "version": "4.22.4", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-s390x-gnu/-/rollup-linux-s390x-gnu-4.22.4.tgz", + "integrity": "sha512-GqFJ9wLlbB9daxhVlrTe61vJtEY99/xB3C8e4ULVsVfflcpmR6c8UZXjtkMA6FhNONhj2eA5Tk9uAVw5orEs4Q==", "cpu": [ "s390x" ], @@ -714,9 +1002,9 @@ ] }, "node_modules/@rollup/rollup-linux-x64-gnu": { - "version": "4.18.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.18.1.tgz", - "integrity": "sha512-7O5u/p6oKUFYjRbZkL2FLbwsyoJAjyeXHCU3O4ndvzg2OFO2GinFPSJFGbiwFDaCFc+k7gs9CF243PwdPQFh5g==", + "version": "4.22.4", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-gnu/-/rollup-linux-x64-gnu-4.22.4.tgz", + "integrity": "sha512-87v0ol2sH9GE3cLQLNEy0K/R0pz1nvg76o8M5nhMR0+Q+BBGLnb35P0fVz4CQxHYXaAOhE8HhlkaZfsdUOlHwg==", "cpu": [ "x64" ], @@ -728,9 +1016,9 @@ ] }, "node_modules/@rollup/rollup-linux-x64-musl": { - "version": "4.18.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.18.1.tgz", - "integrity": "sha512-pDLkYITdYrH/9Cv/Vlj8HppDuLMDUBmgsM0+N+xLtFd18aXgM9Nyqupb/Uw+HeidhfYg2lD6CXvz6CjoVOaKjQ==", + "version": "4.22.4", + "resolved": "https://registry.npmjs.org/@rollup/rollup-linux-x64-musl/-/rollup-linux-x64-musl-4.22.4.tgz", + "integrity": "sha512-UV6FZMUgePDZrFjrNGIWzDo/vABebuXBhJEqrHxrGiU6HikPy0Z3LfdtciIttEUQfuDdCn8fqh7wiFJjCNwO+g==", "cpu": [ "x64" ], @@ -742,9 +1030,9 @@ ] }, "node_modules/@rollup/rollup-win32-arm64-msvc": { - "version": "4.18.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.18.1.tgz", - "integrity": "sha512-W2ZNI323O/8pJdBGil1oCauuCzmVd9lDmWBBqxYZcOqWD6aWqJtVBQ1dFrF4dYpZPks6F+xCZHfzG5hYlSHZ6g==", + "version": "4.22.4", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-arm64-msvc/-/rollup-win32-arm64-msvc-4.22.4.tgz", + "integrity": "sha512-BjI+NVVEGAXjGWYHz/vv0pBqfGoUH0IGZ0cICTn7kB9PyjrATSkX+8WkguNjWoj2qSr1im/+tTGRaY+4/PdcQw==", "cpu": [ "arm64" ], @@ -756,9 +1044,9 @@ ] }, "node_modules/@rollup/rollup-win32-ia32-msvc": { - "version": "4.18.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.18.1.tgz", - "integrity": "sha512-ELfEX1/+eGZYMaCIbK4jqLxO1gyTSOIlZr6pbC4SRYFaSIDVKOnZNMdoZ+ON0mrFDp4+H5MhwNC1H/AhE3zQLg==", + "version": "4.22.4", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-ia32-msvc/-/rollup-win32-ia32-msvc-4.22.4.tgz", + "integrity": "sha512-SiWG/1TuUdPvYmzmYnmd3IEifzR61Tragkbx9D3+R8mzQqDBz8v+BvZNDlkiTtI9T15KYZhP0ehn3Dld4n9J5g==", "cpu": [ "ia32" ], @@ -770,9 +1058,9 @@ ] }, "node_modules/@rollup/rollup-win32-x64-msvc": { - "version": "4.18.1", - "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.18.1.tgz", - "integrity": "sha512-yjk2MAkQmoaPYCSu35RLJ62+dz358nE83VfTePJRp8CG7aMg25mEJYpXFiD+NcevhX8LxD5OP5tktPXnXN7GDw==", + "version": "4.22.4", + "resolved": "https://registry.npmjs.org/@rollup/rollup-win32-x64-msvc/-/rollup-win32-x64-msvc-4.22.4.tgz", + "integrity": "sha512-j8pPKp53/lq9lMXN57S8cFz0MynJk8OWNuUnXct/9KCpKU7DgU3bYMJhwWmcqC0UU29p8Lr0/7KEVcaM6bf47Q==", "cpu": [ "x64" ], @@ -783,69 +1071,87 @@ "win32" ] }, - "node_modules/@sec-ant/readable-stream": { - "version": "0.4.1", - "resolved": "https://registry.npmjs.org/@sec-ant/readable-stream/-/readable-stream-0.4.1.tgz", - "integrity": "sha512-831qok9r2t8AlxLko40y2ebgSDhenenCatLVeW/uBtnHPyhHOvG0C7TvfgecV+wHzIm5KUICgzmVpWS+IMEAeg==", + "node_modules/@shikijs/core": { + "version": "1.18.0", + "resolved": "https://registry.npmjs.org/@shikijs/core/-/core-1.18.0.tgz", + "integrity": "sha512-VK4BNVCd2leY62Nm2JjyxtRLkyrZT/tv104O81eyaCjHq4Adceq2uJVFJJAIof6lT1mBwZrEo2qT/T+grv3MQQ==", "dev": true, - "license": "MIT" + "license": "MIT", + "dependencies": { + "@shikijs/engine-javascript": "1.18.0", + "@shikijs/engine-oniguruma": "1.18.0", + "@shikijs/types": "1.18.0", + "@shikijs/vscode-textmate": "^9.2.2", + "@types/hast": "^3.0.4", + "hast-util-to-html": "^9.0.3" + } }, - "node_modules/@sindresorhus/merge-streams": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/@sindresorhus/merge-streams/-/merge-streams-4.0.0.tgz", - "integrity": "sha512-tlqY9xq5ukxTUZBmoOp+m61cqwQD5pHJtFY3Mn8CA8ps6yghLH/Hw8UPdqg4OLmFW3IFlcXnQNmo/dh8HzXYIQ==", + "node_modules/@shikijs/engine-javascript": { + "version": "1.18.0", + "resolved": "https://registry.npmjs.org/@shikijs/engine-javascript/-/engine-javascript-1.18.0.tgz", + "integrity": "sha512-qoP/aO/ATNwYAUw1YMdaip/YVEstMZEgrwhePm83Ll9OeQPuxDZd48szZR8oSQNQBT8m8UlWxZv8EA3lFuyI5A==", "dev": true, "license": "MIT", - "engines": { - "node": ">=18" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "dependencies": { + "@shikijs/types": "1.18.0", + "@shikijs/vscode-textmate": "^9.2.2", + "oniguruma-to-js": "0.4.3" } }, - "node_modules/@types/debug": { - "version": "4.1.12", - "resolved": "https://registry.npmjs.org/@types/debug/-/debug-4.1.12.tgz", - "integrity": "sha512-vIChWdVG3LG1SMxEvI/AK+FWJthlrqlTu7fbrlywTkkaONwk/UAGaULXRlf8vkzFBLVm0zkMdCquhL5aOjhXPQ==", + "node_modules/@shikijs/engine-oniguruma": { + "version": "1.18.0", + "resolved": "https://registry.npmjs.org/@shikijs/engine-oniguruma/-/engine-oniguruma-1.18.0.tgz", + "integrity": "sha512-B9u0ZKI/cud+TcmF8Chyh+R4V5qQVvyDOqXC2l2a4x73PBSBc6sZ0JRAX3eqyJswqir6ktwApUUGBYePdKnMJg==", "dev": true, "license": "MIT", "dependencies": { - "@types/ms": "*" + "@shikijs/types": "1.18.0", + "@shikijs/vscode-textmate": "^9.2.2" } }, - "node_modules/@types/estree": { - "version": "1.0.5", - "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.5.tgz", - "integrity": "sha512-/kYRxGDLWzHOB7q+wtSUQlFrtcdUccpfy+X+9iMBpHK8QLLhx2wIPYuS5DYtR9Wa/YlZAbIovy7qVdB1Aq6Lyw==", + "node_modules/@shikijs/transformers": { + "version": "1.18.0", + "resolved": "https://registry.npmjs.org/@shikijs/transformers/-/transformers-1.18.0.tgz", + "integrity": "sha512-EdX/UIVaaS8qp9NWRyHIXp2dmuLpdVvx+UVpbIn9eafFlLemAuljPb2+K40ie6jrlg0uUIqkg25CM/8I34yBNw==", "dev": true, - "license": "MIT" + "license": "MIT", + "dependencies": { + "shiki": "1.18.0" + } }, - "node_modules/@types/fs-extra": { - "version": "11.0.4", - "resolved": "https://registry.npmjs.org/@types/fs-extra/-/fs-extra-11.0.4.tgz", - "integrity": "sha512-yTbItCNreRooED33qjunPthRcSjERP1r4MqCZc7wv0u2sUkzTFp45tgUfS5+r7FrZPdmCCNflLhVSP/o+SemsQ==", + "node_modules/@shikijs/types": { + "version": "1.18.0", + "resolved": "https://registry.npmjs.org/@shikijs/types/-/types-1.18.0.tgz", + "integrity": "sha512-O9N36UEaGGrxv1yUrN2nye7gDLG5Uq0/c1LyfmxsvzNPqlHzWo9DI0A4+fhW2y3bGKuQu/fwS7EPdKJJCowcVA==", "dev": true, "license": "MIT", "dependencies": { - "@types/jsonfile": "*", - "@types/node": "*" + "@shikijs/vscode-textmate": "^9.2.2", + "@types/hast": "^3.0.4" } }, - "node_modules/@types/hash-sum": { - "version": "1.0.2", - "resolved": "https://registry.npmjs.org/@types/hash-sum/-/hash-sum-1.0.2.tgz", - "integrity": "sha512-UP28RddqY8xcU0SCEp9YKutQICXpaAq9N8U2klqF5hegGha7KzTOL8EdhIIV3bOSGBzjEpN9bU/d+nNZBdJYVw==", + "node_modules/@shikijs/vscode-textmate": { + "version": "9.2.2", + "resolved": "https://registry.npmjs.org/@shikijs/vscode-textmate/-/vscode-textmate-9.2.2.tgz", + "integrity": "sha512-TMp15K+GGYrWlZM8+Lnj9EaHEFmOen0WJBrfa17hF7taDOYthuPPV0GWzfd/9iMij0akS/8Yw2ikquH7uVi/fg==", + "dev": true, + "license": "MIT" + }, + "node_modules/@types/estree": { + "version": "1.0.5", + "resolved": "https://registry.npmjs.org/@types/estree/-/estree-1.0.5.tgz", + "integrity": "sha512-/kYRxGDLWzHOB7q+wtSUQlFrtcdUccpfy+X+9iMBpHK8QLLhx2wIPYuS5DYtR9Wa/YlZAbIovy7qVdB1Aq6Lyw==", "dev": true, "license": "MIT" }, - "node_modules/@types/jsonfile": { - "version": "6.1.4", - "resolved": "https://registry.npmjs.org/@types/jsonfile/-/jsonfile-6.1.4.tgz", - "integrity": "sha512-D5qGUYwjvnNNextdU59/+fI+spnwtTFmyQP0h+PfIOSkNfpU6AOICUOkm4i0OnSk+NyjdPJrxCDro0sJsWlRpQ==", + "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==", "dev": true, "license": "MIT", "dependencies": { - "@types/node": "*" + "@types/unist": "*" } }, "node_modules/@types/linkify-it": { @@ -856,9 +1162,9 @@ "license": "MIT" }, "node_modules/@types/markdown-it": { - "version": "14.1.1", - "resolved": "https://registry.npmjs.org/@types/markdown-it/-/markdown-it-14.1.1.tgz", - "integrity": "sha512-4NpsnpYl2Gt1ljyBGrKMxFYAYvpqbnnkgP/i/g+NLpjEUa3obn1XJCur9YbEXKDAkaXqsR1LbDnGEJ0MmKFxfg==", + "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==", "dev": true, "license": "MIT", "dependencies": { @@ -866,14 +1172,14 @@ "@types/mdurl": "^2" } }, - "node_modules/@types/markdown-it-emoji": { - "version": "3.0.1", - "resolved": "https://registry.npmjs.org/@types/markdown-it-emoji/-/markdown-it-emoji-3.0.1.tgz", - "integrity": "sha512-cz1j8R35XivBqq9mwnsrP2fsz2yicLhB8+PDtuVkKOExwEdsVBNI+ROL3sbhtR5occRZ66vT0QnwFZCqdjf3pA==", + "node_modules/@types/mdast": { + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/@types/mdast/-/mdast-4.0.4.tgz", + "integrity": "sha512-kGaNbPh1k7AFzgpud/gMdvIm5xuECykRR+JnWKQno9TAXVa6WIVCGTPvYGekIDL4uwCZQSYbUxNBSb1aUo79oA==", "dev": true, "license": "MIT", "dependencies": { - "@types/markdown-it": "^14" + "@types/unist": "*" } }, "node_modules/@types/mdurl": { @@ -883,33 +1189,13 @@ "dev": true, "license": "MIT" }, - "node_modules/@types/ms": { - "version": "0.7.34", - "resolved": "https://registry.npmjs.org/@types/ms/-/ms-0.7.34.tgz", - "integrity": "sha512-nG96G3Wp6acyAgJqGasjODb+acrI7KltPiRxzHPXnP3NgI28bpQDRv53olbqGXbfcgF5aiiHmO3xpwEpS5Ld9g==", + "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==", "dev": true, "license": "MIT" }, - "node_modules/@types/node": { - "version": "20.14.10", - "resolved": "https://registry.npmjs.org/@types/node/-/node-20.14.10.tgz", - "integrity": "sha512-MdiXf+nDuMvY0gJKxyfZ7/6UFsETO7mGKF54MVD/ekJS6HdFtpZFBgrh6Pseu64XTb2MLyFPlbW6hj8HYRQNOQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "undici-types": "~5.26.4" - } - }, - "node_modules/@types/sax": { - "version": "1.2.7", - "resolved": "https://registry.npmjs.org/@types/sax/-/sax-1.2.7.tgz", - "integrity": "sha512-rO73L89PJxeYM3s3pPPjiPgVVcymqU490g0YO5n5By0k2Erzj6tay/4lr1CHAAU4JyOWd1rpQ8bCf6cZfHU96A==", - "dev": true, - "license": "MIT", - "dependencies": { - "@types/node": "*" - } - }, "node_modules/@types/web-bluetooth": { "version": "0.0.20", "resolved": "https://registry.npmjs.org/@types/web-bluetooth/-/web-bluetooth-0.0.20.tgz", @@ -917,10 +1203,17 @@ "dev": true, "license": "MIT" }, + "node_modules/@ungap/structured-clone": { + "version": "1.2.0", + "resolved": "https://registry.npmjs.org/@ungap/structured-clone/-/structured-clone-1.2.0.tgz", + "integrity": "sha512-zuVdFrMJiuCDQUMCzQaD6KL28MjnqqN8XnAqiEq9PNm/hCPTSGfrXCOfwj1ow4LFb/tNymJPwsNbVePc1xFqrQ==", + "dev": true, + "license": "ISC" + }, "node_modules/@vitejs/plugin-vue": { - "version": "5.0.5", - "resolved": "https://registry.npmjs.org/@vitejs/plugin-vue/-/plugin-vue-5.0.5.tgz", - "integrity": "sha512-LOjm7XeIimLBZyzinBQ6OSm3UBCNVCpLkxGC0oWmm2YPzVZoxMsdvNVimLTBzpAnR9hl/yn1SHGuRfe6/Td9rQ==", + "version": "5.1.4", + "resolved": "https://registry.npmjs.org/@vitejs/plugin-vue/-/plugin-vue-5.1.4.tgz", + "integrity": "sha512-N2XSI2n3sQqp5w7Y/AN/L2XDjBIRGqXko+eDp42sydYSBeJuSm5a1sLf8zakmo8u7tA8NmBgoDLA1HeOESjp9A==", "dev": true, "license": "MIT", "engines": { @@ -932,2158 +1225,920 @@ } }, "node_modules/@vue/compiler-core": { - "version": "3.4.31", - "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.4.31.tgz", - "integrity": "sha512-skOiodXWTV3DxfDhB4rOf3OGalpITLlgCeOwb+Y9GJpfQ8ErigdBUHomBzvG78JoVE8MJoQsb+qhZiHfKeNeEg==", + "version": "3.5.8", + "resolved": "https://registry.npmjs.org/@vue/compiler-core/-/compiler-core-3.5.8.tgz", + "integrity": "sha512-Uzlxp91EPjfbpeO5KtC0KnXPkuTfGsNDeaKQJxQN718uz+RqDYarEf7UhQJGK+ZYloD2taUbHTI2J4WrUaZQNA==", "dev": true, "license": "MIT", "dependencies": { - "@babel/parser": "^7.24.7", - "@vue/shared": "3.4.31", + "@babel/parser": "^7.25.3", + "@vue/shared": "3.5.8", "entities": "^4.5.0", "estree-walker": "^2.0.2", "source-map-js": "^1.2.0" } }, "node_modules/@vue/compiler-dom": { - "version": "3.4.31", - "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.4.31.tgz", - "integrity": "sha512-wK424WMXsG1IGMyDGyLqB+TbmEBFM78hIsOJ9QwUVLGrcSk0ak6zYty7Pj8ftm7nEtdU/DGQxAXp0/lM/2cEpQ==", + "version": "3.5.8", + "resolved": "https://registry.npmjs.org/@vue/compiler-dom/-/compiler-dom-3.5.8.tgz", + "integrity": "sha512-GUNHWvoDSbSa5ZSHT9SnV5WkStWfzJwwTd6NMGzilOE/HM5j+9EB9zGXdtu/fCNEmctBqMs6C9SvVPpVPuk1Eg==", "dev": true, "license": "MIT", "dependencies": { - "@vue/compiler-core": "3.4.31", - "@vue/shared": "3.4.31" + "@vue/compiler-core": "3.5.8", + "@vue/shared": "3.5.8" } }, "node_modules/@vue/compiler-sfc": { - "version": "3.4.31", - "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.4.31.tgz", - "integrity": "sha512-einJxqEw8IIJxzmnxmJBuK2usI+lJonl53foq+9etB2HAzlPjAS/wa7r0uUpXw5ByX3/0uswVSrjNb17vJm1kQ==", + "version": "3.5.8", + "resolved": "https://registry.npmjs.org/@vue/compiler-sfc/-/compiler-sfc-3.5.8.tgz", + "integrity": "sha512-taYpngQtSysrvO9GULaOSwcG5q821zCoIQBtQQSx7Uf7DxpR6CIHR90toPr9QfDD2mqHQPCSgoWBvJu0yV9zjg==", "dev": true, "license": "MIT", "dependencies": { - "@babel/parser": "^7.24.7", - "@vue/compiler-core": "3.4.31", - "@vue/compiler-dom": "3.4.31", - "@vue/compiler-ssr": "3.4.31", - "@vue/shared": "3.4.31", + "@babel/parser": "^7.25.3", + "@vue/compiler-core": "3.5.8", + "@vue/compiler-dom": "3.5.8", + "@vue/compiler-ssr": "3.5.8", + "@vue/shared": "3.5.8", "estree-walker": "^2.0.2", - "magic-string": "^0.30.10", - "postcss": "^8.4.38", + "magic-string": "^0.30.11", + "postcss": "^8.4.47", "source-map-js": "^1.2.0" } }, "node_modules/@vue/compiler-ssr": { - "version": "3.4.31", - "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.4.31.tgz", - "integrity": "sha512-RtefmITAje3fJ8FSg1gwgDhdKhZVntIVbwupdyZDSifZTRMiWxWehAOTCc8/KZDnBOcYQ4/9VWxsTbd3wT0hAA==", + "version": "3.5.8", + "resolved": "https://registry.npmjs.org/@vue/compiler-ssr/-/compiler-ssr-3.5.8.tgz", + "integrity": "sha512-W96PtryNsNG9u0ZnN5Q5j27Z/feGrFV6zy9q5tzJVyJaLiwYxvC0ek4IXClZygyhjm+XKM7WD9pdKi/wIRVC/Q==", "dev": true, "license": "MIT", "dependencies": { - "@vue/compiler-dom": "3.4.31", - "@vue/shared": "3.4.31" + "@vue/compiler-dom": "3.5.8", + "@vue/shared": "3.5.8" } }, "node_modules/@vue/devtools-api": { - "version": "6.6.3", - "resolved": "https://registry.npmjs.org/@vue/devtools-api/-/devtools-api-6.6.3.tgz", - "integrity": "sha512-0MiMsFma/HqA6g3KLKn+AGpL1kgKhFWszC9U29NfpWK5LE7bjeXxySWJrOJ77hBz+TBrBQ7o4QJqbPbqbs8rJw==", + "version": "7.4.6", + "resolved": "https://registry.npmjs.org/@vue/devtools-api/-/devtools-api-7.4.6.tgz", + "integrity": "sha512-XipBV5k0/IfTr0sNBDTg7OBUCp51cYMMXyPxLXJZ4K/wmUeMqt8cVdr2ZZGOFq+si/jTyCYnNxeKoyev5DOUUA==", "dev": true, - "license": "MIT" + "license": "MIT", + "dependencies": { + "@vue/devtools-kit": "^7.4.6" + } + }, + "node_modules/@vue/devtools-kit": { + "version": "7.4.6", + "resolved": "https://registry.npmjs.org/@vue/devtools-kit/-/devtools-kit-7.4.6.tgz", + "integrity": "sha512-NbYBwPWgEic1AOd9bWExz9weBzFdjiIfov0yRn4DrRfR+EQJCI9dn4I0XS7IxYGdkmUJi8mFW42LLk18WsGqew==", + "dev": true, + "license": "MIT", + "dependencies": { + "@vue/devtools-shared": "^7.4.6", + "birpc": "^0.2.17", + "hookable": "^5.5.3", + "mitt": "^3.0.1", + "perfect-debounce": "^1.0.0", + "speakingurl": "^14.0.1", + "superjson": "^2.2.1" + } + }, + "node_modules/@vue/devtools-shared": { + "version": "7.4.6", + "resolved": "https://registry.npmjs.org/@vue/devtools-shared/-/devtools-shared-7.4.6.tgz", + "integrity": "sha512-rPeSBzElnHYMB05Cc056BQiJpgocQjY8XVulgni+O9a9Gr9tNXgPteSzFFD+fT/iWMxNuUgGKs9CuW5DZewfIg==", + "dev": true, + "license": "MIT", + "dependencies": { + "rfdc": "^1.4.1" + } }, "node_modules/@vue/reactivity": { - "version": "3.4.31", - "resolved": "https://registry.npmjs.org/@vue/reactivity/-/reactivity-3.4.31.tgz", - "integrity": "sha512-VGkTani8SOoVkZNds1PfJ/T1SlAIOf8E58PGAhIOUDYPC4GAmFA2u/E14TDAFcf3vVDKunc4QqCe/SHr8xC65Q==", + "version": "3.5.8", + "resolved": "https://registry.npmjs.org/@vue/reactivity/-/reactivity-3.5.8.tgz", + "integrity": "sha512-mlgUyFHLCUZcAYkqvzYnlBRCh0t5ZQfLYit7nukn1GR96gc48Bp4B7OIcSfVSvlG1k3BPfD+p22gi1t2n9tsXg==", "dev": true, "license": "MIT", "dependencies": { - "@vue/shared": "3.4.31" + "@vue/shared": "3.5.8" } }, "node_modules/@vue/runtime-core": { - "version": "3.4.31", - "resolved": "https://registry.npmjs.org/@vue/runtime-core/-/runtime-core-3.4.31.tgz", - "integrity": "sha512-LDkztxeUPazxG/p8c5JDDKPfkCDBkkiNLVNf7XZIUnJ+66GVGkP+TIh34+8LtPisZ+HMWl2zqhIw0xN5MwU1cw==", + "version": "3.5.8", + "resolved": "https://registry.npmjs.org/@vue/runtime-core/-/runtime-core-3.5.8.tgz", + "integrity": "sha512-fJuPelh64agZ8vKkZgp5iCkPaEqFJsYzxLk9vSC0X3G8ppknclNDr61gDc45yBGTaN5Xqc1qZWU3/NoaBMHcjQ==", "dev": true, "license": "MIT", "dependencies": { - "@vue/reactivity": "3.4.31", - "@vue/shared": "3.4.31" + "@vue/reactivity": "3.5.8", + "@vue/shared": "3.5.8" } }, "node_modules/@vue/runtime-dom": { - "version": "3.4.31", - "resolved": "https://registry.npmjs.org/@vue/runtime-dom/-/runtime-dom-3.4.31.tgz", - "integrity": "sha512-2Auws3mB7+lHhTFCg8E9ZWopA6Q6L455EcU7bzcQ4x6Dn4cCPuqj6S2oBZgN2a8vJRS/LSYYxwFFq2Hlx3Fsaw==", + "version": "3.5.8", + "resolved": "https://registry.npmjs.org/@vue/runtime-dom/-/runtime-dom-3.5.8.tgz", + "integrity": "sha512-DpAUz+PKjTZPUOB6zJgkxVI3GuYc2iWZiNeeHQUw53kdrparSTG6HeXUrYDjaam8dVsCdvQxDz6ZWxnyjccUjQ==", "dev": true, "license": "MIT", "dependencies": { - "@vue/reactivity": "3.4.31", - "@vue/runtime-core": "3.4.31", - "@vue/shared": "3.4.31", + "@vue/reactivity": "3.5.8", + "@vue/runtime-core": "3.5.8", + "@vue/shared": "3.5.8", "csstype": "^3.1.3" } }, "node_modules/@vue/server-renderer": { - "version": "3.4.31", - "resolved": "https://registry.npmjs.org/@vue/server-renderer/-/server-renderer-3.4.31.tgz", - "integrity": "sha512-D5BLbdvrlR9PE3by9GaUp1gQXlCNadIZytMIb8H2h3FMWJd4oUfkUTEH2wAr3qxoRz25uxbTcbqd3WKlm9EHQA==", + "version": "3.5.8", + "resolved": "https://registry.npmjs.org/@vue/server-renderer/-/server-renderer-3.5.8.tgz", + "integrity": "sha512-7AmC9/mEeV9mmXNVyUIm1a1AjUhyeeGNbkLh39J00E7iPeGks8OGRB5blJiMmvqSh8SkaS7jkLWSpXtxUCeagA==", "dev": true, "license": "MIT", "dependencies": { - "@vue/compiler-ssr": "3.4.31", - "@vue/shared": "3.4.31" + "@vue/compiler-ssr": "3.5.8", + "@vue/shared": "3.5.8" }, "peerDependencies": { - "vue": "3.4.31" + "vue": "3.5.8" } }, "node_modules/@vue/shared": { - "version": "3.4.31", - "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.4.31.tgz", - "integrity": "sha512-Yp3wtJk//8cO4NItOPpi3QkLExAr/aLBGZMmTtW9WpdwBCJpRM6zj9WgWktXAl8IDIozwNMByT45JP3tO3ACWA==", + "version": "3.5.8", + "resolved": "https://registry.npmjs.org/@vue/shared/-/shared-3.5.8.tgz", + "integrity": "sha512-mJleSWbAGySd2RJdX1RBtcrUBX6snyOc0qHpgk3lGi4l9/P/3ny3ELqFWqYdkXIwwNN/kdm8nD9ky8o6l/Lx2A==", "dev": true, "license": "MIT" }, - "node_modules/@vuepress/bundler-vite": { - "version": "2.0.0-rc.14", - "resolved": "https://registry.npmjs.org/@vuepress/bundler-vite/-/bundler-vite-2.0.0-rc.14.tgz", - "integrity": "sha512-kttbowYITMCX3ztz78Qb6bMfXRv/GEpNu+nALksu7j/QJQ0gOzI2is68PatbmzZRWOufVsf1Zf0A8BwolmVcXA==", - "dev": true, - "license": "MIT", - "dependencies": { - "@vitejs/plugin-vue": "^5.0.5", - "@vuepress/client": "2.0.0-rc.14", - "@vuepress/core": "2.0.0-rc.14", - "@vuepress/shared": "2.0.0-rc.14", - "@vuepress/utils": "2.0.0-rc.14", - "autoprefixer": "^10.4.19", - "connect-history-api-fallback": "^2.0.0", - "postcss": "^8.4.38", - "postcss-load-config": "^6.0.1", - "rollup": "^4.18.0", - "vite": "~5.3.1", - "vue": "^3.4.29", - "vue-router": "^4.3.3" - } - }, - "node_modules/@vuepress/cli": { - "version": "2.0.0-rc.14", - "resolved": "https://registry.npmjs.org/@vuepress/cli/-/cli-2.0.0-rc.14.tgz", - "integrity": "sha512-oYJX1nE6/ohF2tzUtpBAFxRr4MF2kdtab3+AQ897esXzrciQnE2LxPQZ8BUOn6Jb3XYW12FXDdkHrr82rN6XnQ==", + "node_modules/@vueuse/core": { + "version": "11.1.0", + "resolved": "https://registry.npmjs.org/@vueuse/core/-/core-11.1.0.tgz", + "integrity": "sha512-P6dk79QYA6sKQnghrUz/1tHi0n9mrb/iO1WTMk/ElLmTyNqgDeSZ3wcDf6fRBGzRJbeG1dxzEOvLENMjr+E3fg==", "dev": true, "license": "MIT", "dependencies": { - "@vuepress/core": "2.0.0-rc.14", - "@vuepress/shared": "2.0.0-rc.14", - "@vuepress/utils": "2.0.0-rc.14", - "cac": "^6.7.14", - "chokidar": "^3.6.0", - "envinfo": "^7.13.0", - "esbuild": "~0.21.5" + "@types/web-bluetooth": "^0.0.20", + "@vueuse/metadata": "11.1.0", + "@vueuse/shared": "11.1.0", + "vue-demi": ">=0.14.10" }, - "bin": { - "vuepress-cli": "bin/vuepress.js" + "funding": { + "url": "https://github.com/sponsors/antfu" } }, - "node_modules/@vuepress/client": { - "version": "2.0.0-rc.14", - "resolved": "https://registry.npmjs.org/@vuepress/client/-/client-2.0.0-rc.14.tgz", - "integrity": "sha512-ULwxOiWoUi15HWQ6qH60gWjxSXB0797uExCUa4HgHV/8SpIqv4SHFn6jqjo7qCzOxuTqj1RT47JH3oWfUF4XPA==", + "node_modules/@vueuse/core/node_modules/vue-demi": { + "version": "0.14.10", + "resolved": "https://registry.npmjs.org/vue-demi/-/vue-demi-0.14.10.tgz", + "integrity": "sha512-nMZBOwuzabUO0nLgIcc6rycZEebF6eeUfaiQx9+WSk8e29IbLvPU9feI6tqW4kTo3hvoYAJkMh8n8D0fuISphg==", "dev": true, + "hasInstallScript": true, "license": "MIT", - "dependencies": { - "@vue/devtools-api": "^6.6.3", - "@vuepress/shared": "2.0.0-rc.14", - "vue": "^3.4.29", - "vue-router": "^4.3.3" + "bin": { + "vue-demi-fix": "bin/vue-demi-fix.js", + "vue-demi-switch": "bin/vue-demi-switch.js" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + }, + "peerDependencies": { + "@vue/composition-api": "^1.0.0-rc.1", + "vue": "^3.0.0-0 || ^2.6.0" + }, + "peerDependenciesMeta": { + "@vue/composition-api": { + "optional": true + } } }, - "node_modules/@vuepress/core": { - "version": "2.0.0-rc.14", - "resolved": "https://registry.npmjs.org/@vuepress/core/-/core-2.0.0-rc.14.tgz", - "integrity": "sha512-Ly3fypjXGUgPzjfbXKJeyd59jxJgXkhxhWAGkH/rRyQeV8Nr7Wo1ah3H1MeGhlCRGH1T9Yd3Bz9W7QMoyWFfmg==", + "node_modules/@vueuse/integrations": { + "version": "11.1.0", + "resolved": "https://registry.npmjs.org/@vueuse/integrations/-/integrations-11.1.0.tgz", + "integrity": "sha512-O2ZgrAGPy0qAjpoI2YR3egNgyEqwG85fxfwmA9BshRIGjV4G6yu6CfOPpMHAOoCD+UfsIl7Vb1bXJ6ifrHYDDA==", "dev": true, "license": "MIT", "dependencies": { - "@vuepress/client": "2.0.0-rc.14", - "@vuepress/markdown": "2.0.0-rc.14", - "@vuepress/shared": "2.0.0-rc.14", - "@vuepress/utils": "2.0.0-rc.14", - "vue": "^3.4.29" + "@vueuse/core": "11.1.0", + "@vueuse/shared": "11.1.0", + "vue-demi": ">=0.14.10" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" + }, + "peerDependencies": { + "async-validator": "^4", + "axios": "^1", + "change-case": "^5", + "drauu": "^0.4", + "focus-trap": "^7", + "fuse.js": "^7", + "idb-keyval": "^6", + "jwt-decode": "^4", + "nprogress": "^0.2", + "qrcode": "^1.5", + "sortablejs": "^1", + "universal-cookie": "^7" + }, + "peerDependenciesMeta": { + "async-validator": { + "optional": true + }, + "axios": { + "optional": true + }, + "change-case": { + "optional": true + }, + "drauu": { + "optional": true + }, + "focus-trap": { + "optional": true + }, + "fuse.js": { + "optional": true + }, + "idb-keyval": { + "optional": true + }, + "jwt-decode": { + "optional": true + }, + "nprogress": { + "optional": true + }, + "qrcode": { + "optional": true + }, + "sortablejs": { + "optional": true + }, + "universal-cookie": { + "optional": true + } } }, - "node_modules/@vuepress/helper": { - "version": "2.0.0-rc.37", - "resolved": "https://registry.npmjs.org/@vuepress/helper/-/helper-2.0.0-rc.37.tgz", - "integrity": "sha512-Sa2H6EqRuG0+521Z5WN7I8EQNwLwFe7U+1KtV01zFp2BcehsgD3EigBjBP7hl01ubb4T8wR7CxWv7cGVA4bPcw==", + "node_modules/@vueuse/integrations/node_modules/vue-demi": { + "version": "0.14.10", + "resolved": "https://registry.npmjs.org/vue-demi/-/vue-demi-0.14.10.tgz", + "integrity": "sha512-nMZBOwuzabUO0nLgIcc6rycZEebF6eeUfaiQx9+WSk8e29IbLvPU9feI6tqW4kTo3hvoYAJkMh8n8D0fuISphg==", "dev": true, + "hasInstallScript": true, "license": "MIT", - "dependencies": { - "@vue/shared": "^3.4.29", - "cheerio": "1.0.0-rc.12", - "fflate": "^0.8.2", - "gray-matter": "^4.0.3", - "vue": "^3.4.29" + "bin": { + "vue-demi-fix": "bin/vue-demi-fix.js", + "vue-demi-switch": "bin/vue-demi-switch.js" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" }, "peerDependencies": { - "vuepress": "2.0.0-rc.14" + "@vue/composition-api": "^1.0.0-rc.1", + "vue": "^3.0.0-0 || ^2.6.0" + }, + "peerDependenciesMeta": { + "@vue/composition-api": { + "optional": true + } } }, - "node_modules/@vuepress/highlighter-helper": { - "version": "2.0.0-rc.37", - "resolved": "https://registry.npmjs.org/@vuepress/highlighter-helper/-/highlighter-helper-2.0.0-rc.37.tgz", - "integrity": "sha512-l7qxuJJP0+zxDd42UctS0Oc240cCN7BvxfEx6XJfaYmn2Yncrbbk15gS9tUT3jeXB959JGm8uUhxpPP0/4w3kw==", + "node_modules/@vueuse/metadata": { + "version": "11.1.0", + "resolved": "https://registry.npmjs.org/@vueuse/metadata/-/metadata-11.1.0.tgz", + "integrity": "sha512-l9Q502TBTaPYGanl1G+hPgd3QX5s4CGnpXriVBR5fEZ/goI6fvDaVmIl3Td8oKFurOxTmbXvBPSsgrd6eu6HYg==", "dev": true, "license": "MIT", - "peerDependencies": { - "vuepress": "2.0.0-rc.14" + "funding": { + "url": "https://github.com/sponsors/antfu" } }, - "node_modules/@vuepress/markdown": { - "version": "2.0.0-rc.14", - "resolved": "https://registry.npmjs.org/@vuepress/markdown/-/markdown-2.0.0-rc.14.tgz", - "integrity": "sha512-9xr693gkp71qwEbQLxpo1ybhJ+lA2k5SiuFUgqqrmR2a8CSL3gcmKEGM+y7GMnHvL63U2dYlc9pUOtJ5rG9O0Q==", + "node_modules/@vueuse/shared": { + "version": "11.1.0", + "resolved": "https://registry.npmjs.org/@vueuse/shared/-/shared-11.1.0.tgz", + "integrity": "sha512-YUtIpY122q7osj+zsNMFAfMTubGz0sn5QzE5gPzAIiCmtt2ha3uQUY1+JPyL4gRCTsLPX82Y9brNbo/aqlA91w==", "dev": true, "license": "MIT", "dependencies": { - "@mdit-vue/plugin-component": "^2.1.3", - "@mdit-vue/plugin-frontmatter": "^2.1.3", - "@mdit-vue/plugin-headers": "^2.1.3", - "@mdit-vue/plugin-sfc": "^2.1.3", - "@mdit-vue/plugin-title": "^2.1.3", - "@mdit-vue/plugin-toc": "^2.1.3", - "@mdit-vue/shared": "^2.1.3", - "@mdit-vue/types": "^2.1.0", - "@types/markdown-it": "^14.1.1", - "@types/markdown-it-emoji": "^3.0.1", - "@vuepress/shared": "2.0.0-rc.14", - "@vuepress/utils": "2.0.0-rc.14", - "markdown-it": "^14.1.0", - "markdown-it-anchor": "^9.0.1", - "markdown-it-emoji": "^3.0.0", - "mdurl": "^2.0.0" + "vue-demi": ">=0.14.10" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" } }, - "node_modules/@vuepress/plugin-active-header-links": { - "version": "2.0.0-rc.37", - "resolved": "https://registry.npmjs.org/@vuepress/plugin-active-header-links/-/plugin-active-header-links-2.0.0-rc.37.tgz", - "integrity": "sha512-VLM0JXgdShRAR38smp/M72sctDIVPgW4E+fBpGaP4iG+JOywXbLp5MfiO/r1ww62k7LXRI8g8/hYjlhyeMGnEg==", + "node_modules/@vueuse/shared/node_modules/vue-demi": { + "version": "0.14.10", + "resolved": "https://registry.npmjs.org/vue-demi/-/vue-demi-0.14.10.tgz", + "integrity": "sha512-nMZBOwuzabUO0nLgIcc6rycZEebF6eeUfaiQx9+WSk8e29IbLvPU9feI6tqW4kTo3hvoYAJkMh8n8D0fuISphg==", "dev": true, + "hasInstallScript": true, "license": "MIT", - "dependencies": { - "@vueuse/core": "^10.11.0", - "vue": "^3.4.29" + "bin": { + "vue-demi-fix": "bin/vue-demi-fix.js", + "vue-demi-switch": "bin/vue-demi-switch.js" + }, + "engines": { + "node": ">=12" + }, + "funding": { + "url": "https://github.com/sponsors/antfu" }, "peerDependencies": { - "vuepress": "2.0.0-rc.14" + "@vue/composition-api": "^1.0.0-rc.1", + "vue": "^3.0.0-0 || ^2.6.0" + }, + "peerDependenciesMeta": { + "@vue/composition-api": { + "optional": true + } } }, - "node_modules/@vuepress/plugin-back-to-top": { - "version": "2.0.0-rc.37", - "resolved": "https://registry.npmjs.org/@vuepress/plugin-back-to-top/-/plugin-back-to-top-2.0.0-rc.37.tgz", - "integrity": "sha512-R9rAXZCYdnBADvcbY2V4xtGOHS11mAIV98MbpixP1CYGaRdOGMcp4oJwfsGqwE1Iyi/nBgBaVFHexyQFkx7Rag==", + "node_modules/algoliasearch": { + "version": "4.24.0", + "resolved": "https://registry.npmjs.org/algoliasearch/-/algoliasearch-4.24.0.tgz", + "integrity": "sha512-bf0QV/9jVejssFBmz2HQLxUadxk574t4iwjCKp5E7NBzwKkrDEhKPISIIjAU/p6K5qDx3qoeh4+26zWN1jmw3g==", "dev": true, "license": "MIT", "dependencies": { - "@vuepress/helper": "2.0.0-rc.37", - "@vueuse/core": "^10.11.0", - "vue": "^3.4.29" - }, - "peerDependencies": { - "vuepress": "2.0.0-rc.14" + "@algolia/cache-browser-local-storage": "4.24.0", + "@algolia/cache-common": "4.24.0", + "@algolia/cache-in-memory": "4.24.0", + "@algolia/client-account": "4.24.0", + "@algolia/client-analytics": "4.24.0", + "@algolia/client-common": "4.24.0", + "@algolia/client-personalization": "4.24.0", + "@algolia/client-search": "4.24.0", + "@algolia/logger-common": "4.24.0", + "@algolia/logger-console": "4.24.0", + "@algolia/recommend": "4.24.0", + "@algolia/requester-browser-xhr": "4.24.0", + "@algolia/requester-common": "4.24.0", + "@algolia/requester-node-http": "4.24.0", + "@algolia/transporter": "4.24.0" } }, - "node_modules/@vuepress/plugin-copy-code": { - "version": "2.0.0-rc.37", - "resolved": "https://registry.npmjs.org/@vuepress/plugin-copy-code/-/plugin-copy-code-2.0.0-rc.37.tgz", - "integrity": "sha512-Z8rvn3n+SsEUmyoR2rYo/AYUPbOsJravtVh4COVqc40FT6gxlZPLlUcr4XV4Nh0ja87oZn/FubbZMkWfU8MyOA==", + "node_modules/algoliasearch/node_modules/@algolia/client-common": { + "version": "4.24.0", + "resolved": "https://registry.npmjs.org/@algolia/client-common/-/client-common-4.24.0.tgz", + "integrity": "sha512-bc2ROsNL6w6rqpl5jj/UywlIYC21TwSSoFHKl01lYirGMW+9Eek6r02Tocg4gZ8HAw3iBvu6XQiM3BEbmEMoiA==", "dev": true, "license": "MIT", "dependencies": { - "@vuepress/helper": "2.0.0-rc.37", - "@vueuse/core": "^10.11.0", - "vue": "^3.4.29" - }, - "peerDependencies": { - "vuepress": "2.0.0-rc.14" + "@algolia/requester-common": "4.24.0", + "@algolia/transporter": "4.24.0" } }, - "node_modules/@vuepress/plugin-git": { - "version": "2.0.0-rc.37", - "resolved": "https://registry.npmjs.org/@vuepress/plugin-git/-/plugin-git-2.0.0-rc.37.tgz", - "integrity": "sha512-+p+EkcWsoErJXKdVZQBfazJ6Q8YFRXXjfDrb1qUSF5wCUfC7QgD6Vsgt5MmB9YZjbhj1Yf/xeZcDVB6qz8B+GA==", + "node_modules/algoliasearch/node_modules/@algolia/client-search": { + "version": "4.24.0", + "resolved": "https://registry.npmjs.org/@algolia/client-search/-/client-search-4.24.0.tgz", + "integrity": "sha512-uRW6EpNapmLAD0mW47OXqTP8eiIx5F6qN9/x/7HHO6owL3N1IXqydGwW5nhDFBrV+ldouro2W1VX3XlcUXEFCA==", "dev": true, "license": "MIT", "dependencies": { - "execa": "^9.2.0" - }, - "peerDependencies": { - "vuepress": "2.0.0-rc.14" + "@algolia/client-common": "4.24.0", + "@algolia/requester-common": "4.24.0", + "@algolia/transporter": "4.24.0" } }, - "node_modules/@vuepress/plugin-google-analytics": { - "version": "2.0.0-rc.37", - "resolved": "https://registry.npmjs.org/@vuepress/plugin-google-analytics/-/plugin-google-analytics-2.0.0-rc.37.tgz", - "integrity": "sha512-NgI8VN9h+BoCEhkOHhYZFRurFmeBKjb+TiLALqlvVJ7cn3XmGVliHDBEWTbbNImp3kEZhKzw0y37muzFQ0Rbfg==", - "dev": true, - "license": "MIT", - "peerDependencies": { - "vuepress": "2.0.0-rc.14" - } - }, - "node_modules/@vuepress/plugin-links-check": { - "version": "2.0.0-rc.37", - "resolved": "https://registry.npmjs.org/@vuepress/plugin-links-check/-/plugin-links-check-2.0.0-rc.37.tgz", - "integrity": "sha512-9YelTHKFKADKmSdGxEVyF5LE6r9rg95ia695tQ695n/ov+2/iC0Ez6Kc0ceaqdaCPMq8Q5OsLAh2/hC2N/H15Q==", + "node_modules/algoliasearch/node_modules/@algolia/requester-browser-xhr": { + "version": "4.24.0", + "resolved": "https://registry.npmjs.org/@algolia/requester-browser-xhr/-/requester-browser-xhr-4.24.0.tgz", + "integrity": "sha512-Z2NxZMb6+nVXSjF13YpjYTdvV3032YTBSGm2vnYvYPA6mMxzM3v5rsCiSspndn9rzIW4Qp1lPHBvuoKJV6jnAA==", "dev": true, "license": "MIT", "dependencies": { - "@vuepress/helper": "2.0.0-rc.37" - }, - "peerDependencies": { - "vuepress": "2.0.0-rc.14" + "@algolia/requester-common": "4.24.0" } }, - "node_modules/@vuepress/plugin-markdown-container": { - "version": "2.0.0-rc.37", - "resolved": "https://registry.npmjs.org/@vuepress/plugin-markdown-container/-/plugin-markdown-container-2.0.0-rc.37.tgz", - "integrity": "sha512-o/jL/uHQ2U0x0crtODh2n4S51yG4BBmHw7DWrolP6e0FN6/PoQVsBenau5700c2iuouAfdrJ6G+tRbCrOx5ZjA==", + "node_modules/algoliasearch/node_modules/@algolia/requester-node-http": { + "version": "4.24.0", + "resolved": "https://registry.npmjs.org/@algolia/requester-node-http/-/requester-node-http-4.24.0.tgz", + "integrity": "sha512-JF18yTjNOVYvU/L3UosRcvbPMGT9B+/GQWNWnenIImglzNVGpyzChkXLnrSf6uxwVNO6ESGu6oN8MqcGQcjQJw==", "dev": true, "license": "MIT", "dependencies": { - "@types/markdown-it": "^14.1.1", - "markdown-it-container": "^4.0.0" - }, - "peerDependencies": { - "vuepress": "2.0.0-rc.14" + "@algolia/requester-common": "4.24.0" } }, - "node_modules/@vuepress/plugin-medium-zoom": { - "version": "2.0.0-rc.37", - "resolved": "https://registry.npmjs.org/@vuepress/plugin-medium-zoom/-/plugin-medium-zoom-2.0.0-rc.37.tgz", - "integrity": "sha512-s4AYQgWlXinmapYas+psmttWMIyUedi06bGcPVoXSHIoMsM74glr385xQtKSGp6V7F2CykGchYGeRyfGXG4OKQ==", + "node_modules/birpc": { + "version": "0.2.17", + "resolved": "https://registry.npmjs.org/birpc/-/birpc-0.2.17.tgz", + "integrity": "sha512-+hkTxhot+dWsLpp3gia5AkVHIsKlZybNT5gIYiDlNzJrmYPcTM9k5/w2uaj3IPpd7LlEYpmCj4Jj1nC41VhDFg==", "dev": true, "license": "MIT", - "dependencies": { - "@vuepress/helper": "2.0.0-rc.37", - "medium-zoom": "^1.1.0", - "vue": "^3.4.29" - }, - "peerDependencies": { - "vuepress": "2.0.0-rc.14" + "funding": { + "url": "https://github.com/sponsors/antfu" } }, - "node_modules/@vuepress/plugin-nprogress": { - "version": "2.0.0-rc.37", - "resolved": "https://registry.npmjs.org/@vuepress/plugin-nprogress/-/plugin-nprogress-2.0.0-rc.37.tgz", - "integrity": "sha512-HEv6AzAG3U7Q5cAkeuQhMV2JhASB/2veTQ85OHNyWUzZ5yTC/Kx5PfQOb87X6LWK51eZA5vImibeZbFJ1mkE3g==", + "node_modules/ccount": { + "version": "2.0.1", + "resolved": "https://registry.npmjs.org/ccount/-/ccount-2.0.1.tgz", + "integrity": "sha512-eyrF0jiFpY+3drT6383f1qhkbGsLSifNAjA61IUjZjmLCWjItY6LB9ft9YhoDgwfmclB2zhu51Lc7+95b8NRAg==", "dev": true, "license": "MIT", - "dependencies": { - "vue": "^3.4.29" - }, - "peerDependencies": { - "vuepress": "2.0.0-rc.14" + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" } }, - "node_modules/@vuepress/plugin-palette": { - "version": "2.0.0-rc.37", - "resolved": "https://registry.npmjs.org/@vuepress/plugin-palette/-/plugin-palette-2.0.0-rc.37.tgz", - "integrity": "sha512-wzsywEeZFHOcRITIff1SC0jXsMasze3t0d9gc0cp5iB/OW3bEdhes4mFmPtZZmWfnlmgajq/7uTEavEXVWJTIA==", + "node_modules/character-entities-html4": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/character-entities-html4/-/character-entities-html4-2.1.0.tgz", + "integrity": "sha512-1v7fgQRj6hnSwFpq1Eu0ynr/CDEw0rXo2B61qXrLNdHZmPKgb7fqS1a2JwF0rISo9q77jDI8VMEHoApn8qDoZA==", "dev": true, "license": "MIT", - "dependencies": { - "chokidar": "^3.6.0" - }, - "peerDependencies": { - "vuepress": "2.0.0-rc.14" + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" } }, - "node_modules/@vuepress/plugin-prismjs": { - "version": "2.0.0-rc.37", - "resolved": "https://registry.npmjs.org/@vuepress/plugin-prismjs/-/plugin-prismjs-2.0.0-rc.37.tgz", - "integrity": "sha512-39m6oYZzW0XqwtyTI1QEidQ7GIQAKQZG7q+VXO1E5ZURWh6YepjSodA+zgxhIAFcNx69NR77EaSp2WBO10sdZQ==", + "node_modules/character-entities-legacy": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/character-entities-legacy/-/character-entities-legacy-3.0.0.tgz", + "integrity": "sha512-RpPp0asT/6ufRm//AJVwpViZbGM/MkjQFxJccQRHmISF/22NBtsHqAWmL+/pmkPWoIUJdWyeVleTl1wydHATVQ==", "dev": true, "license": "MIT", - "dependencies": { - "@vuepress/highlighter-helper": "2.0.0-rc.37", - "prismjs": "^1.29.0" - }, - "peerDependencies": { - "vuepress": "2.0.0-rc.14" + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" } }, - "node_modules/@vuepress/plugin-search": { - "version": "2.0.0-rc.37", - "resolved": "https://registry.npmjs.org/@vuepress/plugin-search/-/plugin-search-2.0.0-rc.37.tgz", - "integrity": "sha512-shFojdAi8Jj+/4w8Sgnl8UxssOWd/8HMF/5RGqa3rgKxNiCCzndLag8OJmRE1xbMnkdKvtPlA0UoOgG9qDom9g==", + "node_modules/comma-separated-tokens": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/comma-separated-tokens/-/comma-separated-tokens-2.0.3.tgz", + "integrity": "sha512-Fu4hJdvzeylCfQPp9SGWidpzrMs7tTrlu6Vb8XGaRGck8QSNZJJp538Wrb60Lax4fPwR64ViY468OIUTbRlGZg==", "dev": true, "license": "MIT", - "dependencies": { - "chokidar": "^3.6.0", - "vue": "^3.4.29" - }, - "peerDependencies": { - "vuepress": "2.0.0-rc.14" + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" } }, - "node_modules/@vuepress/plugin-seo": { - "version": "2.0.0-rc.37", - "resolved": "https://registry.npmjs.org/@vuepress/plugin-seo/-/plugin-seo-2.0.0-rc.37.tgz", - "integrity": "sha512-H6bM4jYKwFABP/JGocDC7CD5SACMdFf9rE5lci5/VYJybvBr5XXDXHXk9KSy01jupPjmAjsGp5Fzqk2ggeqQIQ==", + "node_modules/copy-anything": { + "version": "3.0.5", + "resolved": "https://registry.npmjs.org/copy-anything/-/copy-anything-3.0.5.tgz", + "integrity": "sha512-yCEafptTtb4bk7GLEQoM8KVJpxAfdBJYaXyzQEgQQQgYrZiDp8SJmGKlYza6CYjEDNstAdNdKA3UuoULlEbS6w==", "dev": true, "license": "MIT", "dependencies": { - "@vuepress/helper": "2.0.0-rc.37" + "is-what": "^4.1.8" }, - "peerDependencies": { - "vuepress": "2.0.0-rc.14" - } - }, - "node_modules/@vuepress/plugin-sitemap": { - "version": "2.0.0-rc.37", - "resolved": "https://registry.npmjs.org/@vuepress/plugin-sitemap/-/plugin-sitemap-2.0.0-rc.37.tgz", - "integrity": "sha512-mL9aKIkiSEJizVcsreY7O+FZmTT/coV4iR2P5OQ5oyXbcByMN+omirsupHBHsWl2zH/EZe2FklByDEDUPpg3MQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "@vuepress/helper": "2.0.0-rc.37", - "sitemap": "^8.0.0" + "engines": { + "node": ">=12.13" }, - "peerDependencies": { - "vuepress": "2.0.0-rc.14" + "funding": { + "url": "https://github.com/sponsors/mesqueeb" } }, - "node_modules/@vuepress/plugin-theme-data": { - "version": "2.0.0-rc.37", - "resolved": "https://registry.npmjs.org/@vuepress/plugin-theme-data/-/plugin-theme-data-2.0.0-rc.37.tgz", - "integrity": "sha512-xzdYyScZcS5aDbk/2bQAuEofe6wqgtX2Y/6SUqsGlV4A59D+xIfPbNUZhO0gbUX//ofYGaxgKQps0OrvPkwMVg==", + "node_modules/csstype": { + "version": "3.1.3", + "resolved": "https://registry.npmjs.org/csstype/-/csstype-3.1.3.tgz", + "integrity": "sha512-M1uQkMl8rQK/szD0LNhtqxIPLpimGm8sOBwU7lLnCpSbTyY3yeU1Vc7l4KT5zT4s/yOxHH5O7tIuuLOCnLADRw==", "dev": true, - "license": "MIT", - "dependencies": { - "@vue/devtools-api": "^6.6.3", - "vue": "^3.4.29" - }, - "peerDependencies": { - "vuepress": "2.0.0-rc.14" - } + "license": "MIT" }, - "node_modules/@vuepress/shared": { - "version": "2.0.0-rc.14", - "resolved": "https://registry.npmjs.org/@vuepress/shared/-/shared-2.0.0-rc.14.tgz", - "integrity": "sha512-VDDnPpz4x1Q07richcVRGbc4qc2RG/6bKoEYSImofTFzvdmHer538ouv8kD2SNU10UrSOpxxUiphnhlhNIe03A==", + "node_modules/dequal": { + "version": "2.0.3", + "resolved": "https://registry.npmjs.org/dequal/-/dequal-2.0.3.tgz", + "integrity": "sha512-0je+qPKHEMohvfRTCEo3CrPG6cAzAYgmzKyxRiYSSDkS6eGJdyVJm7WaYA5ECaAD9wLB2T4EEeymA5aFVcYXCA==", "dev": true, "license": "MIT", - "dependencies": { - "@mdit-vue/types": "^2.1.0" + "engines": { + "node": ">=6" } }, - "node_modules/@vuepress/theme-default": { - "version": "2.0.0-rc.37", - "resolved": "https://registry.npmjs.org/@vuepress/theme-default/-/theme-default-2.0.0-rc.37.tgz", - "integrity": "sha512-wgAZCLJ9yw+fRGtohGFQ0ltdqdhPoTw7DyEgHl3eI12ScVY7H+ZosgWXSczb+ks8IXY0Gw1+VNK/L1al5naYHg==", + "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==", "dev": true, "license": "MIT", "dependencies": { - "@vuepress/helper": "2.0.0-rc.37", - "@vuepress/plugin-active-header-links": "2.0.0-rc.37", - "@vuepress/plugin-back-to-top": "2.0.0-rc.37", - "@vuepress/plugin-copy-code": "2.0.0-rc.37", - "@vuepress/plugin-git": "2.0.0-rc.37", - "@vuepress/plugin-links-check": "2.0.0-rc.37", - "@vuepress/plugin-markdown-container": "2.0.0-rc.37", - "@vuepress/plugin-medium-zoom": "2.0.0-rc.37", - "@vuepress/plugin-nprogress": "2.0.0-rc.37", - "@vuepress/plugin-palette": "2.0.0-rc.37", - "@vuepress/plugin-prismjs": "2.0.0-rc.37", - "@vuepress/plugin-seo": "2.0.0-rc.37", - "@vuepress/plugin-sitemap": "2.0.0-rc.37", - "@vuepress/plugin-theme-data": "2.0.0-rc.37", - "@vueuse/core": "^10.11.0", - "sass": "^1.77.6", - "vue": "^3.4.29" + "dequal": "^2.0.0" }, - "peerDependencies": { - "sass-loader": "^14.0.0", - "vuepress": "2.0.0-rc.14" - }, - "peerDependenciesMeta": { - "sass-loader": { - "optional": true - } - } - }, - "node_modules/@vuepress/utils": { - "version": "2.0.0-rc.14", - "resolved": "https://registry.npmjs.org/@vuepress/utils/-/utils-2.0.0-rc.14.tgz", - "integrity": "sha512-1h/5qcKBeIhIg6SZM2IoZVOaIdFSeQ1CdEWadqQWy1uwupEeVrU3QPkjFyn0vUt0O/EuuVqQcLLC8OuS/wldNw==", - "dev": true, - "license": "MIT", - "dependencies": { - "@types/debug": "^4.1.12", - "@types/fs-extra": "^11.0.4", - "@types/hash-sum": "^1.0.2", - "@vuepress/shared": "2.0.0-rc.14", - "debug": "^4.3.5", - "fs-extra": "^11.2.0", - "globby": "^14.0.1", - "hash-sum": "^2.0.0", - "ora": "^8.0.1", - "picocolors": "^1.0.1", - "upath": "^2.0.1" + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" } }, - "node_modules/@vueuse/core": { - "version": "10.11.0", - "resolved": "https://registry.npmjs.org/@vueuse/core/-/core-10.11.0.tgz", - "integrity": "sha512-x3sD4Mkm7PJ+pcq3HX8PLPBadXCAlSDR/waK87dz0gQE+qJnaaFhc/dZVfJz+IUYzTMVGum2QlR7ImiJQN4s6g==", + "node_modules/entities": { + "version": "4.5.0", + "resolved": "https://registry.npmjs.org/entities/-/entities-4.5.0.tgz", + "integrity": "sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw==", "dev": true, - "license": "MIT", - "dependencies": { - "@types/web-bluetooth": "^0.0.20", - "@vueuse/metadata": "10.11.0", - "@vueuse/shared": "10.11.0", - "vue-demi": ">=0.14.8" + "license": "BSD-2-Clause", + "engines": { + "node": ">=0.12" }, "funding": { - "url": "https://github.com/sponsors/antfu" + "url": "https://github.com/fb55/entities?sponsor=1" } }, - "node_modules/@vueuse/core/node_modules/vue-demi": { - "version": "0.14.8", - "resolved": "https://registry.npmjs.org/vue-demi/-/vue-demi-0.14.8.tgz", - "integrity": "sha512-Uuqnk9YE9SsWeReYqK2alDI5YzciATE0r2SkA6iMAtuXvNTMNACJLJEXNXaEy94ECuBe4Sk6RzRU80kjdbIo1Q==", + "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==", "dev": true, "hasInstallScript": true, "license": "MIT", "bin": { - "vue-demi-fix": "bin/vue-demi-fix.js", - "vue-demi-switch": "bin/vue-demi-switch.js" + "esbuild": "bin/esbuild" }, "engines": { "node": ">=12" }, - "funding": { - "url": "https://github.com/sponsors/antfu" - }, - "peerDependencies": { - "@vue/composition-api": "^1.0.0-rc.1", - "vue": "^3.0.0-0 || ^2.6.0" - }, - "peerDependenciesMeta": { - "@vue/composition-api": { - "optional": true - } + "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/@vueuse/metadata": { - "version": "10.11.0", - "resolved": "https://registry.npmjs.org/@vueuse/metadata/-/metadata-10.11.0.tgz", - "integrity": "sha512-kQX7l6l8dVWNqlqyN3ePW3KmjCQO3ZMgXuBMddIu83CmucrsBfXlH+JoviYyRBws/yLTQO8g3Pbw+bdIoVm4oQ==", + "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", - "funding": { - "url": "https://github.com/sponsors/antfu" - } + "license": "MIT" }, - "node_modules/@vueuse/shared": { - "version": "10.11.0", - "resolved": "https://registry.npmjs.org/@vueuse/shared/-/shared-10.11.0.tgz", - "integrity": "sha512-fyNoIXEq3PfX1L3NkNhtVQUSRtqYwJtJg+Bp9rIzculIZWHTkKSysujrOk2J+NrRulLTQH9+3gGSfYLWSEWU1A==", + "node_modules/focus-trap": { + "version": "7.6.0", + "resolved": "https://registry.npmjs.org/focus-trap/-/focus-trap-7.6.0.tgz", + "integrity": "sha512-1td0l3pMkWJLFipobUcGaf+5DTY4PLDDrcqoSaKP8ediO/CoWCCYk/fT/Y2A4e6TNB+Sh6clRJCjOPPnKoNHnQ==", "dev": true, "license": "MIT", "dependencies": { - "vue-demi": ">=0.14.8" - }, - "funding": { - "url": "https://github.com/sponsors/antfu" + "tabbable": "^6.2.0" } }, - "node_modules/@vueuse/shared/node_modules/vue-demi": { - "version": "0.14.8", - "resolved": "https://registry.npmjs.org/vue-demi/-/vue-demi-0.14.8.tgz", - "integrity": "sha512-Uuqnk9YE9SsWeReYqK2alDI5YzciATE0r2SkA6iMAtuXvNTMNACJLJEXNXaEy94ECuBe4Sk6RzRU80kjdbIo1Q==", + "node_modules/fsevents": { + "version": "2.3.3", + "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz", + "integrity": "sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==", "dev": true, "hasInstallScript": true, "license": "MIT", - "bin": { - "vue-demi-fix": "bin/vue-demi-fix.js", - "vue-demi-switch": "bin/vue-demi-switch.js" - }, + "optional": true, + "os": [ + "darwin" + ], "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/antfu" - }, - "peerDependencies": { - "@vue/composition-api": "^1.0.0-rc.1", - "vue": "^3.0.0-0 || ^2.6.0" - }, - "peerDependenciesMeta": { - "@vue/composition-api": { - "optional": true - } + "node": "^8.16.0 || ^10.6.0 || >=11.0.0" } }, - "node_modules/ansi-regex": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/ansi-regex/-/ansi-regex-6.0.1.tgz", - "integrity": "sha512-n5M855fKb2SsfMIiFFoVrABHJC8QtHwVx+mHWP3QcEqBHYienj5dHSgjbxtC0WEZXYt4wcD6zrQElDPhFuZgfA==", + "node_modules/hast-util-to-html": { + "version": "9.0.3", + "resolved": "https://registry.npmjs.org/hast-util-to-html/-/hast-util-to-html-9.0.3.tgz", + "integrity": "sha512-M17uBDzMJ9RPCqLMO92gNNUDuBSq10a25SDBI08iCCxmorf4Yy6sYHK57n9WAbRAAaU+DuR4W6GN9K4DFZesYg==", "dev": true, "license": "MIT", - "engines": { - "node": ">=12" + "dependencies": { + "@types/hast": "^3.0.0", + "@types/unist": "^3.0.0", + "ccount": "^2.0.0", + "comma-separated-tokens": "^2.0.0", + "hast-util-whitespace": "^3.0.0", + "html-void-elements": "^3.0.0", + "mdast-util-to-hast": "^13.0.0", + "property-information": "^6.0.0", + "space-separated-tokens": "^2.0.0", + "stringify-entities": "^4.0.0", + "zwitch": "^2.0.4" }, "funding": { - "url": "https://github.com/chalk/ansi-regex?sponsor=1" + "type": "opencollective", + "url": "https://opencollective.com/unified" } }, - "node_modules/anymatch": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/anymatch/-/anymatch-3.1.3.tgz", - "integrity": "sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==", + "node_modules/hast-util-whitespace": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/hast-util-whitespace/-/hast-util-whitespace-3.0.0.tgz", + "integrity": "sha512-88JUN06ipLwsnv+dVn+OIYOvAuvBMy/Qoi6O7mQHxdPXpjy+Cd6xRkWwux7DKO+4sYILtLBRIKgsdpS2gQc7qw==", "dev": true, - "license": "ISC", + "license": "MIT", "dependencies": { - "normalize-path": "^3.0.0", - "picomatch": "^2.0.4" + "@types/hast": "^3.0.0" }, - "engines": { - "node": ">= 8" + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" } }, - "node_modules/arg": { - "version": "5.0.2", - "resolved": "https://registry.npmjs.org/arg/-/arg-5.0.2.tgz", - "integrity": "sha512-PYjyFOLKQ9y57JvQ6QLo8dAgNqswh8M1RMJYdQduT6xbWSgK36P/Z/v+p888pM69jMMfS8Xd8F6I1kQ/I9HUGg==", + "node_modules/hookable": { + "version": "5.5.3", + "resolved": "https://registry.npmjs.org/hookable/-/hookable-5.5.3.tgz", + "integrity": "sha512-Yc+BQe8SvoXH1643Qez1zqLRmbA5rCL+sSmk6TVos0LWVfNIB7PGncdlId77WzLGSIB5KaWgTaNTs2lNVEI6VQ==", "dev": true, "license": "MIT" }, - "node_modules/argparse": { - "version": "1.0.10", - "resolved": "https://registry.npmjs.org/argparse/-/argparse-1.0.10.tgz", - "integrity": "sha512-o5Roy6tNG4SL/FOkCAN6RzjiakZS25RLYFrcMttJqbdd8BWrnA+fGz57iN5Pb06pvBGvl5gQ0B48dJlslXvoTg==", + "node_modules/html-void-elements": { + "version": "3.0.0", + "resolved": "https://registry.npmjs.org/html-void-elements/-/html-void-elements-3.0.0.tgz", + "integrity": "sha512-bEqo66MRXsUGxWHV5IP0PUiAWwoEjba4VCzg0LjFJBpchPaTfyfCKTG6bc5F8ucKec3q5y6qOdGyYTSBEvhCrg==", "dev": true, "license": "MIT", - "dependencies": { - "sprintf-js": "~1.0.2" + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" } }, - "node_modules/autoprefixer": { - "version": "10.4.19", - "resolved": "https://registry.npmjs.org/autoprefixer/-/autoprefixer-10.4.19.tgz", - "integrity": "sha512-BaENR2+zBZ8xXhM4pUaKUxlVdxZ0EZhjvbopwnXmxRUfqDmwSpC2lAi/QXvx7NRdPCo1WKEcEF6mV64si1z4Ew==", + "node_modules/is-what": { + "version": "4.1.16", + "resolved": "https://registry.npmjs.org/is-what/-/is-what-4.1.16.tgz", + "integrity": "sha512-ZhMwEosbFJkA0YhFnNDgTM4ZxDRsS6HqTo7qsZM08fehyRYIYa0yHu5R6mgo1n/8MgaPBXiPimPD77baVFYg+A==", "dev": true, - "funding": [ - { - "type": "opencollective", - "url": "https://opencollective.com/postcss/" - }, - { - "type": "tidelift", - "url": "https://tidelift.com/funding/github/npm/autoprefixer" - }, - { - "type": "github", - "url": "https://github.com/sponsors/ai" - } - ], "license": "MIT", - "dependencies": { - "browserslist": "^4.23.0", - "caniuse-lite": "^1.0.30001599", - "fraction.js": "^4.3.7", - "normalize-range": "^0.1.2", - "picocolors": "^1.0.0", - "postcss-value-parser": "^4.2.0" - }, - "bin": { - "autoprefixer": "bin/autoprefixer" - }, "engines": { - "node": "^10 || ^12 || >=14" + "node": ">=12.13" }, - "peerDependencies": { - "postcss": "^8.1.0" + "funding": { + "url": "https://github.com/sponsors/mesqueeb" } }, - "node_modules/binary-extensions": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/binary-extensions/-/binary-extensions-2.3.0.tgz", - "integrity": "sha512-Ceh+7ox5qe7LJuLHoY0feh3pHuUDHAcRUeyL2VYghZwfpkNIy/+8Ocg0a3UuSoYzavmylwuLWQOf3hl0jjMMIw==", + "node_modules/magic-string": { + "version": "0.30.11", + "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.30.11.tgz", + "integrity": "sha512-+Wri9p0QHMy+545hKww7YAu5NyzF8iomPL/RQazugQ9+Ez4Ic3mERMd8ZTX5rfK944j+560ZJi8iAwgak1Ac7A==", "dev": true, "license": "MIT", - "engines": { - "node": ">=8" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "dependencies": { + "@jridgewell/sourcemap-codec": "^1.5.0" } }, - "node_modules/boolbase": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/boolbase/-/boolbase-1.0.0.tgz", - "integrity": "sha512-JZOSA7Mo9sNGB8+UjSgzdLtokWAky1zbztM3WRLCbZ70/3cTANmQmOdR7y2g+J0e2WXywy1yS468tY+IruqEww==", + "node_modules/mark.js": { + "version": "8.11.1", + "resolved": "https://registry.npmjs.org/mark.js/-/mark.js-8.11.1.tgz", + "integrity": "sha512-1I+1qpDt4idfgLQG+BNWmrqku+7/2bi5nLf4YwF8y8zXvmfiTBY3PV3ZibfrjBueCByROpuBjLLFCajqkgYoLQ==", "dev": true, - "license": "ISC" + "license": "MIT" }, - "node_modules/braces": { - "version": "3.0.3", - "resolved": "https://registry.npmjs.org/braces/-/braces-3.0.3.tgz", - "integrity": "sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==", + "node_modules/mdast-util-to-hast": { + "version": "13.2.0", + "resolved": "https://registry.npmjs.org/mdast-util-to-hast/-/mdast-util-to-hast-13.2.0.tgz", + "integrity": "sha512-QGYKEuUsYT9ykKBCMOEDLsU5JRObWQusAolFMeko/tYPufNkRffBAQjIE+99jbA87xv6FgmjLtwjh9wBWajwAA==", "dev": true, "license": "MIT", "dependencies": { - "fill-range": "^7.1.1" + "@types/hast": "^3.0.0", + "@types/mdast": "^4.0.0", + "@ungap/structured-clone": "^1.0.0", + "devlop": "^1.0.0", + "micromark-util-sanitize-uri": "^2.0.0", + "trim-lines": "^3.0.0", + "unist-util-position": "^5.0.0", + "unist-util-visit": "^5.0.0", + "vfile": "^6.0.0" }, - "engines": { - "node": ">=8" + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" } }, - "node_modules/browserslist": { - "version": "4.23.2", - "resolved": "https://registry.npmjs.org/browserslist/-/browserslist-4.23.2.tgz", - "integrity": "sha512-qkqSyistMYdxAcw+CzbZwlBy8AGmS/eEWs+sEV5TnLRGDOL+C5M2EnH6tlZyg0YoAxGJAFKh61En9BR941GnHA==", + "node_modules/micromark-util-character": { + "version": "2.1.0", + "resolved": "https://registry.npmjs.org/micromark-util-character/-/micromark-util-character-2.1.0.tgz", + "integrity": "sha512-KvOVV+X1yLBfs9dCBSopq/+G1PcgT3lAK07mC4BzXi5E7ahzMAF8oIupDDJ6mievI6F+lAATkbQQlQixJfT3aQ==", "dev": true, "funding": [ { - "type": "opencollective", - "url": "https://opencollective.com/browserslist" - }, - { - "type": "tidelift", - "url": "https://tidelift.com/funding/github/npm/browserslist" + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" }, { - "type": "github", - "url": "https://github.com/sponsors/ai" + "type": "OpenCollective", + "url": "https://opencollective.com/unified" } ], "license": "MIT", "dependencies": { - "caniuse-lite": "^1.0.30001640", - "electron-to-chromium": "^1.4.820", - "node-releases": "^2.0.14", - "update-browserslist-db": "^1.1.0" - }, - "bin": { - "browserslist": "cli.js" - }, - "engines": { - "node": "^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7" - } - }, - "node_modules/cac": { - "version": "6.7.14", - "resolved": "https://registry.npmjs.org/cac/-/cac-6.7.14.tgz", - "integrity": "sha512-b6Ilus+c3RrdDk+JhLKUAQfzzgLEPy6wcXqS7f/xe1EETvsDP6GORG7SFuOs6cID5YkqchW/LXZbX5bc8j7ZcQ==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8" + "micromark-util-symbol": "^2.0.0", + "micromark-util-types": "^2.0.0" } }, - "node_modules/caniuse-lite": { - "version": "1.0.30001641", - "resolved": "https://registry.npmjs.org/caniuse-lite/-/caniuse-lite-1.0.30001641.tgz", - "integrity": "sha512-Phv5thgl67bHYo1TtMY/MurjkHhV4EDaCosezRXgZ8jzA/Ub+wjxAvbGvjoFENStinwi5kCyOYV3mi5tOGykwA==", + "node_modules/micromark-util-encode": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/micromark-util-encode/-/micromark-util-encode-2.0.0.tgz", + "integrity": "sha512-pS+ROfCXAGLWCOc8egcBvT0kf27GoWMqtdarNfDcjb6YLuV5cM3ioG45Ys2qOVqeqSbjaKg72vU+Wby3eddPsA==", "dev": true, "funding": [ { - "type": "opencollective", - "url": "https://opencollective.com/browserslist" - }, - { - "type": "tidelift", - "url": "https://tidelift.com/funding/github/npm/caniuse-lite" + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" }, { - "type": "github", - "url": "https://github.com/sponsors/ai" + "type": "OpenCollective", + "url": "https://opencollective.com/unified" } ], - "license": "CC-BY-4.0" - }, - "node_modules/chalk": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/chalk/-/chalk-5.3.0.tgz", - "integrity": "sha512-dLitG79d+GV1Nb/VYcCDFivJeK1hiukt9QjRNVOsUtTy1rR1YJsmpGGTZ3qJos+uw7WmWF4wUwBd9jxjocFC2w==", - "dev": true, - "license": "MIT", - "engines": { - "node": "^12.17.0 || ^14.13 || >=16.0.0" - }, - "funding": { - "url": "https://github.com/chalk/chalk?sponsor=1" - } + "license": "MIT" }, - "node_modules/cheerio": { - "version": "1.0.0-rc.12", - "resolved": "https://registry.npmjs.org/cheerio/-/cheerio-1.0.0-rc.12.tgz", - "integrity": "sha512-VqR8m68vM46BNnuZ5NtnGBKIE/DfN0cRIzg9n40EIq9NOv90ayxLBXA8fXC5gquFRGJSTRqBq25Jt2ECLR431Q==", + "node_modules/micromark-util-sanitize-uri": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/micromark-util-sanitize-uri/-/micromark-util-sanitize-uri-2.0.0.tgz", + "integrity": "sha512-WhYv5UEcZrbAtlsnPuChHUAsu/iBPOVaEVsntLBIdpibO0ddy8OzavZz3iL2xVvBZOpolujSliP65Kq0/7KIYw==", "dev": true, + "funding": [ + { + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" + } + ], "license": "MIT", "dependencies": { - "cheerio-select": "^2.1.0", - "dom-serializer": "^2.0.0", - "domhandler": "^5.0.3", - "domutils": "^3.0.1", - "htmlparser2": "^8.0.1", - "parse5": "^7.0.0", - "parse5-htmlparser2-tree-adapter": "^7.0.0" - }, - "engines": { - "node": ">= 6" - }, - "funding": { - "url": "https://github.com/cheeriojs/cheerio?sponsor=1" + "micromark-util-character": "^2.0.0", + "micromark-util-encode": "^2.0.0", + "micromark-util-symbol": "^2.0.0" } }, - "node_modules/cheerio-select": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/cheerio-select/-/cheerio-select-2.1.0.tgz", - "integrity": "sha512-9v9kG0LvzrlcungtnJtpGNxY+fzECQKhK4EGJX2vByejiMX84MFNQw4UxPJl3bFbTMw+Dfs37XaIkCwTZfLh4g==", - "dev": true, - "license": "BSD-2-Clause", - "dependencies": { - "boolbase": "^1.0.0", - "css-select": "^5.1.0", - "css-what": "^6.1.0", - "domelementtype": "^2.3.0", - "domhandler": "^5.0.3", - "domutils": "^3.0.1" - }, - "funding": { - "url": "https://github.com/sponsors/fb55" - } - }, - "node_modules/chokidar": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/chokidar/-/chokidar-3.6.0.tgz", - "integrity": "sha512-7VT13fmjotKpGipCW9JEQAusEPE+Ei8nl6/g4FBAmIm0GOOLMua9NDDo/DWp0ZAxCr3cPq5ZpBqmPAQgDda2Pw==", - "dev": true, - "license": "MIT", - "dependencies": { - "anymatch": "~3.1.2", - "braces": "~3.0.2", - "glob-parent": "~5.1.2", - "is-binary-path": "~2.1.0", - "is-glob": "~4.0.1", - "normalize-path": "~3.0.0", - "readdirp": "~3.6.0" - }, - "engines": { - "node": ">= 8.10.0" - }, - "funding": { - "url": "https://paulmillr.com/funding/" - }, - "optionalDependencies": { - "fsevents": "~2.3.2" - } - }, - "node_modules/cli-cursor": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/cli-cursor/-/cli-cursor-4.0.0.tgz", - "integrity": "sha512-VGtlMu3x/4DOtIUwEkRezxUZ2lBacNJCHash0N0WeZDBS+7Ux1dm3XWAgWYxLJFMMdOeXMHXorshEFhbMSGelg==", - "dev": true, - "license": "MIT", - "dependencies": { - "restore-cursor": "^4.0.0" - }, - "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/cli-spinners": { - "version": "2.9.2", - "resolved": "https://registry.npmjs.org/cli-spinners/-/cli-spinners-2.9.2.tgz", - "integrity": "sha512-ywqV+5MmyL4E7ybXgKys4DugZbX0FC6LnwrhjuykIjnK9k8OQacQ7axGKnjDXWNhns0xot3bZI5h55H8yo9cJg==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=6" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/connect-history-api-fallback": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/connect-history-api-fallback/-/connect-history-api-fallback-2.0.0.tgz", - "integrity": "sha512-U73+6lQFmfiNPrYbXqr6kZ1i1wiRqXnp2nhMsINseWXO8lDau0LGEffJ8kQi4EjLZympVgRdvqjAgiZ1tgzDDA==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.8" - } - }, - "node_modules/cross-spawn": { - "version": "7.0.3", - "resolved": "https://registry.npmjs.org/cross-spawn/-/cross-spawn-7.0.3.tgz", - "integrity": "sha512-iRDPJKUPVEND7dHPO8rkbOnPpyDygcDFtWjpeWNCgy8WP2rXcxXL8TskReQl6OrB2G7+UJrags1q15Fudc7G6w==", - "dev": true, - "license": "MIT", - "dependencies": { - "path-key": "^3.1.0", - "shebang-command": "^2.0.0", - "which": "^2.0.1" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/css-select": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/css-select/-/css-select-5.1.0.tgz", - "integrity": "sha512-nwoRF1rvRRnnCqqY7updORDsuqKzqYJ28+oSMaJMMgOauh3fvwHqMS7EZpIPqK8GL+g9mKxF1vP/ZjSeNjEVHg==", - "dev": true, - "license": "BSD-2-Clause", - "dependencies": { - "boolbase": "^1.0.0", - "css-what": "^6.1.0", - "domhandler": "^5.0.2", - "domutils": "^3.0.1", - "nth-check": "^2.0.1" - }, - "funding": { - "url": "https://github.com/sponsors/fb55" - } - }, - "node_modules/css-what": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/css-what/-/css-what-6.1.0.tgz", - "integrity": "sha512-HTUrgRJ7r4dsZKU6GjmpfRK1O76h97Z8MfS1G0FozR+oF2kG6Vfe8JE6zwrkbxigziPHinCJ+gCPjA9EaBDtRw==", - "dev": true, - "license": "BSD-2-Clause", - "engines": { - "node": ">= 6" - }, - "funding": { - "url": "https://github.com/sponsors/fb55" - } - }, - "node_modules/csstype": { - "version": "3.1.3", - "resolved": "https://registry.npmjs.org/csstype/-/csstype-3.1.3.tgz", - "integrity": "sha512-M1uQkMl8rQK/szD0LNhtqxIPLpimGm8sOBwU7lLnCpSbTyY3yeU1Vc7l4KT5zT4s/yOxHH5O7tIuuLOCnLADRw==", - "dev": true, - "license": "MIT" - }, - "node_modules/debug": { - "version": "4.3.5", - "resolved": "https://registry.npmjs.org/debug/-/debug-4.3.5.tgz", - "integrity": "sha512-pt0bNEmneDIvdL1Xsd9oDQ/wrQRkXDT4AUWlNZNPKvW5x/jyO9VFXkJUP07vQ2upmw5PlaITaPKc31jK13V+jg==", - "dev": true, - "license": "MIT", - "dependencies": { - "ms": "2.1.2" - }, - "engines": { - "node": ">=6.0" - }, - "peerDependenciesMeta": { - "supports-color": { - "optional": true - } - } - }, - "node_modules/dom-serializer": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/dom-serializer/-/dom-serializer-2.0.0.tgz", - "integrity": "sha512-wIkAryiqt/nV5EQKqQpo3SToSOV9J0DnbJqwK7Wv/Trc92zIAYZ4FlMu+JPFW1DfGFt81ZTCGgDEabffXeLyJg==", - "dev": true, - "license": "MIT", - "dependencies": { - "domelementtype": "^2.3.0", - "domhandler": "^5.0.2", - "entities": "^4.2.0" - }, - "funding": { - "url": "https://github.com/cheeriojs/dom-serializer?sponsor=1" - } - }, - "node_modules/domelementtype": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/domelementtype/-/domelementtype-2.3.0.tgz", - "integrity": "sha512-OLETBj6w0OsagBwdXnPdN0cnMfF9opN69co+7ZrbfPGrdpPVNBUj02spi6B1N7wChLQiPn4CSH/zJvXw56gmHw==", - "dev": true, - "funding": [ - { - "type": "github", - "url": "https://github.com/sponsors/fb55" - } - ], - "license": "BSD-2-Clause" - }, - "node_modules/domhandler": { - "version": "5.0.3", - "resolved": "https://registry.npmjs.org/domhandler/-/domhandler-5.0.3.tgz", - "integrity": "sha512-cgwlv/1iFQiFnU96XXgROh8xTeetsnJiDsTc7TYCLFd9+/WNkIqPTxiM/8pSd8VIrhXGTf1Ny1q1hquVqDJB5w==", - "dev": true, - "license": "BSD-2-Clause", - "dependencies": { - "domelementtype": "^2.3.0" - }, - "engines": { - "node": ">= 4" - }, - "funding": { - "url": "https://github.com/fb55/domhandler?sponsor=1" - } - }, - "node_modules/domutils": { - "version": "3.1.0", - "resolved": "https://registry.npmjs.org/domutils/-/domutils-3.1.0.tgz", - "integrity": "sha512-H78uMmQtI2AhgDJjWeQmHwJJ2bLPD3GMmO7Zja/ZZh84wkm+4ut+IUnUdRa8uCGX88DiVx1j6FRe1XfxEgjEZA==", - "dev": true, - "license": "BSD-2-Clause", - "dependencies": { - "dom-serializer": "^2.0.0", - "domelementtype": "^2.3.0", - "domhandler": "^5.0.3" - }, - "funding": { - "url": "https://github.com/fb55/domutils?sponsor=1" - } - }, - "node_modules/electron-to-chromium": { - "version": "1.4.822", - "resolved": "https://registry.npmjs.org/electron-to-chromium/-/electron-to-chromium-1.4.822.tgz", - "integrity": "sha512-qJzHIt4dRRFKjHHvaExCrG95F65kUP3xysaEZ4I2+/R/uIyr5Ar5g/rkAnrRz0parRUYwzpqN8Pz1HgoiYQPpg==", - "dev": true, - "license": "ISC" - }, - "node_modules/emoji-regex": { - "version": "10.3.0", - "resolved": "https://registry.npmjs.org/emoji-regex/-/emoji-regex-10.3.0.tgz", - "integrity": "sha512-QpLs9D9v9kArv4lfDEgg1X/gN5XLnf/A6l9cs8SPZLRZR3ZkY9+kwIQTxm+fsSej5UMYGE8fdoaZVIBlqG0XTw==", - "dev": true, - "license": "MIT" - }, - "node_modules/entities": { - "version": "4.5.0", - "resolved": "https://registry.npmjs.org/entities/-/entities-4.5.0.tgz", - "integrity": "sha512-V0hjH4dGPh9Ao5p0MoRY6BVqtwCjhz6vI5LT8AJ55H+4g9/4vbHx1I54fS0XuclLhDHArPQCiMjDxjaL8fPxhw==", - "dev": true, - "license": "BSD-2-Clause", - "engines": { - "node": ">=0.12" - }, - "funding": { - "url": "https://github.com/fb55/entities?sponsor=1" - } - }, - "node_modules/envinfo": { - "version": "7.13.0", - "resolved": "https://registry.npmjs.org/envinfo/-/envinfo-7.13.0.tgz", - "integrity": "sha512-cvcaMr7KqXVh4nyzGTVqTum+gAiL265x5jUWQIDLq//zOGbW+gSW/C+OWLleY/rs9Qole6AZLMXPbtIFQbqu+Q==", - "dev": true, - "license": "MIT", - "bin": { - "envinfo": "dist/cli.js" - }, - "engines": { - "node": ">=4" - } - }, - "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==", - "dev": true, - "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/escalade": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/escalade/-/escalade-3.1.2.tgz", - "integrity": "sha512-ErCHMCae19vR8vQGe50xIsVomy19rg6gFu3+r3jkEO46suLMWBksvVyoGgQV+jOfl84ZSOSlmv6Gxa89PmTGmA==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=6" - } - }, - "node_modules/esprima": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/esprima/-/esprima-4.0.1.tgz", - "integrity": "sha512-eGuFFw7Upda+g4p+QHvnW0RyTX/SVeJBDM/gCtMARO0cLuT2HcEKnTPvhjV6aGeqrCB/sbNop0Kszm0jsaWU4A==", - "dev": true, - "license": "BSD-2-Clause", - "bin": { - "esparse": "bin/esparse.js", - "esvalidate": "bin/esvalidate.js" - }, - "engines": { - "node": ">=4" - } - }, - "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/execa": { - "version": "9.3.0", - "resolved": "https://registry.npmjs.org/execa/-/execa-9.3.0.tgz", - "integrity": "sha512-l6JFbqnHEadBoVAVpN5dl2yCyfX28WoBAGaoQcNmLLSedOxTxcn2Qa83s8I/PA5i56vWru2OHOtrwF7Om2vqlg==", - "dev": true, - "license": "MIT", - "dependencies": { - "@sindresorhus/merge-streams": "^4.0.0", - "cross-spawn": "^7.0.3", - "figures": "^6.1.0", - "get-stream": "^9.0.0", - "human-signals": "^7.0.0", - "is-plain-obj": "^4.1.0", - "is-stream": "^4.0.1", - "npm-run-path": "^5.2.0", - "pretty-ms": "^9.0.0", - "signal-exit": "^4.1.0", - "strip-final-newline": "^4.0.0", - "yoctocolors": "^2.0.0" - }, - "engines": { - "node": "^18.19.0 || >=20.5.0" - }, - "funding": { - "url": "https://github.com/sindresorhus/execa?sponsor=1" - } - }, - "node_modules/extend-shallow": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/extend-shallow/-/extend-shallow-2.0.1.tgz", - "integrity": "sha512-zCnTtlxNoAiDc3gqY2aYAWFx7XWWiasuF2K8Me5WbN8otHKTUKBwjPtNpRs/rbUZm7KxWAaNj7P1a/p52GbVug==", - "dev": true, - "license": "MIT", - "dependencies": { - "is-extendable": "^0.1.0" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/fast-glob": { - "version": "3.3.2", - "resolved": "https://registry.npmjs.org/fast-glob/-/fast-glob-3.3.2.tgz", - "integrity": "sha512-oX2ruAFQwf/Orj8m737Y5adxDQO0LAB7/S5MnxCdTNDd4p6BsyIVsv9JQsATbTSq8KHRpLwIHbVlUNatxd+1Ow==", - "dev": true, - "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/fastq": { - "version": "1.17.1", - "resolved": "https://registry.npmjs.org/fastq/-/fastq-1.17.1.tgz", - "integrity": "sha512-sRVD3lWVIXWg6By68ZN7vho9a1pQcN/WBFaAAsDDFzlJjvoGx0P8z7V1t72grFJfJhu3YPZBuu25f7Kaw2jN1w==", - "dev": true, - "license": "ISC", - "dependencies": { - "reusify": "^1.0.4" - } - }, - "node_modules/fflate": { - "version": "0.8.2", - "resolved": "https://registry.npmjs.org/fflate/-/fflate-0.8.2.tgz", - "integrity": "sha512-cPJU47OaAoCbg0pBvzsgpTPhmhqI5eJjh/JIu8tPj5q+T7iLvW/JAYUqmE7KOB4R1ZyEhzBaIQpQpardBF5z8A==", - "dev": true, - "license": "MIT" - }, - "node_modules/figures": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/figures/-/figures-6.1.0.tgz", - "integrity": "sha512-d+l3qxjSesT4V7v2fh+QnmFnUWv9lSpjarhShNTgBOfA0ttejbQUAlHLitbjkoRiDulW0OPoQPYIGhIC8ohejg==", - "dev": true, - "license": "MIT", - "dependencies": { - "is-unicode-supported": "^2.0.0" - }, - "engines": { - "node": ">=18" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/fill-range": { - "version": "7.1.1", - "resolved": "https://registry.npmjs.org/fill-range/-/fill-range-7.1.1.tgz", - "integrity": "sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==", - "dev": true, - "license": "MIT", - "dependencies": { - "to-regex-range": "^5.0.1" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/fraction.js": { - "version": "4.3.7", - "resolved": "https://registry.npmjs.org/fraction.js/-/fraction.js-4.3.7.tgz", - "integrity": "sha512-ZsDfxO51wGAXREY55a7la9LScWpwv9RxIrYABrlvOFBlH/ShPnrtsXeuUIfXKKOVicNxQ+o8JTbJvjS4M89yew==", - "dev": true, - "license": "MIT", - "engines": { - "node": "*" - }, - "funding": { - "type": "patreon", - "url": "https://github.com/sponsors/rawify" - } - }, - "node_modules/fs-extra": { - "version": "11.2.0", - "resolved": "https://registry.npmjs.org/fs-extra/-/fs-extra-11.2.0.tgz", - "integrity": "sha512-PmDi3uwK5nFuXh7XDTlVnS17xJS7vW36is2+w3xcv8SVxiB4NyATf4ctkVY5bkSjX0Y4nbvZCq1/EjtEyr9ktw==", - "dev": true, - "license": "MIT", - "dependencies": { - "graceful-fs": "^4.2.0", - "jsonfile": "^6.0.1", - "universalify": "^2.0.0" - }, - "engines": { - "node": ">=14.14" - } - }, - "node_modules/fsevents": { - "version": "2.3.3", - "resolved": "https://registry.npmjs.org/fsevents/-/fsevents-2.3.3.tgz", - "integrity": "sha512-5xoDfX+fL7faATnagmWPpbFtwh/R77WmMMqqHGS65C3vvB0YHrgF+B1YmZ3441tMj5n63k0212XNoJwzlhffQw==", - "dev": true, - "hasInstallScript": true, - "license": "MIT", - "optional": true, - "os": [ - "darwin" - ], - "engines": { - "node": "^8.16.0 || ^10.6.0 || >=11.0.0" - } - }, - "node_modules/get-east-asian-width": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/get-east-asian-width/-/get-east-asian-width-1.2.0.tgz", - "integrity": "sha512-2nk+7SIVb14QrgXFHcm84tD4bKQz0RxPuMT8Ag5KPOq7J5fEmAg0UbXdTOSHqNuHSU28k55qnceesxXRZGzKWA==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=18" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/get-stream": { - "version": "9.0.1", - "resolved": "https://registry.npmjs.org/get-stream/-/get-stream-9.0.1.tgz", - "integrity": "sha512-kVCxPF3vQM/N0B1PmoqVUqgHP+EeVjmZSQn+1oCRPxd2P21P2F19lIgbR3HBosbB1PUhOAoctJnfEn2GbN2eZA==", - "dev": true, - "license": "MIT", - "dependencies": { - "@sec-ant/readable-stream": "^0.4.1", - "is-stream": "^4.0.1" - }, - "engines": { - "node": ">=18" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/glob-parent": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/glob-parent/-/glob-parent-5.1.2.tgz", - "integrity": "sha512-AOIgSQCepiJYwP3ARnGx+5VnTu2HBYdzbGP45eLw1vr3zB3vZLeyed1sC9hnbcOc9/SrMyM5RPQrkGz4aS9Zow==", - "dev": true, - "license": "ISC", - "dependencies": { - "is-glob": "^4.0.1" - }, - "engines": { - "node": ">= 6" - } - }, - "node_modules/globby": { - "version": "14.0.2", - "resolved": "https://registry.npmjs.org/globby/-/globby-14.0.2.tgz", - "integrity": "sha512-s3Fq41ZVh7vbbe2PN3nrW7yC7U7MFVc5c98/iTl9c2GawNMKx/J648KQRW6WKkuU8GIbbh2IXfIRQjOZnXcTnw==", - "dev": true, - "license": "MIT", - "dependencies": { - "@sindresorhus/merge-streams": "^2.1.0", - "fast-glob": "^3.3.2", - "ignore": "^5.2.4", - "path-type": "^5.0.0", - "slash": "^5.1.0", - "unicorn-magic": "^0.1.0" - }, - "engines": { - "node": ">=18" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/globby/node_modules/@sindresorhus/merge-streams": { - "version": "2.3.0", - "resolved": "https://registry.npmjs.org/@sindresorhus/merge-streams/-/merge-streams-2.3.0.tgz", - "integrity": "sha512-LtoMMhxAlorcGhmFYI+LhPgbPZCkgP6ra1YL604EeF6U98pLlQ3iWIGMdWSC+vWmPBWBNgmDBAhnAobLROJmwg==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=18" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "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==", - "dev": true, - "license": "ISC" - }, - "node_modules/gray-matter": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/gray-matter/-/gray-matter-4.0.3.tgz", - "integrity": "sha512-5v6yZd4JK3eMI3FqqCouswVqwugaA9r4dNZB1wwcmrD02QkV5H0y7XBQW8QwQqEaZY1pM9aqORSORhJRdNK44Q==", - "dev": true, - "license": "MIT", - "dependencies": { - "js-yaml": "^3.13.1", - "kind-of": "^6.0.2", - "section-matter": "^1.0.0", - "strip-bom-string": "^1.0.0" - }, - "engines": { - "node": ">=6.0" - } - }, - "node_modules/hash-sum": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/hash-sum/-/hash-sum-2.0.0.tgz", - "integrity": "sha512-WdZTbAByD+pHfl/g9QSsBIIwy8IT+EsPiKDs0KNX+zSHhdDLFKdZu0BQHljvO+0QI/BasbMSUa8wYNCZTvhslg==", - "dev": true, - "license": "MIT" - }, - "node_modules/htmlparser2": { - "version": "8.0.2", - "resolved": "https://registry.npmjs.org/htmlparser2/-/htmlparser2-8.0.2.tgz", - "integrity": "sha512-GYdjWKDkbRLkZ5geuHs5NY1puJ+PXwP7+fHPRz06Eirsb9ugf6d8kkXav6ADhcODhFFPMIXyxkxSuMf3D6NCFA==", - "dev": true, - "funding": [ - "https://github.com/fb55/htmlparser2?sponsor=1", - { - "type": "github", - "url": "https://github.com/sponsors/fb55" - } - ], - "license": "MIT", - "dependencies": { - "domelementtype": "^2.3.0", - "domhandler": "^5.0.3", - "domutils": "^3.0.1", - "entities": "^4.4.0" - } - }, - "node_modules/human-signals": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/human-signals/-/human-signals-7.0.0.tgz", - "integrity": "sha512-74kytxOUSvNbjrT9KisAbaTZ/eJwD/LrbM/kh5j0IhPuJzwuA19dWvniFGwBzN9rVjg+O/e+F310PjObDXS+9Q==", - "dev": true, - "license": "Apache-2.0", - "engines": { - "node": ">=18.18.0" - } - }, - "node_modules/ignore": { - "version": "5.3.1", - "resolved": "https://registry.npmjs.org/ignore/-/ignore-5.3.1.tgz", - "integrity": "sha512-5Fytz/IraMjqpwfd34ke28PTVMjZjJG2MPn5t7OE4eUCUNf8BAa7b5WUS9/Qvr6mwOQS7Mk6vdsMno5he+T8Xw==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 4" - } - }, - "node_modules/immutable": { - "version": "4.3.6", - "resolved": "https://registry.npmjs.org/immutable/-/immutable-4.3.6.tgz", - "integrity": "sha512-Ju0+lEMyzMVZarkTn/gqRpdqd5dOPaz1mCZ0SH3JV6iFw81PldE/PEB1hWVEA288HPt4WXW8O7AWxB10M+03QQ==", - "dev": true, - "license": "MIT" - }, - "node_modules/is-binary-path": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/is-binary-path/-/is-binary-path-2.1.0.tgz", - "integrity": "sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==", - "dev": true, - "license": "MIT", - "dependencies": { - "binary-extensions": "^2.0.0" - }, - "engines": { - "node": ">=8" - } - }, - "node_modules/is-extendable": { - "version": "0.1.1", - "resolved": "https://registry.npmjs.org/is-extendable/-/is-extendable-0.1.1.tgz", - "integrity": "sha512-5BMULNob1vgFX6EjQw5izWDxrecWK9AM72rugNr0TFldMOi0fj6Jk+zeKIt0xGj4cEfQIJth4w3OKWOJ4f+AFw==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/is-extglob": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/is-extglob/-/is-extglob-2.1.1.tgz", - "integrity": "sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/is-glob": { - "version": "4.0.3", - "resolved": "https://registry.npmjs.org/is-glob/-/is-glob-4.0.3.tgz", - "integrity": "sha512-xelSayHH36ZgE7ZWhli7pW34hNbNl8Ojv5KVmkJD4hBdD3th8Tfk9vYasLM+mXWOZhFkgZfxhLSnrwRr4elSSg==", - "dev": true, - "license": "MIT", - "dependencies": { - "is-extglob": "^2.1.1" - }, - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/is-interactive": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-interactive/-/is-interactive-2.0.0.tgz", - "integrity": "sha512-qP1vozQRI+BMOPcjFzrjXuQvdak2pHNUMZoeG2eRbiSqyvbEf/wQtEOTOX1guk6E3t36RkaqiSt8A/6YElNxLQ==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/is-number": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/is-number/-/is-number-7.0.0.tgz", - "integrity": "sha512-41Cifkg6e8TylSpdtTpeLVMqvSBEVzTttHvERD741+pnZ8ANv0004MRL43QKPDlK9cGvNp6NZWZUBlbGXYxxng==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.12.0" - } - }, - "node_modules/is-plain-obj": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/is-plain-obj/-/is-plain-obj-4.1.0.tgz", - "integrity": "sha512-+Pgi+vMuUNkJyExiMBt5IlFoMyKnr5zhJ4Uspz58WOhBF5QoIZkFyNHIbBAtHwzVAgk5RtndVNsDRN61/mmDqg==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/is-stream": { - "version": "4.0.1", - "resolved": "https://registry.npmjs.org/is-stream/-/is-stream-4.0.1.tgz", - "integrity": "sha512-Dnz92NInDqYckGEUJv689RbRiTSEHCQ7wOVeALbkOz999YpqT46yMRIGtSNl2iCL1waAZSx40+h59NV/EwzV/A==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=18" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/is-unicode-supported": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/is-unicode-supported/-/is-unicode-supported-2.0.0.tgz", - "integrity": "sha512-FRdAyx5lusK1iHG0TWpVtk9+1i+GjrzRffhDg4ovQ7mcidMQ6mj+MhKPmvh7Xwyv5gIS06ns49CA7Sqg7lC22Q==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=18" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/isexe": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/isexe/-/isexe-2.0.0.tgz", - "integrity": "sha512-RHxMLp9lnKHGHRng9QFhRCMbYAcVpn69smSGcq3f36xjgVVWThj4qqLbTLlq7Ssj8B+fIQ1EuCEGI2lKsyQeIw==", - "dev": true, - "license": "ISC" - }, - "node_modules/js-yaml": { - "version": "3.14.1", - "resolved": "https://registry.npmjs.org/js-yaml/-/js-yaml-3.14.1.tgz", - "integrity": "sha512-okMH7OXXJ7YrN9Ok3/SXrnu4iX9yOk+25nqX4imS2npuvTYDmo/QEZoqwZkYaIDk3jVvBOTOIEgEhaLOynBS9g==", - "dev": true, - "license": "MIT", - "dependencies": { - "argparse": "^1.0.7", - "esprima": "^4.0.0" - }, - "bin": { - "js-yaml": "bin/js-yaml.js" - } - }, - "node_modules/jsonfile": { - "version": "6.1.0", - "resolved": "https://registry.npmjs.org/jsonfile/-/jsonfile-6.1.0.tgz", - "integrity": "sha512-5dgndWOriYSm5cnYaJNhalLNDKOqFwyDB/rr1E9ZsGciGvKPs8R2xYGCacuf3z6K1YKDz182fd+fY3cn3pMqXQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "universalify": "^2.0.0" - }, - "optionalDependencies": { - "graceful-fs": "^4.1.6" - } - }, - "node_modules/kind-of": { - "version": "6.0.3", - "resolved": "https://registry.npmjs.org/kind-of/-/kind-of-6.0.3.tgz", - "integrity": "sha512-dcS1ul+9tmeD95T+x28/ehLgd9mENa3LsvDTtzm3vyBEO7RPptvAD+t44WVXaUjTBRcrpFeFlC8WCruUR456hw==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/lilconfig": { - "version": "3.1.2", - "resolved": "https://registry.npmjs.org/lilconfig/-/lilconfig-3.1.2.tgz", - "integrity": "sha512-eop+wDAvpItUys0FWkHIKeC9ybYrTGbU41U5K7+bttZZeohvnY7M9dZ5kB21GNWiFT2q1OoPTvncPCgSOVO5ow==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=14" - }, - "funding": { - "url": "https://github.com/sponsors/antonk52" - } - }, - "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==", - "dev": true, - "license": "MIT", - "dependencies": { - "uc.micro": "^2.0.0" - } - }, - "node_modules/log-symbols": { - "version": "6.0.0", - "resolved": "https://registry.npmjs.org/log-symbols/-/log-symbols-6.0.0.tgz", - "integrity": "sha512-i24m8rpwhmPIS4zscNzK6MSEhk0DUWa/8iYQWxhffV8jkI4Phvs3F+quL5xvS0gdQR0FyTCMMH33Y78dDTzzIw==", - "dev": true, - "license": "MIT", - "dependencies": { - "chalk": "^5.3.0", - "is-unicode-supported": "^1.3.0" - }, - "engines": { - "node": ">=18" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/log-symbols/node_modules/is-unicode-supported": { - "version": "1.3.0", - "resolved": "https://registry.npmjs.org/is-unicode-supported/-/is-unicode-supported-1.3.0.tgz", - "integrity": "sha512-43r2mRvz+8JRIKnWJ+3j8JtjRKZ6GmjzfaE/qiBJnikNnYv/6bagRJ1kUhNk8R5EX/GkobD+r+sfxCPJsiKBLQ==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/magic-string": { - "version": "0.30.10", - "resolved": "https://registry.npmjs.org/magic-string/-/magic-string-0.30.10.tgz", - "integrity": "sha512-iIRwTIf0QKV3UAnYK4PU8uiEc4SRh5jX0mwpIwETPpHdhVM4f53RSwS/vXvN1JhGX+Cs7B8qIq3d6AH49O5fAQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "@jridgewell/sourcemap-codec": "^1.4.15" - } - }, - "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==", - "dev": true, - "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-anchor": { - "version": "9.0.1", - "resolved": "https://registry.npmjs.org/markdown-it-anchor/-/markdown-it-anchor-9.0.1.tgz", - "integrity": "sha512-cBt7aAzmkfX8X7FqAe8EBryiKmToXgMQEEMqkXzWCm0toDtfDYIGboKeTKd8cpNJArJtutrf+977wFJTsvNGmQ==", - "dev": true, - "license": "Unlicense", - "peerDependencies": { - "@types/markdown-it": "*", - "markdown-it": "*" - } - }, - "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==", - "dev": true, - "license": "MIT" - }, - "node_modules/markdown-it-emoji": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/markdown-it-emoji/-/markdown-it-emoji-3.0.0.tgz", - "integrity": "sha512-+rUD93bXHubA4arpEZO3q80so0qgoFJEKRkRbjKX8RTdca89v2kfyF+xR3i2sQTwql9tpPZPOQN5B+PunspXRg==", - "dev": true, - "license": "MIT" - }, - "node_modules/markdown-it/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==", - "dev": true, - "license": "Python-2.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==", - "dev": true, - "license": "MIT" - }, - "node_modules/medium-zoom": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/medium-zoom/-/medium-zoom-1.1.0.tgz", - "integrity": "sha512-ewyDsp7k4InCUp3jRmwHBRFGyjBimKps/AJLjRSox+2q/2H4p/PNpQf+pwONWlJiOudkBXtbdmVbFjqyybfTmQ==", - "dev": true, - "license": "MIT" - }, - "node_modules/merge2": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/merge2/-/merge2-1.4.1.tgz", - "integrity": "sha512-8q7VEgMJW4J8tcfVPy8g09NcQwZdbwFEqhe/WZkoIzjn/3TGDwtOCYtXGxA3O8tPzpczCCDgv+P2P5y00ZJOOg==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 8" - } - }, - "node_modules/micromatch": { - "version": "4.0.7", - "resolved": "https://registry.npmjs.org/micromatch/-/micromatch-4.0.7.tgz", - "integrity": "sha512-LPP/3KorzCwBxfeUuZmaR6bG2kdeHSbe0P2tY3FLRU4vYrjYz5hI4QZwV0njUx3jeuKe67YukQ1LSPZBKDqO/Q==", - "dev": true, - "license": "MIT", - "dependencies": { - "braces": "^3.0.3", - "picomatch": "^2.3.1" - }, - "engines": { - "node": ">=8.6" - } - }, - "node_modules/mimic-fn": { - "version": "2.1.0", - "resolved": "https://registry.npmjs.org/mimic-fn/-/mimic-fn-2.1.0.tgz", - "integrity": "sha512-OqbOk5oEQeAZ8WXWydlu9HJjz9WVdEIvamMCcXmuqUYjTknH/sqsWvhQ3vgwKFRR1HpjvNBKQ37nbJgYzGqGcg==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=6" - } - }, - "node_modules/ms": { - "version": "2.1.2", - "resolved": "https://registry.npmjs.org/ms/-/ms-2.1.2.tgz", - "integrity": "sha512-sGkPx+VjMtmA6MX27oA4FBFELFCZZ4S4XqeGOXCv68tT+jb3vk/RyaKWP0PTKyWtmLSM0b+adUTEvbs1PEaH2w==", - "dev": true, - "license": "MIT" - }, - "node_modules/nanoid": { - "version": "3.3.7", - "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.7.tgz", - "integrity": "sha512-eSRppjcPIatRIMC1U6UngP8XFcz8MQWGQdt1MTBQ7NaAmvXDfvNxbvWV3x2y6CdEUciCSsDHDQZbhYaB8QEo2g==", + "node_modules/micromark-util-symbol": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/micromark-util-symbol/-/micromark-util-symbol-2.0.0.tgz", + "integrity": "sha512-8JZt9ElZ5kyTnO94muPxIGS8oyElRJaiJO8EzV6ZSyGQ1Is8xwl4Q45qU5UOg+bGH4AikWziz0iN4sFLWs8PGw==", "dev": true, "funding": [ { - "type": "github", - "url": "https://github.com/sponsors/ai" + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" + }, + { + "type": "OpenCollective", + "url": "https://opencollective.com/unified" } ], - "license": "MIT", - "bin": { - "nanoid": "bin/nanoid.cjs" - }, - "engines": { - "node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1" - } - }, - "node_modules/node-releases": { - "version": "2.0.14", - "resolved": "https://registry.npmjs.org/node-releases/-/node-releases-2.0.14.tgz", - "integrity": "sha512-y10wOWt8yZpqXmOgRo77WaHEmhYQYGNA6y421PKsKYWEK8aW+cqAphborZDhqfyKrbZEN92CN1X2KbafY2s7Yw==", - "dev": true, "license": "MIT" }, - "node_modules/normalize-path": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/normalize-path/-/normalize-path-3.0.0.tgz", - "integrity": "sha512-6eZs5Ls3WtCisHWp9S2GUy8dqkpGi4BVSz3GaqiE6ezub0512ESztXUwUB6C6IKbQkY2Pnb/mD4WYojCRwcwLA==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/normalize-range": { - "version": "0.1.2", - "resolved": "https://registry.npmjs.org/normalize-range/-/normalize-range-0.1.2.tgz", - "integrity": "sha512-bdok/XvKII3nUpklnV6P2hxtMNrCboOjAcyBuQnWEhO665FwrSNRxU+AqpsyvO6LgGYPspN+lu5CLtw4jPRKNA==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.10.0" - } - }, - "node_modules/npm-run-path": { - "version": "5.3.0", - "resolved": "https://registry.npmjs.org/npm-run-path/-/npm-run-path-5.3.0.tgz", - "integrity": "sha512-ppwTtiJZq0O/ai0z7yfudtBpWIoxM8yE6nHi1X47eFR2EWORqfbu6CnPlNsjeN683eT0qG6H/Pyf9fCcvjnnnQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "path-key": "^4.0.0" - }, - "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/npm-run-path/node_modules/path-key": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/path-key/-/path-key-4.0.0.tgz", - "integrity": "sha512-haREypq7xkM7ErfgIyA0z+Bj4AGKlMSdlQE2jvJo6huWD1EdkKYV+G/T4nq0YEF2vgTT8kqMFKo1uHn950r4SQ==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/nth-check": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/nth-check/-/nth-check-2.1.1.tgz", - "integrity": "sha512-lqjrjmaOoAnWfMmBPL+XNnynZh2+swxiX3WUE0s4yEHI6m+AwrK2UZOimIRl3X/4QctVqS8AiZjFqyOGrMXb/w==", - "dev": true, - "license": "BSD-2-Clause", - "dependencies": { - "boolbase": "^1.0.0" - }, - "funding": { - "url": "https://github.com/fb55/nth-check?sponsor=1" - } - }, - "node_modules/onetime": { - "version": "5.1.2", - "resolved": "https://registry.npmjs.org/onetime/-/onetime-5.1.2.tgz", - "integrity": "sha512-kbpaSSGJTWdAY5KPVeMOKXSrPtr8C8C7wodJbcsd51jRnmD+GZu8Y0VoU6Dm5Z4vWr0Ig/1NKuWRKf7j5aaYSg==", - "dev": true, - "license": "MIT", - "dependencies": { - "mimic-fn": "^2.1.0" - }, - "engines": { - "node": ">=6" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/ora": { - "version": "8.0.1", - "resolved": "https://registry.npmjs.org/ora/-/ora-8.0.1.tgz", - "integrity": "sha512-ANIvzobt1rls2BDny5fWZ3ZVKyD6nscLvfFRpQgfWsythlcsVUC9kL0zq6j2Z5z9wwp1kd7wpsD/T9qNPVLCaQ==", - "dev": true, - "license": "MIT", - "dependencies": { - "chalk": "^5.3.0", - "cli-cursor": "^4.0.0", - "cli-spinners": "^2.9.2", - "is-interactive": "^2.0.0", - "is-unicode-supported": "^2.0.0", - "log-symbols": "^6.0.0", - "stdin-discarder": "^0.2.1", - "string-width": "^7.0.0", - "strip-ansi": "^7.1.0" - }, - "engines": { - "node": ">=18" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/parse-ms": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/parse-ms/-/parse-ms-4.0.0.tgz", - "integrity": "sha512-TXfryirbmq34y8QBwgqCVLi+8oA3oWx2eAnSn62ITyEhEYaWRlVZ2DvMM9eZbMs/RfxPu/PK/aBLyGj4IrqMHw==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=18" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/parse5": { - "version": "7.1.2", - "resolved": "https://registry.npmjs.org/parse5/-/parse5-7.1.2.tgz", - "integrity": "sha512-Czj1WaSVpaoj0wbhMzLmWD69anp2WH7FXMB9n1Sy8/ZFF9jolSQVMu1Ij5WIyGmcBmhk7EOndpO4mIpihVqAXw==", - "dev": true, - "license": "MIT", - "dependencies": { - "entities": "^4.4.0" - }, - "funding": { - "url": "https://github.com/inikulin/parse5?sponsor=1" - } - }, - "node_modules/parse5-htmlparser2-tree-adapter": { - "version": "7.0.0", - "resolved": "https://registry.npmjs.org/parse5-htmlparser2-tree-adapter/-/parse5-htmlparser2-tree-adapter-7.0.0.tgz", - "integrity": "sha512-B77tOZrqqfUfnVcOrUvfdLbz4pu4RopLD/4vmu3HUPswwTA8OH0EMW9BlWR2B0RCoiZRAHEUu7IxeP1Pd1UU+g==", - "dev": true, - "license": "MIT", - "dependencies": { - "domhandler": "^5.0.2", - "parse5": "^7.0.0" - }, - "funding": { - "url": "https://github.com/inikulin/parse5?sponsor=1" - } - }, - "node_modules/path-key": { - "version": "3.1.1", - "resolved": "https://registry.npmjs.org/path-key/-/path-key-3.1.1.tgz", - "integrity": "sha512-ojmeN0qd+y0jszEtoY48r0Peq5dwMEkIlCOu6Q5f41lfkswXuKtYrhgoTpLnyIcHm24Uhqx+5Tqm2InSwLhE6Q==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8" - } - }, - "node_modules/path-type": { - "version": "5.0.0", - "resolved": "https://registry.npmjs.org/path-type/-/path-type-5.0.0.tgz", - "integrity": "sha512-5HviZNaZcfqP95rwpv+1HDgUamezbqdSYTyzjTvwtJSnIH+3vnbmWsItli8OFEndS984VT55M3jduxZbX351gg==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=12" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/picocolors": { - "version": "1.0.1", - "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.0.1.tgz", - "integrity": "sha512-anP1Z8qwhkbmu7MFP5iTt+wQKXgwzf7zTyGlcdzabySa9vd0Xt392U0rVmz9poOaBj0uHJKyyo9/upk0HrEQew==", - "dev": true, - "license": "ISC" - }, - "node_modules/picomatch": { - "version": "2.3.1", - "resolved": "https://registry.npmjs.org/picomatch/-/picomatch-2.3.1.tgz", - "integrity": "sha512-JU3teHTNjmE2VCGFzuY8EXzCDVwEqB2a8fsIvwaStHhAWJEeVd1o1QD80CU6+ZdEXXSLbSsuLwJjkCBWqRQUVA==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=8.6" - }, - "funding": { - "url": "https://github.com/sponsors/jonschlinkert" - } - }, - "node_modules/postcss": { - "version": "8.4.39", - "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.39.tgz", - "integrity": "sha512-0vzE+lAiG7hZl1/9I8yzKLx3aR9Xbof3fBHKunvMfOCYAtMhrsnccJY2iTURb9EZd5+pLuiNV9/c/GZJOHsgIw==", + "node_modules/micromark-util-types": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/micromark-util-types/-/micromark-util-types-2.0.0.tgz", + "integrity": "sha512-oNh6S2WMHWRZrmutsRmDDfkzKtxF+bc2VxLC9dvtrDIRFln627VsFP6fLMgTryGDljgLPjkrzQSDcPrjPyDJ5w==", "dev": true, - "funding": [ - { - "type": "opencollective", - "url": "https://opencollective.com/postcss/" - }, + "funding": [ { - "type": "tidelift", - "url": "https://tidelift.com/funding/github/npm/postcss" + "type": "GitHub Sponsors", + "url": "https://github.com/sponsors/unifiedjs" }, { - "type": "github", - "url": "https://github.com/sponsors/ai" + "type": "OpenCollective", + "url": "https://opencollective.com/unified" } ], - "license": "MIT", - "dependencies": { - "nanoid": "^3.3.7", - "picocolors": "^1.0.1", - "source-map-js": "^1.2.0" - }, - "engines": { - "node": "^10 || ^12 || >=14" - } + "license": "MIT" }, - "node_modules/postcss-load-config": { - "version": "6.0.1", - "resolved": "https://registry.npmjs.org/postcss-load-config/-/postcss-load-config-6.0.1.tgz", - "integrity": "sha512-oPtTM4oerL+UXmx+93ytZVN82RrlY/wPUV8IeDxFrzIjXOLF1pN+EmKPLbubvKHT2HC20xXsCAH2Z+CKV6Oz/g==", + "node_modules/minisearch": { + "version": "7.1.0", + "resolved": "https://registry.npmjs.org/minisearch/-/minisearch-7.1.0.tgz", + "integrity": "sha512-tv7c/uefWdEhcu6hvrfTihflgeEi2tN6VV7HJnCjK6VxM75QQJh4t9FwJCsA2EsRS8LCnu3W87CuGPWMocOLCA==", + "dev": true, + "license": "MIT" + }, + "node_modules/mitt": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/mitt/-/mitt-3.0.1.tgz", + "integrity": "sha512-vKivATfr97l2/QBCYAkXYDbrIWPM2IIKEl7YPhjCvKlG3kE2gm+uBo6nEXK3M5/Ffh/FLpKExzOQ3JJoJGFKBw==", + "dev": true, + "license": "MIT" + }, + "node_modules/nanoid": { + "version": "3.3.7", + "resolved": "https://registry.npmjs.org/nanoid/-/nanoid-3.3.7.tgz", + "integrity": "sha512-eSRppjcPIatRIMC1U6UngP8XFcz8MQWGQdt1MTBQ7NaAmvXDfvNxbvWV3x2y6CdEUciCSsDHDQZbhYaB8QEo2g==", "dev": true, "funding": [ - { - "type": "opencollective", - "url": "https://opencollective.com/postcss/" - }, { "type": "github", "url": "https://github.com/sponsors/ai" } ], "license": "MIT", - "dependencies": { - "lilconfig": "^3.1.1" + "bin": { + "nanoid": "bin/nanoid.cjs" }, "engines": { - "node": ">= 18" - }, - "peerDependencies": { - "jiti": ">=1.21.0", - "postcss": ">=8.0.9", - "tsx": "^4.8.1", - "yaml": "^2.4.2" - }, - "peerDependenciesMeta": { - "jiti": { - "optional": true - }, - "postcss": { - "optional": true - }, - "tsx": { - "optional": true - }, - "yaml": { - "optional": true - } + "node": "^10 || ^12 || ^13.7 || ^14 || >=15.0.1" } }, - "node_modules/postcss-value-parser": { - "version": "4.2.0", - "resolved": "https://registry.npmjs.org/postcss-value-parser/-/postcss-value-parser-4.2.0.tgz", - "integrity": "sha512-1NNCs6uurfkVbeXG4S8JFT9t19m45ICnif8zWLd5oPSZ50QnwMfK+H3jv408d4jw/7Bttv5axS5IiHoLaVNHeQ==", - "dev": true, - "license": "MIT" - }, - "node_modules/pretty-ms": { - "version": "9.0.0", - "resolved": "https://registry.npmjs.org/pretty-ms/-/pretty-ms-9.0.0.tgz", - "integrity": "sha512-E9e9HJ9R9NasGOgPaPE8VMeiPKAyWR5jcFpNnwIejslIhWqdqOrb2wShBsncMPUb+BcCd2OPYfh7p2W6oemTng==", + "node_modules/oniguruma-to-js": { + "version": "0.4.3", + "resolved": "https://registry.npmjs.org/oniguruma-to-js/-/oniguruma-to-js-0.4.3.tgz", + "integrity": "sha512-X0jWUcAlxORhOqqBREgPMgnshB7ZGYszBNspP+tS9hPD3l13CdaXcHbgImoHUHlrvGx/7AvFEkTRhAGYh+jzjQ==", "dev": true, "license": "MIT", "dependencies": { - "parse-ms": "^4.0.0" - }, - "engines": { - "node": ">=18" + "regex": "^4.3.2" }, "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "url": "https://github.com/sponsors/antfu" } }, - "node_modules/prismjs": { - "version": "1.29.0", - "resolved": "https://registry.npmjs.org/prismjs/-/prismjs-1.29.0.tgz", - "integrity": "sha512-Kx/1w86q/epKcmte75LNrEoT+lX8pBpavuAbvJWRXar7Hz8jrtF+e3vY751p0R8H9HdArwaCTNDDzHg/ScJK1Q==", + "node_modules/perfect-debounce": { + "version": "1.0.0", + "resolved": "https://registry.npmjs.org/perfect-debounce/-/perfect-debounce-1.0.0.tgz", + "integrity": "sha512-xCy9V055GLEqoFaHoC1SoLIaLmWctgCUaBaWxDZ7/Zx4CTyX7cJQLJOok/orfjZAh9kEYpjJa4d0KcJmCbctZA==", "dev": true, - "license": "MIT", - "engines": { - "node": ">=6" - } + "license": "MIT" }, - "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==", + "node_modules/picocolors": { + "version": "1.1.0", + "resolved": "https://registry.npmjs.org/picocolors/-/picocolors-1.1.0.tgz", + "integrity": "sha512-TQ92mBOW0l3LeMeyLV6mzy/kWr8lkd/hp3mTg7wYK7zJhuBStmGMBG0BdeDZS/dZx1IukaX6Bk11zcln25o1Aw==", "dev": true, - "license": "MIT", - "engines": { - "node": ">=6" - } + "license": "ISC" }, - "node_modules/queue-microtask": { - "version": "1.2.3", - "resolved": "https://registry.npmjs.org/queue-microtask/-/queue-microtask-1.2.3.tgz", - "integrity": "sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==", + "node_modules/postcss": { + "version": "8.4.47", + "resolved": "https://registry.npmjs.org/postcss/-/postcss-8.4.47.tgz", + "integrity": "sha512-56rxCq7G/XfB4EkXq9Egn5GCqugWvDFjafDOThIdMBsI15iqPqR5r15TfSr1YPYeEI19YeaXMCbY6u88Y76GLQ==", "dev": true, "funding": [ { - "type": "github", - "url": "https://github.com/sponsors/feross" + "type": "opencollective", + "url": "https://opencollective.com/postcss/" }, { - "type": "patreon", - "url": "https://www.patreon.com/feross" + "type": "tidelift", + "url": "https://tidelift.com/funding/github/npm/postcss" }, { - "type": "consulting", - "url": "https://feross.org/support" + "type": "github", + "url": "https://github.com/sponsors/ai" } ], - "license": "MIT" - }, - "node_modules/readdirp": { - "version": "3.6.0", - "resolved": "https://registry.npmjs.org/readdirp/-/readdirp-3.6.0.tgz", - "integrity": "sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==", - "dev": true, "license": "MIT", "dependencies": { - "picomatch": "^2.2.1" + "nanoid": "^3.3.7", + "picocolors": "^1.1.0", + "source-map-js": "^1.2.1" }, "engines": { - "node": ">=8.10.0" + "node": "^10 || ^12 || >=14" } }, - "node_modules/restore-cursor": { - "version": "4.0.0", - "resolved": "https://registry.npmjs.org/restore-cursor/-/restore-cursor-4.0.0.tgz", - "integrity": "sha512-I9fPXU9geO9bHOt9pHHOhOkYerIMsmVaWB0rA2AI9ERh/+x/i7MV5HKBNrg+ljO5eoPVgCcnFuRjJ9uH6I/3eg==", + "node_modules/preact": { + "version": "10.24.1", + "resolved": "https://registry.npmjs.org/preact/-/preact-10.24.1.tgz", + "integrity": "sha512-PnBAwFI3Yjxxcxw75n6VId/5TFxNW/81zexzWD9jn1+eSrOP84NdsS38H5IkF/UH3frqRPT+MvuCoVHjTDTnDw==", "dev": true, "license": "MIT", - "dependencies": { - "onetime": "^5.1.0", - "signal-exit": "^3.0.2" - }, - "engines": { - "node": "^12.20.0 || ^14.13.1 || >=16.0.0" - }, "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "type": "opencollective", + "url": "https://opencollective.com/preact" } }, - "node_modules/restore-cursor/node_modules/signal-exit": { - "version": "3.0.7", - "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-3.0.7.tgz", - "integrity": "sha512-wnD2ZE+l+SPC/uoS0vXeE9L1+0wuaMqKlfz9AMUo38JsyLSBWSFcHR1Rri62LZc12vLr1gb3jl7iwQhgwpAbGQ==", - "dev": true, - "license": "ISC" - }, - "node_modules/reusify": { - "version": "1.0.4", - "resolved": "https://registry.npmjs.org/reusify/-/reusify-1.0.4.tgz", - "integrity": "sha512-U9nH88a3fc/ekCF1l0/UP1IosiuIjyTh7hBvXVMHYgVcfGvt897Xguj2UOLDeI5BG2m7/uwyaLVT6fbtCwTyzw==", + "node_modules/property-information": { + "version": "6.5.0", + "resolved": "https://registry.npmjs.org/property-information/-/property-information-6.5.0.tgz", + "integrity": "sha512-PgTgs/BlvHxOu8QuEN7wi5A0OmXaBcHpmCSTehcs6Uuu9IkDIEo13Hy7n898RHfrQ49vKCoGeWZSaAK01nwVig==", "dev": true, "license": "MIT", - "engines": { - "iojs": ">=1.0.0", - "node": ">=0.10.0" + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" } }, + "node_modules/regex": { + "version": "4.3.2", + "resolved": "https://registry.npmjs.org/regex/-/regex-4.3.2.tgz", + "integrity": "sha512-kK/AA3A9K6q2js89+VMymcboLOlF5lZRCYJv3gzszXFHBr6kO6qLGzbm+UIugBEV8SMMKCTR59txoY6ctRHYVw==", + "dev": true, + "license": "MIT" + }, + "node_modules/rfdc": { + "version": "1.4.1", + "resolved": "https://registry.npmjs.org/rfdc/-/rfdc-1.4.1.tgz", + "integrity": "sha512-q1b3N5QkRUWUl7iyylaaj3kOpIT0N2i9MqIEQXP73GVsN9cw3fdx8X63cEmWhJGi2PPCF23Ijp7ktmd39rawIA==", + "dev": true, + "license": "MIT" + }, "node_modules/rollup": { - "version": "4.18.1", - "resolved": "https://registry.npmjs.org/rollup/-/rollup-4.18.1.tgz", - "integrity": "sha512-Elx2UT8lzxxOXMpy5HWQGZqkrQOtrVDDa/bm9l10+U4rQnVzbL/LgZ4NOM1MPIDyHk69W4InuYDF5dzRh4Kw1A==", + "version": "4.22.4", + "resolved": "https://registry.npmjs.org/rollup/-/rollup-4.22.4.tgz", + "integrity": "sha512-vD8HJ5raRcWOyymsR6Z3o6+RzfEPCnVLMFJ6vRslO1jt4LO6dUo5Qnpg7y4RkZFM2DMe3WUirkI5c16onjrc6A==", "dev": true, "license": "MIT", "dependencies": { @@ -3097,353 +2152,248 @@ "npm": ">=8.0.0" }, "optionalDependencies": { - "@rollup/rollup-android-arm-eabi": "4.18.1", - "@rollup/rollup-android-arm64": "4.18.1", - "@rollup/rollup-darwin-arm64": "4.18.1", - "@rollup/rollup-darwin-x64": "4.18.1", - "@rollup/rollup-linux-arm-gnueabihf": "4.18.1", - "@rollup/rollup-linux-arm-musleabihf": "4.18.1", - "@rollup/rollup-linux-arm64-gnu": "4.18.1", - "@rollup/rollup-linux-arm64-musl": "4.18.1", - "@rollup/rollup-linux-powerpc64le-gnu": "4.18.1", - "@rollup/rollup-linux-riscv64-gnu": "4.18.1", - "@rollup/rollup-linux-s390x-gnu": "4.18.1", - "@rollup/rollup-linux-x64-gnu": "4.18.1", - "@rollup/rollup-linux-x64-musl": "4.18.1", - "@rollup/rollup-win32-arm64-msvc": "4.18.1", - "@rollup/rollup-win32-ia32-msvc": "4.18.1", - "@rollup/rollup-win32-x64-msvc": "4.18.1", + "@rollup/rollup-android-arm-eabi": "4.22.4", + "@rollup/rollup-android-arm64": "4.22.4", + "@rollup/rollup-darwin-arm64": "4.22.4", + "@rollup/rollup-darwin-x64": "4.22.4", + "@rollup/rollup-linux-arm-gnueabihf": "4.22.4", + "@rollup/rollup-linux-arm-musleabihf": "4.22.4", + "@rollup/rollup-linux-arm64-gnu": "4.22.4", + "@rollup/rollup-linux-arm64-musl": "4.22.4", + "@rollup/rollup-linux-powerpc64le-gnu": "4.22.4", + "@rollup/rollup-linux-riscv64-gnu": "4.22.4", + "@rollup/rollup-linux-s390x-gnu": "4.22.4", + "@rollup/rollup-linux-x64-gnu": "4.22.4", + "@rollup/rollup-linux-x64-musl": "4.22.4", + "@rollup/rollup-win32-arm64-msvc": "4.22.4", + "@rollup/rollup-win32-ia32-msvc": "4.22.4", + "@rollup/rollup-win32-x64-msvc": "4.22.4", "fsevents": "~2.3.2" } }, - "node_modules/run-parallel": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/run-parallel/-/run-parallel-1.2.0.tgz", - "integrity": "sha512-5l4VyZR86LZ/lDxZTR6jqL8AFE2S0IFLMP26AbjsLVADxHdhB/c0GUsH+y39UfCi3dzz8OlQuPmnaJOMoDHQBA==", + "node_modules/search-insights": { + "version": "2.17.2", + "resolved": "https://registry.npmjs.org/search-insights/-/search-insights-2.17.2.tgz", + "integrity": "sha512-zFNpOpUO+tY2D85KrxJ+aqwnIfdEGi06UH2+xEb+Bp9Mwznmauqc9djbnBibJO5mpfUPPa8st6Sx65+vbeO45g==", "dev": true, - "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" - } + "peer": true }, - "node_modules/sass": { - "version": "1.77.7", - "resolved": "https://registry.npmjs.org/sass/-/sass-1.77.7.tgz", - "integrity": "sha512-9ywH75cO+rLjbrZ6en3Gp8qAMwPGBapFtlsMJoDTkcMU/bSe5a6cjKVUn5Jr4Gzg5GbP3HE8cm+02pLCgcoMow==", + "node_modules/shiki": { + "version": "1.18.0", + "resolved": "https://registry.npmjs.org/shiki/-/shiki-1.18.0.tgz", + "integrity": "sha512-8jo7tOXr96h9PBQmOHVrltnETn1honZZY76YA79MHheGQg55jBvbm9dtU+MI5pjC5NJCFuA6rvVTLVeSW5cE4A==", "dev": true, "license": "MIT", "dependencies": { - "chokidar": ">=3.0.0 <4.0.0", - "immutable": "^4.0.0", - "source-map-js": ">=0.6.2 <2.0.0" - }, - "bin": { - "sass": "sass.js" - }, - "engines": { - "node": ">=14.0.0" + "@shikijs/core": "1.18.0", + "@shikijs/engine-javascript": "1.18.0", + "@shikijs/engine-oniguruma": "1.18.0", + "@shikijs/types": "1.18.0", + "@shikijs/vscode-textmate": "^9.2.2", + "@types/hast": "^3.0.4" } }, - "node_modules/sax": { - "version": "1.4.1", - "resolved": "https://registry.npmjs.org/sax/-/sax-1.4.1.tgz", - "integrity": "sha512-+aWOz7yVScEGoKNd4PA10LZ8sk0A/z5+nXQG5giUO5rprX9jgYsTdov9qCchZiPIZezbZH+jRut8nPodFAX4Jg==", - "dev": true, - "license": "ISC" - }, - "node_modules/section-matter": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/section-matter/-/section-matter-1.0.0.tgz", - "integrity": "sha512-vfD3pmTzGpufjScBh50YHKzEu2lxBWhVEHsNGoEXmCmn2hKGfeNLYMzCJpe8cD7gqX7TJluOVpBkAequ6dgMmA==", + "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==", "dev": true, - "license": "MIT", - "dependencies": { - "extend-shallow": "^2.0.1", - "kind-of": "^6.0.0" - }, + "license": "BSD-3-Clause", "engines": { - "node": ">=4" + "node": ">=0.10.0" } }, - "node_modules/shebang-command": { - "version": "2.0.0", - "resolved": "https://registry.npmjs.org/shebang-command/-/shebang-command-2.0.0.tgz", - "integrity": "sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==", + "node_modules/space-separated-tokens": { + "version": "2.0.2", + "resolved": "https://registry.npmjs.org/space-separated-tokens/-/space-separated-tokens-2.0.2.tgz", + "integrity": "sha512-PEGlAwrG8yXGXRjW32fGbg66JAlOAwbObuqVoJpv/mRgoWDQfgH1wDPvtzWyUSNAXBGSk8h755YDbbcEy3SH2Q==", "dev": true, "license": "MIT", - "dependencies": { - "shebang-regex": "^3.0.0" - }, - "engines": { - "node": ">=8" + "funding": { + "type": "github", + "url": "https://github.com/sponsors/wooorm" } }, - "node_modules/shebang-regex": { - "version": "3.0.0", - "resolved": "https://registry.npmjs.org/shebang-regex/-/shebang-regex-3.0.0.tgz", - "integrity": "sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==", + "node_modules/speakingurl": { + "version": "14.0.1", + "resolved": "https://registry.npmjs.org/speakingurl/-/speakingurl-14.0.1.tgz", + "integrity": "sha512-1POYv7uv2gXoyGFpBCmpDVSNV74IfsWlDW216UPjbWufNf+bSU6GdbDsxdcxtfwb4xlI3yxzOTKClUosxARYrQ==", "dev": true, - "license": "MIT", + "license": "BSD-3-Clause", "engines": { - "node": ">=8" + "node": ">=0.10.0" } }, - "node_modules/signal-exit": { - "version": "4.1.0", - "resolved": "https://registry.npmjs.org/signal-exit/-/signal-exit-4.1.0.tgz", - "integrity": "sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==", + "node_modules/stringify-entities": { + "version": "4.0.4", + "resolved": "https://registry.npmjs.org/stringify-entities/-/stringify-entities-4.0.4.tgz", + "integrity": "sha512-IwfBptatlO+QCJUo19AqvrPNqlVMpW9YEL2LIVY+Rpv2qsjCGxaDLNRgeGsQWJhfItebuJhsGSLjaBbNSQ+ieg==", "dev": true, - "license": "ISC", - "engines": { - "node": ">=14" + "license": "MIT", + "dependencies": { + "character-entities-html4": "^2.0.0", + "character-entities-legacy": "^3.0.0" }, "funding": { - "url": "https://github.com/sponsors/isaacs" + "type": "github", + "url": "https://github.com/sponsors/wooorm" } }, - "node_modules/sitemap": { - "version": "8.0.0", - "resolved": "https://registry.npmjs.org/sitemap/-/sitemap-8.0.0.tgz", - "integrity": "sha512-+AbdxhM9kJsHtruUF39bwS/B0Fytw6Fr1o4ZAIAEqA6cke2xcoO2GleBw9Zw7nRzILVEgz7zBM5GiTJjie1G9A==", + "node_modules/superjson": { + "version": "2.2.1", + "resolved": "https://registry.npmjs.org/superjson/-/superjson-2.2.1.tgz", + "integrity": "sha512-8iGv75BYOa0xRJHK5vRLEjE2H/i4lulTjzpUXic3Eg8akftYjkmQDa8JARQ42rlczXyFR3IeRoeFCc7RxHsYZA==", "dev": true, "license": "MIT", "dependencies": { - "@types/node": "^17.0.5", - "@types/sax": "^1.2.1", - "arg": "^5.0.0", - "sax": "^1.2.4" - }, - "bin": { - "sitemap": "dist/cli.js" + "copy-anything": "^3.0.2" }, "engines": { - "node": ">=14.0.0", - "npm": ">=6.0.0" + "node": ">=16" } }, - "node_modules/sitemap/node_modules/@types/node": { - "version": "17.0.45", - "resolved": "https://registry.npmjs.org/@types/node/-/node-17.0.45.tgz", - "integrity": "sha512-w+tIMs3rq2afQdsPJlODhoUEKzFP1ayaoyl1CcnwtIlsVe7K7bA1NGm4s3PraqTLlXnbIN84zuBlxBWo1u9BLw==", + "node_modules/tabbable": { + "version": "6.2.0", + "resolved": "https://registry.npmjs.org/tabbable/-/tabbable-6.2.0.tgz", + "integrity": "sha512-Cat63mxsVJlzYvN51JmVXIgNoUokrIaT2zLclCXjRd8boZ0004U4KCs/sToJ75C6sdlByWxpYnb5Boif1VSFew==", "dev": true, "license": "MIT" }, - "node_modules/slash": { - "version": "5.1.0", - "resolved": "https://registry.npmjs.org/slash/-/slash-5.1.0.tgz", - "integrity": "sha512-ZA6oR3T/pEyuqwMgAKT0/hAv8oAXckzbkmR0UkUosQ+Mc4RxGoJkRmwHgHufaenlyAgE1Mxgpdcrf75y6XcnDg==", + "node_modules/to-fast-properties": { + "version": "2.0.0", + "resolved": "https://registry.npmjs.org/to-fast-properties/-/to-fast-properties-2.0.0.tgz", + "integrity": "sha512-/OaKK0xYrs3DmxRYqL/yDc+FxFUVYhDlXMhRmv3z915w2HF1tnN1omB354j8VUGO/hbRzyD6Y3sA7v7GS/ceog==", "dev": true, "license": "MIT", "engines": { - "node": ">=14.16" - }, - "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/source-map-js": { - "version": "1.2.0", - "resolved": "https://registry.npmjs.org/source-map-js/-/source-map-js-1.2.0.tgz", - "integrity": "sha512-itJW8lvSA0TXEphiRoawsCksnlf8SyvmFzIhltqAHluXd88pkCd+cXJVHTDwdCr0IzwptSm035IHQktUu1QUMg==", - "dev": true, - "license": "BSD-3-Clause", - "engines": { - "node": ">=0.10.0" + "node": ">=4" } }, - "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/stdin-discarder": { - "version": "0.2.2", - "resolved": "https://registry.npmjs.org/stdin-discarder/-/stdin-discarder-0.2.2.tgz", - "integrity": "sha512-UhDfHmA92YAlNnCfhmq0VeNL5bDbiZGg7sZ2IvPsXubGkiNa9EC+tUTsjBRsYUAz87btI6/1wf4XoVvQ3uRnmQ==", + "node_modules/trim-lines": { + "version": "3.0.1", + "resolved": "https://registry.npmjs.org/trim-lines/-/trim-lines-3.0.1.tgz", + "integrity": "sha512-kRj8B+YHZCc9kQYdWfJB2/oUl9rA99qbowYYBtr4ui4mZyAQ2JpvVBd/6U2YloATfqBhBTSMhTpgBHtU0Mf3Rg==", "dev": true, "license": "MIT", - "engines": { - "node": ">=18" - }, "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "type": "github", + "url": "https://github.com/sponsors/wooorm" } }, - "node_modules/string-width": { - "version": "7.2.0", - "resolved": "https://registry.npmjs.org/string-width/-/string-width-7.2.0.tgz", - "integrity": "sha512-tsaTIkKW9b4N+AEj+SVA+WhJzV7/zMhcSu78mLKWSk7cXMOSHsBKFWUs0fWwq8QyK3MgJBQRX6Gbi4kYbdvGkQ==", + "node_modules/unist-util-is": { + "version": "6.0.0", + "resolved": "https://registry.npmjs.org/unist-util-is/-/unist-util-is-6.0.0.tgz", + "integrity": "sha512-2qCTHimwdxLfz+YzdGfkqNlH0tLi9xjTnHddPmJwtIG9MGsdbutfTc4P+haPD7l7Cjxf/WZj+we5qfVPvvxfYw==", "dev": true, "license": "MIT", "dependencies": { - "emoji-regex": "^10.3.0", - "get-east-asian-width": "^1.0.0", - "strip-ansi": "^7.1.0" - }, - "engines": { - "node": ">=18" + "@types/unist": "^3.0.0" }, "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "type": "opencollective", + "url": "https://opencollective.com/unified" } }, - "node_modules/strip-ansi": { - "version": "7.1.0", - "resolved": "https://registry.npmjs.org/strip-ansi/-/strip-ansi-7.1.0.tgz", - "integrity": "sha512-iq6eVVI64nQQTRYq2KtEg2d2uU7LElhTJwsH4YzIHZshxlgZms/wIc4VoDQTlG/IvVIrBKG06CrZnp0qv7hkcQ==", + "node_modules/unist-util-position": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/unist-util-position/-/unist-util-position-5.0.0.tgz", + "integrity": "sha512-fucsC7HjXvkB5R3kTCO7kUjRdrS0BJt3M/FPxmHMBOm8JQi2BsHAHFsy27E0EolP8rp0NzXsJ+jNPyDWvOJZPA==", "dev": true, "license": "MIT", "dependencies": { - "ansi-regex": "^6.0.1" - }, - "engines": { - "node": ">=12" + "@types/unist": "^3.0.0" }, "funding": { - "url": "https://github.com/chalk/strip-ansi?sponsor=1" - } - }, - "node_modules/strip-bom-string": { - "version": "1.0.0", - "resolved": "https://registry.npmjs.org/strip-bom-string/-/strip-bom-string-1.0.0.tgz", - "integrity": "sha512-uCC2VHvQRYu+lMh4My/sFNmF2klFymLX1wHJeXnbEJERpV/ZsVuonzerjfrGpIGF7LBVa1O7i9kjiWvJiFck8g==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">=0.10.0" + "type": "opencollective", + "url": "https://opencollective.com/unified" } }, - "node_modules/strip-final-newline": { + "node_modules/unist-util-stringify-position": { "version": "4.0.0", - "resolved": "https://registry.npmjs.org/strip-final-newline/-/strip-final-newline-4.0.0.tgz", - "integrity": "sha512-aulFJcD6YK8V1G7iRB5tigAP4TsHBZZrOV8pjV++zdUwmeV8uzbY7yn6h9MswN62adStNZFuCIx4haBnRuMDaw==", + "resolved": "https://registry.npmjs.org/unist-util-stringify-position/-/unist-util-stringify-position-4.0.0.tgz", + "integrity": "sha512-0ASV06AAoKCDkS2+xw5RXJywruurpbC4JZSm7nr7MOt1ojAzvyyaO+UxZf18j8FCF6kmzCZKcAgN/yu2gm2XgQ==", "dev": true, "license": "MIT", - "engines": { - "node": ">=18" + "dependencies": { + "@types/unist": "^3.0.0" }, "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "type": "opencollective", + "url": "https://opencollective.com/unified" } }, - "node_modules/to-regex-range": { - "version": "5.0.1", - "resolved": "https://registry.npmjs.org/to-regex-range/-/to-regex-range-5.0.1.tgz", - "integrity": "sha512-65P7iz6X5yEr1cwcgvQxbbIw7Uk3gOy5dIdtZ4rDveLqhrdJP+Li/Hx6tyK0NEb+2GCyneCMJiGqrADCSNk8sQ==", + "node_modules/unist-util-visit": { + "version": "5.0.0", + "resolved": "https://registry.npmjs.org/unist-util-visit/-/unist-util-visit-5.0.0.tgz", + "integrity": "sha512-MR04uvD+07cwl/yhVuVWAtw+3GOR/knlL55Nd/wAdblk27GCVt3lqpTivy/tkJcZoNPzTwS1Y+KMojlLDhoTzg==", "dev": true, "license": "MIT", "dependencies": { - "is-number": "^7.0.0" + "@types/unist": "^3.0.0", + "unist-util-is": "^6.0.0", + "unist-util-visit-parents": "^6.0.0" }, - "engines": { - "node": ">=8.0" + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" } }, - "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==", - "dev": true, - "license": "MIT" - }, - "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==", - "dev": true, - "license": "MIT" - }, - "node_modules/unicorn-magic": { - "version": "0.1.0", - "resolved": "https://registry.npmjs.org/unicorn-magic/-/unicorn-magic-0.1.0.tgz", - "integrity": "sha512-lRfVq8fE8gz6QMBuDM6a+LO3IAzTi05H6gCVaUpir2E1Rwpo4ZUog45KpNXKC/Mn3Yb9UDuHumeFTo9iV/D9FQ==", + "node_modules/unist-util-visit-parents": { + "version": "6.0.1", + "resolved": "https://registry.npmjs.org/unist-util-visit-parents/-/unist-util-visit-parents-6.0.1.tgz", + "integrity": "sha512-L/PqWzfTP9lzzEa6CKs0k2nARxTdZduw3zyh8d2NVBnsyvHjSX4TWse388YrrQKbvI8w20fGjGlhgT96WwKykw==", "dev": true, "license": "MIT", - "engines": { - "node": ">=18" + "dependencies": { + "@types/unist": "^3.0.0", + "unist-util-is": "^6.0.0" }, "funding": { - "url": "https://github.com/sponsors/sindresorhus" - } - }, - "node_modules/universalify": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/universalify/-/universalify-2.0.1.tgz", - "integrity": "sha512-gptHNQghINnc/vTGIk0SOFGFNXw7JVrlRUtConJRlvaw6DuX0wO5Jeko9sWrMBhh+PsYAZ7oXAiOnf/UKogyiw==", - "dev": true, - "license": "MIT", - "engines": { - "node": ">= 10.0.0" + "type": "opencollective", + "url": "https://opencollective.com/unified" } }, - "node_modules/upath": { - "version": "2.0.1", - "resolved": "https://registry.npmjs.org/upath/-/upath-2.0.1.tgz", - "integrity": "sha512-1uEe95xksV1O0CYKXo8vQvN1JEbtJp7lb7C5U9HMsIp6IVwntkH/oNUzyVNQSd4S1sYk2FpSSW44FqMc8qee5w==", + "node_modules/vfile": { + "version": "6.0.3", + "resolved": "https://registry.npmjs.org/vfile/-/vfile-6.0.3.tgz", + "integrity": "sha512-KzIbH/9tXat2u30jf+smMwFCsno4wHVdNmzFyL+T/L3UGqqk6JKfVqOFOZEpZSHADH1k40ab6NUIXZq422ov3Q==", "dev": true, "license": "MIT", - "engines": { - "node": ">=4", - "yarn": "*" + "dependencies": { + "@types/unist": "^3.0.0", + "vfile-message": "^4.0.0" + }, + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" } }, - "node_modules/update-browserslist-db": { - "version": "1.1.0", - "resolved": "https://registry.npmjs.org/update-browserslist-db/-/update-browserslist-db-1.1.0.tgz", - "integrity": "sha512-EdRAaAyk2cUE1wOf2DkEhzxqOQvFOoRJFNS6NeyJ01Gp2beMRpBAINjM2iDXE3KCuKhwnvHIQCJm6ThL2Z+HzQ==", + "node_modules/vfile-message": { + "version": "4.0.2", + "resolved": "https://registry.npmjs.org/vfile-message/-/vfile-message-4.0.2.tgz", + "integrity": "sha512-jRDZ1IMLttGj41KcZvlrYAaI3CfqpLpfpf+Mfig13viT6NKvRzWZ+lXz0Y5D60w6uJIBAOGq9mSHf0gktF0duw==", "dev": true, - "funding": [ - { - "type": "opencollective", - "url": "https://opencollective.com/browserslist" - }, - { - "type": "tidelift", - "url": "https://tidelift.com/funding/github/npm/browserslist" - }, - { - "type": "github", - "url": "https://github.com/sponsors/ai" - } - ], "license": "MIT", "dependencies": { - "escalade": "^3.1.2", - "picocolors": "^1.0.1" - }, - "bin": { - "update-browserslist-db": "cli.js" + "@types/unist": "^3.0.0", + "unist-util-stringify-position": "^4.0.0" }, - "peerDependencies": { - "browserslist": ">= 4.21.0" + "funding": { + "type": "opencollective", + "url": "https://opencollective.com/unified" } }, "node_modules/vite": { - "version": "5.3.3", - "resolved": "https://registry.npmjs.org/vite/-/vite-5.3.3.tgz", - "integrity": "sha512-NPQdeCU0Dv2z5fu+ULotpuq5yfCS1BzKUIPhNbP3YBfAMGJXbt2nS+sbTFu+qchaqWTD+H3JK++nRwr6XIcp6A==", + "version": "5.4.8", + "resolved": "https://registry.npmjs.org/vite/-/vite-5.4.8.tgz", + "integrity": "sha512-FqrItQ4DT1NC4zCUqMB4c4AZORMKIa0m8/URVCZ77OZ/QSNeJ54bU1vrFADbDsuwfIPcgknRkmqakQcgnL4GiQ==", "dev": true, "license": "MIT", "dependencies": { "esbuild": "^0.21.3", - "postcss": "^8.4.39", - "rollup": "^4.13.0" + "postcss": "^8.4.43", + "rollup": "^4.20.0" }, "bin": { "vite": "bin/vite.js" @@ -3462,6 +2412,7 @@ "less": "*", "lightningcss": "^1.21.0", "sass": "*", + "sass-embedded": "*", "stylus": "*", "sugarss": "*", "terser": "^5.4.0" @@ -3479,6 +2430,9 @@ "sass": { "optional": true }, + "sass-embedded": { + "optional": true + }, "stylus": { "optional": true }, @@ -3490,108 +2444,77 @@ } } }, - "node_modules/vue": { - "version": "3.4.31", - "resolved": "https://registry.npmjs.org/vue/-/vue-3.4.31.tgz", - "integrity": "sha512-njqRrOy7W3YLAlVqSKpBebtZpDVg21FPoaq1I7f/+qqBThK9ChAIjkRWgeP6Eat+8C+iia4P3OYqpATP21BCoQ==", + "node_modules/vitepress": { + "version": "1.3.4", + "resolved": "https://registry.npmjs.org/vitepress/-/vitepress-1.3.4.tgz", + "integrity": "sha512-I1/F6OW1xl3kW4PaIMC6snxjWgf3qfziq2aqsDoFc/Gt41WbcRv++z8zjw8qGRIJ+I4bUW7ZcKFDHHN/jkH9DQ==", "dev": true, "license": "MIT", "dependencies": { - "@vue/compiler-dom": "3.4.31", - "@vue/compiler-sfc": "3.4.31", - "@vue/runtime-dom": "3.4.31", - "@vue/server-renderer": "3.4.31", - "@vue/shared": "3.4.31" + "@docsearch/css": "^3.6.1", + "@docsearch/js": "^3.6.1", + "@shikijs/core": "^1.13.0", + "@shikijs/transformers": "^1.13.0", + "@types/markdown-it": "^14.1.2", + "@vitejs/plugin-vue": "^5.1.2", + "@vue/devtools-api": "^7.3.8", + "@vue/shared": "^3.4.38", + "@vueuse/core": "^11.0.0", + "@vueuse/integrations": "^11.0.0", + "focus-trap": "^7.5.4", + "mark.js": "8.11.1", + "minisearch": "^7.1.0", + "shiki": "^1.13.0", + "vite": "^5.4.1", + "vue": "^3.4.38" + }, + "bin": { + "vitepress": "bin/vitepress.js" }, "peerDependencies": { - "typescript": "*" + "markdown-it-mathjax3": "^4", + "postcss": "^8" }, "peerDependenciesMeta": { - "typescript": { + "markdown-it-mathjax3": { + "optional": true + }, + "postcss": { "optional": true } } }, - "node_modules/vue-router": { - "version": "4.4.0", - "resolved": "https://registry.npmjs.org/vue-router/-/vue-router-4.4.0.tgz", - "integrity": "sha512-HB+t2p611aIZraV2aPSRNXf0Z/oLZFrlygJm+sZbdJaW6lcFqEDQwnzUBXn+DApw+/QzDU/I9TeWx9izEjTmsA==", - "dev": true, - "license": "MIT", - "dependencies": { - "@vue/devtools-api": "^6.5.1" - }, - "funding": { - "url": "https://github.com/sponsors/posva" - }, - "peerDependencies": { - "vue": "^3.2.0" - } - }, - "node_modules/vuepress": { - "version": "2.0.0-rc.14", - "resolved": "https://registry.npmjs.org/vuepress/-/vuepress-2.0.0-rc.14.tgz", - "integrity": "sha512-t902FYKFF2MavNQjm/I4gN8etl6iX4PETutu4c1Pt7qQjXF6Hp2eurZaW32O5/TaYWsbVG757FwKodRLj9GDng==", + "node_modules/vue": { + "version": "3.5.8", + "resolved": "https://registry.npmjs.org/vue/-/vue-3.5.8.tgz", + "integrity": "sha512-hvuvuCy51nP/1fSRvrrIqTLSvrSyz2Pq+KQ8S8SXCxTWVE0nMaOnSDnSOxV1eYmGfvK7mqiwvd1C59CEEz7dAQ==", "dev": true, "license": "MIT", "dependencies": { - "@vuepress/cli": "2.0.0-rc.14", - "@vuepress/client": "2.0.0-rc.14", - "@vuepress/core": "2.0.0-rc.14", - "@vuepress/markdown": "2.0.0-rc.14", - "@vuepress/shared": "2.0.0-rc.14", - "@vuepress/utils": "2.0.0-rc.14", - "vue": "^3.4.29" - }, - "bin": { - "vuepress": "bin/vuepress.js", - "vuepress-vite": "bin/vuepress-vite.js", - "vuepress-webpack": "bin/vuepress-webpack.js" - }, - "engines": { - "node": ">=18.16.0" + "@vue/compiler-dom": "3.5.8", + "@vue/compiler-sfc": "3.5.8", + "@vue/runtime-dom": "3.5.8", + "@vue/server-renderer": "3.5.8", + "@vue/shared": "3.5.8" }, "peerDependencies": { - "@vuepress/bundler-vite": "2.0.0-rc.14", - "@vuepress/bundler-webpack": "2.0.0-rc.14", - "vue": "^3.4.0" + "typescript": "*" }, "peerDependenciesMeta": { - "@vuepress/bundler-vite": { - "optional": true - }, - "@vuepress/bundler-webpack": { + "typescript": { "optional": true } } }, - "node_modules/which": { - "version": "2.0.2", - "resolved": "https://registry.npmjs.org/which/-/which-2.0.2.tgz", - "integrity": "sha512-BLI3Tl1TW3Pvl70l3yq3Y64i+awpwXqsGBYWkkqMtnbXgrMD+yj7rhW0kuEDxzJaYXGjEW5ogapKNMEKNMjibA==", - "dev": true, - "license": "ISC", - "dependencies": { - "isexe": "^2.0.0" - }, - "bin": { - "node-which": "bin/node-which" - }, - "engines": { - "node": ">= 8" - } - }, - "node_modules/yoctocolors": { - "version": "2.1.1", - "resolved": "https://registry.npmjs.org/yoctocolors/-/yoctocolors-2.1.1.tgz", - "integrity": "sha512-GQHQqAopRhwU8Kt1DDM8NjibDXHC8eoh1erhGAJPEyveY9qqVeXvVikNKrDz69sHowPMorbPUrH/mx8c50eiBQ==", + "node_modules/zwitch": { + "version": "2.0.4", + "resolved": "https://registry.npmjs.org/zwitch/-/zwitch-2.0.4.tgz", + "integrity": "sha512-bXE4cR/kVZhKZX/RjPEflHaKVhUVl85noU3v6b8apfQEc1x4A+zBxjZ4lN8LqGd6WZ3dl98pY4o717VFmoPp+A==", "dev": true, "license": "MIT", - "engines": { - "node": ">=18" - }, "funding": { - "url": "https://github.com/sponsors/sindresorhus" + "type": "github", + "url": "https://github.com/sponsors/wooorm" } } } diff --git a/package.json b/package.json index 1bdee4c..253bbad 100644 --- a/package.json +++ b/package.json @@ -1,19 +1,10 @@ { - "name": "Office-Tool-docs", - "version": "2.0.0", - "main": "index.js", - "repository": "https://github.com/YerongAI/Office-Tool-docs.git", - "author": "Yerong", - "license": "MIT", "devDependencies": { - "@vuepress/bundler-vite": "^2.0.0-rc.14", - "@vuepress/plugin-google-analytics": "^2.0.0-rc.37", - "@vuepress/plugin-search": "^2.0.0-rc.37", - "@vuepress/theme-default": "^2.0.0-rc.37", - "vuepress": "^2.0.0-rc.14" + "vitepress": "^1.3.4" }, "scripts": { - "docs:dev": "vuepress dev docs", - "docs:build": "vuepress build docs" + "docs:dev": "vitepress dev docs", + "docs:build": "vitepress build docs", + "docs:preview": "vitepress preview docs" } -} +} \ No newline at end of file