diff --git a/apps/web-antd/src/views/bpm/processInstance/create/index.vue b/apps/web-antd/src/views/bpm/processInstance/create/index.vue index c4cefbbfc..691cf0bbb 100644 --- a/apps/web-antd/src/views/bpm/processInstance/create/index.vue +++ b/apps/web-antd/src/views/bpm/processInstance/create/index.vue @@ -284,6 +284,17 @@ onMounted(() => { diff --git a/apps/web-antd/src/views/infra/apiAccessLog/data.ts b/apps/web-antd/src/views/infra/apiAccessLog/data.ts index 73662e3a3..83b2977c0 100644 --- a/apps/web-antd/src/views/infra/apiAccessLog/data.ts +++ b/apps/web-antd/src/views/infra/apiAccessLog/data.ts @@ -245,7 +245,7 @@ export function useDetailSchema(): DescriptionItemSchema[] { render: (val, data) => { if (val === 0) { return '正常'; - } else if (val > 0 && data?.resultCode > 0) { + } else if (val > 0 && data?.resultMsg) { return `失败 | ${val} | ${data.resultMsg}`; } return ''; diff --git a/apps/web-antd/src/views/mall/promotion/components/diy-editor/components/mobile/hot-zone/property.vue b/apps/web-antd/src/views/mall/promotion/components/diy-editor/components/mobile/hot-zone/property.vue index 4f4702812..835434341 100644 --- a/apps/web-antd/src/views/mall/promotion/components/diy-editor/components/mobile/hot-zone/property.vue +++ b/apps/web-antd/src/views/mall/promotion/components/diy-editor/components/mobile/hot-zone/property.vue @@ -4,7 +4,6 @@ import type { HotZoneProperty } from './config'; import { ref } from 'vue'; import { useVModel } from '@vueuse/core'; - import { Button, Form, FormItem, Typography } from 'ant-design-vue'; import UploadImg from '#/components/upload/image-upload.vue'; @@ -30,7 +29,12 @@ const handleOpenEditDialog = () => { - - diff --git a/apps/web-ele/src/views/mall/promotion/components/diy-editor/components/mobile/Divider/config.ts b/apps/web-ele/src/views/mall/promotion/components/diy-editor/components/mobile/divider/config.ts similarity index 62% rename from apps/web-ele/src/views/mall/promotion/components/diy-editor/components/mobile/Divider/config.ts rename to apps/web-ele/src/views/mall/promotion/components/diy-editor/components/mobile/divider/config.ts index 17e5a79bf..3ab6eef11 100644 --- a/apps/web-ele/src/views/mall/promotion/components/diy-editor/components/mobile/Divider/config.ts +++ b/apps/web-ele/src/views/mall/promotion/components/diy-editor/components/mobile/divider/config.ts @@ -2,19 +2,14 @@ import type { DiyComponent } from '../../../util'; /** 分割线属性 */ export interface DividerProperty { - // 高度 - height: number; - // 线宽 - lineWidth: number; - // 边距类型 - paddingType: 'horizontal' | 'none'; - // 颜色 - lineColor: string; - // 类型 - borderType: 'dashed' | 'dotted' | 'none' | 'solid'; + height: number; // 高度 + lineWidth: number; // 线宽 + paddingType: 'horizontal' | 'none'; // 边距类型 + lineColor: string; // 颜色 + borderType: 'dashed' | 'dotted' | 'none' | 'solid'; // 类型 } -// 定义组件 +/** 定义组件 */ export const component = { id: 'Divider', name: '分割线', diff --git a/apps/web-ele/src/views/mall/promotion/components/diy-editor/components/mobile/Divider/index.vue b/apps/web-ele/src/views/mall/promotion/components/diy-editor/components/mobile/divider/index.vue similarity index 94% rename from apps/web-ele/src/views/mall/promotion/components/diy-editor/components/mobile/Divider/index.vue rename to apps/web-ele/src/views/mall/promotion/components/diy-editor/components/mobile/divider/index.vue index 1736db389..e07eda87e 100644 --- a/apps/web-ele/src/views/mall/promotion/components/diy-editor/components/mobile/Divider/index.vue +++ b/apps/web-ele/src/views/mall/promotion/components/diy-editor/components/mobile/divider/index.vue @@ -25,5 +25,3 @@ defineProps<{ property: DividerProperty }>(); > - - diff --git a/apps/web-ele/src/views/mall/promotion/components/diy-editor/components/mobile/Divider/property.vue b/apps/web-ele/src/views/mall/promotion/components/diy-editor/components/mobile/divider/property.vue similarity index 93% rename from apps/web-ele/src/views/mall/promotion/components/diy-editor/components/mobile/Divider/property.vue rename to apps/web-ele/src/views/mall/promotion/components/diy-editor/components/mobile/divider/property.vue index 27df10576..4308e4ced 100644 --- a/apps/web-ele/src/views/mall/promotion/components/diy-editor/components/mobile/Divider/property.vue +++ b/apps/web-ele/src/views/mall/promotion/components/diy-editor/components/mobile/divider/property.vue @@ -13,15 +13,15 @@ import { ElTooltip, } from 'element-plus'; -import { InputWithColor as ColorInput } from '#/views/mall/promotion/components'; +import { ColorInput } from '#/views/mall/promotion/components'; -// 导航栏属性面板 +/** 导航栏属性面板 */ defineOptions({ name: 'DividerProperty' }); -const props = defineProps<{ modelValue: DividerProperty }>(); -const emit = defineEmits(['update:modelValue']); -const formData = useVModel(props, 'modelValue', emit); -// 线类型 +const props = defineProps<{ modelValue: DividerProperty }>(); + +const emit = defineEmits(['update:modelValue']); + const BORDER_TYPES = [ { icon: 'vaadin:line-h', @@ -43,7 +43,8 @@ const BORDER_TYPES = [ text: '无', type: 'none', }, -]; +]; // 线类型 +const formData = useVModel(props, 'modelValue', emit); - - diff --git a/apps/web-ele/src/views/mall/promotion/components/diy-editor/components/mobile/floating-action-button/config.ts b/apps/web-ele/src/views/mall/promotion/components/diy-editor/components/mobile/floating-action-button/config.ts index 22b98581c..d93b1f462 100644 --- a/apps/web-ele/src/views/mall/promotion/components/diy-editor/components/mobile/floating-action-button/config.ts +++ b/apps/web-ele/src/views/mall/promotion/components/diy-editor/components/mobile/floating-action-button/config.ts @@ -1,28 +1,21 @@ import type { DiyComponent } from '../../../util'; -// 悬浮按钮属性 +/** 悬浮按钮属性 */ export interface FloatingActionButtonProperty { - // 展开方向 - direction: 'horizontal' | 'vertical'; - // 是否显示文字 - showText: boolean; - // 按钮列表 - list: FloatingActionButtonItemProperty[]; + direction: 'horizontal' | 'vertical'; // 展开方向 + showText: boolean; // 是否显示文字 + list: FloatingActionButtonItemProperty[]; // 按钮列表 } -// 悬浮按钮项属性 +/** 悬浮按钮项属性 */ export interface FloatingActionButtonItemProperty { - // 图片地址 - imgUrl: string; - // 跳转连接 - url: string; - // 文字 - text: string; - // 文字颜色 - textColor: string; + imgUrl: string; // 图片地址 + url: string; // 跳转连接 + text: string; // 文字 + textColor: string; // 文字颜色 } -// 定义组件 +/** 定义组件 */ export const component = { id: 'FloatingActionButton', name: '悬浮按钮', diff --git a/apps/web-ele/src/views/mall/promotion/components/diy-editor/components/mobile/floating-action-button/index.vue b/apps/web-ele/src/views/mall/promotion/components/diy-editor/components/mobile/floating-action-button/index.vue index eb6563766..d0c2ae410 100644 --- a/apps/web-ele/src/views/mall/promotion/components/diy-editor/components/mobile/floating-action-button/index.vue +++ b/apps/web-ele/src/views/mall/promotion/components/diy-editor/components/mobile/floating-action-button/index.vue @@ -5,23 +5,20 @@ import { ref } from 'vue'; import { IconifyIcon } from '@vben/icons'; -import { ElImage, ElMessage } from 'element-plus'; +import { ElButton, ElImage } from 'element-plus'; /** 悬浮按钮 */ defineOptions({ name: 'FloatingActionButton' }); -// 定义属性 + +/** 定义属性 */ defineProps<{ property: FloatingActionButtonProperty }>(); -// 是否展开 -const expanded = ref(false); -// 处理展开/折叠 -const handleToggleFab = () => { - expanded.value = !expanded.value; -}; +const expanded = ref(false); // 是否展开 -const handleActive = (index: number) => { - ElMessage.success(`点击了${index}`); -}; +/** 处理展开/折叠 */ +function handleToggleFab() { + expanded.value = !expanded.value; +} - - diff --git a/apps/web-ele/src/views/mall/promotion/components/diy-editor/components/mobile/hot-zone/components/hot-zone-edit-dialog/controller.ts b/apps/web-ele/src/views/mall/promotion/components/diy-editor/components/mobile/hot-zone/components/hot-zone-edit-dialog/controller.ts index 2bac4c39e..b4000eccc 100644 --- a/apps/web-ele/src/views/mall/promotion/components/diy-editor/components/mobile/hot-zone/components/hot-zone-edit-dialog/controller.ts +++ b/apps/web-ele/src/views/mall/promotion/components/diy-editor/components/mobile/hot-zone/components/hot-zone-edit-dialog/controller.ts @@ -2,10 +2,9 @@ import type { StyleValue } from 'vue'; import type { HotZoneItemProperty } from '../../config'; -// 热区的最小宽高 -export const HOT_ZONE_MIN_SIZE = 100; +export const HOT_ZONE_MIN_SIZE = 100; // 热区的最小宽高 -// 控制的类型 +/** 控制的类型 */ export enum CONTROL_TYPE_ENUM { LEFT, TOP, @@ -13,14 +12,14 @@ export enum CONTROL_TYPE_ENUM { HEIGHT, } -// 定义热区的控制点 +/** 定义热区的控制点 */ export interface ControlDot { position: string; types: CONTROL_TYPE_ENUM[]; style: StyleValue; } -// 热区的8个控制点 +/** 热区的 8 个控制点 */ export const CONTROL_DOT_LIST = [ { position: '左上角', @@ -98,10 +97,10 @@ export const CONTROL_DOT_LIST = [ ] as ControlDot[]; // region 热区的缩放 -// 热区的缩放比例 -export const HOT_ZONE_SCALE_RATE = 2; -// 缩小:缩回适合手机屏幕的大小 -export const zoomOut = (list?: HotZoneItemProperty[]) => { +export const HOT_ZONE_SCALE_RATE = 2; // 热区的缩放比例 + +/** 缩小:缩回适合手机屏幕的大小 */ +export function zoomOut(list?: HotZoneItemProperty[]) { return ( list?.map((hotZone) => ({ ...hotZone, @@ -111,9 +110,10 @@ export const zoomOut = (list?: HotZoneItemProperty[]) => { height: (hotZone.height /= HOT_ZONE_SCALE_RATE), })) || [] ); -}; -// 放大:作用是为了方便在电脑屏幕上编辑 -export const zoomIn = (list?: HotZoneItemProperty[]) => { +} + +/** 放大:作用是为了方便在电脑屏幕上编辑 */ +export function zoomIn(list?: HotZoneItemProperty[]) { return ( list?.map((hotZone) => ({ ...hotZone, @@ -123,7 +123,8 @@ export const zoomIn = (list?: HotZoneItemProperty[]) => { height: (hotZone.height *= HOT_ZONE_SCALE_RATE), })) || [] ); -}; +} + // endregion /** diff --git a/apps/web-ele/src/views/mall/promotion/components/diy-editor/components/mobile/hot-zone/components/hot-zone-edit-dialog/index.vue b/apps/web-ele/src/views/mall/promotion/components/diy-editor/components/mobile/hot-zone/components/hot-zone-edit-dialog/index.vue index f59459a3f..c232854eb 100644 --- a/apps/web-ele/src/views/mall/promotion/components/diy-editor/components/mobile/hot-zone/components/hot-zone-edit-dialog/index.vue +++ b/apps/web-ele/src/views/mall/promotion/components/diy-editor/components/mobile/hot-zone/components/hot-zone-edit-dialog/index.vue @@ -6,9 +6,12 @@ import type { AppLink } from '#/views/mall/promotion/components/app-link-input/d import { ref } from 'vue'; +import { useVbenModal } from '@vben/common-ui'; import { IconifyIcon } from '@vben/icons'; -import { ElButton, ElDialog, ElImage } from 'element-plus'; +import { ElButton, ElImage } from 'element-plus'; + +import { AppLinkSelectDialog } from '#/views/mall/promotion/components'; import { CONTROL_DOT_LIST, @@ -22,7 +25,7 @@ import { /** 热区编辑对话框 */ defineOptions({ name: 'HotZoneEditDialog' }); -// 定义属性 +/** 定义属性 */ const props = defineProps({ modelValue: { type: Array, @@ -33,51 +36,60 @@ const props = defineProps({ default: '', }, }); + const emit = defineEmits(['update:modelValue']); + const formData = ref([]); -// 弹窗的是否显示 -const dialogVisible = ref(false); -// 打开弹窗 -const open = () => { +const [Modal, modalApi] = useVbenModal({ + showCancelButton: false, + onConfirm() { + const list = zoomOut(formData.value); + emit('update:modelValue', list); + modalApi.close(); + }, +}); + +/** 打开弹窗 */ +function open() { // 放大 formData.value = zoomIn(props.modelValue); - dialogVisible.value = true; -}; -// 提供 open 方法,用于打开弹窗 -defineExpose({ open }); + modalApi.open(); +} -// 热区容器 -const container = ref(); +defineExpose({ open }); // 提供 open 方法,用于打开弹窗 -// 增加热区 -const handleAdd = () => { +const container = ref(); // 热区容器 + +/** 增加热区 */ +function handleAdd() { formData.value.push({ width: HOT_ZONE_MIN_SIZE, height: HOT_ZONE_MIN_SIZE, top: 0, left: 0, } as HotZoneItemProperty); -}; -// 删除热区 -const handleRemove = (hotZone: HotZoneItemProperty) => { - formData.value = formData.value.filter((item) => item !== hotZone); -}; +} -// 移动热区 -const handleMove = (item: HotZoneItemProperty, e: MouseEvent) => { +/** 删除热区 */ +function handleRemove(hotZone: HotZoneItemProperty) { + formData.value = formData.value.filter((item) => item !== hotZone); +} + +/** 移动热区 */ +function handleMove(item: HotZoneItemProperty, e: MouseEvent) { useDraggable(item, e, (left, top, _, __, moveWidth, moveHeight) => { setLeft(item, left + moveWidth); setTop(item, top + moveHeight); }); -}; +} -// 调整热区大小、位置 -const handleResize = ( +/** 调整热区大小、位置 */ +function handleResize( item: HotZoneItemProperty, ctrlDot: ControlDot, e: MouseEvent, -) => { +) { useDraggable(item, e, (left, top, width, height, moveWidth, moveHeight) => { ctrlDot.types.forEach((type) => { switch (type) { @@ -112,23 +124,25 @@ const handleResize = ( } }); }); -}; +} -// 设置X轴坐标 -const setLeft = (item: HotZoneItemProperty, left: number) => { +/** 设置 X 轴坐标 */ +function setLeft(item: HotZoneItemProperty, left: number) { // 不能超出容器 if (left >= 0 && left <= container.value!.offsetWidth - item.width) { item.left = left; } -}; -// 设置Y轴坐标 -const setTop = (item: HotZoneItemProperty, top: number) => { +} + +/** 设置Y轴坐标 */ +function setTop(item: HotZoneItemProperty, top: number) { // 不能超出容器 if (top >= 0 && top <= container.value!.offsetHeight - item.height) { item.top = top; } -}; -// 设置宽度 +} + +/** 设置宽度 */ const setWidth = (item: HotZoneItemProperty, width: number) => { // 不能小于最小宽度 && 不能超出容器右边 if ( @@ -138,7 +152,8 @@ const setWidth = (item: HotZoneItemProperty, width: number) => { item.width = width; } }; -// 设置高度 + +/** 设置高度 */ const setHeight = (item: HotZoneItemProperty, height: number) => { // 不能小于最小高度 && 不能超出容器底部 if ( @@ -149,39 +164,27 @@ const setHeight = (item: HotZoneItemProperty, height: number) => { } }; -// 处理对话框关闭 -const handleSubmit = () => { - // 会自动触发handleClose - dialogVisible.value = false; -}; - -// 处理对话框关闭 -const handleClose = () => { - // 缩小 - const list = zoomOut(formData.value); - emit('update:modelValue', list); -}; - const activeHotZone = ref(); const appLinkDialogRef = ref(); + +/** 显示 App 链接选择对话框 */ const handleShowAppLinkDialog = (hotZone: HotZoneItemProperty) => { activeHotZone.value = hotZone; appLinkDialogRef.value.open(hotZone.url); }; + +/** 处理 App 链接选择变更 */ const handleAppLinkChange = (appLink: AppLink) => { - if (!appLink || !activeHotZone.value) return; + if (!appLink || !activeHotZone.value) { + return; + } activeHotZone.value.name = appLink.name; activeHotZone.value.url = appLink.path; }; - - diff --git a/apps/web-ele/src/views/mall/promotion/components/diy-editor/components/mobile/magic-cube/property.vue b/apps/web-ele/src/views/mall/promotion/components/diy-editor/components/mobile/magic-cube/property.vue index 1f23095c6..ddccd8d0f 100644 --- a/apps/web-ele/src/views/mall/promotion/components/diy-editor/components/mobile/magic-cube/property.vue +++ b/apps/web-ele/src/views/mall/promotion/components/diy-editor/components/mobile/magic-cube/property.vue @@ -18,11 +18,14 @@ import ComponentContainerProperty from '../../component-container-property.vue'; defineOptions({ name: 'MagicCubeProperty' }); const props = defineProps<{ modelValue: MagicCubeProperty }>(); + const emit = defineEmits(['update:modelValue']); + const formData = useVModel(props, 'modelValue', emit); -// 选中的热区 -const selectedHotAreaIndex = ref(-1); +const selectedHotAreaIndex = ref(-1); // 选中的热区 + +/** 处理热区被选中事件 */ const handleHotAreaSelected = (_: any, index: number) => { selectedHotAreaIndex.value = index; }; @@ -30,7 +33,6 @@ const handleHotAreaSelected = (_: any, index: number) => { - - diff --git a/apps/web-ele/src/views/mall/promotion/components/diy-editor/index.vue b/apps/web-ele/src/views/mall/promotion/components/diy-editor/index.vue index f6bb1758d..8d3fda28b 100644 --- a/apps/web-ele/src/views/mall/promotion/components/diy-editor/index.vue +++ b/apps/web-ele/src/views/mall/promotion/components/diy-editor/index.vue @@ -541,7 +541,7 @@ $phone-width: 375px; } /* 属性面板分组 */ - :deep(.property-group) { + .property-group { margin: 0 -20px; &.el-card { diff --git a/apps/web-ele/src/views/mall/promotion/components/index.ts b/apps/web-ele/src/views/mall/promotion/components/index.ts index a088806e2..6dbe001fe 100644 --- a/apps/web-ele/src/views/mall/promotion/components/index.ts +++ b/apps/web-ele/src/views/mall/promotion/components/index.ts @@ -1,4 +1,5 @@ export { default as AppLinkInput } from './app-link-input/index.vue'; +export { default as AppLinkSelectDialog } from './app-link-input/select-dialog.vue'; export { default as ColorInput } from './color-input/index.vue'; export { default as DiyEditor } from './diy-editor/index.vue'; export { type DiyComponentLibrary, PAGE_LIBS } from './diy-editor/util'; diff --git a/apps/web-ele/src/views/mall/promotion/components/magic-cube-editor/index.vue b/apps/web-ele/src/views/mall/promotion/components/magic-cube-editor/index.vue index d260ded9c..b985a8142 100644 --- a/apps/web-ele/src/views/mall/promotion/components/magic-cube-editor/index.vue +++ b/apps/web-ele/src/views/mall/promotion/components/magic-cube-editor/index.vue @@ -7,16 +7,16 @@ import { IconifyIcon } from '@vben/icons'; import { createRect, isContains, isOverlap } from './util'; -// TODO @AI: 改成标准注释 -// 魔方编辑器 -// 有两部分组成: -// 1. 魔方矩阵:位于底层,由方块组件的二维表格,用于创建热区 -// 操作方法: -// 1.1 点击其中一个方块就会进入热区选择模式 -// 1.2 再次点击另外一个方块时,结束热区选择模式 -// 1.3 在两个方块中间的区域创建热区 -// 如果两次点击的都是同一方块,就只创建一个格子的热区 -// 2. 热区:位于顶层,采用绝对定位,覆盖在魔方矩阵上面。 +/** + * 魔方编辑器,有两部分组成: + * 1. 魔方矩阵:位于底层,由方块组件的二维表格,用于创建热区 + * 操作方法: + * 1.1 点击其中一个方块就会进入热区选择模式 + * 1.2 再次点击另外一个方块时,结束热区选择模式 + * 1.3 在两个方块中间的区域创建热区 + * 如果两次点击的都是同一方块,就只创建一个格子的热区 + * 2. 热区:位于顶层,采用绝对定位,覆盖在魔方矩阵上面。 + */ defineOptions({ name: 'MagicCubeEditor' }); /** 定义属性 */ @@ -29,12 +29,10 @@ const props = defineProps({ type: Number, default: 4, }, // 行数,默认 4 行 - cols: { type: Number, default: 4, }, // 列数,默认 4 列 - cubeSize: { type: Number, default: 75, @@ -70,6 +68,7 @@ watch( ); const hotAreas = ref([]); // 热区列表 + /** 初始化热区 */ watch( () => props.modelValue, @@ -86,20 +85,20 @@ const isHotAreaSelectMode = () => !!hotAreaBeginCube.value; // 是否开启了 * @param currentRow 当前行号 * @param currentCol 当前列号 */ -const handleCubeClick = (currentRow: number, currentCol: number) => { +function handleCubeClick(currentRow: number, currentCol: number) { const currentCube = cubes.value[currentRow]?.[currentCol]; if (!currentCube) { return; } - // 情况1:进入热区选择模式 + // 情况 1:进入热区选择模式 if (!isHotAreaSelectMode()) { hotAreaBeginCube.value = currentCube; hotAreaBeginCube.value!.active = true; return; } - // 情况2:结束热区选择模式 + // 情况 2:结束热区选择模式 hotAreas.value.push(createRect(hotAreaBeginCube.value!, currentCube)); // 结束热区选择模式 exitHotAreaSelectMode(); @@ -111,7 +110,7 @@ const handleCubeClick = (currentRow: number, currentCol: number) => { } // 发送热区变动通知 emitUpdateModelValue(); -}; +} /** * 处理鼠标经过方块 @@ -119,7 +118,7 @@ const handleCubeClick = (currentRow: number, currentCol: number) => { * @param currentRow 当前行号 * @param currentCol 当前列号 */ -const handleCellHover = (currentRow: number, currentCol: number) => { +function handleCellHover(currentRow: number, currentCol: number) { // 当前没有进入热区选择模式 if (!isHotAreaSelectMode()) { return; @@ -138,7 +137,6 @@ const handleCellHover = (currentRow: number, currentCol: number) => { if (isOverlap(hotArea, currentSelectedArea)) { // 结束热区选择模式 exitHotAreaSelectMode(); - return; } } @@ -147,13 +145,9 @@ const handleCellHover = (currentRow: number, currentCol: number) => { eachCube((_, __, cube) => { cube.active = isContains(currentSelectedArea, cube); }); -}; +} -/** - * 处理热区删除 - * - * @param index 热区索引 - */ +/** 处理热区删除 */ function handleDeleteHotArea(index: number) { hotAreas.value.splice(index, 1); // 结束热区选择模式 @@ -165,14 +159,14 @@ function handleDeleteHotArea(index: number) { const emitUpdateModelValue = () => emit('update:modelValue', hotAreas.value); // 发送热区变动通知 const selectedHotAreaIndex = ref(0); // 热区选中 -const handleHotAreaSelected = (hotArea: Rect, index: number) => { + +/** 处理热区选中 */ +function handleHotAreaSelected(hotArea: Rect, index: number) { selectedHotAreaIndex.value = index; emit('hotAreaSelected', hotArea, index); -}; +} -/** - * 结束热区选择模式 - */ +/** 结束热区选择模式 */ function exitHotAreaSelectMode() { // 移除方块激活标记 eachCube((_, __, cube) => { @@ -246,9 +240,9 @@ const eachCube = (callback: (x: number, y: number, cube: Cube) => void) => { > - {{ - `${hotArea.width}×${hotArea.height}` - }} + + {{ `${hotArea.width}×${hotArea.height}` }} + @@ -265,6 +259,11 @@ const eachCube = (callback: (x: number, y: number, cube: Cube) => void) => { text-align: center; cursor: pointer; border: 1px solid var(--el-border-color); + line-height: 1; + + :deep(.iconify) { + display: inline-block; + } &.active { background: var(--el-color-primary-light-9); diff --git a/apps/web-ele/src/views/mall/promotion/components/magic-cube-editor/util.ts b/apps/web-ele/src/views/mall/promotion/components/magic-cube-editor/util.ts index 1ee8fb5a4..6e3eb7cd2 100644 --- a/apps/web-ele/src/views/mall/promotion/components/magic-cube-editor/util.ts +++ b/apps/web-ele/src/views/mall/promotion/components/magic-cube-editor/util.ts @@ -1,51 +1,47 @@ -// 坐标点 +/** 坐标点 */ export interface Point { x: number; y: number; } -// 矩形 +/** 矩形 */ export interface Rect { - // 左上角 X 轴坐标 - left: number; - // 左上角 Y 轴坐标 - top: number; - // 右下角 X 轴坐标 - right: number; - // 右下角 Y 轴坐标 - bottom: number; - // 矩形宽度 - width: number; - // 矩形高度 - height: number; + left: number; // 左上角 X 轴坐标 + top: number; // 左上角 Y 轴坐标 + right: number; // 右下角 X 轴坐标 + bottom: number; // 右下角 Y 轴坐标 + width: number; // 矩形宽度 + height: number; // 矩形高度 } /** * 判断两个矩形是否重叠 + * * @param a 矩形 A * @param b 矩形 B */ -export const isOverlap = (a: Rect, b: Rect): boolean => { +export function isOverlap(a: Rect, b: Rect): boolean { return ( a.left < b.left + b.width && a.left + a.width > b.left && a.top < b.top + b.height && a.height + a.top > b.top ); -}; +} + /** * 检查坐标点是否在矩形内 * @param hotArea 矩形 * @param point 坐标 */ -export const isContains = (hotArea: Rect, point: Point): boolean => { +export function isContains(hotArea: Rect, point: Point): boolean { return ( point.x >= hotArea.left && point.x < hotArea.right && point.y >= hotArea.top && point.y < hotArea.bottom ); -}; +} /** * 在两个坐标点中间,创建一个矩形 @@ -59,14 +55,17 @@ export const isContains = (hotArea: Rect, point: Point): boolean => { * @param a 坐标点一 * @param b 坐标点二 */ -export const createRect = (a: Point, b: Point): Rect => { +export function createRect(a: Point, b: Point): Rect { // 计算矩形的范围 - const [left, left2] = [a.x, b.x].sort(); - const [top, top2] = [a.y, b.y].sort(); + let [left, left2] = [a.x, b.x].sort(); + left = left ?? 0; + left2 = left2 ?? 0; + let [top, top2] = [a.y, b.y].sort(); + top = top ?? 0; + top2 = top2 ?? 0; const right = left2 + 1; const bottom = top2 + 1; const height = bottom - top; const width = right - left; - return { left, right, top, bottom, height, width }; -}; +} diff --git a/apps/web-ele/src/views/mall/promotion/coupon/components/index.ts b/apps/web-ele/src/views/mall/promotion/coupon/components/index.ts index 00a6c3f32..24cb4e274 100644 --- a/apps/web-ele/src/views/mall/promotion/coupon/components/index.ts +++ b/apps/web-ele/src/views/mall/promotion/coupon/components/index.ts @@ -1,2 +1,2 @@ -export * from './data'; +export { default as CouponSelect } from './select.vue'; export { default as CouponSendForm } from './send-form.vue'; diff --git a/apps/web-ele/src/views/mall/promotion/coupon/components/select-data.ts b/apps/web-ele/src/views/mall/promotion/coupon/components/select-data.ts new file mode 100644 index 000000000..bf7c993e3 --- /dev/null +++ b/apps/web-ele/src/views/mall/promotion/coupon/components/select-data.ts @@ -0,0 +1,119 @@ +import type { VbenFormSchema } from '#/adapter/form'; +import type { VxeTableGridOptions } from '#/adapter/vxe-table'; + +import { DICT_TYPE } from '@vben/constants'; +import { getDictOptions } from '@vben/hooks'; + +import { + discountFormat, + remainedCountFormat, + takeLimitCountFormat, + validityTypeFormat, +} from '../formatter'; + +/** 优惠券选择的搜索表单 */ +export function useGridFormSchema(): VbenFormSchema[] { + return [ + { + fieldName: 'name', + label: '优惠券名称', + component: 'Input', + componentProps: { + placeholder: '请输入优惠劵名', + clearable: true, + }, + }, + { + fieldName: 'discountType', + label: '优惠类型', + component: 'Select', + componentProps: { + options: getDictOptions(DICT_TYPE.PROMOTION_DISCOUNT_TYPE, 'number'), + placeholder: '请选择优惠券类型', + clearable: true, + }, + }, + ]; +} + +/** 优惠券选择的表格列 */ +export function useGridColumns(): VxeTableGridOptions['columns'] { + return [ + { type: 'checkbox', width: 55 }, + { + field: 'name', + title: '优惠券名称', + minWidth: 140, + }, + { + field: 'productScope', + title: '类型', + minWidth: 80, + cellRender: { + name: 'CellDict', + props: { type: DICT_TYPE.PROMOTION_PRODUCT_SCOPE }, + }, + }, + { + field: 'discountType', + title: '优惠类型', + minWidth: 100, + cellRender: { + name: 'CellDict', + props: { type: DICT_TYPE.PROMOTION_DISCOUNT_TYPE }, + }, + }, + { + field: 'discountPrice', + title: '优惠力度', + minWidth: 100, + formatter: ({ row }) => discountFormat(row), + }, + { + field: 'takeType', + title: '领取方式', + minWidth: 100, + cellRender: { + name: 'CellDict', + props: { type: DICT_TYPE.PROMOTION_COUPON_TAKE_TYPE }, + }, + }, + { + field: 'validityType', + title: '使用时间', + minWidth: 185, + align: 'center', + formatter: ({ row }) => validityTypeFormat(row), + }, + { + field: 'totalCount', + title: '发放数量', + minWidth: 100, + align: 'center', + }, + { + field: 'remainedCount', + title: '剩余数量', + minWidth: 100, + align: 'center', + formatter: ({ row }) => remainedCountFormat(row), + }, + { + field: 'takeLimitCount', + title: '领取上限', + minWidth: 100, + align: 'center', + formatter: ({ row }) => takeLimitCountFormat(row), + }, + { + field: 'status', + title: '状态', + minWidth: 80, + align: 'center', + cellRender: { + name: 'CellDict', + props: { type: DICT_TYPE.COMMON_STATUS }, + }, + }, + ]; +} diff --git a/apps/web-ele/src/views/mall/promotion/coupon/components/select.vue b/apps/web-ele/src/views/mall/promotion/coupon/components/select.vue new file mode 100644 index 000000000..8d75c2388 --- /dev/null +++ b/apps/web-ele/src/views/mall/promotion/coupon/components/select.vue @@ -0,0 +1,69 @@ + + + + diff --git a/apps/web-ele/src/views/mall/promotion/coupon/components/data.ts b/apps/web-ele/src/views/mall/promotion/coupon/components/send-form-data.ts similarity index 100% rename from apps/web-ele/src/views/mall/promotion/coupon/components/data.ts rename to apps/web-ele/src/views/mall/promotion/coupon/components/send-form-data.ts diff --git a/apps/web-ele/src/views/mall/promotion/coupon/components/send-form.vue b/apps/web-ele/src/views/mall/promotion/coupon/components/send-form.vue index 83e989227..9a8c4b192 100644 --- a/apps/web-ele/src/views/mall/promotion/coupon/components/send-form.vue +++ b/apps/web-ele/src/views/mall/promotion/coupon/components/send-form.vue @@ -11,7 +11,7 @@ import { TableAction, useVbenVxeGrid } from '#/adapter/vxe-table'; import { sendCoupon } from '#/api/mall/promotion/coupon/coupon'; import { getCouponTemplatePage } from '#/api/mall/promotion/coupon/couponTemplate'; -import { useFormSchema, useGridColumns } from './data'; +import { useFormSchema, useGridColumns } from './send-form-data.ts'; /** 发送优惠券 */ async function handleSendCoupon(row: MallCouponTemplateApi.CouponTemplate) { diff --git a/apps/web-ele/src/views/mall/trade/afterSale/detail/data.ts b/apps/web-ele/src/views/mall/trade/afterSale/detail/data.ts index 9cdc2ec37..1e532c935 100644 --- a/apps/web-ele/src/views/mall/trade/afterSale/detail/data.ts +++ b/apps/web-ele/src/views/mall/trade/afterSale/detail/data.ts @@ -1,4 +1,3 @@ -import type { MallAfterSaleApi } from '#/api/mall/trade/afterSale'; import type { DescriptionItemSchema } from '#/components/description'; import { h } from 'vue'; @@ -20,19 +19,19 @@ export function useOrderInfoSchema(): DescriptionItemSchema[] { { field: 'order.deliveryType', label: '配送方式', - content: (data: MallAfterSaleApi.AfterSale) => + render: (val) => h(DictTag, { type: DICT_TYPE.TRADE_DELIVERY_TYPE, - value: data?.order?.deliveryType, + value: val, }), }, { field: 'order.type', label: '订单类型', - content: (data: MallAfterSaleApi.AfterSale) => + render: (val) => h(DictTag, { type: DICT_TYPE.TRADE_ORDER_TYPE, - value: data?.order?.type, + value: val, }), }, { @@ -46,10 +45,10 @@ export function useOrderInfoSchema(): DescriptionItemSchema[] { { field: 'order.terminal', label: '订单来源', - content: (data: MallAfterSaleApi.AfterSale) => + render: (val) => h(DictTag, { type: DICT_TYPE.TERMINAL, - value: data?.order?.terminal, + value: val, }), }, { @@ -67,10 +66,10 @@ export function useOrderInfoSchema(): DescriptionItemSchema[] { { field: 'order.payChannelCode', label: '付款方式', - content: (data: MallAfterSaleApi.AfterSale) => + render: (val) => h(DictTag, { type: DICT_TYPE.PAY_CHANNEL_CODE, - value: data?.order?.payChannelCode, + value: val, }), }, { @@ -90,32 +89,30 @@ export function useAfterSaleInfoSchema(): DescriptionItemSchema[] { { field: 'auditTime', label: '申请时间', - content: (data: MallAfterSaleApi.AfterSale) => - formatDate(data?.auditTime) as string, + render: (val) => formatDate(val) as string, }, { field: 'type', label: '售后类型', - content: (data: MallAfterSaleApi.AfterSale) => + render: (val) => h(DictTag, { type: DICT_TYPE.TRADE_AFTER_SALE_TYPE, - value: data?.type, + value: val, }), }, { field: 'way', label: '售后方式', - content: (data: MallAfterSaleApi.AfterSale) => + render: (val) => h(DictTag, { type: DICT_TYPE.TRADE_AFTER_SALE_WAY, - value: data?.way, + value: val, }), }, { field: 'refundPrice', label: '退款金额', - content: (data: MallAfterSaleApi.AfterSale) => - fenToYuan(data?.refundPrice ?? 0), + render: (val) => fenToYuan(val ?? 0), }, { field: 'applyReason', @@ -128,8 +125,8 @@ export function useAfterSaleInfoSchema(): DescriptionItemSchema[] { { field: 'applyPicUrls', label: '凭证图片', - content: (data) => { - const images = data?.applyPicUrls || []; + render: (val) => { + const images = val || []; return h( 'div', { class: 'flex gap-10px' }, @@ -153,16 +150,16 @@ export function useRefundStatusSchema(): DescriptionItemSchema[] { { field: 'status', label: '退款状态', - content: (data) => + render: (val) => h(DictTag, { type: DICT_TYPE.TRADE_AFTER_SALE_STATUS, - value: data?.status, + value: val, }), }, { field: 'reminder', label: '提醒', - content: () => + render: () => h('div', { class: 'text-red-500 mb-10px' }, [ h('div', '如果未发货,请点击同意退款给买家。'), h('div', '如果实际已发货,请主动与买家联系。'), diff --git a/apps/web-ele/src/views/mall/trade/afterSale/detail/index.vue b/apps/web-ele/src/views/mall/trade/afterSale/detail/index.vue index c5230f2c6..66d4e6bdd 100644 --- a/apps/web-ele/src/views/mall/trade/afterSale/detail/index.vue +++ b/apps/web-ele/src/views/mall/trade/afterSale/detail/index.vue @@ -49,38 +49,29 @@ const afterSale = ref({ }); const [OrderDescriptions] = useDescription({ - componentProps: { - title: '订单信息', - border: false, - column: 3, - direction: 'horizontal', - labelWidth: 140, - extra: '', - }, + title: '订单信息', + border: false, + column: 3, + direction: 'horizontal', + labelWidth: 140, schema: useOrderInfoSchema(), }); const [AfterSaleDescriptions] = useDescription({ - componentProps: { - title: '售后信息', - border: false, - column: 3, - direction: 'horizontal', - labelWidth: 140, - extra: '', - }, + title: '售后信息', + border: false, + column: 3, + direction: 'horizontal', + labelWidth: 140, schema: useAfterSaleInfoSchema(), }); const [RefundStatusDescriptions] = useDescription({ - componentProps: { - title: '退款状态', - border: false, - column: 1, - direction: 'horizontal', - labelWidth: 140, - extra: '', - }, + title: '退款状态', + border: false, + column: 1, + direction: 'horizontal', + labelWidth: 140, schema: useRefundStatusSchema(), }); diff --git a/apps/web-ele/src/views/mall/trade/order/detail/data.ts b/apps/web-ele/src/views/mall/trade/order/detail/data.ts index 74dfbcfda..febf4ed5e 100644 --- a/apps/web-ele/src/views/mall/trade/order/detail/data.ts +++ b/apps/web-ele/src/views/mall/trade/order/detail/data.ts @@ -1,5 +1,4 @@ import type { VxeTableGridOptions } from '#/adapter/vxe-table'; -import type { MallOrderApi } from '#/api/mall/trade/order'; import type { DescriptionItemSchema } from '#/components/description'; import { h } from 'vue'; @@ -23,19 +22,19 @@ export function useOrderInfoSchema(): DescriptionItemSchema[] { { field: 'type', label: '订单类型', - content: (data: MallOrderApi.Order) => + render: (val) => h(DictTag, { type: DICT_TYPE.TRADE_ORDER_TYPE, - value: data?.type, + value: val, }), }, { field: 'terminal', label: '订单来源', - content: (data: MallOrderApi.Order) => + render: (val) => h(DictTag, { type: DICT_TYPE.TERMINAL, - value: data?.terminal, + value: val, }), }, { @@ -53,10 +52,10 @@ export function useOrderInfoSchema(): DescriptionItemSchema[] { { field: 'payChannelCode', label: '付款方式', - content: (data: MallOrderApi.Order) => + render: (val) => h(DictTag, { type: DICT_TYPE.PAY_CHANNEL_CODE, - value: data?.payChannelCode, + value: val, }), }, { @@ -72,16 +71,16 @@ export function useOrderStatusSchema(): DescriptionItemSchema[] { { field: 'status', label: '订单状态', - content: (data: MallOrderApi.Order) => + render: (val) => h(DictTag, { type: DICT_TYPE.TRADE_ORDER_STATUS, - value: data?.status, + value: val, }), }, { field: 'reminder', label: '提醒', - content: () => + render: () => h('div', { class: 'space-y-1' }, [ h('div', '买家付款成功后,货款将直接进入您的商户号(微信、支付宝)'), h('div', '请及时关注你发出的包裹状态,确保可以配送至买家手中'), @@ -100,66 +99,46 @@ export function useOrderPriceSchema(): DescriptionItemSchema[] { { field: 'totalPrice', label: '商品总额', - content: (data: MallOrderApi.Order) => - `${fenToYuan(data?.totalPrice ?? 0)} 元`, + render: (val) => `${fenToYuan(val ?? 0)} 元`, }, { field: 'deliveryPrice', label: '运费金额', - content: (data: MallOrderApi.Order) => - `${fenToYuan(data?.deliveryPrice ?? 0)} 元`, + render: (val) => `${fenToYuan(val ?? 0)} 元`, }, { field: 'adjustPrice', label: '订单调价', - content: (data: MallOrderApi.Order) => - `${fenToYuan(data?.adjustPrice ?? 0)} 元`, + render: (val) => `${fenToYuan(val ?? 0)} 元`, }, { field: 'couponPrice', label: '优惠劵优惠', - content: (data: MallOrderApi.Order) => - h( - 'span', - { class: 'text-red-500' }, - `${fenToYuan(data?.couponPrice ?? 0)} 元`, - ), + render: (val) => + h('span', { class: 'text-red-500' }, `${fenToYuan(val ?? 0)} 元`), }, { field: 'vipPrice', label: 'VIP 优惠', - content: (data: MallOrderApi.Order) => - h( - 'span', - { class: 'text-red-500' }, - `${fenToYuan(data?.vipPrice ?? 0)} 元`, - ), + render: (val) => + h('span', { class: 'text-red-500' }, `${fenToYuan(val ?? 0)} 元`), }, { field: 'discountPrice', label: '活动优惠', - content: (data: MallOrderApi.Order) => - h( - 'span', - { class: 'text-red-500' }, - `${fenToYuan(data?.discountPrice ?? 0)} 元`, - ), + render: (val) => + h('span', { class: 'text-red-500' }, `${fenToYuan(val ?? 0)} 元`), }, { field: 'pointPrice', label: '积分抵扣', - content: (data: MallOrderApi.Order) => - h( - 'span', - { class: 'text-red-500' }, - `${fenToYuan(data?.pointPrice ?? 0)} 元`, - ), + render: (val) => + h('span', { class: 'text-red-500' }, `${fenToYuan(val ?? 0)} 元`), }, { field: 'payPrice', label: '应付金额', - content: (data: MallOrderApi.Order) => - `${fenToYuan(data?.payPrice ?? 0)} 元`, + render: (val) => `${fenToYuan(val ?? 0)} 元`, }, ]; } @@ -170,10 +149,10 @@ export function useDeliveryInfoSchema(): DescriptionItemSchema[] { { field: 'deliveryType', label: '配送方式', - content: (data: MallOrderApi.Order) => + render: (val) => h(DictTag, { type: DICT_TYPE.TRADE_DELIVERY_TYPE, - value: data?.deliveryType, + value: val, }), }, { @@ -187,14 +166,12 @@ export function useDeliveryInfoSchema(): DescriptionItemSchema[] { { field: 'receiverAddress', label: '收货地址', - content: (data: MallOrderApi.Order) => - `${data?.receiverAreaName} ${data?.receiverDetailAddress}`.trim(), + render: (val, data) => `${data?.receiverAreaName} ${val}`.trim(), }, { field: 'deliveryTime', label: '发货时间', - content: (data: MallOrderApi.Order) => - formatDateTime(data?.deliveryTime) as string, + render: (val) => formatDateTime(val) as string, }, ]; } diff --git a/apps/web-ele/src/views/mall/trade/order/detail/index.vue b/apps/web-ele/src/views/mall/trade/order/detail/index.vue index dbae802ef..d0700e91c 100644 --- a/apps/web-ele/src/views/mall/trade/order/detail/index.vue +++ b/apps/web-ele/src/views/mall/trade/order/detail/index.vue @@ -57,38 +57,30 @@ const expressTrackList = ref([]); const pickUpStore = ref(); const [OrderInfoDescriptions] = useDescription({ - componentProps: { - title: '订单信息', - border: false, - column: 3, - }, + title: '订单信息', + border: false, + column: 3, schema: useOrderInfoSchema(), }); const [OrderStatusDescriptions] = useDescription({ - componentProps: { - title: '订单状态', - border: false, - column: 1, - }, + title: '订单状态', + border: false, + column: 1, schema: useOrderStatusSchema(), }); const [OrderPriceDescriptions] = useDescription({ - componentProps: { - title: '费用信息', - border: false, - column: 4, - }, + title: '费用信息', + border: false, + column: 4, schema: useOrderPriceSchema(), }); const [DeliveryInfoDescriptions] = useDescription({ - componentProps: { - title: '收货信息', - border: false, - column: 3, - }, + title: '收货信息', + border: false, + column: 3, schema: useDeliveryInfoSchema(), }); diff --git a/apps/web-ele/src/views/pay/notify/data.ts b/apps/web-ele/src/views/pay/notify/data.ts index 8d301628d..d94c31865 100644 --- a/apps/web-ele/src/views/pay/notify/data.ts +++ b/apps/web-ele/src/views/pay/notify/data.ts @@ -1,6 +1,5 @@ import type { VbenFormSchema } from '#/adapter/form'; import type { VxeTableGridOptions } from '#/adapter/vxe-table'; -import type { PayNotifyApi } from '#/api/pay/notify'; import type { DescriptionItemSchema } from '#/components/description'; import { h } from 'vue'; @@ -182,10 +181,10 @@ export function useDetailSchema(): DescriptionItemSchema[] { { field: 'type', label: '通知类型', - content: (data: PayNotifyApi.NotifyTask) => + render: (val) => h(DictTag, { type: DICT_TYPE.PAY_NOTIFY_TYPE, - value: data?.type, + value: val, }), }, { @@ -195,10 +194,10 @@ export function useDetailSchema(): DescriptionItemSchema[] { { field: 'status', label: '通知状态', - content: (data: PayNotifyApi.NotifyTask) => + render: (val) => h(DictTag, { type: DICT_TYPE.PAY_NOTIFY_STATUS, - value: data?.status, + value: val, }), }, { @@ -208,14 +207,12 @@ export function useDetailSchema(): DescriptionItemSchema[] { { field: 'lastExecuteTime', label: '最后通知时间', - content: (data: PayNotifyApi.NotifyTask) => - formatDateTime(data?.lastExecuteTime) as string, + render: (val) => formatDateTime(val) as string, }, { field: 'nextNotifyTime', label: '下次通知时间', - content: (data: PayNotifyApi.NotifyTask) => - formatDateTime(data?.nextNotifyTime) as string, + render: (val) => formatDateTime(val) as string, }, { field: 'notifyTimes', @@ -228,14 +225,12 @@ export function useDetailSchema(): DescriptionItemSchema[] { { field: 'createTime', label: '创建时间', - content: (data: PayNotifyApi.NotifyTask) => - formatDateTime(data?.createTime) as string, + render: (val) => formatDateTime(val) as string, }, { field: 'updateTime', label: '更新时间', - content: (data: PayNotifyApi.NotifyTask) => - formatDateTime(data?.updateTime) as string, + render: (val) => formatDateTime(val) as string, }, ]; } diff --git a/apps/web-ele/src/views/pay/notify/modules/detail.vue b/apps/web-ele/src/views/pay/notify/modules/detail.vue index 26bc4a747..0375c6fa3 100644 --- a/apps/web-ele/src/views/pay/notify/modules/detail.vue +++ b/apps/web-ele/src/views/pay/notify/modules/detail.vue @@ -17,14 +17,10 @@ import { useDetailLogColumns, useDetailSchema } from '../data'; const formData = ref(); const [Description] = useDescription({ - componentProps: { - border: true, - column: 2, - direction: 'horizontal', - labelWidth: 140, - title: '', - extra: '', - }, + border: true, + column: 2, + direction: 'horizontal', + labelWidth: 140, schema: useDetailSchema(), }); diff --git a/apps/web-ele/src/views/pay/order/modules/detail.vue b/apps/web-ele/src/views/pay/order/modules/detail.vue index 4072e4e45..452e63e18 100644 --- a/apps/web-ele/src/views/pay/order/modules/detail.vue +++ b/apps/web-ele/src/views/pay/order/modules/detail.vue @@ -13,6 +13,7 @@ import { useDetailSchema } from '../data'; const formData = ref(); const [Descriptions] = useDescription({ + border: true, column: 2, labelWidth: 140, schema: useDetailSchema(), diff --git a/apps/web-ele/src/views/system/notify/message/modules/detail.vue b/apps/web-ele/src/views/system/notify/message/modules/detail.vue index 8d9385ab9..0db8555f5 100644 --- a/apps/web-ele/src/views/system/notify/message/modules/detail.vue +++ b/apps/web-ele/src/views/system/notify/message/modules/detail.vue @@ -12,6 +12,7 @@ import { useDetailSchema } from '../data'; const formData = ref(); const [Descriptions] = useDescription({ + border: true, column: 1, labelWidth: 140, schema: useDetailSchema(), diff --git a/apps/web-ele/src/views/system/notify/my/modules/detail.vue b/apps/web-ele/src/views/system/notify/my/modules/detail.vue index 8d9385ab9..0db8555f5 100644 --- a/apps/web-ele/src/views/system/notify/my/modules/detail.vue +++ b/apps/web-ele/src/views/system/notify/my/modules/detail.vue @@ -12,6 +12,7 @@ import { useDetailSchema } from '../data'; const formData = ref(); const [Descriptions] = useDescription({ + border: true, column: 1, labelWidth: 140, schema: useDetailSchema(), diff --git a/apps/web-ele/src/views/system/operatelog/modules/detail.vue b/apps/web-ele/src/views/system/operatelog/modules/detail.vue index cf892c0f1..d9d224f55 100644 --- a/apps/web-ele/src/views/system/operatelog/modules/detail.vue +++ b/apps/web-ele/src/views/system/operatelog/modules/detail.vue @@ -12,8 +12,8 @@ import { useDetailSchema } from '../data'; const formData = ref(); const [Descriptions] = useDescription({ + border: true, column: 1, - direction: 'horizontal', labelWidth: 110, schema: useDetailSchema(), }); diff --git a/apps/web-ele/src/views/system/social/user/modules/detail.vue b/apps/web-ele/src/views/system/social/user/modules/detail.vue index ffae89ce5..a70a29247 100644 --- a/apps/web-ele/src/views/system/social/user/modules/detail.vue +++ b/apps/web-ele/src/views/system/social/user/modules/detail.vue @@ -14,7 +14,9 @@ import { useDetailSchema } from '../data'; const formData = ref(); const [Descriptions] = useDescription({ + border: true, column: 1, + size: 'large', labelWidth: 185, schema: useDetailSchema(), }); diff --git a/package.json b/package.json index f7c29406c..0745b1137 100644 --- a/package.json +++ b/package.json @@ -95,8 +95,8 @@ "vue-tsc": "catalog:" }, "engines": { - "node": ">=20.10.0", - "pnpm": ">=9.12.0" + "node": ">=20.12.0", + "pnpm": ">=10.14.0" }, "packageManager": "pnpm@10.14.0", "pnpm": { diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 484162529..2b3c73b4a 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -74,7 +74,7 @@ catalogs: version: 1.56.1 '@pnpm/workspace.read-manifest': specifier: ^1000.2.0 - version: 1000.2.4 + version: 1000.2.5 '@stylistic/stylelint-plugin': specifier: ^3.1.3 version: 3.1.3 @@ -134,7 +134,7 @@ catalogs: version: 14.1.2 '@types/node': specifier: ^22.16.0 - version: 22.18.11 + version: 22.18.12 '@types/nprogress': specifier: ^0.2.3 version: 0.2.3 @@ -152,10 +152,10 @@ catalogs: version: 1.15.8 '@typescript-eslint/eslint-plugin': specifier: ^8.35.1 - version: 8.46.1 + version: 8.46.2 '@typescript-eslint/parser': specifier: ^8.35.1 - version: 8.46.1 + version: 8.46.2 '@vee-validate/zod': specifier: ^4.15.1 version: 4.15.1 @@ -602,7 +602,7 @@ catalogs: version: 4.1.0 vxe-pc-ui: specifier: ^4.9.29 - version: 4.10.2 + version: 4.10.5 vxe-table: specifier: ^4.16.11 version: 4.17.0 @@ -633,13 +633,13 @@ importers: version: 0.5.1 '@changesets/cli': specifier: 'catalog:' - version: 2.29.7(@types/node@22.18.11) + version: 2.29.7(@types/node@22.18.12) '@playwright/test': specifier: 'catalog:' version: 1.56.1 '@types/node': specifier: 'catalog:' - version: 22.18.11 + version: 22.18.12 '@vben/commitlint-config': specifier: workspace:* version: link:internal/lint-configs/commitlint-config @@ -669,10 +669,17 @@ importers: version: link:scripts/vsh '@vitejs/plugin-vue': specifier: 'catalog:' +<<<<<<< HEAD version: 6.0.1(vite@7.1.11(@types/node@22.18.11)(jiti@1.21.7)(less@4.4.2)(sass@1.93.2)(terser@5.44.0)(yaml@2.8.1))(vue@3.5.22(typescript@5.9.3)) '@vitejs/plugin-vue-jsx': specifier: 'catalog:' version: 5.1.1(vite@7.1.11(@types/node@22.18.11)(jiti@1.21.7)(less@4.4.2)(sass@1.93.2)(terser@5.44.0)(yaml@2.8.1))(vue@3.5.22(typescript@5.9.3)) +======= + version: 6.0.1(vite@7.1.11(@types/node@22.18.12)(jiti@2.6.1)(less@4.4.2)(sass@1.93.2)(terser@5.44.0)(yaml@2.8.1))(vue@3.5.22(typescript@5.9.3)) + '@vitejs/plugin-vue-jsx': + specifier: 'catalog:' + version: 5.1.1(vite@7.1.11(@types/node@22.18.12)(jiti@2.6.1)(less@4.4.2)(sass@1.93.2)(terser@5.44.0)(yaml@2.8.1))(vue@3.5.22(typescript@5.9.3)) +>>>>>>> 38df83e2812cb9d116a68a6057ac21a965e33b7e '@vue/test-utils': specifier: 'catalog:' version: 2.4.6 @@ -714,10 +721,17 @@ importers: version: 3.6.1(sass@1.93.2)(typescript@5.9.3)(vue-tsc@2.2.10(typescript@5.9.3))(vue@3.5.22(typescript@5.9.3)) vite: specifier: 'catalog:' +<<<<<<< HEAD version: 7.1.11(@types/node@22.18.11)(jiti@1.21.7)(less@4.4.2)(sass@1.93.2)(terser@5.44.0)(yaml@2.8.1) vitest: specifier: 'catalog:' version: 3.2.4(@types/node@22.18.11)(happy-dom@17.6.3)(jiti@1.21.7)(less@4.4.2)(sass@1.93.2)(terser@5.44.0)(yaml@2.8.1) +======= + version: 7.1.11(@types/node@22.18.12)(jiti@2.6.1)(less@4.4.2)(sass@1.93.2)(terser@5.44.0)(yaml@2.8.1) + vitest: + specifier: 'catalog:' + version: 3.2.4(@types/node@22.18.12)(happy-dom@17.6.3)(jiti@2.6.1)(less@4.4.2)(sass@1.93.2)(terser@5.44.0)(yaml@2.8.1) +>>>>>>> 38df83e2812cb9d116a68a6057ac21a965e33b7e vue: specifier: ^3.5.17 version: 3.5.22(typescript@5.9.3) @@ -1049,20 +1063,20 @@ importers: version: 1.9.17(vue@3.5.22(typescript@5.9.3)) vitepress-plugin-group-icons: specifier: 'catalog:' - version: 1.6.4(markdown-it@14.1.0)(vite@5.4.21(@types/node@24.8.1)(less@4.4.2)(sass@1.93.2)(terser@5.44.0)) + version: 1.6.4(markdown-it@14.1.0)(vite@5.4.21(@types/node@24.9.1)(less@4.4.2)(sass@1.93.2)(terser@5.44.0)) devDependencies: '@nolebase/vitepress-plugin-git-changelog': specifier: 'catalog:' - version: 2.18.2(vitepress@1.6.4(@algolia/client-search@5.40.1)(@types/node@24.8.1)(async-validator@4.2.5)(axios@1.12.2)(less@4.4.2)(nprogress@0.2.0)(postcss@8.5.6)(qrcode@1.5.4)(sass@1.93.2)(search-insights@2.17.3)(sortablejs@1.15.6)(terser@5.44.0)(typescript@5.9.3))(vue@3.5.22(typescript@5.9.3)) + version: 2.18.2(vitepress@1.6.4(@algolia/client-search@5.40.1)(@types/node@24.9.1)(async-validator@4.2.5)(axios@1.12.2)(less@4.4.2)(nprogress@0.2.0)(postcss@8.5.6)(qrcode@1.5.4)(sass@1.93.2)(search-insights@2.17.3)(sortablejs@1.15.6)(terser@5.44.0)(typescript@5.9.3))(vue@3.5.22(typescript@5.9.3)) '@vben/vite-config': specifier: workspace:* version: link:../internal/vite-config '@vite-pwa/vitepress': specifier: 'catalog:' - version: 1.0.1(vite-plugin-pwa@1.1.0(vite@5.4.21(@types/node@24.8.1)(less@4.4.2)(sass@1.93.2)(terser@5.44.0))(workbox-build@7.3.0)(workbox-window@7.3.0)) + version: 1.0.1(vite-plugin-pwa@1.1.0(vite@5.4.21(@types/node@24.9.1)(less@4.4.2)(sass@1.93.2)(terser@5.44.0))(workbox-build@7.3.0)(workbox-window@7.3.0)) vitepress: specifier: 'catalog:' - version: 1.6.4(@algolia/client-search@5.40.1)(@types/node@24.8.1)(async-validator@4.2.5)(axios@1.12.2)(less@4.4.2)(nprogress@0.2.0)(postcss@8.5.6)(qrcode@1.5.4)(sass@1.93.2)(search-insights@2.17.3)(sortablejs@1.15.6)(terser@5.44.0)(typescript@5.9.3) + version: 1.6.4(@algolia/client-search@5.40.1)(@types/node@24.9.1)(async-validator@4.2.5)(axios@1.12.2)(less@4.4.2)(nprogress@0.2.0)(postcss@8.5.6)(qrcode@1.5.4)(sass@1.93.2)(search-insights@2.17.3)(sortablejs@1.15.6)(terser@5.44.0)(typescript@5.9.3) vue: specifier: ^3.5.17 version: 3.5.22(typescript@5.9.3) @@ -1071,7 +1085,7 @@ importers: dependencies: '@commitlint/cli': specifier: 'catalog:' - version: 19.8.1(@types/node@24.8.1)(typescript@5.9.3) + version: 19.8.1(@types/node@24.9.1)(typescript@5.9.3) '@commitlint/config-conventional': specifier: 'catalog:' version: 19.8.1 @@ -1098,7 +1112,7 @@ importers: version: 3.3.1(eslint@9.38.0(jiti@2.6.1)) eslint-plugin-import-x: specifier: 'catalog:' - version: 4.16.1(@typescript-eslint/utils@8.46.1(eslint@9.38.0(jiti@2.6.1))(typescript@5.9.3))(eslint@9.38.0(jiti@2.6.1)) + version: 4.16.1(@typescript-eslint/utils@8.46.2(eslint@9.38.0(jiti@2.6.1))(typescript@5.9.3))(eslint@9.38.0(jiti@2.6.1)) devDependencies: '@eslint/js': specifier: 'catalog:' @@ -1108,10 +1122,10 @@ importers: version: 9.6.1 '@typescript-eslint/eslint-plugin': specifier: 'catalog:' - version: 8.46.1(@typescript-eslint/parser@8.46.1(eslint@9.38.0(jiti@2.6.1))(typescript@5.9.3))(eslint@9.38.0(jiti@2.6.1))(typescript@5.9.3) + version: 8.46.2(@typescript-eslint/parser@8.46.2(eslint@9.38.0(jiti@2.6.1))(typescript@5.9.3))(eslint@9.38.0(jiti@2.6.1))(typescript@5.9.3) '@typescript-eslint/parser': specifier: 'catalog:' - version: 8.46.1(eslint@9.38.0(jiti@2.6.1))(typescript@5.9.3) + version: 8.46.2(eslint@9.38.0(jiti@2.6.1))(typescript@5.9.3) eslint: specifier: 'catalog:' version: 9.38.0(jiti@2.6.1) @@ -1144,13 +1158,13 @@ importers: version: 59.0.1(eslint@9.38.0(jiti@2.6.1)) eslint-plugin-unused-imports: specifier: 'catalog:' - version: 4.3.0(@typescript-eslint/eslint-plugin@8.46.1(@typescript-eslint/parser@8.46.1(eslint@9.38.0(jiti@2.6.1))(typescript@5.9.3))(eslint@9.38.0(jiti@2.6.1))(typescript@5.9.3))(eslint@9.38.0(jiti@2.6.1)) + version: 4.3.0(@typescript-eslint/eslint-plugin@8.46.2(@typescript-eslint/parser@8.46.2(eslint@9.38.0(jiti@2.6.1))(typescript@5.9.3))(eslint@9.38.0(jiti@2.6.1))(typescript@5.9.3))(eslint@9.38.0(jiti@2.6.1)) eslint-plugin-vitest: specifier: 'catalog:' - version: 0.5.4(@typescript-eslint/eslint-plugin@8.46.1(@typescript-eslint/parser@8.46.1(eslint@9.38.0(jiti@2.6.1))(typescript@5.9.3))(eslint@9.38.0(jiti@2.6.1))(typescript@5.9.3))(eslint@9.38.0(jiti@2.6.1))(typescript@5.9.3)(vitest@3.2.4(@types/node@24.8.1)(happy-dom@17.6.3)(jiti@2.6.1)(less@4.4.2)(sass@1.93.2)(terser@5.44.0)(yaml@2.8.1)) + version: 0.5.4(@typescript-eslint/eslint-plugin@8.46.2(@typescript-eslint/parser@8.46.2(eslint@9.38.0(jiti@2.6.1))(typescript@5.9.3))(eslint@9.38.0(jiti@2.6.1))(typescript@5.9.3))(eslint@9.38.0(jiti@2.6.1))(typescript@5.9.3)(vitest@3.2.4(@types/node@24.9.1)(happy-dom@17.6.3)(jiti@2.6.1)(less@4.4.2)(sass@1.93.2)(terser@5.44.0)(yaml@2.8.1)) eslint-plugin-vue: specifier: 'catalog:' - version: 10.5.1(@typescript-eslint/parser@8.46.1(eslint@9.38.0(jiti@2.6.1))(typescript@5.9.3))(eslint@9.38.0(jiti@2.6.1))(vue-eslint-parser@10.2.0(eslint@9.38.0(jiti@2.6.1))) + version: 10.5.1(@typescript-eslint/parser@8.46.2(eslint@9.38.0(jiti@2.6.1))(typescript@5.9.3))(eslint@9.38.0(jiti@2.6.1))(vue-eslint-parser@10.2.0(eslint@9.38.0(jiti@2.6.1))) globals: specifier: 'catalog:' version: 16.4.0 @@ -1305,7 +1319,7 @@ importers: version: link:../../packages/types vite: specifier: 'catalog:' - version: 7.1.11(@types/node@24.8.1)(jiti@2.6.1)(less@4.4.2)(sass@1.93.2)(terser@5.44.0)(yaml@2.8.1) + version: 7.1.11(@types/node@24.9.1)(jiti@2.6.1)(less@4.4.2)(sass@1.93.2)(terser@5.44.0)(yaml@2.8.1) internal/vite-config: dependencies: @@ -1335,14 +1349,14 @@ importers: version: 2.0.3 vite-plugin-pwa: specifier: 'catalog:' - version: 1.1.0(vite@7.1.11(@types/node@24.8.1)(jiti@2.6.1)(less@4.4.2)(sass@1.93.2)(terser@5.44.0)(yaml@2.8.1))(workbox-build@7.3.0)(workbox-window@7.3.0) + version: 1.1.0(vite@7.1.11(@types/node@24.9.1)(jiti@2.6.1)(less@4.4.2)(sass@1.93.2)(terser@5.44.0)(yaml@2.8.1))(workbox-build@7.3.0)(workbox-window@7.3.0) vite-plugin-vue-devtools: specifier: 'catalog:' - version: 7.7.7(rollup@4.52.5)(vite@7.1.11(@types/node@24.8.1)(jiti@2.6.1)(less@4.4.2)(sass@1.93.2)(terser@5.44.0)(yaml@2.8.1))(vue@3.5.22(typescript@5.9.3)) + version: 7.7.7(rollup@4.52.5)(vite@7.1.11(@types/node@24.9.1)(jiti@2.6.1)(less@4.4.2)(sass@1.93.2)(terser@5.44.0)(yaml@2.8.1))(vue@3.5.22(typescript@5.9.3)) devDependencies: '@pnpm/workspace.read-manifest': specifier: 'catalog:' - version: 1000.2.4 + version: 1000.2.5 '@types/archiver': specifier: 'catalog:' version: 6.0.3 @@ -1354,10 +1368,10 @@ importers: version: link:../node-utils '@vitejs/plugin-vue': specifier: 'catalog:' - version: 6.0.1(vite@7.1.11(@types/node@24.8.1)(jiti@2.6.1)(less@4.4.2)(sass@1.93.2)(terser@5.44.0)(yaml@2.8.1))(vue@3.5.22(typescript@5.9.3)) + version: 6.0.1(vite@7.1.11(@types/node@24.9.1)(jiti@2.6.1)(less@4.4.2)(sass@1.93.2)(terser@5.44.0)(yaml@2.8.1))(vue@3.5.22(typescript@5.9.3)) '@vitejs/plugin-vue-jsx': specifier: 'catalog:' - version: 5.1.1(vite@7.1.11(@types/node@24.8.1)(jiti@2.6.1)(less@4.4.2)(sass@1.93.2)(terser@5.44.0)(yaml@2.8.1))(vue@3.5.22(typescript@5.9.3)) + version: 5.1.1(vite@7.1.11(@types/node@24.9.1)(jiti@2.6.1)(less@4.4.2)(sass@1.93.2)(terser@5.44.0)(yaml@2.8.1))(vue@3.5.22(typescript@5.9.3)) dayjs: specifier: 'catalog:' version: 1.11.18 @@ -1375,16 +1389,16 @@ importers: version: 1.93.2 vite: specifier: 'catalog:' - version: 7.1.11(@types/node@24.8.1)(jiti@2.6.1)(less@4.4.2)(sass@1.93.2)(terser@5.44.0)(yaml@2.8.1) + version: 7.1.11(@types/node@24.9.1)(jiti@2.6.1)(less@4.4.2)(sass@1.93.2)(terser@5.44.0)(yaml@2.8.1) vite-plugin-compression: specifier: 'catalog:' - version: 0.5.1(vite@7.1.11(@types/node@24.8.1)(jiti@2.6.1)(less@4.4.2)(sass@1.93.2)(terser@5.44.0)(yaml@2.8.1)) + version: 0.5.1(vite@7.1.11(@types/node@24.9.1)(jiti@2.6.1)(less@4.4.2)(sass@1.93.2)(terser@5.44.0)(yaml@2.8.1)) vite-plugin-dts: specifier: 'catalog:' - version: 4.5.4(@types/node@24.8.1)(rollup@4.52.5)(typescript@5.9.3)(vite@7.1.11(@types/node@24.8.1)(jiti@2.6.1)(less@4.4.2)(sass@1.93.2)(terser@5.44.0)(yaml@2.8.1)) + version: 4.5.4(@types/node@24.9.1)(rollup@4.52.5)(typescript@5.9.3)(vite@7.1.11(@types/node@24.9.1)(jiti@2.6.1)(less@4.4.2)(sass@1.93.2)(terser@5.44.0)(yaml@2.8.1)) vite-plugin-html: specifier: 'catalog:' - version: 3.2.2(vite@7.1.11(@types/node@24.8.1)(jiti@2.6.1)(less@4.4.2)(sass@1.93.2)(terser@5.44.0)(yaml@2.8.1)) + version: 3.2.2(vite@7.1.11(@types/node@24.9.1)(jiti@2.6.1)(less@4.4.2)(sass@1.93.2)(terser@5.44.0)(yaml@2.8.1)) vite-plugin-lazy-import: specifier: 'catalog:' version: 1.0.7 @@ -1920,7 +1934,7 @@ importers: version: 3.5.22(typescript@5.9.3) vxe-pc-ui: specifier: 'catalog:' - version: 4.10.2(vue@3.5.22(typescript@5.9.3)) + version: 4.10.5(vue@3.5.22(typescript@5.9.3)) vxe-table: specifier: 'catalog:' version: 4.17.0(vue@3.5.22(typescript@5.9.3)) @@ -3608,11 +3622,11 @@ packages: peerDependencies: vue: ^3.5.17 - '@emnapi/core@1.5.0': - resolution: {integrity: sha512-sbP8GzB1WDzacS8fgNPpHlp6C9VZe+SJP3F90W9rLemaQj2PzIuTEl1qDOYQf58YIpyjViI24y9aPWCjEzY2cg==} + '@emnapi/core@1.6.0': + resolution: {integrity: sha512-zq/ay+9fNIJJtJiZxdTnXS20PllcYMX3OE23ESc4HK/bdYu3cOWYVhsOhVnXALfU/uqJIxn5NBPd9z4v+SfoSg==} - '@emnapi/runtime@1.5.0': - resolution: {integrity: sha512-97/BJ3iXHww3djw6hYIfErCZFee7qCtrneuLa20UXFCOTCfBM2cvQHjWJ2EG0s0MtdNwInarqCTz35i4wWXHsQ==} + '@emnapi/runtime@1.6.0': + resolution: {integrity: sha512-obtUmAHTMjll499P+D9A3axeJFlhdjOWdKUNs/U6QIGT7V5RjcUW1xToAzjvmgTSQhDbYn/NwfTRoJcQ2rNBxA==} '@emnapi/wasi-threads@1.1.0': resolution: {integrity: sha512-WI0DdZ8xFSbgMjR1sFsKABJ/C5OnRrjT06JXbZKexJGrDuPTzZdDYfFlsgcCXCyf+suG5QU2e/y1Wo2V/OapLQ==} @@ -4118,11 +4132,11 @@ packages: '@marijn/find-cluster-break@1.0.2': resolution: {integrity: sha512-l0h88YhZFyKdXIFNfSWpyjStDjGHwZ/U7iobcK1cQQD8sejsONdQtTVU+1wVN1PBw40PiiHB1vA5S7VTfQiP9g==} - '@microsoft/api-extractor-model@7.31.1': - resolution: {integrity: sha512-Dhnip5OFKbl85rq/ICHBFGhV4RA5UQSl8AC/P/zoGvs+CBudPkatt5kIhMGiYgVPnUWmfR6fcp38+1AFLYNtUw==} + '@microsoft/api-extractor-model@7.31.2': + resolution: {integrity: sha512-d0WwxwBLZaHokTrOngqHVkQK59NlveV5RE4wEpjaybhSNmEK9N7KPCcT5n8JcpH6k5o6AhxG47g1km2D7BZw8Q==} - '@microsoft/api-extractor@7.53.1': - resolution: {integrity: sha512-bul5eTNxijLdDBqLye74u9494sRmf+9QULtec9Od0uHnifahGeNt8CC4/xCdn7mVyEBrXIQyQ5+sc4Uc0QfBSA==} + '@microsoft/api-extractor@7.53.2': + resolution: {integrity: sha512-hG3+wJY6aZlkQhGpUbhq1C5F1uJLsmDjrwVea+WT18RbD1XtIGn/c4uyMF7gdXLjLNwErB47hnRk9QNjpEHUWA==} hasBin: true '@microsoft/fetch-event-source@2.0.1': @@ -4298,12 +4312,12 @@ packages: resolution: {integrity: sha512-c83qWb22rNRuB0UaVCI0uRPNRr8Z0FWnEIvT47jiHAmOIUHbBOg5XvV7pM5x+rKn9HRpjxquDbXYSXr3fAKFcw==} engines: {node: '>=12'} - '@pnpm/types@1000.8.0': - resolution: {integrity: sha512-yx86CGHHquWAI0GgKIuV/RnYewcf5fVFZemC45C/K2cX0uV8GB8TUP541ZrokWola2fZx5sn1vL7xzbceRZfoQ==} + '@pnpm/types@1000.9.0': + resolution: {integrity: sha512-UvDTCxnbyqkTg2X0dBOuZ4IdFJ8g4UFu0Ybv/5/cZAxCWVhNl1hC/Xc9hR4tZrlBL0NRFePLRhO/iw9LmA1lbw==} engines: {node: '>=18.12'} - '@pnpm/workspace.read-manifest@1000.2.4': - resolution: {integrity: sha512-MxzprPLd17yNKs/w5a2+c+Cg9hfB0VAjFxcrR+McI49IYoWA17rViDyXDOX595xy2ntycUCkq6ZgQeWpfgl89w==} + '@pnpm/workspace.read-manifest@1000.2.5': + resolution: {integrity: sha512-kiFdZbwoIqNEwfBVSprSXuaKHdlORingq2uR4ofH9F8r8lwpIY/2bACl6VuFASHGSZ1Bs3Oy6VicSMPQRsKTJg==} engines: {node: '>=18.12'} '@polka/url@1.0.0-next.29': @@ -4559,8 +4573,8 @@ packages: cpu: [x64] os: [win32] - '@rushstack/node-core-library@5.17.0': - resolution: {integrity: sha512-24vt1GbHN6kyIglRMTVpyEiNRRRJK8uZHc1XoGAhmnTDKnrWet8OmOpImMswJIe6gM78eV8cMg1HXwuUHkSSgg==} + '@rushstack/node-core-library@5.17.1': + resolution: {integrity: sha512-Mtcsa0aRJgYJOpeTe4qElLTRBlijNohdliq/xOhqce5rlzMIfLr73j9wUuj6GYPZPbG0S+is/RL2l0m/vnL55A==} peerDependencies: '@types/node': '*' peerDependenciesMeta: @@ -4578,16 +4592,16 @@ packages: '@rushstack/rig-package@0.6.0': resolution: {integrity: sha512-ZQmfzsLE2+Y91GF15c65L/slMRVhF6Hycq04D4TwtdGaUAbIXXg9c5pKA5KFU7M4QMaihoobp9JJYpYcaY3zOw==} - '@rushstack/terminal@0.19.1': - resolution: {integrity: sha512-jsBuSad67IDVMO2yp0hDfs0OdE4z3mDIjIL2pclDT3aEJboeZXE85e1HjuD0F6JoW3XgHvDwoX+WOV+AVTDQeA==} + '@rushstack/terminal@0.19.2': + resolution: {integrity: sha512-SJLC+6oUrJ0OOpuuwXxhktCTE3jeYVIwtvREdNhbcnVQrYGaDJpAoBgNVfw+VH0pTPpFLBqoPHsRRz7mj7WlbA==} peerDependencies: '@types/node': '*' peerDependenciesMeta: '@types/node': optional: true - '@rushstack/ts-command-line@5.1.1': - resolution: {integrity: sha512-HPzFsUcr+wZ3oQI08Ec/E6cuiAVHKzrXZGHhwiwIGygAFiqN5QzX+ff30n70NU2WyE26CykgMwBZZSSyHCJrzA==} + '@rushstack/ts-command-line@5.1.2': + resolution: {integrity: sha512-jn0EnSefYrkZDrBGd6KGuecL84LI06DgzL4hVQ46AUijNBt2nRU/ST4HhrfII/w91siCd1J/Okvxq/BS75Me/A==} '@sec-ant/readable-stream@0.4.1': resolution: {integrity: sha512-831qok9r2t8AlxLko40y2ebgSDhenenCatLVeW/uBtnHPyhHOvG0C7TvfgecV+wHzIm5KUICgzmVpWS+IMEAeg==} @@ -4734,8 +4748,8 @@ packages: '@types/bintrees@1.0.6': resolution: {integrity: sha512-pZWT4Bz+tWwxlDspSjdoIza4PE5lbGI4Xvs3FZV/2v5m5SDA8LwNpU8AXxlndmARO7OaQ1Vf3zFenOsNMzaRkQ==} - '@types/chai@5.2.2': - resolution: {integrity: sha512-8kB30R7Hwqf40JPiKhVzodJs2Qc1ZJ5zuT3uzw5Hq/dhNCl3G3l83jfpdI1e20BP348+fV7VIL/+FxaXkqBmWg==} + '@types/chai@5.2.3': + resolution: {integrity: sha512-Mw558oeA9fFbv65/y4mHtXDs9bPnFMZAL/jxdPFUpOHHIXX91mcgEHbS5Lahr+pwZFR8A7GQleRWeI6cGFC2UA==} '@types/codemirror@5.60.16': resolution: {integrity: sha512-V/yHdamffSS075jit+fDxaOAmdP2liok8NSNJnAZfDJErzOheuygHZEhAJrfmk5TEyM32MhkZjwo/idX791yxw==} @@ -4911,11 +4925,11 @@ packages: '@types/node@12.20.55': resolution: {integrity: sha512-J8xLz7q2OFulZ2cyGTLE1TbbZcjpno7FaN6zdJNrgAdrJ+DZzh/uFR6YrTb4C+nXakvud8Q4+rbhoIWlYQbUFQ==} - '@types/node@22.18.11': - resolution: {integrity: sha512-Gd33J2XIrXurb+eT2ktze3rJAfAp9ZNjlBdh4SVgyrKEOADwCbdUDaK7QgJno8Ue4kcajscsKqu6n8OBG3hhCQ==} + '@types/node@22.18.12': + resolution: {integrity: sha512-BICHQ67iqxQGFSzfCFTT7MRQ5XcBjG5aeKh5Ok38UBbPe5fxTyE+aHFxwVrGyr8GNlqFMLKD1D3P2K/1ks8tog==} - '@types/node@24.8.1': - resolution: {integrity: sha512-alv65KGRadQVfVcG69MuB4IzdYVpRwMG/mq8KWOaoOdyY617P5ivaDiMCGOFDWD2sAn5Q0mR3mRtUOgm99hL9Q==} + '@types/node@24.9.1': + resolution: {integrity: sha512-QoiaXANRkSXK6p0Duvt56W208du4P9Uye9hWLWgGMDTEoKPhuenzNcC4vGUmrNkiOKTlIrBoyNQYNpSwfEZXSg==} '@types/nprogress@0.2.3': resolution: {integrity: sha512-k7kRA033QNtC+gLc4VPlfnue58CM1iQLgn1IMAU8VPHGOj7oIHPp9UlhedEnD/Gl8evoCjwkZjlBORtZ3JByUA==} @@ -4959,23 +4973,23 @@ packages: '@types/web-bluetooth@0.0.21': resolution: {integrity: sha512-oIQLCGWtcFZy2JW77j9k8nHzAOpqMHLQejDA48XXMWH6tjCQHz5RCFz1bzsmROyL6PUm+LLnUiI4BCn221inxA==} - '@typescript-eslint/eslint-plugin@8.46.1': - resolution: {integrity: sha512-rUsLh8PXmBjdiPY+Emjz9NX2yHvhS11v0SR6xNJkm5GM1MO9ea/1GoDKlHHZGrOJclL/cZ2i/vRUYVtjRhrHVQ==} + '@typescript-eslint/eslint-plugin@8.46.2': + resolution: {integrity: sha512-ZGBMToy857/NIPaaCucIUQgqueOiq7HeAKkhlvqVV4lm089zUFW6ikRySx2v+cAhKeUCPuWVHeimyk6Dw1iY3w==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: - '@typescript-eslint/parser': ^8.46.1 + '@typescript-eslint/parser': ^8.46.2 eslint: ^8.57.0 || ^9.0.0 typescript: '>=4.8.4 <6.0.0' - '@typescript-eslint/parser@8.46.1': - resolution: {integrity: sha512-6JSSaBZmsKvEkbRUkf7Zj7dru/8ZCrJxAqArcLaVMee5907JdtEbKGsZ7zNiIm/UAkpGUkaSMZEXShnN2D1HZA==} + '@typescript-eslint/parser@8.46.2': + resolution: {integrity: sha512-BnOroVl1SgrPLywqxyqdJ4l3S2MsKVLDVxZvjI1Eoe8ev2r3kGDo+PcMihNmDE+6/KjkTubSJnmqGZZjQSBq/g==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: eslint: ^8.57.0 || ^9.0.0 typescript: '>=4.8.4 <6.0.0' - '@typescript-eslint/project-service@8.46.1': - resolution: {integrity: sha512-FOIaFVMHzRskXr5J4Jp8lFVV0gz5ngv3RHmn+E4HYxSJ3DgDzU7fVI1/M7Ijh1zf6S7HIoaIOtln1H5y8V+9Zg==} + '@typescript-eslint/project-service@8.46.2': + resolution: {integrity: sha512-PULOLZ9iqwI7hXcmL4fVfIsBi6AN9YxRc0frbvmg8f+4hQAjQ5GYNKK0DIArNo+rOKmR/iBYwkpBmnIwin4wBg==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: typescript: '>=4.8.4 <6.0.0' @@ -4984,18 +4998,18 @@ packages: resolution: {integrity: sha512-jjhdIE/FPF2B7Z1uzc6i3oWKbGcHb87Qw7AWj6jmEqNOfDFbJWtjt/XfwCpvNkpGWlcJaog5vTR+VV8+w9JflA==} engines: {node: ^18.18.0 || >=20.0.0} - '@typescript-eslint/scope-manager@8.46.1': - resolution: {integrity: sha512-weL9Gg3/5F0pVQKiF8eOXFZp8emqWzZsOJuWRUNtHT+UNV2xSJegmpCNQHy37aEQIbToTq7RHKhWvOsmbM680A==} + '@typescript-eslint/scope-manager@8.46.2': + resolution: {integrity: sha512-LF4b/NmGvdWEHD2H4MsHD8ny6JpiVNDzrSZr3CsckEgCbAGZbYM4Cqxvi9L+WqDMT+51Ozy7lt2M+d0JLEuBqA==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} - '@typescript-eslint/tsconfig-utils@8.46.1': - resolution: {integrity: sha512-X88+J/CwFvlJB+mK09VFqx5FE4H5cXD+H/Bdza2aEWkSb8hnWIQorNcscRl4IEo1Cz9VI/+/r/jnGWkbWPx54g==} + '@typescript-eslint/tsconfig-utils@8.46.2': + resolution: {integrity: sha512-a7QH6fw4S57+F5y2FIxxSDyi5M4UfGF+Jl1bCGd7+L4KsaUY80GsiF/t0UoRFDHAguKlBaACWJRmdrc6Xfkkag==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: typescript: '>=4.8.4 <6.0.0' - '@typescript-eslint/type-utils@8.46.1': - resolution: {integrity: sha512-+BlmiHIiqufBxkVnOtFwjah/vrkF4MtKKvpXrKSPLCkCtAp8H01/VV43sfqA98Od7nJpDcFnkwgyfQbOG0AMvw==} + '@typescript-eslint/type-utils@8.46.2': + resolution: {integrity: sha512-HbPM4LbaAAt/DjxXaG9yiS9brOOz6fabal4uvUmaUYe6l3K1phQDMQKBRUrr06BQkxkvIZVVHttqiybM9nJsLA==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: eslint: ^8.57.0 || ^9.0.0 @@ -5005,8 +5019,8 @@ packages: resolution: {integrity: sha512-iZqi+Ds1y4EDYUtlOOC+aUmxnE9xS/yCigkjA7XpTKV6nCBd3Hp/PRGGmdwnfkV2ThMyYldP1wRpm/id99spTQ==} engines: {node: ^18.18.0 || >=20.0.0} - '@typescript-eslint/types@8.46.1': - resolution: {integrity: sha512-C+soprGBHwWBdkDpbaRC4paGBrkIXxVlNohadL5o0kfhsXqOC6GYH2S/Obmig+I0HTDl8wMaRySwrfrXVP8/pQ==} + '@typescript-eslint/types@8.46.2': + resolution: {integrity: sha512-lNCWCbq7rpg7qDsQrd3D6NyWYu+gkTENkG5IKYhUIcxSb59SQC/hEQ+MrG4sTgBVghTonNWq42bA/d4yYumldQ==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} '@typescript-eslint/typescript-estree@7.18.0': @@ -5018,8 +5032,8 @@ packages: typescript: optional: true - '@typescript-eslint/typescript-estree@8.46.1': - resolution: {integrity: sha512-uIifjT4s8cQKFQ8ZBXXyoUODtRoAd7F7+G8MKmtzj17+1UbdzFl52AzRyZRyKqPHhgzvXunnSckVu36flGy8cg==} + '@typescript-eslint/typescript-estree@8.46.2': + resolution: {integrity: sha512-f7rW7LJ2b7Uh2EiQ+7sza6RDZnajbNbemn54Ob6fRwQbgcIn+GWfyuHDHRYgRoZu1P4AayVScrRW+YfbTvPQoQ==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: typescript: '>=4.8.4 <6.0.0' @@ -5030,8 +5044,8 @@ packages: peerDependencies: eslint: ^8.56.0 - '@typescript-eslint/utils@8.46.1': - resolution: {integrity: sha512-vkYUy6LdZS7q1v/Gxb2Zs7zziuXN0wxqsetJdeZdRe/f5dwJFglmuvZBfTUivCtjH725C1jWCDfpadadD95EDQ==} + '@typescript-eslint/utils@8.46.2': + resolution: {integrity: sha512-sExxzucx0Tud5tE0XqR0lT0psBQvEpnpiul9XbGUB1QwpWJJAps1O/Z7hJxLGiZLBKMCutjTzDgmd1muEhBnVg==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: eslint: ^8.57.0 || ^9.0.0 @@ -5041,8 +5055,8 @@ packages: resolution: {integrity: sha512-cDF0/Gf81QpY3xYyJKDV14Zwdmid5+uuENhjH2EqFaF0ni+yAyq/LzMaIJdhNJXZI7uLzwIlA+V7oWoyn6Curg==} engines: {node: ^18.18.0 || >=20.0.0} - '@typescript-eslint/visitor-keys@8.46.1': - resolution: {integrity: sha512-ptkmIf2iDkNUjdeu2bQqhFPV1m6qTnFFjg7PPDjxKWaMaP0Z6I9l30Jr3g5QqbZGdw8YdYvLp+XnqnWWZOg/NA==} + '@typescript-eslint/visitor-keys@8.46.2': + resolution: {integrity: sha512-tUFMXI4gxzzMXt4xpGJEsBsTox0XbNQ1y94EwlD/CuZwFcQP79xfQqMhau9HsRc/J0cAPA/HZt1dZPtGn9V/7w==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} '@ungap/structured-clone@1.3.0': @@ -5726,8 +5740,8 @@ packages: base64-js@1.5.1: resolution: {integrity: sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==} - baseline-browser-mapping@2.8.18: - resolution: {integrity: sha512-UYmTpOBwgPScZpS4A+YbapwWuBwasxvO/2IOHArSsAhL/+ZdmATBXTex3t+l2hXwLVYK382ibr/nKoY9GKe86w==} + baseline-browser-mapping@2.8.19: + resolution: {integrity: sha512-zoKGUdu6vb2jd3YOq0nnhEDQVbPcHhco3UImJrv5dSkvxTc2pl2WjOPsjZXDwPDSl5eghIMuY3R6J9NDKF3KcQ==} hasBin: true benz-amr-recorder@1.1.5: @@ -6173,9 +6187,9 @@ packages: copy-anything@2.0.6: resolution: {integrity: sha512-1j20GZTsvKNkc4BY3NpMOM8tt///wY3FpIzozTOFO2ffuZcV61nojHXVKIy3WM+7ADCy5FVhdZYHYDdgTU0yJw==} - copy-anything@3.0.5: - resolution: {integrity: sha512-yCEafptTtb4bk7GLEQoM8KVJpxAfdBJYaXyzQEgQQQgYrZiDp8SJmGKlYza6CYjEDNstAdNdKA3UuoULlEbS6w==} - engines: {node: '>=12.13'} + copy-anything@4.0.5: + resolution: {integrity: sha512-7Vv6asjS4gMOuILabD3l739tsaxFQmC+a7pLZm02zyvs8p977bL3zEgq3yDk5rn9B0PbYgIv++jmHcuUab4RhA==} + engines: {node: '>=18'} core-js-compat@3.46.0: resolution: {integrity: sha512-p9hObIIEENxSV8xIu+V68JjSeARg6UVMG5mR+JEUguG3sI6MsiS1njz2jHmyJDvA+8jX/sytkBHup6kxhM9law==} @@ -6832,8 +6846,8 @@ packages: engines: {node: '>=0.10.0'} hasBin: true - electron-to-chromium@1.5.237: - resolution: {integrity: sha512-icUt1NvfhGLar5lSWH3tHNzablaA5js3HVHacQimfP8ViEBOQv+L7DKEuHdbTZ0SKCO1ogTJTIL1Gwk9S6Qvcg==} + electron-to-chromium@1.5.238: + resolution: {integrity: sha512-khBdc+w/Gv+cS8e/Pbnaw/FXcBUeKrRVik9IxfXtgREOWyJhR4tj43n3amkVogJ/yeQUqzkrZcFhtIxIdqmmcQ==} element-plus@2.11.5: resolution: {integrity: sha512-O+bIVHQCjUDm4GiIznDXRoS8ar2TpWLwfOGnN/Aam0VXf5kbuc4SxdKKJdovWNxmxeqbcwjsSZPKgtXNcqys4A==} @@ -7507,8 +7521,8 @@ packages: resolution: {integrity: sha512-w9UMqWwJxHNOvoNzSJ2oPF5wvYcvP7jUvYzhp67yEhTi17ZDBBC1z9pTdGuzjD+EFIqLSYRweZjqfiPzQ06Ebg==} engines: {node: '>= 0.4'} - get-tsconfig@4.12.0: - resolution: {integrity: sha512-LScr2aNr2FbjAjZh2C6X6BxRx1/x+aTDExct/xyq2XKbYOiG5c0aK7pMsSuyc0brz3ibr/lbQiHD9jzt4lccJw==} + get-tsconfig@4.13.0: + resolution: {integrity: sha512-1VKTZJCwBrvbd+Wn3AOgQP/2Av+TfTCOlE4AcRJE72W1ksZXbAx8PPBR9RzgTeSPzlPMHrbANMH3LbltH73wxQ==} giget@2.0.0: resolution: {integrity: sha512-L5bGsVkxJbJgdnwyuheIunkGatUF/zssUoxxjACCseZYAVbaqdh9Tsmmlkl8vYan09H7sbvKt4pS8GqKLBrEzA==} @@ -7817,8 +7831,8 @@ packages: resolution: {integrity: sha512-5Hh7Y1wQbvY5ooGgPbDaL5iYLAPzMTUrjMulskHLH6wnv/A+1q5rgEaiuqEjB+oxGXIVZs1FF+R/KPN3ZSQYYg==} engines: {node: '>=12'} - ioredis@5.8.1: - resolution: {integrity: sha512-Qho8TgIamqEPdgiMadJwzRMW3TudIg6vpg4YONokGDudy4eqRIJtDbVX72pfLBcWxvbn3qm/40TyGUObdW4tLQ==} + ioredis@5.8.2: + resolution: {integrity: sha512-C6uC+kleiIMmjViJINWk80sOQw5lEzse1ZmvD+S/s8p8CWapftSaC+kocGTx6xrbrJ4WmYQGC08ffHLr6ToR6Q==} engines: {node: '>=12.22.0'} iron-webcrypto@1.2.1: @@ -8059,9 +8073,9 @@ packages: is-what@3.14.1: resolution: {integrity: sha512-sNxgpk9793nzSs7bA6JQJGeIuRBQhAaNGG77kzYQgMkrID+lS6SlK07K5LaptscDlSaIgH+GPFzf+d75FVxozA==} - is-what@4.1.16: - resolution: {integrity: sha512-ZhMwEosbFJkA0YhFnNDgTM4ZxDRsS6HqTo7qsZM08fehyRYIYa0yHu5R6mgo1n/8MgaPBXiPimPD77baVFYg+A==} - engines: {node: '>=12.13'} + is-what@5.5.0: + resolution: {integrity: sha512-oG7cgbmg5kLYae2N5IVd3jm2s+vldjxJzK1pcu9LfpGuQ93MQSzo0okvRna+7y5ifrD+20FE8FvjusyGaz14fw==} + engines: {node: '>=18'} is-windows@1.0.2: resolution: {integrity: sha512-eXK1UInq2bPmjyX6e3VHIzMLobc4J94i4AWn+Hpq3OU5KkrRC96OAcR3PRJ/pGu6m8TRnBHP9dkXQVsT/COVIA==} @@ -8853,8 +8867,8 @@ packages: node-mock-http@1.0.3: resolution: {integrity: sha512-jN8dK25fsfnMrVsEhluUTPkBFY+6ybu7jSB1n+ri/vOGjJxU8J9CZhpSGkHXSkFjtUhbmoncG/YG9ta5Ludqog==} - node-releases@2.0.25: - resolution: {integrity: sha512-4auku8B/vw5psvTiiN9j1dAOsXvMoGqJuKJcR+dTdqiXEK20mMTk1UEo3HS16LeGQsVG6+qKTPM9u/qQ2LqATA==} + node-releases@2.0.26: + resolution: {integrity: sha512-S2M9YimhSjBSvYnlr5/+umAnPHE++ODwt5e2Ij6FoX45HA/s4vHdkDx1eax2pAPeAOqu4s9b7ppahsyEFdVqQA==} nopt@7.2.1: resolution: {integrity: sha512-taM24ViiimT/XntxbPyJQzCG+p4EKOpgD3mxFwW38mGjVUrfERQOeY4EDHjdnptttfHuHQXFx+lTP08Q+mLa/w==} @@ -9985,8 +9999,8 @@ packages: resolution: {integrity: sha512-OcXjMsGdhL4XnbShKpAcSqPMzQoYkYyhbEaeSko47MjRP9NfEQMhZkXL1DoFlt9LWQn4YttrdnV6X2OiyzBi+A==} engines: {node: '>=10'} - resolve@1.22.10: - resolution: {integrity: sha512-NPRy+/ncIMeDlTAsuqwKIiferiawhefFJtkNSW0qZJEqMEb+qBt/77B/jGeeek+F0uOeN05CDa6HXbbIgtVX4w==} + resolve@1.22.11: + resolution: {integrity: sha512-RfqAvLnMl313r7c9oclB1HhUEAezcpLjz95wFH4LVuhk9JF/r22qmVP9AMmOU4vMX7Q8pN8jwNg/CSpdFnMjTQ==} engines: {node: '>= 0.4'} hasBin: true @@ -10552,8 +10566,8 @@ packages: engines: {node: '>=16 || 14 >=14.17'} hasBin: true - superjson@2.2.2: - resolution: {integrity: sha512-5JRxVqC8I8NuOUjzBbvVJAKNM8qoVuH0O77h4WInc/qC2q5IreqKxYwgkga3PfA22OayK2ikceb/B26dztPl+Q==} + superjson@2.2.3: + resolution: {integrity: sha512-ay3d+LW/S6yppKoTz3Bq4mG0xrS5bFwfWEBmQfbC7lt5wmtk+Obq0TxVuA9eYRirBTQb1K3eEpBRHMQEo0WyVw==} engines: {node: '>=16'} supports-color@10.2.2: @@ -10872,8 +10886,8 @@ packages: undici-types@6.21.0: resolution: {integrity: sha512-iwDZqg0QAGrg9Rav5H4n0M64c3mkR59cJ6wQp+7C4nI0gsmExaedaYLNO44eT4AtBBwjbTiGPMlt2Md0T9H9JQ==} - undici-types@7.14.0: - resolution: {integrity: sha512-QQiYxHuyZ9gQUIrmPo3IA+hUl4KYk8uSA7cHrcKd/l3p1OTpZcM0Tbp9x7FAtXdAYhlasd60ncPpgu6ihG6TOA==} + undici-types@7.16.0: + resolution: {integrity: sha512-Zz+aZWSj8LE6zoxD+xrjh4VfkIG8Ya6LvYkZqtUQGJPZjYl53ypCaUwWqo7eI0x66KBGeRo+mlBEkMSeSZ38Nw==} undici@7.16.0: resolution: {integrity: sha512-QEg3HPMll0o3t2ourKwOeUAZ159Kn9mx5pnzHRQO8+Wixmh88YdZRiIwat0iNzNNXn0yoEtXJqFpyW7eM8BV7g==} @@ -11354,8 +11368,8 @@ packages: peerDependencies: vue: ^3.5.17 - vxe-pc-ui@4.10.2: - resolution: {integrity: sha512-qEU9h/DLLdFDAXQEKmRRO4Eo1Sh7n66pHJGUflzkGFB85PYxDxzqDLtx4iiS+q0pxVz1bGWG3phLgi20Dx48Zg==} + vxe-pc-ui@4.10.5: + resolution: {integrity: sha512-ASGSBIhEXRYmro/kVzK+es5DOchWvFXegM2osqrCIKQcFTAkLzLU4mZc8jOihNaxwy212819w8kLdS9KDwpvSg==} vxe-table@4.17.0: resolution: {integrity: sha512-IpyY5uzgMt4NEgTl0brAFe/xSyrBK8U0763uCG8LUe8TbGVuWMD5bCP9DYqkjK7cBmJjXtzwxlQ6I3auzCGd3Q==} @@ -11897,7 +11911,7 @@ snapshots: '@babel/helper-plugin-utils': 7.27.1 debug: 4.4.3 lodash.debounce: 4.0.8 - resolve: 1.22.10 + resolve: 1.22.11 transitivePeerDependencies: - supports-color @@ -12648,7 +12662,7 @@ snapshots: transitivePeerDependencies: - encoding - '@changesets/cli@2.29.7(@types/node@22.18.11)': + '@changesets/cli@2.29.7(@types/node@22.18.12)': dependencies: '@changesets/apply-release-plan': 7.0.13 '@changesets/assemble-release-plan': 6.0.9 @@ -12664,7 +12678,7 @@ snapshots: '@changesets/should-skip-package': 0.1.2 '@changesets/types': 6.1.0 '@changesets/write': 0.4.0 - '@inquirer/external-editor': 1.0.2(@types/node@22.18.11) + '@inquirer/external-editor': 1.0.2(@types/node@22.18.12) '@manypkg/get-packages': 1.1.3 ansi-colors: 4.1.3 ci-info: 3.9.0 @@ -12825,11 +12839,11 @@ snapshots: style-mod: 4.1.3 w3c-keyname: 2.2.8 - '@commitlint/cli@19.8.1(@types/node@24.8.1)(typescript@5.9.3)': + '@commitlint/cli@19.8.1(@types/node@24.9.1)(typescript@5.9.3)': dependencies: '@commitlint/format': 19.8.1 '@commitlint/lint': 19.8.1 - '@commitlint/load': 19.8.1(@types/node@24.8.1)(typescript@5.9.3) + '@commitlint/load': 19.8.1(@types/node@24.9.1)(typescript@5.9.3) '@commitlint/read': 19.8.1 '@commitlint/types': 19.8.1 tinyexec: 1.0.1 @@ -12876,7 +12890,7 @@ snapshots: '@commitlint/rules': 19.8.1 '@commitlint/types': 19.8.1 - '@commitlint/load@19.8.1(@types/node@24.8.1)(typescript@5.9.3)': + '@commitlint/load@19.8.1(@types/node@24.9.1)(typescript@5.9.3)': dependencies: '@commitlint/config-validator': 19.8.1 '@commitlint/execute-rule': 19.8.1 @@ -12884,7 +12898,7 @@ snapshots: '@commitlint/types': 19.8.1 chalk: 5.6.2 cosmiconfig: 9.0.0(typescript@5.9.3) - cosmiconfig-typescript-loader: 6.2.0(@types/node@24.8.1)(cosmiconfig@9.0.0(typescript@5.9.3))(typescript@5.9.3) + cosmiconfig-typescript-loader: 6.2.0(@types/node@24.9.1)(cosmiconfig@9.0.0(typescript@5.9.3))(typescript@5.9.3) lodash.isplainobject: 4.0.6 lodash.merge: 4.6.2 lodash.uniq: 4.5.0 @@ -13479,13 +13493,13 @@ snapshots: dependencies: vue: 3.5.22(typescript@5.9.3) - '@emnapi/core@1.5.0': + '@emnapi/core@1.6.0': dependencies: '@emnapi/wasi-threads': 1.1.0 tslib: 2.8.1 optional: true - '@emnapi/runtime@1.5.0': + '@emnapi/runtime@1.6.0': dependencies: tslib: 2.8.1 optional: true @@ -13504,7 +13518,7 @@ snapshots: '@es-joy/jsdoccomment@0.50.2': dependencies: '@types/estree': 1.0.8 - '@typescript-eslint/types': 8.46.1 + '@typescript-eslint/types': 8.46.2 comment-parser: 1.4.1 esquery: 1.6.0 jsdoc-type-pratt-parser: 4.1.0 @@ -13824,12 +13838,12 @@ snapshots: '@iconify/types': 2.0.0 vue: 3.5.22(typescript@5.9.3) - '@inquirer/external-editor@1.0.2(@types/node@22.18.11)': + '@inquirer/external-editor@1.0.2(@types/node@22.18.12)': dependencies: chardet: 2.1.0 iconv-lite: 0.7.0 optionalDependencies: - '@types/node': 22.18.11 + '@types/node': 22.18.12 '@internationalized/date@3.10.0': dependencies: @@ -13872,8 +13886,8 @@ snapshots: '@intlify/shared': 11.1.12 '@intlify/vue-i18n-extensions': 8.0.0(@intlify/shared@11.1.12)(@vue/compiler-dom@3.5.22)(vue-i18n@11.1.12(vue@3.5.22(typescript@5.9.3)))(vue@3.5.22(typescript@5.9.3)) '@rollup/pluginutils': 5.3.0(rollup@4.52.5) - '@typescript-eslint/scope-manager': 8.46.1 - '@typescript-eslint/typescript-estree': 8.46.1(typescript@5.9.3) + '@typescript-eslint/scope-manager': 8.46.2 + '@typescript-eslint/typescript-estree': 8.46.2(typescript@5.9.3) debug: 4.4.3 fast-glob: 3.3.3 js-yaml: 4.1.0 @@ -14035,26 +14049,26 @@ snapshots: '@marijn/find-cluster-break@1.0.2': {} - '@microsoft/api-extractor-model@7.31.1(@types/node@24.8.1)': + '@microsoft/api-extractor-model@7.31.2(@types/node@24.9.1)': dependencies: '@microsoft/tsdoc': 0.15.1 '@microsoft/tsdoc-config': 0.17.1 - '@rushstack/node-core-library': 5.17.0(@types/node@24.8.1) + '@rushstack/node-core-library': 5.17.1(@types/node@24.9.1) transitivePeerDependencies: - '@types/node' - '@microsoft/api-extractor@7.53.1(@types/node@24.8.1)': + '@microsoft/api-extractor@7.53.2(@types/node@24.9.1)': dependencies: - '@microsoft/api-extractor-model': 7.31.1(@types/node@24.8.1) + '@microsoft/api-extractor-model': 7.31.2(@types/node@24.9.1) '@microsoft/tsdoc': 0.15.1 '@microsoft/tsdoc-config': 0.17.1 - '@rushstack/node-core-library': 5.17.0(@types/node@24.8.1) + '@rushstack/node-core-library': 5.17.1(@types/node@24.9.1) '@rushstack/rig-package': 0.6.0 - '@rushstack/terminal': 0.19.1(@types/node@24.8.1) - '@rushstack/ts-command-line': 5.1.1(@types/node@24.8.1) + '@rushstack/terminal': 0.19.2(@types/node@24.9.1) + '@rushstack/ts-command-line': 5.1.2(@types/node@24.9.1) lodash: 4.17.21 minimatch: 10.0.3 - resolve: 1.22.10 + resolve: 1.22.11 semver: 7.5.4 source-map: 0.6.1 typescript: 5.8.2 @@ -14068,14 +14082,14 @@ snapshots: '@microsoft/tsdoc': 0.15.1 ajv: 8.12.0 jju: 1.4.0 - resolve: 1.22.10 + resolve: 1.22.11 '@microsoft/tsdoc@0.15.1': {} '@napi-rs/wasm-runtime@0.2.12': dependencies: - '@emnapi/core': 1.5.0 - '@emnapi/runtime': 1.5.0 + '@emnapi/core': 1.6.0 + '@emnapi/runtime': 1.6.0 '@tybys/wasm-util': 0.10.1 optional: true @@ -14091,17 +14105,17 @@ snapshots: '@nodelib/fs.scandir': 2.1.5 fastq: 1.19.1 - '@nolebase/ui@2.18.2(vitepress@1.6.4(@algolia/client-search@5.40.1)(@types/node@24.8.1)(async-validator@4.2.5)(axios@1.12.2)(less@4.4.2)(nprogress@0.2.0)(postcss@8.5.6)(qrcode@1.5.4)(sass@1.93.2)(search-insights@2.17.3)(sortablejs@1.15.6)(terser@5.44.0)(typescript@5.9.3))(vue@3.5.22(typescript@5.9.3))': + '@nolebase/ui@2.18.2(vitepress@1.6.4(@algolia/client-search@5.40.1)(@types/node@24.9.1)(async-validator@4.2.5)(axios@1.12.2)(less@4.4.2)(nprogress@0.2.0)(postcss@8.5.6)(qrcode@1.5.4)(sass@1.93.2)(search-insights@2.17.3)(sortablejs@1.15.6)(terser@5.44.0)(typescript@5.9.3))(vue@3.5.22(typescript@5.9.3))': dependencies: '@iconify-json/octicon': 1.2.16 less: 4.4.2 - vitepress: 1.6.4(@algolia/client-search@5.40.1)(@types/node@24.8.1)(async-validator@4.2.5)(axios@1.12.2)(less@4.4.2)(nprogress@0.2.0)(postcss@8.5.6)(qrcode@1.5.4)(sass@1.93.2)(search-insights@2.17.3)(sortablejs@1.15.6)(terser@5.44.0)(typescript@5.9.3) + vitepress: 1.6.4(@algolia/client-search@5.40.1)(@types/node@24.9.1)(async-validator@4.2.5)(axios@1.12.2)(less@4.4.2)(nprogress@0.2.0)(postcss@8.5.6)(qrcode@1.5.4)(sass@1.93.2)(search-insights@2.17.3)(sortablejs@1.15.6)(terser@5.44.0)(typescript@5.9.3) vue: 3.5.22(typescript@5.9.3) - '@nolebase/vitepress-plugin-git-changelog@2.18.2(vitepress@1.6.4(@algolia/client-search@5.40.1)(@types/node@24.8.1)(async-validator@4.2.5)(axios@1.12.2)(less@4.4.2)(nprogress@0.2.0)(postcss@8.5.6)(qrcode@1.5.4)(sass@1.93.2)(search-insights@2.17.3)(sortablejs@1.15.6)(terser@5.44.0)(typescript@5.9.3))(vue@3.5.22(typescript@5.9.3))': + '@nolebase/vitepress-plugin-git-changelog@2.18.2(vitepress@1.6.4(@algolia/client-search@5.40.1)(@types/node@24.9.1)(async-validator@4.2.5)(axios@1.12.2)(less@4.4.2)(nprogress@0.2.0)(postcss@8.5.6)(qrcode@1.5.4)(sass@1.93.2)(search-insights@2.17.3)(sortablejs@1.15.6)(terser@5.44.0)(typescript@5.9.3))(vue@3.5.22(typescript@5.9.3))': dependencies: '@iconify-json/octicon': 1.2.16 - '@nolebase/ui': 2.18.2(vitepress@1.6.4(@algolia/client-search@5.40.1)(@types/node@24.8.1)(async-validator@4.2.5)(axios@1.12.2)(less@4.4.2)(nprogress@0.2.0)(postcss@8.5.6)(qrcode@1.5.4)(sass@1.93.2)(search-insights@2.17.3)(sortablejs@1.15.6)(terser@5.44.0)(typescript@5.9.3))(vue@3.5.22(typescript@5.9.3)) + '@nolebase/ui': 2.18.2(vitepress@1.6.4(@algolia/client-search@5.40.1)(@types/node@24.9.1)(async-validator@4.2.5)(axios@1.12.2)(less@4.4.2)(nprogress@0.2.0)(postcss@8.5.6)(qrcode@1.5.4)(sass@1.93.2)(search-insights@2.17.3)(sortablejs@1.15.6)(terser@5.44.0)(typescript@5.9.3))(vue@3.5.22(typescript@5.9.3)) colorette: 2.0.20 date-fns: 4.1.0 defu: 6.1.4 @@ -14111,7 +14125,7 @@ snapshots: gray-matter: 4.0.3 less: 4.4.2 uncrypto: 0.1.3 - vitepress: 1.6.4(@algolia/client-search@5.40.1)(@types/node@24.8.1)(async-validator@4.2.5)(axios@1.12.2)(less@4.4.2)(nprogress@0.2.0)(postcss@8.5.6)(qrcode@1.5.4)(sass@1.93.2)(search-insights@2.17.3)(sortablejs@1.15.6)(terser@5.44.0)(typescript@5.9.3) + vitepress: 1.6.4(@algolia/client-search@5.40.1)(@types/node@24.9.1)(async-validator@4.2.5)(axios@1.12.2)(less@4.4.2)(nprogress@0.2.0)(postcss@8.5.6)(qrcode@1.5.4)(sass@1.93.2)(search-insights@2.17.3)(sortablejs@1.15.6)(terser@5.44.0)(typescript@5.9.3) transitivePeerDependencies: - vue @@ -14242,13 +14256,13 @@ snapshots: '@pnpm/network.ca-file': 1.0.2 config-chain: 1.1.13 - '@pnpm/types@1000.8.0': {} + '@pnpm/types@1000.9.0': {} - '@pnpm/workspace.read-manifest@1000.2.4': + '@pnpm/workspace.read-manifest@1000.2.5': dependencies: '@pnpm/constants': 1001.3.1 '@pnpm/error': 1000.0.5 - '@pnpm/types': 1000.8.0 + '@pnpm/types': 1000.9.0 read-yaml-file: 2.1.0 '@polka/url@1.0.0-next.29': {} @@ -14318,7 +14332,7 @@ snapshots: '@types/resolve': 1.20.2 deepmerge: 4.3.1 is-module: 1.0.0 - resolve: 1.22.10 + resolve: 1.22.11 optionalDependencies: rollup: 2.79.2 @@ -14328,7 +14342,7 @@ snapshots: '@types/resolve': 1.20.2 deepmerge: 4.3.1 is-module: 1.0.0 - resolve: 1.22.10 + resolve: 1.22.11 optionalDependencies: rollup: 4.52.5 @@ -14455,7 +14469,7 @@ snapshots: '@rollup/rollup-win32-x64-msvc@4.52.5': optional: true - '@rushstack/node-core-library@5.17.0(@types/node@24.8.1)': + '@rushstack/node-core-library@5.17.1(@types/node@24.9.1)': dependencies: ajv: 8.13.0 ajv-draft-04: 1.0.0(ajv@8.13.0) @@ -14463,31 +14477,31 @@ snapshots: fs-extra: 11.3.2 import-lazy: 4.0.0 jju: 1.4.0 - resolve: 1.22.10 + resolve: 1.22.11 semver: 7.5.4 optionalDependencies: - '@types/node': 24.8.1 + '@types/node': 24.9.1 - '@rushstack/problem-matcher@0.1.1(@types/node@24.8.1)': + '@rushstack/problem-matcher@0.1.1(@types/node@24.9.1)': optionalDependencies: - '@types/node': 24.8.1 + '@types/node': 24.9.1 '@rushstack/rig-package@0.6.0': dependencies: - resolve: 1.22.10 + resolve: 1.22.11 strip-json-comments: 3.1.1 - '@rushstack/terminal@0.19.1(@types/node@24.8.1)': + '@rushstack/terminal@0.19.2(@types/node@24.9.1)': dependencies: - '@rushstack/node-core-library': 5.17.0(@types/node@24.8.1) - '@rushstack/problem-matcher': 0.1.1(@types/node@24.8.1) + '@rushstack/node-core-library': 5.17.1(@types/node@24.9.1) + '@rushstack/problem-matcher': 0.1.1(@types/node@24.9.1) supports-color: 8.1.1 optionalDependencies: - '@types/node': 24.8.1 + '@types/node': 24.9.1 - '@rushstack/ts-command-line@5.1.1(@types/node@24.8.1)': + '@rushstack/ts-command-line@5.1.2(@types/node@24.9.1)': dependencies: - '@rushstack/terminal': 0.19.1(@types/node@24.8.1) + '@rushstack/terminal': 0.19.2(@types/node@24.9.1) '@types/argparse': 1.0.38 argparse: 1.0.10 string-argv: 0.3.2 @@ -14654,9 +14668,10 @@ snapshots: '@types/bintrees@1.0.6': {} - '@types/chai@5.2.2': + '@types/chai@5.2.3': dependencies: '@types/deep-eql': 4.0.2 + assertion-error: 2.0.1 '@types/codemirror@5.60.16': dependencies: @@ -14664,7 +14679,7 @@ snapshots: '@types/conventional-commits-parser@5.0.1': dependencies: - '@types/node': 24.8.1 + '@types/node': 24.9.1 '@types/crypto-js@4.2.2': {} @@ -14811,7 +14826,7 @@ snapshots: '@types/jsonwebtoken@9.0.10': dependencies: '@types/ms': 2.1.0 - '@types/node': 24.8.1 + '@types/node': 24.9.1 '@types/katex@0.16.7': {} @@ -14856,13 +14871,13 @@ snapshots: '@types/node@12.20.55': {} - '@types/node@22.18.11': + '@types/node@22.18.12': dependencies: undici-types: 6.21.0 - '@types/node@24.8.1': + '@types/node@24.9.1': dependencies: - undici-types: 7.14.0 + undici-types: 7.16.0 '@types/nprogress@0.2.3': {} @@ -14874,13 +14889,13 @@ snapshots: '@types/qrcode@1.5.5': dependencies: - '@types/node': 24.8.1 + '@types/node': 24.9.1 '@types/qs@6.14.0': {} '@types/readdir-glob@1.1.5': dependencies: - '@types/node': 24.8.1 + '@types/node': 24.9.1 '@types/resolve@1.20.2': {} @@ -14900,14 +14915,14 @@ snapshots: '@types/web-bluetooth@0.0.21': {} - '@typescript-eslint/eslint-plugin@8.46.1(@typescript-eslint/parser@8.46.1(eslint@9.38.0(jiti@2.6.1))(typescript@5.9.3))(eslint@9.38.0(jiti@2.6.1))(typescript@5.9.3)': + '@typescript-eslint/eslint-plugin@8.46.2(@typescript-eslint/parser@8.46.2(eslint@9.38.0(jiti@2.6.1))(typescript@5.9.3))(eslint@9.38.0(jiti@2.6.1))(typescript@5.9.3)': dependencies: '@eslint-community/regexpp': 4.12.1 - '@typescript-eslint/parser': 8.46.1(eslint@9.38.0(jiti@2.6.1))(typescript@5.9.3) - '@typescript-eslint/scope-manager': 8.46.1 - '@typescript-eslint/type-utils': 8.46.1(eslint@9.38.0(jiti@2.6.1))(typescript@5.9.3) - '@typescript-eslint/utils': 8.46.1(eslint@9.38.0(jiti@2.6.1))(typescript@5.9.3) - '@typescript-eslint/visitor-keys': 8.46.1 + '@typescript-eslint/parser': 8.46.2(eslint@9.38.0(jiti@2.6.1))(typescript@5.9.3) + '@typescript-eslint/scope-manager': 8.46.2 + '@typescript-eslint/type-utils': 8.46.2(eslint@9.38.0(jiti@2.6.1))(typescript@5.9.3) + '@typescript-eslint/utils': 8.46.2(eslint@9.38.0(jiti@2.6.1))(typescript@5.9.3) + '@typescript-eslint/visitor-keys': 8.46.2 eslint: 9.38.0(jiti@2.6.1) graphemer: 1.4.0 ignore: 7.0.5 @@ -14917,22 +14932,22 @@ snapshots: transitivePeerDependencies: - supports-color - '@typescript-eslint/parser@8.46.1(eslint@9.38.0(jiti@2.6.1))(typescript@5.9.3)': + '@typescript-eslint/parser@8.46.2(eslint@9.38.0(jiti@2.6.1))(typescript@5.9.3)': dependencies: - '@typescript-eslint/scope-manager': 8.46.1 - '@typescript-eslint/types': 8.46.1 - '@typescript-eslint/typescript-estree': 8.46.1(typescript@5.9.3) - '@typescript-eslint/visitor-keys': 8.46.1 + '@typescript-eslint/scope-manager': 8.46.2 + '@typescript-eslint/types': 8.46.2 + '@typescript-eslint/typescript-estree': 8.46.2(typescript@5.9.3) + '@typescript-eslint/visitor-keys': 8.46.2 debug: 4.4.3 eslint: 9.38.0(jiti@2.6.1) typescript: 5.9.3 transitivePeerDependencies: - supports-color - '@typescript-eslint/project-service@8.46.1(typescript@5.9.3)': + '@typescript-eslint/project-service@8.46.2(typescript@5.9.3)': dependencies: - '@typescript-eslint/tsconfig-utils': 8.46.1(typescript@5.9.3) - '@typescript-eslint/types': 8.46.1 + '@typescript-eslint/tsconfig-utils': 8.46.2(typescript@5.9.3) + '@typescript-eslint/types': 8.46.2 debug: 4.4.3 typescript: 5.9.3 transitivePeerDependencies: @@ -14943,20 +14958,20 @@ snapshots: '@typescript-eslint/types': 7.18.0 '@typescript-eslint/visitor-keys': 7.18.0 - '@typescript-eslint/scope-manager@8.46.1': + '@typescript-eslint/scope-manager@8.46.2': dependencies: - '@typescript-eslint/types': 8.46.1 - '@typescript-eslint/visitor-keys': 8.46.1 + '@typescript-eslint/types': 8.46.2 + '@typescript-eslint/visitor-keys': 8.46.2 - '@typescript-eslint/tsconfig-utils@8.46.1(typescript@5.9.3)': + '@typescript-eslint/tsconfig-utils@8.46.2(typescript@5.9.3)': dependencies: typescript: 5.9.3 - '@typescript-eslint/type-utils@8.46.1(eslint@9.38.0(jiti@2.6.1))(typescript@5.9.3)': + '@typescript-eslint/type-utils@8.46.2(eslint@9.38.0(jiti@2.6.1))(typescript@5.9.3)': dependencies: - '@typescript-eslint/types': 8.46.1 - '@typescript-eslint/typescript-estree': 8.46.1(typescript@5.9.3) - '@typescript-eslint/utils': 8.46.1(eslint@9.38.0(jiti@2.6.1))(typescript@5.9.3) + '@typescript-eslint/types': 8.46.2 + '@typescript-eslint/typescript-estree': 8.46.2(typescript@5.9.3) + '@typescript-eslint/utils': 8.46.2(eslint@9.38.0(jiti@2.6.1))(typescript@5.9.3) debug: 4.4.3 eslint: 9.38.0(jiti@2.6.1) ts-api-utils: 2.1.0(typescript@5.9.3) @@ -14966,7 +14981,7 @@ snapshots: '@typescript-eslint/types@7.18.0': {} - '@typescript-eslint/types@8.46.1': {} + '@typescript-eslint/types@8.46.2': {} '@typescript-eslint/typescript-estree@7.18.0(typescript@5.9.3)': dependencies: @@ -14983,12 +14998,12 @@ snapshots: transitivePeerDependencies: - supports-color - '@typescript-eslint/typescript-estree@8.46.1(typescript@5.9.3)': + '@typescript-eslint/typescript-estree@8.46.2(typescript@5.9.3)': dependencies: - '@typescript-eslint/project-service': 8.46.1(typescript@5.9.3) - '@typescript-eslint/tsconfig-utils': 8.46.1(typescript@5.9.3) - '@typescript-eslint/types': 8.46.1 - '@typescript-eslint/visitor-keys': 8.46.1 + '@typescript-eslint/project-service': 8.46.2(typescript@5.9.3) + '@typescript-eslint/tsconfig-utils': 8.46.2(typescript@5.9.3) + '@typescript-eslint/types': 8.46.2 + '@typescript-eslint/visitor-keys': 8.46.2 debug: 4.4.3 fast-glob: 3.3.3 is-glob: 4.0.3 @@ -15010,12 +15025,12 @@ snapshots: - supports-color - typescript - '@typescript-eslint/utils@8.46.1(eslint@9.38.0(jiti@2.6.1))(typescript@5.9.3)': + '@typescript-eslint/utils@8.46.2(eslint@9.38.0(jiti@2.6.1))(typescript@5.9.3)': dependencies: '@eslint-community/eslint-utils': 4.9.0(eslint@9.38.0(jiti@2.6.1)) - '@typescript-eslint/scope-manager': 8.46.1 - '@typescript-eslint/types': 8.46.1 - '@typescript-eslint/typescript-estree': 8.46.1(typescript@5.9.3) + '@typescript-eslint/scope-manager': 8.46.2 + '@typescript-eslint/types': 8.46.2 + '@typescript-eslint/typescript-estree': 8.46.2(typescript@5.9.3) eslint: 9.38.0(jiti@2.6.1) typescript: 5.9.3 transitivePeerDependencies: @@ -15026,9 +15041,9 @@ snapshots: '@typescript-eslint/types': 7.18.0 eslint-visitor-keys: 3.4.3 - '@typescript-eslint/visitor-keys@8.46.1': + '@typescript-eslint/visitor-keys@8.46.2': dependencies: - '@typescript-eslint/types': 8.46.1 + '@typescript-eslint/types': 8.46.2 eslint-visitor-keys: 4.2.1 '@ungap/structured-clone@1.3.0': {} @@ -15119,66 +15134,66 @@ snapshots: - rollup - supports-color - '@vite-pwa/vitepress@1.0.1(vite-plugin-pwa@1.1.0(vite@5.4.21(@types/node@24.8.1)(less@4.4.2)(sass@1.93.2)(terser@5.44.0))(workbox-build@7.3.0)(workbox-window@7.3.0))': + '@vite-pwa/vitepress@1.0.1(vite-plugin-pwa@1.1.0(vite@5.4.21(@types/node@24.9.1)(less@4.4.2)(sass@1.93.2)(terser@5.44.0))(workbox-build@7.3.0)(workbox-window@7.3.0))': dependencies: - vite-plugin-pwa: 1.1.0(vite@5.4.21(@types/node@24.8.1)(less@4.4.2)(sass@1.93.2)(terser@5.44.0))(workbox-build@7.3.0)(workbox-window@7.3.0) + vite-plugin-pwa: 1.1.0(vite@5.4.21(@types/node@24.9.1)(less@4.4.2)(sass@1.93.2)(terser@5.44.0))(workbox-build@7.3.0)(workbox-window@7.3.0) - '@vitejs/plugin-vue-jsx@5.1.1(vite@7.1.11(@types/node@22.18.11)(jiti@1.21.7)(less@4.4.2)(sass@1.93.2)(terser@5.44.0)(yaml@2.8.1))(vue@3.5.22(typescript@5.9.3))': + '@vitejs/plugin-vue-jsx@5.1.1(vite@7.1.11(@types/node@22.18.12)(jiti@2.6.1)(less@4.4.2)(sass@1.93.2)(terser@5.44.0)(yaml@2.8.1))(vue@3.5.22(typescript@5.9.3))': dependencies: '@babel/core': 7.28.4 '@babel/plugin-syntax-typescript': 7.27.1(@babel/core@7.28.4) '@babel/plugin-transform-typescript': 7.28.0(@babel/core@7.28.4) '@rolldown/pluginutils': 1.0.0-beta.44 '@vue/babel-plugin-jsx': 1.5.0(@babel/core@7.28.4) - vite: 7.1.11(@types/node@22.18.11)(jiti@1.21.7)(less@4.4.2)(sass@1.93.2)(terser@5.44.0)(yaml@2.8.1) + vite: 7.1.11(@types/node@22.18.12)(jiti@2.6.1)(less@4.4.2)(sass@1.93.2)(terser@5.44.0)(yaml@2.8.1) vue: 3.5.22(typescript@5.9.3) transitivePeerDependencies: - supports-color - '@vitejs/plugin-vue-jsx@5.1.1(vite@7.1.11(@types/node@24.8.1)(jiti@2.6.1)(less@4.4.2)(sass@1.93.2)(terser@5.44.0)(yaml@2.8.1))(vue@3.5.22(typescript@5.9.3))': + '@vitejs/plugin-vue-jsx@5.1.1(vite@7.1.11(@types/node@24.9.1)(jiti@2.6.1)(less@4.4.2)(sass@1.93.2)(terser@5.44.0)(yaml@2.8.1))(vue@3.5.22(typescript@5.9.3))': dependencies: '@babel/core': 7.28.4 '@babel/plugin-syntax-typescript': 7.27.1(@babel/core@7.28.4) '@babel/plugin-transform-typescript': 7.28.0(@babel/core@7.28.4) '@rolldown/pluginutils': 1.0.0-beta.44 '@vue/babel-plugin-jsx': 1.5.0(@babel/core@7.28.4) - vite: 7.1.11(@types/node@24.8.1)(jiti@2.6.1)(less@4.4.2)(sass@1.93.2)(terser@5.44.0)(yaml@2.8.1) + vite: 7.1.11(@types/node@24.9.1)(jiti@2.6.1)(less@4.4.2)(sass@1.93.2)(terser@5.44.0)(yaml@2.8.1) vue: 3.5.22(typescript@5.9.3) transitivePeerDependencies: - supports-color - '@vitejs/plugin-vue@5.2.4(vite@5.4.21(@types/node@24.8.1)(less@4.4.2)(sass@1.93.2)(terser@5.44.0))(vue@3.5.22(typescript@5.9.3))': + '@vitejs/plugin-vue@5.2.4(vite@5.4.21(@types/node@24.9.1)(less@4.4.2)(sass@1.93.2)(terser@5.44.0))(vue@3.5.22(typescript@5.9.3))': dependencies: - vite: 5.4.21(@types/node@24.8.1)(less@4.4.2)(sass@1.93.2)(terser@5.44.0) + vite: 5.4.21(@types/node@24.9.1)(less@4.4.2)(sass@1.93.2)(terser@5.44.0) vue: 3.5.22(typescript@5.9.3) - '@vitejs/plugin-vue@6.0.1(vite@7.1.11(@types/node@22.18.11)(jiti@1.21.7)(less@4.4.2)(sass@1.93.2)(terser@5.44.0)(yaml@2.8.1))(vue@3.5.22(typescript@5.9.3))': + '@vitejs/plugin-vue@6.0.1(vite@7.1.11(@types/node@22.18.12)(jiti@2.6.1)(less@4.4.2)(sass@1.93.2)(terser@5.44.0)(yaml@2.8.1))(vue@3.5.22(typescript@5.9.3))': dependencies: '@rolldown/pluginutils': 1.0.0-beta.29 - vite: 7.1.11(@types/node@22.18.11)(jiti@1.21.7)(less@4.4.2)(sass@1.93.2)(terser@5.44.0)(yaml@2.8.1) + vite: 7.1.11(@types/node@22.18.12)(jiti@2.6.1)(less@4.4.2)(sass@1.93.2)(terser@5.44.0)(yaml@2.8.1) vue: 3.5.22(typescript@5.9.3) - '@vitejs/plugin-vue@6.0.1(vite@7.1.11(@types/node@24.8.1)(jiti@2.6.1)(less@4.4.2)(sass@1.93.2)(terser@5.44.0)(yaml@2.8.1))(vue@3.5.22(typescript@5.9.3))': + '@vitejs/plugin-vue@6.0.1(vite@7.1.11(@types/node@24.9.1)(jiti@2.6.1)(less@4.4.2)(sass@1.93.2)(terser@5.44.0)(yaml@2.8.1))(vue@3.5.22(typescript@5.9.3))': dependencies: '@rolldown/pluginutils': 1.0.0-beta.29 - vite: 7.1.11(@types/node@24.8.1)(jiti@2.6.1)(less@4.4.2)(sass@1.93.2)(terser@5.44.0)(yaml@2.8.1) + vite: 7.1.11(@types/node@24.9.1)(jiti@2.6.1)(less@4.4.2)(sass@1.93.2)(terser@5.44.0)(yaml@2.8.1) vue: 3.5.22(typescript@5.9.3) '@vitest/expect@3.2.4': dependencies: - '@types/chai': 5.2.2 + '@types/chai': 5.2.3 '@vitest/spy': 3.2.4 '@vitest/utils': 3.2.4 chai: 5.3.3 tinyrainbow: 2.0.0 - '@vitest/mocker@3.2.4(vite@7.1.11(@types/node@22.18.11)(jiti@1.21.7)(less@4.4.2)(sass@1.93.2)(terser@5.44.0)(yaml@2.8.1))': + '@vitest/mocker@3.2.4(vite@7.1.11(@types/node@22.18.12)(jiti@2.6.1)(less@4.4.2)(sass@1.93.2)(terser@5.44.0)(yaml@2.8.1))': dependencies: '@vitest/spy': 3.2.4 estree-walker: 3.0.3 magic-string: 0.30.19 optionalDependencies: - vite: 7.1.11(@types/node@22.18.11)(jiti@1.21.7)(less@4.4.2)(sass@1.93.2)(terser@5.44.0)(yaml@2.8.1) + vite: 7.1.11(@types/node@22.18.12)(jiti@2.6.1)(less@4.4.2)(sass@1.93.2)(terser@5.44.0)(yaml@2.8.1) '@vitest/pretty-format@3.2.4': dependencies: @@ -15288,14 +15303,14 @@ snapshots: dependencies: '@vue/devtools-kit': 7.7.7 - '@vue/devtools-core@7.7.7(vite@7.1.11(@types/node@24.8.1)(jiti@2.6.1)(less@4.4.2)(sass@1.93.2)(terser@5.44.0)(yaml@2.8.1))(vue@3.5.22(typescript@5.9.3))': + '@vue/devtools-core@7.7.7(vite@7.1.11(@types/node@24.9.1)(jiti@2.6.1)(less@4.4.2)(sass@1.93.2)(terser@5.44.0)(yaml@2.8.1))(vue@3.5.22(typescript@5.9.3))': dependencies: '@vue/devtools-kit': 7.7.7 '@vue/devtools-shared': 7.7.7 mitt: 3.0.1 nanoid: 5.1.6 pathe: 2.0.3 - vite-hot-client: 2.1.0(vite@7.1.11(@types/node@24.8.1)(jiti@2.6.1)(less@4.4.2)(sass@1.93.2)(terser@5.44.0)(yaml@2.8.1)) + vite-hot-client: 2.1.0(vite@7.1.11(@types/node@24.9.1)(jiti@2.6.1)(less@4.4.2)(sass@1.93.2)(terser@5.44.0)(yaml@2.8.1)) vue: 3.5.22(typescript@5.9.3) transitivePeerDependencies: - vite @@ -15308,7 +15323,7 @@ snapshots: mitt: 3.0.1 perfect-debounce: 1.0.0 speakingurl: 14.0.1 - superjson: 2.2.2 + superjson: 2.2.3 '@vue/devtools-shared@7.7.7': dependencies: @@ -15795,7 +15810,7 @@ snapshots: base64-js@1.5.1: {} - baseline-browser-mapping@2.8.18: {} + baseline-browser-mapping@2.8.19: {} benz-amr-recorder@1.1.5: dependencies: @@ -15883,10 +15898,10 @@ snapshots: browserslist@4.26.3: dependencies: - baseline-browser-mapping: 2.8.18 + baseline-browser-mapping: 2.8.19 caniuse-lite: 1.0.30001751 - electron-to-chromium: 1.5.237 - node-releases: 2.0.25 + electron-to-chromium: 1.5.238 + node-releases: 2.0.26 update-browserslist-db: 1.1.3(browserslist@4.26.3) buffer-crc32@1.0.0: {} @@ -16090,7 +16105,7 @@ snapshots: '@ast-grep/napi': 0.37.0 '@vue/compiler-sfc': 3.5.22 commander: 12.1.0 - get-tsconfig: 4.12.0 + get-tsconfig: 4.13.0 graph-cycles: 3.0.0 listr2: 8.3.3 minimatch: 9.0.5 @@ -16293,9 +16308,9 @@ snapshots: dependencies: is-what: 3.14.1 - copy-anything@3.0.5: + copy-anything@4.0.5: dependencies: - is-what: 4.1.16 + is-what: 5.5.0 core-js-compat@3.46.0: dependencies: @@ -16307,9 +16322,9 @@ snapshots: core-util-is@1.0.3: {} - cosmiconfig-typescript-loader@6.2.0(@types/node@24.8.1)(cosmiconfig@9.0.0(typescript@5.9.3))(typescript@5.9.3): + cosmiconfig-typescript-loader@6.2.0(@types/node@24.9.1)(cosmiconfig@9.0.0(typescript@5.9.3))(typescript@5.9.3): dependencies: - '@types/node': 24.8.1 + '@types/node': 24.9.1 cosmiconfig: 9.0.0(typescript@5.9.3) jiti: 2.6.1 typescript: 5.9.3 @@ -16834,7 +16849,7 @@ snapshots: please-upgrade-node: 3.2.0 readdirp: 3.6.0 require-package-name: 2.0.1 - resolve: 1.22.10 + resolve: 1.22.11 resolve-from: 5.0.0 semver: 7.7.3 yargs: 16.2.0 @@ -17015,7 +17030,7 @@ snapshots: dependencies: jake: 10.9.4 - electron-to-chromium@1.5.237: {} + electron-to-chromium@1.5.238: {} element-plus@2.11.5(vue@3.5.22(typescript@5.9.3)): dependencies: @@ -17238,7 +17253,7 @@ snapshots: eslint-import-context@0.1.9(unrs-resolver@1.11.1): dependencies: - get-tsconfig: 4.12.0 + get-tsconfig: 4.13.0 stable-hash-x: 0.2.0 optionalDependencies: unrs-resolver: 1.11.1 @@ -17267,9 +17282,9 @@ snapshots: eslint: 9.38.0(jiti@2.6.1) ignore: 5.3.2 - eslint-plugin-import-x@4.16.1(@typescript-eslint/utils@8.46.1(eslint@9.38.0(jiti@2.6.1))(typescript@5.9.3))(eslint@9.38.0(jiti@2.6.1)): + eslint-plugin-import-x@4.16.1(@typescript-eslint/utils@8.46.2(eslint@9.38.0(jiti@2.6.1))(typescript@5.9.3))(eslint@9.38.0(jiti@2.6.1)): dependencies: - '@typescript-eslint/types': 8.46.1 + '@typescript-eslint/types': 8.46.2 comment-parser: 1.4.1 debug: 4.4.3 eslint: 9.38.0(jiti@2.6.1) @@ -17280,7 +17295,7 @@ snapshots: stable-hash-x: 0.2.0 unrs-resolver: 1.11.1 optionalDependencies: - '@typescript-eslint/utils': 8.46.1(eslint@9.38.0(jiti@2.6.1))(typescript@5.9.3) + '@typescript-eslint/utils': 8.46.2(eslint@9.38.0(jiti@2.6.1))(typescript@5.9.3) transitivePeerDependencies: - supports-color @@ -17321,7 +17336,7 @@ snapshots: enhanced-resolve: 5.18.3 eslint: 9.38.0(jiti@2.6.1) eslint-plugin-es-x: 7.8.0(eslint@9.38.0(jiti@2.6.1)) - get-tsconfig: 4.12.0 + get-tsconfig: 4.13.0 globals: 15.15.0 globrex: 0.1.2 ignore: 5.3.2 @@ -17334,8 +17349,8 @@ snapshots: eslint-plugin-perfectionist@4.15.1(eslint@9.38.0(jiti@2.6.1))(typescript@5.9.3): dependencies: - '@typescript-eslint/types': 8.46.1 - '@typescript-eslint/utils': 8.46.1(eslint@9.38.0(jiti@2.6.1))(typescript@5.9.3) + '@typescript-eslint/types': 8.46.2 + '@typescript-eslint/utils': 8.46.2(eslint@9.38.0(jiti@2.6.1))(typescript@5.9.3) eslint: 9.38.0(jiti@2.6.1) natural-orderby: 5.0.0 transitivePeerDependencies: @@ -17389,24 +17404,24 @@ snapshots: semver: 7.7.3 strip-indent: 4.1.1 - eslint-plugin-unused-imports@4.3.0(@typescript-eslint/eslint-plugin@8.46.1(@typescript-eslint/parser@8.46.1(eslint@9.38.0(jiti@2.6.1))(typescript@5.9.3))(eslint@9.38.0(jiti@2.6.1))(typescript@5.9.3))(eslint@9.38.0(jiti@2.6.1)): + eslint-plugin-unused-imports@4.3.0(@typescript-eslint/eslint-plugin@8.46.2(@typescript-eslint/parser@8.46.2(eslint@9.38.0(jiti@2.6.1))(typescript@5.9.3))(eslint@9.38.0(jiti@2.6.1))(typescript@5.9.3))(eslint@9.38.0(jiti@2.6.1)): dependencies: eslint: 9.38.0(jiti@2.6.1) optionalDependencies: - '@typescript-eslint/eslint-plugin': 8.46.1(@typescript-eslint/parser@8.46.1(eslint@9.38.0(jiti@2.6.1))(typescript@5.9.3))(eslint@9.38.0(jiti@2.6.1))(typescript@5.9.3) + '@typescript-eslint/eslint-plugin': 8.46.2(@typescript-eslint/parser@8.46.2(eslint@9.38.0(jiti@2.6.1))(typescript@5.9.3))(eslint@9.38.0(jiti@2.6.1))(typescript@5.9.3) - eslint-plugin-vitest@0.5.4(@typescript-eslint/eslint-plugin@8.46.1(@typescript-eslint/parser@8.46.1(eslint@9.38.0(jiti@2.6.1))(typescript@5.9.3))(eslint@9.38.0(jiti@2.6.1))(typescript@5.9.3))(eslint@9.38.0(jiti@2.6.1))(typescript@5.9.3)(vitest@3.2.4(@types/node@24.8.1)(happy-dom@17.6.3)(jiti@2.6.1)(less@4.4.2)(sass@1.93.2)(terser@5.44.0)(yaml@2.8.1)): + eslint-plugin-vitest@0.5.4(@typescript-eslint/eslint-plugin@8.46.2(@typescript-eslint/parser@8.46.2(eslint@9.38.0(jiti@2.6.1))(typescript@5.9.3))(eslint@9.38.0(jiti@2.6.1))(typescript@5.9.3))(eslint@9.38.0(jiti@2.6.1))(typescript@5.9.3)(vitest@3.2.4(@types/node@24.9.1)(happy-dom@17.6.3)(jiti@2.6.1)(less@4.4.2)(sass@1.93.2)(terser@5.44.0)(yaml@2.8.1)): dependencies: '@typescript-eslint/utils': 7.18.0(eslint@9.38.0(jiti@2.6.1))(typescript@5.9.3) eslint: 9.38.0(jiti@2.6.1) optionalDependencies: - '@typescript-eslint/eslint-plugin': 8.46.1(@typescript-eslint/parser@8.46.1(eslint@9.38.0(jiti@2.6.1))(typescript@5.9.3))(eslint@9.38.0(jiti@2.6.1))(typescript@5.9.3) - vitest: 3.2.4(@types/node@24.8.1)(happy-dom@17.6.3)(jiti@2.6.1)(less@4.4.2)(sass@1.93.2)(terser@5.44.0)(yaml@2.8.1) + '@typescript-eslint/eslint-plugin': 8.46.2(@typescript-eslint/parser@8.46.2(eslint@9.38.0(jiti@2.6.1))(typescript@5.9.3))(eslint@9.38.0(jiti@2.6.1))(typescript@5.9.3) + vitest: 3.2.4(@types/node@24.9.1)(happy-dom@17.6.3)(jiti@2.6.1)(less@4.4.2)(sass@1.93.2)(terser@5.44.0)(yaml@2.8.1) transitivePeerDependencies: - supports-color - typescript - eslint-plugin-vue@10.5.1(@typescript-eslint/parser@8.46.1(eslint@9.38.0(jiti@2.6.1))(typescript@5.9.3))(eslint@9.38.0(jiti@2.6.1))(vue-eslint-parser@10.2.0(eslint@9.38.0(jiti@2.6.1))): + eslint-plugin-vue@10.5.1(@typescript-eslint/parser@8.46.2(eslint@9.38.0(jiti@2.6.1))(typescript@5.9.3))(eslint@9.38.0(jiti@2.6.1))(vue-eslint-parser@10.2.0(eslint@9.38.0(jiti@2.6.1))): dependencies: '@eslint-community/eslint-utils': 4.9.0(eslint@9.38.0(jiti@2.6.1)) eslint: 9.38.0(jiti@2.6.1) @@ -17417,7 +17432,7 @@ snapshots: vue-eslint-parser: 10.2.0(eslint@9.38.0(jiti@2.6.1)) xml-name-validator: 4.0.0 optionalDependencies: - '@typescript-eslint/parser': 8.46.1(eslint@9.38.0(jiti@2.6.1))(typescript@5.9.3) + '@typescript-eslint/parser': 8.46.2(eslint@9.38.0(jiti@2.6.1))(typescript@5.9.3) eslint-scope@8.4.0: dependencies: @@ -17848,7 +17863,7 @@ snapshots: es-errors: 1.3.0 get-intrinsic: 1.3.0 - get-tsconfig@4.12.0: + get-tsconfig@4.13.0: dependencies: resolve-pkg-maps: 1.0.0 @@ -18196,7 +18211,7 @@ snapshots: internmap@2.0.3: {} - ioredis@5.8.1: + ioredis@5.8.2: dependencies: '@ioredis/commands': 1.4.0 cluster-key-slot: 1.1.2 @@ -18409,7 +18424,7 @@ snapshots: is-what@3.14.1: {} - is-what@4.1.16: {} + is-what@5.5.0: {} is-windows@1.0.2: {} @@ -19170,7 +19185,7 @@ snapshots: h3: 1.15.4 hookable: 5.5.3 httpxy: 0.1.7 - ioredis: 5.8.1 + ioredis: 5.8.2 jiti: 2.6.1 klona: 2.0.6 knitwork: 1.2.0 @@ -19203,7 +19218,7 @@ snapshots: unenv: 2.0.0-rc.21 unimport: 5.5.0 unplugin-utils: 0.3.1 - unstorage: 1.17.1(db0@0.3.4)(ioredis@5.8.1) + unstorage: 1.17.1(db0@0.3.4)(ioredis@5.8.2) untyped: 2.0.0 unwasm: 0.3.11 youch: 4.1.0-beta.11 @@ -19279,7 +19294,7 @@ snapshots: node-mock-http@1.0.3: {} - node-releases@2.0.25: {} + node-releases@2.0.26: {} nopt@7.2.1: dependencies: @@ -19770,14 +19785,14 @@ snapshots: postcss: 8.5.6 postcss-value-parser: 4.2.0 read-cache: 1.0.0 - resolve: 1.22.10 + resolve: 1.22.11 postcss-import@16.1.1(postcss@8.5.6): dependencies: postcss: 8.5.6 postcss-value-parser: 4.2.0 read-cache: 1.0.0 - resolve: 1.22.10 + resolve: 1.22.11 postcss-js@4.1.0(postcss@8.5.6): dependencies: @@ -20361,7 +20376,7 @@ snapshots: resolve.exports@2.0.3: {} - resolve@1.22.10: + resolve@1.22.11: dependencies: is-core-module: 2.16.1 path-parse: 1.0.7 @@ -21012,9 +21027,9 @@ snapshots: pirates: 4.0.7 ts-interface-checker: 0.1.13 - superjson@2.2.2: + superjson@2.2.3: dependencies: - copy-anything: 3.0.5 + copy-anything: 4.0.5 supports-color@10.2.2: {} @@ -21112,7 +21127,7 @@ snapshots: postcss-load-config: 6.0.1(jiti@1.21.7)(postcss@8.5.6)(yaml@2.8.1) postcss-nested: 6.2.0(postcss@8.5.6) postcss-selector-parser: 6.1.2 - resolve: 1.22.10 + resolve: 1.22.11 sucrase: 3.35.0 transitivePeerDependencies: - tsx @@ -21377,7 +21392,7 @@ snapshots: undici-types@6.21.0: {} - undici-types@7.14.0: {} + undici-types@7.16.0: {} undici@7.16.0: {} @@ -21513,7 +21528,7 @@ snapshots: '@unrs/resolver-binding-win32-ia32-msvc': 1.11.1 '@unrs/resolver-binding-win32-x64-msvc': 1.11.1 - unstorage@1.17.1(db0@0.3.4)(ioredis@5.8.1): + unstorage@1.17.1(db0@0.3.4)(ioredis@5.8.2): dependencies: anymatch: 3.1.3 chokidar: 4.0.3 @@ -21525,7 +21540,7 @@ snapshots: ufo: 1.6.1 optionalDependencies: db0: 0.3.4 - ioredis: 5.8.1 + ioredis: 5.8.2 untun@0.1.3: dependencies: @@ -21600,17 +21615,17 @@ snapshots: '@types/unist': 3.0.3 vfile-message: 4.0.3 - vite-hot-client@2.1.0(vite@7.1.11(@types/node@24.8.1)(jiti@2.6.1)(less@4.4.2)(sass@1.93.2)(terser@5.44.0)(yaml@2.8.1)): + vite-hot-client@2.1.0(vite@7.1.11(@types/node@24.9.1)(jiti@2.6.1)(less@4.4.2)(sass@1.93.2)(terser@5.44.0)(yaml@2.8.1)): dependencies: - vite: 7.1.11(@types/node@24.8.1)(jiti@2.6.1)(less@4.4.2)(sass@1.93.2)(terser@5.44.0)(yaml@2.8.1) + vite: 7.1.11(@types/node@24.9.1)(jiti@2.6.1)(less@4.4.2)(sass@1.93.2)(terser@5.44.0)(yaml@2.8.1) - vite-node@3.2.4(@types/node@22.18.11)(jiti@1.21.7)(less@4.4.2)(sass@1.93.2)(terser@5.44.0)(yaml@2.8.1): + vite-node@3.2.4(@types/node@22.18.12)(jiti@2.6.1)(less@4.4.2)(sass@1.93.2)(terser@5.44.0)(yaml@2.8.1): dependencies: cac: 6.7.14 debug: 4.4.3 es-module-lexer: 1.7.0 pathe: 2.0.3 - vite: 7.1.11(@types/node@22.18.11)(jiti@1.21.7)(less@4.4.2)(sass@1.93.2)(terser@5.44.0)(yaml@2.8.1) + vite: 7.1.11(@types/node@22.18.12)(jiti@2.6.1)(less@4.4.2)(sass@1.93.2)(terser@5.44.0)(yaml@2.8.1) transitivePeerDependencies: - '@types/node' - jiti @@ -21625,13 +21640,13 @@ snapshots: - tsx - yaml - vite-node@3.2.4(@types/node@24.8.1)(jiti@2.6.1)(less@4.4.2)(sass@1.93.2)(terser@5.44.0)(yaml@2.8.1): + vite-node@3.2.4(@types/node@24.9.1)(jiti@2.6.1)(less@4.4.2)(sass@1.93.2)(terser@5.44.0)(yaml@2.8.1): dependencies: cac: 6.7.14 debug: 4.4.3 es-module-lexer: 1.7.0 pathe: 2.0.3 - vite: 7.1.11(@types/node@24.8.1)(jiti@2.6.1)(less@4.4.2)(sass@1.93.2)(terser@5.44.0)(yaml@2.8.1) + vite: 7.1.11(@types/node@24.9.1)(jiti@2.6.1)(less@4.4.2)(sass@1.93.2)(terser@5.44.0)(yaml@2.8.1) transitivePeerDependencies: - '@types/node' - jiti @@ -21647,18 +21662,18 @@ snapshots: - yaml optional: true - vite-plugin-compression@0.5.1(vite@7.1.11(@types/node@24.8.1)(jiti@2.6.1)(less@4.4.2)(sass@1.93.2)(terser@5.44.0)(yaml@2.8.1)): + vite-plugin-compression@0.5.1(vite@7.1.11(@types/node@24.9.1)(jiti@2.6.1)(less@4.4.2)(sass@1.93.2)(terser@5.44.0)(yaml@2.8.1)): dependencies: chalk: 4.1.2 debug: 4.4.3 fs-extra: 10.1.0 - vite: 7.1.11(@types/node@24.8.1)(jiti@2.6.1)(less@4.4.2)(sass@1.93.2)(terser@5.44.0)(yaml@2.8.1) + vite: 7.1.11(@types/node@24.9.1)(jiti@2.6.1)(less@4.4.2)(sass@1.93.2)(terser@5.44.0)(yaml@2.8.1) transitivePeerDependencies: - supports-color - vite-plugin-dts@4.5.4(@types/node@24.8.1)(rollup@4.52.5)(typescript@5.9.3)(vite@7.1.11(@types/node@24.8.1)(jiti@2.6.1)(less@4.4.2)(sass@1.93.2)(terser@5.44.0)(yaml@2.8.1)): + vite-plugin-dts@4.5.4(@types/node@24.9.1)(rollup@4.52.5)(typescript@5.9.3)(vite@7.1.11(@types/node@24.9.1)(jiti@2.6.1)(less@4.4.2)(sass@1.93.2)(terser@5.44.0)(yaml@2.8.1)): dependencies: - '@microsoft/api-extractor': 7.53.1(@types/node@24.8.1) + '@microsoft/api-extractor': 7.53.2(@types/node@24.9.1) '@rollup/pluginutils': 5.3.0(rollup@4.52.5) '@volar/typescript': 2.4.23 '@vue/language-core': 2.2.0(typescript@5.9.3) @@ -21669,13 +21684,13 @@ snapshots: magic-string: 0.30.19 typescript: 5.9.3 optionalDependencies: - vite: 7.1.11(@types/node@24.8.1)(jiti@2.6.1)(less@4.4.2)(sass@1.93.2)(terser@5.44.0)(yaml@2.8.1) + vite: 7.1.11(@types/node@24.9.1)(jiti@2.6.1)(less@4.4.2)(sass@1.93.2)(terser@5.44.0)(yaml@2.8.1) transitivePeerDependencies: - '@types/node' - rollup - supports-color - vite-plugin-html@3.2.2(vite@7.1.11(@types/node@24.8.1)(jiti@2.6.1)(less@4.4.2)(sass@1.93.2)(terser@5.44.0)(yaml@2.8.1)): + vite-plugin-html@3.2.2(vite@7.1.11(@types/node@24.9.1)(jiti@2.6.1)(less@4.4.2)(sass@1.93.2)(terser@5.44.0)(yaml@2.8.1)): dependencies: '@rollup/pluginutils': 4.2.1 colorette: 2.0.20 @@ -21689,9 +21704,9 @@ snapshots: html-minifier-terser: 6.1.0 node-html-parser: 5.4.2 pathe: 0.2.0 - vite: 7.1.11(@types/node@24.8.1)(jiti@2.6.1)(less@4.4.2)(sass@1.93.2)(terser@5.44.0)(yaml@2.8.1) + vite: 7.1.11(@types/node@24.9.1)(jiti@2.6.1)(less@4.4.2)(sass@1.93.2)(terser@5.44.0)(yaml@2.8.1) - vite-plugin-inspect@0.8.9(rollup@4.52.5)(vite@7.1.11(@types/node@24.8.1)(jiti@2.6.1)(less@4.4.2)(sass@1.93.2)(terser@5.44.0)(yaml@2.8.1)): + vite-plugin-inspect@0.8.9(rollup@4.52.5)(vite@7.1.11(@types/node@24.9.1)(jiti@2.6.1)(less@4.4.2)(sass@1.93.2)(terser@5.44.0)(yaml@2.8.1)): dependencies: '@antfu/utils': 0.7.10 '@rollup/pluginutils': 5.3.0(rollup@4.52.5) @@ -21702,7 +21717,7 @@ snapshots: perfect-debounce: 1.0.0 picocolors: 1.1.1 sirv: 3.0.2 - vite: 7.1.11(@types/node@24.8.1)(jiti@2.6.1)(less@4.4.2)(sass@1.93.2)(terser@5.44.0)(yaml@2.8.1) + vite: 7.1.11(@types/node@24.9.1)(jiti@2.6.1)(less@4.4.2)(sass@1.93.2)(terser@5.44.0)(yaml@2.8.1) transitivePeerDependencies: - rollup - supports-color @@ -21714,45 +21729,45 @@ snapshots: rollup: 4.52.5 xe-utils: 3.7.9 - vite-plugin-pwa@1.1.0(vite@5.4.21(@types/node@24.8.1)(less@4.4.2)(sass@1.93.2)(terser@5.44.0))(workbox-build@7.3.0)(workbox-window@7.3.0): + vite-plugin-pwa@1.1.0(vite@5.4.21(@types/node@24.9.1)(less@4.4.2)(sass@1.93.2)(terser@5.44.0))(workbox-build@7.3.0)(workbox-window@7.3.0): dependencies: debug: 4.4.3 pretty-bytes: 6.1.1 tinyglobby: 0.2.15 - vite: 5.4.21(@types/node@24.8.1)(less@4.4.2)(sass@1.93.2)(terser@5.44.0) + vite: 5.4.21(@types/node@24.9.1)(less@4.4.2)(sass@1.93.2)(terser@5.44.0) workbox-build: 7.3.0 workbox-window: 7.3.0 transitivePeerDependencies: - supports-color - vite-plugin-pwa@1.1.0(vite@7.1.11(@types/node@24.8.1)(jiti@2.6.1)(less@4.4.2)(sass@1.93.2)(terser@5.44.0)(yaml@2.8.1))(workbox-build@7.3.0)(workbox-window@7.3.0): + vite-plugin-pwa@1.1.0(vite@7.1.11(@types/node@24.9.1)(jiti@2.6.1)(less@4.4.2)(sass@1.93.2)(terser@5.44.0)(yaml@2.8.1))(workbox-build@7.3.0)(workbox-window@7.3.0): dependencies: debug: 4.4.3 pretty-bytes: 6.1.1 tinyglobby: 0.2.15 - vite: 7.1.11(@types/node@24.8.1)(jiti@2.6.1)(less@4.4.2)(sass@1.93.2)(terser@5.44.0)(yaml@2.8.1) + vite: 7.1.11(@types/node@24.9.1)(jiti@2.6.1)(less@4.4.2)(sass@1.93.2)(terser@5.44.0)(yaml@2.8.1) workbox-build: 7.3.0 workbox-window: 7.3.0 transitivePeerDependencies: - supports-color - vite-plugin-vue-devtools@7.7.7(rollup@4.52.5)(vite@7.1.11(@types/node@24.8.1)(jiti@2.6.1)(less@4.4.2)(sass@1.93.2)(terser@5.44.0)(yaml@2.8.1))(vue@3.5.22(typescript@5.9.3)): + vite-plugin-vue-devtools@7.7.7(rollup@4.52.5)(vite@7.1.11(@types/node@24.9.1)(jiti@2.6.1)(less@4.4.2)(sass@1.93.2)(terser@5.44.0)(yaml@2.8.1))(vue@3.5.22(typescript@5.9.3)): dependencies: - '@vue/devtools-core': 7.7.7(vite@7.1.11(@types/node@24.8.1)(jiti@2.6.1)(less@4.4.2)(sass@1.93.2)(terser@5.44.0)(yaml@2.8.1))(vue@3.5.22(typescript@5.9.3)) + '@vue/devtools-core': 7.7.7(vite@7.1.11(@types/node@24.9.1)(jiti@2.6.1)(less@4.4.2)(sass@1.93.2)(terser@5.44.0)(yaml@2.8.1))(vue@3.5.22(typescript@5.9.3)) '@vue/devtools-kit': 7.7.7 '@vue/devtools-shared': 7.7.7 execa: 9.6.0 sirv: 3.0.2 - vite: 7.1.11(@types/node@24.8.1)(jiti@2.6.1)(less@4.4.2)(sass@1.93.2)(terser@5.44.0)(yaml@2.8.1) - vite-plugin-inspect: 0.8.9(rollup@4.52.5)(vite@7.1.11(@types/node@24.8.1)(jiti@2.6.1)(less@4.4.2)(sass@1.93.2)(terser@5.44.0)(yaml@2.8.1)) - vite-plugin-vue-inspector: 5.3.2(vite@7.1.11(@types/node@24.8.1)(jiti@2.6.1)(less@4.4.2)(sass@1.93.2)(terser@5.44.0)(yaml@2.8.1)) + vite: 7.1.11(@types/node@24.9.1)(jiti@2.6.1)(less@4.4.2)(sass@1.93.2)(terser@5.44.0)(yaml@2.8.1) + vite-plugin-inspect: 0.8.9(rollup@4.52.5)(vite@7.1.11(@types/node@24.9.1)(jiti@2.6.1)(less@4.4.2)(sass@1.93.2)(terser@5.44.0)(yaml@2.8.1)) + vite-plugin-vue-inspector: 5.3.2(vite@7.1.11(@types/node@24.9.1)(jiti@2.6.1)(less@4.4.2)(sass@1.93.2)(terser@5.44.0)(yaml@2.8.1)) transitivePeerDependencies: - '@nuxt/kit' - rollup - supports-color - vue - vite-plugin-vue-inspector@5.3.2(vite@7.1.11(@types/node@24.8.1)(jiti@2.6.1)(less@4.4.2)(sass@1.93.2)(terser@5.44.0)(yaml@2.8.1)): + vite-plugin-vue-inspector@5.3.2(vite@7.1.11(@types/node@24.9.1)(jiti@2.6.1)(less@4.4.2)(sass@1.93.2)(terser@5.44.0)(yaml@2.8.1)): dependencies: '@babel/core': 7.28.4 '@babel/plugin-proposal-decorators': 7.28.0(@babel/core@7.28.4) @@ -21763,23 +21778,23 @@ snapshots: '@vue/compiler-dom': 3.5.22 kolorist: 1.8.0 magic-string: 0.30.19 - vite: 7.1.11(@types/node@24.8.1)(jiti@2.6.1)(less@4.4.2)(sass@1.93.2)(terser@5.44.0)(yaml@2.8.1) + vite: 7.1.11(@types/node@24.9.1)(jiti@2.6.1)(less@4.4.2)(sass@1.93.2)(terser@5.44.0)(yaml@2.8.1) transitivePeerDependencies: - supports-color - vite@5.4.21(@types/node@24.8.1)(less@4.4.2)(sass@1.93.2)(terser@5.44.0): + vite@5.4.21(@types/node@24.9.1)(less@4.4.2)(sass@1.93.2)(terser@5.44.0): dependencies: esbuild: 0.25.3 postcss: 8.5.6 rollup: 4.52.5 optionalDependencies: - '@types/node': 24.8.1 + '@types/node': 24.9.1 fsevents: 2.3.3 less: 4.4.2 sass: 1.93.2 terser: 5.44.0 - vite@7.1.11(@types/node@22.18.11)(jiti@1.21.7)(less@4.4.2)(sass@1.93.2)(terser@5.44.0)(yaml@2.8.1): + vite@7.1.11(@types/node@22.18.12)(jiti@2.6.1)(less@4.4.2)(sass@1.93.2)(terser@5.44.0)(yaml@2.8.1): dependencies: esbuild: 0.25.3 fdir: 6.5.0(picomatch@4.0.3) @@ -21788,7 +21803,7 @@ snapshots: rollup: 4.52.5 tinyglobby: 0.2.15 optionalDependencies: - '@types/node': 22.18.11 + '@types/node': 22.18.12 fsevents: 2.3.3 jiti: 1.21.7 less: 4.4.2 @@ -21796,7 +21811,7 @@ snapshots: terser: 5.44.0 yaml: 2.8.1 - vite@7.1.11(@types/node@24.8.1)(jiti@2.6.1)(less@4.4.2)(sass@1.93.2)(terser@5.44.0)(yaml@2.8.1): + vite@7.1.11(@types/node@24.9.1)(jiti@2.6.1)(less@4.4.2)(sass@1.93.2)(terser@5.44.0)(yaml@2.8.1): dependencies: esbuild: 0.25.3 fdir: 6.5.0(picomatch@4.0.3) @@ -21805,7 +21820,7 @@ snapshots: rollup: 4.52.5 tinyglobby: 0.2.15 optionalDependencies: - '@types/node': 24.8.1 + '@types/node': 24.9.1 fsevents: 2.3.3 jiti: 2.6.1 less: 4.4.2 @@ -21813,17 +21828,17 @@ snapshots: terser: 5.44.0 yaml: 2.8.1 - vitepress-plugin-group-icons@1.6.4(markdown-it@14.1.0)(vite@5.4.21(@types/node@24.8.1)(less@4.4.2)(sass@1.93.2)(terser@5.44.0)): + vitepress-plugin-group-icons@1.6.4(markdown-it@14.1.0)(vite@5.4.21(@types/node@24.9.1)(less@4.4.2)(sass@1.93.2)(terser@5.44.0)): dependencies: '@iconify-json/logos': 1.2.9 '@iconify-json/vscode-icons': 1.2.32 '@iconify/utils': 3.0.2 markdown-it: 14.1.0 - vite: 5.4.21(@types/node@24.8.1)(less@4.4.2)(sass@1.93.2)(terser@5.44.0) + vite: 5.4.21(@types/node@24.9.1)(less@4.4.2)(sass@1.93.2)(terser@5.44.0) transitivePeerDependencies: - supports-color - vitepress@1.6.4(@algolia/client-search@5.40.1)(@types/node@24.8.1)(async-validator@4.2.5)(axios@1.12.2)(less@4.4.2)(nprogress@0.2.0)(postcss@8.5.6)(qrcode@1.5.4)(sass@1.93.2)(search-insights@2.17.3)(sortablejs@1.15.6)(terser@5.44.0)(typescript@5.9.3): + vitepress@1.6.4(@algolia/client-search@5.40.1)(@types/node@24.9.1)(async-validator@4.2.5)(axios@1.12.2)(less@4.4.2)(nprogress@0.2.0)(postcss@8.5.6)(qrcode@1.5.4)(sass@1.93.2)(search-insights@2.17.3)(sortablejs@1.15.6)(terser@5.44.0)(typescript@5.9.3): dependencies: '@docsearch/css': 3.8.2 '@docsearch/js': 3.8.2(@algolia/client-search@5.40.1)(search-insights@2.17.3) @@ -21832,7 +21847,7 @@ snapshots: '@shikijs/transformers': 2.5.0 '@shikijs/types': 2.5.0 '@types/markdown-it': 14.1.2 - '@vitejs/plugin-vue': 5.2.4(vite@5.4.21(@types/node@24.8.1)(less@4.4.2)(sass@1.93.2)(terser@5.44.0))(vue@3.5.22(typescript@5.9.3)) + '@vitejs/plugin-vue': 5.2.4(vite@5.4.21(@types/node@24.9.1)(less@4.4.2)(sass@1.93.2)(terser@5.44.0))(vue@3.5.22(typescript@5.9.3)) '@vue/devtools-api': 7.7.7 '@vue/shared': 3.5.22 '@vueuse/core': 12.8.2(typescript@5.9.3) @@ -21841,7 +21856,7 @@ snapshots: mark.js: 8.11.1 minisearch: 7.2.0 shiki: 2.5.0 - vite: 5.4.21(@types/node@24.8.1)(less@4.4.2)(sass@1.93.2)(terser@5.44.0) + vite: 5.4.21(@types/node@24.9.1)(less@4.4.2)(sass@1.93.2)(terser@5.44.0) vue: 3.5.22(typescript@5.9.3) optionalDependencies: postcss: 8.5.6 @@ -21872,11 +21887,11 @@ snapshots: - typescript - universal-cookie - vitest@3.2.4(@types/node@22.18.11)(happy-dom@17.6.3)(jiti@1.21.7)(less@4.4.2)(sass@1.93.2)(terser@5.44.0)(yaml@2.8.1): + vitest@3.2.4(@types/node@22.18.12)(happy-dom@17.6.3)(jiti@2.6.1)(less@4.4.2)(sass@1.93.2)(terser@5.44.0)(yaml@2.8.1): dependencies: - '@types/chai': 5.2.2 + '@types/chai': 5.2.3 '@vitest/expect': 3.2.4 - '@vitest/mocker': 3.2.4(vite@7.1.11(@types/node@22.18.11)(jiti@1.21.7)(less@4.4.2)(sass@1.93.2)(terser@5.44.0)(yaml@2.8.1)) + '@vitest/mocker': 3.2.4(vite@7.1.11(@types/node@22.18.12)(jiti@2.6.1)(less@4.4.2)(sass@1.93.2)(terser@5.44.0)(yaml@2.8.1)) '@vitest/pretty-format': 3.2.4 '@vitest/runner': 3.2.4 '@vitest/snapshot': 3.2.4 @@ -21894,11 +21909,11 @@ snapshots: tinyglobby: 0.2.15 tinypool: 1.1.1 tinyrainbow: 2.0.0 - vite: 7.1.11(@types/node@22.18.11)(jiti@1.21.7)(less@4.4.2)(sass@1.93.2)(terser@5.44.0)(yaml@2.8.1) - vite-node: 3.2.4(@types/node@22.18.11)(jiti@1.21.7)(less@4.4.2)(sass@1.93.2)(terser@5.44.0)(yaml@2.8.1) + vite: 7.1.11(@types/node@22.18.12)(jiti@2.6.1)(less@4.4.2)(sass@1.93.2)(terser@5.44.0)(yaml@2.8.1) + vite-node: 3.2.4(@types/node@22.18.12)(jiti@2.6.1)(less@4.4.2)(sass@1.93.2)(terser@5.44.0)(yaml@2.8.1) why-is-node-running: 2.3.0 optionalDependencies: - '@types/node': 22.18.11 + '@types/node': 22.18.12 happy-dom: 17.6.3 transitivePeerDependencies: - jiti @@ -21914,11 +21929,11 @@ snapshots: - tsx - yaml - vitest@3.2.4(@types/node@24.8.1)(happy-dom@17.6.3)(jiti@2.6.1)(less@4.4.2)(sass@1.93.2)(terser@5.44.0)(yaml@2.8.1): + vitest@3.2.4(@types/node@24.9.1)(happy-dom@17.6.3)(jiti@2.6.1)(less@4.4.2)(sass@1.93.2)(terser@5.44.0)(yaml@2.8.1): dependencies: - '@types/chai': 5.2.2 + '@types/chai': 5.2.3 '@vitest/expect': 3.2.4 - '@vitest/mocker': 3.2.4(vite@7.1.11(@types/node@22.18.11)(jiti@1.21.7)(less@4.4.2)(sass@1.93.2)(terser@5.44.0)(yaml@2.8.1)) + '@vitest/mocker': 3.2.4(vite@7.1.11(@types/node@22.18.12)(jiti@2.6.1)(less@4.4.2)(sass@1.93.2)(terser@5.44.0)(yaml@2.8.1)) '@vitest/pretty-format': 3.2.4 '@vitest/runner': 3.2.4 '@vitest/snapshot': 3.2.4 @@ -21936,11 +21951,11 @@ snapshots: tinyglobby: 0.2.15 tinypool: 1.1.1 tinyrainbow: 2.0.0 - vite: 7.1.11(@types/node@24.8.1)(jiti@2.6.1)(less@4.4.2)(sass@1.93.2)(terser@5.44.0)(yaml@2.8.1) - vite-node: 3.2.4(@types/node@24.8.1)(jiti@2.6.1)(less@4.4.2)(sass@1.93.2)(terser@5.44.0)(yaml@2.8.1) + vite: 7.1.11(@types/node@24.9.1)(jiti@2.6.1)(less@4.4.2)(sass@1.93.2)(terser@5.44.0)(yaml@2.8.1) + vite-node: 3.2.4(@types/node@24.9.1)(jiti@2.6.1)(less@4.4.2)(sass@1.93.2)(terser@5.44.0)(yaml@2.8.1) why-is-node-running: 2.3.0 optionalDependencies: - '@types/node': 24.8.1 + '@types/node': 24.9.1 happy-dom: 17.6.3 transitivePeerDependencies: - jiti @@ -22054,7 +22069,7 @@ snapshots: vooks: 0.2.12(vue@3.5.22(typescript@5.9.3)) vue: 3.5.22(typescript@5.9.3) - vxe-pc-ui@4.10.2(vue@3.5.22(typescript@5.9.3)): + vxe-pc-ui@4.10.5(vue@3.5.22(typescript@5.9.3)): dependencies: '@vxe-ui/core': 4.2.12(vue@3.5.22(typescript@5.9.3)) transitivePeerDependencies: @@ -22062,7 +22077,7 @@ snapshots: vxe-table@4.17.0(vue@3.5.22(typescript@5.9.3)): dependencies: - vxe-pc-ui: 4.10.2(vue@3.5.22(typescript@5.9.3)) + vxe-pc-ui: 4.10.5(vue@3.5.22(typescript@5.9.3)) transitivePeerDependencies: - vue