mirror of
https://github.com/toeverything/AFFiNE.git
synced 2026-07-13 08:06:24 +08:00
8063af2da809289da5da127a4e5f74e95b89756a
460 Commits
| Author | SHA1 | Message | Date | |
|---|---|---|---|---|
|
|
11db127772 | chore: bump deps (#15151) | ||
|
|
d500e472f0 | chore: bump deps (#15124) | ||
|
|
aca47445aa |
feat(client): migration old package to rspack (#15068)
#### PR Dependency Tree * **PR #15068** 👈 This tree was auto-generated by [Charcoal](https://github.com/danerwilliams/charcoal) <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit * **Chores** * Upgraded Vitest across packages to 4.1.8 and bumped Tailwind PostCSS to 4.3.0 * CLI/tooling updated to support the media-capture-playground package and adjust build/dev server behavior * **Bug Fixes** * Improved workspace deletion reliability in the Electron app * **Refactor** * Simplified media capture playground build setup (build/config adjustments) * **Tests** * Made tests more robust by preserving/restoring environment state during runs <!-- end of auto-generated comment: release notes by coderabbit.ai --> |
||
|
|
7123595831 |
chore: bump deps (#15059)
#### PR Dependency Tree * **PR #15059** 👈 This tree was auto-generated by [Charcoal](https://github.com/danerwilliams/charcoal) <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit * **New Features** * Configurable minimum account age before new accounts can invite members or create share links (default: 24 hours). * Sign-in now returns and caches user info for improved session handling. * **Bug Fixes** * Queue handling accepts and resolves job IDs with special characters. * Improved clipboard/rich-text caret handling and nested-list paste reliability. * Calendar tests use dynamic current-month dates. * AI search returns explicit "No matching documents" when none found. * Auth session responses are explicitly non-cacheable. * **Chores** * Dependency and toolchain bumps; admin UI config/schema exposes the new account-age setting. <!-- end of auto-generated comment: release notes by coderabbit.ai --> |
||
|
|
6d1172ba44 | chore: bump deps | ||
|
|
0f5778ac89 |
feat(editor): calendar view for database block (#14984)
fix #13663 #### PR Dependency Tree * **PR #14984** 👈 This tree was auto-generated by [Charcoal](https://github.com/danerwilliams/charcoal) <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit * **New Features** * Calendar view for database blocks (month layout, entry cards, external-source support) * Workspace calendar integration and new slash-menu "Calendar View" * **Improvements** * Create/manage database rows from calendar UI; preserve durations when moving/resizing ranges * Drag-and-drop, drop-preview, and hit-testing support for calendar and docs * Redesigned in-menu View settings with multi-page navigation * Context-menu input autofocus toggle and conditional back-navigation * **Tests** * New unit and E2E suites covering calendar layout, interactions, sources, and slash-menu integration <!-- end of auto-generated comment: release notes by coderabbit.ai --> |
||
|
|
440ff0c342 |
fix(editor): resolve UX inconsistencies in the AI chat interface (#14850)
# Closes #14189. Fixes the three UX issues reported in the original bug report, plus one small adjacent polish on the right-sidebar toggle that was requested during review. Each concern in the issue is addressed end-to-end, with the same treatment applied to both places the AI chat panel lives: the **sidebar chat panel** (right panel on a doc page) and the **standalone `/chat` page**. --- ## 1. `+` button → persistent multi-session tabs (issue point 1) **Before:** clicking `+` called `createFreshSession()` (standalone) or `newSession()` (sidebar), both of which tore down the current chat content and replaced it in place. There was no way to keep two chats open at once. **After:** a browser/IDE-style tab strip lives above the chat content. Each open session gets its own tab with a close `×`; the active tab is highlighted; `+` now adds a tab rather than replacing the chat. ### Details - New Lit component `ai-chat-tabs` ([packages/frontend/core/src/blocksuite/ai/components/ai-chat-toolbar/ai-chat-tabs.ts](packages/frontend/core/src/blocksuite/ai/components/ai-chat-toolbar/ai-chat-tabs.ts)). - Tab title is derived from `session.title` → first user message → `"New chat"`. - Horizontal scroll when tabs overflow, with a `wheel` handler that converts mouse wheel / trackpad vertical swipe into horizontal scroll (native horizontal trackpad swipes also work natively via `overflow-x: auto`). - Auto `scrollIntoView({ inline: 'nearest' })` on active tab change, so a newly created or newly selected tab slides into view instead of staying hidden behind the toolbar. - Close `×` removes the tab from the strip but leaves the session on the server (matches the existing **Chat history** dropdown semantics — the session is still reachable there). Closing the active tab switches to an adjacent one; closing the last tab starts a fresh session. - Persistence: open session IDs are saved per-workspace in `localStorage` under `ai-chat-open-tabs:{workspaceId}`. On mount, the React pages hydrate those IDs via `AIProvider.session.getSession` / `CopilotClient.getSession` — no new backend or schema work. - Wiring: identical effects on both variants ([chat.tsx (sidebar)](packages/frontend/core/src/desktop/pages/workspace/detail-page/tabs/chat.tsx) and [chat/index.tsx (standalone)](packages/frontend/core/src/desktop/pages/workspace/chat/index.tsx)) — hydrate → sync active session into tabs → persist. - The tab strip sits on the same row as the existing toolbar icons (pin / history / `+`), separated by `flex: 1` + `min-width: 0` so the tabs scroll cleanly up to the toolbar boundary. - The `ShadowlessElement` base class injects its static CSS globally, and the `:host` selector does not match in a React-rooted DOM — the component uses tag-selector CSS (`ai-chat-tabs { display: flex; … }`) instead. ## 2. Drag-and-drop attachments (issue point 2) **Before:** the chat input accepted no DnD. Attaching anything required the `+` → file-picker flow. **After:** the chat input accepts OS files via native HTML5 DnD and AFFiNE documents via the repo's existing pragmatic-drag-and-drop infrastructure. ### Details - Native handlers (`dragenter/over/leave/drop`) on [ai-chat-input.ts](packages/frontend/core/src/blocksuite/ai/components/ai-chat-input/ai-chat-input.ts) accept OS files: images go into the image preview grid, other files become attachment chips, with the same 50 MB per-file cap as the `+` picker. - Internal AFFiNE document drags from the nav panel land as doc chips, handled via `dropTargetForElements` from `@atlaskit/pragmatic-drag-and-drop` (same library the rest of the app already uses for internal DnD). - A "Drop to attach" overlay appears during drag, reusing the existing focused-border token (`--affine-v2-layer-insideBorder-primaryBorder`) for visual consistency with the focused state. - The image/file routing logic that previously lived inline in `add-popover.ts` was factored into a shared helper [attachment-utils.ts](packages/frontend/core/src/blocksuite/ai/components/ai-chat-chips/attachment-utils.ts) (`addFilesToChat`), so the `+` picker and the drop handler stay in lockstep. - Analytics: extended the `addEmbeddingDoc.control` union in [events.ts](packages/frontend/track/src/events.ts) with `'dragDrop'` so drag-originated attachments are distinguishable from button-initiated ones in telemetry. - `@atlaskit/pragmatic-drag-and-drop` is promoted from a transitive dependency (via `@affine/component`) to a direct dependency of `@affine/core` and `yarn.lock` is refreshed accordingly. ## 3. Chat-history tooltip + icon (issue point 3) **Before:** hovering the chat-history button showed a tooltip whose background did not invert for dark theme (`--affine-tooltip` is not theme-aware), and the icon was `ArrowDownSmallIcon` — a chevron that does not convey "history." **After:** the tooltip primitive itself is theme-aware (every tooltip in the app benefits, not just the chat one), and the icon is the semantically-clear `HistoryIcon`. ### Details - [tooltip.ts](blocksuite/affine/components/src/tooltip/tooltip.ts) now uses `var(--affine-v2-tooltips-background, var(--affine-tooltip))` and `var(--affine-v2-tooltips-foreground, var(--affine-white))`. The V2 tokens auto-invert with theme; the old vars remain as fallbacks so components that override via the existing `tooltipStyle` escape hatch continue to work. - Triangle arrow colors updated to use the same V2 token. - [ai-chat-toolbar.ts](packages/frontend/core/src/blocksuite/ai/components/ai-chat-toolbar/ai-chat-toolbar.ts): `ArrowDownSmallIcon` → `HistoryIcon`; added `data-testid="ai-panel-chat-history"` for future e2e coverage. ## 4. Right-sidebar toggle: tooltips + open-state icon *(adjacent polish)* Not part of the original issue, but surfaced while testing the tab strip — neither of the two right-sidebar toggle buttons had hover affordance, and both used the same icon regardless of the sidebar's state. - Added `tooltip="Open sidebar"` on the route-container button shown when the sidebar is hidden. - Added `tooltip="Close sidebar"` on the sidebar-header button shown when the sidebar is expanded. - The close button now renders a small inline `RightSidebarOpenIcon` variant: same outline as `RightSidebarIcon`, but with the right panel filled in the AFFiNE accent color to convey the open state. Icon shape change is self-contained — no new icon asset added to `@blocksuite/icons`. --- ## Commits - `2adc0c7` — fix(ai-chat): theme-aware tooltip + semantic chat-history icon *(2 files)* - `bf26974` — feat(ai-chat): drag-and-drop file and doc attachments in chat input *(7 files)* - `fca29c8` — feat(ai-chat): persistent multi-session tab strip *(8 files)* - `7d5dffe` — feat(workbench): tooltips and open-state icon for the right-sidebar toggle *(2 files)* Kept ordered smallest → largest blast radius so the history is easy to bisect. --- ## Test plan Verified locally against a fresh server stack (postgres / redis / mailpit via compose, migrations run) signed in as `dev@affine.pro`, in both `/chat` and the sidebar chat on a doc page, in light and dark themes: - [x] Tooltip: hover the chat-history icon in dark mode → tooltip is dark-on-light; toggle to light mode → tooltip is light-on-dark. Existing tooltips on other surfaces (slash menu, edgeless, linked-doc) still render correctly. - [x] Icon: chat-history button renders the history glyph (clock), not a chevron. - [x] Drag-and-drop (OS file): drop a PDF / PNG / TXT onto the input → overlay shows → chips/images appear; file > 50 MB → rejected silently (same as `+` picker). - [x] Drag-and-drop (internal doc): drag an AFFiNE doc from the nav panel → becomes a doc chip. - [x] Pin-picker, `+` picker, paste-image — all unchanged. - [x] Tab strip: first chat auto-becomes a tab on first message; `+` adds tab; click tab switches chat; `×` removes tab and switches to adjacent; close last tab → new fresh tab spawns. - [x] Reload browser → tab strip rehydrates from localStorage with the same sessions. - [x] Tab overflow: 12+ tabs → horizontal scroll via trackpad vertical swipe, trackpad horizontal swipe, and mouse wheel; active tab auto-scrolls into view on `+` click. - [x] Right-sidebar: hover both toggle buttons → tooltips appear; open the sidebar → close button shows the filled right-panel icon. - [x] `yarn lint:ox` and lint-staged both clean on every commit. Not verified locally (no local model key configured): the assistant actually streams a response. Drop/chip flow is independent of that path. ## Out of scope / follow-ups - No new unit or Playwright tests — the fixes are visually verifiable and reuse existing reducer / state paths. Happy to add tests if reviewers prefer. - `@affine/native` is not required for the web dev stack; I only built `@affine/server-native`. Irrelevant to the PR diff. <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit * **New Features** * Multi-tab chat UI with a tabs component, open/close/switch actions, and per-workspace persistence/restoration. * Drag-and-drop attachments into chat input (files and docs). * **UI/UX** * Tooltip theming moved to v2 variables (includes arrow color). * Sidebar toggle/close buttons now show tooltips. * “Drop to attach” overlay and updated history icon. * **Behavior** * Unified attachment handling with 50MB validation and toast notices. * **Analytics** * Attachment events record drag-and-drop as a control method. <!-- end of auto-generated comment: release notes by coderabbit.ai --> --------- Co-authored-by: DarkSky <25152247+darkskygit@users.noreply.github.com> |
||
|
|
fee0cfa3f4 |
chore: bump deps (#14785)
#### PR Dependency Tree * **PR #14785** 👈 This tree was auto-generated by [Charcoal](https://github.com/danerwilliams/charcoal) <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit * **Chores** * Updated error-tracking SDK versions across frontend packages. * Upgraded Electron build toolchain and front-end build plugins for improved compatibility. * Replaced a SWC-based React plugin with the standard React Vite plugin. * Removed unused development dependencies from CLI tooling. * Bumped a Rust workspace dependency to a patch release. <!-- end of auto-generated comment: release notes by coderabbit.ai --> |
||
|
|
233004f867 | chore: bump oxlint & enable more supported rules (#14769) | ||
|
|
7ac8b14b65 |
feat(editor): migrate typst mermaid to native (#14499)
<!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit * **New Features** * Native/WASM Mermaid and Typst SVG preview rendering on desktop and mobile, plus cross-platform Preview plugin integrations. * **Improvements** * Centralized, sanitized rendering bridge with automatic Typst font-directory handling and configurable native renderer selection. * More consistent and robust error serialization and worker-backed preview flows for improved stability and performance. * **Tests** * Extensive unit and integration tests for preview rendering, font discovery, sanitization, and error serialization. <!-- end of auto-generated comment: release notes by coderabbit.ai --> |
||
|
|
f34e25e122 |
test: migrate test & utils (#14569)
#### PR Dependency Tree * **PR #14569** 👈 This tree was auto-generated by [Charcoal](https://github.com/danerwilliams/charcoal) <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit * **Chores** * Upgraded development test tooling to Vitest v4 and added Playwright browser test integration; normalized test configurations and CI shard matrix. * **Tests** * Added a large suite of new integration tests covering editor flows (edgeless, database, embeds, images, latex, code, clipboard, multi-editor, presentation, undo/redo, etc.). * Removed numerous end-to-end Playwright test suites across the same feature areas. <!-- end of auto-generated comment: release notes by coderabbit.ai --> |
||
|
|
2cb171f553 |
feat: cleanup webpack deps (#14530)
#### PR Dependency Tree * **PR #14530** 👈 This tree was auto-generated by [Charcoal](https://github.com/danerwilliams/charcoal) <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit * **Breaking Changes** * Webpack bundler support removed from the build system * Bundler selection parameter removed from build and development commands * **Refactor** * Build configuration consolidated to a single bundler approach * Webpack-specific build paths and workflows removed; development server simplified * **Chores** * Removed webpack-related dev dependencies and tooling * Updated package build scripts for a unified bundle command * **Dependencies** * Upgraded Sentry packages across frontend packages (react/electron/esbuild plugin) <!-- end of auto-generated comment: release notes by coderabbit.ai --> |
||
|
|
e1e0ac2345 |
chore: cleanup deps (#14525)
#### PR Dependency Tree * **PR #14525** 👈 This tree was auto-generated by [Charcoal](https://github.com/danerwilliams/charcoal) <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit * **Chores** * Removed an unused development dependency. * Updated dotLottie/Lottie-related dependency versions across packages and replaced a removed player dependency with the new package. * **Refactor** * AI animated icons now re-export from a shared component and are loaded only in the browser, reducing upfront bundle weight and centralizing icon assets. <!-- end of auto-generated comment: release notes by coderabbit.ai --> |
||
|
|
c2c7dde06c |
chore: bump deps (#14506)
<!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit * **Chores** * Version bumped to 0.26.3 across the project and Helm charts. * Removed an unused dependency (minimatch) from multiple packages. * Updated build/tooling and packaging metadata, including packaging maker replacement. * Adjusted app release metadata and platform packaging config. * **Tests** * Updated test snapshots to reflect minor presentational styling adjustments. <!-- end of auto-generated comment: release notes by coderabbit.ai --> |
||
|
|
b4be9118ad |
feat: doc status & share status (#14426)
#### PR Dependency Tree * **PR #14426** 👈 This tree was auto-generated by [Charcoal](https://github.com/danerwilliams/charcoal) <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit * **New Features** * Admin dashboard: view workspace analytics (storage, sync activity, top shared links) with charts and configurable windows. * Document analytics tab: see total/unique/guest views and trends over selectable time windows. * Last-accessed members: view who last accessed a document, with pagination. * Shared links analytics: browse and paginate all shared links with view/unique/guest metrics and share URLs. <!-- end of auto-generated comment: release notes by coderabbit.ai --> |
||
|
|
8ce620e2e6 | chore: bump deps | ||
|
|
31f6f209e3 | chore: bump deps | ||
|
|
403f16b404 | chore: drop old client support (#14369) | ||
|
|
09cc2dceda |
feat: cleanup chat panel (#14259)
#### PR Dependency Tree * **PR #14258** * **PR #14259** 👈 This tree was auto-generated by [Charcoal](https://github.com/danerwilliams/charcoal) <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit * **Refactor** * Split AI initialization into separate editor, app, and shared registries; removed legacy chat-panel and replaced it with a component-based editor chat, updating wiring and public exports. * Propagated server/subscription/model services into chat/playground components and improved session lifecycle and UI composition. * **Tests** * Added tests for AI effect registration and chat session resolution; extended DOM/test utilities and assertions. * **Chores** * Added happy-dom for runtime and test environments. <sub>✏️ Tip: You can customize this high-level summary in your review settings.</sub> <!-- end of auto-generated comment: release notes by coderabbit.ai --> |
||
|
|
27a58e764c | chore: bump version & deps | ||
|
|
279b7bb64f |
feat(core): integrate google calendar sync (#14248)
fix #14170 fix #13893 fix #13673 fix #13543 fix #13308 fix #7607 #### PR Dependency Tree * **PR #14247** * **PR #14248** 👈 This tree was auto-generated by [Charcoal](https://github.com/danerwilliams/charcoal) <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit * **New Features** * Integrations panel in Account Settings to link/unlink calendar providers. * Collapsible settings wrapper for improved layout. * **Improvements** * Calendar system reworked: per-account calendar groups, simplified toggles with explicit Save, richer event display (multi-dot date indicators), improved event time/title handling across journal views. * **Localization** * Added calendar keys: save-error, no-journal, no-calendar; removed legacy duplicate-error keys. <sub>✏️ Tip: You can customize this high-level summary in your review settings.</sub> <!-- end of auto-generated comment: release notes by coderabbit.ai --> |
||
|
|
cf98afb32e |
chore: bump theme@1.1.23 (#14222)
close #13952 <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit * **Chores** * Upgraded the shared theme library from v1.1.16 to v1.1.23 across the project (core components, UI widgets, content blocks, and frontend apps), delivering the latest styling and design refinements platform-wide. <sub>✏️ Tip: You can customize this high-level summary in your review settings.</sub> <!-- end of auto-generated comment: release notes by coderabbit.ai --> --------- Co-authored-by: L-Sun <zover.v@gmail.com> |
||
|
|
4f1d57ade5 |
feat: integrate typst preview & fix mermaid style (#14168)
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
* **New Features**
* Typst code block preview with interactive rendering controls (zoom,
pan, reset) and user-friendly error messages
* **Style**
* Centered Mermaid diagram rendering for improved layout
* **Tests**
* Added end-to-end preview validation tests for Typst and Mermaid
* **Chores**
* Added WebAssembly type declarations and updated frontend packages;
removed a build debug configuration entry
<sub>✏️ Tip: You can customize this high-level summary in your review
settings.</sub>
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
|
||
|
|
cb0ff04efa | feat: bump more deps (#14079) | ||
|
|
027f741ed6 |
chore: bump deps (#14065)
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
* **Chores**
* Updated dependency versions across the monorepo (notably zod →
^3.25.76 and vitest-related packages → ^3.2.4), plus minor package bumps
to align tooling and libraries. These are manifest/test-tooling updates
only; no public API, behavior, or end-user features were changed.
<sub>✏️ Tip: You can customize this high-level summary in your review
settings.</sub>
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
|
||
|
|
776ca2c702 | chore: bump version | ||
|
|
4e082e4170 | chore: bump version | ||
|
|
e4b5b24fdd | chore: bump package version | ||
|
|
e7f76c1737 |
chore: update mermaid (#13510)
https://github.com/toeverything/AFFiNE/issues/13509 <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit * **Chores** * Upgraded Mermaid dependency to v11.1.0 in the frontend core package. * **Impact** * Improved diagram rendering and compatibility with newer Mermaid syntax. * Potential performance and security improvements from upstream updates. * No UI changes expected; existing diagrams should continue to work. * Please verify critical diagram views for any rendering differences. <!-- end of auto-generated comment: release notes by coderabbit.ai --> --------- Co-authored-by: L-Sun <zover.v@gmail.com> Co-authored-by: DarkSky <25152247+darkskygit@users.noreply.github.com> |
||
|
|
ca9811792d |
feat(component): emoji and icon picker (#13638)
 <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit - **New Features** - Icon Picker added with Emoji and Icon panels, search/filtering, recent selections, color selection, skin tone options, and smooth group navigation. - **Documentation** - Storybook example added to preview and test the Icon Picker. - **Chores** - Bumped icon library dependency to a newer minor version. - Added emoji data dependency to support the Emoji Picker. <!-- end of auto-generated comment: release notes by coderabbit.ai --> |
||
|
|
678dc15365 |
feat(editor): add mermaid code preview (#13456)
<img width="971" height="681" alt="iShot_2025-08-10_14 29 01" src="https://github.com/user-attachments/assets/eff3e6d5-3129-42ac-aceb-994c18f675ab" /> <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit * **New Features** * Mermaid diagram previews for code blocks with interactive zoom, pan, and reset controls. * Improved rendering feedback with loading, error states, retry behavior, and fallback messaging. * **Chores** * Added Mermaid as a frontend dependency to enable diagram rendering. <!-- end of auto-generated comment: release notes by coderabbit.ai --> --------- Co-authored-by: L-Sun <zover.v@gmail.com> |
||
|
|
77950cfc1b |
feat(core): extract md & snapshot & attachments from selected (#13312)
<!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit ## Summary by CodeRabbit * **New Features** * Enhanced extraction of selected content in the editor to include document snapshots, markdown summaries, and attachments for both edgeless and page modes. * Attachments related to selected content are now available in chat and input contexts, providing additional metadata. * Added utility to identify and retrieve selected attachments in editor content. * **Bug Fixes** * Improved consistency in attachment retrieval when extracting selected content. * **Chores** * Updated dependencies and workspace references to include new block suite components. <!-- end of auto-generated comment: release notes by coderabbit.ai --> > CLOSE AF-2770 |
||
|
|
b53b4884cf |
refactor(core): align markdown conversion logic (#13254)
## Refactor Align the Markdown conversion logic across all business modules: 1. frontend/backend apply: doc to markdown 2. insert/import markdown: use `markdownAdapter.toDoc` > CLOSE AI-328 AI-379 AI-380 <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit * **Documentation** * Clarified instructions and provided an explicit example for correct list item formatting in the markdown editing tool. * **Bug Fixes** * Improved markdown parsing for lists, ensuring correct indentation and handling of trailing newlines. * Cleaned up markdown snapshot test files by removing redundant blank lines for better readability. * **Refactor** * Updated markdown conversion logic to use a new parsing approach for improved reliability and maintainability. * Enhanced markdown generation method for document snapshots with improved error handling. * Refined markdown-to-snapshot conversion with more robust document handling and snapshot extraction. * **Chores** * Added a new workspace dependency for enhanced markdown parsing capabilities. * Updated project references and workspace dependencies to include the new markdown parsing package. * **Tests** * Temporarily disabled two markdown-related tests due to parse errors in test mode. <!-- end of auto-generated comment: release notes by coderabbit.ai --> |
||
|
|
c90d511251 |
feat(core): server version check for selfhost login (#13247)
close AF-2752; <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit * **New Features** * Added a version compatibility check for self-hosted environments during sign-in, displaying a clear error message and upgrade instructions if the server version is outdated. * **Style** * Updated the appearance of the notification icon in the mobile header for improved visual consistency. <!-- end of auto-generated comment: release notes by coderabbit.ai --> |
||
|
|
cdff5c3117 |
feat(core): add context menu for navigation and explorer (#13216)
<!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit * **New Features** * Introduced a customizable context menu component for desktop interfaces, enabling right-click menus in various UI elements. * Added context menu support to document list items and navigation tree nodes, allowing users to access additional operations via right-click. * **Improvements** * Enhanced submenu and menu item components to support both dropdown and context menu variants based on context. * Updated click handling in workbench links to prevent unintended actions on non-left mouse button clicks. * **Chores** * Added `@radix-ui/react-context-menu` as a dependency to relevant frontend packages. <!-- end of auto-generated comment: release notes by coderabbit.ai --> |
||
|
|
6fd9524521 |
feat: ai apply ui (#12962)
## New Features
* **Block Meta Markdown Adapter**:Inject the Block's metadata into
Markdown.
* **UI**:Apply interaction
* **Widget**
* Block-Level Widget: Displays the diffs of individual blocks within the
main content and supports accepting/rejecting individual diffs.
* Page-Level Widget: Displays global options (Accept all/Reject all).
* **Block Diff Service**:Bridge widget and diff data
* Widget subscribes to DiffMap(RenderDiff) data, refreshing the view
when the data changes.
* Widget performs operations such as Accept/Reject via methods provided
by Service.
* **Doc Edit Tool Card**:
* Display apply preview of semantic doc edit
* Support apply & accept/reject to the main content
* **Apply Playground**:A devtool for testing apply new content to
current
> CLOSE AI-274 AI-275 AI-276 AI-278
<!-- This is an auto-generated comment: release notes by coderabbit.ai
-->
## Summary by CodeRabbit
* **New Features**
* Introduced block-level markdown diffing with accept/reject controls
for insertions, deletions, and updates.
* Added block diff widgets for individual blocks and pages, featuring
navigation and bulk accept/reject actions.
* Provided a block diff playground for testing and previewing markdown
changes (development mode only).
* Added a new document editing AI tool component with interactive diff
viewing and change application.
* Supported rendering of the document editing tool within AI chat
content streams.
* **Improvements**
* Enhanced widget rendering in list, paragraph, data view, and database
blocks for improved extensibility.
* Improved widget flavour matching with hierarchical wildcard support
for more flexible UI integration.
* **Chores**
* Updated the "@toeverything/theme" dependency to version ^1.1.16 across
multiple packages.
* Added new workspace dependencies for core frontend packages to improve
module linkage.
* Extended global styles with visual highlights for deleted blocks in AI
block diff feature.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
|
||
|
|
c882a8c5da |
feat(core): markdown-diff & patch apply (#12844)
## New Features - **Markdown diff**: - Introduced block-level diffing for markdown content, enabling detection of insertions, deletions, and replacements between document versions. - Generate patch operations from markdown diff. - **Patch Renderer**: Transfer patch operations to a render diff which can be rendered into page body. - **Patch apply**:Added functionality to apply patch operations to documents, supporting block insertion, deletion, and content replacement. ## Refactors * Move `affine/shared/__tests__/utils` to `blocksuite/affine-shared/test-utils` <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit * **New Features** * Introduced utilities for declarative creation and testing of document structures using template literals. * Added new functions and types for block-level markdown diffing and patch application. * Provided a utility to generate structured render diffs for markdown blocks. * Added a unified test-utils entry point for easier access to testing helpers. * **Bug Fixes** * Updated import paths in test files to use the new test-utils location. * **Documentation** * Improved example usage in documentation to reflect the new import paths for test utilities. * **Tests** * Added comprehensive test suites for markdown diffing, patch application, and render diff utilities. * **Chores** * Updated package dependencies and export maps to expose new test utilities. * Refactored internal test utilities organization for clarity and maintainability. <!-- end of auto-generated comment: release notes by coderabbit.ai --> > CLOSE AI-271 AI-272 AI-273 |
||
|
|
8ed7dea823 |
feat(core): code artifact tool (#13015)
<img width="1272" alt="image" src="https://github.com/user-attachments/assets/429ec60a-48a9-490b-b45f-3ce7150ef32a" /> #### PR Dependency Tree * **PR #13015** 👈 This tree was auto-generated by [Charcoal](https://github.com/danerwilliams/charcoal) <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit * **New Features** * Introduced a new AI tool for generating self-contained HTML artifacts, including a dedicated interface for previewing, copying, and downloading generated HTML. * Added syntax highlighting and preview capabilities for HTML artifacts in chat and tool panels. * Integrated the new HTML artifact tool into the AI chat prompt and Copilot toolset. * **Enhancements** * Improved artifact preview panel layout and sizing for a better user experience. * Enhanced HTML preview components to support both model-based and raw HTML rendering. * **Dependency Updates** * Added the "shiki" library for advanced syntax highlighting. * **Bug Fixes** * None. * **Chores** * Updated internal imports and code structure to support new features and maintain consistency. <!-- end of auto-generated comment: release notes by coderabbit.ai --> |
||
|
|
9e1fa23c5e | chore: bump base version | ||
|
|
de00040389 |
chore(editor): update loading css vars (#12557)
Related to: [BS-3559](https://linear.app/affine-design/issue/BS-3559/ui-%E5%9B%BE%E7%89%87-loading-%E5%8F%98%E9%87%8F%E6%9B%B4%E6%96%B0) <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit - **Style** - Improved the appearance of image loading indicators by updating background and ring colors for a more consistent visual experience. - **New Features** - Added customization options for the loading icon's ring color. - **Chores** - Updated the "@toeverything/theme" dependency to version ^1.1.15 across multiple packages for improved consistency and compatibility. <!-- end of auto-generated comment: release notes by coderabbit.ai --> |
||
|
|
f5f959692a |
fix(editor): latex wrong config (#12578)
Closes: BS-2782 <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit - **New Features** - Added KaTeX as a dependency to improve LaTeX rendering support. - KaTeX styles are now applied globally for consistent math formatting. - **Refactor** - Updated LaTeX rendering to use inline math mode and removed MathML output. - **Tests** - Enhanced inline LaTeX tests with snapshot-based verification for consistent rendering. - Added new snapshot files capturing expected LaTeX rendering outputs for various scenarios. <!-- end of auto-generated comment: release notes by coderabbit.ai --> |
||
|
|
0f19a506ac |
chore: bump up file-type version to v21 (#12500)
This PR contains the following updates: | Package | Change | Age | Adoption | Passing | Confidence | |---|---|---|---|---|---| | [file-type](https://redirect.github.com/sindresorhus/file-type) | [`^20.0.0` -> `^21.0.0`](https://renovatebot.com/diffs/npm/file-type/20.5.0/21.0.0) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | --- ### Release Notes <details> <summary>sindresorhus/file-type (file-type)</summary> ### [`v21.0.0`](https://redirect.github.com/sindresorhus/file-type/releases/tag/v21.0.0) [Compare Source](https://redirect.github.com/sindresorhus/file-type/compare/v20.5.0...v21.0.0) ##### Breaking - Require Node.js 20 [`24aec1f`](https://redirect.github.com/sindresorhus/file-type/commit/24aec1f) - Drop Adobe Illustrator (.ai) detection support ([#​743](https://redirect.github.com/sindresorhus/file-type/issues/743)) [`af169f3`](https://redirect.github.com/sindresorhus/file-type/commit/af169f3) - Correct Matroska (video) MIME-type to formal IANA registration ([#​753](https://redirect.github.com/sindresorhus/file-type/issues/753)) [`f53f5ff`](https://redirect.github.com/sindresorhus/file-type/commit/f53f5ff) - Correct FLAC MIME-type to formal IANA registration ([#​755](https://redirect.github.com/sindresorhus/file-type/issues/755)) [`b9fda36`](https://redirect.github.com/sindresorhus/file-type/commit/b9fda36) - Correct Apache Parquet MIME-type to formal IANA registration ([#​748](https://redirect.github.com/sindresorhus/file-type/issues/748)) [`98e3f8e`](https://redirect.github.com/sindresorhus/file-type/commit/98e3f8e) - Correct Apache Arrow MIME-type to formal IANA registration ([#​754](https://redirect.github.com/sindresorhus/file-type/issues/754)) [`7184775`](https://redirect.github.com/sindresorhus/file-type/commit/7184775) ##### Improvements - Allow options to be directly passed to exported functions ([#​752](https://redirect.github.com/sindresorhus/file-type/issues/752)) [`d264029`](https://redirect.github.com/sindresorhus/file-type/commit/d264029) - Add `mpegOffsetTolerance` option ([#​646](https://redirect.github.com/sindresorhus/file-type/issues/646)) [`c40840a`](https://redirect.github.com/sindresorhus/file-type/commit/c40840a) ##### Fixes - Fix detection of some PAX TAR formats ([#​762](https://redirect.github.com/sindresorhus/file-type/issues/762)) [`574d0d6`](https://redirect.github.com/sindresorhus/file-type/commit/574d0d6) *** </details> --- ### Configuration 📅 **Schedule**: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined). 🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied. ♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox. 🔕 **Ignore**: Close this PR and you won't be reminded about this update again. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box --- This PR was generated by [Mend Renovate](https://mend.io/renovate/). View the [repository job log](https://developer.mend.io/github/toeverything/AFFiNE). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiI0MC4xNi4wIiwidXBkYXRlZEluVmVyIjoiNDAuMTYuMCIsInRhcmdldEJyYW5jaCI6ImNhbmFyeSIsImxhYmVscyI6WyJkZXBlbmRlbmNpZXMiXX0=--> |
||
|
|
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 -->
|
||
|
|
0b6d1eacc8 |
refactor(electron): use mp4 container instead of webm for encoded audio (#12247)
fix AF-2609 webm container with opus has limited support on Safari. Change to mp4 instead. <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit - **New Features** - Audio recordings are now saved in MP4 format instead of WebM, improving compatibility with a wider range of devices and applications. - **Chores** - Updated dependencies to use MP4 muxing tools in place of WebM. - Internal audio encoding utilities and references updated to support MP4 container format. <!-- end of auto-generated comment: release notes by coderabbit.ai --> |
||
|
|
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 --> |
||
|
|
e45abebc7f |
chore: bump up is-svg version to v6 (#12071)
This PR contains the following updates: | Package | Change | Age | Adoption | Passing | Confidence | |---|---|---|---|---|---| | [is-svg](https://redirect.github.com/sindresorhus/is-svg) | [`^5.1.0` -> `^6.0.0`](https://renovatebot.com/diffs/npm/is-svg/5.1.0/6.0.0) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | --- ### Release Notes <details> <summary>sindresorhus/is-svg (is-svg)</summary> ### [`v6.0.0`](https://redirect.github.com/sindresorhus/is-svg/releases/tag/v6.0.0) [Compare Source](https://redirect.github.com/sindresorhus/is-svg/compare/v5.1.0...v6.0.0) ##### Breaking - Require Node.js 20 [`1ddf982`](https://redirect.github.com/sindresorhus/is-svg/commit/1ddf982) ##### Improvements - Use `@file-type/xml` for XML type determination ([#​40](https://redirect.github.com/sindresorhus/is-svg/issues/40)) [`e43ec24`](https://redirect.github.com/sindresorhus/is-svg/commit/e43ec24) *** </details> --- ### Configuration 📅 **Schedule**: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined). 🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied. ♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox. 🔕 **Ignore**: Close this PR and you won't be reminded about this update again. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box --- This PR was generated by [Mend Renovate](https://mend.io/renovate/). View the [repository job log](https://developer.mend.io/github/toeverything/AFFiNE). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzOS4yNTcuMyIsInVwZGF0ZWRJblZlciI6IjM5LjI1Ny4zIiwidGFyZ2V0QnJhbmNoIjoiY2FuYXJ5IiwibGFiZWxzIjpbImRlcGVuZGVuY2llcyJdfQ==--> |
||
|
|
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`](https://redirect.github.com/dotansimha/graphql-code-generator/commit/5d1c4e127d860ff89590fd3a1d01493b3289ad00) 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`](https://redirect.github.com/dotansimha/graphql-code-generator/commit/10ab58dbc183dff460c410ffc7cc759186f91d4c) Thanks [@​eddeee888](https://redirect.github.com/eddeee888)! - Improve syntax error messages whilst loading schema/document - Updated dependencies \[[`c5efba3`](https://redirect.github.com/dotansimha/graphql-code-generator/commit/c5efba34a7b422720be9ce32937dd19fb0784bae)]: - [@​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`](https://redirect.github.com/dotansimha/graphql-code-generator/commit/c5efba34a7b422720be9ce32937dd19fb0784bae) 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`](https://redirect.github.com/lint-staged/lint-staged/commit/556132176afce1701b4766c00ffd23159d437cb4) 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==--> |
||
|
|
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 --> |
||
|
|
61af6fd24e |
chore: bump up react-error-boundary version to v6 (#12125)
This PR contains the following updates: | Package | Change | Age | Adoption | Passing | Confidence | |---|---|---|---|---|---| | [react-error-boundary](https://redirect.github.com/bvaughn/react-error-boundary) | [`^5.0.0` -> `^6.0.0`](https://renovatebot.com/diffs/npm/react-error-boundary/5.0.0/6.0.0) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | [](https://docs.renovatebot.com/merge-confidence/) | --- ### Release Notes <details> <summary>bvaughn/react-error-boundary (react-error-boundary)</summary> ### [`v6.0.0`](https://redirect.github.com/bvaughn/react-error-boundary/releases/tag/6.0.0) [Compare Source](https://redirect.github.com/bvaughn/react-error-boundary/compare/5.0.0...6.0.0) Module is ESM-only in order to better work with modern tooling. </details> --- ### Configuration 📅 **Schedule**: Branch creation - At any time (no schedule defined), Automerge - At any time (no schedule defined). 🚦 **Automerge**: Disabled by config. Please merge this manually once you are satisfied. ♻ **Rebasing**: Whenever PR becomes conflicted, or you tick the rebase/retry checkbox. 🔕 **Ignore**: Close this PR and you won't be reminded about this update again. --- - [ ] <!-- rebase-check -->If you want to rebase/retry this PR, check this box --- This PR was generated by [Mend Renovate](https://mend.io/renovate/). View the [repository job log](https://developer.mend.io/github/toeverything/AFFiNE). <!--renovate-debug:eyJjcmVhdGVkSW5WZXIiOiIzOS4yNjQuMCIsInVwZGF0ZWRJblZlciI6IjM5LjI2NC4wIiwidGFyZ2V0QnJhbmNoIjoiY2FuYXJ5IiwibGFiZWxzIjpbImRlcGVuZGVuY2llcyJdfQ==--> |
||
|
|
315ea00390 |
feat(editor): header of edgeless embed doc (#12029)
Close [BS-3268](https://linear.app/affine-design/issue/BS-3268/edgeless-下,-dark-mode-embed的配色应该更加清晰) Close [BS-3067](https://linear.app/affine-design/issue/BS-3067/在embed上,添加split-view等相关的操作入口,基本接近page-block(见设计稿)) <!-- This is an auto-generated comment: release notes by coderabbit.ai --> ## Summary by CodeRabbit - **New Features** - Introduced an interactive header for embedded synced documents with fold/unfold toggle, document opening, and multiple view options. - Added info and copy link buttons for embedded synced documents and notes to improve document management and sharing. - **Enhancements** - Updated styles for embedded synced document blocks and headers for better visual consistency. - Added new localization entries for header actions: "Fold", "Unfold", and "Open". - Disabled redundant open document actions in toolbars, centralizing controls in the header. - **Refactor** - Unified header button components for notes and embedded synced documents into reusable components. - Simplified header components by delegating button behaviors to shared components. - **Bug Fixes** - Fixed conditional rendering of editor content in embedded synced documents when folded. - **Chores** - Upgraded theme dependency version from "^1.1.12" to "^1.1.14" across multiple packages. <!-- end of auto-generated comment: release notes by coderabbit.ai --> |