From 39820c783cf4160e1ee7cff168bbaf8d4dce45ff Mon Sep 17 00:00:00 2001 From: zouawen <846027729@qq.com> Date: Thu, 11 Sep 2025 16:41:41 +0800 Subject: [PATCH 1/5] =?UTF-8?q?fix:=201=E3=80=81VbenTree=E6=96=B0=E5=A2=9E?= =?UTF-8?q?=E6=98=AF=E5=90=A6=E5=85=A8=E9=80=89=E3=80=81=E5=B1=95=E5=BC=80?= =?UTF-8?q?=E6=8A=98=E5=8F=A0=E5=8A=9F=E8=83=BD=EF=BC=9B=202=E3=80=81?= =?UTF-8?q?=E8=A7=A3=E5=86=B3=E5=BD=93=E7=82=B9=E5=87=BB=E5=AD=90=E8=8A=82?= =?UTF-8?q?=E7=82=B9label=E6=96=87=E5=AD=97=E5=8C=BA=E5=9F=9F=EF=BC=8C?= =?UTF-8?q?=E8=80=8C=E9=9D=9Echeckbox=E6=97=B6=EF=BC=8C=E5=85=B3=E8=81=94?= =?UTF-8?q?=E7=88=B6=E7=BB=84=E4=BB=B6=E4=B8=8D=E8=83=BD=E9=80=89=E4=B8=AD?= =?UTF-8?q?=E9=97=AE=E9=A2=98=EF=BC=9B=203=E3=80=81=E4=BC=98=E5=8C=96?= =?UTF-8?q?=E5=AD=90=E8=8A=82=E7=82=B9=E9=80=89=E4=B8=AD=E6=97=B6=E5=85=B3?= =?UTF-8?q?=E8=81=94=E7=88=B6=E8=8A=82=E7=82=B9=E9=80=89=E4=B8=AD=E5=8A=9F?= =?UTF-8?q?=E8=83=BD=EF=BC=9A=E5=88=A0=E9=99=A4VbenTree=E4=B8=ADprocessPar?= =?UTF-8?q?entSelection=E6=96=B9=E6=B3=95=EF=BC=8C=E6=94=B9=E4=B8=BA?= =?UTF-8?q?=E5=9C=A8onSelect=E4=B8=AD=E5=AE=9E=E7=8E=B0=EF=BC=8C=E5=8E=9F?= =?UTF-8?q?=E5=9B=A0=EF=BC=9AprocessParentSelection=E5=9C=A8=E6=AF=8F?= =?UTF-8?q?=E6=AC=A1=E6=A8=A1=E5=9E=8B=E5=80=BC=E6=9B=B4=E6=96=B0=E6=97=B6?= =?UTF-8?q?=E9=83=BD=E4=BC=9A=E8=A2=AB=E8=B0=83=E7=94=A8=EF=BC=8C=E4=B8=94?= =?UTF-8?q?=E8=AE=A1=E7=AE=97=E5=A4=8D=E6=9D=82=E5=BA=A6=E4=B8=BAO(n^2)?= =?UTF-8?q?=EF=BC=8ConSelect=E5=8F=AA=E5=9C=A8=E4=BA=A4=E4=BA=92=E6=97=B6?= =?UTF-8?q?=E8=A7=A6=E5=8F=91=EF=BC=8C=E5=A4=8D=E6=9D=82=E5=BA=A6=E4=B8=BA?= =?UTF-8?q?O(n)=EF=BC=9B=204=E3=80=81=E6=96=B0=E5=A2=9E=E4=B8=AD=E9=97=B4?= =?UTF-8?q?=E5=B1=82tree=E7=BB=84=E4=BB=B6=EF=BC=8C=E5=A4=84=E7=90=86?= =?UTF-8?q?=E6=97=A0=E6=95=B0=E6=8D=AE=E6=97=B6=E6=98=BE=E7=A4=BA=E5=9C=BA?= =?UTF-8?q?=E6=99=AF=EF=BC=88=E6=98=BE=E7=A4=BA=E5=9B=BE=E6=A0=87Inbox?= =?UTF-8?q?=E5=92=8C=E5=9B=BD=E9=99=85=E5=8C=96comom.noData=E6=96=87?= =?UTF-8?q?=E6=9C=AC=EF=BC=89=EF=BC=9B=205=E3=80=81=E4=B8=BA=E9=98=B2?= =?UTF-8?q?=E6=AD=A2=E7=88=B6=E7=BB=84=E4=BB=B6=E4=BC=A0=E5=80=BC=E5=AD=90?= =?UTF-8?q?=E7=BB=84=E4=BB=B6boolean=E7=B1=BB=E5=9E=8B=E9=BB=98=E8=AE=A4fa?= =?UTF-8?q?lse=E9=97=AE=E9=A2=98=EF=BC=8C=E6=96=B0=E5=A2=9EtreePropsDefaul?= =?UTF-8?q?ts=E6=96=B9=E6=B3=95=EF=BC=8C=E4=B8=BATreeProps=E8=B5=8B?= =?UTF-8?q?=E9=BB=98=E8=AE=A4=E5=80=BC=EF=BC=8CTree=E7=BB=84=E4=BB=B6?= =?UTF-8?q?=E5=92=8CVbenTree=E7=BB=84=E4=BB=B6=E7=BB=9F=E4=B8=80=E4=BD=BF?= =?UTF-8?q?=E7=94=A8=EF=BC=9B=206=E3=80=81=E4=BC=98=E5=8C=96VbenTree?= =?UTF-8?q?=E7=BB=84=E4=BB=B6=E6=95=B4=E4=BD=93=E6=A0=B7=E5=BC=8F=EF=BC=88?= =?UTF-8?q?=E4=BC=98=E5=8C=96padding=E3=80=81margin=E3=80=81gap=E5=80=BC?= =?UTF-8?q?=EF=BC=8C=E4=BC=98=E5=8C=96type=E4=B8=BAbutton=E6=97=B6outline?= =?UTF-8?q?=E5=B7=A6=E5=8F=B3=E7=A9=BA=E7=99=BD=E5=8C=BA=E5=9F=9F=E4=B8=8D?= =?UTF-8?q?=E5=AF=B9=E7=A7=B0=E9=97=AE=E9=A2=98=EF=BC=89=EF=BC=8C=E4=BC=98?= =?UTF-8?q?=E5=8C=96=E5=86=85=E9=83=A8header=E3=80=81footer=E6=8F=92?= =?UTF-8?q?=E6=A7=BD=E6=A0=B7=E5=BC=8F=E3=80=82?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- packages/@core/base/icons/src/lucide.ts | 1 + .../ui-kit/shadcn-ui/src/ui/tree/index.ts | 2 + .../ui-kit/shadcn-ui/src/ui/tree/tree.vue | 249 ++++++++++-------- .../ui-kit/shadcn-ui/src/ui/tree/types.ts | 21 ++ .../effects/common-ui/src/components/index.ts | 2 +- .../common-ui/src/components/tree/index.ts | 1 + .../common-ui/src/components/tree/tree.vue | 25 ++ .../src/views/system/role/modules/form.vue | 9 +- 8 files changed, 198 insertions(+), 112 deletions(-) create mode 100644 packages/effects/common-ui/src/components/tree/index.ts create mode 100644 packages/effects/common-ui/src/components/tree/tree.vue diff --git a/packages/@core/base/icons/src/lucide.ts b/packages/@core/base/icons/src/lucide.ts index 70e6a426..a167aea0 100644 --- a/packages/@core/base/icons/src/lucide.ts +++ b/packages/@core/base/icons/src/lucide.ts @@ -32,6 +32,7 @@ export { Grip, GripVertical, Menu as IconDefault, + Inbox, Info, InspectionPanel, Languages, diff --git a/packages/@core/ui-kit/shadcn-ui/src/ui/tree/index.ts b/packages/@core/ui-kit/shadcn-ui/src/ui/tree/index.ts index 1abd4c50..45162b8a 100644 --- a/packages/@core/ui-kit/shadcn-ui/src/ui/tree/index.ts +++ b/packages/@core/ui-kit/shadcn-ui/src/ui/tree/index.ts @@ -1,2 +1,4 @@ export { default as VbenTree } from './tree.vue'; +export type { TreeProps } from './types'; +export { treePropsDefaults } from './types'; export type { FlattenedItem } from 'radix-vue'; diff --git a/packages/@core/ui-kit/shadcn-ui/src/ui/tree/tree.vue b/packages/@core/ui-kit/shadcn-ui/src/ui/tree/tree.vue index 3e497c51..5f50d2df 100644 --- a/packages/@core/ui-kit/shadcn-ui/src/ui/tree/tree.vue +++ b/packages/@core/ui-kit/shadcn-ui/src/ui/tree/tree.vue @@ -14,25 +14,9 @@ import { cn, get } from '@vben-core/shared/utils'; import { TreeItem, TreeRoot } from 'radix-vue'; import { Checkbox } from '../checkbox'; +import { treePropsDefaults } from './types'; -const props = withDefaults(defineProps(), { - allowClear: false, - autoCheckParent: true, - bordered: false, - checkStrictly: false, - defaultExpandedKeys: () => [], - defaultExpandedLevel: 0, - disabled: false, - disabledField: 'disabled', - expanded: () => [], - iconField: 'icon', - labelField: 'label', - multiple: false, - showIcon: true, - transition: true, - valueField: 'value', - childrenField: 'children', -}); +const props = withDefaults(defineProps(), treePropsDefaults()); const emits = defineEmits<{ expand: [value: FlattenedItem>]; @@ -41,7 +25,9 @@ const emits = defineEmits<{ interface InnerFlattenItem, P = number | string> { hasChildren: boolean; + id: P; level: number; + parentId: null | P; parents: P[]; value: T; } @@ -50,24 +36,25 @@ function flatten, P = number | string>( items: T[], childrenField: string = 'children', level = 0, + parentId: null | P = null, parents: P[] = [], ): InnerFlattenItem[] { const result: InnerFlattenItem[] = []; items.forEach((item) => { const children = get(item, childrenField) as Array; - const val = { + const id = get(item, props.valueField) as P; + const val: InnerFlattenItem = { hasChildren: Array.isArray(children) && children.length > 0, + id, level, + parentId, parents: [...parents], value: item, }; result.push(val); if (val.hasChildren) result.push( - ...flatten(children, childrenField, level + 1, [ - ...parents, - get(item, props.valueField), - ]), + ...flatten(children, childrenField, level + 1, id, [...parents, id]), ); }); return result; @@ -103,15 +90,10 @@ function updateTreeValue() { treeValue.value = undefined; } else { if (Array.isArray(val)) { - let filteredValues = val.filter((v) => { + const filteredValues = val.filter((v) => { const item = getItemByValue(v); return item && !get(item, props.disabledField); }); - - if (!props.checkStrictly && props.autoCheckParent) { - filteredValues = processParentSelection(filteredValues); - } - treeValue.value = filteredValues.map((v) => getItemByValue(v)); if (filteredValues.length !== val.length) { @@ -128,35 +110,7 @@ function updateTreeValue() { } } } -function processParentSelection( - selectedValues: Array, -): Array { - if (props.checkStrictly) return selectedValues; - const result = [...selectedValues]; - - for (let i = result.length - 1; i >= 0; i--) { - const currentValue = result[i]; - if (currentValue === undefined) continue; - const currentItem = getItemByValue(currentValue); - - if (!currentItem) continue; - - const children = get(currentItem, props.childrenField); - if (Array.isArray(children) && children.length > 0) { - const hasSelectedChildren = children.some((child) => { - const childValue = get(child, props.valueField); - return result.includes(childValue); - }); - - if (!hasSelectedChildren) { - result.splice(i, 1); - } - } - } - - return result; -} function updateModelValue(val: Arrayable>) { if (Array.isArray(val)) { const filteredVal = val.filter((v) => !get(v, props.disabledField)); @@ -204,6 +158,22 @@ function collapseAll() { expanded.value = []; } +function checkAll() { + if (props.multiple) { + modelValue.value = flattenData.value.map((item) => + get(item.value, props.valueField), + ); + updateTreeValue(); + } +} + +function unCheckAll() { + if (props.multiple) { + modelValue.value = []; + updateTreeValue(); + } +} + function isNodeDisabled(item: FlattenedItem>) { return props.disabled || get(item.value, props.disabledField); } @@ -229,8 +199,45 @@ function onSelect(item: FlattenedItem>, isSelected: boolean) { ); }) ?.parents?.forEach((p) => { - if (Array.isArray(modelValue.value) && !modelValue.value.includes(p)) { - modelValue.value.push(p); + if (Array.isArray(modelValue.value) && !modelValue.value.includes(p)) { + modelValue.value.push(p); + } + }); + } + if ( + !props.checkStrictly && + props.multiple && + props.autoCheckParent && + !isSelected + ) { + flattenData.value + .find((i) => { + return ( + get(i.value, props.valueField) === get(item.value, props.valueField) + ); + }) + ?.parents?.reverse() + .forEach((p) => { + const children = flattenData.value.filter((i) => { + return ( + i.parents.length > 0 && + i.parents.includes(p) && + i.id !== item._id && + i.parentId === p + ); + }); + if (Array.isArray(modelValue.value)) { + const hasSelectedChild = children.some((child) => + (modelValue.value as unknown[]).includes( + get(child.value, props.valueField), + ), + ); + if (!hasSelectedChild) { + const index = modelValue.value.indexOf(p); + if (index !== -1) { + modelValue.value.splice(index, 1); + } + } } }); } @@ -243,6 +250,8 @@ defineExpose({ collapseNodes, expandAll, expandNodes, + checkAll, + unCheckAll, expandToLevel, getItemByValue, }); @@ -263,15 +272,41 @@ defineExpose({ v-slot="{ flattenItems }" :class=" cn( - 'text-blackA11 container select-none list-none rounded-lg p-2 text-sm font-medium', + 'text-blackA11 container select-none list-none rounded-lg text-sm font-medium', $attrs.class as unknown as ClassType, bordered ? 'border' : '', ) " > -
+
+
+
+ + +
+
-
- -
-
+
+ -
+
- - - {{ get(item.value, labelField) }} - + " + > + + + {{ get(item.value, labelField) }} + +
+
-
+
diff --git a/packages/@core/ui-kit/shadcn-ui/src/ui/tree/types.ts b/packages/@core/ui-kit/shadcn-ui/src/ui/tree/types.ts index 97b09139..72dc19c4 100644 --- a/packages/@core/ui-kit/shadcn-ui/src/ui/tree/types.ts +++ b/packages/@core/ui-kit/shadcn-ui/src/ui/tree/types.ts @@ -40,3 +40,24 @@ export interface TreeProps { /** 值字段 */ valueField?: string; } + +export function treePropsDefaults() { + return { + allowClear: false, + autoCheckParent: true, + bordered: false, + checkStrictly: false, + defaultExpandedKeys: () => [], + defaultExpandedLevel: 0, + disabled: false, + disabledField: 'disabled', + expanded: () => [], + iconField: 'icon', + labelField: 'label', + multiple: false, + showIcon: true, + transition: true, + valueField: 'value', + childrenField: 'children', + }; +} diff --git a/packages/effects/common-ui/src/components/index.ts b/packages/effects/common-ui/src/components/index.ts index 543fcf3c..5914d44c 100644 --- a/packages/effects/common-ui/src/components/index.ts +++ b/packages/effects/common-ui/src/components/index.ts @@ -9,6 +9,7 @@ export * from './loading'; export * from './page'; export * from './resize'; export * from './tippy'; +export * from './tree'; export * from '@vben-core/form-ui'; export * from '@vben-core/popup-ui'; @@ -27,7 +28,6 @@ export { VbenPinInput, VbenSelect, VbenSpinner, - VbenTree, } from '@vben-core/shadcn-ui'; export type { FlattenedItem } from '@vben-core/shadcn-ui'; diff --git a/packages/effects/common-ui/src/components/tree/index.ts b/packages/effects/common-ui/src/components/tree/index.ts new file mode 100644 index 00000000..ce3bc5c6 --- /dev/null +++ b/packages/effects/common-ui/src/components/tree/index.ts @@ -0,0 +1 @@ +export { default as Tree } from './tree.vue'; diff --git a/packages/effects/common-ui/src/components/tree/tree.vue b/packages/effects/common-ui/src/components/tree/tree.vue new file mode 100644 index 00000000..1f2fcc17 --- /dev/null +++ b/packages/effects/common-ui/src/components/tree/tree.vue @@ -0,0 +1,25 @@ + + + diff --git a/playground/src/views/system/role/modules/form.vue b/playground/src/views/system/role/modules/form.vue index e3c1d02d..511fb04b 100644 --- a/playground/src/views/system/role/modules/form.vue +++ b/playground/src/views/system/role/modules/form.vue @@ -7,7 +7,7 @@ import type { SystemRoleApi } from '#/api/system/role'; import { computed, nextTick, ref } from 'vue'; -import { useVbenDrawer, VbenTree } from '@vben/common-ui'; +import { Tree, useVbenDrawer } from '@vben/common-ui'; import { IconifyIcon } from '@vben/icons'; import { Spin } from 'ant-design-vue'; @@ -92,9 +92,6 @@ function getNodeClass(node: Recordable) { const classes: string[] = []; if (node.value?.type === 'button') { classes.push('inline-flex'); - if (node.index % 3 >= 1) { - classes.push('!pl-0'); - } } return classes.join(' '); @@ -105,7 +102,7 @@ function getNodeClass(node: Recordable) {
- +
From dfa2ac34352519bf3a7f0278daba4a7585df3513 Mon Sep 17 00:00:00 2001 From: zouawen <846027729@qq.com> Date: Thu, 11 Sep 2025 18:16:05 +0800 Subject: [PATCH 2/5] =?UTF-8?q?fix:=20=E5=85=A8=E9=80=89=E6=97=B6=E8=BF=87?= =?UTF-8?q?=E6=BB=A4disabled=E7=9A=84=E8=8A=82=E7=82=B9?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../ui-kit/shadcn-ui/src/ui/tree/tree.vue | 22 ++++++++++--------- .../ui-kit/shadcn-ui/src/ui/tree/types.ts | 1 - 2 files changed, 12 insertions(+), 11 deletions(-) diff --git a/packages/@core/ui-kit/shadcn-ui/src/ui/tree/tree.vue b/packages/@core/ui-kit/shadcn-ui/src/ui/tree/tree.vue index 5f50d2df..c50a79d2 100644 --- a/packages/@core/ui-kit/shadcn-ui/src/ui/tree/tree.vue +++ b/packages/@core/ui-kit/shadcn-ui/src/ui/tree/tree.vue @@ -159,19 +159,21 @@ function collapseAll() { } function checkAll() { - if (props.multiple) { - modelValue.value = flattenData.value.map((item) => - get(item.value, props.valueField), - ); - updateTreeValue(); - } + if (!props.multiple) return; + modelValue.value = [ + ...new Set( + flattenData.value + .filter((item) => !get(item.value, props.disabledField)) + .map((item) => get(item.value, props.valueField)), + ), + ]; + updateTreeValue(); } function unCheckAll() { - if (props.multiple) { - modelValue.value = []; - updateTreeValue(); - } + if (!props.multiple) return; + modelValue.value = []; + updateTreeValue(); } function isNodeDisabled(item: FlattenedItem>) { diff --git a/packages/@core/ui-kit/shadcn-ui/src/ui/tree/types.ts b/packages/@core/ui-kit/shadcn-ui/src/ui/tree/types.ts index 72dc19c4..bf2d6ece 100644 --- a/packages/@core/ui-kit/shadcn-ui/src/ui/tree/types.ts +++ b/packages/@core/ui-kit/shadcn-ui/src/ui/tree/types.ts @@ -51,7 +51,6 @@ export function treePropsDefaults() { defaultExpandedLevel: 0, disabled: false, disabledField: 'disabled', - expanded: () => [], iconField: 'icon', labelField: 'label', multiple: false, From a4b8f8f795f788b1ea23f2752d098a690dc7a344 Mon Sep 17 00:00:00 2001 From: zouawen <846027729@qq.com> Date: Fri, 12 Sep 2025 17:31:41 +0800 Subject: [PATCH 3/5] =?UTF-8?q?fix:=20=E8=8A=82=E7=82=B9=E9=80=89=E4=B8=AD?= =?UTF-8?q?=E6=97=B6=E8=BF=87=E6=BB=A4=E7=88=B6=E8=8A=82=E7=82=B9=E7=A6=81?= =?UTF-8?q?=E7=94=A8=E7=8A=B6=E6=80=81?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- .../@core/ui-kit/shadcn-ui/src/ui/tree/tree.vue | 16 +++++++++------- 1 file changed, 9 insertions(+), 7 deletions(-) diff --git a/packages/@core/ui-kit/shadcn-ui/src/ui/tree/tree.vue b/packages/@core/ui-kit/shadcn-ui/src/ui/tree/tree.vue index c50a79d2..45992327 100644 --- a/packages/@core/ui-kit/shadcn-ui/src/ui/tree/tree.vue +++ b/packages/@core/ui-kit/shadcn-ui/src/ui/tree/tree.vue @@ -200,11 +200,12 @@ function onSelect(item: FlattenedItem>, isSelected: boolean) { get(i.value, props.valueField) === get(item.value, props.valueField) ); }) - ?.parents?.forEach((p) => { - if (Array.isArray(modelValue.value) && !modelValue.value.includes(p)) { - modelValue.value.push(p); - } - }); + ?.parents?.filter((item) => !get(item, props.disabledField)) + ?.forEach((p) => { + if (Array.isArray(modelValue.value) && !modelValue.value.includes(p)) { + modelValue.value.push(p); + } + }); } if ( !props.checkStrictly && @@ -218,7 +219,8 @@ function onSelect(item: FlattenedItem>, isSelected: boolean) { get(i.value, props.valueField) === get(item.value, props.valueField) ); }) - ?.parents?.reverse() + ?.parents?.filter((item) => !get(item, props.disabledField)) + ?.reverse() .forEach((p) => { const children = flattenData.value.filter((i) => { return ( @@ -324,7 +326,7 @@ defineExpose({ :class=" cn('cursor-pointer', getNodeClass?.(item), { 'data-[selected]:bg-accent': !multiple, - 'cursor-not-allowed': isNodeDisabled(item), + 'text-foreground/50 cursor-not-allowed': isNodeDisabled(item), }) " v-bind=" From 4de8220ce651f86e1a61c9125522f34a9d4e477f Mon Sep 17 00:00:00 2001 From: Jin Mao Date: Wed, 17 Sep 2025 17:28:39 +0800 Subject: [PATCH 4/5] =?UTF-8?q?feat(common-ui):=20=E6=B7=BB=E5=8A=A0=20Tre?= =?UTF-8?q?e=20=E7=BB=84=E4=BB=B6?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit - 在 common-ui 包中新增 Tree 组件 - 实现了基本的树形结构展示功能 - 集成了 VbenTree 组件和自定义样式- 添加了空数据时的占位展示 --- .../common-ui/src/components/tree/index.ts | 1 + .../common-ui/src/components/tree/tree.vue | 25 +++++++++++++++++++ 2 files changed, 26 insertions(+) create mode 100644 packages/effects/common-ui/src/components/tree/index.ts create mode 100644 packages/effects/common-ui/src/components/tree/tree.vue diff --git a/packages/effects/common-ui/src/components/tree/index.ts b/packages/effects/common-ui/src/components/tree/index.ts new file mode 100644 index 00000000..ce3bc5c6 --- /dev/null +++ b/packages/effects/common-ui/src/components/tree/index.ts @@ -0,0 +1 @@ +export { default as Tree } from './tree.vue'; diff --git a/packages/effects/common-ui/src/components/tree/tree.vue b/packages/effects/common-ui/src/components/tree/tree.vue new file mode 100644 index 00000000..1f2fcc17 --- /dev/null +++ b/packages/effects/common-ui/src/components/tree/tree.vue @@ -0,0 +1,25 @@ + + + From 482ce981ce0fcc97dd11e9e62df9a4dbcdb17dc3 Mon Sep 17 00:00:00 2001 From: ming4762 Date: Wed, 17 Sep 2025 17:42:39 +0800 Subject: [PATCH 5/5] =?UTF-8?q?chore:=20update=20deps=20vxe,=20vxe-table:?= =?UTF-8?q?=204.14.4=20->=204.16.11=20=20vxe-pc-ui:=204.7.=E2=80=A6=20(#67?= =?UTF-8?q?52)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * chore: update deps vxe, vxe-table: 4.14.4 -> 4.16.11 vxe-pc-ui: 4.7.12 -> 4.9.29 * fix: resolve the ESLint warning generated by #6317 --- .../src/ui/authentication/code-login.vue | 7 ++- .../src/ui/authentication/qrcode-login.vue | 7 ++- pnpm-lock.yaml | 43 ++++++++++--------- pnpm-workspace.yaml | 4 +- 4 files changed, 36 insertions(+), 25 deletions(-) diff --git a/packages/effects/common-ui/src/ui/authentication/code-login.vue b/packages/effects/common-ui/src/ui/authentication/code-login.vue index 8045ea89..d7563d8f 100644 --- a/packages/effects/common-ui/src/ui/authentication/code-login.vue +++ b/packages/effects/common-ui/src/ui/authentication/code-login.vue @@ -115,7 +115,12 @@ defineExpose({ {{ submitButtonText || $t('common.login') }} - + {{ $t('common.back') }}
diff --git a/packages/effects/common-ui/src/ui/authentication/qrcode-login.vue b/packages/effects/common-ui/src/ui/authentication/qrcode-login.vue index 493f98a7..c8f235c2 100644 --- a/packages/effects/common-ui/src/ui/authentication/qrcode-login.vue +++ b/packages/effects/common-ui/src/ui/authentication/qrcode-login.vue @@ -93,7 +93,12 @@ function goToLogin() {

- + {{ $t('common.back') }} diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 3633c0a6..82bf03bf 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -508,11 +508,11 @@ catalogs: specifier: 2.2.10 version: 2.2.10 vxe-pc-ui: - specifier: ^4.7.12 - version: 4.7.16 + specifier: ^4.9.29 + version: 4.9.29 vxe-table: - specifier: ^4.14.4 - version: 4.14.4 + specifier: ^4.16.11 + version: 4.16.11 watermark-js-plus: specifier: ^1.6.2 version: 1.6.2 @@ -1713,10 +1713,10 @@ importers: version: 3.5.17(typescript@5.8.3) vxe-pc-ui: specifier: 'catalog:' - version: 4.7.16(vue@3.5.17(typescript@5.8.3)) + version: 4.9.29(vue@3.5.17(typescript@5.8.3)) vxe-table: specifier: 'catalog:' - version: 4.14.4(vue@3.5.17(typescript@5.8.3)) + version: 4.16.11(vue@3.5.17(typescript@5.8.3)) packages/effects/request: dependencies: @@ -5444,8 +5444,8 @@ packages: '@vueuse/shared@9.13.0': resolution: {integrity: sha512-UrnhU+Cnufu4S6JLCPZnkWh0WwZGUp72ktOF2DFptMlOs3TOdVv8xJN53zhHGARmVOsz5KqOls09+J1NR6sBKw==} - '@vxe-ui/core@4.2.5': - resolution: {integrity: sha512-K/0ae1VoCaVHZTnV3rUFsQdkwCU6dKjbFVtf0bvVRCYG5v+KrKbvFBSkqdnGT7sDoeotPVjL/WjBbl64RpHs3w==} + '@vxe-ui/core@4.2.12': + resolution: {integrity: sha512-g6gNDykKrKLzxsDDFDYTD/6tWrV9AfSaU7WIlKCO67BSXgKDMaEVTsH7ZZ7fI5qkOO9DH1vo07kbacyBNx7gSQ==} peerDependencies: vue: ^3.5.17 @@ -10374,6 +10374,7 @@ packages: source-map@0.8.0-beta.0: resolution: {integrity: sha512-2ymg6oRBpebeZi9UUNsgQ89bhx01TcTkmNTGnNO88imTmbSgy4nfujrgVEFKWpMTEGA11EDkTt7mqObTPdigIA==} engines: {node: '>= 8'} + deprecated: The work that was done in this beta branch won't be included in future versions sourcemap-codec@1.4.8: resolution: {integrity: sha512-9NykojV5Uih4lgo5So5dtw+f0JgJX30KCNI8gwhz2J9A15wD0Ml6tjHKwf6fTSa6fAdVBdZeNOs9eJ71qCk8vA==} @@ -11451,11 +11452,11 @@ packages: peerDependencies: vue: ^3.5.17 - vxe-pc-ui@4.7.16: - resolution: {integrity: sha512-t+E+x25FvRIax9HQJygO2wQA+2lxmNCkW4RY3m01c+bem4rs1FqM7UmxtUMBMM8OVH15mD42qwU4BtX7Ylf+EA==} + vxe-pc-ui@4.9.29: + resolution: {integrity: sha512-eyvfeLiAzCYv6NEI3lP9zfzFLU3cBDBaKjAu4ExK+Llb980bYODmPd1iZmhI/5i/GK9Pwhz6rVv3fA+WHw0gpQ==} - vxe-table@4.14.4: - resolution: {integrity: sha512-h4KDw8DHZz037kNULSJD2lEiNifAtHNw5XvXSH0Ropk60WK5My1zj9Kb2rX+uU1oGfh75dmv71JzR6V2iWoSUw==} + vxe-table@4.16.11: + resolution: {integrity: sha512-TGDQTBD02m6Hfg5sczhPmZD1QE5F0N1enOfBBXiBYLvj1BFDkzZrXwX7rJraLc++uL2EDE0HkxjQUvjkGUXPoA==} warning@4.0.3: resolution: {integrity: sha512-rpJyN222KWIvHJ/F53XSZv0Zl/accqHR8et1kpaMTD/fLCRxtV8iX8czMzY7sVZupTI3zcUTg8eycS2kNF9l6w==} @@ -11633,8 +11634,8 @@ packages: xe-utils@3.7.4: resolution: {integrity: sha512-9yuCHLOU+og4OEkPWWtzrYk1Zt1hgN66U/NCJ0+vYJSx1MplBtoQRz8aEA+2RmCr3leLru98vQxNpw/vJsu/sg==} - xe-utils@3.7.8: - resolution: {integrity: sha512-V/k6B/ASYir6yLYhp62DnM17po9u1N9mou/rn4if5WoFCsAO49JpCiVpkDpwCv4zxGfWmhWgzmz4FytWF+pDVw==} + xe-utils@3.7.9: + resolution: {integrity: sha512-LWH6M7g+TKX8P2fqGxDPgJQygiULhbMtpmfxTMxJTUjuUv9y2+I45UCcVLh5AnmJSxDV1xTxsq7G5P9Eid06JQ==} xml-name-validator@4.0.0: resolution: {integrity: sha512-ICP2e+jsHvAj2E2lIHxa5tjXRlKDJo4IdvPvCXbXQGdzSfmSpNVyIKMvoZHjDY9DP0zV17iI85o90vRFXNccRw==} @@ -15776,11 +15777,11 @@ snapshots: - '@vue/composition-api' - vue - '@vxe-ui/core@4.2.5(vue@3.5.17(typescript@5.8.3))': + '@vxe-ui/core@4.2.12(vue@3.5.17(typescript@5.8.3))': dependencies: dom-zindex: 1.0.6 vue: 3.5.17(typescript@5.8.3) - xe-utils: 3.7.8 + xe-utils: 3.7.9 '@whatwg-node/disposablestack@0.0.6': dependencies: @@ -22439,15 +22440,15 @@ snapshots: vooks: 0.2.12(vue@3.5.17(typescript@5.8.3)) vue: 3.5.17(typescript@5.8.3) - vxe-pc-ui@4.7.16(vue@3.5.17(typescript@5.8.3)): + vxe-pc-ui@4.9.29(vue@3.5.17(typescript@5.8.3)): dependencies: - '@vxe-ui/core': 4.2.5(vue@3.5.17(typescript@5.8.3)) + '@vxe-ui/core': 4.2.12(vue@3.5.17(typescript@5.8.3)) transitivePeerDependencies: - vue - vxe-table@4.14.4(vue@3.5.17(typescript@5.8.3)): + vxe-table@4.16.11(vue@3.5.17(typescript@5.8.3)): dependencies: - vxe-pc-ui: 4.7.16(vue@3.5.17(typescript@5.8.3)) + vxe-pc-ui: 4.9.29(vue@3.5.17(typescript@5.8.3)) transitivePeerDependencies: - vue @@ -22723,7 +22724,7 @@ snapshots: xe-utils@3.7.4: {} - xe-utils@3.7.8: {} + xe-utils@3.7.9: {} xml-name-validator@4.0.0: {} diff --git a/pnpm-workspace.yaml b/pnpm-workspace.yaml index b87283b6..9751fb61 100644 --- a/pnpm-workspace.yaml +++ b/pnpm-workspace.yaml @@ -187,8 +187,8 @@ catalog: vue-router: ^4.5.1 vue-tippy: ^6.7.1 vue-tsc: 2.2.10 - vxe-pc-ui: ^4.7.12 - vxe-table: ^4.14.4 + vxe-pc-ui: ^4.9.29 + vxe-table: ^4.16.11 watermark-js-plus: ^1.6.2 zod: ^3.25.67 zod-defaults: ^0.1.3