1917 Commits

Author SHA1 Message Date
俞可 · YU KE dcc601d7d5 style: fix oxfmt 0.65 format drift on main (#8327)
Co-authored-by: EvoX <evox@evomap.ai>
2026-08-30 09:27:07 +08:00
dependabot[bot] 38b84fdc06 build(deps): bump the non-breaking-changes group across 1 directory with 31 updates (#8322)
Bumps the non-breaking-changes group with 31 updates in the / directory:

| Package | From | To |
| --- | --- | --- |
| [@iconify/json](https://github.com/iconify/icon-sets) | `2.2.518` | `2.2.520` |
| [@intlify/core-base](https://github.com/intlify/vue-i18n/tree/HEAD/packages/core) | `11.4.8` | `11.4.10` |
| [@lucide/vue](https://github.com/lucide-icons/lucide/tree/HEAD/packages/vue) | `1.33.0` | `1.34.0` |
| [@tanstack/vue-query](https://github.com/TanStack/query/tree/HEAD/packages/vue-query) | `5.101.4` | `5.102.3` |
| [@tiptap/core](https://github.com/ueberdosis/tiptap/tree/HEAD/packages/core) | `3.30.2` | `3.30.3` |
| [@tiptap/extension-document](https://github.com/ueberdosis/tiptap/tree/HEAD/packages/extension-document) | `3.30.2` | `3.30.3` |
| [@tiptap/extension-highlight](https://github.com/ueberdosis/tiptap/tree/HEAD/packages/extension-highlight) | `3.30.2` | `3.30.3` |
| [@tiptap/extension-image](https://github.com/ueberdosis/tiptap/tree/HEAD/packages/extension-image) | `3.30.2` | `3.30.3` |
| [@tiptap/extension-link](https://github.com/ueberdosis/tiptap/tree/HEAD/packages/extension-link) | `3.30.2` | `3.30.3` |
| [@tiptap/extension-placeholder](https://github.com/ueberdosis/tiptap/tree/HEAD/packages-deprecated/extension-placeholder) | `3.30.2` | `3.30.3` |
| [@tiptap/extension-text-align](https://github.com/ueberdosis/tiptap/tree/HEAD/packages/extension-text-align) | `3.30.2` | `3.30.3` |
| [@tiptap/extension-text-style](https://github.com/ueberdosis/tiptap/tree/HEAD/packages/extension-text-style) | `3.30.2` | `3.30.3` |
| [@tiptap/extension-underline](https://github.com/ueberdosis/tiptap/tree/HEAD/packages/extension-underline) | `3.30.2` | `3.30.3` |
| [@tiptap/pm](https://github.com/ueberdosis/tiptap/tree/HEAD/packages/pm) | `3.30.2` | `3.30.3` |
| [@tiptap/starter-kit](https://github.com/ueberdosis/tiptap/tree/HEAD/packages/starter-kit) | `3.30.2` | `3.30.3` |
| [@tiptap/vue-3](https://github.com/ueberdosis/tiptap/tree/HEAD/packages/vue-3) | `3.30.2` | `3.30.3` |
| [@typescript-eslint/parser](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser) | `8.67.0` | `8.68.0` |
| [cspell](https://github.com/streetsidesoftware/cspell/tree/HEAD/packages/cspell) | `10.1.0` | `10.1.1` |
| [cz-git](https://github.com/Zhengqbbb/cz-git/tree/HEAD/packages/cz-git) | `1.13.2` | `1.14.0` |
| [czg](https://github.com/Zhengqbbb/cz-git/tree/HEAD/packages/cli) | `1.13.2` | `1.14.0` |
| [es-toolkit](https://github.com/toss/es-toolkit) | `1.50.0` | `1.51.0` |
| [eslint-plugin-jsonc](https://github.com/ota-meshi/eslint-plugin-jsonc) | `3.4.1` | `3.4.2` |
| [eslint](https://github.com/eslint/eslint) | `10.9.0` | `10.9.1` |
| [oxfmt](https://github.com/oxc-project/oxc/tree/HEAD/npm/oxfmt) | `0.60.0` | `0.65.0` |
| [oxlint](https://github.com/oxc-project/oxc/tree/HEAD/npm/oxlint) | `1.79.0` | `1.80.0` |
| [reka-ui](https://github.com/unovue/reka-ui) | `2.10.3` | `2.10.4` |
| [turbo](https://github.com/vercel/turborepo) | `2.10.11` | `2.10.12` |
| [vue-i18n](https://github.com/intlify/vue-i18n/tree/HEAD/packages/vue-i18n) | `11.4.8` | `11.4.10` |
| [vxe-pc-ui](https://github.com/x-extends/vxe-pc-ui) | `4.17.13` | `4.17.18` |
| [vxe-table](https://github.com/x-extends/vxe-table) | `4.20.12` | `4.21.2` |
| [@ast-grep/napi](https://github.com/ast-grep/ast-grep) | `0.44.1` | `0.45.2` |



Updates `@iconify/json` from 2.2.518 to 2.2.520
- [Commits](https://github.com/iconify/icon-sets/compare/2.2.518...2.2.520)

Updates `@intlify/core-base` from 11.4.8 to 11.4.10
- [Release notes](https://github.com/intlify/vue-i18n/releases)
- [Changelog](https://github.com/intlify/vue-i18n/blob/v11.4.10/CHANGELOG.md)
- [Commits](https://github.com/intlify/vue-i18n/commits/v11.4.10/packages/core)

Updates `@lucide/vue` from 1.33.0 to 1.34.0
- [Release notes](https://github.com/lucide-icons/lucide/releases)
- [Commits](https://github.com/lucide-icons/lucide/commits/1.34.0/packages/vue)

Updates `@tanstack/vue-query` from 5.101.4 to 5.102.3
- [Release notes](https://github.com/TanStack/query/releases)
- [Changelog](https://github.com/TanStack/query/blob/main/packages/vue-query/CHANGELOG.md)
- [Commits](https://github.com/TanStack/query/commits/@tanstack/vue-query@5.102.3/packages/vue-query)

Updates `@tiptap/core` from 3.30.2 to 3.30.3
- [Release notes](https://github.com/ueberdosis/tiptap/releases)
- [Changelog](https://github.com/ueberdosis/tiptap/blob/main/packages/core/CHANGELOG.md)
- [Commits](https://github.com/ueberdosis/tiptap/commits/v3.30.3/packages/core)

Updates `@tiptap/extension-document` from 3.30.2 to 3.30.3
- [Release notes](https://github.com/ueberdosis/tiptap/releases)
- [Changelog](https://github.com/ueberdosis/tiptap/blob/main/packages/extension-document/CHANGELOG.md)
- [Commits](https://github.com/ueberdosis/tiptap/commits/v3.30.3/packages/extension-document)

Updates `@tiptap/extension-highlight` from 3.30.2 to 3.30.3
- [Release notes](https://github.com/ueberdosis/tiptap/releases)
- [Changelog](https://github.com/ueberdosis/tiptap/blob/main/packages/extension-highlight/CHANGELOG.md)
- [Commits](https://github.com/ueberdosis/tiptap/commits/v3.30.3/packages/extension-highlight)

Updates `@tiptap/extension-image` from 3.30.2 to 3.30.3
- [Release notes](https://github.com/ueberdosis/tiptap/releases)
- [Changelog](https://github.com/ueberdosis/tiptap/blob/main/packages/extension-image/CHANGELOG.md)
- [Commits](https://github.com/ueberdosis/tiptap/commits/v3.30.3/packages/extension-image)

Updates `@tiptap/extension-link` from 3.30.2 to 3.30.3
- [Release notes](https://github.com/ueberdosis/tiptap/releases)
- [Changelog](https://github.com/ueberdosis/tiptap/blob/main/packages/extension-link/CHANGELOG.md)
- [Commits](https://github.com/ueberdosis/tiptap/commits/v3.30.3/packages/extension-link)

Updates `@tiptap/extension-placeholder` from 3.30.2 to 3.30.3
- [Release notes](https://github.com/ueberdosis/tiptap/releases)
- [Changelog](https://github.com/ueberdosis/tiptap/blob/v3.30.3/packages-deprecated/extension-placeholder/CHANGELOG.md)
- [Commits](https://github.com/ueberdosis/tiptap/commits/v3.30.3/packages-deprecated/extension-placeholder)

Updates `@tiptap/extension-text-align` from 3.30.2 to 3.30.3
- [Release notes](https://github.com/ueberdosis/tiptap/releases)
- [Changelog](https://github.com/ueberdosis/tiptap/blob/main/packages/extension-text-align/CHANGELOG.md)
- [Commits](https://github.com/ueberdosis/tiptap/commits/v3.30.3/packages/extension-text-align)

Updates `@tiptap/extension-text-style` from 3.30.2 to 3.30.3
- [Release notes](https://github.com/ueberdosis/tiptap/releases)
- [Changelog](https://github.com/ueberdosis/tiptap/blob/main/packages/extension-text-style/CHANGELOG.md)
- [Commits](https://github.com/ueberdosis/tiptap/commits/v3.30.3/packages/extension-text-style)

Updates `@tiptap/extension-underline` from 3.30.2 to 3.30.3
- [Release notes](https://github.com/ueberdosis/tiptap/releases)
- [Changelog](https://github.com/ueberdosis/tiptap/blob/main/packages/extension-underline/CHANGELOG.md)
- [Commits](https://github.com/ueberdosis/tiptap/commits/v3.30.3/packages/extension-underline)

Updates `@tiptap/pm` from 3.30.2 to 3.30.3
- [Release notes](https://github.com/ueberdosis/tiptap/releases)
- [Changelog](https://github.com/ueberdosis/tiptap/blob/main/packages/pm/CHANGELOG.md)
- [Commits](https://github.com/ueberdosis/tiptap/commits/v3.30.3/packages/pm)

Updates `@tiptap/starter-kit` from 3.30.2 to 3.30.3
- [Release notes](https://github.com/ueberdosis/tiptap/releases)
- [Changelog](https://github.com/ueberdosis/tiptap/blob/main/packages/starter-kit/CHANGELOG.md)
- [Commits](https://github.com/ueberdosis/tiptap/commits/v3.30.3/packages/starter-kit)

Updates `@tiptap/vue-3` from 3.30.2 to 3.30.3
- [Release notes](https://github.com/ueberdosis/tiptap/releases)
- [Changelog](https://github.com/ueberdosis/tiptap/blob/v3.30.3/packages/vue-3/CHANGELOG.md)
- [Commits](https://github.com/ueberdosis/tiptap/commits/v3.30.3/packages/vue-3)

Updates `@typescript-eslint/parser` from 8.67.0 to 8.68.0
- [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases)
- [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/parser/CHANGELOG.md)
- [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v8.68.0/packages/parser)

Updates `cspell` from 10.1.0 to 10.1.1
- [Release notes](https://github.com/streetsidesoftware/cspell/releases)
- [Changelog](https://github.com/streetsidesoftware/cspell/blob/main/packages/cspell/CHANGELOG.md)
- [Commits](https://github.com/streetsidesoftware/cspell/commits/v10.1.1/packages/cspell)

Updates `cz-git` from 1.13.2 to 1.14.0
- [Release notes](https://github.com/Zhengqbbb/cz-git/releases)
- [Changelog](https://github.com/Zhengqbbb/cz-git/blob/main/packages/cz-git/CHANGELOG.md)
- [Commits](https://github.com/Zhengqbbb/cz-git/commits/v1.14.0/packages/cz-git)

Updates `czg` from 1.13.2 to 1.14.0
- [Release notes](https://github.com/Zhengqbbb/cz-git/releases)
- [Changelog](https://github.com/Zhengqbbb/cz-git/blob/main/packages/cli/CHANGELOG.md)
- [Commits](https://github.com/Zhengqbbb/cz-git/commits/v1.14.0/packages/cli)

Updates `es-toolkit` from 1.50.0 to 1.51.0
- [Release notes](https://github.com/toss/es-toolkit/releases)
- [Changelog](https://github.com/toss/es-toolkit/blob/main/CHANGELOG.md)
- [Commits](https://github.com/toss/es-toolkit/compare/v1.50.0...v1.51.0)

Updates `eslint-plugin-jsonc` from 3.4.1 to 3.4.2
- [Release notes](https://github.com/ota-meshi/eslint-plugin-jsonc/releases)
- [Changelog](https://github.com/ota-meshi/eslint-plugin-jsonc/blob/master/CHANGELOG.md)
- [Commits](https://github.com/ota-meshi/eslint-plugin-jsonc/compare/v3.4.1...v3.4.2)

Updates `eslint` from 10.9.0 to 10.9.1
- [Release notes](https://github.com/eslint/eslint/releases)
- [Commits](https://github.com/eslint/eslint/compare/v10.9.0...v10.9.1)

Updates `oxfmt` from 0.60.0 to 0.65.0
- [Release notes](https://github.com/oxc-project/oxc/releases)
- [Changelog](https://github.com/oxc-project/oxc/blob/main/npm/oxfmt/CHANGELOG.md)
- [Commits](https://github.com/oxc-project/oxc/commits/oxfmt_v0.65.0/npm/oxfmt)

Updates `oxlint` from 1.79.0 to 1.80.0
- [Release notes](https://github.com/oxc-project/oxc/releases)
- [Changelog](https://github.com/oxc-project/oxc/blob/main/npm/oxlint/CHANGELOG.md)
- [Commits](https://github.com/oxc-project/oxc/commits/oxlint_v1.80.0/npm/oxlint)

Updates `reka-ui` from 2.10.3 to 2.10.4
- [Release notes](https://github.com/unovue/reka-ui/releases)
- [Commits](https://github.com/unovue/reka-ui/compare/v2.10.3...v2.10.4)

Updates `turbo` from 2.10.11 to 2.10.12
- [Release notes](https://github.com/vercel/turborepo/releases)
- [Changelog](https://github.com/vercel/turborepo/blob/main/RELEASE.md)
- [Commits](https://github.com/vercel/turborepo/compare/v2.10.11...v2.10.12)

Updates `vue-i18n` from 11.4.8 to 11.4.10
- [Release notes](https://github.com/intlify/vue-i18n/releases)
- [Changelog](https://github.com/intlify/vue-i18n/blob/v11.4.10/CHANGELOG.md)
- [Commits](https://github.com/intlify/vue-i18n/commits/v11.4.10/packages/vue-i18n)

Updates `vxe-pc-ui` from 4.17.13 to 4.17.18
- [Release notes](https://github.com/x-extends/vxe-pc-ui/releases)
- [Commits](https://github.com/x-extends/vxe-pc-ui/commits)

Updates `vxe-table` from 4.20.12 to 4.21.2
- [Release notes](https://github.com/x-extends/vxe-table/releases)
- [Commits](https://github.com/x-extends/vxe-table/compare/4.20.12...4.21.2)

Updates `@ast-grep/napi` from 0.44.1 to 0.45.2
- [Release notes](https://github.com/ast-grep/ast-grep/releases)
- [Changelog](https://github.com/ast-grep/ast-grep/blob/main/CHANGELOG.md)
- [Commits](https://github.com/ast-grep/ast-grep/compare/0.44.1...0.45.2)

---
updated-dependencies:
- dependency-name: "@iconify/json"
  dependency-version: 2.2.520
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: non-breaking-changes
- dependency-name: "@intlify/core-base"
  dependency-version: 11.4.10
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: non-breaking-changes
- dependency-name: "@lucide/vue"
  dependency-version: 1.34.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: non-breaking-changes
- dependency-name: "@tanstack/vue-query"
  dependency-version: 5.102.3
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: non-breaking-changes
- dependency-name: "@tiptap/core"
  dependency-version: 3.30.3
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: non-breaking-changes
- dependency-name: "@tiptap/extension-document"
  dependency-version: 3.30.3
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: non-breaking-changes
- dependency-name: "@tiptap/extension-highlight"
  dependency-version: 3.30.3
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: non-breaking-changes
- dependency-name: "@tiptap/extension-image"
  dependency-version: 3.30.3
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: non-breaking-changes
- dependency-name: "@tiptap/extension-link"
  dependency-version: 3.30.3
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: non-breaking-changes
- dependency-name: "@tiptap/extension-placeholder"
  dependency-version: 3.30.3
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: non-breaking-changes
- dependency-name: "@tiptap/extension-text-align"
  dependency-version: 3.30.3
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: non-breaking-changes
- dependency-name: "@tiptap/extension-text-style"
  dependency-version: 3.30.3
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: non-breaking-changes
- dependency-name: "@tiptap/extension-underline"
  dependency-version: 3.30.3
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: non-breaking-changes
- dependency-name: "@tiptap/pm"
  dependency-version: 3.30.3
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: non-breaking-changes
- dependency-name: "@tiptap/starter-kit"
  dependency-version: 3.30.3
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: non-breaking-changes
- dependency-name: "@tiptap/vue-3"
  dependency-version: 3.30.3
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: non-breaking-changes
- dependency-name: "@typescript-eslint/parser"
  dependency-version: 8.68.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: non-breaking-changes
- dependency-name: cspell
  dependency-version: 10.1.1
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: non-breaking-changes
- dependency-name: cz-git
  dependency-version: 1.14.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: non-breaking-changes
- dependency-name: czg
  dependency-version: 1.14.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: non-breaking-changes
- dependency-name: es-toolkit
  dependency-version: 1.51.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: non-breaking-changes
- dependency-name: eslint-plugin-jsonc
  dependency-version: 3.4.2
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: non-breaking-changes
- dependency-name: eslint
  dependency-version: 10.9.1
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: non-breaking-changes
- dependency-name: oxfmt
  dependency-version: 0.65.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: non-breaking-changes
- dependency-name: oxlint
  dependency-version: 1.80.0
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: non-breaking-changes
- dependency-name: reka-ui
  dependency-version: 2.10.4
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: non-breaking-changes
- dependency-name: turbo
  dependency-version: 2.10.12
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: non-breaking-changes
- dependency-name: vue-i18n
  dependency-version: 11.4.10
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: non-breaking-changes
- dependency-name: vxe-pc-ui
  dependency-version: 4.17.18
  dependency-type: direct:production
  update-type: version-update:semver-patch
  dependency-group: non-breaking-changes
- dependency-name: vxe-table
  dependency-version: 4.21.2
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: non-breaking-changes
- dependency-name: "@ast-grep/napi"
  dependency-version: 0.45.2
  dependency-type: direct:production
  update-type: version-update:semver-minor
  dependency-group: non-breaking-changes
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-08-29 15:53:05 +08:00
俞可 · YU KE f312a2f9f0 fix(@vben/common-ui): keep auto-height Page from clamping outer flex layout (#8323)
When the layout footer is enabled and not fixed, LayoutContent is a flex
item of the scroll container with min-height:auto. An auto-content-height
Page then feeds its inner content's min-content height back into that
automatic minimum, so the content region gets clamped taller than the
available space on first render: the layout footer is pushed below the
viewport and the page's own scrollbar only appears after switching tabs
(the KeepAlive remount breaks the feedback loop). See #5677.

Apply size containment to the Page content region in auto-content-height
mode so it no longer contributes min-content height to the outer flex
layout; the region manages its own scrolling there by design.
2026-08-29 15:52:00 +08:00
俞可 · YU KE c26a0897f9 fix(@vben-core/form-ui): 字段名与 <form> 固有属性冲突时剥离原生 name(#8214) (#8321)
* fix(@vben-core/form-ui): strip native name attr when fieldName collides with form properties

An <input name="nodeName"> inside a vben form hijacks the form.nodeName
accessor: it returns the control element instead of the string "FORM".
When a TreeSelect dropdown opens, popper/floating computation walks the
ancestor chain and calls getNodeName(form) -> form.nodeName.toLowerCase(),
which throws. Strip the native name attribute only for field names that
collide with <form> built-in properties (nodeName, action, id, name,
title, ...); the outer tanstack Field name binding used for field
location is unaffected.

closes #8214

Co-Authored-By: EvoX <evox@evomap.ai>

* fix(@vben-core/form-ui): 字段名与 <form> 固有属性冲突时剥离原生 name (#8214)

Co-Authored-By: EvoX <evox@evomap.ai>

* fix(@vben-core/form-ui): keep name-resolved model bindings intact in conflict sweep (#8214)

Co-Authored-By: EvoX <evox@evomap.ai>

* fix(@vben-core/form-ui): preserve declared name props in conflict sweep (#8214)

Co-Authored-By: EvoX <evox@evomap.ai>

* fix(@vben-core/form-ui): resolve string components before name-prop introspection (#8214)

Co-Authored-By: EvoX <evox@evomap.ai>

---------

Co-authored-by: EvoX <evox@evomap.ai>
2026-08-29 15:40:09 +08:00
俞可 · YU KE 79b8e42e7d test(@vben/common-ui): add icon-picker keyword filter regression tests (#8320)
Co-authored-by: EvoX <evox@evomap.ai>
2026-08-28 22:51:39 +08:00
俞可 · YU KE 83d8c0765a test(@vben-core/popup-ui): add imperative alert/confirm regression tests (#8319)
Cover the imperative AlertBuilder path (alert()/confirm()/clearAllAlerts)
that issue #8052 reported: mouse click on the confirm button resolves the
promise, mouse click on cancel or Escape rejects with 'dialog cancelled',
and the mounted container is removed from the DOM afterwards.

Verified separately: oxlint/oxfmt/eslint clean, popup-ui typecheck clean,
vitest 7/7 passing. Full-repo checkType blocked by unrelated uncommitted
apps/web-ele/src/__tests__/repro-8214.test.ts (8214 track work).

Co-authored-by: EvoX <evox@evomap.ai>
2026-08-28 22:51:21 +08:00
github-actions[bot] 16ba48470a chore: bump versions (#8316)
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2026-08-28 18:22:49 +08:00
俞可 · YU KE b125df1cae fix(@vben/playground): 移除 authLogin 中重复的 setUserInfo 调用 (#8165) (#8317)
Co-authored-by: EvoX <evox@evomap.ai>
2026-08-28 18:19:00 +08:00
dependabot[bot] e1e81c2aaa build(deps): bump @vueuse/core from 13.9.0 to 14.4.0 (#8286)
Bumps [@vueuse/core](https://github.com/vueuse/vueuse/tree/HEAD/packages/core) from 13.9.0 to 14.4.0.
- [Release notes](https://github.com/vueuse/vueuse/releases)
- [Commits](https://github.com/vueuse/vueuse/commits/v14.4.0/packages/core)

---
updated-dependencies:
- dependency-name: "@vueuse/core"
  dependency-version: 14.4.0
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-08-28 17:48:18 +08:00
dependabot[bot] 44715d3708 build(deps): bump @changesets/changelog-github from 0.7.0 to 1.0.0 (#8285)
Bumps [@changesets/changelog-github](https://github.com/changesets/changesets/tree/HEAD/packages/changelog-github) from 0.7.0 to 1.0.0.
- [Release notes](https://github.com/changesets/changesets/releases)
- [Changelog](https://github.com/changesets/changesets/blob/main/packages/changelog-github/CHANGELOG.md)
- [Commits](https://github.com/changesets/changesets/commits/@changesets/changelog-github@1.0.0/packages/changelog-github)

---
updated-dependencies:
- dependency-name: "@changesets/changelog-github"
  dependency-version: 1.0.0
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com>
2026-08-28 17:48:02 +08:00
dream-weave 62cf6f4665 fix(@vben-core/form-ui): 修复嵌套部分更新与重复初始化绑定残留 (#8315)
* fix(@vben-core/form-ui): fix partial updates and bindings

* fix(@vben-core/form-ui): guard cyclic patches and restore api docs table
2026-08-28 16:02:51 +08:00
俞可 · YU KE 728ba5f574 feat(@vben/layouts): make user dropdown avatar dot configurable (#8314)
* feat(@vben/layouts): make user dropdown avatar dot configurable

The online-status dot on the UserDropdown avatar was hardcoded to
bg-green-500. Expose avatarDot and avatarDotClass props, defaulting to the
previous behavior, so apps can toggle the dot and restyle it like the
notification badge.

Co-Authored-By: EvoX <evox@evomap.ai>

* fix(@vben/layouts): apply avatarDotClass to header trigger avatar too

CodeRabbit noted the avatarDotClass prop only styled the dropdown-content
avatar; the header trigger avatar still used the default dot style, making
custom styling inconsistent. Bind dot-class to both avatars.

Co-Authored-By: EvoX <evox@evomap.ai>

---------

Co-authored-by: EvoX <evox@evomap.ai>
2026-08-28 15:52:59 +08:00
俞可 · YU KE 723ee5980f docs(@vben/docs): fix setUserInfo store reference in access guide (#8313)
The access control guide referenced authStore.setUserInfo, but the user
store (useUserStore) is what exposes setUserInfo in the current code.
Align the documented API with the implementation in
packages/stores/src/modules/user.ts.

Co-authored-by: EvoX <evox@evomap.ai>
2026-08-28 15:51:20 +08:00
俞可 · YU KE cbd855fcf0 chore(project): dedupe oxc extension recommendation in vscode config (#8311)
Co-authored-by: EvoX <evox@evomap.ai>
2026-08-28 15:50:54 +08:00
俞可 · YU KE 0b8750eafb feat(@vben-core/popup-ui): add extra header slot to modal (#8310)
Allow custom content to be rendered in the modal header, positioned to the
left of the fullscreen toggle button, via a new `extra` slot. Mirrors the
existing `extra` slot in the drawer component.

Co-authored-by: EvoX <evox@evomap.ai>
2026-08-28 15:49:13 +08:00
俞可 · YU KE 390efe9f60 fix(@vben/preferences): expose full copyright fields in appCopyrightPreferences (#8309)
* fix(@vben/preferences): expose full copyright fields in appCopyrightPreferences

appCopyrightPreferences only carried icp and icpLink, so apps spreading it
into their preferences.copyright could not override companyName,
companySiteLink, date, enable, or settingShow. Align the exported default
with the full CopyrightPreferences shape used by the settings panel.

Co-Authored-By: EvoX <evox@evomap.ai>

* chore: add changeset for copyright preferences fix

Co-Authored-By: EvoX <evox@evomap.ai>

---------

Co-authored-by: EvoX <evox@evomap.ai>
2026-08-28 15:48:24 +08:00
俞可 · YU KE 81f179ed4c fix(apps): pass withCredentials as request config for refresh/logout (#8308)
* fix(project): pass withCredentials as request config for refresh/logout

The refresh and logout APIs called baseRequestClient.post(url, { withCredentials: true }),
but the second argument is the request body (data), not the request config.
withCredentials was therefore sent inside the POST body and never applied as an axios option,
so cookie-based token refresh/logout failed.

Move withCredentials to the config argument (post(url, undefined, config)) in all five apps:
web-antd, web-antdv-next, web-ele, web-naive, web-tdesign.

Co-Authored-By: EvoX <evox@evomap.ai>

* chore: add changeset for withCredentials config fix

Co-Authored-By: EvoX <evox@evomap.ai>

---------

Co-authored-by: EvoX <evox@evomap.ai>
2026-08-28 15:47:20 +08:00
俞可 · YU KE d7c4c1b045 test(@vben-core/popup-ui): add drawer mouse and keyboard regression tests (#8307)
* test(@vben-core/popup-ui): add drawer mouse and keyboard regression tests

Co-Authored-By: EvoX <evox@evomap.ai>

* style(@vben-core/popup-ui): apply oxfmt formatting to drawer interaction tests

Co-Authored-By: EvoX <evox@evomap.ai>

---------

Co-authored-by: EvoX <evox@evomap.ai>
2026-08-28 15:46:51 +08:00
俞可 · YU KE 0750bb0176 test(@vben-core/popup-ui): add modal mouse and keyboard regression tests (#8306)
* test(@vben-core/popup-ui): add modal mouse and keyboard regression tests

Co-Authored-By: EvoX <evox@evomap.ai>

* fix(apps): pass withCredentials as request config, not body, for refresh/logout

Co-Authored-By: EvoX <evox@evomap.ai>

* style(@vben-core/popup-ui): apply oxfmt formatting to modal interaction tests

Co-Authored-By: EvoX <evox@evomap.ai>

---------

Co-authored-by: EvoX <evox@evomap.ai>
2026-08-28 15:46:33 +08:00
俞可 · YU KE 142b5442c2 feat(@vben-core/shadcn-ui): add Progress primitive with progressbar semantics (#8305)
* feat(@vben-core/shadcn-ui): add Progress primitive with progressbar semantics

Add a reka-ui-based Progress primitive (role="progressbar") exposing
aria-valuemin/valuemax/valuenow, a custom max, and an indeterminate state
when modelValue is null, with unit tests covering those semantics.

Co-Authored-By: EvoX <evox@evomap.ai>

* chore: add changeset for Progress primitive

Co-Authored-By: EvoX <evox@evomap.ai>

* fix(@vben-core/shadcn-ui): normalize progress indicator fill with custom max

Co-Authored-By: EvoX <evox@evomap.ai>

* fix(@vben-core/shadcn-ui): guard Progress against non-positive max values

Co-Authored-By: EvoX <evox@evomap.ai>

* chore(@vben-core/shadcn-ui): dedupe progress max fallback tests

Co-Authored-By: EvoX <evox@evomap.ai>

* test(@vben-core/shadcn-ui): assert NaN max fallback instead of zero

Co-Authored-By: EvoX <evox@evomap.ai>

* fix(@vben-core/shadcn-ui): reject non-finite progress max values

Co-Authored-By: EvoX <evox@evomap.ai>

* fix(@vben-core/shadcn-ui): narrow max to number in progress normalization

Co-Authored-By: EvoX <evox@evomap.ai>

---------

Co-authored-by: EvoX <evox@evomap.ai>
2026-08-28 15:41:32 +08:00
dream-weave bb35b13eb0 fix(@vben-core/layout-ui): preserve content sizing across footer modes (#8304) 2026-08-27 16:59:43 +08:00
俞可 · YU KE 34bb1cd6de test(@vben-core/popup-ui): add alert dialog mouse and keyboard regression tests (#8303)
* test(@vben-core/popup-ui): add alert dialog mouse and keyboard regression tests

Co-Authored-By: EvoX <evox@evomap.ai>

* test(@vben-core/popup-ui): add jsdoc to alert regression test helper

Co-Authored-By: EvoX <evox@evomap.ai>

---------

Co-authored-by: EvoX <evox@evomap.ai>
2026-08-27 16:54:57 +08:00
xueyitt 251cde42e5 feat(tree): 树组件能力优化,增加includeIndeterminate控制参数,支持modelValue仅返回全选节点 & 全选节点与半选节点同时返回; (#8290)
* Add includeIndeterminate option to tree types

* Refactor tree component for improved state management

* fix(tree): 修复 1、声明后移动初始化块。

              当 有初始值时,调用 之前的调用被初始化。这会抛弃并阻止组件渲染。modelValueupdateTreeValue()getItemByValue()const valueMapReferenceError: Cannot access 'valueMap' before initialization
              2、不要用 来对选择分支进行门控。

              现在警卫要求整个街区都有。该分支执行 。如果消费者设置 ,祖先不再被添加在选择中。 在 中仅影响 uncheck 的级联移除。!props.keepParentOnUncheckisSelectedautoCheckParentkeepParentOnUncheck: truekeepParentOnUnchecktypes.ts
              3、避免将不确定的祖先ID排除在Reka UI内部选择之外

              启用时,将每个不确定祖先添加到 ,并按选中方式传递给 Reka UI 2.10.3。复选框依然会渲染,因为优先级。然而,点击该祖先后,它被视为被选中,因此移除了祖先及其所有后代,而不是选择后代。将不确定的身份从中移除,只将它们添加到发射的 。includeIndeterminatemergeIndeterminatemodelValueupdateTreeValueMinusindeterminateTreeRootpropagateSelecttreeValuemodelValue

---------

Co-authored-by: Jin Mao <50581550+jinmao88@users.noreply.github.com>
2026-08-27 16:47:40 +08:00
金毛88 86531425e9 Merge branch 'fork/dream-weave/refactor/typed-supported-languages' 2026-08-26 17:21:58 +08:00
金毛88 6e448fda92 Merge branch 'fork/HaroldZhangCode91/fix/layout-footer-position' 2026-08-26 17:21:31 +08:00
金毛88 92c9e42c5d Merge branch 'fork/xueyitt/feat/2026082503' 2026-08-26 17:17:15 +08:00
金毛88 5bb4aefd53 chore: fix lint 2026-08-26 17:10:03 +08:00
金毛88 9bfebc17cb refactor: 重构 lint 错误处理机制
- 移除 node:child_process 的 execSync 导入
- 添加 colors 工具导入用于错误信息着色
- 创建统一的 LintError 类处理 lint 失败错误
- 串行和并行执行模式统一使用 LintError 抛出错误
- 并行执行改为等待全部完成后再汇总失败命令
- 移除并行执行中的进程强制终止逻辑
- 在主入口捕获 LintError 并显示友好的错误信息
- 导出 LintError 类供外部使用
2026-08-26 17:06:34 +08:00
Dream 6ee0f0b566 chore: remove changeset
本 PR 不触发版本发布,由维护者按发布节奏统一安排。
2026-08-26 16:53:24 +08:00
Dream bc483dcd33 Merge remote-tracking branch 'upstream/main' into refactor/typed-supported-languages
# Conflicts:
#	playground/src/views/demos/features/vue-query/concurrency-caching.vue
2026-08-26 16:42:54 +08:00
Dream 514bde73ed chore: add changeset 2026-08-26 16:29:49 +08:00
Dream 64c22fb7ba docs: 修正新增语言包指引中的目录路径
核心语言包目录为 packages/locales/src/langs,中英文档
同步修正。
2026-08-26 16:29:44 +08:00
Dream 6594c5f82e refactor(@vben/playground): vue-query 演示改用 fetchQuery 读取缓存
refetch 每次调用都会强制刷新(cancelRefetch 默认 true 会取消
进行中的请求另起新请求),绕过 staleTime 缓存;且 refetch 默认
不抛错,失败时会静默退化为空选项列表。

改用 queryClient.fetchQuery:缓存新鲜期内直接命中缓存,并发
调用共享同一次请求,真正演示"并发与缓存"主题;请求失败显式
捕获并记录日志。
2026-08-26 16:29:06 +08:00
Dream 9acd09d8d8 fix(@vben/playground): 补充 antd locale 回退并修正繁体翻译错字
loadAntdLocale 为未打包语言包的语言增加 default 分支回退
en-US,避免切换到此类语言时残留上一次的 antd 语言;
「使用者名稱稱」去掉重复的「稱」。
2026-08-26 16:28:16 +08:00
Dream 25ed93a6ac fix(@vben/locales): 修正繁体偏好设置翻译错字
「顯示覆制」应为「顯示複製」。
2026-08-26 16:27:27 +08:00
金毛88 82108769c0 chore: 修复并发缓存示例中的查询方法调用
- 使用 queryOptions 创建公共查询配置对象
- 添加 useQueryClient 引入缓存时间配置
- 移除重复的 refetch 函数定义
- 实现 fetchQuery 用于并发请求合并
- 统一查询配置避免代码重复
2026-08-26 15:56:24 +08:00
Dream e3cd986008 docs: 重写新增语言包指南为模块增强三步法
按新的类型扩展机制更新中英文档:语言包目录、d.ts 模块
增强、setSupportLanguages 运行时注册三步,并以 zh-TW 为
例给出可运行的完整代码。
2026-08-26 15:22:49 +08:00
Dream 13c4def8f0 feat(@vben/playground): 新增繁体中文语言包演示语言扩展机制
以 zh-TW 为活体示例展示新增语言的完整三步:

- packages/locales 与 playground 各自新增 zh-TW 语言包
  目录(核心语言包由 glob 自动捕获,无需注册)
- languages.d.ts 通过 declare module 增强
  SupportedLanguages 接口,联合类型自动扩展出 zh-TW
- bootstrap 中 setSupportLanguages 注册三语运行时列表,
  dayjs / antd locale 同步接入繁体包

演示未增强接口时联合自动回到默认两语言、demo 应用零改动
的向后兼容性。
2026-08-26 15:22:17 +08:00
Dream 58f06c7925 refactor(@vben/layouts): user-dropdown 语言切换回调对齐联合类型
下拉菜单回调参数为 string,写入偏好设置前断言收窄到
SupportedLanguagesType,与 language-toggle 的边界处理一致。
2026-08-26 15:21:41 +08:00
Dream 8a3f5ffb54 refactor(@vben/plugins): vxe-table 语言映射恢复字面量键约束
localMap 恢复为 Partial<Record<SupportedLanguagesType, ...>>,
语言代码拼写错误重新回到编译期报错;应用扩展语言未打包
对应 vxe 语言包时仍回退 en-US(断言保留并说明原因:
vxe-table 仅为内置语言提供类型定义)。
2026-08-26 15:21:13 +08:00
Dream 702d7ea7ee refactor(@vben-core/typings): 语言类型改为可声明合并扩展的接口注册表
53b1529 为支持运行时动态语言注册,将 SupportedLanguagesType
等四处语言类型从字面量联合放宽为 string,换来扩展便利的同时
完全丢失了编译期类型约束。

本提交以 keyof interface 注册表恢复类型安全:

- typings 新增 SupportedLanguages 接口(默认 en-US / zh-CN),
  SupportedLanguagesType = keyof SupportedLanguages 派生联合
- locales / composables / preferences / constants 恢复引用该
  联合,LanguageOption 泛型化(默认 string 保留运行时注册
  自定义语言的逃生舱),SUPPORT_LANGUAGES 默认列表约束回联合
- 应用扩展语言时无需改动核心包:在应用内 d.ts 通过
  declare module '@vben-core/typings' 追加接口键即可让联合
  自动扩展(先例:vue-router 的 RouteMeta 增强)
- 运行时语言列表仍由 setSupportLanguages 注册,53b1529 的
  动态注册机制与 en-US 回退行为完整保留
- 声明依赖的五个包补齐 @vben-core/typings workspace 依赖
2026-08-26 15:20:44 +08:00
Dream 912f0cddf6 style: format docs to satisfy oxfmt
对齐 markdown 表格列宽,修复 main 分支上 oxfmt --check
的存量格式错误,恢复 lint 检查通过。
2026-08-26 15:20:21 +08:00
Dream 25a73a8c41 fix(@vben/playground): 修复 vue-query 演示的类型错误
@tanstack/vue-query 升级后已移除 experimental_prefetchInRender
选项与返回值上的 promise 属性,导致类型检查失败。

改用 refetch 提供选项数据:多个组件并发调用时,query 层会将
请求去重合并为同一次,保持"共用一个数据源"的演示语义不变。
2026-08-26 15:19:11 +08:00
Harold Zhang 02d6e5cdd1 Merge branch 'main' into fix/layout-footer-position 2026-08-26 11:06:02 +08:00
xueyitt 56f765f25a feat: 支持提示弹框内容为空(兼容部分场景只有标题无需内容场景) (#8291) 2026-08-26 08:05:18 +08:00
xueyitt e9e387d602 feat: 左上Logo与文案允许通过props传入; 适配场景:多应用or多项目,不同项目从后台或者其他形式设置各自独立的logo与名称
feat: 左上Logo与文案允许通过props传入;
适配场景:多应用or多项目,不同项目从后台或者其他形式设置各自独立的logo与名称
2026-08-25 18:01:43 +08:00
Harold Zhang e18882d107 Merge branch 'main' into fix/layout-footer-position 2026-08-25 11:07:49 +08:00
徐蒙恩 dbac4e4c30 feat(tree): 新增 keepParentOnUncheck 属性,取消勾选子节点时保持父节点选中 (#8281)
权限树等父子节点均为独立授权项的场景中,checkStrictly 与 autoCheckParent 组合下取消勾选子节点会级联清空父节点,用户显式勾选的父级授权被误清空。

- types.ts:TreeProps 新增 keepParentOnUncheck 可选属性,默认 false(与现有级联取消行为一致)

- tree.vue:onSelect 取消勾选分支的级联条件追加该属性取反判定,勾选方向的级联不受影响
2026-08-24 21:19:59 +08:00
Harold Zhang 1d95f298bd fix(@vben/plugins): register echarts GraphicComponent for empty-state text 2026-08-24 16:13:31 +08:00
Harold Zhang 9036bef71b fix(@vben-core/layout-ui): keep in-flow footer below page content 2026-08-24 14:20:41 +08:00