diff --git a/frontend/package.json b/frontend/package.json
index ff920348c2..82cb0ff126 100644
--- a/frontend/package.json
+++ b/frontend/package.json
@@ -37,7 +37,7 @@
"dependencies": {
"@7polo/kity": "2.0.8",
"@7polo/kityminder-core": "1.4.53",
- "@arco-design/web-vue": "^2.49.2",
+ "@arco-design/web-vue": "^2.51.0",
"@arco-themes/vue-ms-theme-default": "^0.0.28",
"@form-create/arco-design": "^3.1.22",
"@types/color": "^3.0.3",
diff --git a/frontend/src/App.vue b/frontend/src/App.vue
index cf038a28f2..c237fd0ef2 100644
--- a/frontend/src/App.vue
+++ b/frontend/src/App.vue
@@ -1,25 +1,29 @@
-
+
+
+
+
+
+
diff --git a/frontend/src/components/business/ms-tree/types.ts b/frontend/src/components/business/ms-tree/types.ts
new file mode 100644
index 0000000000..8175d5a600
--- /dev/null
+++ b/frontend/src/components/business/ms-tree/types.ts
@@ -0,0 +1,28 @@
+import type { TreeNodeData, TreeFieldNames } from '@arco-design/web-vue';
+
+export interface MsTreeFieldNames extends TreeFieldNames {
+ key: string;
+ title: string;
+ children: string;
+ isLeaf: string;
+}
+
+export type MsTreeNodeData = {
+ [key: string]: any;
+} & TreeNodeData;
+
+export interface MsTreeNodeStatus {
+ loading: boolean;
+ checked: boolean;
+ selected: boolean;
+ indeterminate: boolean;
+ expanded: boolean;
+ isLeaf: boolean;
+}
+
+export interface MsTreeSelectedData {
+ selected?: boolean;
+ selectedNodes: MsTreeNodeData[];
+ node?: MsTreeNodeData;
+ e?: Event;
+}
diff --git a/frontend/src/components/business/ms-user-selector/index.vue b/frontend/src/components/business/ms-user-selector/index.vue
index 3fa363a56e..0febb3fab2 100644
--- a/frontend/src/components/business/ms-user-selector/index.vue
+++ b/frontend/src/components/business/ms-user-selector/index.vue
@@ -68,7 +68,9 @@
return currentOptions.value.filter((item) => props.value.includes(item.id)) || [];
});
- const change = (value: string | number | Record | (string | number | Record)[]) => {
+ const change = (
+ value: string | number | boolean | Record | (string | number | boolean | Record)[]
+ ) => {
const tmpArr = Array.isArray(value) ? value : [value];
const { valueKey } = props;
emit(
diff --git a/frontend/src/components/pure/minder-editor/menu/view/fontOperation.vue b/frontend/src/components/pure/minder-editor/menu/view/fontOperation.vue
index 36c24271b5..68f24a46ec 100644
--- a/frontend/src/components/pure/minder-editor/menu/view/fontOperation.vue
+++ b/frontend/src/components/pure/minder-editor/menu/view/fontOperation.vue
@@ -225,7 +225,7 @@
});
function execCommandFontFamily(
- value: string | number | Record | (string | number | Record)[]
+ value: string | number | boolean | Record | (string | number | boolean | Record)[]
) {
if (value === t('minder.menu.font.font')) {
return;
@@ -234,7 +234,7 @@
}
function execCommandFontSize(
- value: string | number | Record | (string | number | Record)[]
+ value: string | number | boolean | Record | (string | number | boolean | Record)[]
) {
if (typeof value !== 'number') {
return;
diff --git a/frontend/src/components/pure/ms-empty/index.vue b/frontend/src/components/pure/ms-empty/index.vue
new file mode 100644
index 0000000000..1fcbbf50de
--- /dev/null
+++ b/frontend/src/components/pure/ms-empty/index.vue
@@ -0,0 +1,24 @@
+
+
+
+
+
+
+
+
+
+
+
diff --git a/frontend/src/components/pure/ms-pagination/page-options.vue b/frontend/src/components/pure/ms-pagination/page-options.vue
index a91d080eff..840d7ca932 100644
--- a/frontend/src/components/pure/ms-pagination/page-options.vue
+++ b/frontend/src/components/pure/ms-pagination/page-options.vue
@@ -38,7 +38,9 @@
const props = defineProps();
- const handleChange = (value: string | number | Record | (string | number | Record)[]) => {
+ const handleChange = (
+ value: string | number | boolean | Record | (string | number | boolean | Record)[]
+ ) => {
emit('change', value as number);
};
diff --git a/frontend/src/components/pure/ms-split-box/index.vue b/frontend/src/components/pure/ms-split-box/index.vue
new file mode 100644
index 0000000000..3fd4143682
--- /dev/null
+++ b/frontend/src/components/pure/ms-split-box/index.vue
@@ -0,0 +1,120 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
diff --git a/frontend/src/components/pure/ms-table-more-action/index.vue b/frontend/src/components/pure/ms-table-more-action/index.vue
index b5efe67730..f2a180ee84 100644
--- a/frontend/src/components/pure/ms-table-more-action/index.vue
+++ b/frontend/src/components/pure/ms-table-more-action/index.vue
@@ -1,8 +1,8 @@
-
-
-
-
+
+
+
+
@@ -21,14 +21,21 @@
const { t } = useI18n();
const props = defineProps<{
list: ActionsItem[];
+ trigger?: 'click' | 'hover' | 'focus' | 'contextMenu' | ('click' | 'hover' | 'focus' | 'contextMenu')[] | undefined;
}>();
- const emit = defineEmits(['select']);
+ const emit = defineEmits(['select', 'close']);
function selectHandler(value: SelectedValue) {
const item = props.list.find((e: ActionsItem) => t(e.label || '') === value);
emit('select', item);
}
+
+ function visibleChange(val: boolean) {
+ if (!val) {
+ emit('close');
+ }
+ }