+
@@ -209,7 +209,7 @@ if (enableShortcutKey.value) {
{{ text }}
@@ -218,7 +218,7 @@ if (enableShortcutKey.value) {
-
diff --git a/packages/effects/plugins/package.json b/packages/effects/plugins/package.json
index 3e508c115..9576011f7 100644
--- a/packages/effects/plugins/package.json
+++ b/packages/effects/plugins/package.json
@@ -28,6 +28,7 @@
}
},
"dependencies": {
+ "@vben-core/design": "workspace:*",
"@vben-core/form-ui": "workspace:*",
"@vben-core/shadcn-ui": "workspace:*",
"@vben-core/shared": "workspace:*",
diff --git a/packages/effects/plugins/src/echarts/echarts.ts b/packages/effects/plugins/src/echarts/echarts.ts
index 85323a429..d757e1458 100644
--- a/packages/effects/plugins/src/echarts/echarts.ts
+++ b/packages/effects/plugins/src/echarts/echarts.ts
@@ -25,7 +25,11 @@ import {
TransformComponent,
} from 'echarts/components';
import * as echarts from 'echarts/core';
-import { LabelLayout, UniversalTransition } from 'echarts/features';
+import {
+ LabelLayout,
+ LegacyGridContainLabel,
+ UniversalTransition,
+} from 'echarts/features';
import { CanvasRenderer } from 'echarts/renderers';
// 通过 ComposeOption 来组合出一个只有必须组件和图表的 Option 类型
@@ -50,6 +54,7 @@ echarts.use([
BarChart,
LineChart,
LabelLayout,
+ LegacyGridContainLabel,
UniversalTransition,
CanvasRenderer,
LegendComponent,
diff --git a/packages/effects/plugins/src/echarts/use-echarts.ts b/packages/effects/plugins/src/echarts/use-echarts.ts
index 4f1989ce8..f410378eb 100644
--- a/packages/effects/plugins/src/echarts/use-echarts.ts
+++ b/packages/effects/plugins/src/echarts/use-echarts.ts
@@ -37,7 +37,7 @@ type EchartsThemeType = 'dark' | 'light' | null;
function useEcharts(chartRef: Ref
) {
let chartInstance: echarts.ECharts | null = null;
let cacheOptions: EChartsOption = {};
- // echart是否处于激活状态
+ // echarts是否处于激活状态
const isActiveRef = ref(false);
const { isDark } = usePreferences();
diff --git a/packages/effects/plugins/src/vxe-table/api.ts b/packages/effects/plugins/src/vxe-table/api.ts
index 2b60d602e..ca896ae19 100644
--- a/packages/effects/plugins/src/vxe-table/api.ts
+++ b/packages/effects/plugins/src/vxe-table/api.ts
@@ -45,14 +45,13 @@ export class VxeGridApi = any> {
const defaultState = getDefaultState();
this.store = new Store(
mergeWithArrayOverride(storeState, defaultState),
- {
- onUpdate: () => {
- // this.prevState = this.state;
- this.state = this.store.state;
- },
- },
);
+ this.store.subscribe((state) => {
+ // this.prevState = this.state;
+ this.state = state;
+ });
+
this.state = this.store.state;
this.stateHandler = new StateHandler();
bindMethods(this);
diff --git a/packages/effects/plugins/src/vxe-table/style.css b/packages/effects/plugins/src/vxe-table/style.css
index 5b47fa2cf..1f378c261 100644
--- a/packages/effects/plugins/src/vxe-table/style.css
+++ b/packages/effects/plugins/src/vxe-table/style.css
@@ -1,3 +1,5 @@
+@reference "@vben-core/design/theme";
+
:root .vxe-grid {
--vxe-ui-font-color: hsl(var(--foreground));
--vxe-ui-font-primary-color: hsl(var(--primary));
diff --git a/packages/effects/plugins/src/vxe-table/use-vxe-grid.vue b/packages/effects/plugins/src/vxe-table/use-vxe-grid.vue
index ac71f06e3..eafe567fc 100644
--- a/packages/effects/plugins/src/vxe-table/use-vxe-grid.vue
+++ b/packages/effects/plugins/src/vxe-table/use-vxe-grid.vue
@@ -361,7 +361,7 @@ onUnmounted(() => {
-
+
-
+
{{ tableTitle }}
{{ tableTitleHelp }}
@@ -419,7 +417,7 @@ onUnmounted(() => {
v-show="showSearchForm !== false"
:class="
cn(
- 'relative rounded py-3',
+ 'relative rounded-sm py-3',
isCompactForm
? isSeparator
? 'pb-8'
@@ -461,7 +459,7 @@ onUnmounted(() => {
:style="{
...(separatorBg ? { backgroundColor: separatorBg } : undefined),
}"
- class="bg-background-deep z-100 absolute -left-2 bottom-1 h-2 w-[calc(100%+1rem)] overflow-hidden md:bottom-2 md:h-3"
+ class="absolute bottom-1 -left-2 z-100 h-2 w-[calc(100%+1rem)] overflow-hidden bg-background-deep md:bottom-2 md:h-3"
>
diff --git a/packages/effects/request/src/request-client/modules/sse.ts b/packages/effects/request/src/request-client/modules/sse.ts
index 09d13017e..aa2755cf1 100644
--- a/packages/effects/request/src/request-client/modules/sse.ts
+++ b/packages/effects/request/src/request-client/modules/sse.ts
@@ -98,11 +98,9 @@ class SSE {
if (!reader) {
throw new Error('No reader');
}
- let isEnd = false;
- while (!isEnd) {
+ while (true) {
const { done, value } = await reader.read();
if (done) {
- isEnd = true;
decoder.decode(new Uint8Array(0), { stream: false });
requestOptions?.onEnd?.();
reader.releaseLock?.();
diff --git a/packages/effects/request/src/request-client/preset-interceptors.ts b/packages/effects/request/src/request-client/preset-interceptors.ts
index 71ddc74bd..c7bec3711 100644
--- a/packages/effects/request/src/request-client/preset-interceptors.ts
+++ b/packages/effects/request/src/request-client/preset-interceptors.ts
@@ -130,7 +130,7 @@ export const errorMessageResponseInterceptor = (
return Promise.reject(error);
}
- let errorMessage = '';
+ let errorMessage: string;
const status = error?.response?.status;
switch (status) {
diff --git a/packages/icons/src/svg/load.ts b/packages/icons/src/svg/load.ts
index 59098bdbe..c42dd50d2 100644
--- a/packages/icons/src/svg/load.ts
+++ b/packages/icons/src/svg/load.ts
@@ -2,11 +2,7 @@ import type { IconifyIconStructure } from '@vben-core/icons';
import { addIcon } from '@vben-core/icons';
-let loaded = false;
-if (!loaded) {
- loadSvgIcons();
- loaded = true;
-}
+loadSvgIcons();
function parseSvg(svgData: string): IconifyIconStructure {
const parser = new DOMParser();
diff --git a/packages/styles/src/antd/index.css b/packages/styles/src/antd/index.css
index 4dec637ff..03b9e9ef8 100644
--- a/packages/styles/src/antd/index.css
+++ b/packages/styles/src/antd/index.css
@@ -34,7 +34,10 @@
.ant-message-notice-content,
.ant-notification-notice {
- @apply dark:border-border/60 dark:border;
+ &:is(.dark *) {
+ border-color: hsl(var(--border) / 60%);
+ border-width: 1px;
+ }
}
.form-valid-error {
diff --git a/packages/styles/src/antdv-next/index.css b/packages/styles/src/antdv-next/index.css
index 420dfe96e..fd6522183 100644
--- a/packages/styles/src/antdv-next/index.css
+++ b/packages/styles/src/antdv-next/index.css
@@ -36,7 +36,10 @@
.ant-message-notice-content,
.ant-notification-notice {
- @apply dark:border-border/60 dark:border;
+ &:is(.dark *) {
+ border-color: hsl(var(--border) / 60%);
+ border-width: 1px;
+ }
}
.form-valid-error {
diff --git a/playground/package.json b/playground/package.json
index a1c24886e..1f49cf930 100644
--- a/playground/package.json
+++ b/playground/package.json
@@ -30,6 +30,7 @@
},
"dependencies": {
"@tanstack/vue-query": "catalog:",
+ "@vben-core/design": "workspace:*",
"@vben-core/menu-ui": "workspace:*",
"@vben-core/shadcn-ui": "workspace:*",
"@vben/access": "workspace:*",
diff --git a/playground/postcss.config.mjs b/playground/postcss.config.mjs
deleted file mode 100644
index 3d8070455..000000000
--- a/playground/postcss.config.mjs
+++ /dev/null
@@ -1 +0,0 @@
-export { default } from '@vben/tailwind-config/postcss';
diff --git a/playground/src/adapter/vxe-table.ts b/playground/src/adapter/vxe-table.ts
index e53090a2f..d3d647e5f 100644
--- a/playground/src/adapter/vxe-table.ts
+++ b/playground/src/adapter/vxe-table.ts
@@ -135,7 +135,7 @@ setupVbenVxeTable({
vxeUI.renderer.add('CellOperation', {
renderTableDefault({ attrs, options, props }, { column, row }) {
const defaultProps = { size: 'small', type: 'link', ...props };
- let align = 'end';
+ let align: string;
switch (column.align) {
case 'center': {
align = 'center';
diff --git a/playground/src/store/auth.ts b/playground/src/store/auth.ts
index b50ee7729..a08386e53 100644
--- a/playground/src/store/auth.ts
+++ b/playground/src/store/auth.ts
@@ -107,8 +107,7 @@ export const useAuthStore = defineStore('auth', () => {
}
async function fetchUserInfo() {
- let userInfo: null | UserInfo = null;
- userInfo = await getUserInfoApi();
+ const userInfo = await getUserInfoApi();
userStore.setUserInfo(userInfo);
return userInfo;
}
diff --git a/playground/src/views/dashboard/analytics/index.vue b/playground/src/views/dashboard/analytics/index.vue
index 5e3d6d285..e794c99a9 100644
--- a/playground/src/views/dashboard/analytics/index.vue
+++ b/playground/src/views/dashboard/analytics/index.vue
@@ -76,10 +76,10 @@ const chartTabs: TabOption[] = [
-
+
-
+
diff --git a/playground/src/views/demos/features/full-screen/index.vue b/playground/src/views/demos/features/full-screen/index.vue
index 485b2e43b..a4b9c8ab7 100644
--- a/playground/src/views/demos/features/full-screen/index.vue
+++ b/playground/src/views/demos/features/full-screen/index.vue
@@ -37,7 +37,7 @@ const { isFullscreen: isDomFullscreen, toggle: toggleDom } =