Commit Graph

483 Commits

Author SHA1 Message Date
Saul-Mirone
ea391779dd feat(editor): inline preset extension (#11919)
Closes: BS-3214
2025-04-23 14:26:20 +00:00
liuyi
5d9a3aac5b Revert "build: allow node package depends on workspace packages (#11892)"
This reverts commit c00671dd84.
2025-04-23 19:24:51 +08:00
forehalo
c00671dd84 build: allow node package depends on workspace packages (#11892) 2025-04-23 10:04:59 +00:00
forehalo
64997d4a0e feat(infra): route package (#10353) 2025-04-23 09:49:11 +00:00
Saul-Mirone
16831e8c0e feat(editor): reference, mention and latex inline extension (#11914)
Closes: BS-3215
Closes: BS-3218
Closes: BS-3217
2025-04-23 09:22:16 +00:00
Saul-Mirone
b1aecfc1c4 feat(editor): link inline extension (#11910)
Closes: BS-3216
2025-04-23 04:42:24 +00:00
Saul-Mirone
2510e7a9a4 feat(editor): inline footnote extension (#11908)
Closes: BS-3219
2025-04-23 01:40:49 +00:00
Saul-Mirone
24edfc75bd feat(editor): table extension (#11906)
Closes: BS-3205
2025-04-23 01:16:08 +00:00
Saul-Mirone
43966a6c6b feat(editor): use store extension manager (#11891)
Closes: BS-3284
2025-04-22 15:51:23 +00:00
Brooooooklyn
bfd3c64615 test: add mutex to clipboard copy & paste operation to reduce flaky (#11884) 2025-04-22 11:02:30 +00:00
Saul-Mirone
6d6504e2af feat(editor): replace spec provider with extension manager (#11861)
Closes: BS-3273
2025-04-22 07:40:41 +00:00
pengx17
8fdb00e0ab fix(core): do not need to inline fonts (#11880)
The fonts are always loaded via url thus it is not needed to have fonts inlined.  Inlining fonts will increase the size of bundled files.
2025-04-22 07:27:11 +00:00
Saul-Mirone
846410cdb6 feat(editor): note extension (#11856)
Closes: BS-3200
Closes: BS-3201
2025-04-21 13:18:35 +00:00
Saul-Mirone
7c79b1f024 feat(editor): latex and list extensions (#11851)
Closes: BS-3198
Closes: BS-3199
2025-04-21 10:29:31 +00:00
Saul-Mirone
df6e17b82f feat(editor): frame and image extensions (#11849)
Closes: BS-3196
Closes: BS-3197
2025-04-21 10:29:30 +00:00
Saul-Mirone
92ac8e3cad feat(editor): embed extension (#11848)
Closes: BS-3195
2025-04-21 09:22:12 +00:00
Saul-Mirone
15a5264352 feat(editor): divider and edgeless text extensions (#11846)
Closes: BS-3193
Closes: BS-3194
2025-04-21 09:22:12 +00:00
Saul-Mirone
652d42ba1e feat(editor): scaffolding store and view manager in affine (#11840)
Closes: BS-3254
2025-04-21 09:22:11 +00:00
Saul-Mirone
5244ff9b98 feat(editor): data view and database extension (#11837)
Closes: BS-3191
Closes: BS-3192
2025-04-21 09:22:11 +00:00
Saul-Mirone
93b7c288cb feat(editor): callout and code extension (#11827)
Closes: BS-3243
Closes: BS-3190
2025-04-21 04:27:19 +00:00
Saul-Mirone
a6d0894ce1 feat(editor): bookmark and attachment extension (#11824)
Closes: BS-3188
Closes: BS-3189
2025-04-21 04:27:18 +00:00
Saul-Mirone
70ddae15ef feat(editor): affine extension provider and manager (#11822)
Closes: BS-3186

# @blocksuite/affine-ext-loader

Blocksuite extension loader system for AFFiNE, providing a structured way to manage and load extensions in different contexts.

## Usage

### Basic Extension Provider

```typescript
import { BaseExtensionProvider } from '@blocksuite/affine-ext-loader';
import { z } from 'zod';

// Create a custom provider with options
class MyProvider extends BaseExtensionProvider<'my-scope', { enabled: boolean }> {
  name = 'MyProvider';

  schema = z.object({
    enabled: z.boolean(),
  });

  setup(context: Context<'my-scope'>, options?: { enabled: boolean }) {
    super.setup(context, options);
    // Custom setup logic
  }
}
```

### Store Extensions

```typescript
import { StoreExtensionProvider, StoreExtensionManager } from '@blocksuite/affine-ext-loader';
import { z } from 'zod';

// Create a store provider with custom options
class MyStoreProvider extends StoreExtensionProvider<{ cacheSize: number }> {
  override name = 'MyStoreProvider';

  override schema = z.object({
    cacheSize: z.number().min(0),
  });

  override setup(context: StoreExtensionContext, options?: { cacheSize: number }) {
    super.setup(context, options);
    context.register([Ext1, Ext2, Ext3]);
  }
}

// Create and use the store extension manager
const manager = new StoreExtensionManager([MyStoreProvider]);
manager.configure(MyStoreProvider, { cacheSize: 100 });
const extensions = manager.get('store');
```

### View Extensions

```typescript
import { ViewExtensionProvider, ViewExtensionManager } from '@blocksuite/affine-ext-loader';
import { z } from 'zod';

// Create a view provider with custom options
class MyViewProvider extends ViewExtensionProvider<{ theme: string }> {
  override name = 'MyViewProvider';

  override schema = z.object({
    theme: z.enum(['light', 'dark']),
  });

  override setup(context: ViewExtensionContext, options?: { theme: string }) {
    super.setup(context, options);

    context.register([CommonExt]);
    if (context.scope === 'page') {
      context.register([PageExt]);
    } else if (context.scope === 'edgeless') {
      context.register([EdgelessExt]);
    }
    if (options?.theme === 'dark') {
      context.register([DarkModeExt]);
    }
  }

  // Override effect to run one-time initialization logic
  override effect() {
    // This will only run once per provider class
    console.log('Initializing MyViewProvider');
    // Register lit elements
    this.registerLitElements();
  }
}

// Create and use the view extension manager
const manager = new ViewExtensionManager([MyViewProvider]);
manager.configure(MyViewProvider, { theme: 'dark' });

// Get extensions for different view scopes
const pageExtensions = manager.get('page');
const edgelessExtensions = manager.get('edgeless');
```

### One-time Initialization with Effect

View extensions support one-time initialization through the `effect` method. This method is called automatically during setup, but only once per provider class. It's useful for:

- Initializing global state
- Registering lit elements
- Setting up shared resources

```typescript
class MyViewProvider extends ViewExtensionProvider {
  override effect() {
    // This will only run once, even if multiple instances are created
    initializeGlobalState();
    registerLitElements();
    setupGlobalEventListeners();
  }
}
```

### Available View Scopes

The view extension system supports the following scopes:

- `page` - Standard page view
- `edgeless` - Edgeless (whiteboard) view
- `preview-page` - Page preview view
- `preview-edgeless` - Edgeless preview view
- `mobile-page` - Mobile page view
- `mobile-edgeless` - Mobile edgeless view

### Extension Configuration

Extensions can be configured using the `configure` method:

```typescript
// Set configuration directly
manager.configure(MyProvider, { enabled: true });

// Update configuration using a function
manager.configure(MyProvider, prev => {
  if (!prev) return prev;
  return {
    ...prev,
    enabled: !prev.enabled,
  };
});

// Remove configuration
manager.configure(MyProvider, undefined);
```

### Dependency Injection

Both store and view extension managers support dependency injection:

```typescript
// Access the manager through the di container
const viewManager = std.get(ViewExtensionManagerIdentifier);
const pagePreviewExtension = viewManager.get('preview-page');
```
2025-04-21 04:27:18 +00:00
Brooooooklyn
95dbda24fc feat(y-octo): import y-octo monorepo (#11750) 2025-04-21 02:51:15 +00:00
forehalo
18fae0f1aa fix: host app with subpath (#11739)
closes #11719
2025-04-17 01:29:48 +00:00
Saul-Mirone
b5c9741f18 feat(editor): extract keyboard toolbar widget (#11707) 2025-04-15 12:06:50 +00:00
doodlewind
e1e5e8fc14 feat(editor): add basic image support in turbo renderer (#11620)
This PR adds basic support for image block:

![image.png](https://graphite-user-uploaded-assets-prod.s3.amazonaws.com/lEGcysB4lFTEbCwZ8jMv/4785fc76-fe09-4002-b3fb-aafa9cac34bb.png)
2025-04-11 10:16:07 +00:00
Saul-Mirone
4f9a4e739a feat(editor): extract linked doc widget package (#11589)
Close [BS-2738](https://github.com/toeverything/AFFiNE/pull/11589)
2025-04-11 14:06:16 +08:00
doodlewind
a5ab66d6cd feat(editor): add basic code support in turbo renderer (#11619)
This PR adds basic support for code block:

[Screen Recording 2025-04-10 at 8.13.26 PM.mov <span class="graphite__hidden">(uploaded via Graphite)</span> <img class="graphite__hidden" src="https://app.graphite.dev/api/v1/graphite/video/thumbnail/lEGcysB4lFTEbCwZ8jMv/5d749979-f7f1-4e4d-ba5b-bc4ba29f8b83.mov" />](https://app.graphite.dev/media/video/lEGcysB4lFTEbCwZ8jMv/5d749979-f7f1-4e4d-ba5b-bc4ba29f8b83.mov)
2025-04-11 04:28:51 +00:00
liuyi
e79e4c9e9b refactor(core): add version in worker url (#11614)
Co-authored-by: renovate <29139614+renovate@users.noreply.github.com>
2025-04-10 11:12:49 +00:00
doodlewind
dba8e00fb6 feat(editor): add basic note support in turbo renderer (#11607)
After landing layout tree refactoring, this PR adds basic note support in turbo renderer.

In this demo recording, the code and image block needs to be further supported.

[Screen Recording 2025-04-10 at 5.16.15 PM.mov <span class="graphite__hidden">(uploaded via Graphite)</span> <img class="graphite__hidden" src="https://app.graphite.dev/api/v1/graphite/video/thumbnail/lEGcysB4lFTEbCwZ8jMv/2e416b41-5609-4e52-a90f-5b7bb77db682.mov" />](https://app.graphite.dev/media/video/lEGcysB4lFTEbCwZ8jMv/2e416b41-5609-4e52-a90f-5b7bb77db682.mov)
2025-04-10 09:52:33 +00:00
liuyi
e376aa57c5 chore: bring treeshake back (#11577) 2025-04-10 14:12:36 +08:00
forehalo
cdbcb8a42a chore: adjust webpack output (#11573)
- automatically split i18n resources into i18n-langs.{lang} naming
- force worker resources to be bundled in one file
2025-04-10 01:48:28 +00:00
Saul-Mirone
1f45cc5dec refactor(editor): unify directories naming (#11516)
**Directory Structure Changes**

- Renamed multiple block-related directories by removing the "block-" prefix:
  - `block-attachment` → `attachment`
  - `block-bookmark` → `bookmark`
  - `block-callout` → `callout`
  - `block-code` → `code`
  - `block-data-view` → `data-view`
  - `block-database` → `database`
  - `block-divider` → `divider`
  - `block-edgeless-text` → `edgeless-text`
  - `block-embed` → `embed`
2025-04-07 12:34:40 +00:00
forehalo
40f218c898 chore: set base version to 0.21 2025-04-07 16:10:32 +08:00
Saul-Mirone
bb1270061a feat(editor): gfx template package (#11480) 2025-04-06 12:24:13 +00:00
Saul-Mirone
2a1306c58c refactor(editor): separate the element renders (#11461) 2025-04-04 13:09:46 +00:00
forehalo
c8d22d97d5 refactor: webpack config (#11421) 2025-04-03 11:55:56 +00:00
pengx17
9cb80205f8 chore(electron): add telemetry events for enabling meetings (#11327)
fix AF-2436
2025-04-01 09:01:31 +00:00
renovate
782f31ad26 chore: bump up all non-major dependencies (#11273)
This PR contains the following updates:

| Package | Change | Age | Adoption | Passing | Confidence | Type | Update |
|---|---|---|---|---|---|---|---|
| [@ai-sdk/google](https://sdk.vercel.ai/docs) ([source](https://redirect.github.com/vercel/ai)) | [`1.2.3` -> `1.2.5`](https://renovatebot.com/diffs/npm/@ai-sdk%2fgoogle/1.2.3/1.2.5) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@ai-sdk%2fgoogle/1.2.5?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@ai-sdk%2fgoogle/1.2.5?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@ai-sdk%2fgoogle/1.2.3/1.2.5?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@ai-sdk%2fgoogle/1.2.3/1.2.5?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | patch |
| [@aws-sdk/client-s3](https://redirect.github.com/aws/aws-sdk-js-v3/tree/main/clients/client-s3) ([source](https://redirect.github.com/aws/aws-sdk-js-v3/tree/HEAD/clients/client-s3)) | [`3.777.0` -> `3.779.0`](https://renovatebot.com/diffs/npm/@aws-sdk%2fclient-s3/3.777.0/3.779.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@aws-sdk%2fclient-s3/3.779.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@aws-sdk%2fclient-s3/3.779.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@aws-sdk%2fclient-s3/3.777.0/3.779.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@aws-sdk%2fclient-s3/3.777.0/3.779.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | minor |
| [@capacitor/android](https://capacitorjs.com) ([source](https://redirect.github.com/ionic-team/capacitor)) | [`7.1.0` -> `7.2.0`](https://renovatebot.com/diffs/npm/@capacitor%2fandroid/7.1.0/7.2.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@capacitor%2fandroid/7.2.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@capacitor%2fandroid/7.2.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@capacitor%2fandroid/7.1.0/7.2.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@capacitor%2fandroid/7.1.0/7.2.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | minor |
| [@capacitor/cli](https://capacitorjs.com) ([source](https://redirect.github.com/ionic-team/capacitor)) | [`7.1.0` -> `7.2.0`](https://renovatebot.com/diffs/npm/@capacitor%2fcli/7.1.0/7.2.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@capacitor%2fcli/7.2.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@capacitor%2fcli/7.2.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@capacitor%2fcli/7.1.0/7.2.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@capacitor%2fcli/7.1.0/7.2.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | devDependencies | minor |
| [@capacitor/core](https://capacitorjs.com) ([source](https://redirect.github.com/ionic-team/capacitor)) | [`7.1.0` -> `7.2.0`](https://renovatebot.com/diffs/npm/@capacitor%2fcore/7.1.0/7.2.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@capacitor%2fcore/7.2.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@capacitor%2fcore/7.2.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@capacitor%2fcore/7.1.0/7.2.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@capacitor%2fcore/7.1.0/7.2.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | minor |
| [@capacitor/ios](https://capacitorjs.com) ([source](https://redirect.github.com/ionic-team/capacitor)) | [`7.1.0` -> `7.2.0`](https://renovatebot.com/diffs/npm/@capacitor%2fios/7.1.0/7.2.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@capacitor%2fios/7.2.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@capacitor%2fios/7.2.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@capacitor%2fios/7.1.0/7.2.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@capacitor%2fios/7.1.0/7.2.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | minor |
| [@capgo/inappbrowser](https://redirect.github.com/Cap-go/capacitor-inappbrowser) | [`7.6.8` -> `7.7.2`](https://renovatebot.com/diffs/npm/@capgo%2finappbrowser/7.6.8/7.7.2) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@capgo%2finappbrowser/7.7.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@capgo%2finappbrowser/7.7.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@capgo%2finappbrowser/7.6.8/7.7.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@capgo%2finappbrowser/7.6.8/7.7.2?slim=true)](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.5.0` -> `0.5.1`](https://renovatebot.com/diffs/npm/@lottiefiles%2fdotlottie-wc/0.5.0/0.5.1) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@lottiefiles%2fdotlottie-wc/0.5.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@lottiefiles%2fdotlottie-wc/0.5.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@lottiefiles%2fdotlottie-wc/0.5.0/0.5.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@lottiefiles%2fdotlottie-wc/0.5.0/0.5.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | patch |
| [@perfsee/webpack](https://redirect.github.com/perfsee/perfsee) | [`1.13.0` -> `1.14.2`](https://renovatebot.com/diffs/npm/@perfsee%2fwebpack/1.13.0/1.14.2) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@perfsee%2fwebpack/1.14.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@perfsee%2fwebpack/1.14.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@perfsee%2fwebpack/1.13.0/1.14.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@perfsee%2fwebpack/1.13.0/1.14.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | minor |
| [@sentry/react](https://redirect.github.com/getsentry/sentry-javascript/tree/master/packages/react) ([source](https://redirect.github.com/getsentry/sentry-javascript)) | [`9.10.0` -> `9.10.1`](https://renovatebot.com/diffs/npm/@sentry%2freact/9.10.0/9.10.1) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@sentry%2freact/9.10.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@sentry%2freact/9.10.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@sentry%2freact/9.10.0/9.10.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@sentry%2freact/9.10.0/9.10.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | patch |
| [@sentry/react](https://redirect.github.com/getsentry/sentry-javascript/tree/master/packages/react) ([source](https://redirect.github.com/getsentry/sentry-javascript)) | [`9.10.0` -> `9.10.1`](https://renovatebot.com/diffs/npm/@sentry%2freact/9.10.0/9.10.1) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@sentry%2freact/9.10.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@sentry%2freact/9.10.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@sentry%2freact/9.10.0/9.10.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@sentry%2freact/9.10.0/9.10.1?slim=true)](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.9` -> `3.1.1`](https://renovatebot.com/diffs/npm/@vitest%2fbrowser/3.0.9/3.1.1) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@vitest%2fbrowser/3.1.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@vitest%2fbrowser/3.1.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@vitest%2fbrowser/3.0.9/3.1.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@vitest%2fbrowser/3.0.9/3.1.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | devDependencies | minor |
| [@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.9` -> `3.1.1`](https://renovatebot.com/diffs/npm/@vitest%2fcoverage-istanbul/3.0.9/3.1.1) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@vitest%2fcoverage-istanbul/3.1.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@vitest%2fcoverage-istanbul/3.1.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@vitest%2fcoverage-istanbul/3.0.9/3.1.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@vitest%2fcoverage-istanbul/3.0.9/3.1.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | devDependencies | minor |
| [@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.9` -> `3.1.1`](https://renovatebot.com/diffs/npm/@vitest%2fui/3.0.9/3.1.1) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@vitest%2fui/3.1.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@vitest%2fui/3.1.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@vitest%2fui/3.0.9/3.1.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@vitest%2fui/3.0.9/3.1.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | devDependencies | minor |
| [ai](https://sdk.vercel.ai/docs) ([source](https://redirect.github.com/vercel/ai)) | [`4.2.8` -> `4.2.10`](https://renovatebot.com/diffs/npm/ai/4.2.8/4.2.10) | [![age](https://developer.mend.io/api/mc/badges/age/npm/ai/4.2.10?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/ai/4.2.10?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/ai/4.2.8/4.2.10?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/ai/4.2.8/4.2.10?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | patch |
| [bullmq](https://bullmq.io/) ([source](https://redirect.github.com/taskforcesh/bullmq)) | [`5.45.0` -> `5.45.2`](https://renovatebot.com/diffs/npm/bullmq/5.45.0/5.45.2) | [![age](https://developer.mend.io/api/mc/badges/age/npm/bullmq/5.45.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/bullmq/5.45.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/bullmq/5.45.0/5.45.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/bullmq/5.45.0/5.45.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | patch |
| [esbuild](https://redirect.github.com/evanw/esbuild) | [`0.25.1` -> `0.25.2`](https://renovatebot.com/diffs/npm/esbuild/0.25.1/0.25.2) | [![age](https://developer.mend.io/api/mc/badges/age/npm/esbuild/0.25.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/esbuild/0.25.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/esbuild/0.25.1/0.25.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/esbuild/0.25.1/0.25.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | devDependencies | patch |
| [express](https://expressjs.com/) ([source](https://redirect.github.com/expressjs/express)) | [`5.0.1` -> `5.1.0`](https://renovatebot.com/diffs/npm/express/5.0.1/5.1.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/express/5.1.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/express/5.1.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/express/5.0.1/5.1.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/express/5.0.1/5.1.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | minor |
| [lucide-react](https://lucide.dev) ([source](https://redirect.github.com/lucide-icons/lucide/tree/HEAD/packages/lucide-react)) | [`^0.484.0` -> `^0.486.0`](https://renovatebot.com/diffs/npm/lucide-react/0.484.0/0.486.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/lucide-react/0.486.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/lucide-react/0.486.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/lucide-react/0.484.0/0.486.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/lucide-react/0.484.0/0.486.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | minor |
| [once_cell](https://redirect.github.com/matklad/once_cell) | `1.21.2` -> `1.21.3` | [![age](https://developer.mend.io/api/mc/badges/age/crate/once_cell/1.21.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/crate/once_cell/1.21.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/crate/once_cell/1.21.2/1.21.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/crate/once_cell/1.21.2/1.21.3?slim=true)](https://docs.renovatebot.com/merge-confidence/) | workspace.dependencies | patch |
| [openai](https://redirect.github.com/openai/openai-node) | [`4.90.0` -> `4.91.0`](https://renovatebot.com/diffs/npm/openai/4.90.0/4.91.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/openai/4.91.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/openai/4.91.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/openai/4.90.0/4.91.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/openai/4.90.0/4.91.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | minor |
| [react](https://react.dev/) ([source](https://redirect.github.com/facebook/react/tree/HEAD/packages/react)) | [`19.0.0` -> `19.1.0`](https://renovatebot.com/diffs/npm/react/19.0.0/19.1.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/react/19.1.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/react/19.1.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/react/19.0.0/19.1.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/react/19.0.0/19.1.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | minor |
| [react-day-picker](https://daypicker.dev) ([source](https://redirect.github.com/gpbl/react-day-picker)) | [`9.6.3` -> `9.6.4`](https://renovatebot.com/diffs/npm/react-day-picker/9.6.3/9.6.4) | [![age](https://developer.mend.io/api/mc/badges/age/npm/react-day-picker/9.6.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/react-day-picker/9.6.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/react-day-picker/9.6.3/9.6.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/react-day-picker/9.6.3/9.6.4?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | patch |
| [react-dom](https://react.dev/) ([source](https://redirect.github.com/facebook/react/tree/HEAD/packages/react-dom)) | [`19.0.0` -> `19.1.0`](https://renovatebot.com/diffs/npm/react-dom/19.0.0/19.1.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/react-dom/19.1.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/react-dom/19.1.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/react-dom/19.0.0/19.1.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/react-dom/19.0.0/19.1.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | minor |
| [react-hook-form](https://www.react-hook-form.com) ([source](https://redirect.github.com/react-hook-form/react-hook-form)) | [`7.54.2` -> `7.55.0`](https://renovatebot.com/diffs/npm/react-hook-form/7.54.2/7.55.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/react-hook-form/7.55.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/react-hook-form/7.55.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/react-hook-form/7.54.2/7.55.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/react-hook-form/7.54.2/7.55.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | minor |
| [react-refresh](https://react.dev/) ([source](https://redirect.github.com/facebook/react/tree/HEAD/packages/react)) | [`^0.16.0` -> `^0.17.0`](https://renovatebot.com/diffs/npm/react-refresh/0.16.0/0.17.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/react-refresh/0.17.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/react-refresh/0.17.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/react-refresh/0.16.0/0.17.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/react-refresh/0.16.0/0.17.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | minor |
| [react-virtuoso](https://virtuoso.dev/) ([source](https://redirect.github.com/petyosi/react-virtuoso)) | [`4.12.5` -> `4.12.6`](https://renovatebot.com/diffs/npm/react-virtuoso/4.12.5/4.12.6) | [![age](https://developer.mend.io/api/mc/badges/age/npm/react-virtuoso/4.12.6?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/react-virtuoso/4.12.6?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/react-virtuoso/4.12.5/4.12.6?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/react-virtuoso/4.12.5/4.12.6?slim=true)](https://docs.renovatebot.com/merge-confidence/) | dependencies | patch |
| [rubato](https://redirect.github.com/HEnquist/rubato) | `0.16.1` -> `0.16.2` | [![age](https://developer.mend.io/api/mc/badges/age/crate/rubato/0.16.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/crate/rubato/0.16.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/crate/rubato/0.16.1/0.16.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/crate/rubato/0.16.1/0.16.2?slim=true)](https://docs.renovatebot.com/merge-confidence/) | workspace.dependencies | patch |
| [tailwind-merge](https://redirect.github.com/dcastil/tailwind-merge) | [`3.0.2` -> `3.1.0`](https://renovatebot.com/diffs/npm/tailwind-merge/3.0.2/3.1.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/tailwind-merge/3.1.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/tailwind-merge/3.1.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/tailwind-merge/3.0.2/3.1.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/tailwind-merge/3.0.2/3.1.0?slim=true)](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.28.0` -> `8.29.0`](https://renovatebot.com/diffs/npm/typescript-eslint/8.28.0/8.29.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/typescript-eslint/8.29.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/typescript-eslint/8.29.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/typescript-eslint/8.28.0/8.29.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/typescript-eslint/8.28.0/8.29.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | devDependencies | minor |
| [vitest](https://redirect.github.com/vitest-dev/vitest) ([source](https://redirect.github.com/vitest-dev/vitest/tree/HEAD/packages/vitest)) | [`3.0.9` -> `3.1.1`](https://renovatebot.com/diffs/npm/vitest/3.0.9/3.1.1) | [![age](https://developer.mend.io/api/mc/badges/age/npm/vitest/3.1.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/vitest/3.1.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/vitest/3.0.9/3.1.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/vitest/3.0.9/3.1.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | devDependencies | minor |
| [yarn](https://redirect.github.com/yarnpkg/berry) ([source](https://redirect.github.com/yarnpkg/berry/tree/HEAD/packages/yarnpkg-cli)) | [`4.8.0` -> `4.8.1`](https://renovatebot.com/diffs/npm/yarn/4.8.0/4.8.1) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@yarnpkg%2fcli/4.8.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@yarnpkg%2fcli/4.8.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@yarnpkg%2fcli/4.8.0/4.8.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@yarnpkg%2fcli/4.8.0/4.8.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | packageManager | patch |

---

### Release Notes

<details>
<summary>vercel/ai (@&#8203;ai-sdk/google)</summary>

### [`v1.2.5`](https://redirect.github.com/vercel/ai/releases/tag/%40ai-sdk/openai%401.2.5)

[Compare Source](https://redirect.github.com/vercel/ai/compare/@ai-sdk/google@1.2.4...@ai-sdk/google@1.2.5)

##### Patch Changes

-   [`2e1101a`](https://redirect.github.com/vercel/ai/commit/2e1101a): feat (provider/openai): pdf input support
-   Updated dependencies \[[`2e1101a`](https://redirect.github.com/vercel/ai/commit/2e1101a)]
    -   [@&#8203;ai-sdk/provider](https://redirect.github.com/ai-sdk/provider)[@&#8203;1](https://redirect.github.com/1).0.11
    -   [@&#8203;ai-sdk/provider-utils](https://redirect.github.com/ai-sdk/provider-utils)[@&#8203;2](https://redirect.github.com/2).1.13

### [`v1.2.4`](https://redirect.github.com/vercel/ai/releases/tag/%40ai-sdk/openai%401.2.4)

[Compare Source](https://redirect.github.com/vercel/ai/compare/@ai-sdk/google@1.2.3...@ai-sdk/google@1.2.4)

##### Patch Changes

-   [`523f128`](https://redirect.github.com/vercel/ai/commit/523f128): feat (provider/openai): add strictSchemas option to responses model

</details>

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

### [`v3.779.0`](https://redirect.github.com/aws/aws-sdk-js-v3/blob/HEAD/clients/client-s3/CHANGELOG.md#37790-2025-03-31)

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

##### Features

-   **client-s3:** Amazon S3 adds support for S3 Access Points for directory buckets in AWS Dedicated Local Zones ([7f2cfea](7f2cfea14e))

</details>

<details>
<summary>ionic-team/capacitor (@&#8203;capacitor/android)</summary>

### [`v7.2.0`](https://redirect.github.com/ionic-team/capacitor/blob/HEAD/CHANGELOG.md#720-2025-03-31)

[Compare Source](https://redirect.github.com/ionic-team/capacitor/compare/7.1.0...7.2.0)

##### Bug Fixes

-   **android:** rename bridge layout to avoid collision ([#&#8203;7919](https://redirect.github.com/ionic-team/capacitor/issues/7919)) ([a629f16](a629f167b3))
-   **cli:** Don't migrate Podfile on SPM projects ([#&#8203;7939](https://redirect.github.com/ionic-team/capacitor/issues/7939)) ([ab4e700](ab4e700035))
-   **ios:** respect shouldEncodeUrlParams value ([#&#8203;7931](https://redirect.github.com/ionic-team/capacitor/issues/7931)) ([4fb12a0](4fb12a03a9))

##### Features

-   **http:** Apply overrideUserAgent to requests ([#&#8203;7906](https://redirect.github.com/ionic-team/capacitor/issues/7906)) ([52482c9](52482c9d3c))
-   **ios:** Enable Fullscreen API on WebView ([#&#8203;7909](https://redirect.github.com/ionic-team/capacitor/issues/7909)) ([172638e](172638ec7b))

</details>

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

### [`v7.7.2`](https://redirect.github.com/Cap-go/capacitor-inappbrowser/blob/HEAD/CHANGELOG.md#772-2025-03-31)

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

### [`v7.7.1`](https://redirect.github.com/Cap-go/capacitor-inappbrowser/blob/HEAD/CHANGELOG.md#771-2025-03-30)

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

### [`v7.6.12`](https://redirect.github.com/Cap-go/capacitor-inappbrowser/blob/HEAD/CHANGELOG.md#7612-2025-03-30)

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

### [`v7.6.9`](https://redirect.github.com/Cap-go/capacitor-inappbrowser/blob/HEAD/CHANGELOG.md#769-2025-03-29)

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

</details>

<details>
<summary>LottieFiles/dotlottie-web (@&#8203;lottiefiles/dotlottie-wc)</summary>

### [`v0.5.1`](https://redirect.github.com/LottieFiles/dotlottie-web/blob/HEAD/packages/wc/CHANGELOG.md#051)

##### Patch Changes

-   Updated dependencies \[[`faaf25e`](https://redirect.github.com/LottieFiles/dotlottie-web/commit/faaf25e)]
-   Updated dependencies \[[`4ffcae2`](https://redirect.github.com/LottieFiles/dotlottie-web/commit/4ffcae2)]
-   Updated dependencies \[[`faaf25e`](https://redirect.github.com/LottieFiles/dotlottie-web/commit/faaf25e)]
    -   [@&#8203;lottiefiles/dotlottie-web](https://redirect.github.com/lottiefiles/dotlottie-web)[@&#8203;0](https://redirect.github.com/0).42.0

</details>

<details>
<summary>perfsee/perfsee (@&#8203;perfsee/webpack)</summary>

### [`v1.14.2`](https://redirect.github.com/perfsee/perfsee/compare/v1.13.0...v1.14.2)

[Compare Source](https://redirect.github.com/perfsee/perfsee/compare/v1.13.0...v1.14.2)

</details>

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

### [`v9.10.1`](https://redirect.github.com/getsentry/sentry-javascript/blob/HEAD/CHANGELOG.md#9101)

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

-   fix: Correct [@&#8203;sentry-internal/feedback](https://redirect.github.com/sentry-internal/feedback) docs to match the code ([#&#8203;15874](https://redirect.github.com/getsentry/sentry-javascript/pull/15874))
-   deps: Bump bundler plugins to version `3.2.4` ([#&#8203;15909](https://redirect.github.com/getsentry/sentry-javascript/pull/15909))

</details>

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

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

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

#####    🐞 Bug Fixes

-   **reporter**:
    -   Report tests in correct order  -  by [@&#8203;sheremet-va](https://redirect.github.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/7752](https://redirect.github.com/vitest-dev/vitest/issues/7752) [<samp>(b166e)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/b166efa2)
    -   Print test only once in the verbose mode  -  by [@&#8203;sheremet-va](https://redirect.github.com/sheremet-va) in [https://github.com/vitest-dev/vitest/issues/7738](https://redirect.github.com/vitest-dev/vitest/issues/7738) [<samp>(69ca4)</samp>](https://redirect.github.com/vitest-dev/vitest/commit/69ca425c)

#####     [View changes on GitHub](https://redirect.github.com/vitest-dev/vitest/compare/v3.1.0...v3.1.1)

### [`v3.1.0`](https://redirect.github.com/vitest-dev/vitest/compare/v3.0.9...v3.1.0)

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

</details>

<details>
<summary>taskforcesh/bullmq (bullmq)</summary>

### [`v5.45.2`](https://redirect.github.com/taskforcesh/bullmq/releases/tag/v5.45.2)

[Compare Source](https://redirect.github.com/taskforcesh/bullmq/compare/v5.45.1...v5.45.2)

##### Bug Fixes

-   **flow:** validate pending dependencies before removing lock ([#&#8203;3182](https://redirect.github.com/taskforcesh/bullmq/issues/3182)) ([8d59e3b](8d59e3b808))

### [`v5.45.1`](https://redirect.github.com/taskforcesh/bullmq/releases/tag/v5.45.1)

[Compare Source](https://redirect.github.com/taskforcesh/bullmq/compare/v5.45.0...v5.45.1)

##### Bug Fixes

-   **job-scheduler:** emit duplicated event when next delayed job exists ([#&#8203;3172](https://redirect.github.com/taskforcesh/bullmq/issues/3172)) ([d57698f](d57698f9af))

</details>

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

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

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

-   Support flags in regular expressions for the API ([#&#8203;4121](https://redirect.github.com/evanw/esbuild/issues/4121))

    The JavaScript plugin API for esbuild takes JavaScript regular expression objects for the `filter` option. Internally these are translated into Go regular expressions. However, this translation previously ignored the `flags` property of the regular expression. With this release, esbuild will now translate JavaScript regular expression flags into Go regular expression flags. Specifically the JavaScript regular expression `/\.[jt]sx?$/i` is turned into the Go regular expression `` `(?i)\.[jt]sx?$` `` internally inside of esbuild's API. This should make it possible to use JavaScript regular expressions with the `i` flag. Note that JavaScript and Go don't support all of the same regular expression features, so this mapping is only approximate.

-   Fix node-specific annotations for string literal export names ([#&#8203;4100](https://redirect.github.com/evanw/esbuild/issues/4100))

    When node instantiates a CommonJS module, it scans the AST to look for names to expose via ESM named exports. This is a heuristic that looks for certain patterns such as `exports.NAME = ...` or `module.exports = { ... }`. This behavior is used by esbuild to "annotate" CommonJS code that was converted from ESM with the original ESM export names. For example, when converting the file `export let foo, bar` from ESM to CommonJS, esbuild appends this to the end of the file:

    ```js
    // Annotate the CommonJS export names for ESM import in node:
    0 && (module.exports = {
      bar,
      foo
    });
    ```

    However, this feature previously didn't work correctly for export names that are not valid identifiers, which can be constructed using string literal export names. The generated code contained a syntax error. That problem is fixed in this release:

    ```js
    // Original code
    let foo
    export { foo as "foo!" }

    // Old output (with --format=cjs --platform=node)
    ...
    0 && (module.exports = {
      "foo!"
    });

    // New output (with --format=cjs --platform=node)
    ...
    0 && (module.exports = {
      "foo!": null
    });
    ```

-   Basic support for index source maps ([#&#8203;3439](https://redirect.github.com/evanw/esbuild/issues/3439), [#&#8203;4109](https://redirect.github.com/evanw/esbuild/pull/4109))

    The source map specification has an optional mode called [index source maps](https://tc39.es/ecma426/#sec-index-source-map) that makes it easier for tools to create an aggregate JavaScript file by concatenating many smaller JavaScript files with source maps, and then generate an aggregate source map by simply providing the original source maps along with some offset information. My understanding is that this is rarely used in practice. I'm only aware of two uses of it in the wild: [ClojureScript](https://clojurescript.org/) and [Turbopack](https://turbo.build/pack/).

    This release provides basic support for indexed source maps. However, the implementation has not been tested on a real app (just on very simple test input). If you are using index source maps in a real app, please try this out and report back if anything isn't working for you.

    Note that this is also not a complete implementation. For example, index source maps technically allows nesting source maps to an arbitrary depth, while esbuild's implementation in this release only supports a single level of nesting. It's unclear whether supporting more than one level of nesting is important or not given the lack of available test cases.

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

</details>

<details>
<summary>expressjs/express (express)</summary>

### [`v5.1.0`](https://redirect.github.com/expressjs/express/blob/HEAD/History.md#510--2025-03-31)

[Compare Source](https://redirect.github.com/expressjs/express/compare/5.0.1...v5.1.0)

\========================

-   Add support for `Uint8Array` in `res.send()`
-   Add support for ETag option in `res.sendFile()`
-   Add support for multiple links with the same rel in `res.links()`
-   Add funding field to package.json
-   perf: use loop for acceptParams
-   refactor: prefix built-in node module imports
-   deps: remove `setprototypeof`
-   deps: remove `safe-buffer`
-   deps: remove `utils-merge`
-   deps: remove `methods`
-   deps: remove `depd`
-   deps: `debug@^4.4.0`
-   deps: `body-parser@^2.2.0`
-   deps: `router@^2.2.0`
-   deps: `content-type@^1.0.5`
-   deps: `finalhandler@^2.1.0`
-   deps: `qs@^6.14.0`
-   deps: `server-static@2.2.0`
-   deps: `type-is@2.0.1`

</details>

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

### [`v0.486.0`](https://redirect.github.com/lucide-icons/lucide/releases/tag/0.486.0): Version 0.486.0

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

##### What's Changed

-   feat([@&#8203;lucide/astro](https://redirect.github.com/lucide/astro)): add lucide package for Astro by [@&#8203;MoustaphaDev](https://redirect.github.com/MoustaphaDev) in [https://github.com/lucide-icons/lucide/pull/2665](https://redirect.github.com/lucide-icons/lucide/pull/2665)

##### New Contributors

-   [@&#8203;MoustaphaDev](https://redirect.github.com/MoustaphaDev) made their first contribution in [https://github.com/lucide-icons/lucide/pull/2665](https://redirect.github.com/lucide-icons/lucide/pull/2665)

**Full Changelog**: https://github.com/lucide-icons/lucide/compare/0.485.0...0.486.0

### [`v0.485.0`](https://redirect.github.com/lucide-icons/lucide/compare/0.484.0...0.485.0)

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

</details>

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

### [`v1.21.3`](https://redirect.github.com/matklad/once_cell/blob/HEAD/CHANGELOG.md#1213)

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

-   Outline more initialization in `race`: [#&#8203;284](https://redirect.github.com/matklad/once_cell/pull/284),
    [#&#8203;285](https://redirect.github.com/matklad/once_cell/pull/285).

</details>

<details>
<summary>openai/openai-node (openai)</summary>

### [`v4.91.0`](https://redirect.github.com/openai/openai-node/blob/HEAD/CHANGELOG.md#4910-2025-03-31)

[Compare Source](https://redirect.github.com/openai/openai-node/compare/v4.90.0...v4.91.0)

Full Changelog: [v4.90.0...v4.91.0](https://redirect.github.com/openai/openai-node/compare/v4.90.0...v4.91.0)

##### Features

-   **api:** add `get /responses/{response_id}/input_items` endpoint ([ef0e0ac](ef0e0acd46))

##### Performance Improvements

-   **embedding:** default embedding creation to base64 ([#&#8203;1312](https://redirect.github.com/openai/openai-node/issues/1312)) ([e54530e](e54530e4f6)), closes [#&#8203;1310](https://redirect.github.com/openai/openai-node/issues/1310)

</details>

<details>
<summary>facebook/react (react)</summary>

### [`v19.1.0`](https://redirect.github.com/facebook/react/compare/v19.0.0...1825990c5608f0ab0c1475b4292218a508a171c9)

[Compare Source](https://redirect.github.com/facebook/react/compare/v19.0.0...v19.1.0)

</details>

<details>
<summary>gpbl/react-day-picker (react-day-picker)</summary>

### [`v9.6.4`](https://redirect.github.com/gpbl/react-day-picker/releases/tag/v9.6.4)

[Compare Source](https://redirect.github.com/gpbl/react-day-picker/compare/v9.6.3...v9.6.4)

#### What's Changed

-   fix(animation): fix issues when navigating months during animation by [@&#8203;rodgobbi](https://redirect.github.com/rodgobbi) in [https://github.com/gpbl/react-day-picker/pull/2710](https://redirect.github.com/gpbl/react-day-picker/pull/2710)

**Full Changelog**: https://github.com/gpbl/react-day-picker/compare/v9.6.3...v9.6.4

</details>

<details>
<summary>facebook/react (react-dom)</summary>

### [`v19.1.0`](https://redirect.github.com/facebook/react/compare/v19.0.0...1825990c5608f0ab0c1475b4292218a508a171c9)

[Compare Source](https://redirect.github.com/facebook/react/compare/v19.0.0...v19.1.0)

</details>

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

### [`v7.55.0`](https://redirect.github.com/react-hook-form/react-hook-form/compare/v7.54.2...a66b52a4f0d5c0de3c09307c074371e3e881ce73)

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

</details>

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

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

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

##### Patch Changes

-   [`bb0402e`](https://redirect.github.com/petyosi/react-virtuoso/commit/bb0402e): Support window scrolling to iframe react portals

</details>

<details>
<summary>HEnquist/rubato (rubato)</summary>

### [`v0.16.2`](https://redirect.github.com/HEnquist/rubato/releases/tag/v0.16.2)

[Compare Source](https://redirect.github.com/HEnquist/rubato/compare/v0.16.1...v0.16.2)

#### What's Changed

-   Fix tests on 32-bit archs, add test by [@&#8203;HEnquist](https://redirect.github.com/HEnquist) in [https://github.com/HEnquist/rubato/pull/102](https://redirect.github.com/HEnquist/rubato/pull/102)

**Full Changelog**: https://github.com/HEnquist/rubato/compare/v0.16.1...v0.16.2

</details>

<details>
<summary>dcastil/tailwind-merge (tailwind-merge)</summary>

### [`v3.1.0`](https://redirect.github.com/dcastil/tailwind-merge/releases/tag/v3.1.0)

[Compare Source](https://redirect.github.com/dcastil/tailwind-merge/compare/v3.0.2...v3.1.0)

##### New Features

-   Add support for Tailwind CSS v4.0.10 by [@&#8203;dcastil](https://redirect.github.com/dcastil) in [https://github.com/dcastil/tailwind-merge/pull/546](https://redirect.github.com/dcastil/tailwind-merge/pull/546)

##### Bug Fixes

-   Fix length variable in `via-(length:*)` class being merged with `via-<color>` classes accidentally by [@&#8203;dcastil](https://redirect.github.com/dcastil) in [https://github.com/dcastil/tailwind-merge/pull/559](https://redirect.github.com/dcastil/tailwind-merge/pull/559)

##### Documentation

-   Fix typo in comment in types.ts by [@&#8203;roottool](https://redirect.github.com/roottool) in [https://github.com/dcastil/tailwind-merge/pull/549](https://redirect.github.com/dcastil/tailwind-merge/pull/549)
-   Update shadow scale recipe to tailwind merge v3 API by [@&#8203;dcastil](https://redirect.github.com/dcastil) in [https://github.com/dcastil/tailwind-merge/pull/545](https://redirect.github.com/dcastil/tailwind-merge/pull/545)

##### Other

-   Fix metrics report action erroring on PRs from forks by [@&#8203;dcastil](https://redirect.github.com/dcastil) in [https://github.com/dcastil/tailwind-merge/pull/551](https://redirect.github.com/dcastil/tailwind-merge/pull/551)

**Full Changelog**: https://github.com/dcastil/tailwind-merge/compare/v3.0.2...v3.1.0

Thanks to [@&#8203;brandonmcconnell](https://redirect.github.com/brandonmcconnell), [@&#8203;manavm1990](https://redirect.github.com/manavm1990), [@&#8203;langy](https://redirect.github.com/langy), [@&#8203;jamesreaco](https://redirect.github.com/jamesreaco), [@&#8203;roboflow](https://redirect.github.com/roboflow), [@&#8203;syntaxfm](https://redirect.github.com/syntaxfm), [@&#8203;getsentry](https://redirect.github.com/getsentry), [@&#8203;codecov](https://redirect.github.com/codecov), [@&#8203;sourcegraph](https://redirect.github.com/sourcegraph) and a private sponsor for sponsoring tailwind-merge! ❤️

</details>

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

### [`v8.29.0`](https://redirect.github.com/typescript-eslint/typescript-eslint/blob/HEAD/packages/typescript-eslint/CHANGELOG.md#8290-2025-03-31)

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

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

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

</details>

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

### [`v4.8.1`](260cff1745...76596c5d3f)

[Compare Source](260cff1745...76596c5d3f)

</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:eyJjcmVhdGVkSW5WZXIiOiIzOS4yMDcuMSIsInVwZGF0ZWRJblZlciI6IjM5LjIwNy4xIiwidGFyZ2V0QnJhbmNoIjoiY2FuYXJ5IiwibGFiZWxzIjpbImRlcGVuZGVuY2llcyJdfQ==-->
2025-04-01 00:56:18 +00:00
Brooooooklyn
d31e0c0e71 ci: run some optimize on CI e2e (#11330) 2025-03-31 15:23:21 +00:00
EYHN
8957d0645f feat(nbstore): add indexer storage (#10953) 2025-03-31 12:59:51 +00:00
Brooooooklyn
47a8d15878 ci: start devServer before test running to avoid tests timeout (#11297) 2025-03-31 10:39:34 +00:00
donteatfriedrice
b2aa3084ec feat(editor): support to drag embed iframe from note to surface (#11267)
Close [BS-2807](https://linear.app/affine-design/issue/BS-2807/note-中与-surface-中-embed-iframe-block-互相拖动时的优化)
2025-03-31 06:23:11 +00:00
renovate
00c5f48a7d chore: bump up mime-types version to v3 (#11274)
This PR contains the following updates:

| Package | Change | Age | Adoption | Passing | Confidence |
|---|---|---|---|---|---|
| [mime-types](https://redirect.github.com/jshttp/mime-types) | [`^2.1.35` -> `^3.0.0`](https://renovatebot.com/diffs/npm/mime-types/2.1.35/3.0.1) | [![age](https://developer.mend.io/api/mc/badges/age/npm/mime-types/3.0.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/mime-types/3.0.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/mime-types/2.1.35/3.0.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/mime-types/2.1.35/3.0.1?slim=true)](https://docs.renovatebot.com/merge-confidence/) |

---

### Release Notes

<details>
<summary>jshttp/mime-types (mime-types)</summary>

### [`v3.0.1`](https://redirect.github.com/jshttp/mime-types/blob/HEAD/HISTORY.md#301--2025-03-26)

[Compare Source](https://redirect.github.com/jshttp/mime-types/compare/v3.0.0...v3.0.1)

\===================

-   deps: mime-db@1.54.0

### [`v3.0.0`](https://redirect.github.com/jshttp/mime-types/blob/HEAD/HISTORY.md#300--2024-08-31)

[Compare Source](https://redirect.github.com/jshttp/mime-types/compare/2.1.35...v3.0.0)

\===================

-   Drop support for node <18
-   deps: mime-db@1.53.0
-   resolve extension conflicts with mime-score ([#&#8203;119](https://redirect.github.com/jshttp/mime-types/issues/119))
    -   asc -> application/pgp-signature is now application/pgp-keys
    -   mpp -> application/vnd.ms-project is now application/dash-patch+xml
    -   ac -> application/vnd.nokia.n-gage.ac+xml is now application/pkix-attr-cert
    -   bdoc -> application/x-bdoc is now application/bdoc
    -   wmz -> application/x-msmetafile is now application/x-ms-wmz
    -   xsl -> application/xslt+xml is now application/xml
    -   wav -> audio/wave is now audio/wav
    -   rtf -> text/rtf is now application/rtf
    -   xml -> text/xml is now application/xml
    -   mp4 -> video/mp4 is now application/mp4
    -   mpg4 -> video/mp4 is now application/mp4

</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:eyJjcmVhdGVkSW5WZXIiOiIzOS4yMDcuMSIsInVwZGF0ZWRJblZlciI6IjM5LjIwNy4xIiwidGFyZ2V0QnJhbmNoIjoiY2FuYXJ5IiwibGFiZWxzIjpbImRlcGVuZGVuY2llcyJdfQ==-->
2025-03-31 05:49:12 +00:00
doodlewind
dffb89c388 feat(editor): add list block turbo renderer scaffold (#11266)
This PR allows placeholder in turbo renderer to cover list block as a basic scaffold.

![image.png](https://graphite-user-uploaded-assets-prod.s3.amazonaws.com/lEGcysB4lFTEbCwZ8jMv/eda28656-e56e-4845-9fe6-885e70841697.png)
2025-03-29 04:49:25 +00:00
Saul-Mirone
205cd7a86d refactor(editor): rename block-std to std (#11250)
Closes: BS-2946
2025-03-28 07:20:34 +00:00
L-Sun
af91a0217f refactor(editor): inner toolbar surface-ref block with extension (#11246)
This PR refactor `surface-ref` toolbar with `ToolbarExtension`
2025-03-28 05:48:24 +00:00
forehalo
0ea38680fa refactor(server): config system (#11081) 2025-03-27 12:32:28 +00:00
forehalo
766383cb3a chore: disable http proxy middleware log in ci (#11238) 2025-03-27 09:11:54 +00:00
renovate
261661c419 chore: bump up @googleapis/androidpublisher version to v26 (#11214)
This PR contains the following updates:

| Package | Change | Age | Adoption | Passing | Confidence |
|---|---|---|---|---|---|
| [@googleapis/androidpublisher](https://redirect.github.com/googleapis/google-api-nodejs-client) | [`^24.0.0` -> `^26.0.0`](https://renovatebot.com/diffs/npm/@googleapis%2fandroidpublisher/24.0.0/26.0.0) | [![age](https://developer.mend.io/api/mc/badges/age/npm/@googleapis%2fandroidpublisher/26.0.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![adoption](https://developer.mend.io/api/mc/badges/adoption/npm/@googleapis%2fandroidpublisher/26.0.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![passing](https://developer.mend.io/api/mc/badges/compatibility/npm/@googleapis%2fandroidpublisher/24.0.0/26.0.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) | [![confidence](https://developer.mend.io/api/mc/badges/confidence/npm/@googleapis%2fandroidpublisher/24.0.0/26.0.0?slim=true)](https://docs.renovatebot.com/merge-confidence/) |

---

### Release Notes

<details>
<summary>googleapis/google-api-nodejs-client (@&#8203;googleapis/androidpublisher)</summary>

### [`v26.0.0`](https://redirect.github.com/googleapis/google-api-nodejs-client/blob/HEAD/CHANGELOG.md#12600-2023-08-17)

[Compare Source](https://redirect.github.com/googleapis/google-api-nodejs-client/compare/v25.0.0...v26.0.0)

##### ⚠ BREAKING CHANGES

-   **vmmigration:** This release has breaking changes.
-   **contentwarehouse:** This release has breaking changes.
-   **assuredworkloads:** This release has breaking changes.
-   **aiplatform:** This release has breaking changes.

##### Features

-   **admin:** update the API ([ebfb777](ebfb777684))
-   **aiplatform:** update the API ([146712c](146712c48e))
-   **androidpublisher:** update the API ([2d7c2b4](2d7c2b4247))
-   **assuredworkloads:** update the API ([6547ea1](6547ea1ef1))
-   **contactcenterinsights:** update the API ([1f2e6eb](1f2e6eb4ab))
-   **containeranalysis:** update the API ([7acf09f](7acf09fc53))
-   **contentwarehouse:** update the API ([c44aeaf](c44aeafdd3))
-   **discoveryengine:** update the API ([bca2665](bca26655ef))
-   regenerate index files ([751227d](751227d392))
-   **serviceconsumermanagement:** update the API ([336b645](336b645dbb))
-   **serviceusage:** update the API ([6f08362](6f0836293a))
-   **testing:** update the API ([9c06a45](9c06a45890))
-   **vmmigration:** update the API ([75cbb15](75cbb1513e))

##### Bug Fixes

-   **contactcenteraiplatform:** update the API ([e4bfff0](e4bfff0b61))
-   **content:** update the API ([6e9f31f](6e9f31fdff))
-   **dns:** update the API ([2e49df0](2e49df0707))
-   **eventarc:** update the API ([b7a0e5a](b7a0e5a26e))
-   **gameservices:** update the API ([8733a48](8733a48c00))
-   **metastore:** update the API ([26f97a2](26f97a259e))
-   **privateca:** update the API ([b50c176](b50c176656))
-   **recommendationengine:** update the API ([fd203b4](fd203b411f))
-   **vision:** update the API ([2593341](2593341f5b))
-   **vpcaccess:** update the API ([b740cac](b740cacf6f))

### [`v25.0.0`](https://redirect.github.com/googleapis/google-api-nodejs-client/blob/HEAD/CHANGELOG.md#12500-2023-08-15)

##### ⚠ BREAKING CHANGES

-   **gkehub:** This release has breaking changes.
-   **contentwarehouse:** This release has breaking changes.
-   **bigquery:** This release has breaking changes.
-   **beyondcorp:** This release has breaking changes.
-   **assuredworkloads:** This release has breaking changes.

##### Features

-   **analyticsadmin:** update the API ([3bed127](3bed127d4e))
-   **appengine:** update the API ([a8d4c48](a8d4c48bd1))
-   **artifactregistry:** update the API ([2d1257d](2d1257d9ac))
-   **assuredworkloads:** update the API ([f58a85a](f58a85a1ac))
-   **beyondcorp:** update the API ([270693a](270693ad48))
-   **bigquery:** update the API ([b0bc1f1](b0bc1f15a8))
-   **binaryauthorization:** update the API ([2175fab](2175fab3e4))
-   **cloudbuild:** update the API ([2413746](2413746386))
-   **composer:** update the API ([d2322c2](d2322c2a50))
-   **container:** update the API ([3ab84ca](3ab84caea9))
-   **contentwarehouse:** update the API ([73f5d69](73f5d69b1d))
-   **dataform:** update the API ([1f0c739](1f0c739684))
-   **dataproc:** update the API ([1fc81ab](1fc81abff8))
-   **dialogflow:** update the API ([6aba841](6aba841302))
-   **discoveryengine:** update the API ([57a6bdd](57a6bdd926))
-   **documentai:** update the API ([ae0e266](ae0e2664ae))
-   **firebaseappcheck:** update the API ([13f8c86](13f8c865f8))
-   **gkehub:** update the API ([7c7c561](7c7c5611a6))
-   **healthcare:** update the API ([9dc7235](9dc723542d))
-   **identitytoolkit:** update the API ([f15458e](f15458e813))
-   **migrationcenter:** update the API ([43d3a7e](43d3a7e351))
-   **monitoring:** update the API ([d6ab1de](d6ab1de97a))
-   **networkmanagement:** update the API ([b00b4c3](b00b4c39b0))
-   **paymentsresellersubscription:** update the API ([fa9bc92](fa9bc92c28))
-   **redis:** update the API ([633a71b](633a71b75e))
-   regenerate index files ([1b979cb](1b979cb4bd))
-   **run:** update the API ([2dc654e](2dc654e314))
-   **vmmigration:** update the API ([433922a](433922ae81))

##### Bug Fixes

-   **accesscontextmanager:** update the API ([37483a5](37483a53c3))
-   **advisorynotifications:** update the API ([5d47fbd](5d47fbd05f))
-   **analyticsdata:** update the API ([fcd31de](fcd31debbc))
-   **analyticshub:** update the API ([028a8f2](028a8f2845))
-   **androidmanagement:** update the API ([b6e3344](b6e33442cb))
-   **apigateway:** update the API ([28a0c2b](28a0c2b909))
-   **apigeeregistry:** update the API ([f4b44ce](f4b44ce7ff))
-   **batch:** update the API ([c0f6c8e](c0f6c8ebae))
-   **bigqueryconnection:** update the API ([238464d](238464d37e))
-   **chat:** update the API ([9bebe9d](9bebe9d01a))
-   **cloudbilling:** update the API ([0a0d5e9](0a0d5e9f35))
-   **clouddeploy:** update the API ([8efff9d](8efff9d26e))
-   **cloudidentity:** update the API ([01762af](01762affc9))
-   **cloudkms:** update the API ([3499c39](3499c393ef))
-   **cloudsearch:** update the API ([25771c7](25771c752c))
-   **cloudshell:** update the API ([dd761cd](dd761cdec6))
-   **connectors:** update the API ([2a03080](2a03080ff2))
-   **containeranalysis:** update the API ([4de5705](4de5705559))
-   **datacatalog:** update the API ([c823e38](c823e38315))
-   **datamigration:** update the API ([0b476bb](0b476bb46f))
-   **dataplex:** update the API ([07737a9](07737a9c0b))
-   **datastore:** update the API ([f5f7e0e](f5f7e0e81b))
-   **datastream:** update the API ([d1efe13](d1efe137ee))
-   **deps:** update dependency [@&#8203;google-cloud/local-auth](https://redirect.github.com/google-cloud/local-auth) to v3 ([b9e0f13](b9e0f133df))
-   **dlp:** update the API ([66720df](66720df286))
-   **eventarc:** update the API ([2a475fa](2a475faaef))
-   **file:** update the API ([16d1c38](16d1c381e4))
-   **firestore:** update the API ([25dd82f](25dd82f85c))
-   **iam:** update the API ([df42895](df428953ea))
-   **language:** update the API ([86d4072](86d4072801))
-   **logging:** update the API ([5ce9916](5ce99164a4))
-   **memcache:** update the API ([1c738c4](1c738c4e5f))
-   **metastore:** update the API ([3045ac9](3045ac9077))
-   **networkconnectivity:** update the API ([db2c560](db2c5609b8))
-   **networkservices:** update the API ([c2ca6b5](c2ca6b5b29))
-   **ondemandscanning:** update the API ([b5da2fb](b5da2fbde7))
-   **osconfig:** update the API ([926f83d](926f83d571))
-   **policysimulator:** update the API ([337d6d9](337d6d9bc2))
-   **prod_tt_sasportal:** update the API ([cad4560](cad45600a1))
-   **pubsublite:** update the API ([383264c](383264cadb))
-   **pubsub:** update the API ([6c41abf](6c41abf474))
-   **recommender:** update the API ([b7e0460](b7e04605e7))
-   **sasportal:** update the API ([cd8a38c](cd8a38c750))
-   **script:** update the API ([09d1558](09d1558a81))
-   **secretmanager:** update the API ([fe01e40](fe01e40054))
-   **securitycenter:** update the API ([0d66358](0d66358f76))
-   **servicecontrol:** update the API ([ceadea7](ceadea74b3))
-   **servicedirectory:** update the API ([c52f8c3](c52f8c3386))
-   **servicemanagement:** update the API ([c5c135d](c5c135da55))
-   **sheets:** update the API ([19e06a7](19e06a7c92))
-   **speech:** update the API ([b75b27e](b75b27e0ad))
-   **storagetransfer:** update the API ([29b6593](29b6593955))
-   **tpu:** update the API ([e396d7e](e396d7e10d))
-   **translate:** update the API ([5789f48](5789f485ea))
-   **vault:** update the API ([6f14118](6f1411871c))
-   **vision:** update the API ([8fd1995](8fd19953a1))
-   **vpcaccess:** update the API ([6641889](6641889146))
-   **workflows:** update the API ([5e9374a](5e9374afdc))
-   **workstations:** update the API ([fefd54a](fefd54ada1))

</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:eyJjcmVhdGVkSW5WZXIiOiIzOS4yMDcuMSIsInVwZGF0ZWRJblZlciI6IjM5LjIwNy4xIiwidGFyZ2V0QnJhbmNoIjoiY2FuYXJ5IiwibGFiZWxzIjpbImRlcGVuZGVuY2llcyJdfQ==-->
2025-03-26 13:48:55 +00:00