doouding
6959a2dab3
fix: peekable in edgeless mode ( #12271 )
...
Fixes [BS-3374](https://linear.app/affine-design/issue/BS-3374/ )
<!-- This is an auto-generated comment: release notes by coderabbit.ai -->
## Summary by CodeRabbit
- **New Features**
- Improved control over when the peek view is shown in "edgeless" editor mode, ensuring it only activates when interacting directly with the relevant component.
- **Bug Fixes**
- Prevented unintended peek view activation in "edgeless" mode when clicking outside the associated component.
- **Tests**
- Added end-to-end test verifying the peek view does not open when content is covered by a canvas element.
- **Chores**
- Added utility function to streamline creating synced pages in edgeless mode during tests.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2025-05-14 13:56:24 +00:00
doouding
491c944ac1
fix: drag handler hover rect state is not cleaned ( #11868 )
...
Fixes [BS-3261](https://linear.app/affine-design/issue/BS-3261/部分情况下-edgeless-dnd-响应区域有问题 )
<!-- This is an auto-generated comment: release notes by coderabbit.ai -->
## Summary by CodeRabbit
- **Documentation**
- Improved documentation for the drag handle by adding a description for the `force` parameter in the hide method.
- **Style**
- Minor code formatting adjustments with no impact on functionality.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2025-05-14 11:27:27 +00:00
Saul-Mirone
f2164e4d70
fix(editor): suface component can be null ( #12270 )
...
Closes: BS-3149
<!-- This is an auto-generated comment: release notes by coderabbit.ai -->
## Summary by CodeRabbit
- **Refactor**
- Improved internal handling of surface components across various tools, resulting in safer and more consistent access patterns.
- Enhanced code maintainability and reliability without altering any visible features or user workflows.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2025-05-14 08:37:11 +00:00
Yifeng Wang
9cabe03386
refactor(editor): add dom renderer entry for canvas element ( #12149 )
2025-05-14 16:22:16 +08:00
Flrande
6358249aea
feat(editor): update code block ui ( #12254 )
...
<!-- This is an auto-generated comment: release notes by coderabbit.ai -->
## Summary by CodeRabbit
- **New Features**
- Updated the code block toolbar to use a toggle switch for the "wrap" option, providing a more interactive user experience.
- **Style**
- Adjusted the height of the language selection button for consistent appearance.
- Refined code block container padding and increased spacing for line numbers to improve readability.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2025-05-14 07:19:09 +00:00
L-Sun
3ebed1d5a8
chore(editor): adjust size of synced doc ( #12163 )
...
Close [BS-3418](https://linear.app/affine-design/issue/BS-3418/折叠的embed-doc调整宽度时,会出现一个最小高度,不需要这个 )
<!-- This is an auto-generated comment: release notes by coderabbit.ai -->
## Summary by CodeRabbit
- **New Features**
- Improved resizing and folding interactions for embedded synced documents in edgeless mode, including dynamic height calculation and enhanced drag-handle styling.
- **Bug Fixes**
- Adjusted minimum height for synced document embeds to allow more compact display.
- Ensured consistent width settings across embed cards.
- **Tests**
- Added end-to-end tests covering folding, unfolding, and resizing behaviors for edgeless synced document embeds.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2025-05-14 05:17:42 +00:00
donteatfriedrice
26ece014f1
fix(editor): support relative image reference path when importing zip with images ( #12264 )
...
Closes: [BS-3385](https://linear.app/affine-design/issue/BS-3385/markdown类型的导入,支持media文件和md文件不在同目录的情况 )
<!-- This is an auto-generated comment: release notes by coderabbit.ai -->
## Summary by CodeRabbit
- **New Features**
- Added utility functions to resolve and normalize image file paths in markdown and HTML imports.
- Introduced middleware to provide full file path context during file import and transformation.
- Added new types for improved asset and file management in zip imports.
- **Refactor**
- Centralized and simplified image processing logic across HTML, Markdown, and Notion HTML adapters for improved maintainability.
- Enhanced type safety and clarity in file and asset handling during zip imports.
- **Tests**
- Added comprehensive tests for image file path resolution utility.
- **Documentation**
- Improved inline code comments explaining file path resolution logic.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2025-05-14 02:30:30 +00:00
zzj3720
a2a90df276
feat(editor): add grouping support for member property of the database block ( #12243 )
...
close: BS-3433
<!-- This is an auto-generated comment: release notes by coderabbit.ai -->
## Summary by CodeRabbit
- **New Features**
- Introduced advanced group-by configurations for database blocks with user membership support.
- Added a React hook for fetching and displaying user information in member-related components.
- Enabled dynamic user and membership data types in database properties.
- **Improvements**
- Replaced context-based service access with a dependency injection system for shared services and state.
- Enhanced type safety and consistency across group-by UI components and data handling.
- Centralized group data management with a new Group class and refined group trait logic.
- **Bug Fixes**
- Improved reliability and consistency in retrieving and rendering user and group information.
- **Style**
- Removed obsolete member selection styles for cleaner UI code.
- **Chores**
- Registered external group-by configurations via dependency injection.
- Refactored internal APIs for data sources, views, and group-by matchers to use service-based patterns.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2025-05-13 13:53:37 +00:00
fundon
e4f32cd61e
refactor(editor): replace-id middlware ( #12250 )
...
<!-- This is an auto-generated comment: release notes by coderabbit.ai -->
## Summary by CodeRabbit
- **Refactor**
- Improved the internal structure and clarity of ID handling during import processes, leading to more maintainable and modular code. No changes to user-facing functionality.
- **Chores**
- Enhanced type definitions for import events to improve code readability and maintainability. No impact on end-user experience.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2025-05-13 12:27:52 +00:00
doouding
08d6c5a97c
refactor(editor): rewrite resize and rotate ( #12054 )
...
### Changed
This pr split the old `edgeless-selected-rect` into four focused modules:
- `edgeless-selected-rect`: Provide an entry point for user operation on view layer only, no further logic here.
- `GfxViewInteractionExtension`: Allow you to plug in custom resize/rotate behaviors for block or canvas element. If you don’t register an extension, it falls back to the default behaviours.
- `InteractivityManager`: Provide the API that accepts resize/rotate requests, invokes any custom behaviors you’ve registered, tracks the lifecycle and intermediate state, then hands off to the math engine.
- `ResizeController`: A pure math engine that listens for pointer moves and pointer ups and calculates new sizes, positions, and angles. It doesn’t call any business APIs.
### Customizing an element’s resize/rotate behavior
Call `GfxViewInteractionExtension` with the element’s flavour or type plus a config object. In the config you can define:
- `resizeConstraint` (min/max width & height, lock ratio)
- `handleResize(context)` method that returns an object containing `beforeResize`、`onResizeStart`、`onResizeMove`、`onResizeEnd`
- `handleRotate(context)` method that returns an object containing `beforeRotate`、`onRotateStart`、`onRotateMove`、`onRotateEnd`
```typescript
import { GfxViewInteractionExtension } from '@blocksuite/std/gfx';
GfxViewInteractionExtension(
flavourOrElementType,
{
resizeConstraint: {
minWidth,
maxWidth,
lockRatio,
minHeight,
maxHeight
},
handleResize(context) {
return {
beforeResize(context) {},
onResizeStart(context) {},
onResizeMove(context) {},
onResizeEnd(context) {}
};
},
handleRotate(context) {
return {
beforeRotate(context) {},
onRotateStart(context) {},
onRotateMove(context) {},
onRotateEnd(context) {}
};
}
}
);
```
<!-- This is an auto-generated comment: release notes by coderabbit.ai -->
## Summary by CodeRabbit
- **New Features**
- Added interaction extensions for edgeless variants of attachment, bookmark, edgeless text, embedded docs, images, notes, frames, AI chat blocks, and various embed blocks (Figma, GitHub, HTML, iframe, Loom, YouTube).
- Introduced interaction extensions for graphical elements including connectors, groups, mind maps, shapes, and text, supporting constrained resizing and rotation disabling where applicable.
- Implemented a unified interaction extension framework enabling configurable resize and rotate lifecycle handlers.
- Enhanced autocomplete overlay behavior based on selection context.
- **Refactor**
- Removed legacy resize manager and element-specific resize/rotate logic, replacing with a centralized, extensible interaction system.
- Simplified resize handle rendering to a data-driven approach with improved cursor management.
- Replaced complex cursor rotation calculations with fixed-angle mappings for resize handles.
- Streamlined selection rectangle component to use interactivity services for resize and rotate handling.
- **Bug Fixes**
- Fixed connector update triggers to reduce unnecessary updates.
- Improved resize constraints enforcement and interaction state tracking.
- **Tests**
- Refined end-to-end tests to use higher-level resize utilities and added finer-grained assertions on element dimensions.
- Enhanced mouse movement granularity in drag tests for better simulation fidelity.
- **Chores**
- Added new workspace dependencies and project references for the interaction framework modules.
- Extended public API exports to include new interaction types and extensions.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2025-05-13 11:29:59 +00:00
Saul-Mirone
4ebeb530e0
refactor(editor): config the extension provider directly ( #12252 )
...
<!-- This is an auto-generated comment: release notes by coderabbit.ai -->
## Summary by CodeRabbit
- **New Features**
- Added new export paths to improve module accessibility for foundation store and view components.
- Introduced new extension points for telemetry, font configuration, link preview cache, and peek view services in the view extension foundation.
- **Improvements**
- Enhanced flexibility by allowing optional configuration of placeholders in paragraph view extensions.
- Switched to runtime schema validation for font configuration, increasing reliability.
- Streamlined service registration for peek view providers.
- **Refactor**
- Centralized and simplified extension management by removing redundant extension files and consolidating setup logic.
- Updated internal integration of telemetry, font, and peek view services for improved maintainability.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2025-05-13 11:09:21 +00:00
donteatfriedrice
5dbe6ff68b
fix(editor): notion text adapter should handle text without styles correctly ( #12248 )
...
Closes: [BS-3486](https://linear.app/affine-design/issue/BS-3486/粘贴从-notion-复制的内容出错 )
<!-- This is an auto-generated comment: release notes by coderabbit.ai -->
## Summary by CodeRabbit
- **Bug Fixes**
- Improved handling of Notion text segments with empty or invalid style arrays, ensuring plain text and styled text are both processed correctly and preventing errors from malformed input.
- **Tests**
- Added a test case to verify correct conversion of Notion text with empty styles arrays.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2025-05-13 08:05:30 +00:00
donteatfriedrice
0d518adc5b
refactor(editor): add cache extension for link preview service ( #12196 )
...
Closes: [BS-2578](https://linear.app/affine-design/issue/BS-2578/优化-footnote-预览的逻辑:支持缓存结果,避免重复-loading )
<!-- This is an auto-generated comment: release notes by coderabbit.ai -->
## Summary by CodeRabbit
- **New Features**
- Introduced a link preview caching mechanism, enabling faster and more efficient reuse of link preview data across the app.
- Added a feature flag for enabling or disabling link preview cache, configurable through workspace experimental settings.
- Enhanced localization with new entries describing the link preview cache feature.
- **Improvements**
- Updated link preview service architecture for better extensibility and maintainability.
- Improved integration of feature flags throughout chat and rendering components.
- **Bug Fixes**
- Fixed tooltip formatting for footnote URLs.
- **Chores**
- Updated dependencies and localization completeness tracking.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2025-05-13 05:11:34 +00:00
Saul-Mirone
cb550b7b21
refactor(editor): extract mobile extension builder ( #12239 )
...
<!-- This is an auto-generated comment: release notes by coderabbit.ai -->
## Summary by CodeRabbit
- **New Features**
- Introduced a new mobile view extension that activates mobile-specific UI features based on the runtime environment.
- Automatically enables mobile keyboard toolbar and linked document menu features in mobile contexts.
- **Improvements**
- Simplified code and paragraph block configurations on mobile, including disabling line numbers and adjusting placeholders.
- Enhanced configuration chaining to include mobile-specific settings by default.
- Improved extension registration flow with method chaining support.
- **Refactor**
- Removed deprecated mobile patch classes and configurations, consolidating mobile logic into dedicated extensions.
- Streamlined mobile-related code for better maintainability and performance.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2025-05-12 12:54:51 +00:00
L-Sun
0464e03b92
chore(editor): add telemetry for note, embed doc and linked doc ( #12234 )
...
Close [BS-3480](https://linear.app/affine-design/issue/BS-3480/event-tracking )
<!-- This is an auto-generated comment: release notes by coderabbit.ai -->
## Summary by CodeRabbit
- **New Features**
- Added telemetry tracking to toolbar actions for embedding documents, duplicating notes, and toggling note display modes.
- Telemetry events now track when new note blocks are created from drag-and-drop actions on the whiteboard.
- **Chores**
- Improved event tracking for user interactions to enhance analytics and usage insights.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2025-05-12 18:12:16 +08:00
L-Sun
42ae6e6e40
feat(editor): group configuration of note styles to panel from toolbar ( #12230 )
...
Close [BS-3401](https://linear.app/affine-design/issue/BS-3401/note-style-需要合并同类项 )

2025-05-12 09:42:52 +00:00
L-Sun
f3ca17fcb3
refactor(editor): extract slider component ( #12210 )
...
<!-- This is an auto-generated comment: release notes by coderabbit.ai -->
## Summary by CodeRabbit
- **New Features**
- Introduced a new slider component for line width selection, providing a more interactive and streamlined UI.
- Added support for using the slider component across relevant panels.
- **Improvements**
- Simplified the line width selection panel for easier use and improved maintainability.
- Enhanced event handling to prevent dropdowns from closing when interacting with the panel.
- **Bug Fixes**
- Improved event propagation control within the line styles panel.
- **Chores**
- Updated package exports to include the new slider component.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2025-05-12 09:42:52 +00:00
Saul-Mirone
6fb7f51ea2
refactor(editor): history as a store extension ( #12214 )
...
<!-- This is an auto-generated comment: release notes by coderabbit.ai -->
## Summary by CodeRabbit
- **Refactor**
- Improved history and undo/redo management across the app by introducing a dedicated history extension. Undo/redo operations now use a more focused undo manager, resulting in clearer and more consistent behavior.
- **Documentation**
- Updated API documentation to reflect changes in history management, including revised method signatures and removal of outdated event references.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2025-05-12 01:50:57 +00:00
fundon
7f3e0dc52f
feat(editor): improve status display in image block ( #12194 )
...
Closes: [BS-3451](https://linear.app/affine-design/issue/BS-3451/image-block-status-组件 )
2025-05-10 08:48:57 +00:00
fundon
b3f0f38b41
feat(editor): improve status display in attachment embed view ( #12180 )
...
Closes: [BS-3438](https://linear.app/affine-design/issue/BS-3438/attachment-embed-view-中的-status-组件 )
Closes: [BS-3447](https://linear.app/affine-design/issue/BS-3447/触发-litportal-re-render )
<!-- This is an auto-generated comment: release notes by coderabbit.ai -->
## Summary by CodeRabbit
- **New Features**
- Introduced a visual status indicator for embedded attachments with reload capability.
- Added a new resource status component to display error messages and reload actions.
- **Improvements**
- Enhanced attachment rendering flow with reactive state and unified embed handling.
- Simplified resource state and blob URL lifecycle management.
- Added status visibility flags for PDF and video embeds.
- **Bug Fixes**
- Improved error handling and refresh support for embedded content including PDFs, videos, and audio.
- **Style**
- Added styles for the attachment embed status indicator positioning.
- **Refactor**
- Streamlined attachment and resource controller implementations for better maintainability.
- **Tests**
- Added end-to-end test verifying PDF viewer reload and re-rendering in embed mode.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2025-05-10 08:34:47 +00:00
zzj3720
7b6e00d84a
refactor(editor): replace @vanilla-extract/css with @emotion/css ( #12195 )
...
close: BS-3446
<!-- This is an auto-generated comment: release notes by coderabbit.ai -->
## Summary by CodeRabbit
- **Refactor**
- Migrated all styling from vanilla-extract to Emotion for improved CSS-in-JS consistency across database, table, and data view components.
- Updated import paths for style modules to reflect the new Emotion-based file naming.
- Removed unused or redundant style exports and updated selector syntax where necessary.
- **Chores**
- Updated dependencies: removed vanilla-extract and added Emotion in relevant package files.
- **Style**
- No visual changes to existing components; all style definitions remain consistent with previous designs.
- **New Features**
- Introduced new reusable CSS classes for data view and table components using Emotion.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2025-05-09 10:08:03 +00:00
doodlewind
a5872dff65
fix(editor): database scroll regression on mobile safari ( #12203 )
...
This won't affect desktop behavior, since the `MobileDataViewTable` is a standalone entry different with the default `DataViewTable`.
Horizontal scrolling needs to be disabled to prevent Safari render bug.
<!-- This is an auto-generated comment: release notes by coderabbit.ai -->
## Summary by CodeRabbit
- **Style**
- Updated table view styling on mobile to disable horizontal scrolling, improving stability on iOS Safari.
- Removed platform-specific horizontal scrolling behavior for tables on desktop for a consistent experience.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2025-05-09 09:52:55 +00:00
Saul-Mirone
97aa3fc672
fix(editor): array proxy splice will cause too large yjs update ( #12201 )
...
Splice will produce large yjs updates for splice because it will call insert and delete operation for every item in yarray.
<!-- This is an auto-generated comment: release notes by coderabbit.ai -->
## Summary by CodeRabbit
- **New Features**
- Added support for `splice`, `shift`, and `unshift` methods on reactive arrays, enabling enhanced dynamic array operations with synchronization.
- **Tests**
- Expanded test coverage for array operations including `push`, `splice`, `shift`, and `unshift`, verifying complete array state after each change.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2025-05-09 06:19:57 +00:00
yoyoyohamapi
6d012f093f
fix(core): ai replace selection ( #11875 )
...
### TL;DR
* Fix the issue of inaccurate content replacement in AI Replace Selection
* Optimize unit Tests utils
### What Changed
1. Fixed the issue of inaccurate content replacement in AI Replace Selection:
- Convert the AI Answer into a Snapshot, then transform it into a sequence of Blocks ready for insertion.
- Invoke the `replaceSelectedTextWithBlocks` command to replace the current selection with blocks (given the complexity of block combinations, this command uses [ts-pattern](https://github.com/gvergnaud/ts-pattern ) implementation to ensure compile-time prevention of pattern handling omissions).
2. Optimized unit test assertions for commands, now allowing direct document content comparison using `toEqualDoc`.
```ts
const host = affine`
<affine-page id="page">
<affine-note id="note">
<affine-paragraph id="paragraph-1">Hel<anchor />lo</affine-paragraph>
<affine-paragraph id="paragraph-2">Wor<focus />ld</affine-paragraph>
</affine-note>
</affine-page>
`;
// ....
const expected = affine`
<affine-page id="page">
<affine-note id="note">
<affine-paragraph id="paragraph-1">Hel111</affine-paragraph>
<affine-code id="code"></affine-code>
<affine-paragraph id="paragraph-2">222ld</affine-paragraph>
</affine-note>
</affine-page>
`;
expect(host.doc).toEqualDoc(expected.doc);
```
3. Added support for text cursors in unit test template syntax.
<!-- This is an auto-generated comment: release notes by coderabbit.ai -->
## Summary by CodeRabbit
> CLOSE BS-3278
- **New Features**
- Introduced the ability to replace selected text in documents with blocks, supporting advanced merging and insertion scenarios for various block types.
- **Bug Fixes**
- Improved handling of text selection and cursor placement in document templates used for testing.
- **Tests**
- Added comprehensive tests for replacing selected text with blocks, including edge cases and complex selection scenarios.
- Enhanced test utilities for document structure comparison and selection handling.
- Updated end-to-end tests to verify correct replacement of selected text via AI-driven actions.
- **Chores**
- Added and updated dependencies to support new features.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2025-05-08 11:48:19 +00:00
zzj3720
6689bd1914
feat(editor): add created-time and created-by property for database block ( #12156 )
...
close: BS-3431
<!-- This is an auto-generated comment: release notes by coderabbit.ai -->
## Summary by CodeRabbit
- **New Features**
- Added "Created By" property type and cell renderer, displaying creator's avatar and name in database blocks.
- Introduced "Created Time" property type and cell renderer, showing formatted creation timestamps.
- **Improvements**
- Enhanced table and Kanban views with improved column and row movement, hiding, and statistics capabilities.
- Streamlined property and row management with unified object handling and reactive signals for better performance and reliability.
- Improved avatar display logic to handle removed or unnamed users gracefully.
- Refactored property and row APIs to consolidate access patterns and support reactive updates.
- Updated icon retrieval and reactive value access for improved UI responsiveness in database and Kanban cells.
- Consolidated property and cell access methods to use "get or create" patterns ensuring consistent data availability.
- Added locking mechanism to stabilize computed signals during locked states.
- Modularized table and Kanban column and row abstractions for better encapsulation and maintainability.
- **Bug Fixes**
- Corrected row and column deletion, movement, and selection behaviors across table and Kanban views.
- Fixed issues with property and row referencing, ensuring consistent handling of identifiers and objects.
- Removed debugging logs and fixed method calls to align with updated APIs.
- **Style**
- Updated and simplified table column header styles for a cleaner appearance.
- **Chores**
- Added `@emotion/css` dependency for styling support.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2025-05-08 11:35:37 +00:00
L-Sun
11dfc1d1df
feat(editor): insert embed doc with quick search by default ( #12165 )
...
Close [BS-3404](https://linear.app/affine-design/issue/BS-3404/通过embed-doc时,插入的doc还是card-view,应该要默认embed-view )
<!-- This is an auto-generated comment: release notes by coderabbit.ai -->
## Summary by CodeRabbit
- **New Features**
- Added the ability to insert and display embedded synced documents, supporting different link types based on editor mode and user preferences.
- Introduced new UI interactions and view options for embedded synced documents in edgeless mode.
- **Bug Fixes**
- Updated UI selectors and preference keys to ensure consistent behavior and correct application of user settings.
- **Tests**
- Added and updated end-to-end tests for embedding synced documents, including header interactions and viewport fitting.
- Improved test coverage for quick search insertion and edgeless embed synced doc features.
- **Chores**
- Renamed settings and updated exports to align with new embedding functionality.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2025-05-08 10:21:33 +00:00
EYHN
2d1600fa00
refactor(core): implement doc created/updated by service ( #12150 )
...
<!-- This is an auto-generated comment: release notes by coderabbit.ai -->
## Summary by CodeRabbit
- **New Features**
- Documents now automatically track and display "created by" and "updated by" user information.
- Document creation and update timestamps are now managed and shown more accurately.
- Workspace and document metadata (name, avatar) updates are more responsive and reliable.
- Document creation supports middleware for customizing properties and behavior.
- **Improvements**
- Simplified and unified event handling for document list updates, reducing redundant event subscriptions.
- Enhanced integration of editor and theme settings into the document creation process.
- Explicit Yjs document initialization for improved workspace stability and reliability.
- Consolidated journal-related metadata display in document icons and titles for clarity.
- **Bug Fixes**
- Fixed inconsistencies in how workspace and document names are set and updated.
- Improved accuracy of "last updated" indicators by handling timestamps automatically.
- **Refactor**
- Removed deprecated event subjects and direct metadata manipulation in favor of more robust, reactive patterns.
- Streamlined document creation logic across various features (quick search, journal, recording, etc.).
- Simplified user avatar display components and removed cloud metadata dependencies.
- Removed legacy editor setting and theme service dependencies from multiple modules.
- **Chores**
- Updated internal APIs and interfaces to support new metadata and event handling mechanisms.
- Cleaned up unused code and dependencies related to editor settings and theme services.
- Skipped flaky end-to-end test to improve test suite stability.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2025-05-08 07:53:33 +00:00
Saul-Mirone
388641bc89
refactor(editor): rename doc to store on block components ( #12173 )
...
<!-- This is an auto-generated comment: release notes by coderabbit.ai -->
## Summary by CodeRabbit
- **Refactor**
- Unified internal data access by replacing all references from `doc` to `store` across all components, blocks, widgets, and utilities. This affects how readonly state, block operations, and service retrieval are handled throughout the application.
- **Tests**
- Updated all test utilities and test cases to use `store` instead of `doc` for document-related operations.
- **Chores**
- Updated context providers and property names to reflect the change from `doc` to `store` for improved consistency and maintainability.
No user-facing features or behaviors have changed.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2025-05-08 01:01:05 +00:00
doodlewind
1ef1c3a5fa
chore(editor): skip flaky test case in turbo renderer ( #12178 )
...
2 out of 7 tests are skipped as flaky due to unknown vitest issue on CI, considering migrating to E2E afterwards.
<!-- This is an auto-generated comment: release notes by coderabbit.ai -->
## Summary by CodeRabbit
- **Tests**
- Removed a test related to rendering multiple notes in the viewport.
- Skipped two tests concerning zooming behavior and state transitions; these tests are now excluded from regular test runs.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2025-05-07 13:51:23 +00:00
fundon
b4f56c0a78
fix(editor): attachment size in embed view ( #12177 )
...
Closes: [BS-3434](https://linear.app/affine-design/issue/BS-3434/修复-attachment-从-card-切换为-embed-尺寸问题 )
<img width="1073" alt="Screenshot 2025-05-07 at 20 38 53" src="https://github.com/user-attachments/assets/9fbb7e40-3c01-4473-88d8-3469758ed06b " />
<!-- This is an auto-generated comment: release notes by coderabbit.ai -->
## Summary by CodeRabbit
- **New Features**
- Added dedicated embed actions for PDF and video attachments, ensuring consistent sizing and improved rendering for these media types.
- **Refactor**
- Centralized PDF and video embed card dimensions using shared constants for more consistent and maintainable sizing.
- Improved styling for video embeds, including better layout and responsive sizing.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2025-05-07 13:20:51 +00:00
Saul-Mirone
95b9e4b3d0
refactor(editor): rename model.doc to store ( #12172 )
2025-05-07 09:17:01 +00:00
Saul-Mirone
eb62d0e853
refactor(editor): doc as store extension ( #12170 )
...
<!-- This is an auto-generated comment: release notes by coderabbit.ai -->
## Summary by CodeRabbit
- **New Features**
- Introduced new exports related to workspace management, making additional workspace features available.
- **Refactor**
- Updated how document and workspace types are imported and exported, consolidating and reorganizing module structure.
- Shifted dependency management for document instances to use an internal provider mechanism.
- Streamlined and centralized type imports across various modules.
- **Bug Fixes**
- Removed an unused schema definition to improve code clarity.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2025-05-07 09:17:01 +00:00
L-Sun
610565e617
chore(editor): adjust embed synced doc ui ( #12162 )
...
Close [BS-3400](https://linear.app/affine-design/issue/BS-3400/ui-issues )
<!-- This is an auto-generated comment: release notes by coderabbit.ai -->
## Summary by CodeRabbit
- **New Features**
- The "View in Page" button has been renamed to "Open in Page" and now uses a new icon for improved clarity.
- The menu for embedded synced documents is now integrated directly into the Open button for a more streamlined interface.
- **Style**
- Improved spacing and visual alignment in edgeless block headers, including dedicated styling for title icons and buttons.
- Updated toolbar icon for better visual consistency.
- Added background styling for embedded linked document blocks.
- **Localization**
- Updated translation keys and text to reflect the "Open in Page" terminology across all supported languages.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2025-05-07 08:34:58 +00:00
donteatfriedrice
4c56b685a1
fix(editor): footnote and citation icon url should be built with image proxy ( #12169 )
...
<!-- This is an auto-generated comment: release notes by coderabbit.ai -->
## Summary by CodeRabbit
- **New Features**
- Improved how bookmark and footnote icons are displayed by routing image URLs through an image proxy service for enhanced reliability and consistency.
- **Refactor**
- Adjusted the timing of service configuration for link previews and image proxies to occur after document initialization, ensuring more robust setup during content rendering.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2025-05-07 08:17:43 +00:00
fundon
179701f587
fix(editor): switch view is not allowed during upload ( #12018 )
...
Closes: [BS-3352](https://linear.app/affine-design/issue/BS-3352/[improvement]-附件上传时禁止切-view )

<!-- This is an auto-generated comment: release notes by coderabbit.ai -->
## Summary by CodeRabbit
- **Bug Fixes**
- Improved the logic for enabling or disabling the embed and card actions in the attachment toolbar, ensuring actions are only available when the file is ready and conditions are met.
- **Refactor**
- Enhanced reliability by centralizing block state checks and refining conditions for action availability in the attachment dropdown menu.
- Centralized resource state management with a new computed signal, improving consistency in loading and error state handling.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2025-05-07 08:01:56 +00:00
Saul-Mirone
267bb3a975
refactor(editor): introduce store container to make implement doc easier ( #12146 )
...
<!-- This is an auto-generated comment: release notes by coderabbit.ai -->
## Summary by CodeRabbit
- **New Features**
- Introduced a new store management system for handling document stores, improving efficiency and flexibility when working with document data.
- **Refactor**
- Updated internal store handling to use a centralized store container, simplifying store retrieval and removal across various components.
- Renamed and updated several store-related method signatures for consistency and clarity.
- Replaced editor extension loading logic with a new local implementation for better modularity.
- **Chores**
- Improved and streamlined the export of store-related modules for better maintainability.
- Removed obsolete and redundant code related to previous store management approaches.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2025-05-07 06:08:43 +00:00
fundon
93b1d6c729
fix(editor): improve image block upload and download states ( #12017 )
...
Related to: [BS-3143](https://linear.app/affine-design/issue/BS-3143/更新-loading-和错误样式 )
<!-- This is an auto-generated comment: release notes by coderabbit.ai -->
## Summary by CodeRabbit
- **New Features**
- Introduced a unified resource controller for managing image and attachment resources, providing improved loading, error, and state handling.
- Added a visual loading indicator overlay to image blocks for better feedback during image loading.
- **Improvements**
- Simplified and centralized image and attachment state management, reducing redundant properties and manual state tracking.
- Updated fallback UI for image blocks with clearer titles, descriptions, and improved layout.
- Enhanced batch image block creation and download handling for improved efficiency.
- Refined image block accessibility with improved alt text and streamlined rendering logic.
- Centralized target model selection for image insertion in AI actions.
- Reordered CSS declarations without affecting styling.
- Improved reactive state tracking for blob upload/download operations in mock server.
- **Bug Fixes**
- Improved cleanup of object URLs to prevent resource leaks.
- Adjusted toolbar logic to more accurately reflect available actions based on image state.
- **Tests**
- Updated end-to-end tests to match new UI text and behaviors for image loading and error states.
- **Chores**
- Refactored internal logic and updated comments for clarity and maintainability.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2025-05-07 05:15:57 +00:00
donteatfriedrice
0a9f5a1da9
fix(editor): add credentialless attribute to iframe for COEP compliance ( #12161 )
...
<!-- This is an auto-generated comment: release notes by coderabbit.ai -->
## Summary by CodeRabbit
- **New Features**
- Added enhanced privacy controls by including the `credentialless` attribute to embedded content iframes for PDF, Figma, Loom, YouTube, and generic iframe blocks. This helps improve security and privacy when displaying embedded content.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2025-05-07 04:01:57 +00:00
doodlewind
2763b820ab
chore(editor): add retry for flaky test ( #12143 )
...
<!-- This is an auto-generated comment: release notes by coderabbit.ai -->
## Summary by CodeRabbit
- **Tests**
- Updated integration test configuration to automatically retry failed tests up to 3 times in CI environments, improving test reliability.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2025-05-07 02:01:14 +00:00
fundon
f832400e3e
feat(editor): add resource controller ( #12121 )
...
Closes: [BS-3398](https://linear.app/affine-design/issue/BS-3398/实现资源控制器 )
<!-- This is an auto-generated comment: release notes by coderabbit.ai -->
## Summary by CodeRabbit
## Summary by CodeRabbit
- **New Features**
- Introduced a ResourceController for centralized and reactive management of attachment resource states, improving error handling, loading indicators, and UI state resolution for attachments.
- Added public access to resource management utilities via new export paths.
- **Refactor**
- Streamlined attachment state management by replacing manual state tracking with the new ResourceController, simplifying code and enhancing maintainability.
- Updated rendering logic for attachments to use unified state objects for clearer UI feedback.
- Centralized blob URL creation and download state management within the ResourceController.
- **Chores**
- Updated dependencies and internal references to reflect the new resource management approach, ensuring consistency across packages.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2025-05-07 01:45:26 +00:00
Yifeng Wang
ad7868633d
test(editor): revert timeout condition in turbo renderer ( #12159 )
2025-05-07 09:29:12 +08:00
renovate
bcc728a929
chore: bump up all non-major npm dependencies ( #12151 )
...
This PR contains the following updates:
| Package | Change | Age | Adoption | Passing | Confidence | Type | Update |
|---|---|---|---|---|---|---|---|
| [@ai-sdk/google](https://ai-sdk.dev/docs ) ([source](https://redirect.github.com/vercel/ai )) | [`1.2.14` -> `1.2.15`](https://renovatebot.com/diffs/npm/@ai-sdk%2fgoogle/1.2.14/1.2.15 ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | dependencies | patch |
| [@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.5` -> `5.0.6`](https://renovatebot.com/diffs/npm/@graphql-codegen%2fcli/5.0.5/5.0.6 ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | devDependencies | patch |
| [@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.6.0` -> `4.6.1`](https://renovatebot.com/diffs/npm/@graphql-codegen%2ftypescript-operations/4.6.0/4.6.1 ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | devDependencies | 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.36` -> `0.0.38`](https://renovatebot.com/diffs/npm/@react-email%2fcomponents/0.0.36/0.0.38 ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | dependencies | patch |
| [@vitest/browser](https://redirect.github.com/vitest-dev/vitest/tree/main/packages/browser#readme ) ([source](https://redirect.github.com/vitest-dev/vitest/tree/HEAD/packages/browser )) | [`3.1.2` -> `3.1.3`](https://renovatebot.com/diffs/npm/@vitest%2fbrowser/3.1.2/3.1.3 ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | devDependencies | patch |
| [@vitest/coverage-istanbul](https://redirect.github.com/vitest-dev/vitest/tree/main/packages/coverage-istanbul#readme ) ([source](https://redirect.github.com/vitest-dev/vitest/tree/HEAD/packages/coverage-istanbul )) | [`3.1.2` -> `3.1.3`](https://renovatebot.com/diffs/npm/@vitest%2fcoverage-istanbul/3.1.2/3.1.3 ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | devDependencies | patch |
| [@vitest/ui](https://redirect.github.com/vitest-dev/vitest/tree/main/packages/ui#readme ) ([source](https://redirect.github.com/vitest-dev/vitest/tree/HEAD/packages/ui )) | [`3.1.2` -> `3.1.3`](https://renovatebot.com/diffs/npm/@vitest%2fui/3.1.2/3.1.3 ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | devDependencies | patch |
| [cc](https://redirect.github.com/rust-lang/cc-rs ) | `1.2.20` -> `1.2.21` | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | build-dependencies | patch |
| [chrono](https://redirect.github.com/chronotope/chrono ) | `0.4.40` -> `0.4.41` | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | workspace.dependencies | patch |
| [cssnano](https://redirect.github.com/cssnano/cssnano ) | [`7.0.6` -> `7.0.7`](https://renovatebot.com/diffs/npm/cssnano/7.0.6/7.0.7 ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | dependencies | patch |
| [i18next](https://www.i18next.com ) ([source](https://redirect.github.com/i18next/i18next )) | [`25.0.2` -> `25.1.1`](https://renovatebot.com/diffs/npm/i18next/25.0.2/25.1.1 ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | dependencies | minor |
| [jotai](https://redirect.github.com/pmndrs/jotai ) | [`2.12.3` -> `2.12.4`](https://renovatebot.com/diffs/npm/jotai/2.12.3/2.12.4 ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | dependencies | patch |
| [lint-staged](https://redirect.github.com/lint-staged/lint-staged ) | [`15.5.1` -> `15.5.2`](https://renovatebot.com/diffs/npm/lint-staged/15.5.1/15.5.2 ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | devDependencies | patch |
| [lucide-react](https://lucide.dev ) ([source](https://redirect.github.com/lucide-icons/lucide/tree/HEAD/packages/lucide-react )) | [`^0.503.0` -> `^0.507.0`](https://renovatebot.com/diffs/npm/lucide-react/0.503.0/0.507.0 ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | dependencies | minor |
| [react-email](https://redirect.github.com/resend/react-email ) ([source](https://redirect.github.com/resend/react-email/tree/HEAD/packages/react-email )) | [`4.0.7` -> `4.0.11`](https://renovatebot.com/diffs/npm/react-email/4.0.7/4.0.11 ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | devDependencies | patch |
| [shiki](https://redirect.github.com/shikijs/shiki ) ([source](https://redirect.github.com/shikijs/shiki/tree/HEAD/packages/shiki )) | [`3.3.0` -> `3.4.0`](https://renovatebot.com/diffs/npm/shiki/3.3.0/3.4.0 ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | dependencies | minor |
| [tokio](https://tokio.rs ) ([source](https://redirect.github.com/tokio-rs/tokio )) | `1.44.2` -> `1.45.0` | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | workspace.dependencies | minor |
| [uniffi](https://mozilla.github.io/uniffi-rs ) ([source](https://redirect.github.com/mozilla/uniffi-rs )) | `0.29.1` -> `0.29.2` | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | workspace.dependencies | patch |
| [vitest](https://redirect.github.com/vitest-dev/vitest ) ([source](https://redirect.github.com/vitest-dev/vitest/tree/HEAD/packages/vitest )) | [`3.1.2` -> `3.1.3`](https://renovatebot.com/diffs/npm/vitest/3.1.2/3.1.3 ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | devDependencies | patch |
| [webpack](https://redirect.github.com/webpack/webpack ) | [`5.99.7` -> `5.99.8`](https://renovatebot.com/diffs/npm/webpack/5.99.7/5.99.8 ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | dependencies | patch |
| [webpack](https://redirect.github.com/webpack/webpack ) | [`5.99.7` -> `5.99.8`](https://renovatebot.com/diffs/npm/webpack/5.99.7/5.99.8 ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | devDependencies | patch |
| [com.google.devtools.ksp](https://goo.gle/ksp ) ([source](https://redirect.github.com/google/ksp )) | `2.1.20-2.0.0` -> `2.1.20-2.0.1` | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | plugin | patch |
| [com.apollographql.adapters:apollo-adapters-kotlinx-datetime](https://redirect.github.com/apollographql/apollo-kotlin-adapters ) | `0.0.4` -> `0.0.6` | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | dependencies | patch |
| [com.apollographql.adapters:apollo-adapters-core](https://redirect.github.com/apollographql/apollo-kotlin-adapters ) | `0.0.4` -> `0.0.6` | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | dependencies | patch |
| [com.apollographql.apollo](https://redirect.github.com/apollographql/apollo-kotlin ) | `4.1.1` -> `4.2.0` | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | plugin | minor |
| [com.apollographql.apollo:apollo-runtime](https://redirect.github.com/apollographql/apollo-kotlin ) | `4.1.1` -> `4.2.0` | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | dependencies | minor |
| [com.apollographql.apollo:apollo-api](https://redirect.github.com/apollographql/apollo-kotlin ) | `4.1.1` -> `4.2.0` | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | dependencies | minor |
---
### Release Notes
<details>
<summary>vercel/ai (@​ai-sdk/google)</summary>
### [`v1.2.15`](https://redirect.github.com/vercel/ai/releases/tag/%40ai-sdk/google%401.2.15 )
[Compare Source](https://redirect.github.com/vercel/ai/compare/@ai-sdk/google@1.2.14...@ai-sdk/google@1.2.15 )
##### Patch Changes
- [`2afd354`](https://redirect.github.com/vercel/ai/commit/2afd354 ): fix(providers/google): accept nullish in safetyRatings
</details>
<details>
<summary>dotansimha/graphql-code-generator (@​graphql-codegen/cli)</summary>
### [`v5.0.6`](https://redirect.github.com/dotansimha/graphql-code-generator/blob/HEAD/packages/graphql-codegen-cli/CHANGELOG.md#506 )
[Compare Source](https://redirect.github.com/dotansimha/graphql-code-generator/compare/@graphql-codegen/cli@5.0.5...@graphql-codegen/cli@5.0.6 )
##### Patch Changes
- [#​10338](https://redirect.github.com/dotansimha/graphql-code-generator/pull/10338 ) [`5d1c4e1`](5d1c4e127d ) Thanks [@​eddeee888](https://redirect.github.com/eddeee888 )! - Fix ignoreNoDocuments=true swallowing all errors
- [#​10333](https://redirect.github.com/dotansimha/graphql-code-generator/pull/10333 ) [`10ab58d`](10ab58dbc1 ) Thanks [@​eddeee888](https://redirect.github.com/eddeee888 )! - Improve syntax error messages whilst loading schema/document
- Updated dependencies \[[`c5efba3`](c5efba34a7 )]:
- [@​graphql-codegen/client-preset](https://redirect.github.com/graphql-codegen/client-preset )[@​4](https://redirect.github.com/4 ).8.1
</details>
<details>
<summary>dotansimha/graphql-code-generator (@​graphql-codegen/typescript-operations)</summary>
### [`v4.6.1`](https://redirect.github.com/dotansimha/graphql-code-generator/blob/HEAD/packages/plugins/typescript/operations/CHANGELOG.md#461 )
[Compare Source](https://redirect.github.com/dotansimha/graphql-code-generator/compare/@graphql-codegen/typescript-operations@4.6.0...@graphql-codegen/typescript-operations@4.6.1 )
##### Patch Changes
- [#​10330](https://redirect.github.com/dotansimha/graphql-code-generator/pull/10330 ) [`c5efba3`](c5efba34a7 ) Thanks [@​jnoordsij](https://redirect.github.com/jnoordsij )! - Make graphql-sock optional peerDep
</details>
<details>
<summary>resend/react-email (@​react-email/components)</summary>
### [`v0.0.38`](https://redirect.github.com/resend/react-email/blob/HEAD/packages/components/CHANGELOG.md#0038 )
[Compare Source](https://redirect.github.com/resend/react-email/compare/@react-email/components@0.0.37...@react-email/components@0.0.38 )
##### Patch Changes
- Updated dependencies \[[`6cd353b`](https://redirect.github.com/resend/react-email/commit/6cd353b )]
- [@​react-email/text](https://redirect.github.com/react-email/text )[@​0](https://redirect.github.com/0 ).1.3
### [`v0.0.37`](https://redirect.github.com/resend/react-email/blob/HEAD/packages/components/CHANGELOG.md#0037 )
[Compare Source](https://redirect.github.com/resend/react-email/compare/@react-email/components@0.0.36...@react-email/components@0.0.37 )
##### Patch Changes
- Updated dependencies \[[`7918a4b`](https://redirect.github.com/resend/react-email/commit/7918a4b )]
- Updated dependencies \[[`9aa033c`](https://redirect.github.com/resend/react-email/commit/9aa033c )]
- Updated dependencies \[[`5d153a3`](https://redirect.github.com/resend/react-email/commit/5d153a3 )]
- Updated dependencies \[[`297541e`](https://redirect.github.com/resend/react-email/commit/297541e )]
- [@​react-email/text](https://redirect.github.com/react-email/text )[@​0](https://redirect.github.com/0 ).1.2
- [@​react-email/code-block](https://redirect.github.com/react-email/code-block )[@​0](https://redirect.github.com/0 ).0.13
- [@​react-email/markdown](https://redirect.github.com/react-email/markdown )[@​0](https://redirect.github.com/0 ).0.15
- [@​react-email/render](https://redirect.github.com/react-email/render )[@​1](https://redirect.github.com/1 ).1.0
- [@​react-email/tailwind](https://redirect.github.com/react-email/tailwind )[@​1](https://redirect.github.com/1 ).0.5
- [@​react-email/body](https://redirect.github.com/react-email/body )[@​0](https://redirect.github.com/0 ).0.11
- [@​react-email/button](https://redirect.github.com/react-email/button )[@​0](https://redirect.github.com/0 ).0.19
- [@​react-email/code-inline](https://redirect.github.com/react-email/code-inline )[@​0](https://redirect.github.com/0 ).0.5
- [@​react-email/column](https://redirect.github.com/react-email/column )[@​0](https://redirect.github.com/0 ).0.13
- [@​react-email/container](https://redirect.github.com/react-email/container )[@​0](https://redirect.github.com/0 ).0.15
- [@​react-email/font](https://redirect.github.com/react-email/font )[@​0](https://redirect.github.com/0 ).0.9
- [@​react-email/head](https://redirect.github.com/react-email/head )[@​0](https://redirect.github.com/0 ).0.12
- [@​react-email/heading](https://redirect.github.com/react-email/heading )[@​0](https://redirect.github.com/0 ).0.15
- [@​react-email/hr](https://redirect.github.com/react-email/hr )[@​0](https://redirect.github.com/0 ).0.11
- [@​react-email/html](https://redirect.github.com/react-email/html )[@​0](https://redirect.github.com/0 ).0.11
- [@​react-email/img](https://redirect.github.com/react-email/img )[@​0](https://redirect.github.com/0 ).0.11
- [@​react-email/link](https://redirect.github.com/react-email/link )[@​0](https://redirect.github.com/0 ).0.12
- [@​react-email/preview](https://redirect.github.com/react-email/preview )[@​0](https://redirect.github.com/0 ).0.12
- [@​react-email/row](https://redirect.github.com/react-email/row )[@​0](https://redirect.github.com/0 ).0.12
- [@​react-email/section](https://redirect.github.com/react-email/section )[@​0](https://redirect.github.com/0 ).0.16
</details>
<details>
<summary>vitest-dev/vitest (@​vitest/browser)</summary>
### [`v3.1.3`](https://redirect.github.com/vitest-dev/vitest/releases/tag/v3.1.3 )
[Compare Source](https://redirect.github.com/vitest-dev/vitest/compare/v3.1.2...v3.1.3 )
##### 🐞 Bug Fixes
- Correctly resolve vitest import if `inline: true` is set - by [@​sheremet-va](https://redirect.github.com/sheremet-va ) in [https://github.com/vitest-dev/vitest/issues/7856 ](https://redirect.github.com/vitest-dev/vitest/issues/7856 ) [<samp>(a83f3)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/a83f3bf6 )
- Fix fixture parsing with lowered async with esbuild 0.25.3 - by [@​hi-ogawa](https://redirect.github.com/hi-ogawa ) in [https://github.com/vitest-dev/vitest/issues/7921 ](https://redirect.github.com/vitest-dev/vitest/issues/7921 ) [<samp>(c5c85)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/c5c8502b )
- Remove event-catcher code - by [@​sheremet-va](https://redirect.github.com/sheremet-va ) in [https://github.com/vitest-dev/vitest/issues/7898 ](https://redirect.github.com/vitest-dev/vitest/issues/7898 ) [<samp>(deb1b)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/deb1bc27 )
- Reset mocks on test retry/repeat - by [@​sheremet-va](https://redirect.github.com/sheremet-va ) in [https://github.com/vitest-dev/vitest/issues/7897 ](https://redirect.github.com/vitest-dev/vitest/issues/7897 ) [<samp>(2fa76)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/2fa763a6 )
- Ignore failures on writeToCache - by [@​orgads](https://redirect.github.com/orgads ) in [https://github.com/vitest-dev/vitest/issues/7893 ](https://redirect.github.com/vitest-dev/vitest/issues/7893 ) [<samp>(8c7f7)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/8c7f75a6 )
- **browser**: Correctly inherit CLI options - by [@​sheremet-va](https://redirect.github.com/sheremet-va ) in [https://github.com/vitest-dev/vitest/issues/7858 ](https://redirect.github.com/vitest-dev/vitest/issues/7858 ) [<samp>(03660)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/03660f9d )
- **deps**: Update all non-major dependencies - in [https://github.com/vitest-dev/vitest/issues/7867 ](https://redirect.github.com/vitest-dev/vitest/issues/7867 ) [<samp>(67ef7)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/67ef74a0 )
- **reporters**: `--merge-reports` to show each total run times - by [@​AriPerkkio](https://redirect.github.com/AriPerkkio ) in [https://github.com/vitest-dev/vitest/issues/7877 ](https://redirect.github.com/vitest-dev/vitest/issues/7877 ) [<samp>(d613b)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/d613b813 )
##### [View changes on GitHub](https://redirect.github.com/vitest-dev/vitest/compare/v3.1.2...v3.1.3 )
</details>
<details>
<summary>rust-lang/cc-rs (cc)</summary>
### [`v1.2.21`](https://redirect.github.com/rust-lang/cc-rs/blob/HEAD/CHANGELOG.md#1221---2025-05-02 )
[Compare Source](https://redirect.github.com/rust-lang/cc-rs/compare/cc-v1.2.20...cc-v1.2.21 )
##### Other
- Fix wasm32-unknown-unknown by passing -c ([#​1424](https://redirect.github.com/rust-lang/cc-rs/pull/1424 ))
</details>
<details>
<summary>chronotope/chrono (chrono)</summary>
### [`v0.4.41`](https://redirect.github.com/chronotope/chrono/releases/tag/v0.4.41 )
[Compare Source](https://redirect.github.com/chronotope/chrono/compare/v0.4.40...v0.4.41 )
#### What's Changed
- Add `subsec_micros` and `subsec_millis` methods to `TimeDelta` by [@​ggoetz](https://redirect.github.com/ggoetz ) in [https://github.com/chronotope/chrono/pull/1668 ](https://redirect.github.com/chronotope/chrono/pull/1668 )
- Deprecate `NaiveDateTime::UNIX_EPOCH` by [@​robertbastian](https://redirect.github.com/robertbastian ) in [https://github.com/chronotope/chrono/pull/1670 ](https://redirect.github.com/chronotope/chrono/pull/1670 )
- Implement `as_seconds_f32` and `as_seconds_f64` for `TimeDelta` by [@​ggoetz](https://redirect.github.com/ggoetz ) in [https://github.com/chronotope/chrono/pull/1671 ](https://redirect.github.com/chronotope/chrono/pull/1671 )
- chore: fix some comments by [@​jimmycathy](https://redirect.github.com/jimmycathy ) in [https://github.com/chronotope/chrono/pull/1677 ](https://redirect.github.com/chronotope/chrono/pull/1677 )
- Add `num_days_in_month` method to `Datelike` trait by [@​aslilac](https://redirect.github.com/aslilac ) in [https://github.com/chronotope/chrono/pull/1673 ](https://redirect.github.com/chronotope/chrono/pull/1673 )
- add `WeekdaySet`, a collection of `Weekday` that is `Copy` by [@​Kinrany](https://redirect.github.com/Kinrany ) in [https://github.com/chronotope/chrono/pull/1676 ](https://redirect.github.com/chronotope/chrono/pull/1676 )
- WeekdaySet tweaks by [@​djc](https://redirect.github.com/djc ) in [https://github.com/chronotope/chrono/pull/1680 ](https://redirect.github.com/chronotope/chrono/pull/1680 )
- Upgrade to windows-bindgen 0.61 by [@​djc](https://redirect.github.com/djc ) in [https://github.com/chronotope/chrono/pull/1682 ](https://redirect.github.com/chronotope/chrono/pull/1682 )
- Implemented a consistent Eq trait for NaiveWeek by [@​Splashling1789](https://redirect.github.com/Splashling1789 ) in [https://github.com/chronotope/chrono/pull/1687 ](https://redirect.github.com/chronotope/chrono/pull/1687 )
- TimeZone::from_posix_tz: Treat empty TZ variable as UTC by [@​drinkcat](https://redirect.github.com/drinkcat ) in [https://github.com/chronotope/chrono/pull/1691 ](https://redirect.github.com/chronotope/chrono/pull/1691 )
- Add support for lossy format strings by [@​Qelxiros](https://redirect.github.com/Qelxiros ) in [https://github.com/chronotope/chrono/pull/1693 ](https://redirect.github.com/chronotope/chrono/pull/1693 )
</details>
<details>
<summary>cssnano/cssnano (cssnano)</summary>
### [`v7.0.7`](https://redirect.github.com/cssnano/cssnano/releases/tag/cssnano%407.0.7 )
[Compare Source](https://redirect.github.com/cssnano/cssnano/compare/cssnano@7.0.6...cssnano@7.0.7 )
#### What's Changed
- fix: update browserslist by [@​ludofischer](https://redirect.github.com/ludofischer ) in [https://github.com/cssnano/cssnano/pull/1675 ](https://redirect.github.com/cssnano/cssnano/pull/1675 )
- fix: update postcss peer dependency to version without vulnerabilities by [@​ludofischer](https://redirect.github.com/ludofischer ) in [https://github.com/cssnano/cssnano/pull/1676 ](https://redirect.github.com/cssnano/cssnano/pull/1676 )
- fix: update TypeScript declarations by [@​ludofischer](https://redirect.github.com/ludofischer ) in [https://github.com/cssnano/cssnano/pull/1685 ](https://redirect.github.com/cssnano/cssnano/pull/1685 )
- perf: load default preset in startup by [@​43081j](https://redirect.github.com/43081j ) in [https://github.com/cssnano/cssnano/pull/1691 ](https://redirect.github.com/cssnano/cssnano/pull/1691 )
- Add support for selector order preservation to postcss-minify-selectors by [@​ezzak](https://redirect.github.com/ezzak ) in [https://github.com/cssnano/cssnano/pull/1688 ](https://redirect.github.com/cssnano/cssnano/pull/1688 )
- fix(postcss-convert-values): preserve percent sign in percentage values in at-rules with double quotes by [@​aramikuto](https://redirect.github.com/aramikuto ) in [https://github.com/cssnano/cssnano/pull/1695 ](https://redirect.github.com/cssnano/cssnano/pull/1695 )
**Full Changelog**: https://github.com/cssnano/cssnano/compare/cssnano@7.0.6...cssnano@7.0.7
</details>
<details>
<summary>i18next/i18next (i18next)</summary>
### [`v25.1.1`](https://redirect.github.com/i18next/i18next/blob/HEAD/CHANGELOG.md#2511 )
[Compare Source](https://redirect.github.com/i18next/i18next/compare/v25.1.0...v25.1.1 )
- fix options type for `parseMissingKeyHandler`
### [`v25.1.0`](https://redirect.github.com/i18next/i18next/blob/HEAD/CHANGELOG.md#2510 )
[Compare Source](https://redirect.github.com/i18next/i18next/compare/v25.0.2...v25.1.0 )
- feat: `parseMissingKeyHandler` now takes options as parameter like in missingKeyHandler [2304](https://redirect.github.com/i18next/i18next/issues/2304 )
</details>
<details>
<summary>pmndrs/jotai (jotai)</summary>
### [`v2.12.4`](https://redirect.github.com/pmndrs/jotai/releases/tag/v2.12.4 )
[Compare Source](https://redirect.github.com/pmndrs/jotai/compare/v2.12.3...v2.12.4 )
We deprecate devstore capability, which will be dropped in the next minor version. Please use the latest jotai-devtools library.
#### What's Changed
- deprecate devstore by [@​dai-shi](https://redirect.github.com/dai-shi ) in [https://github.com/pmndrs/jotai/pull/3023 ](https://redirect.github.com/pmndrs/jotai/pull/3023 )
- fix(package): react-native condition by [@​dai-shi](https://redirect.github.com/dai-shi ) in [https://github.com/pmndrs/jotai/pull/3042 ](https://redirect.github.com/pmndrs/jotai/pull/3042 )
- fix(utils): allow undefined for atomWithStorage subscriber return by [@​caffeinewriter](https://redirect.github.com/caffeinewriter ) in [https://github.com/pmndrs/jotai/pull/3055 ](https://redirect.github.com/pmndrs/jotai/pull/3055 )
#### New Contributors
- [@​caffeinewriter](https://redirect.github.com/caffeinewriter ) made their first contribution in [https://github.com/pmndrs/jotai/pull/3056 ](https://redirect.github.com/pmndrs/jotai/pull/3056 )
- [@​CanRau](https://redirect.github.com/CanRau ) made their first contribution in [https://github.com/pmndrs/jotai/pull/3051 ](https://redirect.github.com/pmndrs/jotai/pull/3051 )
**Full Changelog**: https://github.com/pmndrs/jotai/compare/v2.12.3...v2.12.4
</details>
<details>
<summary>lint-staged/lint-staged (lint-staged)</summary>
### [`v15.5.2`](https://redirect.github.com/lint-staged/lint-staged/blob/HEAD/CHANGELOG.md#1552 )
[Compare Source](https://redirect.github.com/lint-staged/lint-staged/compare/v15.5.1...v15.5.2 )
##### Patch Changes
- [#​1544](https://redirect.github.com/lint-staged/lint-staged/pull/1544 ) [`5561321`](556132176a ) Thanks [@​YimingIsCOLD](https://redirect.github.com/YimingIsCOLD )! - Correctly handle colon (`:`) characters in staged filenames.
</details>
<details>
<summary>lucide-icons/lucide (lucide-react)</summary>
### [`v0.507.0`](https://redirect.github.com/lucide-icons/lucide/releases/tag/0.507.0 ): Version 0.507.0
[Compare Source](https://redirect.github.com/lucide-icons/lucide/compare/0.506.0...0.507.0 )
#### What's Changed
- fix(metadata): added tags to `square-pen` icon by [@​jguddas](https://redirect.github.com/jguddas ) in [https://github.com/lucide-icons/lucide/pull/3155 ](https://redirect.github.com/lucide-icons/lucide/pull/3155 )
- fix(icons): changed `search` icon by [@​jguddas](https://redirect.github.com/jguddas ) in [https://github.com/lucide-icons/lucide/pull/3140 ](https://redirect.github.com/lucide-icons/lucide/pull/3140 )
- fix(dev): resets Absolute Stroke Width by [@​briz123](https://redirect.github.com/briz123 ) in [https://github.com/lucide-icons/lucide/pull/3005 ](https://redirect.github.com/lucide-icons/lucide/pull/3005 )
- fix(icons): changed `guitar` icon by [@​jamiemlaw](https://redirect.github.com/jamiemlaw ) in [https://github.com/lucide-icons/lucide/pull/3115 ](https://redirect.github.com/lucide-icons/lucide/pull/3115 )
- fix(Icons): Adding missing categories to 4 Icons by [@​ajokt123](https://redirect.github.com/ajokt123 ) in [https://github.com/lucide-icons/lucide/pull/3110 ](https://redirect.github.com/lucide-icons/lucide/pull/3110 )
- fix(ci): reduces workflow triggers by [@​jguddas](https://redirect.github.com/jguddas ) in [https://github.com/lucide-icons/lucide/pull/3150 ](https://redirect.github.com/lucide-icons/lucide/pull/3150 )
- fix(icons): changed `air-vent` icon by [@​jguddas](https://redirect.github.com/jguddas ) in [https://github.com/lucide-icons/lucide/pull/3117 ](https://redirect.github.com/lucide-icons/lucide/pull/3117 )
- fix(icons): rotate `dumbbell` icon by [@​jguddas](https://redirect.github.com/jguddas ) in [https://github.com/lucide-icons/lucide/pull/3107 ](https://redirect.github.com/lucide-icons/lucide/pull/3107 )
- fix(icons): changed `touchpad-off` icon by [@​jguddas](https://redirect.github.com/jguddas ) in [https://github.com/lucide-icons/lucide/pull/3118 ](https://redirect.github.com/lucide-icons/lucide/pull/3118 )
- fix(icons): changed `bell-electric` icon by [@​jguddas](https://redirect.github.com/jguddas ) in [https://github.com/lucide-icons/lucide/pull/3139 ](https://redirect.github.com/lucide-icons/lucide/pull/3139 )
- fix(icons): changed `menu` icon by [@​jguddas](https://redirect.github.com/jguddas ) in [https://github.com/lucide-icons/lucide/pull/3142 ](https://redirect.github.com/lucide-icons/lucide/pull/3142 )
- fix(icons): changed `mail` icon by [@​jguddas](https://redirect.github.com/jguddas ) in [https://github.com/lucide-icons/lucide/pull/3144 ](https://redirect.github.com/lucide-icons/lucide/pull/3144 )
- chore(pr-template): Adjust PR template by [@​ericfennis](https://redirect.github.com/ericfennis ) in [https://github.com/lucide-icons/lucide/pull/3183 ](https://redirect.github.com/lucide-icons/lucide/pull/3183 )
- feat(icons): added `soap-dispenser-droplet` icon by [@​jguddas](https://redirect.github.com/jguddas ) in [https://github.com/lucide-icons/lucide/pull/3088 ](https://redirect.github.com/lucide-icons/lucide/pull/3088 )
- feat(icons): added `panda` icon by [@​chessurisme](https://redirect.github.com/chessurisme ) in [https://github.com/lucide-icons/lucide/pull/2094 ](https://redirect.github.com/lucide-icons/lucide/pull/2094 )
**Full Changelog**: https://github.com/lucide-icons/lucide/compare/0.506.0...0.507.0
### [`v0.506.0`](https://redirect.github.com/lucide-icons/lucide/releases/tag/0.506.0 ): Version 0.506.0
[Compare Source](https://redirect.github.com/lucide-icons/lucide/compare/0.505.0...0.506.0 )
#### What's Changed
- perf(react): use implicit return in react package by [@​VIKTORVAV99](https://redirect.github.com/VIKTORVAV99 ) in [https://github.com/lucide-icons/lucide/pull/2325 ](https://redirect.github.com/lucide-icons/lucide/pull/2325 )
- fix(icons): changed `users` icon by [@​jguddas](https://redirect.github.com/jguddas ) in [https://github.com/lucide-icons/lucide/pull/3143 ](https://redirect.github.com/lucide-icons/lucide/pull/3143 )
- fix(icons): changed `locate-off` icon by [@​jamiemlaw](https://redirect.github.com/jamiemlaw ) in [https://github.com/lucide-icons/lucide/pull/3137 ](https://redirect.github.com/lucide-icons/lucide/pull/3137 )
- fix(icons): changed `expand` icon by [@​jguddas](https://redirect.github.com/jguddas ) in [https://github.com/lucide-icons/lucide/pull/2831 ](https://redirect.github.com/lucide-icons/lucide/pull/2831 )
- feat(icons): Added clock plus icon. by [@​gubser](https://redirect.github.com/gubser ) in [https://github.com/lucide-icons/lucide/pull/2996 ](https://redirect.github.com/lucide-icons/lucide/pull/2996 )
**Full Changelog**: https://github.com/lucide-icons/lucide/compare/0.505.0...0.506.0
### [`v0.505.0`](https://redirect.github.com/lucide-icons/lucide/releases/tag/0.505.0 ): Version 0.505.0
[Compare Source](https://redirect.github.com/lucide-icons/lucide/compare/0.504.0...0.505.0 )
#### What's Changed
- fix(icons): changed `package-2` icon by [@​jguddas](https://redirect.github.com/jguddas ) in [https://github.com/lucide-icons/lucide/pull/3174 ](https://redirect.github.com/lucide-icons/lucide/pull/3174 )
- docs(icon-design-guide): point people to lucide studio instead of svgo by [@​jguddas](https://redirect.github.com/jguddas ) in [https://github.com/lucide-icons/lucide/pull/3152 ](https://redirect.github.com/lucide-icons/lucide/pull/3152 )
- fix(lucide-svelte): Resolve Svelte 5 deprecation of svelte:component by [@​shamaamahh](https://redirect.github.com/shamaamahh ) in [https://github.com/lucide-icons/lucide/pull/3112 ](https://redirect.github.com/lucide-icons/lucide/pull/3112 )
- feat(icons): added `brush-cleaning` icon by [@​karsa-mistmere](https://redirect.github.com/karsa-mistmere ) in [https://github.com/lucide-icons/lucide/pull/2395 ](https://redirect.github.com/lucide-icons/lucide/pull/2395 )
**Full Changelog**: https://github.com/lucide-icons/lucide/compare/0.504.0...0.505.0
### [`v0.504.0`](https://redirect.github.com/lucide-icons/lucide/releases/tag/0.504.0 ): Version 0.504.0
[Compare Source](https://redirect.github.com/lucide-icons/lucide/compare/0.503.0...0.504.0 )
#### What's Changed
- feat(icons): add door closed locked / unlocked icons by [@​lukedukeus](https://redirect.github.com/lukedukeus ) in [https://github.com/lucide-icons/lucide/pull/3060 ](https://redirect.github.com/lucide-icons/lucide/pull/3060 )
- build(dev-deps): Bump dependencies by [@​ericfennis](https://redirect.github.com/ericfennis ) in [https://github.com/lucide-icons/lucide/pull/3096 ](https://redirect.github.com/lucide-icons/lucide/pull/3096 )
- fix(icons): redesigned `brush` icon by [@​jguddas](https://redirect.github.com/jguddas ) in [https://github.com/lucide-icons/lucide/pull/3011 ](https://redirect.github.com/lucide-icons/lucide/pull/3011 )
- fix(site): remove studio link from navbar by [@​jguddas](https://redirect.github.com/jguddas ) in [https://github.com/lucide-icons/lucide/pull/3166 ](https://redirect.github.com/lucide-icons/lucide/pull/3166 )
- feat(icons): added `hamburger` icon by [@​karsa-mistmere](https://redirect.github.com/karsa-mistmere ) in [https://github.com/lucide-icons/lucide/pull/3165 ](https://redirect.github.com/lucide-icons/lucide/pull/3165 )
**Full Changelog**: https://github.com/lucide-icons/lucide/compare/0.503.0...0.504.0
</details>
<details>
<summary>resend/react-email (react-email)</summary>
### [`v4.0.11`](https://redirect.github.com/resend/react-email/blob/HEAD/packages/react-email/CHANGELOG.md#4011 )
[Compare Source](https://redirect.github.com/resend/react-email/compare/react-email@4.0.10...react-email@4.0.11 )
##### Patch Changes
- [`1a17219`](https://redirect.github.com/resend/react-email/commit/1a17219 ): fix improper `require` in `email export`
- [`45ab698`](https://redirect.github.com/resend/react-email/commit/45ab698 ): update next to 15.3.1
### [`v4.0.10`](https://redirect.github.com/resend/react-email/blob/HEAD/packages/react-email/CHANGELOG.md#4010 )
[Compare Source](https://redirect.github.com/resend/react-email/compare/react-email@4.0.9...react-email@4.0.10 )
##### Patch Changes
- [`5ef9fe8`](https://redirect.github.com/resend/react-email/commit/5ef9fe8 ): fix support for `import ... = require(...)` syntax
- [`4c7f597`](https://redirect.github.com/resend/react-email/commit/4c7f597 ): fix `email dev` not working with `traversal` error
### [`v4.0.9`](https://redirect.github.com/resend/react-email/blob/HEAD/packages/react-email/CHANGELOG.md#409 )
[Compare Source](https://redirect.github.com/resend/react-email/compare/react-email@4.0.8...react-email@4.0.9 )
##### Patch Changes
- [`643d841`](https://redirect.github.com/resend/react-email/commit/643d841 ): Add .json import support for hot reloading
- [`f21a983`](https://redirect.github.com/resend/react-email/commit/f21a983 ): fix Node 18 support
- [`cd02449`](https://redirect.github.com/resend/react-email/commit/cd02449 ): Ensure dependencies outside emails directory are completely resolved
- [`73a31ed`](https://redirect.github.com/resend/react-email/commit/73a31ed ): Fix dependent of dependents not causing hot reloads
- [`bdffd8c`](https://redirect.github.com/resend/react-email/commit/bdffd8c ): fix backwards compatibility with `render` versions
- [`e7fa043`](https://redirect.github.com/resend/react-email/commit/e7fa043 ): Fix access to files outside `static` directory
- [`9aa033c`](https://redirect.github.com/resend/react-email/commit/9aa033c ): Use range of versions for dependencies
- [`ab70556`](https://redirect.github.com/resend/react-email/commit/ab70556 ): Fix non-email files being rendered during hot reloading
- [`9c9aa5d`](https://redirect.github.com/resend/react-email/commit/9c9aa5d ): Add error message for when an email template does not have a default export
### [`v4.0.8`](https://redirect.github.com/resend/react-email/blob/HEAD/packages/react-email/CHANGELOG.md#408 )
[Compare Source](https://redirect.github.com/resend/react-email/compare/react-email@4.0.7...react-email@4.0.8 )
##### Patch Changes
- [`ea579b5`](https://redirect.github.com/resend/react-email/commit/ea579b5 ): Log out errors that happen when `export`'s esbuild fails
</details>
<details>
<summary>shikijs/shiki (shiki)</summary>
### [`v3.4.0`](https://redirect.github.com/shikijs/shiki/releases/tag/v3.4.0 )
[Compare Source](https://redirect.github.com/shikijs/shiki/compare/v3.3.0...v3.4.0 )
##### 🐞 Bug Fixes
- Update deps and grammars - by [@​antfu](https://redirect.github.com/antfu ) [<samp>(310d1)</samp>](https://redirect.github.com/shikijs/shiki/commit/310d1419 )
##### [View changes on GitHub](https://redirect.github.com/shikijs/shiki/compare/v3.3.0...v3.4.0 )
</details>
<details>
<summary>tokio-rs/tokio (tokio)</summary>
### [`v1.45.0`](https://redirect.github.com/tokio-rs/tokio/releases/tag/tokio-1.45.0 ): Tokio v1.45.0
[Compare Source](https://redirect.github.com/tokio-rs/tokio/compare/tokio-1.44.2...tokio-1.45.0 )
##### Added
- metrics: stabilize `worker_total_busy_duration`, `worker_park_count`, and `worker_unpark_count` ([#​6899], [#​7276])
- process: add `Command::spawn_with` ([#​7249])
##### Changed
- io: do not require `Unpin` for some trait impls ([#​7204])
- rt: mark `runtime::Handle` as unwind safe ([#​7230])
- time: revert internal sharding implementation ([#​7226])
##### Unstable
- rt: remove alt multi-threaded runtime ([#​7275])
[#​6899]: https://redirect.github.com/tokio-rs/tokio/pull/6899
[#​7276]: https://redirect.github.com/tokio-rs/tokio/pull/7276
[#​7249]: https://redirect.github.com/tokio-rs/tokio/pull/7249
[#​7204]: https://redirect.github.com/tokio-rs/tokio/pull/7204
[#​7230]: https://redirect.github.com/tokio-rs/tokio/pull/7230
[#​7226]: https://redirect.github.com/tokio-rs/tokio/pull/7226
[#​7275]: https://redirect.github.com/tokio-rs/tokio/pull/7275
</details>
<details>
<summary>mozilla/uniffi-rs (uniffi)</summary>
### [`v0.29.2`](https://redirect.github.com/mozilla/uniffi-rs/compare/v0.29.1...v0.29.2 )
[Compare Source](https://redirect.github.com/mozilla/uniffi-rs/compare/v0.29.1...v0.29.2 )
</details>
<details>
<summary>webpack/webpack (webpack)</summary>
### [`v5.99.8`](https://redirect.github.com/webpack/webpack/releases/tag/v5.99.8 )
[Compare Source](https://redirect.github.com/webpack/webpack/compare/v5.99.7...v5.99.8 )
##### Fixes
- Fixed type error with latest `@types/node`
- Fixed typescript types
</details>
<details>
<summary>google/ksp (com.google.devtools.ksp)</summary>
### [`v2.1.20-2.0.1`](https://redirect.github.com/google/ksp/releases/tag/2.1.20-2.0.1 )
[Compare Source](https://redirect.github.com/google/ksp/compare/2.1.20-2.0.0...2.1.20-2.0.1 )
##### What's Changed
- \[KSP2] Annotation values shouldn't be marked as default (synthetic origin) broken after PR [#​2424](https://redirect.github.com/google/ksp/issues/2424 ) in [https://github.com/google/ksp/pull/2425 ](https://redirect.github.com/google/ksp/pull/2425 )
- \[KSP2] Wrong internal method name with custom moduleName compiler option in[https://github.com/google/ksp/pull/2415 ](https://redirect.github.com/google/ksp/pull/2415 )5
- \[KSP2] getJvmName for internal method did not sanitize java identifiers in[https://github.com/google/ksp/pull/2413 ](https://redirect.github.com/google/ksp/pull/2413 )3
- \[KSP2] Annotation and argument's origin is wrong in[https://github.com/google/ksp/pull/2412 ](https://redirect.github.com/google/ksp/pull/2412 )2
- \[KSP2] functionKind is MEMBER for static method in interface in Java in[https://github.com/google/ksp/pull/2410 ](https://redirect.github.com/google/ksp/pull/2410 )0
- KSP2 Generated .class files are not added to the classpath in [https://github.com/google/ksp/pull/2365 ](https://redirect.github.com/google/ksp/pull/2365 )
- When I write specific code, KSP throws an Unexpected class for KtSymbol error. in [https://github.com/google/ksp/pull/2303 ](https://redirect.github.com/google/ksp/pull/2303 )
##### Contributors
Thanks to everyone who reported bugs and participated in discussions!
**Full Changelog**: https://github.com/google/ksp/compare/2.1.20-2.0.0...2.1.20-2.0.1
</details>
<details>
<summary>apollographql/apollo-kotlin-adapters (com.apollographql.adapters:apollo-adapters-kotlinx-datetime)</summary>
### [`v0.0.6`](https://redirect.github.com/apollographql/apollo-kotlin-adapters/releases/tag/v0.0.6 )
Publishing only change. This version updates the license name to be SPDX compliant ([https://github.com/apollographql/apollo-kotlin-adapters/pull/30 ](https://redirect.github.com/apollographql/apollo-kotlin-adapters/pull/30 ))
### [`v0.0.5`](https://redirect.github.com/apollographql/apollo-kotlin-adapters/blob/HEAD/CHANGELOG.md#Version-005 )
*2025-04-29*
- Do not set the license URL in the POMs ([#​29](https://redirect.github.com/apollographql/apollo-kotlin-adapters/issues/29 ))
</details>
<details>
<summary>apollographql/apollo-kotlin (com.apollographql.apollo)</summary>
### [`v4.2.0`](https://redirect.github.com/apollographql/apollo-kotlin/blob/HEAD/CHANGELOG.md#Version-420 )
*2025-04-28*
#### Generate custom scalars as inline classes with `@map` and `@mapTo` ([#​6404](https://redirect.github.com/apollographql/apollo-kotlin/issues/6404 ))
It is now possible to configure the adapters to use with [scalars](https://www.apollographql.com/docs/kotlin/essentials/custom-scalars ) by using the [`@map` directive](https://specs.apollo.dev/kotlin_labs/v0.5/#@​map ):
```graphql
extend schema @​link(url: "https://specs.apollo.dev/kotlin_labs/v0.5/ ", import: ["@​mapTo", "@​map"])
extend scalar Date @​map(to: "kotlinx.datetime.Instant", with: "com.apollographql.adapters.InstantAdapter")
```
If the `to` parameter is an [inline value class](https://kotlinlang.org/docs/inline-classes.html ), use the `inlineProperty` parameter to have the generated code box/unbox the value. In that case, `with` needs to point to an adapter of the underlying type:
```graphql
extend scalar Timestamp @​map(to: "com.example.Timestamp", with: "com.apollographql.apollo.api.LongAdapter", inlineProperty: "ts")
```
For the common cases where the scalar can be represented as a built-in Kotlin type (String, Boolean, Int, Long, Float, Double), you can use [`@mapTo`](https://specs.apollo.dev/kotlin_labs/v0.5/#@​mapTo ) and the compiler infers the adapter and generates an inline value class automatically:
```graphql
extend scalar Length @​mapTo(builtIn: Long)
```
#### Scalar definitions in schemas downloaded from introspection ([#​6389](https://redirect.github.com/apollographql/apollo-kotlin/issues/6389 ))
Downloading or converting an SDL schema from introspection now includes scalar definitions.
This is required for clients to get a [full view of the schema](https://redirect.github.com/graphql/graphql-wg/blob/main/rfcs/FullSchemas.md ).
#### Support for `@disableErrorPropagation`
Apollo Kotlin now automatically adds [`@disableErrorPropagation`](https://redirect.github.com/graphql/nullability-wg/discussions/85 ) if your server supports it and you opted in `@catchByDefault` in your schema extensions. This allows to use non-null types more liberally and still get support for partial data.
See [https://github.com/graphql/graphql-js/pull/4348 ](https://redirect.github.com/graphql/graphql-js/pull/4348 ) and [https://github.com/graphql-java/graphql-java/pull/3772 ](https://redirect.github.com/graphql-java/graphql-java/pull/3772 )
#### Contributors 💜
Many thanks to [@​bobbysothebys](https://redirect.github.com/bobbysothebys ), [@​jvanderwee](https://redirect.github.com/jvanderwee ), [@​dhritzkiv](https://redirect.github.com/dhritzkiv ), [@​lwasyl](https://redirect.github.com/lwasyl ) and [@​rohandhruva](https://redirect.github.com/rohandhruva ) for all the contributions and help in this release 💜
#### 👷♂️ All changes
- \[intellij-plugin] Fix MemoryCache package name ([#​6383](https://redirect.github.com/apollographql/apollo-kotlin/issues/6383 ))
- \[intellij-plugin] Rover: always pass path to supergraph.yaml if present ([#​6384](https://redirect.github.com/apollographql/apollo-kotlin/issues/6384 ))
- \[intellij-plugin] Make 'Download Schema action' consider deep subprojects ([#​6394](https://redirect.github.com/apollographql/apollo-kotlin/issues/6394 ))
- \[intellij-plugin] Fix a crash when invoking the 'missing `@link`' quickfix ([#​6402](https://redirect.github.com/apollographql/apollo-kotlin/issues/6402 ))
- \[intellij-plugin] Use configured Gradle JVM when executing tasks ([#​6425](https://redirect.github.com/apollographql/apollo-kotlin/issues/6425 ))
- \[in
</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:eyJjcmVhdGVkSW5WZXIiOiIzOS4yNjQuMCIsInVwZGF0ZWRJblZlciI6IjM5LjI2NC4wIiwidGFyZ2V0QnJhbmNoIjoiY2FuYXJ5IiwibGFiZWxzIjpbImRlcGVuZGVuY2llcyJdfQ==-->
2025-05-06 14:47:24 +00:00
renovate
73548c6261
chore: bump up all non-major npm dependencies ( #12067 )
...
This PR contains the following updates:
| Package | Change | Age | Adoption | Passing | Confidence | Type | Update |
|---|---|---|---|---|---|---|---|
| [@ai-sdk/google](https://ai-sdk.dev/docs ) ([source](https://redirect.github.com/vercel/ai )) | [`1.2.13` -> `1.2.15`](https://renovatebot.com/diffs/npm/@ai-sdk%2fgoogle/1.2.13/1.2.15 ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | dependencies | patch |
| [@ai-sdk/openai](https://sdk.vercel.ai/docs ) ([source](https://redirect.github.com/vercel/ai )) | [`1.3.20` -> `1.3.21`](https://renovatebot.com/diffs/npm/@ai-sdk%2fopenai/1.3.20/1.3.21 ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | dependencies | patch |
| [@ai-sdk/perplexity](https://sdk.vercel.ai/docs ) ([source](https://redirect.github.com/vercel/ai )) | [`1.1.7` -> `1.1.8`](https://renovatebot.com/diffs/npm/@ai-sdk%2fperplexity/1.1.7/1.1.8 ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | 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.797.0` -> `3.803.0`](https://renovatebot.com/diffs/npm/@aws-sdk%2fclient-s3/3.797.0/3.803.0 ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | dependencies | minor |
| [@aws-sdk/s3-request-presigner](https://redirect.github.com/aws/aws-sdk-js-v3/tree/main/packages/s3-request-presigner ) ([source](https://redirect.github.com/aws/aws-sdk-js-v3/tree/HEAD/packages/s3-request-presigner )) | [`3.797.0` -> `3.803.0`](https://renovatebot.com/diffs/npm/@aws-sdk%2fs3-request-presigner/3.797.0/3.803.0 ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | dependencies | minor |
| [@capawesome/capacitor-android-edge-to-edge-support](https://capawesome.io/plugins/android-edge-to-edge-support/ ) ([source](https://redirect.github.com/capawesome-team/capacitor-plugins )) | [`7.1.1` -> `7.2.1`](https://renovatebot.com/diffs/npm/@capawesome%2fcapacitor-android-edge-to-edge-support/7.1.1/7.2.1 ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | dependencies | minor |
| [@capgo/inappbrowser](https://redirect.github.com/Cap-go/capacitor-inappbrowser ) | [`7.9.0` -> `7.9.2`](https://renovatebot.com/diffs/npm/@capgo%2finappbrowser/7.9.0/7.9.2 ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | dependencies | patch |
| [@eslint/js](https://eslint.org ) ([source](https://redirect.github.com/eslint/eslint/tree/HEAD/packages/js )) | [`9.25.1` -> `9.26.0`](https://renovatebot.com/diffs/npm/@eslint%2fjs/9.25.1/9.26.0 ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | devDependencies | minor |
| [@floating-ui/dom](https://floating-ui.com ) ([source](https://redirect.github.com/floating-ui/floating-ui/tree/HEAD/packages/dom )) | [`1.6.13` -> `1.7.0`](https://renovatebot.com/diffs/npm/@floating-ui%2fdom/1.6.13/1.7.0 ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | dependencies | minor |
| [@google/generative-ai](https://redirect.github.com/google/generative-ai-js ) | [`0.24.0` -> `0.24.1`](https://renovatebot.com/diffs/npm/@google%2fgenerative-ai/0.24.0/0.24.1 ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | dependencies | patch |
| [@lottiefiles/dotlottie-wc](https://redirect.github.com/LottieFiles/dotlottie-web ) ([source](https://redirect.github.com/LottieFiles/dotlottie-web/tree/HEAD/packages/wc )) | [`0.5.2` -> `0.5.3`](https://renovatebot.com/diffs/npm/@lottiefiles%2fdotlottie-wc/0.5.2/0.5.3 ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | dependencies | patch |
| [@prisma/client](https://www.prisma.io ) ([source](https://redirect.github.com/prisma/prisma/tree/HEAD/packages/client )) | [`6.6.0` -> `6.7.0`](https://renovatebot.com/diffs/npm/@prisma%2fclient/6.6.0/6.7.0 ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | dependencies | minor |
| [@radix-ui/react-accordion](https://radix-ui.com/primitives ) ([source](https://redirect.github.com/radix-ui/primitives )) | [`1.2.8` -> `1.2.10`](https://renovatebot.com/diffs/npm/@radix-ui%2freact-accordion/1.2.8/1.2.10 ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | dependencies | patch |
| [@radix-ui/react-alert-dialog](https://radix-ui.com/primitives ) ([source](https://redirect.github.com/radix-ui/primitives )) | [`1.1.11` -> `1.1.13`](https://renovatebot.com/diffs/npm/@radix-ui%2freact-alert-dialog/1.1.11/1.1.13 ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | dependencies | patch |
| [@radix-ui/react-aspect-ratio](https://radix-ui.com/primitives ) ([source](https://redirect.github.com/radix-ui/primitives )) | [`1.1.4` -> `1.1.6`](https://renovatebot.com/diffs/npm/@radix-ui%2freact-aspect-ratio/1.1.4/1.1.6 ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | dependencies | patch |
| [@radix-ui/react-avatar](https://radix-ui.com/primitives ) ([source](https://redirect.github.com/radix-ui/primitives )) | [`1.1.7` -> `1.1.9`](https://renovatebot.com/diffs/npm/@radix-ui%2freact-avatar/1.1.7/1.1.9 ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | dependencies | patch |
| [@radix-ui/react-checkbox](https://radix-ui.com/primitives ) ([source](https://redirect.github.com/radix-ui/primitives )) | [`1.2.3` -> `1.3.1`](https://renovatebot.com/diffs/npm/@radix-ui%2freact-checkbox/1.2.3/1.3.1 ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | dependencies | minor |
| [@radix-ui/react-collapsible](https://radix-ui.com/primitives ) ([source](https://redirect.github.com/radix-ui/primitives )) | [`1.1.8` -> `1.1.10`](https://renovatebot.com/diffs/npm/@radix-ui%2freact-collapsible/1.1.8/1.1.10 ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | dependencies | patch |
| [@radix-ui/react-context-menu](https://radix-ui.com/primitives ) ([source](https://redirect.github.com/radix-ui/primitives )) | [`2.2.12` -> `2.2.14`](https://renovatebot.com/diffs/npm/@radix-ui%2freact-context-menu/2.2.12/2.2.14 ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | dependencies | patch |
| [@radix-ui/react-dialog](https://radix-ui.com/primitives ) ([source](https://redirect.github.com/radix-ui/primitives )) | [`1.1.11` -> `1.1.13`](https://renovatebot.com/diffs/npm/@radix-ui%2freact-dialog/1.1.11/1.1.13 ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | dependencies | patch |
| [@radix-ui/react-dropdown-menu](https://radix-ui.com/primitives ) ([source](https://redirect.github.com/radix-ui/primitives )) | [`2.1.12` -> `2.1.14`](https://renovatebot.com/diffs/npm/@radix-ui%2freact-dropdown-menu/2.1.12/2.1.14 ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | dependencies | patch |
| [@radix-ui/react-hover-card](https://radix-ui.com/primitives ) ([source](https://redirect.github.com/radix-ui/primitives )) | [`1.1.11` -> `1.1.13`](https://renovatebot.com/diffs/npm/@radix-ui%2freact-hover-card/1.1.11/1.1.13 ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | dependencies | patch |
| [@radix-ui/react-label](https://radix-ui.com/primitives ) ([source](https://redirect.github.com/radix-ui/primitives )) | [`2.1.4` -> `2.1.6`](https://renovatebot.com/diffs/npm/@radix-ui%2freact-label/2.1.4/2.1.6 ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | dependencies | patch |
| [@radix-ui/react-menubar](https://radix-ui.com/primitives ) ([source](https://redirect.github.com/radix-ui/primitives )) | [`1.1.12` -> `1.1.14`](https://renovatebot.com/diffs/npm/@radix-ui%2freact-menubar/1.1.12/1.1.14 ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | dependencies | patch |
| [@radix-ui/react-navigation-menu](https://radix-ui.com/primitives ) ([source](https://redirect.github.com/radix-ui/primitives )) | [`1.2.10` -> `1.2.12`](https://renovatebot.com/diffs/npm/@radix-ui%2freact-navigation-menu/1.2.10/1.2.12 ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | dependencies | patch |
| [@radix-ui/react-popover](https://radix-ui.com/primitives ) ([source](https://redirect.github.com/radix-ui/primitives )) | [`1.1.11` -> `1.1.13`](https://renovatebot.com/diffs/npm/@radix-ui%2freact-popover/1.1.11/1.1.13 ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | dependencies | patch |
| [@radix-ui/react-progress](https://radix-ui.com/primitives ) ([source](https://redirect.github.com/radix-ui/primitives )) | [`1.1.4` -> `1.1.6`](https://renovatebot.com/diffs/npm/@radix-ui%2freact-progress/1.1.4/1.1.6 ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | dependencies | patch |
| [@radix-ui/react-radio-group](https://radix-ui.com/primitives ) ([source](https://redirect.github.com/radix-ui/primitives )) | [`1.3.4` -> `1.3.6`](https://renovatebot.com/diffs/npm/@radix-ui%2freact-radio-group/1.3.4/1.3.6 ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | dependencies | patch |
| [@radix-ui/react-scroll-area](https://radix-ui.com/primitives ) ([source](https://redirect.github.com/radix-ui/primitives )) | [`1.2.6` -> `1.2.8`](https://renovatebot.com/diffs/npm/@radix-ui%2freact-scroll-area/1.2.6/1.2.8 ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | dependencies | patch |
| [@radix-ui/react-select](https://radix-ui.com/primitives ) ([source](https://redirect.github.com/radix-ui/primitives )) | [`2.2.2` -> `2.2.4`](https://renovatebot.com/diffs/npm/@radix-ui%2freact-select/2.2.2/2.2.4 ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | dependencies | patch |
| [@radix-ui/react-separator](https://radix-ui.com/primitives ) ([source](https://redirect.github.com/radix-ui/primitives )) | [`1.1.4` -> `1.1.6`](https://renovatebot.com/diffs/npm/@radix-ui%2freact-separator/1.1.4/1.1.6 ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | dependencies | patch |
| [@radix-ui/react-slider](https://radix-ui.com/primitives ) ([source](https://redirect.github.com/radix-ui/primitives )) | [`1.3.2` -> `1.3.4`](https://renovatebot.com/diffs/npm/@radix-ui%2freact-slider/1.3.2/1.3.4 ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | dependencies | patch |
| [@radix-ui/react-slot](https://radix-ui.com/primitives ) ([source](https://redirect.github.com/radix-ui/primitives )) | [`1.2.0` -> `1.2.2`](https://renovatebot.com/diffs/npm/@radix-ui%2freact-slot/1.2.0/1.2.2 ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | dependencies | patch |
| [@radix-ui/react-switch](https://radix-ui.com/primitives ) ([source](https://redirect.github.com/radix-ui/primitives )) | [`1.2.2` -> `1.2.4`](https://renovatebot.com/diffs/npm/@radix-ui%2freact-switch/1.2.2/1.2.4 ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | dependencies | patch |
| [@radix-ui/react-tabs](https://radix-ui.com/primitives ) ([source](https://redirect.github.com/radix-ui/primitives )) | [`1.1.9` -> `1.1.11`](https://renovatebot.com/diffs/npm/@radix-ui%2freact-tabs/1.1.9/1.1.11 ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | dependencies | patch |
| [@radix-ui/react-toast](https://radix-ui.com/primitives ) ([source](https://redirect.github.com/radix-ui/primitives )) | [`1.2.11` -> `1.2.13`](https://renovatebot.com/diffs/npm/@radix-ui%2freact-toast/1.2.11/1.2.13 ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | dependencies | patch |
| [@radix-ui/react-toggle](https://radix-ui.com/primitives ) ([source](https://redirect.github.com/radix-ui/primitives )) | [`1.1.6` -> `1.1.8`](https://renovatebot.com/diffs/npm/@radix-ui%2freact-toggle/1.1.6/1.1.8 ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | dependencies | patch |
| [@radix-ui/react-toggle-group](https://radix-ui.com/primitives ) ([source](https://redirect.github.com/radix-ui/primitives )) | [`1.1.7` -> `1.1.9`](https://renovatebot.com/diffs/npm/@radix-ui%2freact-toggle-group/1.1.7/1.1.9 ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | dependencies | patch |
| [@radix-ui/react-toolbar](https://radix-ui.com/primitives ) ([source](https://redirect.github.com/radix-ui/primitives )) | [`1.1.7` -> `1.1.9`](https://renovatebot.com/diffs/npm/@radix-ui%2freact-toolbar/1.1.7/1.1.9 ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | dependencies | patch |
| [@radix-ui/react-tooltip](https://radix-ui.com/primitives ) ([source](https://redirect.github.com/radix-ui/primitives )) | [`1.2.4` -> `1.2.6`](https://renovatebot.com/diffs/npm/@radix-ui%2freact-tooltip/1.2.4/1.2.6 ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | dependencies | patch |
| [@radix-ui/react-visually-hidden](https://radix-ui.com/primitives ) ([source](https://redirect.github.com/radix-ui/primitives )) | [`1.2.0` -> `1.2.2`](https://renovatebot.com/diffs/npm/@radix-ui%2freact-visually-hidden/1.2.0/1.2.2 ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | 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.36` -> `0.0.38`](https://renovatebot.com/diffs/npm/@react-email%2fcomponents/0.0.36/0.0.38 ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | dependencies | patch |
| [@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 )) | [`3.3.1` -> `3.4.0`](https://renovatebot.com/diffs/npm/@sentry%2fesbuild-plugin/3.3.1/3.4.0 ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | devDependencies | minor |
| [@sentry/react](https://redirect.github.com/getsentry/sentry-javascript/tree/master/packages/react ) ([source](https://redirect.github.com/getsentry/sentry-javascript )) | [`9.14.0` -> `9.15.0`](https://renovatebot.com/diffs/npm/@sentry%2freact/9.14.0/9.15.0 ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | dependencies | minor |
| [@sentry/react](https://redirect.github.com/getsentry/sentry-javascript/tree/master/packages/react ) ([source](https://redirect.github.com/getsentry/sentry-javascript )) | [`9.14.0` -> `9.15.0`](https://renovatebot.com/diffs/npm/@sentry%2freact/9.14.0/9.15.0 ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | devDependencies | minor |
| [@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 )) | [`3.3.1` -> `3.4.0`](https://renovatebot.com/diffs/npm/@sentry%2fwebpack-plugin/3.3.1/3.4.0 ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | dependencies | minor |
| [@swc/core](https://swc.rs ) ([source](https://redirect.github.com/swc-project/swc )) | [`1.11.22` -> `1.11.24`](https://renovatebot.com/diffs/npm/@swc%2fcore/1.11.22/1.11.24 ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | dependencies | patch |
| [@tailwindcss/postcss](https://tailwindcss.com ) ([source](https://redirect.github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-postcss )) | [`4.1.4` -> `4.1.5`](https://renovatebot.com/diffs/npm/@tailwindcss%2fpostcss/4.1.4/4.1.5 ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | dependencies | patch |
| [@tailwindcss/vite](https://tailwindcss.com ) ([source](https://redirect.github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-vite )) | [`4.1.4` -> `4.1.5`](https://renovatebot.com/diffs/npm/@tailwindcss%2fvite/4.1.4/4.1.5 ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | dependencies | patch |
| [@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.54.0` -> `2.60.0`](https://renovatebot.com/diffs/npm/@types%2fmixpanel-browser/2.54.0/2.60.0 ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | devDependencies | minor |
| [@types/mustache](https://redirect.github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/mustache ) ([source](https://redirect.github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/mustache )) | [`4.2.5` -> `4.2.6`](https://renovatebot.com/diffs/npm/@types%2fmustache/4.2.5/4.2.6 ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | devDependencies | patch |
| [@types/node](https://redirect.github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/node ) ([source](https://redirect.github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node )) | [`22.15.2` -> `22.15.12`](https://renovatebot.com/diffs/npm/@types%2fnode/22.15.2/22.15.12 ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | dependencies | patch |
| [@types/node](https://redirect.github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/node ) ([source](https://redirect.github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node )) | [`22.15.2` -> `22.15.12`](https://renovatebot.com/diffs/npm/@types%2fnode/22.15.2/22.15.12 ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | devDependencies | patch |
| [@types/react](https://redirect.github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/react ) ([source](https://redirect.github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/react )) | [`19.1.2` -> `19.1.3`](https://renovatebot.com/diffs/npm/@types%2freact/19.1.2/19.1.3 ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | devDependencies | patch |
| [@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.1.2` -> `19.1.3`](https://renovatebot.com/diffs/npm/@types%2freact-dom/19.1.2/19.1.3 ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | devDependencies | patch |
| [@vitest/browser](https://redirect.github.com/vitest-dev/vitest/tree/main/packages/browser#readme ) ([source](https://redirect.github.com/vitest-dev/vitest/tree/HEAD/packages/browser )) | [`3.1.2` -> `3.1.3`](https://renovatebot.com/diffs/npm/@vitest%2fbrowser/3.1.2/3.1.3 ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | devDependencies | patch |
| [@vitest/coverage-istanbul](https://redirect.github.com/vitest-dev/vitest/tree/main/packages/coverage-istanbul#readme ) ([source](https://redirect.github.com/vitest-dev/vitest/tree/HEAD/packages/coverage-istanbul )) | [`3.1.2` -> `3.1.3`](https://renovatebot.com/diffs/npm/@vitest%2fcoverage-istanbul/3.1.2/3.1.3 ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | devDependencies | patch |
| [@vitest/ui](https://redirect.github.com/vitest-dev/vitest/tree/main/packages/ui#readme ) ([source](https://redirect.github.com/vitest-dev/vitest/tree/HEAD/packages/ui )) | [`3.1.2` -> `3.1.3`](https://renovatebot.com/diffs/npm/@vitest%2fui/3.1.2/3.1.3 ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | devDependencies | patch |
| [ai](https://sdk.vercel.ai/docs ) ([source](https://redirect.github.com/vercel/ai )) | [`4.3.10` -> `4.3.13`](https://renovatebot.com/diffs/npm/ai/4.3.10/4.3.13 ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | dependencies | patch |
| [app-builder-lib](https://redirect.github.com/electron-userland/electron-builder ) ([source](https://redirect.github.com/electron-userland/electron-builder/tree/HEAD/packages/app-builder-lib )) | [`26.0.14` -> `26.0.15`](https://renovatebot.com/diffs/npm/app-builder-lib/26.0.14/26.0.15 ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | devDependencies | patch |
| [ava](https://avajs.dev ) ([source](https://redirect.github.com/avajs/ava )) | [`6.2.0` -> `6.3.0`](https://renovatebot.com/diffs/npm/ava/6.2.0/6.3.0 ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | devDependencies | minor |
| [bullmq](https://bullmq.io/ ) ([source](https://redirect.github.com/taskforcesh/bullmq )) | [`5.51.1` -> `5.52.1`](https://renovatebot.com/diffs/npm/bullmq/5.51.1/5.52.1 ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | dependencies | minor |
| [cc](https://redirect.github.com/rust-lang/cc-rs ) | `1.2.20` -> `1.2.21` | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | build-dependencies | patch |
| [chrono](https://redirect.github.com/chronotope/chrono ) | `0.4.40` -> `0.4.41` | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | workspace.dependencies | patch |
| [core-js](https://redirect.github.com/zloirock/core-js ) ([source](https://redirect.github.com/zloirock/core-js/tree/HEAD/packages/core-js )) | [`3.41.0` -> `3.42.0`](https://renovatebot.com/diffs/npm/core-js/3.41.0/3.42.0 ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | dependencies | minor |
| [electron](https://redirect.github.com/electron/electron ) | [`36.0.0` -> `36.1.0`](https://renovatebot.com/diffs/npm/electron/36.0.0/36.1.0 ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | devDependencies | minor |
| [electron-log](https://redirect.github.com/megahertz/electron-log ) | [`5.3.4` -> `5.4.0`](https://renovatebot.com/diffs/npm/electron-log/5.3.4/5.4.0 ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | devDependencies | minor |
| [electron-updater]
2025-05-06 13:46:48 +00:00
Flrande
f79dfe837f
feat(editor): support preview mode in code block ( #11805 )
...
<!-- This is an auto-generated comment: release notes by coderabbit.ai -->
## Summary by CodeRabbit
- **New Features**
- Introduced a preview mode for code blocks, allowing users to toggle between code and rendered previews (e.g., HTML output) directly within the editor.
- Added a preview toggle button to the code block toolbar for supported languages.
- Enabled dynamic rendering of code block previews using a shared WebContainer, allowing live HTML previews in an embedded iframe.
- Added HTML preview support with loading and error states for enhanced user feedback.
- Integrated the preview feature as a view extension provider for seamless framework support.
- **Bug Fixes**
- Improved toolbar layout and button alignment for a cleaner user interface.
- **Tests**
- Added end-to-end tests to verify the new code block preview functionality and language switching behavior.
- **Chores**
- Updated development server configuration to include enhanced security headers.
- Added a new runtime dependency for WebContainer support.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2025-05-06 09:14:12 +00:00
Saul-Mirone
1e89aa48cb
refactor(editor): remove unused code ( #12142 )
...
<!-- This is an auto-generated comment: release notes by coderabbit.ai -->
## Summary by CodeRabbit
- **Refactor**
- Streamlined internal logic for handling block operations to improve efficiency.
- Removed unused reactive subject and related code from document handling classes.
- Renamed a private initialization method for improved clarity.
- **Chores**
- Cleaned up redundant code and imports to simplify maintenance.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2025-05-06 09:00:40 +00:00
doufa
1994dd6d9d
fix(editor): can not delete code block with delete keyboard ( #11988 )
2025-05-06 16:14:41 +08:00
Saul-Mirone
88ceeba5b6
refactor(editor): move block yjs listener to store ( #12140 )
...
<!-- This is an auto-generated comment: release notes by coderabbit.ai -->
## Summary by CodeRabbit
- **Refactor**
- Streamlined internal event handling for block updates, removing previous notification mechanisms from several components.
- **Chores**
- Simplified and cleaned up internal logic related to block addition and deletion tracking.
No visible changes to the user interface or end-user features.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2025-05-06 07:44:57 +00:00
L-Sun
245db4e992
fix(editor): make selected and out-of-viewport block active ( #12135 )
...
This PR make out-of-viewport but selected edgeless block keep active, since the selected block may still have some user interactions on the DOM. For example, when hover on a selected note and scroll viewport by wheel to view its hidden content, the note should not be hidden (a.k.a idel).
<!-- This is an auto-generated comment: release notes by coderabbit.ai -->
## Summary by CodeRabbit
- **Refactor**
- Updated viewport logic to keep selected items visible instead of only those being edited. Visibility now depends on selection status rather than editing state.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2025-05-06 07:05:54 +00:00
doodlewind
065167a09f
test(editor): reduce flaky timing in turbo renderer tests ( #12082 )
...
### TL;DR
Improved the test stability for the turbo renderer by using reactive state observation instead of arbitrary timeouts. (https://github.com/toeverything/AFFiNE/actions/runs/14729729312/job/41340918866?pr=12071 )
### What changed?
- Replaced `wait(FRAME)` and other timeout-based waits with reactive state observation using RxJS
- Added `filter` import from `rxjs/operators`
- Updated test assertions to properly wait for specific renderer states (`ready`, `pending`, `zooming`)
- Made tests more deterministic by waiting for specific state transitions rather than arbitrary time periods
<!-- This is an auto-generated comment: release notes by coderabbit.ai -->
## Summary by CodeRabbit
- **Tests**
- Improved test reliability by replacing fixed-duration waits with reactive waits based on renderer state changes, ensuring tests are synchronized with actual state transitions.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2025-05-06 02:32:48 +00:00
Saul-Mirone
d859c4252b
refactor(editor): move history from doc to store ( #12131 )
...
<!-- This is an auto-generated comment: release notes by coderabbit.ai -->
## Summary by CodeRabbit
- **New Features**
- Undo/redo history management is now centralized in the workspace, providing more consistent and robust undo/redo behavior.
- History update events are emitted at the workspace level, enabling better tracking of changes.
- **Bug Fixes**
- Improved reliability of undo/redo actions by shifting history management from documents to the workspace.
- **Documentation**
- Updated and clarified documentation for history-related APIs, including improved examples and clearer descriptions.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2025-05-05 09:24:09 +00:00