diff --git a/.github/actions/setup-node/action.yml b/.github/actions/setup-node/action.yml index 35fa41c8..d208b000 100644 --- a/.github/actions/setup-node/action.yml +++ b/.github/actions/setup-node/action.yml @@ -9,7 +9,7 @@ runs: uses: pnpm/action-setup@v4 - name: Install Node.js - uses: actions/setup-node@v4 + uses: actions/setup-node@v6 with: node-version-file: .node-version cache: 'pnpm' diff --git a/.github/workflows/build.yml b/.github/workflows/build.yml index d9f48e4a..f60b0477 100644 --- a/.github/workflows/build.yml +++ b/.github/workflows/build.yml @@ -30,7 +30,7 @@ jobs: - windows-latest steps: - name: Checkout code - uses: actions/checkout@v4 + uses: actions/checkout@v6 with: fetch-depth: 0 diff --git a/.github/workflows/changeset-version.yml b/.github/workflows/changeset-version.yml index 373d9af2..cdccceb5 100644 --- a/.github/workflows/changeset-version.yml +++ b/.github/workflows/changeset-version.yml @@ -25,7 +25,7 @@ jobs: steps: - name: Checkout code - uses: actions/checkout@v4 + uses: actions/checkout@v6 with: fetch-depth: 0 diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 00750949..339e5fd8 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -28,7 +28,7 @@ jobs: timeout-minutes: 20 steps: - name: Checkout code - uses: actions/checkout@v4 + uses: actions/checkout@v6 with: fetch-depth: 0 @@ -67,7 +67,7 @@ jobs: steps: - name: Checkout code - uses: actions/checkout@v4 + uses: actions/checkout@v6 with: fetch-depth: 0 @@ -90,7 +90,7 @@ jobs: - windows-latest steps: - name: Checkout code - uses: actions/checkout@v4 + uses: actions/checkout@v6 with: fetch-depth: 0 diff --git a/.github/workflows/codeql.yml b/.github/workflows/codeql.yml index 69a990f0..61137ad9 100644 --- a/.github/workflows/codeql.yml +++ b/.github/workflows/codeql.yml @@ -57,7 +57,7 @@ jobs: # your codebase is analyzed, see https://docs.github.com/en/code-security/code-scanning/creating-an-advanced-setup-for-code-scanning/codeql-code-scanning-for-compiled-languages steps: - name: Checkout repository - uses: actions/checkout@v4 + uses: actions/checkout@v6 # Initializes the CodeQL tools for scanning. - name: Initialize CodeQL diff --git a/.github/workflows/deploy.yml b/.github/workflows/deploy.yml index bb59abb0..2207ace2 100644 --- a/.github/workflows/deploy.yml +++ b/.github/workflows/deploy.yml @@ -12,7 +12,7 @@ jobs: runs-on: ubuntu-latest steps: - name: Checkout code - uses: actions/checkout@v4 + uses: actions/checkout@v6 with: fetch-depth: 0 @@ -43,7 +43,7 @@ jobs: runs-on: ubuntu-latest steps: - name: Checkout code - uses: actions/checkout@v4 + uses: actions/checkout@v6 with: fetch-depth: 0 @@ -67,7 +67,7 @@ jobs: runs-on: ubuntu-latest steps: - name: Checkout code - uses: actions/checkout@v4 + uses: actions/checkout@v6 with: fetch-depth: 0 @@ -98,7 +98,7 @@ jobs: runs-on: ubuntu-latest steps: - name: Checkout code - uses: actions/checkout@v4 + uses: actions/checkout@v6 with: fetch-depth: 0 @@ -129,7 +129,7 @@ jobs: runs-on: ubuntu-latest steps: - name: Checkout code - uses: actions/checkout@v4 + uses: actions/checkout@v6 with: fetch-depth: 0 diff --git a/.github/workflows/release-tag.yml b/.github/workflows/release-tag.yml index 7f524f90..5684990a 100644 --- a/.github/workflows/release-tag.yml +++ b/.github/workflows/release-tag.yml @@ -19,15 +19,15 @@ jobs: runs-on: ubuntu-latest strategy: matrix: - node-version: [20] + node-version: [22] steps: - name: Checkout code - uses: actions/checkout@v4 + uses: actions/checkout@v6 with: fetch-depth: 0 # - name: Checkout code - # uses: actions/checkout@v4 + # uses: actions/checkout@v6 # with: # fetch-depth: 0 diff --git a/.node-version b/.node-version index ee5c2446..85e50277 100644 --- a/.node-version +++ b/.node-version @@ -1 +1 @@ -22.1.0 +22.22.0 diff --git a/.vscode/settings.json b/.vscode/settings.json index 7e5d3765..2bf66d8b 100644 --- a/.vscode/settings.json +++ b/.vscode/settings.json @@ -181,7 +181,8 @@ "markdown", "json", "jsonc", - "json5" + "json5", + "yaml" ], "tailwindCSS.experimental.classRegex": [ diff --git a/package.json b/package.json index 0e5fd90e..fbe84393 100644 --- a/package.json +++ b/package.json @@ -95,5 +95,5 @@ "node": ">=20.19.0", "pnpm": ">=10.0.0" }, - "packageManager": "pnpm@10.28.1" + "packageManager": "pnpm@10.28.2" } diff --git a/packages/@core/ui-kit/form-ui/src/form-render/dependencies.ts b/packages/@core/ui-kit/form-ui/src/form-render/dependencies.ts index cec74818..8a3583bd 100644 --- a/packages/@core/ui-kit/form-ui/src/form-render/dependencies.ts +++ b/packages/@core/ui-kit/form-ui/src/form-render/dependencies.ts @@ -6,12 +6,30 @@ import type { import { computed, ref, watch } from 'vue'; -import { isBoolean, isFunction } from '@vben-core/shared/utils'; +import { get, isBoolean, isFunction } from '@vben-core/shared/utils'; import { useFormValues } from 'vee-validate'; import { injectRenderFormProps } from './context'; +/** + * 解析Nested Objects对应的字段值 + * @param values 表单值 + * @param fieldName 字段名 + */ +function resolveValueByFieldName( + values: Record, + fieldName: string, +) { + // vee-validate:[] 表示禁用嵌套 + if (fieldName.startsWith('[') && fieldName.endsWith(']')) { + const rawKey = fieldName.slice(1, -1); + return values[rawKey]; + } + + return get(values, fieldName); +} + export default function useDependencies( getDependencies: () => FormItemDependencies | undefined, ) { @@ -37,7 +55,7 @@ export default function useDependencies( // 该字段可能会被多个字段触发 const triggerFields = getDependencies()?.triggerFields ?? []; return triggerFields.map((dep) => { - return values.value[dep]; + return resolveValueByFieldName(values.value, dep); }); }); diff --git a/packages/@core/ui-kit/form-ui/src/form-render/form.vue b/packages/@core/ui-kit/form-ui/src/form-render/form.vue index 8a47b508..037c5338 100644 --- a/packages/@core/ui-kit/form-ui/src/form-render/form.vue +++ b/packages/@core/ui-kit/form-ui/src/form-render/form.vue @@ -53,6 +53,7 @@ const wrapperClass = computed(() => { provideFormRenderProps(props); +// @ts-expect-error unused const { isCalculated, keepFormItemIndex, wrapperRef } = useExpandable(props); const shapes = computed(() => { diff --git a/packages/@core/ui-kit/layout-ui/src/components/layout-content.vue b/packages/@core/ui-kit/layout-ui/src/components/layout-content.vue index 8a434346..b5abccb4 100644 --- a/packages/@core/ui-kit/layout-ui/src/components/layout-content.vue +++ b/packages/@core/ui-kit/layout-ui/src/components/layout-content.vue @@ -26,8 +26,8 @@ interface Props { const props = withDefaults(defineProps(), {}); -const { contentElement: _contentElement, overlayStyle } = - useLayoutContentStyle(); +// @ts-expect-error unused +const { contentElement, overlayStyle } = useLayoutContentStyle(); const style = computed((): CSSProperties => { const { @@ -56,11 +56,7 @@ const style = computed((): CSSProperties => {