mirror of
https://github.com/toeverything/AFFiNE.git
synced 2026-02-12 12:28:42 +00:00
1ea73456ca8a566f4afbcf7f6aece28ff4281d4d
9685 Commits
| Author | SHA1 | Message | Date | |
|---|---|---|---|---|
|
|
1ea73456ca |
refactor(editor): support virtual scroll for table view of database block (#11642)
close: BS-3378 <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit - **New Features** - Introduced a modular virtualized table view with grouping, selection, drag-and-drop, clipboard support, and batch task management for optimized rendering. - Added comprehensive keyboard shortcuts, drag-to-fill functionality, and clipboard operations for efficient table editing. - Enabled dynamic column statistics, number formatting controls, and flexible switching between virtual and standard table views via a feature flag. - Provided detailed row and group header/footer components with context menus, row management actions, and column reordering/resizing. - Added a table view selector component to toggle between virtual and standard table views based on feature flags. - **Style** - Added extensive styling modules for virtual table elements including headers, footers, rows, cells, and interactive controls. - **Chores** - Registered numerous custom elements via modular effect functions to streamline component initialization. - Updated feature flag system to include virtual table scrolling toggle. - Added new dependencies to support styling and component functionality. <!-- end of auto-generated comment: release notes by coderabbit.ai --> |
||
|
|
bce9f8cdf0 |
chore: bump up all non-major npm dependencies (#11994)
This PR contains the following updates: | Package | Change | Age | Adoption | Passing | Confidence | Type | Update | |---|---|---|---|---|---|---|---| | [@ai-sdk/openai](https://sdk.vercel.ai/docs) ([source](https://redirect.github.com/vercel/ai)) | [`1.3.19` -> `1.3.20`](https://renovatebot.com/diffs/npm/@ai-sdk%2fopenai/1.3.19/1.3.20) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | dependencies | patch | | [@aws-sdk/client-s3](https://redirect.github.com/aws/aws-sdk-js-v3/tree/main/clients/client-s3) ([source](https://redirect.github.com/aws/aws-sdk-js-v3/tree/HEAD/clients/client-s3)) | [`3.796.0` -> `3.797.0`](https://renovatebot.com/diffs/npm/@aws-sdk%2fclient-s3/3.796.0/3.797.0) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | dependencies | minor | | [@aws-sdk/s3-request-presigner](https://redirect.github.com/aws/aws-sdk-js-v3/tree/main/packages/s3-request-presigner) ([source](https://redirect.github.com/aws/aws-sdk-js-v3/tree/HEAD/packages/s3-request-presigner)) | [`3.796.0` -> `3.797.0`](https://renovatebot.com/diffs/npm/@aws-sdk%2fs3-request-presigner/3.796.0/3.797.0) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | dependencies | minor | | [@napi-rs/cli](https://redirect.github.com/napi-rs/napi-rs) | [`3.0.0-alpha.77` -> `3.0.0-alpha.78`](https://renovatebot.com/diffs/npm/@napi-rs%2fcli/3.0.0-alpha.77/3.0.0-alpha.78) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | devDependencies | patch | | [@playwright/test](https://playwright.dev) ([source](https://redirect.github.com/microsoft/playwright)) | [`=1.51.1` -> `=1.52.0`](https://renovatebot.com/diffs/npm/@playwright%2ftest/1.51.1/1.52.0) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | devDependencies | minor | | [@playwright/test](https://playwright.dev) ([source](https://redirect.github.com/microsoft/playwright)) | [`=1.51.1` -> `=1.52.0`](https://renovatebot.com/diffs/npm/@playwright%2ftest/1.51.1/1.52.0) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | dependencies | minor | | [@toeverything/theme](https://redirect.github.com/toeverything/design) | [`1.1.13` -> `1.1.14`](https://renovatebot.com/diffs/npm/@toeverything%2ftheme/1.1.13/1.1.14) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | dependencies | patch | | [@vitest/browser](https://redirect.github.com/vitest-dev/vitest/tree/main/packages/browser#readme) ([source](https://redirect.github.com/vitest-dev/vitest/tree/HEAD/packages/browser)) | [`3.1.1` -> `3.1.2`](https://renovatebot.com/diffs/npm/@vitest%2fbrowser/3.1.1/3.1.2) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | devDependencies | patch | | [@vitest/coverage-istanbul](https://redirect.github.com/vitest-dev/vitest/tree/main/packages/coverage-istanbul#readme) ([source](https://redirect.github.com/vitest-dev/vitest/tree/HEAD/packages/coverage-istanbul)) | [`3.1.1` -> `3.1.2`](https://renovatebot.com/diffs/npm/@vitest%2fcoverage-istanbul/3.1.1/3.1.2) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | devDependencies | patch | | [@vitest/ui](https://redirect.github.com/vitest-dev/vitest/tree/main/packages/ui#readme) ([source](https://redirect.github.com/vitest-dev/vitest/tree/HEAD/packages/ui)) | [`3.1.1` -> `3.1.2`](https://renovatebot.com/diffs/npm/@vitest%2fui/3.1.1/3.1.2) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | devDependencies | patch | | [app-builder-lib](https://redirect.github.com/electron-userland/electron-builder) ([source](https://redirect.github.com/electron-userland/electron-builder/tree/HEAD/packages/app-builder-lib)) | [`26.0.13` -> `26.0.14`](https://renovatebot.com/diffs/npm/app-builder-lib/26.0.13/26.0.14) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | devDependencies | patch | | [browser-fs-access](https://redirect.github.com/GoogleChromeLabs/browser-fs-access) | [`^0.35.0` -> `^0.37.0`](https://renovatebot.com/diffs/npm/browser-fs-access/0.35.0/0.37.0) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | dependencies | minor | | [bullmq](https://bullmq.io/) ([source](https://redirect.github.com/taskforcesh/bullmq)) | [`5.51.0` -> `5.51.1`](https://renovatebot.com/diffs/npm/bullmq/5.51.0/5.51.1) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | dependencies | patch | | [cc](https://redirect.github.com/rust-lang/cc-rs) | `1.2.19` -> `1.2.20` | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | build-dependencies | patch | | [clap](https://redirect.github.com/clap-rs/clap) | `4.5.36` -> `4.5.37` | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | workspace.dependencies | patch | | [file-type](https://redirect.github.com/sindresorhus/file-type) | [`20.4.1` -> `20.5.0`](https://renovatebot.com/diffs/npm/file-type/20.4.1/20.5.0) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | dependencies | minor | | [gradle](https://gradle.org) ([source](https://redirect.github.com/gradle/gradle)) | `8.13` -> `8.14` | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | | minor | | [graphql](https://redirect.github.com/graphql/graphql-js) | [`16.10.0` -> `16.11.0`](https://renovatebot.com/diffs/npm/graphql/16.10.0/16.11.0) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | dependencies | minor | | [graphql](https://redirect.github.com/graphql/graphql-js) | [`16.10.0` -> `16.11.0`](https://renovatebot.com/diffs/npm/graphql/16.10.0/16.11.0) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | devDependencies | minor | | [lib0](https://crates.io/crates/lib0) | `0.16.5` -> `0.16.10` | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | workspace.dependencies | patch | | [lucide-react](https://lucide.dev) ([source](https://redirect.github.com/lucide-icons/lucide/tree/HEAD/packages/lucide-react)) | [`^0.488.0` -> `^0.503.0`](https://renovatebot.com/diffs/npm/lucide-react/0.488.0/0.503.0) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | dependencies | minor | | [objc2-foundation](https://redirect.github.com/madsmtm/objc2) | `0.3.0` -> `0.3.1` | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | workspace.dependencies | patch | | [playwright](https://playwright.dev) ([source](https://redirect.github.com/microsoft/playwright)) | [`=1.51.1` -> `=1.52.0`](https://renovatebot.com/diffs/npm/playwright/1.51.1/1.52.0) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | devDependencies | minor | | [rand](https://rust-random.github.io/book) ([source](https://redirect.github.com/rust-random/rand)) | `0.9.0` -> `0.9.1` | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | dependencies | patch | | [rand](https://rust-random.github.io/book) ([source](https://redirect.github.com/rust-random/rand)) | `0.9.0` -> `0.9.1` | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | workspace.dependencies | patch | | [react-resizable-panels](https://redirect.github.com/bvaughn/react-resizable-panels) | [`2.1.8` -> `2.1.9`](https://renovatebot.com/diffs/npm/react-resizable-panels/2.1.8/2.1.9) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | dependencies | patch | | [sqlx](https://redirect.github.com/launchbadge/sqlx) | `0.8.4` -> `0.8.5` | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | workspace.dependencies | patch | | [tldts](https://redirect.github.com/remusao/tldts) | [`7.0.3` -> `7.0.4`](https://renovatebot.com/diffs/npm/tldts/7.0.3/7.0.4) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | dependencies | patch | | [vitest](https://redirect.github.com/vitest-dev/vitest) ([source](https://redirect.github.com/vitest-dev/vitest/tree/HEAD/packages/vitest)) | [`3.1.1` -> `3.1.2`](https://renovatebot.com/diffs/npm/vitest/3.1.1/3.1.2) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | devDependencies | patch | | [yrs](https://redirect.github.com/y-crdt/y-crdt) | `=0.23.0` -> `=0.23.1` | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | dependencies | patch | | [yrs](https://redirect.github.com/y-crdt/y-crdt) | `0.23.0` -> `0.23.1` | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | workspace.dependencies | patch | | com.google.firebase:firebase-bom | `33.12.0` -> `33.13.0` | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | dependencies | minor | | [androidx.datastore:datastore-preferences](https://developer.android.com/jetpack/androidx/releases/datastore#1.1.5) ([source](https://cs.android.com/androidx/platform/frameworks/support)) | `1.1.4` -> `1.1.5` | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | dependencies | patch | | [androidx.compose:compose-bom](https://developer.android.com/jetpack) | `2025.04.00` -> `2025.04.01` | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | dependencies | patch | --- ### Release Notes <details> <summary>vercel/ai (@​ai-sdk/openai)</summary> ### [`v1.3.20`](https://redirect.github.com/vercel/ai/releases/tag/%40ai-sdk/openai%401.3.20) [Compare Source](https://redirect.github.com/vercel/ai/compare/@ai-sdk/openai@1.3.19...@ai-sdk/openai@1.3.20) ##### Patch Changes - [`dd5450e`](https://redirect.github.com/vercel/ai/commit/dd5450e): feat(provider/openai): add o3 & o4-mini with developer systemMessageMode </details> <details> <summary>aws/aws-sdk-js-v3 (@​aws-sdk/client-s3)</summary> ### [`v3.797.0`](https://redirect.github.com/aws/aws-sdk-js-v3/blob/HEAD/clients/client-s3/CHANGELOG.md#37970-2025-04-25) [Compare Source](https://redirect.github.com/aws/aws-sdk-js-v3/compare/v3.796.0...v3.797.0) **Note:** Version bump only for package [@​aws-sdk/client-s3](https://redirect.github.com/aws-sdk/client-s3) </details> <details> <summary>aws/aws-sdk-js-v3 (@​aws-sdk/s3-request-presigner)</summary> ### [`v3.797.0`](https://redirect.github.com/aws/aws-sdk-js-v3/blob/HEAD/packages/s3-request-presigner/CHANGELOG.md#37970-2025-04-25) [Compare Source](https://redirect.github.com/aws/aws-sdk-js-v3/compare/v3.796.0...v3.797.0) **Note:** Version bump only for package [@​aws-sdk/s3-request-presigner](https://redirect.github.com/aws-sdk/s3-request-presigner) </details> <details> <summary>napi-rs/napi-rs (@​napi-rs/cli)</summary> ### [`v3.0.0-alpha.78`](https://redirect.github.com/napi-rs/napi-rs/compare/@napi-rs/cli@3.0.0-alpha.77...@napi-rs/cli@3.0.0-alpha.78) [Compare Source](https://redirect.github.com/napi-rs/napi-rs/compare/@napi-rs/cli@3.0.0-alpha.77...@napi-rs/cli@3.0.0-alpha.78) </details> <details> <summary>microsoft/playwright (@​playwright/test)</summary> ### [`v1.52.0`](https://redirect.github.com/microsoft/playwright/compare/v1.51.1...471930b1ceae03c9e66e0eb80c1364a1a788e7db) [Compare Source](https://redirect.github.com/microsoft/playwright/compare/v1.51.1...v1.52.0) </details> <details> <summary>toeverything/design (@​toeverything/theme)</summary> ### [`v1.1.14`](https://redirect.github.com/toeverything/design/compare/1.1.13...1.1.14) [Compare Source](https://redirect.github.com/toeverything/design/compare/1.1.13...1.1.14) </details> <details> <summary>vitest-dev/vitest (@​vitest/browser)</summary> ### [`v3.1.2`](https://redirect.github.com/vitest-dev/vitest/releases/tag/v3.1.2) [Compare Source](https://redirect.github.com/vitest-dev/vitest/compare/v3.1.1...v3.1.2) ##### 🐞 Bug Fixes - Add global `chai` variable in `vitest/globals` (fix: [#​7474](https://redirect.github.com/vitest-dev/vitest/issues/7474)) - by [@​Jay-Karia](https://redirect.github.com/Jay-Karia) in [https://github.com/vitest-dev/vitest/issues/7771](https://redirect.github.com/vitest-dev/vitest/issues/7771) and [https://github.com/vitest-dev/vitest/issues/7474](https://redirect.github.com/vitest-dev/vitest/issues/7474) [<samp>(d9297)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/d9297920) - Prevent modifying `test.exclude` when same object passed in `coverage.exclude` - by [@​AriPerkkio](https://redirect.github.com/AriPerkkio) in [https://github.com/vitest-dev/vitest/issues/7774](https://redirect.github.com/vitest-dev/vitest/issues/7774) [<samp>(c3751)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/c375101d) - Fix already hoisted mock - by [@​hi-ogawa](https://redirect.github.com/hi-ogawa) in [https://github.com/vitest-dev/vitest/issues/7815](https://redirect.github.com/vitest-dev/vitest/issues/7815) [<samp>(773b1)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/773b10e0) - Fix test.scoped inheritance - by [@​hi-ogawa](https://redirect.github.com/hi-ogawa) in [https://github.com/vitest-dev/vitest/issues/7814](https://redirect.github.com/vitest-dev/vitest/issues/7814) [<samp>(db6c3)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/db6c3bcc) - Remove pointer-events-none after resizing the left panel - by [@​alexprudhomme](https://redirect.github.com/alexprudhomme) in [https://github.com/vitest-dev/vitest/issues/7811](https://redirect.github.com/vitest-dev/vitest/issues/7811) [<samp>(a7e77)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/a7e773bd) - Default to run mode when stdin is not a TTY - by [@​kentonv](https://redirect.github.com/kentonv), [@​hi-ogawa](https://redirect.github.com/hi-ogawa) and [@​sheremet-va](https://redirect.github.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/7673](https://redirect.github.com/vitest-dev/vitest/issues/7673) [<samp>(6358f)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/6358f216) - Use happy-dom/jsdom types for `envionmentOptions` - by [@​hi-ogawa](https://redirect.github.com/hi-ogawa) in [https://github.com/vitest-dev/vitest/issues/7795](https://redirect.github.com/vitest-dev/vitest/issues/7795) [<samp>(67430)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/67430083) - **browser**: - Fix transform error before browser server initialization - by [@​hi-ogawa](https://redirect.github.com/hi-ogawa) in [https://github.com/vitest-dev/vitest/issues/7783](https://redirect.github.com/vitest-dev/vitest/issues/7783) [<samp>(5f762)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/5f762ec5) - Fix mocking from outside of root - by [@​hi-ogawa](https://redirect.github.com/hi-ogawa) in [https://github.com/vitest-dev/vitest/issues/7789](https://redirect.github.com/vitest-dev/vitest/issues/7789) [<samp>(03f55)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/03f55d74) - Scale iframe for non ui case - by [@​hi-ogawa](https://redirect.github.com/hi-ogawa) in [https://github.com/vitest-dev/vitest/issues/6512](https://redirect.github.com/vitest-dev/vitest/issues/6512) [<samp>(c3374)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/c3374808) - **coverage**: - `await` profiler calls - by [@​AriPerkkio](https://redirect.github.com/AriPerkkio) in [https://github.com/vitest-dev/vitest/issues/7763](https://redirect.github.com/vitest-dev/vitest/issues/7763) [<samp>(795a6)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/795a6433) - Expose profiling timers - by [@​AriPerkkio](https://redirect.github.com/AriPerkkio) in [https://github.com/vitest-dev/vitest/issues/7820](https://redirect.github.com/vitest-dev/vitest/issues/7820) [<samp>(5652b)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/5652bf92) - **deps**: - Update all non-major dependencies - in [https://github.com/vitest-dev/vitest/issues/7765](https://redirect.github.com/vitest-dev/vitest/issues/7765) [<samp>(7c3df)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/7c3dfb17) - Update all non-major dependencies - in [https://github.com/vitest-dev/vitest/issues/7831](https://redirect.github.com/vitest-dev/vitest/issues/7831) [<samp>(15701)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/15701f5d) - **runner**: - Correctly call test hooks and teardown functions - by [@​sheremet-va](https://redirect.github.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/7775](https://redirect.github.com/vitest-dev/vitest/issues/7775) [<samp>(3c00c)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/3c00c875) - Show stacktrace on test timeout error - by [@​hi-ogawa](https://redirect.github.com/hi-ogawa) in [https://github.com/vitest-dev/vitest/issues/7799](https://redirect.github.com/vitest-dev/vitest/issues/7799) [<samp>(df33b)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/df33bba7) - **ui**: - Load panel sizes from storage on initial load - by [@​userquin](https://redirect.github.com/userquin) in [https://github.com/vitest-dev/vitest/issues/7265](https://redirect.github.com/vitest-dev/vitest/issues/7265) [<samp>(6555d)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/6555d61d) - **vite-node**: - Named export should overwrite export all - by [@​hi-ogawa](https://redirect.github.com/hi-ogawa) in [https://github.com/vitest-dev/vitest/issues/7846](https://redirect.github.com/vitest-dev/vitest/issues/7846) [<samp>(5ba0d)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/5ba0d914) - Add ERR_MODULE_NOT_FOUND code error if module cannot be loaded - by [@​sheremet-va](https://redirect.github.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/7776](https://redirect.github.com/vitest-dev/vitest/issues/7776) [<samp>(f9eac)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/f9eacbc5) ##### 🏎 Performance - **browser**: Improve browser parallelisation - by [@​sheremet-va](https://redirect.github.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/7665](https://redirect.github.com/vitest-dev/vitest/issues/7665) [<samp>(816a5)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/816a5c51) ##### [View changes on GitHub](https://redirect.github.com/vitest-dev/vitest/compare/v3.1.1...v3.1.2) </details> <details> <summary>electron-userland/electron-builder (app-builder-lib)</summary> ### [`v26.0.14`](https://redirect.github.com/electron-userland/electron-builder/blob/HEAD/packages/app-builder-lib/CHANGELOG.md#26014) [Compare Source](https://redirect.github.com/electron-userland/electron-builder/compare/v26.0.13...v26.0.14) ##### Patch Changes - [#​9032](https://redirect.github.com/electron-userland/electron-builder/pull/9032) [`3d65267a`]( |
||
|
|
d6ab958e15 |
feat(editor): root block extension (#12063)
Closes: BS-3202 <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit - **New Features** - Introduced new root block store and view extensions, enhancing modularity and integration options for root block functionality. - Exported the EdgelessLocker class for broader usage. - **Improvements** - Updated export paths for root block modules, enabling clearer and more flexible module access. - Enhanced view extension setup to better tailor user interface and interactions based on context. - **Removals** - Removed legacy migrating store and view extension logic, streamlining extension management and reducing unused code. - Removed multiple deprecated block specifications and common extension collections to simplify the codebase. - Deleted AI page root block specification, retaining only lifecycle watcher functionality. - **Chores** - Updated dependencies and project references to support new extension loader integration. <!-- end of auto-generated comment: release notes by coderabbit.ai --> |
||
|
|
b5edd7a6bb |
test(editor): reduce flaky test in turbo renderer (#12053)
Flaky source: https://github.com/toeverything/AFFiNE/actions/runs/14708000170/job/41272973259 <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit - **Tests** - Standardized test wait durations to 16ms for improved consistency across viewport turbo renderer tests. <!-- end of auto-generated comment: release notes by coderabbit.ai --> |
||
|
|
34039bc7d8 |
refactor(editor): use default fallback placeholder for turbo renderer (#12059)
Based on this PR, all block types support zooming placeholder now.  <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit - **Improvements** - Enhanced layout rendering accuracy for non-root nodes, leading to more precise placement and sizing. - Simplified placeholder painting logic for improved consistency, with all nodes now displayed using a color based on their depth. <!-- end of auto-generated comment: release notes by coderabbit.ai --> |
||
|
|
0f87136fd7 |
refactor(editor): file size limit service (#12026)
Closes: [BS-3359](https://linear.app/affine-design/issue/BS-3359/重构-filesizelimitservice-支持-handle-文件超出限制) <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit - **New Features** - Added an "Upgrade" button to attachment blocks that appears when file size limits are exceeded, enabling users to view storage plans and upgrade. - **Refactor** - Unified file size limit handling across attachments and images for consistency. - Redesigned file size limit service with improved integration and dependency injection. - **Chores** - Updated service registrations and dependency management for file size limit enforcement. - Integrated a new file size limit extension that triggers storage plan dialogs and tracking events on limit exceedance. <!-- end of auto-generated comment: release notes by coderabbit.ai --> |
||
|
|
7e4af90c03 |
refactor(editor): cleanup dead code (#12049)
<!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit - **Refactor** - Removed internal utilities related to connector management and tree structure traversal. No changes to user-facing features or functionality. <!-- end of auto-generated comment: release notes by coderabbit.ai --> |
||
|
|
f5f7cbb105 | fix(server): read the .env file on time (#12051) | ||
|
|
83670ab335 |
feat(editor): add experimental feature citation (#11984)
Closes: [BS-3122](https://linear.app/affine-design/issue/BS-3122/footnote-definition-adapter-适配) Closes: [BS-3123](https://linear.app/affine-design/issue/BS-3123/几个-block-card-view-适配-footnote-态) <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit - **New Features** - Introduced a new citation card component and web element for displaying citations. - Added support for citation-style rendering in attachment, bookmark, and linked document blocks. - Enabled citation parsing from footnote definitions in markdown for attachments, bookmarks, and linked docs. - Added a feature flag to enable or disable citation features. - Provided new toolbar logic to disable downloads for citation-style attachments. - **Improvements** - Updated block models and properties to support citation identifiers. - Added localization and settings for the citation experimental feature. - Enhanced markdown adapters to recognize and process citation footnotes. - Included new constants and styles for citation card display. - **Bug Fixes** - Ensured readonly state is respected in block interactions and rendering for citation blocks. - **Documentation** - Added exports and effects for new citation components and features. - **Tests** - Updated snapshots to include citation-related properties in block data. <!-- end of auto-generated comment: release notes by coderabbit.ai --> |
||
|
|
a326eac1bb |
fix(electron): shared-worker api binding (#11991)
<!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit - **New Features** - Improved security by adding cross-origin isolation headers to HTTP responses in the desktop app. - **Bug Fixes** - Enhanced reliability of worker connections by ensuring workers are fully loaded before establishing communication. <!-- end of auto-generated comment: release notes by coderabbit.ai --> |
||
|
|
8b402dd49a |
fix(editor): improve viewport of surface ref block (#12014)
Close [BS-3339](https://linear.app/affine-design/issue/BS-3339/一个frame插入到page之后大的离谱) <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit - **Improvements** - Enhanced the accuracy and responsiveness of viewport and reference content rendering for surface references. - Adjusted padding for a more consistent viewing experience. - Improved handling of referenced elements to ensure smoother updates and display. <!-- end of auto-generated comment: release notes by coderabbit.ai --> |
||
|
|
e96fcf0c35 | refactor(editor): remove page root service (#12048) | ||
|
|
4c84e6bac7 |
feat(editor): gfx link extension (#12046)
Closes: BS-3368 <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit - **New Features** - Introduced a new link tool extension, enabling enhanced link-related functionality within the edgeless workspace. - Added a new view extension for link tools, improving integration and usability in edgeless mode. - **Chores** - Added a new package for link tool functionality with appropriate dependencies and exports. - Registered new custom elements for edgeless toolbars and link tools to support modular UI components. - Updated project configurations and workspace dependencies to include the new link tool module. - **Refactor** - Removed unused quick tool exports and toolbar component registrations to streamline the edgeless extension codebase. <!-- end of auto-generated comment: release notes by coderabbit.ai --> |
||
|
|
be28038e94 |
perf(editor): fallback to placeholder for canvas text (#12033)
### TL;DR For canvas elements, this PR adds placeholders during zooming operations to improve performance.  ### What changed? - Implemented placeholder rendering during zooming operations in the canvas renderer, but not only DOM. - Added a `forceFullRender` property to the `GfxCompatibleInterface` to allow elements to opt out of placeholder rendering - Set `forceFullRender = true` for connectors to ensure they always render properly, even during zooming - Connected the turbo renderer to the viewport's zooming state to automatically switch between full and placeholder rendering ### Why make this change? Rendering complex elements during zooming operations can cause performance issues and make the UI feel sluggish. Rendering connector label also leads to high cost DOM `set font` delays.  The turbo renderer improves performance by displaying simple placeholders for elements during zooming, while still rendering critical elements like connectors fully. This creates a smoother user experience while maintaining essential visual information. <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit - **New Features** - Introduced a feature-flag-controlled "turbo" rendering mode that displays placeholder graphics during zooming for improved performance. - Added the ability to override placeholder rendering for specific elements, ensuring full rendering when required. - **Bug Fixes** - Enhanced rendering logic to ensure connectors always render fully, even during zoom operations. - **Documentation** - Updated API documentation to reflect new properties related to rendering behavior. - **Tests** - Improved tests to verify correct rendering behavior for connectors. <!-- end of auto-generated comment: release notes by coderabbit.ai --> |
||
|
|
d82d37b53d |
feat(editor): add page dragging area widget extension (#12045)
Closes: BS-3364 <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit - **New Features** - Introduced a new "Page Dragging Area" widget, enabling enhanced block selection and drag area detection within the user interface. - Added utilities for more precise block selection based on rectangular selection areas. - **Improvements** - Integrated the new widget into the view extension system for consistent behavior across supported views. - Enhanced clipboard handling with comprehensive adapter configurations for various data types. - **Refactor** - Streamlined widget registration and block selection logic for improved maintainability and modularity. - Removed legacy widget exports and registrations to centralize widget management. - **Chores** - Updated workspace and TypeScript configurations to support the new widget module. <!-- end of auto-generated comment: release notes by coderabbit.ai --> |
||
|
|
f177c64ca1 |
chore: bump up electron version to v36 (#12047)
This PR contains the following updates: | Package | Change | Age | Adoption | Passing | Confidence | |---|---|---|---|---|---| | [electron](https://redirect.github.com/electron/electron) | [`^35.0.0` -> `^36.0.0`](https://renovatebot.com/diffs/npm/electron/35.2.1/36.0.0) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | --- ### Release Notes <details> <summary>electron/electron (electron)</summary> ### [`v36.0.0`](https://redirect.github.com/electron/electron/releases/tag/v36.0.0): electron v36.0.0 [Compare Source](https://redirect.github.com/electron/electron/compare/v35.2.1...v36.0.0) ### Release Notes for v36.0.0 #### Fixes - Fixed `electron.shell.openExternal` and `electron.shell.openPath` to honor user-defined system defaults on Linux. [#​46788](https://redirect.github.com/electron/electron/pull/46788) <span style="font-size:small;">(Also in [33](https://redirect.github.com/electron/electron/pull/46787), [34](https://redirect.github.com/electron/electron/pull/46791), [35](https://redirect.github.com/electron/electron/pull/46789))</span> - Fixed `getNativeWindowHandle()` crash that affected 36 betas on macOS. [#​46750](https://redirect.github.com/electron/electron/pull/46750) - Fixed a possible crash when using `navigator.bluetooth.requestDevice` and the `select-bluetooth-device` event. [#​46782](https://redirect.github.com/electron/electron/pull/46782) <span style="font-size:small;">(Also in [34](https://redirect.github.com/electron/electron/pull/46783), [35](https://redirect.github.com/electron/electron/pull/46784))</span> - Fixed a potential crash when closing a window with child windows. [#​46773](https://redirect.github.com/electron/electron/pull/46773) <span style="font-size:small;">(Also in [34](https://redirect.github.com/electron/electron/pull/46775), [35](https://redirect.github.com/electron/electron/pull/46774))</span> - Fixed an issue where the backgroundMaterial feature did not work in a frameless window on initial window creation. [#​46792](https://redirect.github.com/electron/electron/pull/46792) - Fixed build error with `enable_electron_extensions=false`. [#​46842](https://redirect.github.com/electron/electron/pull/46842) <span style="font-size:small;">(Also in [35](https://redirect.github.com/electron/electron/pull/46840))</span> - Fixed crash when renderer process crashes while webview is reloading. [#​46768](https://redirect.github.com/electron/electron/pull/46768) <span style="font-size:small;">(Also in [34](https://redirect.github.com/electron/electron/pull/46770), [35](https://redirect.github.com/electron/electron/pull/46769))</span> - Fixed documentation to mark `Window.autoHideMenuBar` as supported on Linux and Windows. [#​46830](https://redirect.github.com/electron/electron/pull/46830) <span style="font-size:small;">(Also in [35](https://redirect.github.com/electron/electron/pull/46829))</span> - Fixed the border style of windows with vibrancy on macOS. [#​46771](https://redirect.github.com/electron/electron/pull/46771) <span style="font-size:small;">(Also in [35](https://redirect.github.com/electron/electron/pull/46772))</span> #### Other Changes - Updated Chromium to 136.0.7103.48. [#​46756](https://redirect.github.com/electron/electron/pull/46756) </details> --- ### Configuration 📅 **Schedule**: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined). 🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied. ♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox. 🔕 **Ignore**: Close this PR and you won't be reminded about this update again. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box --- This PR was generated by [Mend Renovate](https://mend.io/renovate/). View the [repository job log](https://developer.mend.io/github/toeverything/AFFiNE). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzOS4yNTcuMyIsInVwZGF0ZWRJblZlciI6IjM5LjI1Ny4zIiwidGFyZ2V0QnJhbmNoIjoiY2FuYXJ5IiwibGFiZWxzIjpbImRlcGVuZGVuY2llcyJdfQ==--> |
||
|
|
362f89b669 |
feat(editor): adjust attachment block UI (#11763)
Closes: [BS-3143](https://linear.app/affine-design/issue/BS-3143/更新-attachment-错误样式) Closes: [BS-3341](https://linear.app/affine-design/issue/BS-3341/attachment-select状态ui调整) <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit - **New Features** - Improved attachment block with unified reactive state handling for loading, errors, and downloads. - Enhanced card layouts with modular rendering and dynamic buttons based on state. - **Bug Fixes** - Fixed UI state for "Embed view" action, now correctly disabled when not embedded. - Resolved attachment card styling issues and text overflow with new utility classes. - **Refactor** - Streamlined attachment block rendering and state management for better performance and maintainability. - Updated toolbar configuration for consistent parameter naming. - Simplified embedded and open methods for improved clarity. - Made internal functions private to reduce exported API surface. - **Chores** - Removed unused icon export and legacy upload tracking functions. - Updated attachment utilities to use reactive state, added data refresh, and improved error handling. - Refined image dimension handling for consistent resizing behavior. - Improved test selectors to target focused attachment containers for better reliability. - Refactored CSS to separate container and card styling and adopt theme-based colors consistently. <!-- end of auto-generated comment: release notes by coderabbit.ai --> |
||
|
|
df565f2fbf |
refact(editor): clipboard config should be in foundation (#12038)
<!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit - **New Features** - Enhanced clipboard support with multiple adapter configurations for various MIME types, improving clipboard handling and compatibility. - **Refactor** - Relocated clipboard adapter configurations to a new location for better organization and maintainability. <!-- end of auto-generated comment: release notes by coderabbit.ai --> |
||
|
|
468db9f3eb |
feat(editor): edgeless zoom toolbar widget extension (#12037)
Closes: BS-3363 |
||
|
|
4e201ede17 |
feat(editor): viewport overlay widget extension (#12035)
Closes: BS-3360 <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit - **New Features** - Introduced a new viewport overlay widget, making it available as part of the workspace and enabling its integration into supported pages. - **Refactor** - Updated internal imports and exports to utilize the new viewport overlay widget package. - Streamlined widget registration and extension mechanisms for improved modularity. - **Chores** - Added configuration and project references to support the new viewport overlay widget package in the build system. <!-- end of auto-generated comment: release notes by coderabbit.ai --> |
||
|
|
d7be1b3424 |
fix(core): skip onboarding in e2e tests (#12044)
<!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit - **Chores** - Updated test setup to automatically skip onboarding steps during environment initialization. - Simplified test utility methods by removing notification handling logic from chat panel and editor mode switching processes. <!-- end of auto-generated comment: release notes by coderabbit.ai --> |
||
|
|
d57b9372ae |
fix(editor): edgeless note duplicated from embed-doc should be above other elements (#12028)
Close [BS-3357](https://linear.app/affine-design/issue/BS-3357/duplicate-note-注意设置z轴的数据) <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit - **New Features** - Duplicating an edgeless note now ensures the new note appears above other elements in the stacking order. - **Tests** - Added a test to verify that duplicated edgeless notes are rendered above existing elements. <!-- end of auto-generated comment: release notes by coderabbit.ai --> |
||
|
|
c555cca6a1 |
feat(core): use claude-3-7-sonnet as basic chat model (#12036)
Close [AI-59](https://linear.app/affine-design/issue/AI-59) <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit - **New Features** - Added support for two new providers, Anthropic and Exa, in test environments and configurations. - **Chores** - Updated workflow and test environment setup to include API keys for Anthropic and Exa providers. - **Refactor** - Changed the AI model used for the "Chat With AFFiNE AI" prompt to "claude-3-7-sonnet-20250219". <!-- end of auto-generated comment: release notes by coderabbit.ai --> |
||
|
|
4662ee8da7 |
chore: add crossorigin to resource tags (#12031)
<!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit - **New Features** - Added the crossorigin attribute to all CSS and JavaScript tags in generated HTML, improving compatibility for cross-origin resource loading. - **Tests** - Updated tests to verify the presence of the crossorigin attribute in script tags. <!-- end of auto-generated comment: release notes by coderabbit.ai --> |
||
|
|
21dc550b9d |
feat(server): add doc meta for ignored docs (#12021)
<!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit - **New Features** - Ignored documents in workspace embedding now display additional metadata, including document title, creation and update timestamps, and the names and avatars of users who created or updated the document. - **Enhancements** - The list of ignored documents provides richer information for easier identification and management within the workspace. <!-- end of auto-generated comment: release notes by coderabbit.ai --> |
||
|
|
9d21d13a5e |
chore: bump up eslint-plugin-unicorn version to v59 (#12013)
This PR contains the following updates: | Package | Change | Age | Adoption | Passing | Confidence | |---|---|---|---|---|---| | [eslint-plugin-unicorn](https://redirect.github.com/sindresorhus/eslint-plugin-unicorn) | [`^58.0.0` -> `^59.0.0`](https://renovatebot.com/diffs/npm/eslint-plugin-unicorn/58.0.0/59.0.0) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | --- ### Release Notes <details> <summary>sindresorhus/eslint-plugin-unicorn (eslint-plugin-unicorn)</summary> ### [`v59.0.0`](https://redirect.github.com/sindresorhus/eslint-plugin-unicorn/compare/v58.0.0...3838ec815057154a7fb4cd8257abfb554502ba2f) [Compare Source](https://redirect.github.com/sindresorhus/eslint-plugin-unicorn/compare/v58.0.0...v59.0.0) </details> --- ### Configuration 📅 **Schedule**: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined). 🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied. ♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox. 🔕 **Ignore**: Close this PR and you won't be reminded about this update again. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box --- This PR was generated by [Mend Renovate](https://mend.io/renovate/). View the [repository job log](https://developer.mend.io/github/toeverything/AFFiNE). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzOS4yNTcuMyIsInVwZGF0ZWRJblZlciI6IjM5LjI1Ny4zIiwidGFyZ2V0QnJhbmNoIjoiY2FuYXJ5IiwibGFiZWxzIjpbImRlcGVuZGVuY2llcyJdfQ==--> |
||
|
|
a61c5fd458 |
chore: bump up oxlint version to v0.16.8 (#12011)
This PR contains the following updates: | Package | Change | Age | Adoption | Passing | Confidence | |---|---|---|---|---|---| | [oxlint](https://oxc.rs) ([source](https://redirect.github.com/oxc-project/oxc/tree/HEAD/npm/oxlint)) | [`0.16.7` -> `0.16.8`](https://renovatebot.com/diffs/npm/oxlint/0.16.7/0.16.8) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | --- ### Release Notes <details> <summary>oxc-project/oxc (oxlint)</summary> ### [`v0.16.8`](https://redirect.github.com/oxc-project/oxc/releases/tag/oxlint_v0.16.8): oxlint v0.16.8 [Compare Source](https://redirect.github.com/oxc-project/oxc/compare/oxlint_v0.16.7...oxlint_v0.16.8) #### \[0.16.8] - 2025-04-27 ##### Features - [`53394a7`](https://redirect.github.com/oxc-project/oxc/commit/53394a7) linter: Add auto-fix for eslint/require-await ([#​10624](https://redirect.github.com/oxc-project/oxc/issues/10624)) (yefan) - [`6908bc3`](https://redirect.github.com/oxc-project/oxc/commit/6908bc3) linter: Add autofix for react/self-closing-comp ([#​10512](https://redirect.github.com/oxc-project/oxc/issues/10512)) (x6eull) - [`e228840`](https://redirect.github.com/oxc-project/oxc/commit/e228840) parser: Fast forward lexer to EOF if errors are encountered ([#​10579](https://redirect.github.com/oxc-project/oxc/issues/10579)) (Boshen) ##### Bug Fixes - [`966fb03`](https://redirect.github.com/oxc-project/oxc/commit/966fb03) editor: Fix memory leaks when server or watchers restarted ([#​10628](https://redirect.github.com/oxc-project/oxc/issues/10628)) (Sysix) - [`f3eac51`](https://redirect.github.com/oxc-project/oxc/commit/f3eac51) language_server: Fix max integer values for range position ([#​10623](https://redirect.github.com/oxc-project/oxc/issues/10623)) (Alexander S.) - [`d309e07`](https://redirect.github.com/oxc-project/oxc/commit/d309e07) language_server: Fix panics when paths contains specials characters like `[` or `]` ([#​10622](https://redirect.github.com/oxc-project/oxc/issues/10622)) (Alexander S.) - [`91ce77a`](https://redirect.github.com/oxc-project/oxc/commit/91ce77a) language_server: Temporary ignore tests that panic on Windows ([#​10583](https://redirect.github.com/oxc-project/oxc/issues/10583)) (Yuji Sugiura) - [`723b4c6`](https://redirect.github.com/oxc-project/oxc/commit/723b4c6) linter: Cross_module of LintService not being enabled despite enabled import plugin ([#​10597](https://redirect.github.com/oxc-project/oxc/issues/10597)) (Ulrich Stark) - [`39adefe`](https://redirect.github.com/oxc-project/oxc/commit/39adefe) linter: Handle re-exporting of type correctly in `import/no-cycle` ([#​10606](https://redirect.github.com/oxc-project/oxc/issues/10606)) (Ulrich Stark) - [`e67901b`](https://redirect.github.com/oxc-project/oxc/commit/e67901b) linter: Incorrect fix for prefer start ends with ([#​10533](https://redirect.github.com/oxc-project/oxc/issues/10533)) (camc314) - [`7c85ae7`](https://redirect.github.com/oxc-project/oxc/commit/7c85ae7) linter/no-empty-function: Support 'allow' option ([#​10605](https://redirect.github.com/oxc-project/oxc/issues/10605)) (Don Isaac) - [`9a02066`](https://redirect.github.com/oxc-project/oxc/commit/9a02066) oxlint: Current dir as arg ([#​9382](https://redirect.github.com/oxc-project/oxc/issues/9382)) (Ben Jones) - [`a9785e3`](https://redirect.github.com/oxc-project/oxc/commit/a9785e3) parser,linter: Consider typescript declarations for named exports ([#​10532](https://redirect.github.com/oxc-project/oxc/issues/10532)) (Ulrich Stark) ##### Performance - [`3c27d0d`](https://redirect.github.com/oxc-project/oxc/commit/3c27d0d) editor: Avoid sending `workspace/didChangeConfiguration` request when the server needs a restarts ([#​10550](https://redirect.github.com/oxc-project/oxc/issues/10550)) (Sysix) ##### Refactor - [`e903ba2`](https://redirect.github.com/oxc-project/oxc/commit/e903ba2) editor: Split Config to VSCodeConfig and WorkspaceConfig ([#​10572](https://redirect.github.com/oxc-project/oxc/issues/10572)) (Sysix) - [`f6c6969`](https://redirect.github.com/oxc-project/oxc/commit/f6c6969) language_server: Make linter independent of `Backend` ([#​10497](https://redirect.github.com/oxc-project/oxc/issues/10497)) (Sysix) - [`db05a15`](https://redirect.github.com/oxc-project/oxc/commit/db05a15) language_server: Do not request for worspace configuration when the client does not support it ([#​10507](https://redirect.github.com/oxc-project/oxc/issues/10507)) (Sysix) - [`9f9e0e5`](https://redirect.github.com/oxc-project/oxc/commit/9f9e0e5) language_server: Move code actions into own file ([#​10479](https://redirect.github.com/oxc-project/oxc/issues/10479)) (Sysix) ##### Testing - [`9f43a58`](https://redirect.github.com/oxc-project/oxc/commit/9f43a58) language_server: Fix broken tests in windows ([#​10600](https://redirect.github.com/oxc-project/oxc/issues/10600)) (Sysix) - [`8a2b250`](https://redirect.github.com/oxc-project/oxc/commit/8a2b250) linter: Fix incorrect test fixture for prefer-each ([#​10587](https://redirect.github.com/oxc-project/oxc/issues/10587)) (Boshen) </details> --- ### Configuration 📅 **Schedule**: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined). 🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied. ♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox. 🔕 **Ignore**: Close this PR and you won't be reminded about this update again. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box --- This PR was generated by [Mend Renovate](https://mend.io/renovate/). View the [repository job log](https://developer.mend.io/github/toeverything/AFFiNE). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzOS4yNTcuMyIsInVwZGF0ZWRJblZlciI6IjM5LjI1Ny4zIiwidGFyZ2V0QnJhbmNoIjoiY2FuYXJ5IiwibGFiZWxzIjpbImRlcGVuZGVuY2llcyJdfQ==--> |
||
|
|
cf5574caf6 |
refactor(core): use the websearch parameters passed in by the front-end (#11989)
Support [AI-60](https://linear.app/affine-design/issue/AI-60). <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit - **Refactor** - Updated naming conventions for the web search tool to ensure consistency across AI chat features. - Simplified internal handling of web search tool options for a more streamlined experience. - Unified parameter naming from "mustSearch" to "webSearch" across AI chat inputs and actions. - **Chores** - Removed unused configuration options related to web search from prompt settings. - Added support for enabling or disabling web search via new parameters in chat requests. <!-- end of auto-generated comment: release notes by coderabbit.ai --> |
||
|
|
e366f69707 | build(ios): remove build mac(design for iPad) destination (#11983) | ||
|
|
85e40e4026 |
refactor(editor): simplify attachment and image upload handling (#11987)
Closes: [BS-3303](https://linear.app/affine-design/issue/BS-3303/改進-pack-attachment-props-流程) <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit - **New Features** - Enhanced attachment and image uploads with improved file size validation and clearer notifications. - Upload telemetry tracking added for attachments to monitor upload success or failure. - **Refactor** - Streamlined and unified the process of adding attachments and images, making uploads more reliable and efficient. - Parameter names updated for clarity across attachment and image insertion features. - **Documentation** - Updated API documentation to reflect parameter name changes for consistency. <!-- end of auto-generated comment: release notes by coderabbit.ai -->v0.22.0-canary.1 |
||
|
|
3fdab1bec6 |
feat(editor): add bs affine foundation module (#12012)
<!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit - **New Features** - Introduced the Affine Foundation package, providing a centralized layer for initializing core UI effects, custom elements, and foundational services. - Added new foundational store and view extensions to improve core service registration and UI effect setup. - **Refactor** - Streamlined and reorganized block, store, and view extension arrays to rely on the new foundation layer, reducing duplication and simplifying extension management. - Removed redundant or now-centralized services and UI effects from existing modules. - **Chores** - Updated configuration files and workspace dependencies to support the new Affine Foundation package. <!-- end of auto-generated comment: release notes by coderabbit.ai --> |
||
|
|
08d1b8dcbf |
fix(core): better search result (#12015)
<!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit - **Refactor** - Simplified search menu logic by removing unnecessary filtering and parameters from menu item generation. No changes to visible functionality. - **Bug Fixes** - Improved search index matching to retrieve all relevant entries, enhancing search accuracy. <!-- end of auto-generated comment: release notes by coderabbit.ai --> |
||
|
|
e9003dec9e |
feat(editor): add blobState$ to BlobEngine (#11756)
Closes: [BS-3137](https://linear.app/affine-design/issue/BS-3137/在-bs-添加-blobstate-接口) <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit - **New Features** - Introduced real-time status tracking for file upload and download operations, allowing users to monitor progress and errors more effectively. - **Improvements** - Enhanced icon display for attachments, providing a refreshed visual experience. - Improved update frequency and accuracy for file synchronization status indicators. - **Bug Fixes** - Refined internal logic for filtering status updates, ensuring more precise feedback during file operations. <!-- end of auto-generated comment: release notes by coderabbit.ai --> |
||
|
|
d7b1819149 |
refactor(editor): move transcription block model to ai (#12010)
<!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit - **Refactor** - Updated and reorganized import paths for transcription block models and types to improve module structure and maintainability. - **Chores** - Removed deprecated transcription block schema and related exports from core libraries. - Registered transcription block schema directly within the workspace schema for improved schema management. - **Bug Fixes** - Ensured consistent registration and availability of transcription block features across relevant modules. <!-- end of auto-generated comment: release notes by coderabbit.ai --> |
||
|
|
81b439c4e1 |
feat(editor): add gfx pointer extension (#12006)
<!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit - **New Features** - Introduced a new pointer graphics module with tools and quick tool integration for edgeless surfaces. - Added a quick tool button for pointer interactions in edgeless mode. - Exposed new extension points for pointer graphics and effects. - **Improvements** - Integrated pointer graphics as a dependency into related packages. - Enhanced toolbar context to support additional surface alignment modes. - Added conditional clipboard configuration registrations for edgeless contexts across multiple block types. - **Removals** - Removed legacy tool and effect definitions and related quick tool exports from edgeless components. - Streamlined extension arrays and removed unused exports for a cleaner codebase. - Deleted obsolete utility functions and component registrations. - **Chores** - Updated workspace and TypeScript project references to include the new pointer graphics module. <!-- end of auto-generated comment: release notes by coderabbit.ai --> |
||
|
|
59d4942d9b |
feat(editor): slash menu and toolbar widget extensions (#12002)
Closes: BS-3226 Closes: BS-3227 Closes: BS-3228 Closes: BS-3229 <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit - **New Features** - Introduced new view extensions for remote selection, scroll anchoring, slash menu, and toolbar widgets, enhancing customization and integration capabilities. - **Refactor** - Updated export paths and module structure for widget-related packages to improve modularity and accessibility. - Reorganized internal dependencies and removed redundant widget imports from core block packages. - Refactored edgeless-related widgets and components to use a standardized scope interface for improved context and state management. - Centralized graphics controller access and slot management through standardized context objects. - **Chores** - Added and updated dependencies to streamline extension loading and workspace management. <!-- end of auto-generated comment: release notes by coderabbit.ai --> |
||
|
|
de01692414 | test(server): do not use specific date time in tests (#12004) | ||
|
|
c3f6bea446 |
feat(editor): linked doc widget extension (#12001)
Closes: BS-3225 |
||
|
|
6e76a3e593 |
feat(editor): add frame title and mobile toolbar widget extension (#11996)
Closes: BS-3223 Closes: BS-3224 <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit - **New Features** - Introduced new view extensions for frame title and keyboard toolbar widgets with conditional registration based on context and environment. - Enhanced widget integration by adding explicit exports for view components. - **Chores** - Updated export paths and package dependencies to improve modularity and compatibility. - Removed deprecated widget dependencies and related imports from core packages. <!-- end of auto-generated comment: release notes by coderabbit.ai --> |
||
|
|
25a2b94a43 |
feat(editor): edgeless auto connect widget extension (#11990)
Closes: BS-3221 Closes: BS-3222 <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit - **New Features** - Introduced extensions that conditionally register edgeless auto-connect and toolbar widgets with associated effects based on the view context. - Added new exports for edgeless auto-connect and toolbar widget views, making them available for external use. - **Chores** - Updated dependencies and project references to include the extension loader for improved module integration. - Refined workspace configuration to reflect new package dependencies. - **Refactor** - Streamlined registration and effect logic by removing legacy integration points for edgeless auto-connect and toolbar widgets. - Reorganized widget export paths to a more modular directory structure. - **Bug Fixes** - Disabled pointer events on the edgeless navigator black background to prevent interaction interference. <!-- end of auto-generated comment: release notes by coderabbit.ai --> |
||
|
|
521ca99142 |
chore: bump up all non-major npm dependencies (#11693)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com> |
||
|
|
dc7bbddce1 |
fix(server): filter out attachment in pplx provider (#11986)
<!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit - **Bug Fixes** - Improved handling of messages without attachments, ensuring a placeholder is shown when content is empty and attachments are omitted. - **New Features** - Added the ability to selectively include or exclude attachments in message processing. <!-- end of auto-generated comment: release notes by coderabbit.ai --> |
||
|
|
4887e1d612 |
refactor(editor): improve footnote URL preprocessor (#11975)
Closes: [BS-3302](https://linear.app/affine-design/issue/BS-3302/處理-affine-中的-redos-風險) <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit - **Bug Fixes** - Improved handling of footnote definitions with varied spacing, special characters, and malformed or incomplete entries, ensuring more reliable processing and display. - **New Features** - Introduced advanced parsing for footnote URLs to improve accuracy and validation of footnote content. - **Tests** - Expanded test coverage for footnote processing to include additional edge cases and mixed content scenarios, enhancing overall robustness. <!-- end of auto-generated comment: release notes by coderabbit.ai --> |
||
|
|
49c57ca649 |
fix(server): query workspace embed files (#11982)
<!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit - **New Features** - Expanded file chunk matching to include both context and workspace file embeddings, providing broader and more relevant search results. - **Improvements** - Enhanced result ranking by introducing a re-ranking step for combined embedding matches, improving the relevance of returned file chunks. - Adjusted file count reporting to reflect the total number of workspace files instead of ignored documents for more accurate workspace file statistics. - Renamed and streamlined workspace file management methods for clearer and more consistent API usage. - **Bug Fixes** - Prevented embedding similarity queries when embedding is disabled for a workspace, improving system behavior consistency. - **Tests** - Added comprehensive tests to verify workspace embedding management, including enabling, matching, and disabling embedding functionality. <!-- end of auto-generated comment: release notes by coderabbit.ai --> |
||
|
|
0abe65653b |
chore(server): sort data migrations (#11979)
<!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit - **Bug Fixes** - Improved reliability of migration processing by ensuring migrations are now executed in a defined sequence based on numeric order extracted from their names. Errors will be shown if migration names do not include a valid numeric order suffix. <!-- end of auto-generated comment: release notes by coderabbit.ai --> |
||
|
|
f0e2361e81 |
feat(server): support importing users with password (#11978)
<!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit - **New Features** - Added support for an optional password field when creating a new user via the user creation form or API. <!-- end of auto-generated comment: release notes by coderabbit.ai --> |
||
|
|
0da5ef28d6 |
feat(core): add button supports uploading images (#11943)
Close [AI-81](https://linear.app/affine-design/issue/AI-81).  <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit - **New Features** - Added support for uploading and handling multiple images in the AI chat interface, with a maximum image limit enforced. - Chat assistant avatar now visually indicates different statuses, including a transmitting animation. - **Improvements** - Enhanced file upload experience by allowing batch image uploads and clearer notifications for files exceeding size limits. - Stronger status handling for chat assistant messages, improving reliability and user feedback. - Unified image count limit across chat input components using a shared constant. - **Bug Fixes** - Improved consistency in how image limits are enforced across chat components. <!-- end of auto-generated comment: release notes by coderabbit.ai --> |
||
|
|
4c5e3a875e |
feat(core): calendar integration setting (#11882)
close AF-2503 |
||
|
|
f5ac0aee97 |
feat(core): events list in journal calendar (#11873)
close AF-2505 <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit - **New Features** - Introduced calendar event integration in the journal detail page, allowing users to view and interact with calendar events for a selected date. - Added the ability to create new linked documents from calendar events directly within the journal interface. - **Improvements** - Enhanced calendar integration with support for all-day and timed events, improved event grouping by date, and real-time updates. - Added new English localization entries for calendar event labels. - **Bug Fixes** - Improved URL handling for calendar subscriptions, ensuring better compatibility and error feedback. - **Style** - Added new styles for calendar event components to ensure a consistent and user-friendly appearance. <!-- end of auto-generated comment: release notes by coderabbit.ai --> |
||
|
|
4b7fddc32c |
feat(core): web-clipper integration entrance (#11883)
<!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit - **New Features** - Introduced a new "Web Clipper" integration, allowing users to import web pages into AFFiNE via a direct link to the Chrome Web Store. - **Improvements** - Integration cards can now display as clickable links or settings panels, depending on the integration. - **Localization** - Added English translations for the "Web Clipper" integration name and description. - **Style** - Improved card styling to ensure consistent text color, including for visited links. <!-- end of auto-generated comment: release notes by coderabbit.ai --> |