pengx17
4ad008f712
fix(electron): optimize meeting privacy settings ( #12530 )
...
<!-- This is an auto-generated comment: release notes by coderabbit.ai -->
## Summary by CodeRabbit
- **New Features**
- Added support for requesting screen recording permission on macOS in addition to microphone permission.
- Introduced a new "Permission issues" section in meeting privacy settings, including a button to restart the app if permission status is not updated.
- **Improvements**
- Unified permission handling for screen and microphone settings, simplifying the user experience.
- Added new localized strings for enhanced clarity regarding permission issues and app restart instructions.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2025-05-27 11:08:06 +00:00
pengx17
ed8e50bca6
fix(electron): potential app crash on quit ( #12480 )
...
<!-- This is an auto-generated comment: release notes by coderabbit.ai -->
## Summary by CodeRabbit
- **Bug Fixes**
- Improved stability during shutdown by preventing potential crashes when removing audio property listeners on macOS.
- Suppressed unnecessary error logs related to device listener removal during system shutdown.
- Enhanced handling of internal subscriptions to avoid redundant operations and improve reliability when loading or destroying views.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2025-05-27 03:43:27 +00:00
pengx17
83a483a06d
fix(electron): optimize tab switching ( #12518 )
...
fix AF-2670
<!-- This is an auto-generated comment: release notes by coderabbit.ai -->
## Summary by CodeRabbit
- **Style**
- Updated styling so that opacity and transition effects apply only when a translucent background is present, enhancing visual precision.
- **Chores**
- Renamed a data attribute in the app container for improved consistency.
- Disabled background throttling for specific views to maintain performance when running in the background.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2025-05-27 03:14:12 +00:00
pengx17
7e80cb336e
fix(electron): streaming audio encoding not working ( #12231 )
...
fix AF-2612
<!-- This is an auto-generated comment: release notes by coderabbit.ai -->
## Summary by CodeRabbit
- **Bug Fixes**
- Improved handling of recording status updates to prevent unwanted side effects after closing the recording popup.
- Enhanced error handling and logging for internal communication, ensuring errors are logged and do not disrupt the user experience.
- Refined control flow for stream encoding to avoid unnecessary errors when encoders are closed.
- **Refactor**
- Updated popup window readiness and lifecycle management for more reliable behavior and clearer logging.
- Adjusted recording state management to allow more precise control over status updates and emissions.
- **Style**
- Added additional logging for popup and recording operations to aid in troubleshooting and transparency.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2025-05-13 06:52:09 +00:00
pengx17
9d116426f8
fix(core): meeting settings issues ( #12226 )
...
fix AF-2606
<!-- This is an auto-generated comment: release notes by coderabbit.ai -->
## Summary by CodeRabbit
- **New Features**
- The "meetings" settings panel is now only visible on macOS when using the Electron build.
- The "Meetings Settings..." menu item in the recording menu appears only when recording functionality is available.
- **Style**
- Improved the subtitle formatting in the meetings settings panel for clearer visual separation and enhanced readability.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2025-05-13 06:52:08 +00:00
pengx17
53c531c931
feat(electron): add welcome page for meetings ( #12042 )
...
fix AF-2572


<!-- This is an auto-generated comment: release notes by coderabbit.ai -->
## Summary by CodeRabbit
- **New Features**
- Introduced a Meetings welcome page with a beta disclaimer and "Get Started" flow.
- Added separate toggles for AI auto summary and AI auto todo list in meeting settings.
- Added "Beta" labels to relevant settings and sidebar items for clearer feature status.
- Enhanced settings UI with improved headers, subtitles, and new styling.
- **Improvements**
- Meeting settings now allow independent control over AI-generated summaries and todo lists.
- Updated internationalization to support new meeting and AI transcription features, including richer prompts and hints.
- Refined logic for enabling meeting recording, including improved permission handling.
- Simplified transcription logic to rely solely on AI enablement flag.
- **Bug Fixes**
- Fixed display and control of meeting settings based on beta disclaimer acceptance.
- **Chores**
- Updated localization files and completeness percentages for several languages.
- Removed deprecated feature flag for enabling meetings.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2025-05-06 09:29:58 +00:00
pengx17
1ca7109812
fix(electron): adjust switch tab shortcuts on Mac ( #12060 )
...
fix #10541
<!-- This is an auto-generated comment: release notes by coderabbit.ai -->
## Summary by CodeRabbit
- **Style**
- Updated keyboard shortcuts for switching tabs to use 'Control+Tab' and 'Control+Shift+Tab'.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2025-05-06 02:54:37 +00:00
pengx17
a326eac1bb
fix(electron): shared-worker api binding ( #11991 )
...
<!-- This is an auto-generated comment: release notes by coderabbit.ai -->
## Summary by CodeRabbit
- **New Features**
- Improved security by adding cross-origin isolation headers to HTTP responses in the desktop app.
- **Bug Fixes**
- Enhanced reliability of worker connections by ensuring workers are fully loaded before establishing communication.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2025-04-29 14:12:25 +08:00
EYHN
eaa1bc6bf1
refactor(core): adjust effect api ( #11935 )
2025-04-24 10:06:12 +00:00
pengx17
85a21e97f6
fix(electron): do not add * as the default cors headers ( #11867 )
...
<!-- This is an auto-generated comment: release notes by coderabbit.ai -->
## Summary by CodeRabbit
- **Refactor**
- Simplified network request header handling and CORS header management for improved maintainability.
<!-- end of auto-generated comment: release notes by coderabbit.ai -->
2025-04-24 05:09:50 +00:00
pengx17
7fceb4cbd1
fix(electron): sometimes pops up failed to save dialog ( #11925 )
...
fix AF-2557
2025-04-24 02:27:23 +00:00
pengx17
0442c0e2b6
feat(electron): adapts to default audio input/output device changes ( #11815 )
...
Enable automatic adoption of new default audio devices upon detection.
1. add `AggregateDeviceManager` to watch for audio device changes, creating & maintaining `AggregateDevice` instances and cleaning up
2. use a workaround of `FastFixedIn` to deal with resampling delay issue (this is low quality and have some artifacts in the resampled audio)
fix AF-2536
2025-04-21 08:35:32 +00:00
pengx17
2bd9cfe20a
fix(electron): use askForMeetingPermission for asking microphone permission ( #11792 )
2025-04-21 07:37:43 +00:00
pengx17
3772a4700e
fix(electron): browserwindow creationis sometimes too early ( #11787 )
...
fix https://toeverything.sentry.io/issues/6548826257/events/31d3c96a20c24c908188b3004b3ecab7?project=4506307500179456
2025-04-18 05:42:48 +00:00
pengx17
f0aafda509
fix(electron): cannot restart recording the same app again ( #11498 )
...
fix AF-2455
2025-04-09 02:37:50 +00:00
pengx17
a2125787c2
fix(electron): use another origin for popup to disable zoom in/out issue of the popup window ( #11506 )
...
fix AF-2473
2025-04-08 10:18:09 +00:00
pengx17
93d8e22b07
feat(electron): meeting recording permissions checks ( #11505 )
...
fix AF-2472, AF-2446


2025-04-08 10:18:08 +00:00
pengx17
133be72ac2
refactor(electron): encoding recording on the fly ( #11457 )
...
fix AF-2460, AF-2463
When recording is started, we start polling the pending raw buffers that are waiting for encoding. The buffers are determined by the cursor of the original raw buffer file. When recording is stopped, we will flush the pending buffers and wrap the encoded chunks into WebM.
```mermaid
sequenceDiagram
participant App as App/UI
participant RecordingFeature as Recording Feature
participant StateMachine as State Machine
participant FileSystem as File System
participant StreamEncoder as Stream Encoder
participant OpusEncoder as Opus Encoder
participant WebM as WebM Muxer
Note over App,WebM: Recording Start Flow
App->>RecordingFeature: startRecording()
RecordingFeature->>StateMachine: dispatch(START_RECORDING)
StateMachine-->>RecordingFeature: status: 'recording'
RecordingFeature->>StreamEncoder: createStreamEncoder(id, {sampleRate, channels})
Note over App,WebM: Streaming Flow
loop Audio Data Streaming
RecordingFeature->>FileSystem: Write raw audio chunks to .raw file
StreamEncoder->>FileSystem: Poll raw audio data
FileSystem-->>StreamEncoder: Raw audio chunks
StreamEncoder->>OpusEncoder: Encode chunks
OpusEncoder-->>StreamEncoder: Encoded Opus frames
end
Note over App,WebM: Recording Stop Flow
App->>RecordingFeature: stopRecording()
RecordingFeature->>StateMachine: dispatch(STOP_RECORDING)
StateMachine-->>RecordingFeature: status: 'stopped'
StreamEncoder->>OpusEncoder: flush()
StreamEncoder->>WebM: muxToWebM(encodedChunks)
WebM-->>RecordingFeature: WebM buffer
RecordingFeature->>FileSystem: Save as .opus file
RecordingFeature->>StateMachine: dispatch(SAVE_RECORDING)
```
2025-04-03 15:56:53 +00:00
pengx17
8ce10e6d0a
feat(electron): add tray menu settings ( #11437 )
...
fix AF-2447
2025-04-03 15:56:52 +00:00
forehalo
c8d22d97d5
refactor: webpack config ( #11421 )
2025-04-03 11:55:56 +00:00
pengx17
90c3c4bf7f
feat(electron): recording popup ux ( #11403 )
...
fix AF-2444, AF-2443
2025-04-02 14:17:53 +00:00
pengx17
2d304adf15
fix(electron): incorrect app allow list logic for recording ( #11368 )
2025-04-01 14:19:29 +00:00
pengx17
0a37ca91fb
feat(electron): add allow list for recording apps ( #11321 )
2025-04-01 01:48:07 +00:00
pengx17
8bea31698e
fix(electron): tray menu icon adapt to dark theme ( #11288 )
...
fix AF-2431
2025-03-31 07:23:01 +00:00
pengx17
1306a9733b
feat(core): some enhancements to recording ( #11287 )
...
- Added a check to verify if AI is enabled before attempting to transcribe meeting recordings
- Improved error handling for empty recordings
- Fixed the recording timeout logic to ensure it only stops the correct recording session
2025-03-31 05:37:17 +00:00
pengx17
61b3f82bfe
fix(electron): should not record affine app itself ( #11277 )
...
fix AF-2428
2025-03-29 11:56:44 +00:00
pengx17
6c125d9a38
feat(electron): audio capture permissions and settings ( #11185 )
...
fix AF-2420, AF-2391, AF-2265
2025-03-28 09:12:26 +00:00
pengx17
61c0d01da3
feat(electron): recording popups ( #11016 )
...
Added a recording popup UI for the audio recording feature in the desktop app, improving the user experience when capturing audio from applications.
### What changed?
- Created a new popup window system for displaying recording controls
- Added a dedicated recording UI with start/stop controls and status indicators
- Moved audio encoding logic from the main app to a dedicated module
- Implemented smooth animations for popup appearance/disappearance
- Updated the recording workflow to show visual feedback during recording process
- Added internationalization support for recording-related text
- Modified the recording status flow to include new states: new, recording, stopped, ready
fix AF-2340
2025-03-26 04:53:43 +00:00
pengx17
269b92e317
fix(electron): disable tray & recording for now ( #11055 )
2025-03-21 02:39:16 +00:00
pengx17
fad49bb070
feat(editor): audio block ( #10947 )
...
AudioMedia entity for loading & controlling a single audio media
AudioMediaManagerService: Global audio state synchronization across tabs
AudioAttachmentService + AudioAttachmentBlock for manipulating AttachmentBlock in affine - e.g., filling transcription (using mock endpoint for now)
Added AudioBlock + AudioPlayer for rendering audio block in affine (new transcription block whose renderer is provided in affine)
fix AF-2292
fix AF-2337
2025-03-20 12:46:15 +00:00
pengx17
a016630a82
feat(electron): create recording through tray ( #10526 )
...
- added tray menu for controlling recording status
- recording watcher for monitoring system audio input events
2025-03-18 04:12:30 +00:00
EYHN
05200ad7b7
feat(nbstore): add blob sync storage ( #10752 )
2025-03-14 18:05:54 +08:00
pengx17
a6fd0a135b
fix(electron): add back updater ( #10814 )
2025-03-13 07:29:49 +00:00
renovate
adf8da363c
chore: bump up all non-major dependencies ( #10521 )
...
This PR contains the following updates:
| Package | Change | Age | Adoption | Passing | Confidence | Type | Update |
|---|---|---|---|---|---|---|---|
| [@capawesome/capacitor-android-edge-to-edge-support](https://capawesome.io/plugins/android-edge-to-edge-support/ ) ([source](https://redirect.github.com/capawesome-team/capacitor-plugins )) | [`7.0.0` -> `7.1.0`](https://renovatebot.com/diffs/npm/@capawesome%2fcapacitor-android-edge-to-edge-support/7.0.0/7.1.0 ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | dependencies | minor |
| [@capgo/inappbrowser](https://redirect.github.com/Cap-go/capacitor-inappbrowser ) | [`7.2.18` -> `7.2.20`](https://renovatebot.com/diffs/npm/@capgo%2finappbrowser/7.2.18/7.2.20 ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | dependencies | patch |
| [@commitlint/cli](https://commitlint.js.org/ ) ([source](https://redirect.github.com/conventional-changelog/commitlint/tree/HEAD/@commitlint/cli )) | [`19.7.1` -> `19.8.0`](https://renovatebot.com/diffs/npm/@commitlint%2fcli/19.7.1/19.8.0 ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | devDependencies | minor |
| [@commitlint/config-conventional](https://commitlint.js.org/ ) ([source](https://redirect.github.com/conventional-changelog/commitlint/tree/HEAD/@commitlint/config-conventional )) | [`19.7.1` -> `19.8.0`](https://renovatebot.com/diffs/npm/@commitlint%2fconfig-conventional/19.7.1/19.8.0 ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | devDependencies | minor |
| [@eslint/js](https://eslint.org ) ([source](https://redirect.github.com/eslint/eslint/tree/HEAD/packages/js )) | [`9.21.0` -> `9.22.0`](https://renovatebot.com/diffs/npm/@eslint%2fjs/9.21.0/9.22.0 ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | devDependencies | minor |
| [@faker-js/faker](https://fakerjs.dev ) ([source](https://redirect.github.com/faker-js/faker )) | [`9.5.1` -> `9.6.0`](https://renovatebot.com/diffs/npm/@faker-js%2ffaker/9.5.1/9.6.0 ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | devDependencies | minor |
| [@google/generative-ai](https://redirect.github.com/google/generative-ai-js ) | [`^0.22.0` -> `^0.24.0`](https://renovatebot.com/diffs/npm/@google%2fgenerative-ai/0.22.0/0.24.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 |
| [@lottiefiles/dotlottie-wc](https://redirect.github.com/LottieFiles/dotlottie-web ) ([source](https://redirect.github.com/LottieFiles/dotlottie-web/tree/HEAD/packages/wc )) | [`0.4.4` -> `0.4.6`](https://renovatebot.com/diffs/npm/@lottiefiles%2fdotlottie-wc/0.4.4/0.4.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 |
| [@playwright/test](https://playwright.dev ) ([source](https://redirect.github.com/microsoft/playwright )) | [`=1.50.1` -> `=1.51.0`](https://renovatebot.com/diffs/npm/@playwright%2ftest/1.50.1/1.51.0 ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | devDependencies | minor |
| [@playwright/test](https://playwright.dev ) ([source](https://redirect.github.com/microsoft/playwright )) | [`=1.50.1` -> `=1.51.0`](https://renovatebot.com/diffs/npm/@playwright%2ftest/1.50.1/1.51.0 ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | dependencies | minor |
| [@sentry/esbuild-plugin](https://redirect.github.com/getsentry/sentry-javascript-bundler-plugins/tree/main/packages/esbuild-plugin ) ([source](https://redirect.github.com/getsentry/sentry-javascript-bundler-plugins )) | [`3.2.1` -> `3.2.2`](https://renovatebot.com/diffs/npm/@sentry%2fesbuild-plugin/3.2.1/3.2.2 ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | devDependencies | patch |
| [@sentry/react](https://redirect.github.com/getsentry/sentry-javascript/tree/master/packages/react ) ([source](https://redirect.github.com/getsentry/sentry-javascript )) | [`9.2.0` -> `9.5.0`](https://renovatebot.com/diffs/npm/@sentry%2freact/9.2.0/9.5.0 ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | dependencies | minor |
| [@sentry/react](https://redirect.github.com/getsentry/sentry-javascript/tree/master/packages/react ) ([source](https://redirect.github.com/getsentry/sentry-javascript )) | [`9.2.0` -> `9.5.0`](https://renovatebot.com/diffs/npm/@sentry%2freact/9.2.0/9.5.0 ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | devDependencies | minor |
| [@sentry/webpack-plugin](https://redirect.github.com/getsentry/sentry-javascript-bundler-plugins/tree/main/packages/webpack-plugin ) ([source](https://redirect.github.com/getsentry/sentry-javascript-bundler-plugins )) | [`3.2.1` -> `3.2.2`](https://renovatebot.com/diffs/npm/@sentry%2fwebpack-plugin/3.2.1/3.2.2 ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | dependencies | patch |
| [@storybook/addon-essentials](https://redirect.github.com/storybookjs/storybook/tree/next/code/addons/essentials ) ([source](https://redirect.github.com/storybookjs/storybook/tree/HEAD/code/addons/essentials )) | [`8.6.2` -> `8.6.4`](https://renovatebot.com/diffs/npm/@storybook%2faddon-essentials/8.6.2/8.6.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/ ) | devDependencies | patch |
| [@storybook/addon-interactions](https://redirect.github.com/storybookjs/storybook/tree/next/code/addons/interactions ) ([source](https://redirect.github.com/storybookjs/storybook/tree/HEAD/code/addons/interactions )) | [`8.6.2` -> `8.6.4`](https://renovatebot.com/diffs/npm/@storybook%2faddon-interactions/8.6.2/8.6.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/ ) | devDependencies | patch |
| [@storybook/addon-links](https://redirect.github.com/storybookjs/storybook/tree/next/code/addons/links ) ([source](https://redirect.github.com/storybookjs/storybook/tree/HEAD/code/addons/links )) | [`8.6.2` -> `8.6.4`](https://renovatebot.com/diffs/npm/@storybook%2faddon-links/8.6.2/8.6.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/ ) | devDependencies | patch |
| [@storybook/addon-mdx-gfm](https://redirect.github.com/storybookjs/storybook/tree/next/code/addons/gfm ) ([source](https://redirect.github.com/storybookjs/storybook/tree/HEAD/code/addons/gfm )) | [`8.6.2` -> `8.6.4`](https://renovatebot.com/diffs/npm/@storybook%2faddon-mdx-gfm/8.6.2/8.6.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/ ) | devDependencies | patch |
| [@storybook/react](https://redirect.github.com/storybookjs/storybook/tree/next/code/renderers/react ) ([source](https://redirect.github.com/storybookjs/storybook/tree/HEAD/code/renderers/react )) | [`8.6.2` -> `8.6.4`](https://renovatebot.com/diffs/npm/@storybook%2freact/8.6.2/8.6.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/ ) | devDependencies | patch |
| [@storybook/react-vite](https://redirect.github.com/storybookjs/storybook/tree/next/code/frameworks/react-vite ) ([source](https://redirect.github.com/storybookjs/storybook/tree/HEAD/code/frameworks/react-vite )) | [`8.6.2` -> `8.6.4`](https://renovatebot.com/diffs/npm/@storybook%2freact-vite/8.6.2/8.6.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/ ) | devDependencies | patch |
| [@swc/core](https://swc.rs ) ([source](https://redirect.github.com/swc-project/swc )) | [`1.11.4` -> `1.11.8`](https://renovatebot.com/diffs/npm/@swc%2fcore/1.11.4/1.11.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 |
| [@tailwindcss/postcss](https://tailwindcss.com ) ([source](https://redirect.github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-postcss )) | [`4.0.9` -> `4.0.12`](https://renovatebot.com/diffs/npm/@tailwindcss%2fpostcss/4.0.9/4.0.12 ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | dependencies | patch |
| [@tailwindcss/vite](https://tailwindcss.com ) ([source](https://redirect.github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/@tailwindcss-vite )) | [`4.0.9` -> `4.0.12`](https://renovatebot.com/diffs/npm/@tailwindcss%2fvite/4.0.9/4.0.12 ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | dependencies | patch |
| [@types/node](https://redirect.github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/node ) ([source](https://redirect.github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node )) | [`22.13.5` -> `22.13.9`](https://renovatebot.com/diffs/npm/@types%2fnode/22.13.5/22.13.9 ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | dependencies | patch |
| [@types/node](https://redirect.github.com/DefinitelyTyped/DefinitelyTyped/tree/master/types/node ) ([source](https://redirect.github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node )) | [`22.13.5` -> `22.13.9`](https://renovatebot.com/diffs/npm/@types%2fnode/22.13.5/22.13.9 ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | devDependencies | patch |
| [@vitest/browser](https://redirect.github.com/vitest-dev/vitest/tree/main/packages/browser#readme ) ([source](https://redirect.github.com/vitest-dev/vitest/tree/HEAD/packages/browser )) | [`3.0.7` -> `3.0.8`](https://renovatebot.com/diffs/npm/@vitest%2fbrowser/3.0.7/3.0.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 |
| [@vitest/coverage-istanbul](https://redirect.github.com/vitest-dev/vitest/tree/main/packages/coverage-istanbul#readme ) ([source](https://redirect.github.com/vitest-dev/vitest/tree/HEAD/packages/coverage-istanbul )) | [`3.0.7` -> `3.0.8`](https://renovatebot.com/diffs/npm/@vitest%2fcoverage-istanbul/3.0.7/3.0.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 |
| [@vitest/ui](https://redirect.github.com/vitest-dev/vitest/tree/main/packages/ui#readme ) ([source](https://redirect.github.com/vitest-dev/vitest/tree/HEAD/packages/ui )) | [`3.0.7` -> `3.0.8`](https://renovatebot.com/diffs/npm/@vitest%2fui/3.0.7/3.0.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 |
| [anyhow](https://redirect.github.com/dtolnay/anyhow ) | `1.0.96` -> `1.0.97` | [](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 |
| [cc](https://redirect.github.com/rust-lang/cc-rs ) | `1.2.15` -> `1.2.16` | [](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 |
| [changelogithub](https://redirect.github.com/antfu/changelogithub ) | [`13.12.1` -> `13.13.0`](https://renovatebot.com/diffs/npm/changelogithub/13.12.1/13.13.0 ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | dependencies | minor |
| [commitlint](https://commitlint.js.org/ ) ([source](https://redirect.github.com/conventional-changelog/commitlint/tree/HEAD/@alias/commitlint )) | [`19.7.1` -> `19.8.0`](https://renovatebot.com/diffs/npm/commitlint/19.7.1/19.8.0 ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | devDependencies | minor |
| [core-js](https://redirect.github.com/zloirock/core-js ) ([source](https://redirect.github.com/zloirock/core-js/tree/HEAD/packages/core-js )) | [`3.40.0` -> `3.41.0`](https://renovatebot.com/diffs/npm/core-js/3.40.0/3.41.0 ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | dependencies | minor |
| [electron](https://redirect.github.com/electron/electron ) | [`34.3.0` -> `34.3.1`](https://renovatebot.com/diffs/npm/electron/34.3.0/34.3.1 ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | devDependencies | patch |
| [electron-log](https://redirect.github.com/megahertz/electron-log ) | [`5.3.0` -> `5.3.2`](https://renovatebot.com/diffs/npm/electron-log/5.3.0/5.3.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 |
| [electron-updater](https://redirect.github.com/electron-userland/electron-builder ) ([source](https://redirect.github.com/electron-userland/electron-builder/tree/HEAD/packages/electron-updater )) | [`6.6.0` -> `6.6.1`](https://renovatebot.com/diffs/npm/electron-updater/6.6.0/6.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/ ) | dependencies | patch |
| [happy-dom](https://redirect.github.com/capricorn86/happy-dom ) | [`17.1.8` -> `17.4.0`](https://renovatebot.com/diffs/npm/happy-dom/17.1.8/17.4.0 ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | devDependencies | minor |
| [html-validate](https://html-validate.org ) ([source](https://gitlab.com/html-validate/html-validate )) | [`9.4.1` -> `9.4.2`](https://renovatebot.com/diffs/npm/html-validate/9.4.1/9.4.2 ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | dependencies | patch |
| [ioredis](https://redirect.github.com/luin/ioredis ) | [`5.5.0` -> `5.6.0`](https://renovatebot.com/diffs/npm/ioredis/5.5.0/5.6.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 |
| [keyv](https://redirect.github.com/jaredwray/keyv ) | [`5.2.3` -> `5.3.1`](https://renovatebot.com/diffs/npm/keyv/5.2.3/5.3.1 ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | dependencies | minor |
| [lucide-react](https://lucide.dev ) ([source](https://redirect.github.com/lucide-icons/lucide/tree/HEAD/packages/lucide-react )) | [`^0.476.0` -> `^0.479.0`](https://renovatebot.com/diffs/npm/lucide-react/0.476.0/0.479.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 |
| [mixpanel-browser](https://redirect.github.com/mixpanel/mixpanel-js ) | [`2.60.0` -> `2.61.0`](https://renovatebot.com/diffs/npm/mixpanel-browser/2.60.0/2.61.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 |
| [nanoid](https://redirect.github.com/ai/nanoid ) | [`5.1.2` -> `5.1.3`](https://renovatebot.com/diffs/npm/nanoid/5.1.2/5.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/ ) | dependencies | patch |
| [nanoid](https://redirect.github.com/ai/nanoid ) | [`5.1.2` -> `5.1.3`](https://renovatebot.com/diffs/npm/nanoid/5.1.2/5.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 |
| [nest-commander](https://nest-commander.jaymcdoniel.dev ) ([source](https://redirect.github.com/jmcdo29/nest-commander/tree/HEAD/pacakges/nest-commander )) | [`3.16.0` -> `3.16.1`](https://renovatebot.com/diffs/npm/nest-commander/3.16.0/3.16.1 ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | dependencies | patch |
| [openai](https://redirect.github.com/openai/openai-node ) | [`4.86.1` -> `4.86.2`](https://renovatebot.com/diffs/npm/openai/4.86.1/4.86.2 ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | dependencies | patch |
| [playwright](https://playwright.dev ) ([source](https://redirect.github.com/microsoft/playwright )) | [`=1.50.1` -> `=1.51.0`](https://renovatebot.com/diffs/npm/playwright/1.50.1/1.51.0 ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | devDependencies | minor |
| [prettier](https://prettier.io ) ([source](https://redirect.github.com/prettier/prettier )) | [`3.5.2` -> `3.5.3`](https://renovatebot.com/diffs/npm/prettier/3.5.2/3.5.3 ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | dependencies | patch |
| [prettier](https://prettier.io ) ([source](https://redirect.github.com/prettier/prettier )) | [`3.5.2` -> `3.5.3`](https://renovatebot.com/diffs/npm/prettier/3.5.2/3.5.3 ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | devDependencies | patch |
| [react-markdown](https://redirect.github.com/remarkjs/react-markdown ) | [`10.0.0` -> `10.1.0`](https://renovatebot.com/diffs/npm/react-markdown/10.0.0/10.1.0 ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | dependencies | minor |
| [react-router-dom](https://redirect.github.com/remix-run/react-router ) ([source](https://redirect.github.com/remix-run/react-router/tree/HEAD/packages/react-router-dom )) | [`6.28.0` -> `6.30.0`](https://renovatebot.com/diffs/npm/react-router-dom/6.28.0/6.30.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 |
| [serde_json](https://redirect.github.com/serde-rs/json ) | `1.0.139` -> `1.0.140` | [](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 |
| [storybook](https://redirect.github.com/storybookjs/storybook/tree/next/code/lib/cli ) ([source](https://redirect.github.com/storybookjs/storybook/tree/HEAD/code/lib/cli )) | [`8.6.2` -> `8.6.4`](https://renovatebot.com/diffs/npm/storybook/8.6.2/8.6.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/ ) | devDependencies | patch |
| [swr](https://swr.vercel.app ) ([source](https://redirect.github.com/vercel/swr )) | [`2.3.2` -> `2.3.3`](https://renovatebot.com/diffs/npm/swr/2.3.2/2.3.3 ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | dependencies | patch |
| [tailwindcss](https://tailwindcss.com ) ([source](https://redirect.github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/tailwindcss )) | [`4.0.9` -> `4.0.12`](https://renovatebot.com/diffs/npm/tailwindcss/4.0.9/4.0.12 ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | dependencies | patch |
| [tailwindcss](https://tailwindcss.com ) ([source](https://redirect.github.com/tailwindlabs/tailwindcss/tree/HEAD/packages/tailwindcss )) | [`4.0.9` -> `4.0.12`](https://renovatebot.com/diffs/npm/tailwindcss/4.0.9/4.0.12 ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | devDependencies | patch |
| [terser-webpack-plugin](https://redirect.github.com/webpack-contrib/terser-webpack-plugin ) | [`5.3.12` -> `5.3.14`](https://renovatebot.com/diffs/npm/terser-webpack-plugin/5.3.12/5.3.14 ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | dependencies | patch |
| [thiserror](https://redirect.github.com/dtolnay/thiserror ) | `2.0.11` -> `2.0.12` | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | workspace.dependencies | patch |
| [tldts](https://redirect.github.com/remusao/tldts ) | [`6.1.79` -> `6.1.83`](https://renovatebot.com/diffs/npm/tldts/6.1.79/6.1.83 ) | [](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 |
| [tokio](https://tokio.rs ) ([source](https://redirect.github.com/tokio-rs/tokio )) | `1.43.0` -> `1.44.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 |
| [tree-sitter](https://tree-sitter.github.io/tree-sitter ) ([source](https://redirect.github.com/tree-sitter/tree-sitter )) | `0.25.2` -> `0.25.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/ ) | workspace.dependencies | patch |
| [typescript](https://www.typescriptlang.org/ ) ([source](https://redirect.github.com/microsoft/TypeScript )) | [`5.7.3` -> `5.8.2`](https://renovatebot.com/diffs/npm/typescript/5.7.3/5.8.2 ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | dependencies | minor |
| [typescript](https://www.typescriptlang.org/ ) ([source](https://redirect.github.com/microsoft/TypeScript )) | [`5.7.3` -> `5.8.2`](https://renovatebot.com/diffs/npm/typescript/5.7.3/5.8.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 | minor |
| [typescript-eslint](https://typescript-eslint.io/packages/typescript-eslint ) ([source](https://redirect.github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/typescript-eslint )) | [`8.25.0` -> `8.26.0`](https://renovatebot.com/diffs/npm/typescript-eslint/8.25.0/8.26.0 ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | devDependencies | minor |
| [undici](https://undici.nodejs.org ) ([source](https://redirect.github.com/nodejs/undici )) | [`7.3.0` -> `7.4.0`](https://renovatebot.com/diffs/npm/undici/7.3.0/7.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 |
| [vite](https://vite.dev ) ([source](https://redirect.github.com/vitejs/vite/tree/HEAD/packages/vite )) | [`6.2.0` -> `6.2.1`](https://renovatebot.com/diffs/npm/vite/6.2.0/6.2.1 ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | dependencies | patch |
| [vite](https://vite.dev ) ([source](https://redirect.github.com/vitejs/vite/tree/HEAD/packages/vite )) | [`6.2.0` -> `6.2.1`](https://renovatebot.com/diffs/npm/vite/6.2.0/6.2.1 ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | devDependencies | patch |
| [vitest](https://redirect.github.com/vitest-dev/vitest ) ([source](https://redirect.github.com/vitest-dev/vitest/tree/HEAD/packages/vitest )) | [`3.0.7` -> `3.0.8`](https://renovatebot.com/diffs/npm/vitest/3.0.7/3.0.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 |
| [yarn](https://redirect.github.com/yarnpkg/berry ) ([source](https://redirect.github.com/yarnpkg/berry/tree/HEAD/packages/yarnpkg-cli )) | [`4.6.0` -> `4.7.0`](https://renovatebot.com/diffs/npm/yarn/4.6.0/4.7.0 ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | [](https://docs.renovatebot.com/merge-confidence/ ) | packageManager | minor |
| [com.android.library](https://developer.android.com/studio/build ) ([source](https://android.googlesource.com/platform/tools/base )) | `8.8.2` -> `8.9.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.android.application](https://developer.android.com/studio/build ) ([source](https://android.googlesource.com/platform/tools/base )) | `8.8.2` -> `8.9.0` | [](https://docs.renovatebot.com/merge-confidence/ ) | [: adjust sentry config ( #10631 )
2025-03-05 11:18:06 +00:00
pengx17
59526080d4
fix(electron): hide tray for now ( #10498 )
2025-02-28 02:13:10 +00:00
pengx17
9e0cae58d7
fix(native): split application & tappable application ( #10491 )
...
A listening tappable app's info should inherit from its group process's name/icon. However the group process may not be listed as a tappable application.
2025-02-27 15:02:38 +00:00
forehalo
cc6fdef10e
chore(electron): remove offline mode ( #10152 )
...
close AF-2177
2025-02-14 10:04:01 +00:00
pengx17
40305db838
fix(electron): webpack dev server reloading issue ( #9978 )
2025-02-06 10:05:08 +00:00
EYHN
ee0cfe4dc7
feat(nbstore): share worker between workspaces ( #9947 )
2025-02-05 07:57:03 +00:00
pengx17
3834699c68
fix(electron): add refer/origin to api requests ( #9880 )
...
related to BS-2181
2025-02-02 10:05:02 +00:00
pengx17
699da97879
chore(electron): speed up electron tests ( #9871 )
2025-01-24 04:52:26 +00:00
pengx17
6ac6a8d6d6
feat(core): unused blob management in settings ( #9795 )
...
fix AF-2144, PD-2064, PD-2065, PD-2066
2025-01-23 07:12:17 +00:00
pengx17
088ae0ac0a
feat(electron): backup panel ( #9738 )
...
fix PD-2071, PD-2059, PD-2069, PD-2068
2025-01-22 22:52:31 +08:00
forehalo
cb53baca89
fix(electron): export and import ( #9767 )
2025-01-20 08:48:03 +00:00
EYHN
a2ffdb4047
feat(core): new worker workspace engine ( #9257 )
2025-01-16 16:22:18 +00:00
pengx17
9f3a304885
feat(electron): more desktop app related shortcuts ( #9724 )
...
fix AF-2126, AF-2124
- Add CMD+M for minimize the app.
- Enhance how CMD+W works. Close the following in order, stop if any one is closed:
- peek view
- split view
- tab
- otherwise, hide the app
2025-01-16 06:50:08 +00:00
pengx17
0bce5c6730
feat(core): remove workspace selectors in settings ( #9705 )
...
fix AF-2119
2025-01-15 07:37:25 +00:00
Brooooooklyn
fed0156f22
style: add @typescript-eslint/return-await rule ( #9612 )
2025-01-09 09:28:59 +00:00
forehalo
0554df6bc2
fix(electron): filename escape ( #9583 )
2025-01-08 07:31:09 +00:00