diff --git a/.changeset/config.json b/.changeset/config.json index ff7d47e9f9c..71a9d434c34 100644 --- a/.changeset/config.json +++ b/.changeset/config.json @@ -15,6 +15,7 @@ "@module-federation/dts-plugin", "@module-federation/third-party-dts-extractor", "@module-federation/devtools", + "@module-federation/data-fetch", "@module-federation/bridge-react", "@module-federation/bridge-vue3", "@module-federation/bridge-shared", diff --git a/.changeset/extract-data-fetch.md b/.changeset/extract-data-fetch.md new file mode 100644 index 00000000000..b9cfc2a31d2 --- /dev/null +++ b/.changeset/extract-data-fetch.md @@ -0,0 +1,7 @@ +--- +"@module-federation/data-fetch": patch +"@module-federation/bridge-react": patch +"@module-federation/bridge-vue3": patch +--- + +Extract data-fetch into the framework-agnostic `@module-federation/data-fetch` package. `@module-federation/bridge-react` and `@module-federation/bridge-vue3` continue to re-export data-fetch APIs for backward compatibility. diff --git a/AGENTS.md b/AGENTS.md index ec49d591537..5bfe6447063 100644 --- a/AGENTS.md +++ b/AGENTS.md @@ -257,6 +257,9 @@ Guidance: - validation that was run - any failed or skipped checks, with cause - If a PR is docs-only, say that explicitly and keep the body brief. +- When changing user-facing Module Federation APIs or packages (especially publishable packages under `packages/`), update matching documentation in `apps/website-new/docs/` in the same PR, or explain in the PR why docs are deferred. +- When updating website docs, keep all published locales for that page (currently `en`, `zh`, and `pt-BR` under `apps/website-new/docs/`) consistent for the same conceptual change; do not leave one locale with untranslated English paste-ins. +- Website docs in `apps/website-new/docs/` are the public documentation source of truth and must stay current with published package surfaces. ## Webpack Internal Access diff --git a/apps/website-new/docs/en/guide/bridge/overview.mdx b/apps/website-new/docs/en/guide/bridge/overview.mdx index 613139d0c5b..2c938c78388 100644 --- a/apps/website-new/docs/en/guide/bridge/overview.mdx +++ b/apps/website-new/docs/en/guide/bridge/overview.mdx @@ -143,6 +143,8 @@ In addition to application-level modularity, Bridge also supports component-leve #### Core Features +Core data-fetch utilities (`cache`, `prefetch`, loader types, and related helpers) live in `@module-federation/data-fetch`. `@module-federation/bridge-react/data-fetch` re-exports them and adds React-specific lazy-loading APIs such as `lazyLoadComponentPlugin` and `createLazyComponent`. + - **Data Prefetching**: Support component-level data prefetching, ensuring data is ready when components load - **Error Boundaries**: Built-in error handling mechanisms, component loading failures don't affect the main application - **Loading States**: Rich loading state management with support for custom loading indicators diff --git a/apps/website-new/docs/en/guide/bridge/react/load-component.mdx b/apps/website-new/docs/en/guide/bridge/react/load-component.mdx index c2610253ec8..115b5bdf7cc 100644 --- a/apps/website-new/docs/en/guide/bridge/react/load-component.mdx +++ b/apps/website-new/docs/en/guide/bridge/react/load-component.mdx @@ -8,6 +8,12 @@ This chapter introduces how to use `createLazyComponent` to load remote React co - **Data prefetching**: use `prefetch` to start dependency requests before the component loads, avoiding request waterfalls where data is requested only after the component is ready - **SSR control**: precisely control whether remote components render on the server, helping avoid CSS flickering issues +:::info + +Component-level data-fetch utilities (`cache`, `prefetch`, `DataFetchParams`, and related types) are provided by `@module-federation/data-fetch`. `@module-federation/bridge-react/data-fetch` re-exports them for backward compatibility and adds React-specific APIs such as `lazyLoadComponentPlugin` and `createLazyComponent`. + +::: + ## Installation import { PackageManagerTabs } from '@theme'; diff --git a/apps/website-new/docs/en/guide/data/data-fetch-cache.mdx b/apps/website-new/docs/en/guide/data/data-fetch-cache.mdx index ec9030b9613..38186ffe546 100644 --- a/apps/website-new/docs/en/guide/data/data-fetch-cache.mdx +++ b/apps/website-new/docs/en/guide/data/data-fetch-cache.mdx @@ -2,10 +2,19 @@ The `cache` function allows you to cache the results of data fetching or computations. It provides fine-grained control over data and is suitable for scenarios such as Client-Side Rendering (CSR) and Server-Side Rendering (SSR). +Examples import from `@module-federation/data-fetch`. Bridge packages (`@module-federation/bridge-react/data-fetch`, `@module-federation/bridge-vue3`) still re-export `cache` and related helpers for backward compatibility. + +```bash +npm install @module-federation/data-fetch +# or: pnpm add @module-federation/data-fetch +``` + +If you only import from bridge packages, the re-exports still work without a direct dependency on `@module-federation/data-fetch`. + ## Basic Usage ```ts -import { cache } from '@module-federation/bridge-react/data-fetch'; +import { cache } from '@module-federation/data-fetch'; export type Data = { data: string; @@ -59,7 +68,7 @@ This function is only supported for use within a DataLoader. After each computation, the framework records the time the data was written to the cache. When the function is called again, it checks if the cache has expired based on the `maxAge` parameter. If it has, the `fn` function is re-executed; otherwise, the cached data is returned. ```ts -import { cache, CacheTime } from '@module-federation/bridge-react/data-fetch'; +import { cache, CacheTime } from '@module-federation/data-fetch'; const getDashboardStats = cache( async () => { @@ -78,7 +87,7 @@ The `revalidate` parameter sets a time window for revalidating the cache after i In the following example, if `getDashboardStats` is called within the 2-minute non-expired window, it returns cached data. If the cache is expired (between 2 and 3 minutes), incoming requests will first receive the old data, and then a new request will be made in the background to update the cache. ```ts -import { cache, CacheTime } from '@module-federation/bridge-react/data-fetch'; +import { cache, CacheTime } from '@module-federation/data-fetch'; const getDashboardStats = cache( async () => { @@ -96,7 +105,7 @@ const getDashboardStats = cache( The `tag` parameter is used to identify a cache with a label, which can be a string or an array of strings. This tag can be used to invalidate the cache, and multiple cache functions can share the same tag. ```ts -import { cache, revalidateTag } from '@module-federation/bridge-react/data-fetch'; +import { cache, revalidateTag } from '@module-federation/data-fetch'; const getDashboardStats = cache( async () => { @@ -124,7 +133,7 @@ revalidateTag('dashboard-stats'); // This will invalidate the caches for both ge The `getKey` parameter allows you to customize how cache keys are generated. For example, you might only need to rely on a subset of the function's parameters to differentiate caches. It is a function that receives the same arguments as the original function and returns a string as the cache key: ```ts -import { cache, CacheTime } from '@module-federation/bridge-react/data-fetch'; +import { cache, CacheTime } from '@module-federation/data-fetch'; import { fetchUserData } from './api'; const getUser = cache( @@ -156,7 +165,7 @@ The `generateKey` function ensures that a consistent, unique key is generated ev ::: ```ts -import { cache, CacheTime, generateKey } from '@module-federation/bridge-react/data-fetch'; +import { cache, CacheTime, generateKey } from '@module-federation/data-fetch'; import { fetchUserData } from './api'; const getUser = cache( @@ -190,7 +199,7 @@ If you only want to derive the cache key from some arguments, use `getKey`. Use The example below demonstrates how `customKey` enables cache sharing across functions: ```ts -import { cache } from '@module-federation/bridge-react/data-fetch'; +import { cache } from '@module-federation/data-fetch'; import { fetchUserData } from './api'; // Different functions, but they can share a cache via customKey. @@ -246,7 +255,7 @@ const getUserD = cache( The `onCache` parameter allows you to track cache statistics, such as hit rates. It is a callback function that receives information about each cache operation, including its status, key, parameters, and result. You can return `false` from `onCache` to prevent a cache hit. ```ts -import { cache, CacheTime } from '@module-federation/bridge-react/data-fetch'; +import { cache, CacheTime } from '@module-federation/data-fetch'; // Track cache statistics. const stats = { @@ -314,7 +323,7 @@ Considering that the content cached by the `cache` function is not expected to b You can specify the cache storage limit using the `configureCache` function: ```ts -import { configureCache, CacheSize } from '@module-federation/bridge-react/data-fetch'; +import { configureCache, CacheSize } from '@module-federation/data-fetch'; configureCache({ maxSize: CacheSize.MB * 10, // 10MB diff --git a/apps/website-new/docs/en/guide/data/data-fetch.mdx b/apps/website-new/docs/en/guide/data/data-fetch.mdx index ae71c139795..01c8ac15890 100644 --- a/apps/website-new/docs/en/guide/data/data-fetch.mdx +++ b/apps/website-new/docs/en/guide/data/data-fetch.mdx @@ -20,6 +20,21 @@ The capability described in this document targets the former — "component-leve ## How to Use +:::info Package layout + +Core data-fetch APIs (`cache`, `prefetch`, types such as `DataFetchParams`, and related utilities) live in the framework-agnostic `@module-federation/data-fetch` package. `@module-federation/bridge-react/data-fetch` and `@module-federation/bridge-vue3` re-export these APIs for convenience. React's `createLazyComponent` remains the React UI adapter for loading component remotes (see [Lazy Load and Prefetch Components](/guide/bridge/react/load-component.html)). + +Install `@module-federation/data-fetch` when importing from it directly: + +```bash +npm install @module-federation/data-fetch +# or: pnpm add @module-federation/data-fetch +``` + +If you only import from bridge packages (`@module-federation/bridge-react/data-fetch`, `@module-federation/bridge-vue3`), the re-exports still work without a direct dependency on `@module-federation/data-fetch`. + +::: + Data fetching supports both SSR and CSR scenarios. The sections below cover producer and consumer separately: ### Producer @@ -49,7 +64,7 @@ Example file layout: The convention file must export a function named `fetchData`, which runs before the remote component renders: ```ts title="List.data.ts" -import type { DataFetchParams } from '@module-federation/bridge-react/data-fetch'; +import type { DataFetchParams } from '@module-federation/data-fetch'; export type Data = { data: string; }; diff --git a/apps/website-new/docs/pt-BR/guide/bridge/overview.mdx b/apps/website-new/docs/pt-BR/guide/bridge/overview.mdx index 896abd5c07d..6651f182943 100644 --- a/apps/website-new/docs/pt-BR/guide/bridge/overview.mdx +++ b/apps/website-new/docs/pt-BR/guide/bridge/overview.mdx @@ -143,6 +143,8 @@ In addition para aplicação-level modularity, Bridge também suporta componente #### Core Features +Os utilitários principais de data-fetch (`cache`, `prefetch`, tipos de loader e utilitários relacionados) ficam em `@module-federation/data-fetch`. `@module-federation/bridge-react/data-fetch` os reexporta e adiciona APIs de carregamento lazy específicas do React, como `lazyLoadComponentPlugin` e `createLazyComponent`. + - **Pré-busca de dadosing**: Suporte componente-level dados prefetching, ensuring dados é ready quando componentes carregue - **Erro Boundaries**: Built-em tratamento de erros mechanisms, componente carregamento falhas don't affect o principal aplicação - **Carregamento States**: Rich estado de carregamento management com suporte for custom carregamento indicators diff --git a/apps/website-new/docs/pt-BR/guide/bridge/react/load-component.mdx b/apps/website-new/docs/pt-BR/guide/bridge/react/load-component.mdx index 6bbcc925adf..c331fb31ebf 100644 --- a/apps/website-new/docs/pt-BR/guide/bridge/react/load-component.mdx +++ b/apps/website-new/docs/pt-BR/guide/bridge/react/load-component.mdx @@ -1,4 +1,4 @@ -# Lazy Carregue e Pré-busca Componentes +# Carregamento lazy e prefetch de componentes Este chapter introduces como para usar `createLazyComponent` para carregar remote React componentes on demand em uma aplicação host. @@ -8,6 +8,12 @@ Este chapter introduces como para usar `createLazyComponent` para carregar remot - **Dados prefetching**: use `prefetch` para começa dependência requests antes o componente carrega, avoiding request waterfalls onde dados é requested apenas depois o componente é ready - **SSR control**: precisely control whether remote componentes render no servidor, helping avoid CSS flickering issues +:::info + +Os utilitários de data-fetch em nível de componente (`cache`, `prefetch`, `DataFetchParams` e tipos relacionados) são fornecidos por `@module-federation/data-fetch`. `@module-federation/bridge-react/data-fetch` os reexporta para compatibilidade com versões anteriores e adiciona APIs específicas do React, como `lazyLoadComponentPlugin` e `createLazyComponent`. + +::: + ## Instalação import { PackageManagerTabs } from '@theme'; diff --git a/apps/website-new/docs/pt-BR/guide/data/data-fetch-cache.mdx b/apps/website-new/docs/pt-BR/guide/data/data-fetch-cache.mdx index 4639aca57f9..0a1a88265c4 100644 --- a/apps/website-new/docs/pt-BR/guide/data/data-fetch-cache.mdx +++ b/apps/website-new/docs/pt-BR/guide/data/data-fetch-cache.mdx @@ -2,10 +2,19 @@ O `cache` função allows você para cache o results de dados fetching ou computations. It fornece fine-grained control over dados e é suitable for scenarios such as Cliente-Side Rendering (CSR) e Servidor-Side Rendering (SSR). +Os exemplos abaixo importam de `@module-federation/data-fetch`. Os pacotes bridge (`@module-federation/bridge-react/data-fetch`, `@module-federation/bridge-vue3`) ainda reexportam `cache` e utilitários relacionados para compatibilidade com versões anteriores. + +```bash +npm install @module-federation/data-fetch +# ou: pnpm add @module-federation/data-fetch +``` + +Se você importar apenas dos pacotes bridge, as reexportações continuam funcionando sem dependência direta em `@module-federation/data-fetch`. + ## Básico Uso ```ts -import { cache } from '@module-federation/bridge-react/data-fetch'; +import { cache } from '@module-federation/data-fetch'; export type Data = { data: string; @@ -59,7 +68,7 @@ Este função é apenas compatível for use within uma DataLoader. Depois each computation, o framework records o time o dados was written para o cache. Quando o função é chamada again, it checks se o cache has expired based no `maxAge` parameter. Se it has, o `fn` função é re-executed; caso contrário, o cached dados é retornado. ```ts -import { cache, CacheTime } from '@module-federation/bridge-react/data-fetch'; +import { cache, CacheTime } from '@module-federation/data-fetch'; const getDashboardStats = cache( async () => { @@ -78,7 +87,7 @@ O `revalidate` parameter sets uma time window for revalidating o cache depois it No seguintes exemplo, se `getDashboardStats` é chamada within o 2-minute non-expired window, ele retorna cached dados. Se o cache é expired (entre 2 e 3 minutes), incoming requests vai primeiro receive o old dados, e then uma nova request vai ser made no background para atualizar o cache. ```ts -import { cache, CacheTime } from '@module-federation/bridge-react/data-fetch'; +import { cache, CacheTime } from '@module-federation/data-fetch'; const getDashboardStats = cache( async () => { @@ -96,7 +105,7 @@ const getDashboardStats = cache( O `tag` parameter é usado para identify uma cache com uma label, que pode ser uma string ou um array de strings. Este tag pode ser usado para invalidate o cache, e multiple cache funções pode compartilhe o mesmo tag. ```ts -import { cache, revalidateTag } from '@module-federation/bridge-react/data-fetch'; +import { cache, revalidateTag } from '@module-federation/data-fetch'; const getDashboardStats = cache( async () => { @@ -124,7 +133,7 @@ revalidateTag('dashboard-stats'); // This will invalidate the caches for both ge O `getKey` parameter allows você para customize como cache keys são generated. Por exemplo, você might apenas precisa rely on uma subset do função's parameters para differentiate caches. It é uma função esse receives o mesmo arguments as o original função e retorna uma string as o cache key: ```ts -import { cache, CacheTime } from '@module-federation/bridge-react/data-fetch'; +import { cache, CacheTime } from '@module-federation/data-fetch'; import { fetchUserData } from './api'; const getUser = cache( @@ -156,7 +165,7 @@ O `generateKey` função ensures esse uma consistent, unique key é generated ev ::: ```ts -import { cache, CacheTime, generateKey } from '@module-federation/bridge-react/data-fetch'; +import { cache, CacheTime, generateKey } from '@module-federation/data-fetch'; import { fetchUserData } from './api'; const getUser = cache( @@ -190,7 +199,7 @@ Se você apenas want para derive o cache key de some arguments, use `getKey`. Us O exemplo below demonstrates como `customKey` enables cache compartilhamento across funções: ```ts -import { cache } from '@module-federation/bridge-react/data-fetch'; +import { cache } from '@module-federation/data-fetch'; import { fetchUserData } from './api'; // Different functions, but they can share a cache via customKey. @@ -246,7 +255,7 @@ const getUserD = cache( O `onCache` parameter allows você para track cache statistics, such as hit rates. It é uma callback função esse receives information about each cache operation, including its status, key, parameters, e result. Você pode retornar `false` de `onCache` para prevent uma cache hit. ```ts -import { cache, CacheTime } from '@module-federation/bridge-react/data-fetch'; +import { cache, CacheTime } from '@module-federation/data-fetch'; // Track cache statistics. const stats = { @@ -314,7 +323,7 @@ Considering esse o content cached pelo `cache` função é não expected para se Você pode specify o cache storage limit usando o `configureCache` função: ```ts -import { configureCache, CacheSize } from '@module-federation/bridge-react/data-fetch'; +import { configureCache, CacheSize } from '@module-federation/data-fetch'; configureCache({ maxSize: CacheSize.MB * 10, // 10MB diff --git a/apps/website-new/docs/pt-BR/guide/data/data-fetch.mdx b/apps/website-new/docs/pt-BR/guide/data/data-fetch.mdx index 50d32ca6e6b..b1e8d6a95c4 100644 --- a/apps/website-new/docs/pt-BR/guide/data/data-fetch.mdx +++ b/apps/website-new/docs/pt-BR/guide/data/data-fetch.mdx @@ -20,6 +20,21 @@ O capability described em este document targets o former — "componente-level" ## How para Use +:::info Estrutura dos pacotes + +As APIs principais de data-fetch (`cache`, `prefetch`, tipos como `DataFetchParams` e utilitários relacionados) ficam no pacote agnóstico de framework `@module-federation/data-fetch`. `@module-federation/bridge-react/data-fetch` e `@module-federation/bridge-vue3` reexportam essas APIs por conveniência. O `createLazyComponent` do React continua sendo o adaptador de UI React para carregar componentes remotos (veja [Carregamento lazy e prefetch de componentes](/guide/bridge/react/load-component.html)). + +Instale `@module-federation/data-fetch` ao importar diretamente dele: + +```bash +npm install @module-federation/data-fetch +# ou: pnpm add @module-federation/data-fetch +``` + +Se você importar apenas dos pacotes bridge (`@module-federation/bridge-react/data-fetch`, `@module-federation/bridge-vue3`), as reexportações continuam funcionando sem dependência direta em `@module-federation/data-fetch`. + +::: + Dados fetching suporta both SSR e CSR scenarios. O sections below cover producer e consumer separadamente: ### Producer @@ -49,7 +64,7 @@ Exemplo arquivo layout: O convention arquivo deve exporte uma função chamado `fetchData`, que runs antes o remote componente renders: ```ts title="List.data.ts" -import type { DataFetchParams } from '@module-federation/bridge-react/data-fetch'; +import type { DataFetchParams } from '@module-federation/data-fetch'; export type Data = { data: string; }; diff --git a/apps/website-new/docs/zh/guide/bridge/overview.mdx b/apps/website-new/docs/zh/guide/bridge/overview.mdx index 4f5263e3f68..b9196734327 100644 --- a/apps/website-new/docs/zh/guide/bridge/overview.mdx +++ b/apps/website-new/docs/zh/guide/bridge/overview.mdx @@ -145,6 +145,8 @@ Bridge 解决了现代前端开发中的几个关键挑战: #### 核心特性 +核心 data-fetch 工具(`cache`、`prefetch`、loader 类型及相关辅助函数)位于 `@module-federation/data-fetch`。`@module-federation/bridge-react/data-fetch` 会重新导出它们,并提供 `lazyLoadComponentPlugin`、`createLazyComponent` 等 React 懒加载 API。 + - **数据预取**:支持组件级别的数据预取,确保组件加载时数据已就绪 - **错误边界**:内置错误处理机制,组件加载失败不影响主应用 - **加载状态**:提供丰富的加载状态管理,支持自定义加载指示器 diff --git a/apps/website-new/docs/zh/guide/bridge/react/load-component.mdx b/apps/website-new/docs/zh/guide/bridge/react/load-component.mdx index e84e62565c8..7f24d9b7f5c 100644 --- a/apps/website-new/docs/zh/guide/bridge/react/load-component.mdx +++ b/apps/website-new/docs/zh/guide/bridge/react/load-component.mdx @@ -8,6 +8,12 @@ - **数据预取**:配合 `prefetch` 在组件加载前发起依赖请求,避免组件就绪后才串行请求数据带来的瀑布 - **SSR 控制**:可精细控制远程组件是否在服务端渲染,避免出现 CSS 闪烁问题 +:::info + +组件级 data-fetch 工具(`cache`、`prefetch`、`DataFetchParams` 及相关类型)由 `@module-federation/data-fetch` 提供。`@module-federation/bridge-react/data-fetch` 会重新导出它们以保持向后兼容,并提供 `lazyLoadComponentPlugin`、`createLazyComponent` 等 React 专用 API。 + +::: + ## 安装 import { PackageManagerTabs } from '@theme'; diff --git a/apps/website-new/docs/zh/guide/data/data-fetch-cache.mdx b/apps/website-new/docs/zh/guide/data/data-fetch-cache.mdx index 45c1cb2cd79..25943ecf445 100644 --- a/apps/website-new/docs/zh/guide/data/data-fetch-cache.mdx +++ b/apps/website-new/docs/zh/guide/data/data-fetch-cache.mdx @@ -2,10 +2,19 @@ `cache` 函数可以让你缓存数据获取或计算的结果,它提供了更精细的数据粒度控制,并且适用于客户端渲染(CSR)、服务端渲染(SSR)等场景。 +下文示例从 `@module-federation/data-fetch` 导入。Bridge 包(`@module-federation/bridge-react/data-fetch`、`@module-federation/bridge-vue3`)仍会重新导出 `cache` 及相关工具以保持向后兼容。 + +```bash +npm install @module-federation/data-fetch +# 或:pnpm add @module-federation/data-fetch +``` + +若仅从 bridge 包导入,仍可依赖其重新导出,无需直接安装 `@module-federation/data-fetch`。 + ## 基本用法 ```ts -import { cache } from '@module-federation/bridge-react/data-fetch'; +import { cache } from '@module-federation/data-fetch'; export type Data = { data: string; @@ -58,7 +67,7 @@ interface CacheOptions { 每次计算完成后,框架会记录写入缓存的时间,当再次调用该函数时,会根据 `maxAge` 参数判断缓存是否过期,如果过期,则重新执行 `fn` 函数,否则返回缓存的数据。 ```ts -import { cache, CacheTime } from '@module-federation/bridge-react/data-fetch'; +import { cache, CacheTime } from '@module-federation/data-fetch'; const getDashboardStats = cache( async () => { @@ -78,7 +87,7 @@ const getDashboardStats = cache( 如以下示例,在缓存未过期的 2分钟内,如果调用 `getDashboardStats` 函数,会返回缓存的数据,如果缓存过期,2分到3分钟内,收到的请求会先返回旧数据,然后后台会重新请求数据,并更新缓存。 ```ts -import { cache, CacheTime } from '@module-federation/bridge-react/data-fetch'; +import { cache, CacheTime } from '@module-federation/data-fetch'; const getDashboardStats = cache( async () => { @@ -96,7 +105,7 @@ const getDashboardStats = cache( `tag` 参数用于标识缓存的标签,可以传入一个字符串或字符串数组,可以基于这个标签使缓存失效,多个缓存函数可以使用一个标签。 ```ts -import { cache, revalidateTag } from '@module-federation/bridge-react/data-fetch'; +import { cache, revalidateTag } from '@module-federation/data-fetch'; const getDashboardStats = cache( async () => { @@ -124,7 +133,7 @@ revalidateTag('dashboard-stats'); // 会使 getDashboardStats 函数和 getCompl `getKey` 参数用于自定义缓存键的生成方式,例如你可能只需要依赖函数参数的一部分来区分缓存。它是一个函数,接收与原始函数相同的参数,返回一个字符串作为缓存键: ```ts -import { cache, CacheTime } from '@module-federation/bridge-react/data-fetch'; +import { cache, CacheTime } from '@module-federation/data-fetch'; import { fetchUserData } from './api'; const getUser = cache( @@ -156,7 +165,7 @@ await getUser(456, { language: 'zh' }); // 不会命中缓存,会重新请求 ::: ```ts -import { cache, CacheTime, generateKey } from '@module-federation/bridge-react/data-fetch'; +import { cache, CacheTime, generateKey } from '@module-federation/data-fetch'; import { fetchUserData } from './api'; const getUser = cache( @@ -191,7 +200,7 @@ const getUser = cache( 下面的示例展示了 `customKey` 跨函数共享缓存的能力: ```ts -import { cache } from '@module-federation/bridge-react/data-fetch'; +import { cache } from '@module-federation/data-fetch'; import { fetchUserData } from './api'; // 不同的函数,但是通过 customKey 可以使它们共享一个缓存 @@ -247,7 +256,7 @@ const getUserD = cache( `onCache` 参数允许你跟踪缓存统计信息,例如命中率。这是一个回调函数,接收有关每次缓存操作的信息,包括状态、键、参数和结果。你可以在 onCache 返回 `false` 来阻止命中缓存。 ```ts -import { cache, CacheTime } from '@module-federation/bridge-react/data-fetch'; +import { cache, CacheTime } from '@module-federation/data-fetch'; // 跟踪缓存统计 const stats = { @@ -315,7 +324,7 @@ await getUser(2); // 缓存未命中 可以通过 `configureCache` 函数指定缓存的存储上限: ```ts -import { configureCache, CacheSize } from '@module-federation/bridge-react/data-fetch'; +import { configureCache, CacheSize } from '@module-federation/data-fetch'; configureCache({ maxSize: CacheSize.MB * 10, // 10MB diff --git a/apps/website-new/docs/zh/guide/data/data-fetch.mdx b/apps/website-new/docs/zh/guide/data/data-fetch.mdx index e17a94fa8b9..3711d4c9101 100644 --- a/apps/website-new/docs/zh/guide/data/data-fetch.mdx +++ b/apps/website-new/docs/zh/guide/data/data-fetch.mdx @@ -24,6 +24,21 @@ import Consumer from '@docs/zh/_components/data-fetch/consumer'; ## 如何使用 +:::info 包结构 + +核心 data-fetch API(`cache`、`prefetch`、`DataFetchParams` 等类型及相关工具)位于框架无关的 `@module-federation/data-fetch` 包中。`@module-federation/bridge-react/data-fetch` 与 `@module-federation/bridge-vue3` 为方便使用会重新导出这些 API。React 的 `createLazyComponent` 仍是用于加载组件远程模块的 React UI 适配器(见[懒加载与预取组件](/guide/bridge/react/load-component.html))。 + +直接从 `@module-federation/data-fetch` 导入时,请先安装: + +```bash +npm install @module-federation/data-fetch +# 或:pnpm add @module-federation/data-fetch +``` + +若仅从 bridge 包(`@module-federation/bridge-react/data-fetch`、`@module-federation/bridge-vue3`)导入,仍可依赖其重新导出,无需直接安装 `@module-federation/data-fetch`。 + +::: + 数据获取能力同时支持 SSR 和 CSR 两种场景,下面分为生产者和消费者两部分来介绍: ### 生产者 @@ -50,7 +65,7 @@ import Consumer from '@docs/zh/_components/data-fetch/consumer'; 约定文件中需要导出名为 `fetchData` 的函数,该函数将会在远程组件渲染前执行: ```ts title="List.data.ts" -import type { DataFetchParams } from '@module-federation/bridge-react/data-fetch'; +import type { DataFetchParams } from '@module-federation/data-fetch'; export type Data = { data: string; }; diff --git a/packages/bridge/bridge-react/package.json b/packages/bridge/bridge-react/package.json index 99f973a9b48..ed05bd74efa 100644 --- a/packages/bridge/bridge-react/package.json +++ b/packages/bridge/bridge-react/package.json @@ -155,6 +155,7 @@ "test:rstest": "pnpm exec rstest --passWithNoTests" }, "dependencies": { + "@module-federation/data-fetch": "workspace:*", "@module-federation/sdk": "workspace:*" }, "peerDependencies": { diff --git a/packages/bridge/bridge-react/scripts/write-dts-entrypoints.mjs b/packages/bridge/bridge-react/scripts/write-dts-entrypoints.mjs index 2f5d48d5189..e02095ad867 100644 --- a/packages/bridge/bridge-react/scripts/write-dts-entrypoints.mjs +++ b/packages/bridge/bridge-react/scripts/write-dts-entrypoints.mjs @@ -16,6 +16,12 @@ const entrypoints = { ], 'dist/lazy-utils.d.ts': ["export * from './lazy/utils';"], 'dist/data-fetch-utils.d.ts': ["export * from './lazy/data-fetch';"], + 'dist/data-fetch.d.ts': [ + "import '@module-federation/data-fetch';", + "export type { DataFetchParams, NoSSRRemoteInfo, CollectSSRAssetsOptions, CreateLazyComponentOptions, CacheStatus, CacheStatsInfo, PrefetchOptions, } from './lazy';", + "export { ERROR_TYPE, createLazyComponent, collectSSRAssets, callDataFetch, setSSREnv, autoFetchDataPlugin, CacheSize, CacheTime, configureCache, generateKey, cache, revalidateTag, clearStore, prefetch, flushDataFetch, } from './lazy';", + "export { lazyLoadComponentPlugin } from './plugins/lazy-load-component-plugin';", + ], 'dist/data-fetch-server-middleware.d.ts': [ "export { default } from './lazy/data-fetch/data-fetch-server-middleware';", ], diff --git a/packages/bridge/bridge-react/src/data-fetch.ts b/packages/bridge/bridge-react/src/data-fetch.ts index 6a102ca0153..b04d9a2e4dd 100644 --- a/packages/bridge/bridge-react/src/data-fetch.ts +++ b/packages/bridge/bridge-react/src/data-fetch.ts @@ -1,3 +1,16 @@ +// Side-effect type import so data-fetch global augmentations apply to consumers. +import type {} from '@module-federation/data-fetch'; + +export type { + DataFetchParams, + NoSSRRemoteInfo, + CollectSSRAssetsOptions, + CreateLazyComponentOptions, + CacheStatus, + CacheStatsInfo, + PrefetchOptions, +} from './lazy'; + export { ERROR_TYPE, createLazyComponent, @@ -13,17 +26,7 @@ export { revalidateTag, clearStore, prefetch, + flushDataFetch, } from './lazy'; export { lazyLoadComponentPlugin } from './plugins/lazy-load-component-plugin'; -export { flushDataFetch } from './lazy/utils'; - -export type { - DataFetchParams, - NoSSRRemoteInfo, - CollectSSRAssetsOptions, - CreateLazyComponentOptions, - CacheStatus, - CacheStatsInfo, - PrefetchOptions, -} from './lazy'; diff --git a/packages/bridge/bridge-react/src/lazy/constant.ts b/packages/bridge/bridge-react/src/lazy/constant.ts index c6b718ce1ac..5c1ebb1ba05 100644 --- a/packages/bridge/bridge-react/src/lazy/constant.ts +++ b/packages/bridge/bridge-react/src/lazy/constant.ts @@ -1,30 +1,15 @@ export const PLUGIN_IDENTIFIER = '[ Module Federation React ]'; -export const DOWNGRADE_KEY = '_mfSSRDowngrade'; -export const DATA_FETCH_MAP_KEY = '__MF_DATA_FETCH_MAP__'; -export const DATA_FETCH_FUNCTION = '_mfDataFetch'; -export const FS_HREF = '_mfFSHref'; export const ERROR_TYPE = { DATA_FETCH: 1, LOAD_REMOTE: 2, UNKNOWN: 3, }; -export const WRAP_DATA_FETCH_ID_IDENTIFIER = 'wrap_dfip_identifier'; -export const enum MF_DATA_FETCH_TYPE { - FETCH_SERVER = 1, - FETCH_CLIENT = 2, -} -export const enum MF_DATA_FETCH_STATUS { - LOADED = 1, - LOADING = 2, - AWAIT = 0, - ERROR = 3, -} - -export const DATA_FETCH_IDENTIFIER = 'data'; -export const DATA_FETCH_CLIENT_SUFFIX = '.client'; -export const DATA_FETCH_QUERY = 'x-mf-data-fetch'; -export const DATA_FETCH_ERROR_PREFIX = - 'caught the following error during dataFetch: '; -export const LOAD_REMOTE_ERROR_PREFIX = - 'caught the following error during loadRemote: '; +export { + DATA_FETCH_ERROR_PREFIX, + LOAD_REMOTE_ERROR_PREFIX, + DATA_FETCH_FUNCTION, + FS_HREF, + MF_DATA_FETCH_TYPE, + WRAP_DATA_FETCH_ID_IDENTIFIER, +} from '@module-federation/data-fetch'; diff --git a/packages/bridge/bridge-react/src/lazy/data-fetch/data-fetch-server-middleware.ts b/packages/bridge/bridge-react/src/lazy/data-fetch/data-fetch-server-middleware.ts index 0054a0c473a..340dab40a66 100644 --- a/packages/bridge/bridge-react/src/lazy/data-fetch/data-fetch-server-middleware.ts +++ b/packages/bridge/bridge-react/src/lazy/data-fetch/data-fetch-server-middleware.ts @@ -1,196 +1 @@ -import { DATA_FETCH_QUERY, MF_DATA_FETCH_STATUS } from '../constant'; -import { - getDataFetchMap, - fetchData, - initDataFetchMap, - loadDataFetchModule, -} from '../utils'; -import { SEPARATOR, MANIFEST_EXT } from '@module-federation/sdk'; -import logger from '../logger'; - -import type { NoSSRRemoteInfo } from '../types'; -import type { MiddlewareHandler } from 'hono'; - -function wrapSetTimeout( - targetPromise: Promise, - delay = 20000, - id: string, -) { - if (targetPromise && typeof targetPromise.then === 'function') { - return new Promise((resolve, reject) => { - const timeoutId = setTimeout(() => { - logger.warn(`Data fetch for ID ${id} timed out after 20 seconds.`); - reject(new Error(`Data fetch for ID ${id} timed out after 20 seconds`)); - }, delay); - - targetPromise - .then((value: any) => { - clearTimeout(timeoutId); - resolve(value); - }) - .catch((err: any) => { - clearTimeout(timeoutId); - reject(err); - }); - }); - } -} - -function addProtocol(url: string) { - if (url.startsWith('//')) { - return 'https:' + url; - } - return url; -} - -const getDecodeQuery = (url: URL, name: string) => { - const res = url.searchParams.get(name); - if (!res) { - return null; - } - return decodeURIComponent(res); -}; - -const dataFetchServerMiddleware: MiddlewareHandler = async (ctx, next) => { - let url: URL; - let dataFetchKey: string | null; - let params: Record; - let remoteInfo: NoSSRRemoteInfo; - try { - url = new URL(ctx.req.url); - dataFetchKey = getDecodeQuery(url, DATA_FETCH_QUERY); - params = JSON.parse(getDecodeQuery(url, 'params') || '{}'); - const remoteInfoQuery = getDecodeQuery(url, 'remoteInfo'); - remoteInfo = remoteInfoQuery ? JSON.parse(remoteInfoQuery) : null; - } catch (e) { - logger.error('fetch data from server, error: ', e); - return next(); - } - - if (!dataFetchKey) { - return next(); - } - logger.log('fetch data from server, dataFetchKey: ', dataFetchKey); - logger.debug( - 'fetch data from server, moduleInfo: ', - globalThis.__FEDERATION__?.moduleInfo, - ); - try { - const dataFetchMap = getDataFetchMap(); - if (!dataFetchMap) { - initDataFetchMap(); - } - const fetchDataPromise = dataFetchMap[dataFetchKey]?.[1]; - logger.debug( - 'fetch data from server, fetchDataPromise: ', - fetchDataPromise, - ); - if ( - fetchDataPromise && - dataFetchMap[dataFetchKey]?.[2] !== MF_DATA_FETCH_STATUS.ERROR - ) { - const targetPromise = fetchDataPromise[0]; - // Ensure targetPromise is thenable - const wrappedPromise = wrapSetTimeout(targetPromise, 20000, dataFetchKey); - if (wrappedPromise) { - const res = await wrappedPromise; - logger.log('fetch data from server, fetchDataPromise res: ', res); - return ctx.json(res); - } - logger.error( - `Expected a Promise from fetchDataPromise[0] for dataFetchKey ${dataFetchKey}, but received:`, - targetPromise, - 'Will try call new dataFetch again...', - ); - } - - if (remoteInfo) { - try { - const hostInstance = globalThis.__FEDERATION__.__INSTANCES__[0]; - const remoteEntry = `${addProtocol(remoteInfo.ssrPublicPath) + remoteInfo.ssrRemoteEntry}`; - if (!hostInstance) { - throw new Error('host instance not found!'); - } - const remote = hostInstance.options.remotes.find( - (remote) => remote.name === remoteInfo.name, - ); - logger.debug('find remote: ', JSON.stringify(remote)); - if (!remote) { - hostInstance.registerRemotes([ - { - name: remoteInfo.name, - entry: remoteEntry, - entryGlobalName: remoteInfo.globalName, - }, - ]); - } else if ( - !('entry' in remote) || - !remote.entry.includes(MANIFEST_EXT) - ) { - const { hostGlobalSnapshot, remoteSnapshot } = - hostInstance.snapshotHandler.getGlobalRemoteInfo(remoteInfo); - logger.debug( - 'find hostGlobalSnapshot: ', - JSON.stringify(hostGlobalSnapshot), - ); - logger.debug('find remoteSnapshot: ', JSON.stringify(remoteSnapshot)); - - if (!hostGlobalSnapshot || !remoteSnapshot) { - if ('version' in remote) { - // @ts-ignore - delete remote.version; - } - // @ts-ignore - remote.entry = remoteEntry; - remote.entryGlobalName = remoteInfo.globalName; - } - } - } catch (e) { - ctx.status(500); - return ctx.text( - `failed to fetch ${remoteInfo.name} data, error:\n ${e}`, - ); - } - } - - const dataFetchItem = dataFetchMap[dataFetchKey]; - logger.debug('fetch data from server, dataFetchItem: ', dataFetchItem); - if (dataFetchItem) { - const callFetchDataPromise = fetchData(dataFetchKey, { - ...params, - isDowngrade: !remoteInfo, - _id: dataFetchKey, - }); - const wrappedPromise = wrapSetTimeout( - callFetchDataPromise, - 20000, - dataFetchKey, - ); - if (wrappedPromise) { - const res = await wrappedPromise; - logger.log('fetch data from server, dataFetchItem res: ', res); - return ctx.json(res); - } - } - - const remoteId = dataFetchKey.split(SEPARATOR)[0]; - const hostInstance = globalThis.__FEDERATION__.__INSTANCES__[0]; - if (!hostInstance) { - throw new Error('host instance not found!'); - } - const dataFetchFn = await loadDataFetchModule(hostInstance, remoteId); - const data = await dataFetchFn({ - ...params, - isDowngrade: !remoteInfo, - _id: dataFetchKey, - }); - logger.log('fetch data from server, loadDataFetchModule res: ', data); - return ctx.json(data); - } catch (e) { - logger.error('server plugin data fetch error: ', e); - ctx.status(500); - return ctx.text(`failed to fetch ${remoteInfo.name} data, error:\n ${e}`); - } -}; - -export default dataFetchServerMiddleware; +export { default } from '@module-federation/data-fetch/server-middleware'; diff --git a/packages/bridge/bridge-react/src/lazy/data-fetch/index.ts b/packages/bridge/bridge-react/src/lazy/data-fetch/index.ts index db35110e60f..55229730a24 100644 --- a/packages/bridge/bridge-react/src/lazy/data-fetch/index.ts +++ b/packages/bridge/bridge-react/src/lazy/data-fetch/index.ts @@ -1,16 +1 @@ -export { callDataFetch } from './call-data-fetch'; -export { injectDataFetch } from './inject-data-fetch'; -export { - CacheSize, - CacheTime, - configureCache, - generateKey, - cache, - revalidateTag, - clearStore, -} from './cache'; - -export type { CacheStatus, CacheStatsInfo } from './cache'; - -export type { PrefetchOptions } from './prefetch'; -export { prefetch } from './prefetch'; +export * from '@module-federation/data-fetch/data-fetch-utils'; diff --git a/packages/bridge/bridge-react/src/lazy/index.ts b/packages/bridge/bridge-react/src/lazy/index.ts index 5c17973a9dd..30b1f03b93a 100644 --- a/packages/bridge/bridge-react/src/lazy/index.ts +++ b/packages/bridge/bridge-react/src/lazy/index.ts @@ -1,7 +1,8 @@ -import autoFetchDataPlugin from './data-fetch/runtime-plugin'; - export { ERROR_TYPE } from './constant'; -export type { DataFetchParams, NoSSRRemoteInfo } from './types'; +export type { + DataFetchParams, + NoSSRRemoteInfo, +} from '@module-federation/data-fetch'; export type { CreateLazyComponentOptions, IProps as CollectSSRAssetsOptions, @@ -9,8 +10,6 @@ export type { export { createLazyComponent, collectSSRAssets } from './createLazyComponent'; -// export { wrapNoSSR } from './wrapNoSSR'; - export { injectDataFetch, callDataFetch, @@ -22,14 +21,13 @@ export { revalidateTag, clearStore, prefetch, -} from './data-fetch'; - -export { setSSREnv } from './utils'; - -export { autoFetchDataPlugin }; + setSSREnv, + autoFetchDataPlugin, + flushDataFetch, +} from '@module-federation/data-fetch'; export type { CacheStatus, CacheStatsInfo, PrefetchOptions, -} from './data-fetch'; +} from '@module-federation/data-fetch'; diff --git a/packages/bridge/bridge-react/src/lazy/types.ts b/packages/bridge/bridge-react/src/lazy/types.ts index 060f0254981..cab029bf2f4 100644 --- a/packages/bridge/bridge-react/src/lazy/types.ts +++ b/packages/bridge/bridge-react/src/lazy/types.ts @@ -1,75 +1,4 @@ -import { MF_DATA_FETCH_TYPE, MF_DATA_FETCH_STATUS } from './constant'; -import type { SizeLimitedCache } from '../shared/size-limited-cache'; - -export type dataFetchFunctionOptions = [ - id?: string, - data?: unknown, - downgrade?: boolean, -]; - -declare global { - var _mfSSRDowngrade: string[] | true | undefined; - var __MF_DATA_FETCH_MAP__: MF_DATA_FETCH_MAP | undefined; - var FEDERATION_SERVER_QUERY: Record | undefined; - var FEDERATION_SSR: boolean | undefined; - var _mfFSHref: string | undefined; - var _mfDataFetch: Array | undefined; - var __MF_DATA_FETCH_CACHE__: MF_DATA_FETCH_CACHE | undefined; -} - -export interface CacheItem { - data: T; - timestamp: number; - isRevalidating?: boolean; -} - -export type DataFetchParams = { - isDowngrade: boolean; - _id?: string; -} & Record; -export type DataFetch = (params: DataFetchParams) => Promise; - -// loading, resolve, reject -export type MF_DATA_FETCH_MAP_VALUE_PROMISE_SET = [ - Promise, - ((data: unknown) => void)?, - ((err: unknown) => void)?, -]; -export type MF_DATA_FETCH_MAP_VALUE = [ - [ - // getDataFetchGetter - () => Promise>, - // data fetch type - MF_DATA_FETCH_TYPE, - // getDataFetchPromise - Promise>?, - ], - MF_DATA_FETCH_MAP_VALUE_PROMISE_SET?, - MF_DATA_FETCH_STATUS?, -]; -export type MF_DATA_FETCH_MAP = Record; -export type MF_SSR_DOWNGRADE = string[] | true | undefined; - -export type NoSSRRemoteInfo = { - name: string; - version: string; - ssrPublicPath: string; - ssrRemoteEntry: string; - globalName: string; -}; - -export interface CacheConfig { - maxSize?: number; - unstable_shouldDisable?: ({ - request, - }: { - request: Request; - }) => boolean | Promise; -} - -// key is the id, default is the same with dataFetchMapId, but it can be custom by passing dataFetchParams.id -export type MF_DATA_FETCH_CACHE = { - cacheStore?: SizeLimitedCache>>; - tagKeyMap?: Map>; - cacheConfig?: CacheConfig; -}; +export type { + DataFetchParams, + NoSSRRemoteInfo, +} from '@module-federation/data-fetch'; diff --git a/packages/bridge/bridge-react/src/lazy/utils.ts b/packages/bridge/bridge-react/src/lazy/utils.ts index 40497c4adb8..bd5d2d3188c 100644 --- a/packages/bridge/bridge-react/src/lazy/utils.ts +++ b/packages/bridge/bridge-react/src/lazy/utils.ts @@ -1,375 +1 @@ -import { - isBrowserEnvValue, - composeKeyWithSeparator, -} from '@module-federation/sdk'; -import logger from './logger'; -import { - DOWNGRADE_KEY, - MF_DATA_FETCH_STATUS, - WRAP_DATA_FETCH_ID_IDENTIFIER, - DATA_FETCH_QUERY, - MF_DATA_FETCH_TYPE, - DATA_FETCH_IDENTIFIER, - DATA_FETCH_CLIENT_SUFFIX, -} from './constant'; - -import type { GlobalModuleInfo } from '@module-federation/sdk'; -import type { - DataFetchParams, - MF_DATA_FETCH_MAP, - NoSSRRemoteInfo, - MF_SSR_DOWNGRADE, - MF_DATA_FETCH_MAP_VALUE_PROMISE_SET, - MF_DATA_FETCH_CACHE, -} from './types'; -import type { ModuleFederation } from '@module-federation/runtime'; -import { clearStore } from './data-fetch/cache'; - -export const getDataFetchInfo = ({ - name, - alias, - id, - remoteSnapshot, -}: { - id: string; - name: string; - remoteSnapshot: GlobalModuleInfo[string]; - alias?: string; -}) => { - if (!remoteSnapshot) { - return; - } - if (!('modules' in remoteSnapshot)) { - return; - } - const regex = new RegExp(`^${name}(/[^/].*|)$`); - const nameOrAlias = regex.test(id) ? name : alias || name; - - const expose = id.replace(nameOrAlias, ''); - let dataFetchName = ''; - let dataFetchId = ''; - let dataFetchKey = ''; - if (expose.startsWith('/')) { - dataFetchName = `${expose.slice(1)}.${DATA_FETCH_IDENTIFIER}`; - dataFetchId = `${id}.${DATA_FETCH_IDENTIFIER}`; - dataFetchKey = `${name}${expose}.${DATA_FETCH_IDENTIFIER}`; - } else if (expose === '') { - dataFetchName = DATA_FETCH_IDENTIFIER; - dataFetchId = `${id}/${DATA_FETCH_IDENTIFIER}`; - dataFetchKey = `${name}/${DATA_FETCH_IDENTIFIER}`; - } else { - return; - } - - if (!dataFetchName || !dataFetchId || !dataFetchKey) { - return; - } - - if ( - !remoteSnapshot.modules.find( - (module) => module.moduleName === dataFetchName, - ) - ) { - return; - } - - return { - dataFetchName, - dataFetchId, - dataFetchKey, - }; -}; - -export function initDataFetchMap() { - globalThis.__MF_DATA_FETCH_MAP__ ||= {}; -} - -export function getDataFetchItem(id: string) { - return (globalThis.__MF_DATA_FETCH_MAP__ as MF_DATA_FETCH_MAP)?.[id]; -} - -export function getDataFetchMap() { - return globalThis.__MF_DATA_FETCH_MAP__ as MF_DATA_FETCH_MAP; -} - -export function getDataFetchCache() { - return globalThis.__MF_DATA_FETCH_CACHE__ as MF_DATA_FETCH_CACHE; -} - -export const flushDataFetch = () => { - globalThis.__MF_DATA_FETCH_MAP__ = {}; - globalThis[DOWNGRADE_KEY] = undefined; - clearStore(); -}; - -export function setDataFetchItemLoadedStatus(id: string) { - const dataFetchItem = getDataFetchItem(id); - if (!dataFetchItem) { - return; - } - dataFetchItem[2] = MF_DATA_FETCH_STATUS.LOADED; -} - -export const wrapDataFetchId = (id?: string) => { - return `${WRAP_DATA_FETCH_ID_IDENTIFIER}${id}${WRAP_DATA_FETCH_ID_IDENTIFIER}`; -}; - -export const getDataFetchIdWithErrorMsgs = (errMsgs: string) => { - const firstIdentifierIndex = errMsgs.indexOf(WRAP_DATA_FETCH_ID_IDENTIFIER); - if (firstIdentifierIndex === -1) { - return undefined; - } - - const secondIdentifierIndex = errMsgs.indexOf( - WRAP_DATA_FETCH_ID_IDENTIFIER, - firstIdentifierIndex + WRAP_DATA_FETCH_ID_IDENTIFIER.length, - ); - - if (secondIdentifierIndex === -1) { - return undefined; - } - - return errMsgs.substring( - firstIdentifierIndex + WRAP_DATA_FETCH_ID_IDENTIFIER.length, - secondIdentifierIndex, - ); -}; - -export async function fetchData( - id: string, - params: DataFetchParams, - remoteInfo?: NoSSRRemoteInfo, -): Promise { - const callFetchData = async () => { - const item = getDataFetchItem(id); - if (!item) { - return; - } - const [fetchDataFnArr, ..._rest] = item; - - const fetchDataFn = await fetchDataFnArr[2]; - if (!fetchDataFn) { - return; - } - return fetchDataFn({ - ...params, - _id: id, - }); - }; - if (isBrowserEnvValue) { - const dataFetchItem = getDataFetchItem(id); - if (!dataFetchItem) { - throw new Error(`dataFetchItem not found, id: ${id}`); - } - if (dataFetchItem[1]?.[0]) { - return dataFetchItem[1][0]; - } - - if (isCSROnly()) { - logger.debug('==========csr only!'); - return callFetchData(); - } - - if (remoteInfo) { - return callDowngrade(id, params, remoteInfo); - } - - const mfDowngrade = getDowngradeTag(); - if ( - mfDowngrade && - (typeof mfDowngrade === 'boolean' || mfDowngrade.includes(id)) - ) { - return callDowngrade(id, { ...params, isDowngrade: true }); - } - - let res; - let rej; - const p = new Promise((resolve, reject) => { - res = resolve; - rej = reject; - }); - dataFetchItem[1] = [p, res, rej]; - dataFetchItem[2] = MF_DATA_FETCH_STATUS.AWAIT; - return dataFetchItem[1][0]; - } - - return callFetchData(); -} - -export function getDataFetchMapKey( - dataFetchInfo?: ReturnType, - hostInfo?: { name: string; version?: string }, -) { - if (!dataFetchInfo || !hostInfo) { - return; - } - - const { dataFetchKey } = dataFetchInfo; - - return composeKeyWithSeparator(dataFetchKey, hostInfo.name, hostInfo.version); -} - -export async function loadDataFetchModule( - instance: ModuleFederation, - id: string, -) { - return instance.loadRemote(id).then((m) => { - if ( - m && - typeof m === 'object' && - 'fetchData' in m && - typeof m.fetchData === 'function' - ) { - return m.fetchData as (params: DataFetchParams) => Promise; - } - throw new Error( - `fetchData not found in remote ${id}, ${JSON.stringify(m)}`, - ); - }); -} - -export function isDataLoaderExpose(exposeKey: string) { - return ( - exposeKey.endsWith(DATA_FETCH_IDENTIFIER) || - exposeKey.endsWith(DATA_FETCH_CLIENT_SUFFIX) - ); -} - -export function getDowngradeTag() { - return globalThis[DOWNGRADE_KEY] as MF_SSR_DOWNGRADE; -} - -export function callAllDowngrade() { - const dataFetchMap = getDataFetchMap(); - if (!dataFetchMap) { - return; - } - Object.keys(dataFetchMap).forEach((key) => { - callDowngrade(key); - }); -} - -export async function callDowngrade( - id: string, - params?: DataFetchParams, - remoteInfo?: NoSSRRemoteInfo, -) { - const dataFetchMap = getDataFetchMap(); - if (!dataFetchMap) { - return; - } - const mfDataFetch = dataFetchMap[id]; - if (mfDataFetch?.[2] === MF_DATA_FETCH_STATUS.AWAIT) { - mfDataFetch[2] = MF_DATA_FETCH_STATUS.LOADING; - let promise: MF_DATA_FETCH_MAP_VALUE_PROMISE_SET[0]; - let res: MF_DATA_FETCH_MAP_VALUE_PROMISE_SET[1]; - let rej: MF_DATA_FETCH_MAP_VALUE_PROMISE_SET[2]; - if (mfDataFetch[1]) { - promise = mfDataFetch[1][0]; - res = mfDataFetch[1][1]; - rej = mfDataFetch[1][2]; - } else { - promise = new Promise((resolve, reject) => { - res = resolve; - rej = reject; - }); - mfDataFetch[1] = [promise, res, rej]; - } - const dataFetchType = mfDataFetch[0][1]; - if (dataFetchType === MF_DATA_FETCH_TYPE.FETCH_CLIENT) { - try { - mfDataFetch[0][0]().then(async (getDataFetchFn) => { - return getDataFetchFn({ - ...params, - isDowngrade: true, - _id: id, - }).then((data) => { - mfDataFetch[2] = MF_DATA_FETCH_STATUS.LOADED; - res && res(data); - }); - }); - } catch (e) { - mfDataFetch[2] = MF_DATA_FETCH_STATUS.ERROR; - rej && rej(e); - } - } else if (dataFetchType === MF_DATA_FETCH_TYPE.FETCH_SERVER) { - try { - const currentUrl = new URL(window.location.href); - currentUrl.searchParams.set(DATA_FETCH_QUERY, encodeURIComponent(id)); - if (params) { - currentUrl.searchParams.set( - 'params', - encodeURIComponent(JSON.stringify(params)), - ); - } - if (remoteInfo) { - currentUrl.searchParams.set( - 'remoteInfo', - encodeURIComponent(JSON.stringify(remoteInfo)), - ); - } - const fetchServerQuery = globalThis.FEDERATION_SERVER_QUERY; - if (fetchServerQuery && typeof fetchServerQuery === 'object') { - Object.keys(fetchServerQuery).forEach((key) => { - currentUrl.searchParams.set( - key, - JSON.stringify(fetchServerQuery[key]), - ); - }); - } - const fetchUrl = currentUrl.toString(); - const data = await fetch(fetchUrl).then((res) => res.json()); - mfDataFetch[2] = MF_DATA_FETCH_STATUS.LOADED; - res && res(data); - } catch (e) { - mfDataFetch[2] = MF_DATA_FETCH_STATUS.ERROR; - rej && rej(e); - } - } - - return promise; - } -} - -export function isCSROnly() { - // @ts-ignore modern.js will inject window._SSR_DATA if enable ssr - return window._SSR_DATA === undefined; -} - -export function isServerEnv() { - return typeof window === 'undefined'; -} - -export function setSSREnv({ - fetchServerQuery, -}: { - fetchServerQuery?: Record; -}) { - globalThis.FEDERATION_SSR = true; - globalThis.FEDERATION_SERVER_QUERY = fetchServerQuery; -} - -export function getLoadedRemoteInfos( - id: string, - instance: ModuleFederation | null, -) { - if (!instance) { - return; - } - const { name, expose } = instance.remoteHandler.idToRemoteMap[id] || {}; - if (!name) { - return; - } - const module = instance.moduleCache.get(name); - if (!module) { - return; - } - const { remoteSnapshot } = instance.snapshotHandler.getGlobalRemoteInfo( - module.remoteInfo, - ); - return { - ...module.remoteInfo, - snapshot: remoteSnapshot, - expose, - }; -} +export * from '@module-federation/data-fetch/utils'; diff --git a/packages/bridge/bridge-react/src/shared/size-limited-cache.ts b/packages/bridge/bridge-react/src/shared/size-limited-cache.ts index a43c0f84d68..afd2f157156 100644 --- a/packages/bridge/bridge-react/src/shared/size-limited-cache.ts +++ b/packages/bridge/bridge-react/src/shared/size-limited-cache.ts @@ -1,115 +1 @@ -export interface SizeLimitedCacheOptions { - maxSize: number; - sizeCalculation?: (value: V, key: K) => number; -} - -export interface SizeLimitedCacheSetOptions { - size?: number; -} - -interface CacheEntry { - value: V; - size: number; -} - -/** - * A small, size-aware least-recently-used cache. - * - * This intentionally implements only the operations used by federation - * packages. Reading or checking an entry refreshes its recency. - */ -export class SizeLimitedCache { - readonly maxSize: number; - - private readonly entries = new Map>(); - private readonly sizeCalculation?: (value: V, key: K) => number; - private currentSize = 0; - - constructor(options: SizeLimitedCacheOptions) { - if (!Number.isInteger(options.maxSize) || options.maxSize <= 0) { - throw new TypeError('maxSize must be a positive integer'); - } - - this.maxSize = options.maxSize; - this.sizeCalculation = options.sizeCalculation; - } - - get size(): number { - return this.entries.size; - } - - get calculatedSize(): number { - return this.currentSize; - } - - get(key: K): V | undefined { - const entry = this.entries.get(key); - if (!entry) { - return undefined; - } - - this.refresh(key, entry); - return entry.value; - } - - has(key: K): boolean { - const entry = this.entries.get(key); - if (!entry) { - return false; - } - - this.refresh(key, entry); - return true; - } - - set(key: K, value: V, options: SizeLimitedCacheSetOptions = {}): this { - const entrySize = options.size ?? this.sizeCalculation?.(value, key) ?? 1; - - if (!Number.isInteger(entrySize) || entrySize <= 0) { - throw new TypeError('entry size must be a positive integer'); - } - - this.delete(key); - - if (entrySize > this.maxSize) { - return this; - } - - this.entries.set(key, { value, size: entrySize }); - this.currentSize += entrySize; - this.evictUntilWithinLimit(); - - return this; - } - - delete(key: K): boolean { - const entry = this.entries.get(key); - if (!entry) { - return false; - } - - this.currentSize -= entry.size; - return this.entries.delete(key); - } - - clear(): void { - this.entries.clear(); - this.currentSize = 0; - } - - private refresh(key: K, entry: CacheEntry): void { - this.entries.delete(key); - this.entries.set(key, entry); - } - - private evictUntilWithinLimit(): void { - while (this.currentSize > this.maxSize) { - const oldest = this.entries.keys().next(); - if (oldest.done) { - this.currentSize = 0; - return; - } - this.delete(oldest.value); - } - } -} +export * from '@module-federation/data-fetch/size-limited-cache'; diff --git a/packages/bridge/bridge-react/vite.config.ts b/packages/bridge/bridge-react/vite.config.ts index e703d5ea572..f668a299630 100644 --- a/packages/bridge/bridge-react/vite.config.ts +++ b/packages/bridge/bridge-react/vite.config.ts @@ -42,6 +42,11 @@ export default defineConfig({ rollupOptions: { external: [ ...perDepsKeys, + '@module-federation/data-fetch', + '@module-federation/data-fetch/data-fetch-utils', + '@module-federation/data-fetch/server-middleware', + '@module-federation/data-fetch/size-limited-cache', + '@module-federation/data-fetch/utils', '@remix-run/router', /react-dom\/.*/, 'react-router', diff --git a/packages/bridge/vue3-bridge/package.json b/packages/bridge/vue3-bridge/package.json index 8bd03c00161..5b7f7953cad 100644 --- a/packages/bridge/vue3-bridge/package.json +++ b/packages/bridge/vue3-bridge/package.json @@ -22,7 +22,7 @@ ], "scripts": { "dev": "vite", - "build": "vite build && tsc -p tsconfig.json", + "build": "vite build && tsc -p tsconfig.json && node scripts/write-dts-entrypoints.mjs", "preview": "vite preview", "test": "rstest" }, @@ -32,6 +32,7 @@ }, "dependencies": { "@module-federation/bridge-shared": "workspace:*", + "@module-federation/data-fetch": "workspace:*", "@module-federation/runtime": "workspace:*", "@module-federation/sdk": "workspace:*" }, diff --git a/packages/bridge/vue3-bridge/scripts/write-dts-entrypoints.mjs b/packages/bridge/vue3-bridge/scripts/write-dts-entrypoints.mjs new file mode 100644 index 00000000000..872aca26d2f --- /dev/null +++ b/packages/bridge/vue3-bridge/scripts/write-dts-entrypoints.mjs @@ -0,0 +1,10 @@ +import { readFile, writeFile } from 'node:fs/promises'; + +const file = 'dist/index.d.ts'; +const sideEffectImport = "import '@module-federation/data-fetch';"; + +let content = await readFile(file, 'utf8'); +if (!content.includes(sideEffectImport)) { + content = `${sideEffectImport}\n${content}`; +} +await writeFile(file, content); diff --git a/packages/bridge/vue3-bridge/src/index.ts b/packages/bridge/vue3-bridge/src/index.ts index fbf7a554075..e26ba7a4ac8 100644 --- a/packages/bridge/vue3-bridge/src/index.ts +++ b/packages/bridge/vue3-bridge/src/index.ts @@ -1,4 +1,30 @@ +// Side-effect type import so data-fetch global augmentations apply to consumers. +import type {} from '@module-federation/data-fetch'; + export { createBridgeComponent } from './provider'; export type { ProviderFnParams } from './provider'; export { createRemoteComponent, createRemoteAppComponent } from './create'; export type { RenderFnParams } from '@module-federation/bridge-shared'; + +export { + autoFetchDataPlugin, + callDataFetch, + cache, + clearStore, + configureCache, + flushDataFetch, + generateKey, + prefetch, + revalidateTag, + setSSREnv, + CacheSize, + CacheTime, +} from '@module-federation/data-fetch'; + +export type { + CacheStatus, + CacheStatsInfo, + DataFetchParams, + NoSSRRemoteInfo, + PrefetchOptions, +} from '@module-federation/data-fetch'; diff --git a/packages/bridge/vue3-bridge/vite.config.ts b/packages/bridge/vue3-bridge/vite.config.ts index 1edf7166783..a33999c633e 100644 --- a/packages/bridge/vue3-bridge/vite.config.ts +++ b/packages/bridge/vue3-bridge/vite.config.ts @@ -13,7 +13,7 @@ export default defineConfig({ fileName: 'index', }, rollupOptions: { - external: ['vue', 'vue-router'], + external: ['vue', 'vue-router', '@module-federation/data-fetch'], }, }, define: { diff --git a/packages/data-fetch/README.md b/packages/data-fetch/README.md new file mode 100644 index 00000000000..aa746e8c05e --- /dev/null +++ b/packages/data-fetch/README.md @@ -0,0 +1,39 @@ +# @module-federation/data-fetch + +Framework-agnostic data fetching utilities for Module Federation: SSR data loaders, caching, prefetch, and the `autoFetchDataPlugin` runtime plugin. + +`@module-federation/bridge-react` and `@module-federation/bridge-vue3` re-export these APIs for backward compatibility. Prefer importing from this package for framework-agnostic usage. + +## Installation + +```bash +pnpm add @module-federation/data-fetch +``` + +`@module-federation/runtime` is a hard dependency (needed by the root entry for `prefetch` / runtime plugin wiring). + +Optional peer: + +- `hono` — required only for the server middleware entry + +## Main imports + +```ts +// Core APIs and runtime plugin +import { autoFetchDataPlugin, callDataFetch, cache, configureCache, prefetch, flushDataFetch, setSSREnv } from '@module-federation/data-fetch'; + +// Subpath entry points +import {} from /* ... */ '@module-federation/data-fetch/data-fetch-utils'; +import dataFetchServerMiddleware from '@module-federation/data-fetch/server-middleware'; +import { SizeLimitedCache } from '@module-federation/data-fetch/size-limited-cache'; +import {} from /* ... */ '@module-federation/data-fetch/utils'; +``` + +## Bridge re-exports + +Existing bridge entry points remain available: + +```ts +import { callDataFetch, prefetch } from '@module-federation/bridge-react/data-fetch'; +import { callDataFetch, prefetch } from '@module-federation/bridge-vue3'; +``` diff --git a/packages/data-fetch/__tests__/global-types.spec.ts b/packages/data-fetch/__tests__/global-types.spec.ts new file mode 100644 index 00000000000..f7d151c265d --- /dev/null +++ b/packages/data-fetch/__tests__/global-types.spec.ts @@ -0,0 +1,34 @@ +import { test, expect } from '@rstest/core'; +import { flushDataFetch, initDataFetchMap } from '../src/index'; +import { DATA_FETCH_MAP_KEY } from '../src/constant'; +import type { MF_DATA_FETCH_MAP } from '../src/types'; + +type Assert = T; + +// Ensures data-fetch global augmentations are declared for consumers. +type _GlobalsDeclared = Assert< + [ + typeof globalThis.__MF_DATA_FETCH_MAP__, + typeof globalThis._mfSSRDowngrade, + typeof globalThis._mfDataFetch, + ] extends [ + MF_DATA_FETCH_MAP | undefined, + string[] | true | undefined, + Array<[id?: string, data?: unknown, downgrade?: boolean]> | undefined, + ] + ? true + : false +>; + +test('declares data-fetch globals for TypeScript consumers', () => { + void (0 as unknown as _GlobalsDeclared); + + delete (globalThis as { __MF_DATA_FETCH_MAP__?: MF_DATA_FETCH_MAP }) + .__MF_DATA_FETCH_MAP__; + initDataFetchMap(); + expect(globalThis.__MF_DATA_FETCH_MAP__).toEqual({}); + expect(DATA_FETCH_MAP_KEY).toBe('__MF_DATA_FETCH_MAP__'); + + flushDataFetch(); + expect(globalThis.__MF_DATA_FETCH_MAP__).toEqual({}); +}); diff --git a/packages/bridge/bridge-react/__tests__/prefetch.spec.ts b/packages/data-fetch/__tests__/prefetch.spec.ts similarity index 63% rename from packages/bridge/bridge-react/__tests__/prefetch.spec.ts rename to packages/data-fetch/__tests__/prefetch.spec.ts index 5157ed4c440..be7f7fe744e 100644 --- a/packages/bridge/bridge-react/__tests__/prefetch.spec.ts +++ b/packages/data-fetch/__tests__/prefetch.spec.ts @@ -1,21 +1,34 @@ -import { prefetch } from '../src/lazy/data-fetch/prefetch'; -import * as utils from '../src/lazy/utils'; -import logger from '../src/lazy/logger'; +import { describe, it, expect, beforeEach, rs } from '@rstest/core'; +import { prefetch } from '../src/prefetch'; +import * as utils from '../src/utils'; +import logger from '../src/logger'; import helpers from '@module-federation/runtime/helpers'; -// Mock dependencies -jest.mock('../src/lazy/logger'); -jest.mock('../src/lazy/utils'); -jest.mock('@module-federation/runtime/helpers', () => ({ +rs.mock('../src/logger', () => ({ + default: { + debug: rs.fn(), + log: rs.fn(), + warn: rs.fn(), + error: rs.fn(), + }, +})); + +rs.mock('../src/utils', () => ({ + getDataFetchInfo: rs.fn(), + getDataFetchMap: rs.fn(), + getDataFetchMapKey: rs.fn(), +})); + +rs.mock('@module-federation/runtime/helpers', () => ({ default: { utils: { - matchRemoteWithNameAndExpose: jest.fn(), - getRemoteInfo: jest.fn(), + matchRemoteWithNameAndExpose: rs.fn(), + getRemoteInfo: rs.fn(), }, }, utils: { - matchRemoteWithNameAndExpose: jest.fn(), - getRemoteInfo: jest.fn(), + matchRemoteWithNameAndExpose: rs.fn(), + getRemoteInfo: rs.fn(), }, })); @@ -23,7 +36,7 @@ describe('prefetch', () => { let mockInstance: any; beforeEach(() => { - jest.clearAllMocks(); + rs.clearAllMocks(); mockInstance = { name: 'host', options: { @@ -37,13 +50,13 @@ describe('prefetch', () => { ], }, snapshotHandler: { - loadRemoteSnapshotInfo: jest.fn(), + loadRemoteSnapshotInfo: rs.fn(), }, remoteHandler: { hooks: { lifecycle: { generatePreloadAssets: { - emit: jest.fn(), + emit: rs.fn(), }, }, }, @@ -66,9 +79,9 @@ describe('prefetch', () => { }); it('should log an error if remote is not found', async () => { - (helpers.utils.matchRemoteWithNameAndExpose as jest.Mock).mockReturnValue( - undefined, - ); + ( + helpers.utils.matchRemoteWithNameAndExpose as ReturnType + ).mockReturnValue(undefined); await prefetch({ id: 'nonexistent/component', instance: mockInstance }); expect(logger.error).toHaveBeenCalledWith( `Can not found 'nonexistent/component' in instance.options.remotes!`, @@ -80,33 +93,39 @@ describe('prefetch', () => { remote: { name: 'remote1', alias: 'remote1_alias' }, expose: './component1', }; - (helpers.utils.matchRemoteWithNameAndExpose as jest.Mock).mockReturnValue( - mockRemoteInfo, - ); ( - mockInstance.snapshotHandler.loadRemoteSnapshotInfo as jest.Mock + helpers.utils.matchRemoteWithNameAndExpose as ReturnType + ).mockReturnValue(mockRemoteInfo); + ( + mockInstance.snapshotHandler.loadRemoteSnapshotInfo as ReturnType< + typeof rs.fn + > ).mockResolvedValue({ remoteSnapshot: {}, globalSnapshot: {}, }); - (helpers.utils.getRemoteInfo as jest.Mock).mockReturnValue({}); + (helpers.utils.getRemoteInfo as ReturnType).mockReturnValue( + {}, + ); - const mockDataFetchFn = jest + const mockDataFetchFn = rs .fn() .mockResolvedValue({ data: 'prefetched data' }); - const mockGetDataFetchGetter = jest.fn().mockResolvedValue(mockDataFetchFn); + const mockGetDataFetchGetter = rs.fn().mockResolvedValue(mockDataFetchFn); const mockDataFetchMap = { 'remote1_alias@remote1/component1': [ [mockGetDataFetchGetter, 'GET', undefined], ], }; - (utils.getDataFetchMap as jest.Mock).mockReturnValue(mockDataFetchMap); - (utils.getDataFetchInfo as jest.Mock).mockReturnValue({ + (utils.getDataFetchMap as ReturnType).mockReturnValue( + mockDataFetchMap, + ); + (utils.getDataFetchInfo as ReturnType).mockReturnValue({ name: 'remote1', alias: 'remote1_alias', id: 'remote1/component1', }); - (utils.getDataFetchMapKey as jest.Mock).mockReturnValue( + (utils.getDataFetchMapKey as ReturnType).mockReturnValue( 'remote1_alias@remote1/component1', ); @@ -135,16 +154,20 @@ describe('prefetch', () => { remote: { name: 'remote1', alias: 'remote1_alias' }, expose: './component1', }; - (helpers.utils.matchRemoteWithNameAndExpose as jest.Mock).mockReturnValue( - mockRemoteInfo, - ); ( - mockInstance.snapshotHandler.loadRemoteSnapshotInfo as jest.Mock + helpers.utils.matchRemoteWithNameAndExpose as ReturnType + ).mockReturnValue(mockRemoteInfo); + ( + mockInstance.snapshotHandler.loadRemoteSnapshotInfo as ReturnType< + typeof rs.fn + > ).mockResolvedValue({ remoteSnapshot: {}, globalSnapshot: {}, }); - (utils.getDataFetchMap as jest.Mock).mockReturnValue(undefined); + (utils.getDataFetchMap as ReturnType).mockReturnValue( + undefined, + ); await prefetch({ id: 'remote1/component1', diff --git a/packages/data-fetch/package.json b/packages/data-fetch/package.json new file mode 100644 index 00000000000..09b673a676d --- /dev/null +++ b/packages/data-fetch/package.json @@ -0,0 +1,91 @@ +{ + "name": "@module-federation/data-fetch", + "version": "2.8.2", + "sideEffects": false, + "publishConfig": { + "access": "public" + }, + "author": "zhouxiao ", + "license": "MIT", + "repository": { + "type": "git", + "url": "git+https://github.com/module-federation/core.git", + "directory": "packages/data-fetch" + }, + "files": [ + "dist/", + "README.md" + ], + "main": "./dist/index.cjs.js", + "module": "./dist/index.es.js", + "types": "./dist/index.d.ts", + "exports": { + ".": { + "types": "./dist/index.d.ts", + "import": "./dist/index.es.js", + "require": "./dist/index.cjs.js" + }, + "./data-fetch-utils": { + "types": "./dist/data-fetch-utils.d.ts", + "import": "./dist/data-fetch-utils.es.js", + "require": "./dist/data-fetch-utils.cjs.js" + }, + "./server-middleware": { + "types": "./dist/server-middleware.d.ts", + "import": "./dist/server-middleware.es.js", + "require": "./dist/server-middleware.cjs.js" + }, + "./size-limited-cache": { + "types": "./dist/size-limited-cache.d.ts", + "import": "./dist/size-limited-cache.es.js", + "require": "./dist/size-limited-cache.cjs.js" + }, + "./utils": { + "types": "./dist/utils.d.ts", + "import": "./dist/utils.es.js", + "require": "./dist/utils.cjs.js" + } + }, + "typesVersions": { + "*": { + ".": [ + "./dist/index.d.ts" + ], + "data-fetch-utils": [ + "./dist/data-fetch-utils.d.ts" + ], + "server-middleware": [ + "./dist/server-middleware.d.ts" + ], + "size-limited-cache": [ + "./dist/size-limited-cache.d.ts" + ], + "utils": [ + "./dist/utils.d.ts" + ] + } + }, + "scripts": { + "dev": "vite", + "build": "vite build && tsc -p tsconfig.json && node scripts/write-dts-entrypoints.mjs", + "preview": "vite preview", + "test": "rstest" + }, + "dependencies": { + "@module-federation/runtime": "workspace:*", + "@module-federation/sdk": "workspace:*" + }, + "peerDependencies": { + "hono": ">=3" + }, + "peerDependenciesMeta": { + "hono": { + "optional": true + } + }, + "devDependencies": { + "hono": "4.12.26", + "typescript": "7.0.2", + "vite": "^5.4.21" + } +} diff --git a/packages/data-fetch/rstest.config.ts b/packages/data-fetch/rstest.config.ts new file mode 100644 index 00000000000..22a4139882c --- /dev/null +++ b/packages/data-fetch/rstest.config.ts @@ -0,0 +1,17 @@ +import { defineConfig } from '@rstest/core'; + +export default defineConfig({ + source: { + define: { + __DEV__: true, + __TEST__: true, + __BROWSER__: false, + __VERSION__: '"unknown"', + __APP_VERSION__: '"0.0.0"', + }, + }, + testEnvironment: 'jsdom', + include: ['src/**/*.spec.ts', '__tests__/**/*.spec.ts'], + globals: true, + testTimeout: 10000, +}); diff --git a/packages/data-fetch/scripts/write-dts-entrypoints.mjs b/packages/data-fetch/scripts/write-dts-entrypoints.mjs new file mode 100644 index 00000000000..2a6f2331fcf --- /dev/null +++ b/packages/data-fetch/scripts/write-dts-entrypoints.mjs @@ -0,0 +1,13 @@ +import { mkdir, writeFile } from 'node:fs/promises'; +import { dirname } from 'node:path'; + +const entrypoints = { + 'dist/server-middleware.d.ts': [ + "export { default } from './data-fetch-server-middleware';", + ], +}; + +for (const [file, lines] of Object.entries(entrypoints)) { + await mkdir(dirname(file), { recursive: true }); + await writeFile(file, `${lines.join('\n')}\n`); +} diff --git a/packages/bridge/bridge-react/src/lazy/data-fetch/cache.spec.ts b/packages/data-fetch/src/cache.spec.ts similarity index 96% rename from packages/bridge/bridge-react/src/lazy/data-fetch/cache.spec.ts rename to packages/data-fetch/src/cache.spec.ts index f8a6261281c..4e7335418ba 100644 --- a/packages/bridge/bridge-react/src/lazy/data-fetch/cache.spec.ts +++ b/packages/data-fetch/src/cache.spec.ts @@ -1,5 +1,5 @@ import { beforeEach, describe, expect, it, rs } from '@rstest/core'; -import { cache, clearStore, configureCache } from './cache'; +import { cache, clearStore, configureCache } from '../src/cache'; describe('data fetch size-limited cache', () => { beforeEach(() => { diff --git a/packages/bridge/bridge-react/src/lazy/data-fetch/cache.ts b/packages/data-fetch/src/cache.ts similarity index 98% rename from packages/bridge/bridge-react/src/lazy/data-fetch/cache.ts rename to packages/data-fetch/src/cache.ts index e24bdc6c178..f0c8c0463ed 100644 --- a/packages/bridge/bridge-react/src/lazy/data-fetch/cache.ts +++ b/packages/data-fetch/src/cache.ts @@ -1,12 +1,12 @@ -import { SizeLimitedCache } from '../../shared/size-limited-cache'; -import { getDataFetchCache } from '../utils'; +import { SizeLimitedCache } from './size-limited-cache'; +import { getDataFetchCache } from './utils'; import type { CacheConfig, CacheItem, DataFetch, DataFetchParams, -} from '../types'; +} from './types'; export const CacheSize = { KB: 1024, diff --git a/packages/bridge/bridge-react/src/lazy/data-fetch/call-data-fetch.ts b/packages/data-fetch/src/call-data-fetch.ts similarity index 85% rename from packages/bridge/bridge-react/src/lazy/data-fetch/call-data-fetch.ts rename to packages/data-fetch/src/call-data-fetch.ts index b3aeb6849ec..a555fa1266b 100644 --- a/packages/bridge/bridge-react/src/lazy/data-fetch/call-data-fetch.ts +++ b/packages/data-fetch/src/call-data-fetch.ts @@ -1,4 +1,4 @@ -import { DATA_FETCH_FUNCTION } from '../constant'; +import { DATA_FETCH_FUNCTION } from './constant'; import { dataFetchFunction } from './inject-data-fetch'; export async function callDataFetch() { diff --git a/packages/data-fetch/src/constant.ts b/packages/data-fetch/src/constant.ts new file mode 100644 index 00000000000..f32a25d974d --- /dev/null +++ b/packages/data-fetch/src/constant.ts @@ -0,0 +1,25 @@ +export const PLUGIN_IDENTIFIER = '[ Module Federation Data Fetch ]'; +export const DOWNGRADE_KEY = '_mfSSRDowngrade'; +export const DATA_FETCH_MAP_KEY = '__MF_DATA_FETCH_MAP__'; +export const DATA_FETCH_FUNCTION = '_mfDataFetch'; +export const FS_HREF = '_mfFSHref'; +export const WRAP_DATA_FETCH_ID_IDENTIFIER = 'wrap_dfip_identifier'; +export const enum MF_DATA_FETCH_TYPE { + FETCH_SERVER = 1, + FETCH_CLIENT = 2, +} + +export const enum MF_DATA_FETCH_STATUS { + LOADED = 1, + LOADING = 2, + AWAIT = 0, + ERROR = 3, +} + +export const DATA_FETCH_IDENTIFIER = 'data'; +export const DATA_FETCH_CLIENT_SUFFIX = '.client'; +export const DATA_FETCH_QUERY = 'x-mf-data-fetch'; +export const DATA_FETCH_ERROR_PREFIX = + 'caught the following error during dataFetch: '; +export const LOAD_REMOTE_ERROR_PREFIX = + 'caught the following error during loadRemote: '; diff --git a/packages/data-fetch/src/data-fetch-server-middleware.ts b/packages/data-fetch/src/data-fetch-server-middleware.ts new file mode 100644 index 00000000000..209f978f060 --- /dev/null +++ b/packages/data-fetch/src/data-fetch-server-middleware.ts @@ -0,0 +1,196 @@ +import { DATA_FETCH_QUERY, MF_DATA_FETCH_STATUS } from './constant'; +import { + getDataFetchMap, + fetchData, + initDataFetchMap, + loadDataFetchModule, +} from './utils'; +import { SEPARATOR, MANIFEST_EXT } from '@module-federation/sdk'; +import logger from './logger'; + +import type { NoSSRRemoteInfo } from './types'; +import type { MiddlewareHandler } from 'hono'; + +function wrapSetTimeout( + targetPromise: Promise, + delay = 20000, + id: string, +) { + if (targetPromise && typeof targetPromise.then === 'function') { + return new Promise((resolve, reject) => { + const timeoutId = setTimeout(() => { + logger.warn(`Data fetch for ID ${id} timed out after 20 seconds.`); + reject(new Error(`Data fetch for ID ${id} timed out after 20 seconds`)); + }, delay); + + targetPromise + .then((value: any) => { + clearTimeout(timeoutId); + resolve(value); + }) + .catch((err: any) => { + clearTimeout(timeoutId); + reject(err); + }); + }); + } +} + +function addProtocol(url: string) { + if (url.startsWith('//')) { + return 'https:' + url; + } + return url; +} + +const getDecodeQuery = (url: URL, name: string) => { + const res = url.searchParams.get(name); + if (!res) { + return null; + } + return decodeURIComponent(res); +}; + +const dataFetchServerMiddleware: MiddlewareHandler = async (ctx, next) => { + let url: URL; + let dataFetchKey: string | null; + let params: Record; + let remoteInfo: NoSSRRemoteInfo; + try { + url = new URL(ctx.req.url); + dataFetchKey = getDecodeQuery(url, DATA_FETCH_QUERY); + params = JSON.parse(getDecodeQuery(url, 'params') || '{}'); + const remoteInfoQuery = getDecodeQuery(url, 'remoteInfo'); + remoteInfo = remoteInfoQuery ? JSON.parse(remoteInfoQuery) : null; + } catch (e) { + logger.error('fetch data from server, error: ', e); + return next(); + } + + if (!dataFetchKey) { + return next(); + } + logger.log('fetch data from server, dataFetchKey: ', dataFetchKey); + logger.debug( + 'fetch data from server, moduleInfo: ', + globalThis.__FEDERATION__?.moduleInfo, + ); + try { + const dataFetchMap = getDataFetchMap(); + if (!dataFetchMap) { + initDataFetchMap(); + } + const fetchDataPromise = dataFetchMap[dataFetchKey]?.[1]; + logger.debug( + 'fetch data from server, fetchDataPromise: ', + fetchDataPromise, + ); + if ( + fetchDataPromise && + dataFetchMap[dataFetchKey]?.[2] !== MF_DATA_FETCH_STATUS.ERROR + ) { + const targetPromise = fetchDataPromise[0]; + // Ensure targetPromise is thenable + const wrappedPromise = wrapSetTimeout(targetPromise, 20000, dataFetchKey); + if (wrappedPromise) { + const res = await wrappedPromise; + logger.log('fetch data from server, fetchDataPromise res: ', res); + return ctx.json(res); + } + logger.error( + `Expected a Promise from fetchDataPromise[0] for dataFetchKey ${dataFetchKey}, but received:`, + targetPromise, + 'Will try call new dataFetch again...', + ); + } + + if (remoteInfo) { + try { + const hostInstance = globalThis.__FEDERATION__.__INSTANCES__[0]; + const remoteEntry = `${addProtocol(remoteInfo.ssrPublicPath) + remoteInfo.ssrRemoteEntry}`; + if (!hostInstance) { + throw new Error('host instance not found!'); + } + const remote = hostInstance.options.remotes.find( + (entry: { name: string }) => entry.name === remoteInfo.name, + ); + logger.debug('find remote: ', JSON.stringify(remote)); + if (!remote) { + hostInstance.registerRemotes([ + { + name: remoteInfo.name, + entry: remoteEntry, + entryGlobalName: remoteInfo.globalName, + }, + ]); + } else if ( + !('entry' in remote) || + !remote.entry.includes(MANIFEST_EXT) + ) { + const { hostGlobalSnapshot, remoteSnapshot } = + hostInstance.snapshotHandler.getGlobalRemoteInfo(remoteInfo); + logger.debug( + 'find hostGlobalSnapshot: ', + JSON.stringify(hostGlobalSnapshot), + ); + logger.debug('find remoteSnapshot: ', JSON.stringify(remoteSnapshot)); + + if (!hostGlobalSnapshot || !remoteSnapshot) { + if ('version' in remote) { + // @ts-ignore + delete remote.version; + } + // @ts-ignore + remote.entry = remoteEntry; + remote.entryGlobalName = remoteInfo.globalName; + } + } + } catch (e) { + ctx.status(500); + return ctx.text( + `failed to fetch ${remoteInfo.name} data, error:\n ${e}`, + ); + } + } + + const dataFetchItem = dataFetchMap[dataFetchKey]; + logger.debug('fetch data from server, dataFetchItem: ', dataFetchItem); + if (dataFetchItem) { + const callFetchDataPromise = fetchData(dataFetchKey, { + ...params, + isDowngrade: !remoteInfo, + _id: dataFetchKey, + }); + const wrappedPromise = wrapSetTimeout( + callFetchDataPromise, + 20000, + dataFetchKey, + ); + if (wrappedPromise) { + const res = await wrappedPromise; + logger.log('fetch data from server, dataFetchItem res: ', res); + return ctx.json(res); + } + } + + const remoteId = dataFetchKey.split(SEPARATOR)[0]; + const hostInstance = globalThis.__FEDERATION__.__INSTANCES__[0]; + if (!hostInstance) { + throw new Error('host instance not found!'); + } + const dataFetchFn = await loadDataFetchModule(hostInstance, remoteId); + const data = await dataFetchFn({ + ...params, + isDowngrade: !remoteInfo, + _id: dataFetchKey, + }); + logger.log('fetch data from server, loadDataFetchModule res: ', data); + return ctx.json(data); + } catch (e) { + logger.error('server plugin data fetch error: ', e); + ctx.status(500); + return ctx.text(`failed to fetch ${remoteInfo.name} data, error:\n ${e}`); + } +}; + +export default dataFetchServerMiddleware; diff --git a/packages/data-fetch/src/data-fetch-utils.ts b/packages/data-fetch/src/data-fetch-utils.ts new file mode 100644 index 00000000000..db35110e60f --- /dev/null +++ b/packages/data-fetch/src/data-fetch-utils.ts @@ -0,0 +1,16 @@ +export { callDataFetch } from './call-data-fetch'; +export { injectDataFetch } from './inject-data-fetch'; +export { + CacheSize, + CacheTime, + configureCache, + generateKey, + cache, + revalidateTag, + clearStore, +} from './cache'; + +export type { CacheStatus, CacheStatsInfo } from './cache'; + +export type { PrefetchOptions } from './prefetch'; +export { prefetch } from './prefetch'; diff --git a/packages/data-fetch/src/env.d.ts b/packages/data-fetch/src/env.d.ts new file mode 100644 index 00000000000..aa615ba4a66 --- /dev/null +++ b/packages/data-fetch/src/env.d.ts @@ -0,0 +1,8 @@ +import type { ModuleFederation } from '@module-federation/runtime'; + +declare global { + var __FEDERATION__: { + moduleInfo?: unknown; + __INSTANCES__: ModuleFederation[]; + }; +} diff --git a/packages/data-fetch/src/index.ts b/packages/data-fetch/src/index.ts new file mode 100644 index 00000000000..d278bca8375 --- /dev/null +++ b/packages/data-fetch/src/index.ts @@ -0,0 +1,55 @@ +export { default as autoFetchDataPlugin } from './runtime-plugin'; +export { callDataFetch } from './call-data-fetch'; +export { injectDataFetch } from './inject-data-fetch'; +export { + CacheSize, + CacheTime, + configureCache, + generateKey, + cache, + revalidateTag, + clearStore, +} from './cache'; +export type { CacheStatus, CacheStatsInfo } from './cache'; +export { prefetch } from './prefetch'; +export type { PrefetchOptions } from './prefetch'; +export { + flushDataFetch, + setSSREnv, + getDataFetchInfo, + initDataFetchMap, + getDataFetchItem, + getDataFetchMap, + getDataFetchCache, + setDataFetchItemLoadedStatus, + wrapDataFetchId, + getDataFetchIdWithErrorMsgs, + fetchData, + getDataFetchMapKey, + loadDataFetchModule, + isDataLoaderExpose, + getDowngradeTag, + callAllDowngrade, + callDowngrade, + isCSROnly, + isServerEnv, + getLoadedRemoteInfos, +} from './utils'; +export { + DATA_FETCH_ERROR_PREFIX, + LOAD_REMOTE_ERROR_PREFIX, + DATA_FETCH_FUNCTION, + FS_HREF, + MF_DATA_FETCH_TYPE, + DATA_FETCH_IDENTIFIER, + DATA_FETCH_CLIENT_SUFFIX, + DATA_FETCH_QUERY, + WRAP_DATA_FETCH_ID_IDENTIFIER, +} from './constant'; +export type { + DataFetchParams, + NoSSRRemoteInfo, + DataFetch, + CacheConfig, + MF_DATA_FETCH_MAP, +} from './types'; diff --git a/packages/bridge/bridge-react/src/lazy/data-fetch/inject-data-fetch.ts b/packages/data-fetch/src/inject-data-fetch.ts similarity index 96% rename from packages/bridge/bridge-react/src/lazy/data-fetch/inject-data-fetch.ts rename to packages/data-fetch/src/inject-data-fetch.ts index bc654551df6..eb68909d634 100644 --- a/packages/bridge/bridge-react/src/lazy/data-fetch/inject-data-fetch.ts +++ b/packages/data-fetch/src/inject-data-fetch.ts @@ -4,12 +4,12 @@ import { FS_HREF, MF_DATA_FETCH_STATUS, MF_DATA_FETCH_TYPE, -} from '../constant'; -import logger from '../logger'; +} from './constant'; +import logger from './logger'; import { dataFetchFunctionOptions, MF_DATA_FETCH_MAP_VALUE_PROMISE_SET, -} from '../types'; +} from './types'; import { callAllDowngrade, callDowngrade, @@ -17,7 +17,7 @@ import { getDataFetchMap, getDowngradeTag, initDataFetchMap, -} from '../utils'; +} from './utils'; const dataFetchFunction = async function (options: dataFetchFunctionOptions) { const [id, data, downgrade] = options; diff --git a/packages/data-fetch/src/logger.ts b/packages/data-fetch/src/logger.ts new file mode 100644 index 00000000000..c1be3252163 --- /dev/null +++ b/packages/data-fetch/src/logger.ts @@ -0,0 +1,6 @@ +import { createLogger } from '@module-federation/sdk'; +import { PLUGIN_IDENTIFIER } from './constant'; + +const logger = createLogger(PLUGIN_IDENTIFIER); + +export default logger; diff --git a/packages/bridge/bridge-react/src/lazy/data-fetch/prefetch.ts b/packages/data-fetch/src/prefetch.ts similarity index 94% rename from packages/bridge/bridge-react/src/lazy/data-fetch/prefetch.ts rename to packages/data-fetch/src/prefetch.ts index aa491eee5ca..44cfac5525a 100644 --- a/packages/bridge/bridge-react/src/lazy/data-fetch/prefetch.ts +++ b/packages/data-fetch/src/prefetch.ts @@ -1,12 +1,8 @@ import type { getInstance } from '@module-federation/runtime'; -import { - getDataFetchInfo, - getDataFetchMap, - getDataFetchMapKey, -} from '../utils'; -import logger from '../logger'; +import { getDataFetchInfo, getDataFetchMap, getDataFetchMapKey } from './utils'; +import logger from './logger'; import helpers from '@module-federation/runtime/helpers'; -import { DataFetchParams } from '../types'; +import { DataFetchParams } from './types'; export type PrefetchOptions = { id: string; diff --git a/packages/bridge/bridge-react/src/lazy/data-fetch/runtime-plugin.ts b/packages/data-fetch/src/runtime-plugin.ts similarity index 95% rename from packages/bridge/bridge-react/src/lazy/data-fetch/runtime-plugin.ts rename to packages/data-fetch/src/runtime-plugin.ts index 47a6d956e48..4e9468bf8c8 100644 --- a/packages/bridge/bridge-react/src/lazy/data-fetch/runtime-plugin.ts +++ b/packages/data-fetch/src/runtime-plugin.ts @@ -9,15 +9,15 @@ import { isDataLoaderExpose, loadDataFetchModule, isServerEnv, -} from '../utils'; -import logger from '../logger'; +} from './utils'; +import logger from './logger'; import { MF_DATA_FETCH_TYPE, MF_DATA_FETCH_STATUS, DATA_FETCH_CLIENT_SUFFIX, -} from '../constant'; +} from './constant'; -import type { MF_DATA_FETCH_MAP_VALUE } from '../types'; +import type { MF_DATA_FETCH_MAP_VALUE } from './types'; import type { ModuleFederationRuntimePlugin } from '@module-federation/runtime'; const autoFetchData: () => ModuleFederationRuntimePlugin = () => { diff --git a/packages/bridge/bridge-react/src/shared/size-limited-cache.spec.ts b/packages/data-fetch/src/size-limited-cache.spec.ts similarity index 97% rename from packages/bridge/bridge-react/src/shared/size-limited-cache.spec.ts rename to packages/data-fetch/src/size-limited-cache.spec.ts index b815c62453a..a887baa2c80 100644 --- a/packages/bridge/bridge-react/src/shared/size-limited-cache.spec.ts +++ b/packages/data-fetch/src/size-limited-cache.spec.ts @@ -1,5 +1,5 @@ import { describe, expect, it } from '@rstest/core'; -import { SizeLimitedCache } from './size-limited-cache'; +import { SizeLimitedCache } from '../src/size-limited-cache'; describe('SizeLimitedCache', () => { it('evicts the least recently used entries by total size', () => { diff --git a/packages/data-fetch/src/size-limited-cache.ts b/packages/data-fetch/src/size-limited-cache.ts new file mode 100644 index 00000000000..a43c0f84d68 --- /dev/null +++ b/packages/data-fetch/src/size-limited-cache.ts @@ -0,0 +1,115 @@ +export interface SizeLimitedCacheOptions { + maxSize: number; + sizeCalculation?: (value: V, key: K) => number; +} + +export interface SizeLimitedCacheSetOptions { + size?: number; +} + +interface CacheEntry { + value: V; + size: number; +} + +/** + * A small, size-aware least-recently-used cache. + * + * This intentionally implements only the operations used by federation + * packages. Reading or checking an entry refreshes its recency. + */ +export class SizeLimitedCache { + readonly maxSize: number; + + private readonly entries = new Map>(); + private readonly sizeCalculation?: (value: V, key: K) => number; + private currentSize = 0; + + constructor(options: SizeLimitedCacheOptions) { + if (!Number.isInteger(options.maxSize) || options.maxSize <= 0) { + throw new TypeError('maxSize must be a positive integer'); + } + + this.maxSize = options.maxSize; + this.sizeCalculation = options.sizeCalculation; + } + + get size(): number { + return this.entries.size; + } + + get calculatedSize(): number { + return this.currentSize; + } + + get(key: K): V | undefined { + const entry = this.entries.get(key); + if (!entry) { + return undefined; + } + + this.refresh(key, entry); + return entry.value; + } + + has(key: K): boolean { + const entry = this.entries.get(key); + if (!entry) { + return false; + } + + this.refresh(key, entry); + return true; + } + + set(key: K, value: V, options: SizeLimitedCacheSetOptions = {}): this { + const entrySize = options.size ?? this.sizeCalculation?.(value, key) ?? 1; + + if (!Number.isInteger(entrySize) || entrySize <= 0) { + throw new TypeError('entry size must be a positive integer'); + } + + this.delete(key); + + if (entrySize > this.maxSize) { + return this; + } + + this.entries.set(key, { value, size: entrySize }); + this.currentSize += entrySize; + this.evictUntilWithinLimit(); + + return this; + } + + delete(key: K): boolean { + const entry = this.entries.get(key); + if (!entry) { + return false; + } + + this.currentSize -= entry.size; + return this.entries.delete(key); + } + + clear(): void { + this.entries.clear(); + this.currentSize = 0; + } + + private refresh(key: K, entry: CacheEntry): void { + this.entries.delete(key); + this.entries.set(key, entry); + } + + private evictUntilWithinLimit(): void { + while (this.currentSize > this.maxSize) { + const oldest = this.entries.keys().next(); + if (oldest.done) { + this.currentSize = 0; + return; + } + this.delete(oldest.value); + } + } +} diff --git a/packages/data-fetch/src/types.ts b/packages/data-fetch/src/types.ts new file mode 100644 index 00000000000..a4cc03ff0bd --- /dev/null +++ b/packages/data-fetch/src/types.ts @@ -0,0 +1,75 @@ +import { MF_DATA_FETCH_TYPE, MF_DATA_FETCH_STATUS } from './constant'; +import type { SizeLimitedCache } from './size-limited-cache'; + +export type dataFetchFunctionOptions = [ + id?: string, + data?: unknown, + downgrade?: boolean, +]; + +declare global { + var _mfSSRDowngrade: string[] | true | undefined; + var __MF_DATA_FETCH_MAP__: MF_DATA_FETCH_MAP | undefined; + var FEDERATION_SERVER_QUERY: Record | undefined; + var FEDERATION_SSR: boolean | undefined; + var _mfFSHref: string | undefined; + var _mfDataFetch: Array | undefined; + var __MF_DATA_FETCH_CACHE__: MF_DATA_FETCH_CACHE | undefined; +} + +export interface CacheItem { + data: T; + timestamp: number; + isRevalidating?: boolean; +} + +export type DataFetchParams = { + isDowngrade: boolean; + _id?: string; +} & Record; +export type DataFetch = (params: DataFetchParams) => Promise; + +// loading, resolve, reject +export type MF_DATA_FETCH_MAP_VALUE_PROMISE_SET = [ + Promise, + ((data: unknown) => void)?, + ((err: unknown) => void)?, +]; +export type MF_DATA_FETCH_MAP_VALUE = [ + [ + // getDataFetchGetter + () => Promise>, + // data fetch type + MF_DATA_FETCH_TYPE, + // getDataFetchPromise + Promise>?, + ], + MF_DATA_FETCH_MAP_VALUE_PROMISE_SET?, + MF_DATA_FETCH_STATUS?, +]; +export type MF_DATA_FETCH_MAP = Record; +export type MF_SSR_DOWNGRADE = string[] | true | undefined; + +export type NoSSRRemoteInfo = { + name: string; + version: string; + ssrPublicPath: string; + ssrRemoteEntry: string; + globalName: string; +}; + +export interface CacheConfig { + maxSize?: number; + unstable_shouldDisable?: ({ + request, + }: { + request: Request; + }) => boolean | Promise; +} + +// key is the id, default is the same with dataFetchMapId, but it can be custom by passing dataFetchParams.id +export type MF_DATA_FETCH_CACHE = { + cacheStore?: SizeLimitedCache>>; + tagKeyMap?: Map>; + cacheConfig?: CacheConfig; +}; diff --git a/packages/data-fetch/src/utils.ts b/packages/data-fetch/src/utils.ts new file mode 100644 index 00000000000..19f2794efa5 --- /dev/null +++ b/packages/data-fetch/src/utils.ts @@ -0,0 +1,375 @@ +import { + isBrowserEnvValue, + composeKeyWithSeparator, +} from '@module-federation/sdk'; +import logger from './logger'; +import { + DOWNGRADE_KEY, + MF_DATA_FETCH_STATUS, + WRAP_DATA_FETCH_ID_IDENTIFIER, + DATA_FETCH_QUERY, + MF_DATA_FETCH_TYPE, + DATA_FETCH_IDENTIFIER, + DATA_FETCH_CLIENT_SUFFIX, +} from './constant'; + +import type { GlobalModuleInfo } from '@module-federation/sdk'; +import type { + DataFetchParams, + MF_DATA_FETCH_MAP, + NoSSRRemoteInfo, + MF_SSR_DOWNGRADE, + MF_DATA_FETCH_MAP_VALUE_PROMISE_SET, + MF_DATA_FETCH_CACHE, +} from './types'; +import type { ModuleFederation } from '@module-federation/runtime'; +import { clearStore } from './cache'; + +export const getDataFetchInfo = ({ + name, + alias, + id, + remoteSnapshot, +}: { + id: string; + name: string; + remoteSnapshot: GlobalModuleInfo[string]; + alias?: string; +}) => { + if (!remoteSnapshot) { + return; + } + if (!('modules' in remoteSnapshot)) { + return; + } + const regex = new RegExp(`^${name}(/[^/].*|)$`); + const nameOrAlias = regex.test(id) ? name : alias || name; + + const expose = id.replace(nameOrAlias, ''); + let dataFetchName = ''; + let dataFetchId = ''; + let dataFetchKey = ''; + if (expose.startsWith('/')) { + dataFetchName = `${expose.slice(1)}.${DATA_FETCH_IDENTIFIER}`; + dataFetchId = `${id}.${DATA_FETCH_IDENTIFIER}`; + dataFetchKey = `${name}${expose}.${DATA_FETCH_IDENTIFIER}`; + } else if (expose === '') { + dataFetchName = DATA_FETCH_IDENTIFIER; + dataFetchId = `${id}/${DATA_FETCH_IDENTIFIER}`; + dataFetchKey = `${name}/${DATA_FETCH_IDENTIFIER}`; + } else { + return; + } + + if (!dataFetchName || !dataFetchId || !dataFetchKey) { + return; + } + + if ( + !remoteSnapshot.modules.find( + (module: { moduleName: string }) => module.moduleName === dataFetchName, + ) + ) { + return; + } + + return { + dataFetchName, + dataFetchId, + dataFetchKey, + }; +}; + +export function initDataFetchMap() { + globalThis.__MF_DATA_FETCH_MAP__ ||= {}; +} + +export function getDataFetchItem(id: string) { + return (globalThis.__MF_DATA_FETCH_MAP__ as MF_DATA_FETCH_MAP)?.[id]; +} + +export function getDataFetchMap() { + return globalThis.__MF_DATA_FETCH_MAP__ as MF_DATA_FETCH_MAP; +} + +export function getDataFetchCache() { + return globalThis.__MF_DATA_FETCH_CACHE__ as MF_DATA_FETCH_CACHE; +} + +export const flushDataFetch = () => { + globalThis.__MF_DATA_FETCH_MAP__ = {}; + globalThis[DOWNGRADE_KEY] = undefined; + clearStore(); +}; + +export function setDataFetchItemLoadedStatus(id: string) { + const dataFetchItem = getDataFetchItem(id); + if (!dataFetchItem) { + return; + } + dataFetchItem[2] = MF_DATA_FETCH_STATUS.LOADED; +} + +export const wrapDataFetchId = (id?: string) => { + return `${WRAP_DATA_FETCH_ID_IDENTIFIER}${id}${WRAP_DATA_FETCH_ID_IDENTIFIER}`; +}; + +export const getDataFetchIdWithErrorMsgs = (errMsgs: string) => { + const firstIdentifierIndex = errMsgs.indexOf(WRAP_DATA_FETCH_ID_IDENTIFIER); + if (firstIdentifierIndex === -1) { + return undefined; + } + + const secondIdentifierIndex = errMsgs.indexOf( + WRAP_DATA_FETCH_ID_IDENTIFIER, + firstIdentifierIndex + WRAP_DATA_FETCH_ID_IDENTIFIER.length, + ); + + if (secondIdentifierIndex === -1) { + return undefined; + } + + return errMsgs.substring( + firstIdentifierIndex + WRAP_DATA_FETCH_ID_IDENTIFIER.length, + secondIdentifierIndex, + ); +}; + +export async function fetchData( + id: string, + params: DataFetchParams, + remoteInfo?: NoSSRRemoteInfo, +): Promise { + const callFetchData = async () => { + const item = getDataFetchItem(id); + if (!item) { + return; + } + const [fetchDataFnArr, ..._rest] = item; + + const fetchDataFn = await fetchDataFnArr[2]; + if (!fetchDataFn) { + return; + } + return fetchDataFn({ + ...params, + _id: id, + }); + }; + if (isBrowserEnvValue) { + const dataFetchItem = getDataFetchItem(id); + if (!dataFetchItem) { + throw new Error(`dataFetchItem not found, id: ${id}`); + } + if (dataFetchItem[1]?.[0]) { + return dataFetchItem[1][0]; + } + + if (isCSROnly()) { + logger.debug('==========csr only!'); + return callFetchData(); + } + + if (remoteInfo) { + return callDowngrade(id, params, remoteInfo); + } + + const mfDowngrade = getDowngradeTag(); + if ( + mfDowngrade && + (typeof mfDowngrade === 'boolean' || mfDowngrade.includes(id)) + ) { + return callDowngrade(id, { ...params, isDowngrade: true }); + } + + let res; + let rej; + const p = new Promise((resolve, reject) => { + res = resolve; + rej = reject; + }); + dataFetchItem[1] = [p, res, rej]; + dataFetchItem[2] = MF_DATA_FETCH_STATUS.AWAIT; + return dataFetchItem[1][0]; + } + + return callFetchData(); +} + +export function getDataFetchMapKey( + dataFetchInfo?: ReturnType, + hostInfo?: { name: string; version?: string }, +) { + if (!dataFetchInfo || !hostInfo) { + return; + } + + const { dataFetchKey } = dataFetchInfo; + + return composeKeyWithSeparator(dataFetchKey, hostInfo.name, hostInfo.version); +} + +export async function loadDataFetchModule( + instance: ModuleFederation, + id: string, +) { + return instance.loadRemote(id).then((m: unknown) => { + if ( + m && + typeof m === 'object' && + 'fetchData' in m && + typeof m.fetchData === 'function' + ) { + return m.fetchData as (params: DataFetchParams) => Promise; + } + throw new Error( + `fetchData not found in remote ${id}, ${JSON.stringify(m)}`, + ); + }); +} + +export function isDataLoaderExpose(exposeKey: string) { + return ( + exposeKey.endsWith(DATA_FETCH_IDENTIFIER) || + exposeKey.endsWith(DATA_FETCH_CLIENT_SUFFIX) + ); +} + +export function getDowngradeTag() { + return globalThis[DOWNGRADE_KEY] as MF_SSR_DOWNGRADE; +} + +export function callAllDowngrade() { + const dataFetchMap = getDataFetchMap(); + if (!dataFetchMap) { + return; + } + Object.keys(dataFetchMap).forEach((key) => { + callDowngrade(key); + }); +} + +export async function callDowngrade( + id: string, + params?: DataFetchParams, + remoteInfo?: NoSSRRemoteInfo, +) { + const dataFetchMap = getDataFetchMap(); + if (!dataFetchMap) { + return; + } + const mfDataFetch = dataFetchMap[id]; + if (mfDataFetch?.[2] === MF_DATA_FETCH_STATUS.AWAIT) { + mfDataFetch[2] = MF_DATA_FETCH_STATUS.LOADING; + let promise: MF_DATA_FETCH_MAP_VALUE_PROMISE_SET[0]; + let res: MF_DATA_FETCH_MAP_VALUE_PROMISE_SET[1]; + let rej: MF_DATA_FETCH_MAP_VALUE_PROMISE_SET[2]; + if (mfDataFetch[1]) { + promise = mfDataFetch[1][0]; + res = mfDataFetch[1][1]; + rej = mfDataFetch[1][2]; + } else { + promise = new Promise((resolve, reject) => { + res = resolve; + rej = reject; + }); + mfDataFetch[1] = [promise, res, rej]; + } + const dataFetchType = mfDataFetch[0][1]; + if (dataFetchType === MF_DATA_FETCH_TYPE.FETCH_CLIENT) { + try { + mfDataFetch[0][0]().then(async (getDataFetchFn) => { + return getDataFetchFn({ + ...params, + isDowngrade: true, + _id: id, + }).then((data) => { + mfDataFetch[2] = MF_DATA_FETCH_STATUS.LOADED; + res && res(data); + }); + }); + } catch (e) { + mfDataFetch[2] = MF_DATA_FETCH_STATUS.ERROR; + rej && rej(e); + } + } else if (dataFetchType === MF_DATA_FETCH_TYPE.FETCH_SERVER) { + try { + const currentUrl = new URL(window.location.href); + currentUrl.searchParams.set(DATA_FETCH_QUERY, encodeURIComponent(id)); + if (params) { + currentUrl.searchParams.set( + 'params', + encodeURIComponent(JSON.stringify(params)), + ); + } + if (remoteInfo) { + currentUrl.searchParams.set( + 'remoteInfo', + encodeURIComponent(JSON.stringify(remoteInfo)), + ); + } + const fetchServerQuery = globalThis.FEDERATION_SERVER_QUERY; + if (fetchServerQuery && typeof fetchServerQuery === 'object') { + Object.keys(fetchServerQuery).forEach((key) => { + currentUrl.searchParams.set( + key, + JSON.stringify(fetchServerQuery[key]), + ); + }); + } + const fetchUrl = currentUrl.toString(); + const data = await fetch(fetchUrl).then((res) => res.json()); + mfDataFetch[2] = MF_DATA_FETCH_STATUS.LOADED; + res && res(data); + } catch (e) { + mfDataFetch[2] = MF_DATA_FETCH_STATUS.ERROR; + rej && rej(e); + } + } + + return promise; + } +} + +export function isCSROnly() { + // @ts-ignore modern.js will inject window._SSR_DATA if enable ssr + return window._SSR_DATA === undefined; +} + +export function isServerEnv() { + return typeof window === 'undefined'; +} + +export function setSSREnv({ + fetchServerQuery, +}: { + fetchServerQuery?: Record; +}) { + globalThis.FEDERATION_SSR = true; + globalThis.FEDERATION_SERVER_QUERY = fetchServerQuery; +} + +export function getLoadedRemoteInfos( + id: string, + instance: ModuleFederation | null, +) { + if (!instance) { + return; + } + const { name, expose } = instance.remoteHandler.idToRemoteMap[id] || {}; + if (!name) { + return; + } + const module = instance.moduleCache.get(name); + if (!module) { + return; + } + const { remoteSnapshot } = instance.snapshotHandler.getGlobalRemoteInfo( + module.remoteInfo, + ); + return { + ...module.remoteInfo, + snapshot: remoteSnapshot, + expose, + }; +} diff --git a/packages/data-fetch/tsconfig.json b/packages/data-fetch/tsconfig.json new file mode 100644 index 00000000000..f8266aa16c1 --- /dev/null +++ b/packages/data-fetch/tsconfig.json @@ -0,0 +1,25 @@ +{ + "compilerOptions": { + "useDefineForClassFields": true, + "allowImportingTsExtensions": true, + "resolveJsonModule": true, + "rootDir": "./src", + "module": "commonjs", + "target": "es2015", + "noUnusedLocals": true, + "noUnusedParameters": true, + "noFallthroughCasesInSwitch": true, + "declaration": true, + "emitDeclarationOnly": true, + "outDir": "dist", + "skipLibCheck": true, + "strict": true, + "lib": ["esnext", "dom"], + "esModuleInterop": true, + "allowSyntheticDefaultImports": true, + "sourceMap": true, + "ignoreDeprecations": "6.0" + }, + "include": ["src/**/*.ts", "src/**/*.d.ts"], + "exclude": ["**/*.spec.ts", "**/__tests__/**"] +} diff --git a/packages/data-fetch/vite.config.ts b/packages/data-fetch/vite.config.ts new file mode 100644 index 00000000000..0050cd75273 --- /dev/null +++ b/packages/data-fetch/vite.config.ts @@ -0,0 +1,39 @@ +import { defineConfig } from 'vite'; +import path from 'path'; +import packageJson from './package.json'; + +const peerDepsKeys = Object.keys(packageJson.peerDependencies ?? {}); +const dependencyKeys = Object.keys(packageJson.dependencies ?? {}); + +export default defineConfig({ + build: { + lib: { + entry: { + index: path.resolve(__dirname, 'src/index.ts'), + 'data-fetch-utils': path.resolve(__dirname, 'src/data-fetch-utils.ts'), + 'server-middleware': path.resolve( + __dirname, + 'src/data-fetch-server-middleware.ts', + ), + utils: path.resolve(__dirname, 'src/utils.ts'), + 'size-limited-cache': path.resolve( + __dirname, + 'src/size-limited-cache.ts', + ), + }, + formats: ['cjs', 'es'], + fileName: (format, entryName) => `${entryName}.${format}.js`, + }, + rollupOptions: { + external: [ + ...peerDepsKeys, + ...dependencyKeys, + '@module-federation/runtime/helpers', + ], + }, + minify: false, + }, + define: { + __APP_VERSION__: JSON.stringify(packageJson.version), + }, +}); diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index a9703668c97..7308471755e 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -1091,7 +1091,7 @@ importers: version: 7.28.2 '@modern-js/runtime': specifier: 3.5.0 - version: 3.5.0(@module-federation/runtime-tools@2.8.2)(core-js@3.49.0)(react-dom@18.3.1(react@18.3.1))(react-server-dom-rspack@0.0.2(@rspack/core@1.3.9(@swc/helpers@0.5.23))(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react@18.3.1) + version: 3.5.0(@module-federation/runtime-tools@2.8.2)(core-js@3.49.0)(react-dom@18.3.1(react@18.3.1))(react-server-dom-rspack@0.0.2(@rspack/core@2.1.8(@module-federation/runtime-tools@2.8.2)(@swc/helpers@0.5.23))(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react@18.3.1) '@module-federation/modern-js-v3': specifier: workspace:* version: link:../../../packages/modernjs-v3 @@ -1110,7 +1110,7 @@ importers: version: 2.59.0(typescript@7.0.2) '@modern-js/app-tools': specifier: 3.5.0 - version: 3.5.0(@module-federation/runtime-tools@2.8.2)(@rspack/core@1.3.9(@swc/helpers@0.5.23))(core-js@3.49.0)(encoding@0.1.13)(esbuild@0.28.1)(react-dom@18.3.1(react@18.3.1))(react-server-dom-rspack@0.0.2(@rspack/core@1.3.9(@swc/helpers@0.5.23))(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react@18.3.1)(rollup@4.62.2)(ts-node@10.9.2(@swc/core@1.15.41(@swc/helpers@0.5.23))(@types/node@20.19.5)(typescript@7.0.2))(tsconfig-paths@4.2.0)(tslib@2.8.1)(typescript@7.0.2)(webpack@5.104.1(@swc/core@1.15.41(@swc/helpers@0.5.23))(esbuild@0.28.1)(webpack-cli@5.1.4)) + version: 3.5.0(@module-federation/runtime-tools@2.8.2)(@rspack/core@2.1.8(@module-federation/runtime-tools@2.8.2)(@swc/helpers@0.5.23))(core-js@3.49.0)(encoding@0.1.13)(esbuild@0.28.1)(react-dom@18.3.1(react@18.3.1))(react-server-dom-rspack@0.0.2(@rspack/core@2.1.8(@module-federation/runtime-tools@2.8.2)(@swc/helpers@0.5.23))(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react@18.3.1)(rollup@4.62.2)(ts-node@10.9.2(@swc/core@1.15.41(@swc/helpers@0.5.23))(@types/node@20.19.5)(typescript@7.0.2))(tsconfig-paths@4.2.0)(tslib@2.8.1)(typescript@7.0.2)(webpack@5.104.1(@swc/core@1.15.41(@swc/helpers@0.5.23))(esbuild@0.28.1)(webpack-cli@5.1.4(webpack-dev-server@5.2.3)(webpack@5.104.1))) '@modern-js/eslint-config': specifier: 2.59.0 version: 2.59.0(typescript@7.0.2) @@ -1152,7 +1152,7 @@ importers: version: 7.28.2 '@modern-js/runtime': specifier: 3.5.0 - version: 3.5.0(@module-federation/runtime-tools@2.8.2)(core-js@3.49.0)(react-dom@18.3.1(react@18.3.1))(react-server-dom-rspack@0.0.2(@rspack/core@1.3.9(@swc/helpers@0.5.23))(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react@18.3.1) + version: 3.5.0(@module-federation/runtime-tools@2.8.2)(core-js@3.49.0)(react-dom@18.3.1(react@18.3.1))(react-server-dom-rspack@0.0.2(@rspack/core@2.1.8(@module-federation/runtime-tools@2.8.2)(@swc/helpers@0.5.23))(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react@18.3.1) '@module-federation/modern-js-v3': specifier: workspace:* version: link:../../../packages/modernjs-v3 @@ -1171,7 +1171,7 @@ importers: version: 2.59.0(typescript@7.0.2) '@modern-js/app-tools': specifier: 3.5.0 - version: 3.5.0(@module-federation/runtime-tools@2.8.2)(@rspack/core@1.3.9(@swc/helpers@0.5.23))(core-js@3.49.0)(encoding@0.1.13)(esbuild@0.28.1)(react-dom@18.3.1(react@18.3.1))(react-server-dom-rspack@0.0.2(@rspack/core@1.3.9(@swc/helpers@0.5.23))(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react@18.3.1)(rollup@4.62.2)(ts-node@10.9.2(@swc/core@1.15.41(@swc/helpers@0.5.23))(@types/node@20.19.5)(typescript@7.0.2))(tsconfig-paths@4.2.0)(tslib@2.8.1)(typescript@7.0.2)(webpack@5.104.1(@swc/core@1.15.41(@swc/helpers@0.5.23))(esbuild@0.28.1)(webpack-cli@5.1.4)) + version: 3.5.0(@module-federation/runtime-tools@2.8.2)(@rspack/core@2.1.8(@module-federation/runtime-tools@2.8.2)(@swc/helpers@0.5.23))(core-js@3.49.0)(encoding@0.1.13)(esbuild@0.28.1)(react-dom@18.3.1(react@18.3.1))(react-server-dom-rspack@0.0.2(@rspack/core@2.1.8(@module-federation/runtime-tools@2.8.2)(@swc/helpers@0.5.23))(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react@18.3.1)(rollup@4.62.2)(ts-node@10.9.2(@swc/core@1.15.41(@swc/helpers@0.5.23))(@types/node@20.19.5)(typescript@7.0.2))(tsconfig-paths@4.2.0)(tslib@2.8.1)(typescript@7.0.2)(webpack@5.104.1(@swc/core@1.15.41(@swc/helpers@0.5.23))(esbuild@0.28.1)(webpack-cli@5.1.4(webpack-dev-server@5.2.3)(webpack@5.104.1))) '@modern-js/eslint-config': specifier: 2.59.0 version: 2.59.0(typescript@7.0.2) @@ -1249,7 +1249,7 @@ importers: version: 7.28.2 '@modern-js/runtime': specifier: 3.5.0 - version: 3.5.0(@module-federation/runtime-tools@2.8.2)(core-js@3.49.0)(react-dom@18.3.1(react@18.3.1))(react-server-dom-rspack@0.0.2(@rspack/core@1.3.9(@swc/helpers@0.5.23))(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react@18.3.1) + version: 3.5.0(@module-federation/runtime-tools@2.8.2)(core-js@3.49.0)(react-dom@18.3.1(react@18.3.1))(react-server-dom-rspack@0.0.2(@rspack/core@2.1.8(@module-federation/runtime-tools@2.8.2)(@swc/helpers@0.5.23))(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react@18.3.1) '@module-federation/modern-js-v3': specifier: workspace:* version: link:../../../packages/modernjs-v3 @@ -1268,7 +1268,7 @@ importers: version: 2.59.0(typescript@7.0.2) '@modern-js/app-tools': specifier: 3.5.0 - version: 3.5.0(@module-federation/runtime-tools@2.8.2)(@rspack/core@1.3.9(@swc/helpers@0.5.23))(core-js@3.49.0)(encoding@0.1.13)(esbuild@0.28.1)(react-dom@18.3.1(react@18.3.1))(react-server-dom-rspack@0.0.2(@rspack/core@1.3.9(@swc/helpers@0.5.23))(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react@18.3.1)(rollup@4.62.2)(ts-node@10.9.2(@swc/core@1.15.41(@swc/helpers@0.5.23))(@types/node@20.19.5)(typescript@7.0.2))(tsconfig-paths@4.2.0)(tslib@2.8.1)(typescript@7.0.2)(webpack@5.104.1(@swc/core@1.15.41(@swc/helpers@0.5.23))(esbuild@0.28.1)(webpack-cli@5.1.4)) + version: 3.5.0(@module-federation/runtime-tools@2.8.2)(@rspack/core@2.1.8(@module-federation/runtime-tools@2.8.2)(@swc/helpers@0.5.23))(core-js@3.49.0)(encoding@0.1.13)(esbuild@0.28.1)(react-dom@18.3.1(react@18.3.1))(react-server-dom-rspack@0.0.2(@rspack/core@2.1.8(@module-federation/runtime-tools@2.8.2)(@swc/helpers@0.5.23))(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react@18.3.1)(rollup@4.62.2)(ts-node@10.9.2(@swc/core@1.15.41(@swc/helpers@0.5.23))(@types/node@20.19.5)(typescript@7.0.2))(tsconfig-paths@4.2.0)(tslib@2.8.1)(typescript@7.0.2)(webpack@5.104.1(@swc/core@1.15.41(@swc/helpers@0.5.23))(esbuild@0.28.1)(webpack-cli@5.1.4(webpack-dev-server@5.2.3)(webpack@5.104.1))) '@modern-js/eslint-config': specifier: 2.59.0 version: 2.59.0(typescript@7.0.2) @@ -1341,7 +1341,7 @@ importers: version: 7.28.2 '@modern-js/runtime': specifier: 3.5.0 - version: 3.5.0(@module-federation/runtime-tools@2.8.2)(core-js@3.49.0)(react-dom@18.3.1(react@18.3.1))(react-server-dom-rspack@0.0.2(@rspack/core@1.3.9(@swc/helpers@0.5.23))(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react@18.3.1) + version: 3.5.0(@module-federation/runtime-tools@2.8.2)(core-js@3.49.0)(react-dom@18.3.1(react@18.3.1))(react-server-dom-rspack@0.0.2(@rspack/core@2.1.8(@module-federation/runtime-tools@2.8.2)(@swc/helpers@0.5.23))(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react@18.3.1) '@module-federation/modern-js-v3': specifier: workspace:* version: link:../../../packages/modernjs-v3 @@ -1360,7 +1360,7 @@ importers: version: 2.59.0(typescript@7.0.2) '@modern-js/app-tools': specifier: 3.5.0 - version: 3.5.0(@module-federation/runtime-tools@2.8.2)(@rspack/core@1.3.9(@swc/helpers@0.5.23))(core-js@3.49.0)(encoding@0.1.13)(esbuild@0.28.1)(react-dom@18.3.1(react@18.3.1))(react-server-dom-rspack@0.0.2(@rspack/core@1.3.9(@swc/helpers@0.5.23))(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react@18.3.1)(rollup@4.62.2)(ts-node@10.9.2(@swc/core@1.15.41(@swc/helpers@0.5.23))(@types/node@20.19.5)(typescript@7.0.2))(tsconfig-paths@4.2.0)(tslib@2.8.1)(typescript@7.0.2)(webpack@5.104.1(@swc/core@1.15.41(@swc/helpers@0.5.23))(esbuild@0.28.1)(webpack-cli@5.1.4(webpack-dev-server@5.2.3)(webpack@5.104.1))) + version: 3.5.0(@module-federation/runtime-tools@2.8.2)(@rspack/core@2.1.8(@module-federation/runtime-tools@2.8.2)(@swc/helpers@0.5.23))(core-js@3.49.0)(encoding@0.1.13)(esbuild@0.28.1)(react-dom@18.3.1(react@18.3.1))(react-server-dom-rspack@0.0.2(@rspack/core@2.1.8(@module-federation/runtime-tools@2.8.2)(@swc/helpers@0.5.23))(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react@18.3.1)(rollup@4.62.2)(ts-node@10.9.2(@swc/core@1.15.41(@swc/helpers@0.5.23))(@types/node@20.19.5)(typescript@7.0.2))(tsconfig-paths@4.2.0)(tslib@2.8.1)(typescript@7.0.2)(webpack@5.104.1(@swc/core@1.15.41(@swc/helpers@0.5.23))(esbuild@0.28.1)(webpack-cli@5.1.4(webpack-dev-server@5.2.3)(webpack@5.104.1))) '@modern-js/eslint-config': specifier: 2.59.0 version: 2.59.0(typescript@7.0.2) @@ -1402,7 +1402,7 @@ importers: version: 7.28.2 '@modern-js/runtime': specifier: 3.5.0 - version: 3.5.0(@module-federation/runtime-tools@2.8.2)(core-js@3.49.0)(react-dom@18.3.1(react@18.3.1))(react-server-dom-rspack@0.0.2(@rspack/core@1.3.9(@swc/helpers@0.5.23))(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react@18.3.1) + version: 3.5.0(@module-federation/runtime-tools@2.8.2)(core-js@3.49.0)(react-dom@18.3.1(react@18.3.1))(react-server-dom-rspack@0.0.2(@rspack/core@2.1.8(@module-federation/runtime-tools@2.8.2)(@swc/helpers@0.5.23))(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react@18.3.1) '@module-federation/modern-js-v3': specifier: workspace:* version: link:../../../packages/modernjs-v3 @@ -1421,7 +1421,7 @@ importers: version: 2.59.0(typescript@7.0.2) '@modern-js/app-tools': specifier: 3.5.0 - version: 3.5.0(@module-federation/runtime-tools@2.8.2)(@rspack/core@1.3.9(@swc/helpers@0.5.23))(core-js@3.49.0)(encoding@0.1.13)(esbuild@0.28.1)(react-dom@18.3.1(react@18.3.1))(react-server-dom-rspack@0.0.2(@rspack/core@1.3.9(@swc/helpers@0.5.23))(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react@18.3.1)(rollup@4.62.2)(ts-node@10.9.2(@swc/core@1.15.41(@swc/helpers@0.5.23))(@types/node@20.19.5)(typescript@7.0.2))(tsconfig-paths@4.2.0)(tslib@2.8.1)(typescript@7.0.2)(webpack@5.104.1(@swc/core@1.15.41(@swc/helpers@0.5.23))(esbuild@0.28.1)(webpack-cli@5.1.4(webpack-dev-server@5.2.3)(webpack@5.104.1))) + version: 3.5.0(@module-federation/runtime-tools@2.8.2)(@rspack/core@2.1.8(@module-federation/runtime-tools@2.8.2)(@swc/helpers@0.5.23))(core-js@3.49.0)(encoding@0.1.13)(esbuild@0.28.1)(react-dom@18.3.1(react@18.3.1))(react-server-dom-rspack@0.0.2(@rspack/core@2.1.8(@module-federation/runtime-tools@2.8.2)(@swc/helpers@0.5.23))(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react@18.3.1)(rollup@4.62.2)(ts-node@10.9.2(@swc/core@1.15.41(@swc/helpers@0.5.23))(@types/node@20.19.5)(typescript@7.0.2))(tsconfig-paths@4.2.0)(tslib@2.8.1)(typescript@7.0.2)(webpack@5.104.1(@swc/core@1.15.41(@swc/helpers@0.5.23))(esbuild@0.28.1)(webpack-cli@5.1.4(webpack-dev-server@5.2.3)(webpack@5.104.1))) '@modern-js/eslint-config': specifier: 2.59.0 version: 2.59.0(typescript@7.0.2) @@ -1463,7 +1463,7 @@ importers: version: 7.28.2 '@modern-js/runtime': specifier: 3.5.0 - version: 3.5.0(@module-federation/runtime-tools@2.8.2)(core-js@3.49.0)(react-dom@18.3.1(react@18.3.1))(react-server-dom-rspack@0.0.2(@rspack/core@1.3.9(@swc/helpers@0.5.23))(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react@18.3.1) + version: 3.5.0(@module-federation/runtime-tools@2.8.2)(core-js@3.49.0)(react-dom@18.3.1(react@18.3.1))(react-server-dom-rspack@0.0.2(@rspack/core@2.1.8(@module-federation/runtime-tools@2.8.2)(@swc/helpers@0.5.23))(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react@18.3.1) '@module-federation/modern-js-v3': specifier: workspace:* version: link:../../../packages/modernjs-v3 @@ -1482,7 +1482,7 @@ importers: version: 2.59.0(typescript@7.0.2) '@modern-js/app-tools': specifier: 3.5.0 - version: 3.5.0(@module-federation/runtime-tools@2.8.2)(@rspack/core@1.3.9(@swc/helpers@0.5.23))(core-js@3.49.0)(encoding@0.1.13)(esbuild@0.28.1)(react-dom@18.3.1(react@18.3.1))(react-server-dom-rspack@0.0.2(@rspack/core@1.3.9(@swc/helpers@0.5.23))(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react@18.3.1)(rollup@4.62.2)(ts-node@10.9.2(@swc/core@1.15.41(@swc/helpers@0.5.23))(@types/node@20.19.5)(typescript@7.0.2))(tsconfig-paths@4.2.0)(tslib@2.8.1)(typescript@7.0.2)(webpack@5.104.1(@swc/core@1.15.41(@swc/helpers@0.5.23))(esbuild@0.28.1)(webpack-cli@5.1.4(webpack-dev-server@5.2.3)(webpack@5.104.1))) + version: 3.5.0(@module-federation/runtime-tools@2.8.2)(@rspack/core@2.1.8(@module-federation/runtime-tools@2.8.2)(@swc/helpers@0.5.23))(core-js@3.49.0)(encoding@0.1.13)(esbuild@0.28.1)(react-dom@18.3.1(react@18.3.1))(react-server-dom-rspack@0.0.2(@rspack/core@2.1.8(@module-federation/runtime-tools@2.8.2)(@swc/helpers@0.5.23))(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react@18.3.1)(rollup@4.62.2)(ts-node@10.9.2(@swc/core@1.15.41(@swc/helpers@0.5.23))(@types/node@20.19.5)(typescript@7.0.2))(tsconfig-paths@4.2.0)(tslib@2.8.1)(typescript@7.0.2)(webpack@5.104.1(@swc/core@1.15.41(@swc/helpers@0.5.23))(esbuild@0.28.1)(webpack-cli@5.1.4(webpack-dev-server@5.2.3)(webpack@5.104.1))) '@modern-js/eslint-config': specifier: 2.59.0 version: 2.59.0(typescript@7.0.2) @@ -1524,7 +1524,7 @@ importers: version: 7.28.2 '@modern-js/runtime': specifier: 3.5.0 - version: 3.5.0(@module-federation/runtime-tools@2.8.2)(core-js@3.49.0)(react-dom@18.3.1(react@18.3.1))(react-server-dom-rspack@0.0.2(@rspack/core@1.3.9(@swc/helpers@0.5.23))(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react@18.3.1) + version: 3.5.0(@module-federation/runtime-tools@2.8.2)(core-js@3.49.0)(react-dom@18.3.1(react@18.3.1))(react-server-dom-rspack@0.0.2(@rspack/core@2.1.8(@module-federation/runtime-tools@2.8.2)(@swc/helpers@0.5.23))(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react@18.3.1) '@module-federation/modern-js-v3': specifier: workspace:* version: link:../../../packages/modernjs-v3 @@ -1543,7 +1543,7 @@ importers: version: 2.59.0(typescript@7.0.2) '@modern-js/app-tools': specifier: 3.5.0 - version: 3.5.0(@module-federation/runtime-tools@2.8.2)(@rspack/core@1.3.9(@swc/helpers@0.5.23))(core-js@3.49.0)(encoding@0.1.13)(esbuild@0.28.1)(react-dom@18.3.1(react@18.3.1))(react-server-dom-rspack@0.0.2(@rspack/core@1.3.9(@swc/helpers@0.5.23))(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react@18.3.1)(rollup@4.62.2)(ts-node@10.9.2(@swc/core@1.15.41(@swc/helpers@0.5.23))(@types/node@20.19.5)(typescript@7.0.2))(tsconfig-paths@4.2.0)(tslib@2.8.1)(typescript@7.0.2)(webpack@5.104.1(@swc/core@1.15.41(@swc/helpers@0.5.23))(esbuild@0.28.1)(webpack-cli@5.1.4(webpack-dev-server@5.2.3)(webpack@5.104.1))) + version: 3.5.0(@module-federation/runtime-tools@2.8.2)(@rspack/core@2.1.8(@module-federation/runtime-tools@2.8.2)(@swc/helpers@0.5.23))(core-js@3.49.0)(encoding@0.1.13)(esbuild@0.28.1)(react-dom@18.3.1(react@18.3.1))(react-server-dom-rspack@0.0.2(@rspack/core@2.1.8(@module-federation/runtime-tools@2.8.2)(@swc/helpers@0.5.23))(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react@18.3.1)(rollup@4.62.2)(ts-node@10.9.2(@swc/core@1.15.41(@swc/helpers@0.5.23))(@types/node@20.19.5)(typescript@7.0.2))(tsconfig-paths@4.2.0)(tslib@2.8.1)(typescript@7.0.2)(webpack@5.104.1(@swc/core@1.15.41(@swc/helpers@0.5.23))(esbuild@0.28.1)(webpack-cli@5.1.4(webpack-dev-server@5.2.3)(webpack@5.104.1))) '@modern-js/eslint-config': specifier: 2.59.0 version: 2.59.0(typescript@7.0.2) @@ -1585,7 +1585,7 @@ importers: version: 7.28.2 '@modern-js/runtime': specifier: 3.5.0 - version: 3.5.0(@module-federation/runtime-tools@2.8.2)(core-js@3.49.0)(react-dom@18.3.1(react@18.3.1))(react-server-dom-rspack@0.0.2(@rspack/core@1.3.9(@swc/helpers@0.5.23))(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react@18.3.1) + version: 3.5.0(@module-federation/runtime-tools@2.8.2)(core-js@3.49.0)(react-dom@18.3.1(react@18.3.1))(react-server-dom-rspack@0.0.2(@rspack/core@2.1.8(@module-federation/runtime-tools@2.8.2)(@swc/helpers@0.5.23))(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react@18.3.1) '@module-federation/modern-js-v3': specifier: workspace:* version: link:../../../packages/modernjs-v3 @@ -1604,7 +1604,7 @@ importers: version: 2.59.0(typescript@7.0.2) '@modern-js/app-tools': specifier: 3.5.0 - version: 3.5.0(@module-federation/runtime-tools@2.8.2)(@rspack/core@1.3.9(@swc/helpers@0.5.23))(core-js@3.49.0)(encoding@0.1.13)(esbuild@0.28.1)(react-dom@18.3.1(react@18.3.1))(react-server-dom-rspack@0.0.2(@rspack/core@1.3.9(@swc/helpers@0.5.23))(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react@18.3.1)(rollup@4.62.2)(ts-node@10.9.2(@swc/core@1.15.41(@swc/helpers@0.5.23))(@types/node@20.19.5)(typescript@7.0.2))(tsconfig-paths@4.2.0)(tslib@2.8.1)(typescript@7.0.2)(webpack@5.104.1(@swc/core@1.15.41(@swc/helpers@0.5.23))(esbuild@0.28.1)(webpack-cli@5.1.4(webpack-dev-server@5.2.3)(webpack@5.104.1))) + version: 3.5.0(@module-federation/runtime-tools@2.8.2)(@rspack/core@2.1.8(@module-federation/runtime-tools@2.8.2)(@swc/helpers@0.5.23))(core-js@3.49.0)(encoding@0.1.13)(esbuild@0.28.1)(react-dom@18.3.1(react@18.3.1))(react-server-dom-rspack@0.0.2(@rspack/core@2.1.8(@module-federation/runtime-tools@2.8.2)(@swc/helpers@0.5.23))(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react@18.3.1)(rollup@4.62.2)(ts-node@10.9.2(@swc/core@1.15.41(@swc/helpers@0.5.23))(@types/node@20.19.5)(typescript@7.0.2))(tsconfig-paths@4.2.0)(tslib@2.8.1)(typescript@7.0.2)(webpack@5.104.1(@swc/core@1.15.41(@swc/helpers@0.5.23))(esbuild@0.28.1)(webpack-cli@5.1.4(webpack-dev-server@5.2.3)(webpack@5.104.1))) '@modern-js/eslint-config': specifier: 2.59.0 version: 2.59.0(typescript@7.0.2) @@ -2066,7 +2066,7 @@ importers: version: 18.3.7(@types/react@18.3.28) tailwindcss: specifier: ^3.4.3 - version: 3.4.13(ts-node@10.9.2(@swc/core@1.15.41(@swc/helpers@0.5.23))(@types/node@20.19.5)(typescript@5.9.3)) + version: 3.4.13(ts-node@10.9.2(@swc/core@1.15.41(@swc/helpers@0.5.23))(@types/node@26.2.0)(typescript@5.9.3)) typescript: specifier: ^5.4.5 version: 5.9.3 @@ -2115,7 +2115,7 @@ importers: version: 18.3.7(@types/react@18.3.28) tailwindcss: specifier: ^3.4.3 - version: 3.4.13(ts-node@10.9.2(@swc/core@1.15.41(@swc/helpers@0.5.23))(@types/node@20.19.5)(typescript@7.0.2)) + version: 3.4.13(ts-node@10.9.2(@swc/core@1.15.41(@swc/helpers@0.5.23))(@types/node@26.2.0)(typescript@7.0.2)) typescript: specifier: 7.0.2 version: 7.0.2 @@ -2146,7 +2146,7 @@ importers: version: 2.0.1(@rsbuild/core@2.1.4(@module-federation/runtime-tools@2.8.2)(core-js@3.49.0))(@rspack/core@2.1.8(@module-federation/runtime-tools@2.8.2)(@swc/helpers@0.5.23))(vue@3.5.30(typescript@7.0.2)) tailwindcss: specifier: ^3.4.3 - version: 3.4.13(ts-node@10.9.2(@swc/core@1.15.41(@swc/helpers@0.5.23))(@types/node@20.19.5)(typescript@7.0.2)) + version: 3.4.13(ts-node@10.9.2(@swc/core@1.15.41(@swc/helpers@0.5.23))(@types/node@26.2.0)(typescript@7.0.2)) typescript: specifier: 7.0.2 version: 7.0.2 @@ -2266,7 +2266,7 @@ importers: version: 0.5.1 tailwindcss: specifier: ^3.4.3 - version: 3.4.13(ts-node@10.9.2(@swc/core@1.15.41(@swc/helpers@0.5.23))(@types/node@20.19.5)(typescript@7.0.2)) + version: 3.4.13(ts-node@10.9.2(@swc/core@1.15.41(@swc/helpers@0.5.23))(@types/node@26.2.0)(typescript@7.0.2)) typescript: specifier: 7.0.2 version: 7.0.2 @@ -2413,7 +2413,7 @@ importers: version: 2.1.0(@rsbuild/core@2.1.10(@module-federation/runtime-tools@2.8.2)(core-js@3.49.0))(@rspack/core@2.1.8(@module-federation/runtime-tools@2.8.2)(@swc/helpers@0.5.23)) '@rslib/core': specifier: ^0.23.2 - version: 0.23.2(@microsoft/api-extractor@7.57.7(@types/node@26.2.0))(@module-federation/runtime-tools@2.8.2)(core-js@3.49.0)(typescript@6.0.3) + version: 0.23.2(@microsoft/api-extractor@7.57.7(@types/node@26.2.0))(@module-federation/runtime-tools@2.8.2)(core-js@3.49.0)(typescript@7.0.2) '@types/react': specifier: ^18.3.11 version: 18.3.28 @@ -2431,10 +2431,10 @@ importers: version: 8.6.17(prettier@3.8.1) storybook-addon-rslib: specifier: ^1.0.1 - version: 1.0.3(@rsbuild/core@2.1.10(@module-federation/runtime-tools@2.8.2)(core-js@3.49.0))(@rslib/core@0.23.2(@microsoft/api-extractor@7.57.7(@types/node@26.2.0))(@module-federation/runtime-tools@2.8.2)(core-js@3.49.0)(typescript@6.0.3))(storybook-builder-rsbuild@1.0.3(@rsbuild/core@2.1.10(@module-federation/runtime-tools@2.8.2)(core-js@3.49.0))(@rspack/core@2.1.8(@module-federation/runtime-tools@2.8.2)(@swc/helpers@0.5.23))(@types/react@18.3.28)(storybook@8.6.17(prettier@3.8.1))(tslib@2.8.1)(typescript@6.0.3))(typescript@6.0.3) + version: 1.0.3(@rsbuild/core@2.1.10(@module-federation/runtime-tools@2.8.2)(core-js@3.49.0))(@rslib/core@0.23.2(@microsoft/api-extractor@7.57.7(@types/node@26.2.0))(@module-federation/runtime-tools@2.8.2)(core-js@3.49.0)(typescript@7.0.2))(storybook-builder-rsbuild@1.0.3(@rsbuild/core@2.1.10(@module-federation/runtime-tools@2.8.2)(core-js@3.49.0))(@rspack/core@2.1.8(@module-federation/runtime-tools@2.8.2)(@swc/helpers@0.5.23))(@types/react@18.3.28)(storybook@8.6.17(prettier@3.8.1))(tslib@2.8.1)(typescript@7.0.2))(typescript@7.0.2) storybook-react-rsbuild: specifier: ^1.0.1 - version: 1.0.3(@rsbuild/core@2.1.10(@module-federation/runtime-tools@2.8.2)(core-js@3.49.0))(@rspack/core@2.1.8(@module-federation/runtime-tools@2.8.2)(@swc/helpers@0.5.23))(@types/react@18.3.28)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(rollup@4.62.2)(storybook@8.6.17(prettier@3.8.1))(tslib@2.8.1)(typescript@6.0.3)(webpack@5.104.1(@swc/core@1.7.26(@swc/helpers@0.5.13))(esbuild@0.25.5)(webpack-cli@5.1.4)) + version: 1.0.3(@rsbuild/core@2.1.10(@module-federation/runtime-tools@2.8.2)(core-js@3.49.0))(@rspack/core@2.1.8(@module-federation/runtime-tools@2.8.2)(@swc/helpers@0.5.23))(@types/react@18.3.28)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(rollup@4.62.2)(storybook@8.6.17(prettier@3.8.1))(tslib@2.8.1)(typescript@7.0.2)(webpack@5.104.1(@swc/core@1.7.26(@swc/helpers@0.5.13))(esbuild@0.25.5)(webpack-cli@5.1.4)) apps/rstest-federation-host: devDependencies: @@ -2696,7 +2696,7 @@ importers: version: 7.28.2 '@modern-js/runtime': specifier: 3.5.0 - version: 3.5.0(@module-federation/runtime-tools@2.8.2)(core-js@3.49.0)(react-dom@18.3.1(react@18.3.1))(react-server-dom-rspack@0.0.2(@rspack/core@1.3.9(@swc/helpers@0.5.23))(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react@18.3.1) + version: 3.5.0(@module-federation/runtime-tools@2.8.2)(core-js@3.49.0)(react-dom@18.3.1(react@18.3.1))(react-server-dom-rspack@0.0.2(@rspack/core@2.1.8(@module-federation/runtime-tools@2.8.2)(@swc/helpers@0.5.23))(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react@18.3.1) '@module-federation/enhanced': specifier: workspace:* version: link:../../../../packages/enhanced @@ -2715,7 +2715,7 @@ importers: version: 2.59.0(typescript@7.0.2) '@modern-js/app-tools': specifier: 3.5.0 - version: 3.5.0(@module-federation/runtime-tools@2.8.2)(@rspack/core@1.3.9(@swc/helpers@0.5.23))(core-js@3.49.0)(encoding@0.1.13)(esbuild@0.28.1)(react-dom@18.3.1(react@18.3.1))(react-server-dom-rspack@0.0.2(@rspack/core@1.3.9(@swc/helpers@0.5.23))(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react@18.3.1)(rollup@4.62.2)(ts-node@10.9.2(@swc/core@1.15.41(@swc/helpers@0.5.23))(@types/node@20.19.5)(typescript@7.0.2))(tsconfig-paths@3.14.2)(tslib@2.8.1)(typescript@7.0.2)(webpack@5.104.1(@swc/core@1.15.41(@swc/helpers@0.5.23))(esbuild@0.28.1)(webpack-cli@5.1.4(webpack-dev-server@5.2.3)(webpack@5.104.1))) + version: 3.5.0(@module-federation/runtime-tools@2.8.2)(@rspack/core@2.1.8(@module-federation/runtime-tools@2.8.2)(@swc/helpers@0.5.23))(core-js@3.49.0)(encoding@0.1.13)(esbuild@0.28.1)(react-dom@18.3.1(react@18.3.1))(react-server-dom-rspack@0.0.2(@rspack/core@2.1.8(@module-federation/runtime-tools@2.8.2)(@swc/helpers@0.5.23))(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react@18.3.1)(rollup@4.62.2)(ts-node@10.9.2(@swc/core@1.15.41(@swc/helpers@0.5.23))(@types/node@20.19.5)(typescript@7.0.2))(tsconfig-paths@3.14.2)(tslib@2.8.1)(typescript@7.0.2)(webpack@5.104.1(@swc/core@1.15.41(@swc/helpers@0.5.23))(esbuild@0.28.1)(webpack-cli@5.1.4(webpack-dev-server@5.2.3)(webpack@5.104.1))) '@modern-js/plugin-server': specifier: 2.68.0 version: 2.68.0(@babel/traverse@7.29.8)(@rsbuild/core@2.1.10(@module-federation/runtime-tools@2.8.2)(core-js@3.49.0))(react-dom@18.3.1(react@18.3.1))(react@18.3.1) @@ -2766,7 +2766,7 @@ importers: version: 7.28.2 '@modern-js/runtime': specifier: 3.5.0 - version: 3.5.0(@module-federation/runtime-tools@2.8.2)(core-js@3.49.0)(react-dom@18.3.1(react@18.3.1))(react-server-dom-rspack@0.0.2(@rspack/core@1.3.9(@swc/helpers@0.5.23))(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react@18.3.1) + version: 3.5.0(@module-federation/runtime-tools@2.8.2)(core-js@3.49.0)(react-dom@18.3.1(react@18.3.1))(react-server-dom-rspack@0.0.2(@rspack/core@2.1.8(@module-federation/runtime-tools@2.8.2)(@swc/helpers@0.5.23))(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react@18.3.1) '@module-federation/enhanced': specifier: workspace:* version: link:../../../../packages/enhanced @@ -2785,7 +2785,7 @@ importers: version: 2.59.0(typescript@7.0.2) '@modern-js/app-tools': specifier: 3.5.0 - version: 3.5.0(@module-federation/runtime-tools@2.8.2)(@rspack/core@1.3.9(@swc/helpers@0.5.23))(core-js@3.49.0)(encoding@0.1.13)(esbuild@0.28.1)(react-dom@18.3.1(react@18.3.1))(react-server-dom-rspack@0.0.2(@rspack/core@1.3.9(@swc/helpers@0.5.23))(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react@18.3.1)(rollup@4.62.2)(ts-node@10.9.2(@swc/core@1.15.41(@swc/helpers@0.5.23))(@types/node@20.19.5)(typescript@7.0.2))(tsconfig-paths@4.2.0)(tslib@2.8.1)(typescript@7.0.2)(webpack@5.104.1(@swc/core@1.15.41(@swc/helpers@0.5.23))(esbuild@0.28.1)(webpack-cli@5.1.4(webpack-dev-server@5.2.3)(webpack@5.104.1))) + version: 3.5.0(@module-federation/runtime-tools@2.8.2)(@rspack/core@2.1.8(@module-federation/runtime-tools@2.8.2)(@swc/helpers@0.5.23))(core-js@3.49.0)(encoding@0.1.13)(esbuild@0.28.1)(react-dom@18.3.1(react@18.3.1))(react-server-dom-rspack@0.0.2(@rspack/core@2.1.8(@module-federation/runtime-tools@2.8.2)(@swc/helpers@0.5.23))(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react@18.3.1)(rollup@4.62.2)(ts-node@10.9.2(@swc/core@1.15.41(@swc/helpers@0.5.23))(@types/node@20.19.5)(typescript@7.0.2))(tsconfig-paths@4.2.0)(tslib@2.8.1)(typescript@7.0.2)(webpack@5.104.1(@swc/core@1.15.41(@swc/helpers@0.5.23))(esbuild@0.28.1)(webpack-cli@5.1.4(webpack-dev-server@5.2.3)(webpack@5.104.1))) '@modern-js/eslint-config': specifier: 2.59.0 version: 2.59.0(typescript@7.0.2) @@ -2833,7 +2833,7 @@ importers: version: 7.28.2 '@modern-js/runtime': specifier: 3.5.0 - version: 3.5.0(@module-federation/runtime-tools@2.8.2)(core-js@3.49.0)(react-dom@18.3.1(react@18.3.1))(react-server-dom-rspack@0.0.2(@rspack/core@1.3.9(@swc/helpers@0.5.23))(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react@18.3.1) + version: 3.5.0(@module-federation/runtime-tools@2.8.2)(core-js@3.49.0)(react-dom@18.3.1(react@18.3.1))(react-server-dom-rspack@0.0.2(@rspack/core@2.1.8(@module-federation/runtime-tools@2.8.2)(@swc/helpers@0.5.23))(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react@18.3.1) '@module-federation/modern-js-v3': specifier: workspace:* version: link:../../../../packages/modernjs-v3 @@ -2852,7 +2852,7 @@ importers: version: 2.59.0(typescript@7.0.2) '@modern-js/app-tools': specifier: 3.5.0 - version: 3.5.0(@module-federation/runtime-tools@2.8.2)(@rspack/core@1.3.9(@swc/helpers@0.5.23))(core-js@3.49.0)(encoding@0.1.13)(esbuild@0.28.1)(react-dom@18.3.1(react@18.3.1))(react-server-dom-rspack@0.0.2(@rspack/core@1.3.9(@swc/helpers@0.5.23))(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react@18.3.1)(rollup@4.62.2)(ts-node@10.9.2(@swc/core@1.15.41(@swc/helpers@0.5.23))(@types/node@20.19.5)(typescript@7.0.2))(tsconfig-paths@3.14.2)(tslib@2.8.1)(typescript@7.0.2)(webpack@5.104.1(@swc/core@1.15.41(@swc/helpers@0.5.23))(esbuild@0.28.1)(webpack-cli@5.1.4(webpack-dev-server@5.2.3)(webpack@5.104.1))) + version: 3.5.0(@module-federation/runtime-tools@2.8.2)(@rspack/core@2.1.8(@module-federation/runtime-tools@2.8.2)(@swc/helpers@0.5.23))(core-js@3.49.0)(encoding@0.1.13)(esbuild@0.28.1)(react-dom@18.3.1(react@18.3.1))(react-server-dom-rspack@0.0.2(@rspack/core@2.1.8(@module-federation/runtime-tools@2.8.2)(@swc/helpers@0.5.23))(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react@18.3.1)(rollup@4.62.2)(ts-node@10.9.2(@swc/core@1.15.41(@swc/helpers@0.5.23))(@types/node@20.19.5)(typescript@7.0.2))(tsconfig-paths@3.14.2)(tslib@2.8.1)(typescript@7.0.2)(webpack@5.104.1(@swc/core@1.15.41(@swc/helpers@0.5.23))(esbuild@0.28.1)(webpack-cli@5.1.4(webpack-dev-server@5.2.3)(webpack@5.104.1))) '@modern-js/eslint-config': specifier: 2.59.0 version: 2.59.0(typescript@7.0.2) @@ -2909,7 +2909,7 @@ importers: version: 7.28.2 '@modern-js/runtime': specifier: 3.5.0 - version: 3.5.0(@module-federation/runtime-tools@2.8.2)(core-js@3.49.0)(react-dom@18.3.1(react@18.3.1))(react-server-dom-rspack@0.0.2(@rspack/core@1.3.9(@swc/helpers@0.5.23))(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react@18.3.1) + version: 3.5.0(@module-federation/runtime-tools@2.8.2)(core-js@3.49.0)(react-dom@18.3.1(react@18.3.1))(react-server-dom-rspack@0.0.2(@rspack/core@2.1.8(@module-federation/runtime-tools@2.8.2)(@swc/helpers@0.5.23))(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react@18.3.1) '@module-federation/modern-js-v3': specifier: workspace:* version: link:../../../../packages/modernjs-v3 @@ -2928,7 +2928,7 @@ importers: version: 2.59.0(typescript@7.0.2) '@modern-js/app-tools': specifier: 3.5.0 - version: 3.5.0(@module-federation/runtime-tools@2.8.2)(@rspack/core@1.3.9(@swc/helpers@0.5.23))(core-js@3.49.0)(encoding@0.1.13)(esbuild@0.28.1)(react-dom@18.3.1(react@18.3.1))(react-server-dom-rspack@0.0.2(@rspack/core@1.3.9(@swc/helpers@0.5.23))(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react@18.3.1)(rollup@4.62.2)(ts-node@10.9.2(@swc/core@1.15.41(@swc/helpers@0.5.23))(@types/node@20.19.5)(typescript@7.0.2))(tsconfig-paths@4.2.0)(tslib@2.8.1)(typescript@7.0.2)(webpack@5.104.1(@swc/core@1.15.41(@swc/helpers@0.5.23))(esbuild@0.28.1)(webpack-cli@5.1.4(webpack-dev-server@5.2.3)(webpack@5.104.1))) + version: 3.5.0(@module-federation/runtime-tools@2.8.2)(@rspack/core@2.1.8(@module-federation/runtime-tools@2.8.2)(@swc/helpers@0.5.23))(core-js@3.49.0)(encoding@0.1.13)(esbuild@0.28.1)(react-dom@18.3.1(react@18.3.1))(react-server-dom-rspack@0.0.2(@rspack/core@2.1.8(@module-federation/runtime-tools@2.8.2)(@swc/helpers@0.5.23))(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react@18.3.1)(rollup@4.62.2)(ts-node@10.9.2(@swc/core@1.15.41(@swc/helpers@0.5.23))(@types/node@20.19.5)(typescript@7.0.2))(tsconfig-paths@4.2.0)(tslib@2.8.1)(typescript@7.0.2)(webpack@5.104.1(@swc/core@1.15.41(@swc/helpers@0.5.23))(esbuild@0.28.1)(webpack-cli@5.1.4(webpack-dev-server@5.2.3)(webpack@5.104.1))) '@modern-js/eslint-config': specifier: 2.59.0 version: 2.59.0(typescript@7.0.2) @@ -2979,10 +2979,10 @@ importers: version: link:../../packages/runtime '@rsbuild/plugin-sass': specifier: ^2.0.1 - version: 2.0.1(@rsbuild/core@2.1.10(@module-federation/runtime-tools@2.8.2)(core-js@3.36.1)) + version: 2.0.1(@rsbuild/core@2.1.10(@module-federation/runtime-tools@2.8.2)(core-js@3.49.0)) '@rspress/core': specifier: 2.0.14 - version: 2.0.14(@module-federation/runtime-tools@2.8.2)(@rspack/core@1.3.9(@swc/helpers@0.5.23))(@types/mdast@4.0.4)(@types/react@19.2.14)(core-js@3.36.1)(micromark-util-types@2.0.2)(micromark@4.0.2) + version: 2.0.14(@module-federation/runtime-tools@2.8.2)(@rspack/core@2.1.8(@module-federation/runtime-tools@2.8.2)(@swc/helpers@0.5.23))(@types/mdast@4.0.4)(@types/react@19.2.14)(core-js@3.49.0)(micromark-util-types@2.0.2)(micromark@4.0.2) framer-motion: specifier: ^10.0.0 version: 10.18.0(react-dom@19.1.1(react@19.1.1))(react@19.1.1) @@ -2997,10 +2997,10 @@ importers: version: 7.15.1(react-dom@19.1.1(react@19.1.1))(react@19.1.1) tailwindcss: specifier: ^3.2.7 - version: 3.4.13(ts-node@10.9.2(@swc/core@1.15.41(@swc/helpers@0.5.23))(@types/node@20.19.5)(typescript@6.0.3)) + version: 3.4.13(ts-node@10.9.2(@swc/core@1.15.41(@swc/helpers@0.5.23))(@types/node@20.19.5)(typescript@7.0.2)) xgplayer: specifier: ^3.0.16 - version: 3.0.23(core-js@3.36.1) + version: 3.0.23(core-js@3.49.0) devDependencies: '@types/node': specifier: ^20.19.5 @@ -3013,7 +3013,7 @@ importers: version: 19.2.3(@types/react@19.2.14) zephyr-rspress-plugin: specifier: ^1.1.2 - version: 1.1.2(@rsbuild/core@2.1.10(@module-federation/runtime-tools@2.8.2)(core-js@3.36.1))(@rspack/core@1.3.9(@swc/helpers@0.5.23))(@rspress/core@2.0.14(@module-federation/runtime-tools@2.8.2)(@rspack/core@1.3.9(@swc/helpers@0.5.23))(@types/mdast@4.0.4)(@types/react@19.2.14)(core-js@3.36.1)(micromark-util-types@2.0.2)(micromark@4.0.2))(webpack@5.104.1(@swc/core@1.15.41(@swc/helpers@0.5.23))(esbuild@0.28.1)(webpack-cli@5.1.4)) + version: 1.1.2(@rsbuild/core@2.1.10(@module-federation/runtime-tools@2.8.2)(core-js@3.49.0))(@rspack/core@2.1.8(@module-federation/runtime-tools@2.8.2)(@swc/helpers@0.5.23))(@rspress/core@2.0.14(@module-federation/runtime-tools@2.8.2)(@rspack/core@2.1.8(@module-federation/runtime-tools@2.8.2)(@swc/helpers@0.5.23))(@types/mdast@4.0.4)(@types/react@19.2.14)(core-js@3.49.0)(micromark-util-types@2.0.2)(micromark@4.0.2))(webpack@5.104.1(@swc/core@1.15.41(@swc/helpers@0.5.23))(esbuild@0.28.1)(webpack-cli@5.1.4)) packages/assemble-release-plan: dependencies: @@ -3042,6 +3042,9 @@ importers: packages/bridge/bridge-react: dependencies: + '@module-federation/data-fetch': + specifier: workspace:* + version: link:../../data-fetch '@module-federation/sdk': specifier: workspace:* version: link:../../sdk @@ -3143,6 +3146,9 @@ importers: '@module-federation/bridge-shared': specifier: workspace:* version: link:../bridge-shared + '@module-federation/data-fetch': + specifier: workspace:* + version: link:../../data-fetch '@module-federation/runtime': specifier: workspace:* version: link:../../runtime @@ -3341,7 +3347,26 @@ importers: version: 1.2.5 rsbuild-plugin-publint: specifier: ^0.2.1 - version: 0.2.1(@rsbuild/core@2.1.4(@module-federation/runtime-tools@2.8.2)(core-js@3.49.0)) + version: 0.2.1(@rsbuild/core@1.7.3) + + packages/data-fetch: + dependencies: + '@module-federation/runtime': + specifier: workspace:* + version: link:../runtime + '@module-federation/sdk': + specifier: workspace:* + version: link:../sdk + devDependencies: + hono: + specifier: 4.12.26 + version: 4.12.26 + typescript: + specifier: 7.0.2 + version: 7.0.2 + vite: + specifier: ^5.4.21 + version: 5.4.21(@types/node@26.2.0)(less@4.6.4)(sass-embedded@1.100.0)(sass@1.100.0)(terser@5.48.0) packages/dts-plugin: dependencies: @@ -3725,10 +3750,10 @@ importers: devDependencies: '@modern-js/app-tools': specifier: 2.70.5 - version: 2.70.5(@rspack/core@1.7.9(@swc/helpers@0.5.17))(@swc/core@1.15.41(@swc/helpers@0.5.17))(encoding@0.1.13)(react-dom@19.2.7(react@19.2.7))(react@19.2.7)(rollup@4.62.2)(styled-components@6.1.8(react-dom@19.2.7(react@19.2.7))(react@19.2.7))(ts-node@10.9.2(@swc/core@1.15.41(@swc/helpers@0.5.17))(@types/node@20.19.5)(typescript@7.0.2))(tsconfig-paths@4.2.0)(tslib@2.8.1)(type-fest@2.19.0)(typescript@7.0.2)(webpack-cli@5.1.4)(webpack-dev-server@5.2.3(webpack-cli@5.1.4)(webpack@5.104.1(@swc/core@1.15.41(@swc/helpers@0.5.17))(esbuild@0.25.5)(webpack-cli@5.1.4)))(webpack-hot-middleware@2.26.1) + version: 2.70.5(@rspack/core@1.7.9(@swc/helpers@0.5.17))(@swc/core@1.15.41(@swc/helpers@0.5.17))(encoding@0.1.13)(react-dom@19.2.7(react@19.2.7))(react@19.2.7)(rollup@4.62.2)(styled-components@6.1.8(react-dom@19.2.7(react@19.2.7))(react@19.2.7))(ts-node@10.9.2(@swc/core@1.15.41(@swc/helpers@0.5.17))(@types/node@26.2.0)(typescript@7.0.2))(tsconfig-paths@4.2.0)(tslib@2.8.1)(type-fest@2.19.0)(typescript@7.0.2)(webpack-cli@5.1.4)(webpack-dev-server@5.2.3(webpack-cli@5.1.4)(webpack@5.104.1(@swc/core@1.15.41(@swc/helpers@0.5.17))(esbuild@0.25.5)(webpack-cli@5.1.4)))(webpack-hot-middleware@2.26.1) '@modern-js/module-tools': specifier: 2.70.5 - version: 2.70.5(@types/node@20.19.5)(typescript@7.0.2) + version: 2.70.5(@types/node@26.2.0)(typescript@7.0.2) '@modern-js/runtime': specifier: 2.70.5 version: 2.70.5(react-dom@19.2.7(react@19.2.7))(react-server-dom-webpack@19.2.4(react-dom@19.2.7(react@19.2.7))(react@19.2.7)(webpack@5.104.1(@swc/core@1.15.41(@swc/helpers@0.5.17))(esbuild@0.25.5)(webpack-cli@5.1.4)))(react@19.2.7) @@ -3746,7 +3771,7 @@ importers: version: 1.4.5(@rsbuild/core@1.3.21)(webpack-hot-middleware@2.26.1) '@rslib/core': specifier: 0.23.2 - version: 0.23.2(@microsoft/api-extractor@7.57.7(@types/node@20.19.5))(@module-federation/runtime-tools@2.8.2)(core-js@3.49.0)(typescript@7.0.2) + version: 0.23.2(@microsoft/api-extractor@7.57.7(@types/node@26.2.0))(@module-federation/runtime-tools@2.8.2)(core-js@3.49.0)(typescript@7.0.2) '@rstest/core': specifier: ^0.10.6 version: 0.10.6(@module-federation/runtime-tools@2.8.2)(core-js@3.49.0)(jsdom@20.0.3) @@ -3801,10 +3826,10 @@ importers: devDependencies: '@modern-js/app-tools': specifier: 3.5.0 - version: 3.5.0(@module-federation/runtime-tools@2.8.2)(@rspack/core@2.0.6(@module-federation/runtime-tools@2.8.2)(@swc/helpers@0.5.17))(core-js@3.49.0)(encoding@0.1.13)(esbuild@0.28.1)(react-dom@18.3.1(react@18.3.1))(react-server-dom-rspack@0.0.2(@rspack/core@2.0.6(@module-federation/runtime-tools@2.8.2)(@swc/helpers@0.5.17))(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react@18.3.1)(rollup@4.62.2)(ts-node@10.9.2(@swc/core@1.15.41(@swc/helpers@0.5.17))(@types/node@20.19.5)(typescript@7.0.2))(tsconfig-paths@4.2.0)(tslib@2.8.1)(typescript@7.0.2)(webpack@5.104.1(@swc/core@1.15.41(@swc/helpers@0.5.17))(esbuild@0.28.1)(webpack-cli@5.1.4)) + version: 3.5.0(@module-federation/runtime-tools@2.8.2)(@rspack/core@2.0.6(@module-federation/runtime-tools@2.8.2)(@swc/helpers@0.5.17))(core-js@3.49.0)(encoding@0.1.13)(esbuild@0.28.1)(react-dom@18.3.1(react@18.3.1))(react-server-dom-rspack@0.0.2(@rspack/core@2.0.6(@module-federation/runtime-tools@2.8.2)(@swc/helpers@0.5.17))(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react@18.3.1)(rollup@4.62.2)(ts-node@10.9.2(@swc/core@1.15.41(@swc/helpers@0.5.17))(@types/node@26.2.0)(typescript@7.0.2))(tsconfig-paths@4.2.0)(tslib@2.8.1)(typescript@7.0.2)(webpack@5.104.1(@swc/core@1.15.41(@swc/helpers@0.5.17))(esbuild@0.28.1)(webpack-cli@5.1.4)) '@modern-js/module-tools': specifier: 2.70.5 - version: 2.70.5(@types/node@20.19.5)(typescript@7.0.2) + version: 2.70.5(@types/node@26.2.0)(typescript@7.0.2) '@modern-js/runtime': specifier: 3.5.0 version: 3.5.0(@module-federation/runtime-tools@2.8.2)(core-js@3.49.0)(react-dom@18.3.1(react@18.3.1))(react-server-dom-rspack@0.0.2(@rspack/core@2.0.6(@module-federation/runtime-tools@2.8.2)(@swc/helpers@0.5.17))(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react@18.3.1) @@ -3822,7 +3847,7 @@ importers: version: 1.4.5(@rsbuild/core@2.1.4(@module-federation/runtime-tools@2.8.2)(core-js@3.49.0))(webpack-hot-middleware@2.26.1) '@rslib/core': specifier: 0.23.2 - version: 0.23.2(@microsoft/api-extractor@7.57.7(@types/node@20.19.5))(@module-federation/runtime-tools@2.8.2)(core-js@3.49.0)(typescript@7.0.2) + version: 0.23.2(@microsoft/api-extractor@7.57.7(@types/node@26.2.0))(@module-federation/runtime-tools@2.8.2)(core-js@3.49.0)(typescript@7.0.2) '@rspack/core': specifier: 2.0.6 version: 2.0.6(@module-federation/runtime-tools@2.8.2)(@swc/helpers@0.5.17) @@ -4253,7 +4278,7 @@ importers: version: link:../sdk '@nx/react': specifier: '>= 16.0.0' - version: 22.5.4(@babel/core@7.29.7)(@babel/traverse@7.29.8)(@swc-node/register@1.10.10(@swc/core@1.7.26(@swc/helpers@0.5.13))(@swc/types@0.1.27)(typescript@6.0.3))(@swc/core@1.15.41(@swc/helpers@0.5.23))(@swc/helpers@0.5.23)(@types/babel__core@7.20.5)(@zkochan/js-yaml@0.0.7)(esbuild@0.25.5)(eslint@9.39.3(jiti@2.6.1))(nx@22.5.4(@swc-node/register@1.10.10(@swc/core@1.7.26(@swc/helpers@0.5.13))(@swc/types@0.1.27)(typescript@6.0.3))(@swc/core@1.15.41(@swc/helpers@0.5.23)))(react-dom@19.2.7(react@19.2.7))(react@19.2.7)(typescript@7.0.2)(vite@7.3.5(@types/node@26.2.0)(jiti@2.6.1)(less@4.6.4)(sass-embedded@1.98.0)(sass@1.98.0)(terser@5.48.0)(yaml@2.9.0))(vitest@3.2.6(@edge-runtime/vm@3.2.0)(@types/debug@4.1.12)(@types/node@26.2.0)(jiti@2.6.1)(jsdom@20.0.3)(less@4.6.4)(msw@1.3.5(@types/node@20.19.5)(encoding@0.1.13)(typescript@6.0.3))(sass-embedded@1.98.0)(sass@1.98.0)(terser@5.48.0)(yaml@2.9.0))(vue-tsc@2.2.12(typescript@7.0.2))(webpack-cli@5.1.4) + version: 22.5.4(@babel/core@7.29.7)(@babel/traverse@7.29.8)(@swc-node/register@1.10.10(@swc/core@1.7.26(@swc/helpers@0.5.13))(@swc/types@0.1.27)(typescript@6.0.3))(@swc/core@1.15.41(@swc/helpers@0.5.23))(@swc/helpers@0.5.23)(@types/babel__core@7.20.5)(@zkochan/js-yaml@0.0.7)(esbuild@0.25.5)(eslint@9.39.3(jiti@2.6.1))(nx@22.5.4(@swc-node/register@1.10.10(@swc/core@1.7.26(@swc/helpers@0.5.13))(@swc/types@0.1.27)(typescript@6.0.3))(@swc/core@1.15.41(@swc/helpers@0.5.23)))(react-dom@19.2.7(react@19.2.7))(react@19.2.7)(typescript@7.0.2)(vite@7.3.6(@types/node@26.2.0)(jiti@2.6.1)(less@4.6.4)(sass-embedded@1.98.0)(sass@1.98.0)(terser@5.48.0)(yaml@2.9.0))(vitest@3.2.6(@edge-runtime/vm@3.2.0)(@types/debug@4.1.12)(@types/node@26.2.0)(jiti@2.6.1)(jsdom@20.0.3)(less@4.6.4)(msw@1.3.5(@types/node@20.19.5)(encoding@0.1.13)(typescript@6.0.3))(sass-embedded@1.98.0)(sass@1.98.0)(terser@5.48.0)(yaml@2.9.0))(vue-tsc@2.2.12(typescript@7.0.2))(webpack-cli@5.1.4) '@nx/webpack': specifier: '>= 16.0.0' version: 22.5.4(@babel/traverse@7.29.8)(@rspack/core@1.6.8(@swc/helpers@0.5.23))(@swc-node/register@1.10.10(@swc/core@1.7.26(@swc/helpers@0.5.13))(@swc/types@0.1.27)(typescript@6.0.3))(@swc/core@1.15.41(@swc/helpers@0.5.23))(esbuild@0.25.5)(html-webpack-plugin@5.6.6(@rspack/core@1.6.8(@swc/helpers@0.5.23))(webpack@5.104.1(@swc/core@1.15.41(@swc/helpers@0.5.23))(esbuild@0.25.5)(webpack-cli@5.1.4)))(nx@22.5.4(@swc-node/register@1.10.10(@swc/core@1.7.26(@swc/helpers@0.5.13))(@swc/types@0.1.27)(typescript@6.0.3))(@swc/core@1.15.41(@swc/helpers@0.5.23)))(typescript@7.0.2)(vue-template-compiler@2.7.16)(webpack-cli@5.1.4) @@ -4269,7 +4294,7 @@ importers: version: 22.5.4(@babel/traverse@7.29.8)(@swc-node/register@1.10.10(@swc/core@1.7.26(@swc/helpers@0.5.13))(@swc/types@0.1.27)(typescript@6.0.3))(@swc/core@1.15.41(@swc/helpers@0.5.23))(@swc/helpers@0.5.23)(esbuild@0.25.5)(nx@22.5.4(@swc-node/register@1.10.10(@swc/core@1.7.26(@swc/helpers@0.5.13))(@swc/types@0.1.27)(typescript@6.0.3))(@swc/core@1.15.41(@swc/helpers@0.5.23)))(react-dom@19.2.7(react@19.2.7))(react@19.2.7)(typescript@7.0.2)(vue-tsc@2.2.12(typescript@7.0.2))(webpack-cli@5.1.4) '@rsbuild/core': specifier: 2.1.4 - version: 2.1.4(@module-federation/runtime-tools@2.2.2(node-fetch@2.7.0(encoding@0.1.13)))(core-js@3.49.0) + version: 2.1.4(@module-federation/runtime-tools@0.21.6)(core-js@3.49.0) '@storybook/core': specifier: ^8.4.6 version: 8.6.14(prettier@3.8.1)(storybook@8.6.17(prettier@3.8.1)) @@ -4788,56 +4813,48 @@ packages: engines: {node: '>= 10'} cpu: [arm64] os: [linux] - libc: [glibc] '@ast-grep/napi-linux-arm64-gnu@0.37.0': resolution: {integrity: sha512-L7Sj0lXy8X+BqSMgr1LB8cCoWk0rericdeu+dC8/c8zpsav5Oo2IQKY1PmiZ7H8IHoFBbURLf8iklY9wsD+cyA==} engines: {node: '>= 10'} cpu: [arm64] os: [linux] - libc: [glibc] '@ast-grep/napi-linux-arm64-musl@0.35.0': resolution: {integrity: sha512-1EcvHPwyWpCL/96LuItBYGfeI5FaMTRvL+dHbO/hL5q1npqbb5qn+ppJwtNOjTPz8tayvgggxVk9T4C2O7taYA==} engines: {node: '>= 10'} cpu: [arm64] os: [linux] - libc: [musl] '@ast-grep/napi-linux-arm64-musl@0.37.0': resolution: {integrity: sha512-LF9sAvYy6es/OdyJDO3RwkX3I82Vkfsng1sqUBcoWC1jVb1wX5YVzHtpQox9JrEhGl+bNp7FYxB4Qba9OdA5GA==} engines: {node: '>= 10'} cpu: [arm64] os: [linux] - libc: [musl] '@ast-grep/napi-linux-x64-gnu@0.35.0': resolution: {integrity: sha512-FDzNdlqmQnsiWXhnLxusw5AOfEcEM+5xtmrnAf3SBRFr86JyWD9qsynnFYC2pnP9hlMfifNH2TTmMpyGJW49Xw==} engines: {node: '>= 10'} cpu: [x64] os: [linux] - libc: [glibc] '@ast-grep/napi-linux-x64-gnu@0.37.0': resolution: {integrity: sha512-TViz5/klqre6aSmJzswEIjApnGjJzstG/SE8VDWsrftMBMYt2PTu3MeluZVwzSqDao8doT/P+6U11dU05UOgxw==} engines: {node: '>= 10'} cpu: [x64] os: [linux] - libc: [glibc] '@ast-grep/napi-linux-x64-musl@0.35.0': resolution: {integrity: sha512-wlmndjfBafT8u5p4DBnoRQyoCSGNuVSz7rT3TqhvlHcPzUouRWMn95epU9B1LNLyjXvr9xHeRjSktyCN28w57Q==} engines: {node: '>= 10'} cpu: [x64] os: [linux] - libc: [musl] '@ast-grep/napi-linux-x64-musl@0.37.0': resolution: {integrity: sha512-/BcCH33S9E3ovOAEoxYngUNXgb+JLg991sdyiNP2bSoYd30a9RHrG7CYwW6fMgua3ijQ474eV6cq9yZO1bCpXg==} engines: {node: '>= 10'} cpu: [x64] os: [linux] - libc: [musl] '@ast-grep/napi-win32-arm64-msvc@0.35.0': resolution: {integrity: sha512-gkhJeYc4rrZLX2icLxalPikTLMR57DuIYLwLr9g+StHYXIsGHrbfrE6Nnbdd8Izfs34ArFCrcwdaMrGlvOPSeg==} @@ -5853,28 +5870,24 @@ packages: engines: {node: '>=14.21.3'} cpu: [arm64] os: [linux] - libc: [musl] '@biomejs/cli-linux-arm64@2.4.7': resolution: {integrity: sha512-om6FugwmibzfP/6ALj5WRDVSND4H2G9X0nkI1HZpp2ySf9lW2j0X68oQSaHEnls6666oy4KDsc5RFjT4m0kV0w==} engines: {node: '>=14.21.3'} cpu: [arm64] os: [linux] - libc: [glibc] '@biomejs/cli-linux-x64-musl@2.4.7': resolution: {integrity: sha512-00kx4YrBMU8374zd2wHuRV5wseh0rom5HqRND+vDldJPrWwQw+mzd/d8byI9hPx926CG+vWzq6AeiT7Yi5y59g==} engines: {node: '>=14.21.3'} cpu: [x64] os: [linux] - libc: [musl] '@biomejs/cli-linux-x64@2.4.7': resolution: {integrity: sha512-bV8/uo2Tj+gumnk4sUdkerWyCPRabaZdv88IpbmDWARQQoA/Q0YaqPz1a+LSEDIL7OfrnPi9Hq1Llz4ZIGyIQQ==} engines: {node: '>=14.21.3'} cpu: [x64] os: [linux] - libc: [glibc] '@biomejs/cli-win32-arm64@2.4.7': resolution: {integrity: sha512-hOUHBMlFCvDhu3WCq6vaBoG0dp0LkWxSEnEEsxxXvOa9TfT6ZBnbh72A/xBM7CBYB7WgwqboetzFEVDnMxelyw==} @@ -7570,209 +7583,177 @@ packages: resolution: {integrity: sha512-excjX8DfsIcJ10x1Kzr4RcWe1edC9PquDRRPx3YVCvQv+U5p7Yin2s32ftzikXojb1PIFc/9Mt28/y+iRklkrw==} cpu: [arm64] os: [linux] - libc: [glibc] '@img/sharp-libvips-linux-arm64@1.3.0': resolution: {integrity: sha512-C0SqjoFKnszqa44EQ7xoaT48nnO0lOyXEULfXMWi8krrjOPGYkeK30Okzla6ATbBYsyZ0ySinK0FVkpv3DwzfQ==} cpu: [arm64] os: [linux] - libc: [glibc] '@img/sharp-libvips-linux-arm@1.2.4': resolution: {integrity: sha512-bFI7xcKFELdiNCVov8e44Ia4u2byA+l3XtsAj+Q8tfCwO6BQ8iDojYdvoPMqsKDkuoOo+X6HZA0s0q11ANMQ8A==} cpu: [arm] os: [linux] - libc: [glibc] '@img/sharp-libvips-linux-arm@1.3.0': resolution: {integrity: sha512-A8UpHoUDW4DwnXoV6+q3C1s7QLRAHtPDEjWuNZjwHMyoCNZnm0GeNN8ls9f/bsEYTRQRW96C/n34XJQHJ2fT7A==} cpu: [arm] os: [linux] - libc: [glibc] '@img/sharp-libvips-linux-ppc64@1.2.4': resolution: {integrity: sha512-FMuvGijLDYG6lW+b/UvyilUWu5Ayu+3r2d1S8notiGCIyYU/76eig1UfMmkZ7vwgOrzKzlQbFSuQfgm7GYUPpA==} cpu: [ppc64] os: [linux] - libc: [glibc] '@img/sharp-libvips-linux-ppc64@1.3.0': resolution: {integrity: sha512-WOpkVxAjFd369iaIzEgNRreFD+gWdUMIGD5zplhNKNeqS6mm5dac3q2AFyCBmzYoAdouzZvRBgxy4z8QHZb4/A==} cpu: [ppc64] os: [linux] - libc: [glibc] '@img/sharp-libvips-linux-riscv64@1.2.4': resolution: {integrity: sha512-oVDbcR4zUC0ce82teubSm+x6ETixtKZBh/qbREIOcI3cULzDyb18Sr/Wcyx7NRQeQzOiHTNbZFF1UwPS2scyGA==} cpu: [riscv64] os: [linux] - libc: [glibc] '@img/sharp-libvips-linux-riscv64@1.3.0': resolution: {integrity: sha512-DRWw0mOHusrCCuw2rqP87oLg6PGlkomVDFqw2hIwsSfwWpu4k3XLcBPaKKl6ct/GtL/cwNkgwjV/tc0Mqht3VA==} cpu: [riscv64] os: [linux] - libc: [glibc] '@img/sharp-libvips-linux-s390x@1.2.4': resolution: {integrity: sha512-qmp9VrzgPgMoGZyPvrQHqk02uyjA0/QrTO26Tqk6l4ZV0MPWIW6LTkqOIov+J1yEu7MbFQaDpwdwJKhbJvuRxQ==} cpu: [s390x] os: [linux] - libc: [glibc] '@img/sharp-libvips-linux-s390x@1.3.0': resolution: {integrity: sha512-9APy+nFWhHS+kzLgWZfLcyrUd7YqnAQVa4BPOo4xkoHpdoktOAPG4cEr9+Jpl0TtqfVmcMJimNL5qNTyyOHZNA==} cpu: [s390x] os: [linux] - libc: [glibc] '@img/sharp-libvips-linux-x64@1.2.4': resolution: {integrity: sha512-tJxiiLsmHc9Ax1bz3oaOYBURTXGIRDODBqhveVHonrHJ9/+k89qbLl0bcJns+e4t4rvaNBxaEZsFtSfAdquPrw==} cpu: [x64] os: [linux] - libc: [glibc] '@img/sharp-libvips-linux-x64@1.3.0': resolution: {integrity: sha512-y9RNUYDe2A1UAdhLyfeOodGRszQdaEoe4nfOpp/sNVPl2CWIcUyFaDoCh4vPLPxu19803j2naLqZup2WxDXCLA==} cpu: [x64] os: [linux] - libc: [glibc] '@img/sharp-libvips-linuxmusl-arm64@1.2.4': resolution: {integrity: sha512-FVQHuwx1IIuNow9QAbYUzJ+En8KcVm9Lk5+uGUQJHaZmMECZmOlix9HnH7n1TRkXMS0pGxIJokIVB9SuqZGGXw==} cpu: [arm64] os: [linux] - libc: [musl] '@img/sharp-libvips-linuxmusl-arm64@1.3.0': resolution: {integrity: sha512-cC1wkC0Mlucd0KSiGrLkJnB/ZqPvZCntc/Lk7ZnYO5ZSbF2euNek4Xvxafojq+wN1q/W0eprdpUIjUr/EV2PBg==} cpu: [arm64] os: [linux] - libc: [musl] '@img/sharp-libvips-linuxmusl-x64@1.2.4': resolution: {integrity: sha512-+LpyBk7L44ZIXwz/VYfglaX/okxezESc6UxDSoyo2Ks6Jxc4Y7sGjpgU9s4PMgqgjj1gZCylTieNamqA1MF7Dg==} cpu: [x64] os: [linux] - libc: [musl] '@img/sharp-libvips-linuxmusl-x64@1.3.0': resolution: {integrity: sha512-LiYMhUZicB1QG//+RvmYZpXJO8fYRENfp+MZUCnG9aw+AKvGAy9gPaCnuwsPcBFs8EV66M0NNxj9VHcNklE8zw==} cpu: [x64] os: [linux] - libc: [musl] '@img/sharp-linux-arm64@0.34.5': resolution: {integrity: sha512-bKQzaJRY/bkPOXyKx5EVup7qkaojECG6NLYswgktOZjaXecSAeCWiZwwiFf3/Y+O1HrauiE3FVsGxFg8c24rZg==} engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0} cpu: [arm64] os: [linux] - libc: [glibc] '@img/sharp-linux-arm64@0.35.0': resolution: {integrity: sha512-4+4XHLNT5wDT0roYlHTEmH9lDKt0acf9Tv+3hM3iceOirkxrR404/3WjAYZ9F9CkHrxeRcGLJXbi4vluMZ9O+A==} engines: {node: '>=20.9.0'} cpu: [arm64] os: [linux] - libc: [glibc] '@img/sharp-linux-arm@0.34.5': resolution: {integrity: sha512-9dLqsvwtg1uuXBGZKsxem9595+ujv0sJ6Vi8wcTANSFpwV/GONat5eCkzQo/1O6zRIkh0m/8+5BjrRr7jDUSZw==} engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0} cpu: [arm] os: [linux] - libc: [glibc] '@img/sharp-linux-arm@0.35.0': resolution: {integrity: sha512-VVlpEWwizEFIOom0zdoeKuO5nuTswzVE5uHcBNvHzmeHUpNFajY3HFfbQ+zIH4E2kVaZ/yVxmsShW56TtEy4uA==} engines: {node: '>=20.9.0'} cpu: [arm] os: [linux] - libc: [glibc] '@img/sharp-linux-ppc64@0.34.5': resolution: {integrity: sha512-7zznwNaqW6YtsfrGGDA6BRkISKAAE1Jo0QdpNYXNMHu2+0dTrPflTLNkpc8l7MUP5M16ZJcUvysVWWrMefZquA==} engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0} cpu: [ppc64] os: [linux] - libc: [glibc] '@img/sharp-linux-ppc64@0.35.0': resolution: {integrity: sha512-N3hzbEpUTJC8pWpPVJvgzGxM+so/MAXc8O2s/53B0LL9ZGpfXpME7Wizkc5d/8fRBlBtkDjzoZGDCqqNDHqLEw==} engines: {node: '>=20.9.0'} cpu: [ppc64] os: [linux] - libc: [glibc] '@img/sharp-linux-riscv64@0.34.5': resolution: {integrity: sha512-51gJuLPTKa7piYPaVs8GmByo7/U7/7TZOq+cnXJIHZKavIRHAP77e3N2HEl3dgiqdD/w0yUfiJnII77PuDDFdw==} engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0} cpu: [riscv64] os: [linux] - libc: [glibc] '@img/sharp-linux-riscv64@0.35.0': resolution: {integrity: sha512-l6vmKVPnbS0RhVMbyxP5meAARsbhCnBN4fy31qz0+3a6Rv4jEqfzDrT89y6ZPkCi0AJGnwp2En528yXo401Hpw==} engines: {node: '>=20.9.0'} cpu: [riscv64] os: [linux] - libc: [glibc] '@img/sharp-linux-s390x@0.34.5': resolution: {integrity: sha512-nQtCk0PdKfho3eC5MrbQoigJ2gd1CgddUMkabUj+rBevs8tZ2cULOx46E7oyX+04WGfABgIwmMC0VqieTiR4jg==} engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0} cpu: [s390x] os: [linux] - libc: [glibc] '@img/sharp-linux-s390x@0.35.0': resolution: {integrity: sha512-MYlMiPFiv/EKPAHnp3yNZ9AAWFsxga9c5Bkc6wkar6bqzHLlkGVJHRm0u1ei+VXnZxp3Mz9MG9ZIsI8vSOf3sQ==} engines: {node: '>=20.9.0'} cpu: [s390x] os: [linux] - libc: [glibc] '@img/sharp-linux-x64@0.34.5': resolution: {integrity: sha512-MEzd8HPKxVxVenwAa+JRPwEC7QFjoPWuS5NZnBt6B3pu7EG2Ge0id1oLHZpPJdn3OQK+BQDiw9zStiHBTJQQQQ==} engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0} cpu: [x64] os: [linux] - libc: [glibc] '@img/sharp-linux-x64@0.35.0': resolution: {integrity: sha512-TYaItB5oj1ioXjhyn2xrR208vf+YuIIcHptQWRRaBmFhvIvL9D72DXN8w75xup0KXA8UdEAhQ9Qb2S49FD/9Cw==} engines: {node: '>=20.9.0'} cpu: [x64] os: [linux] - libc: [glibc] '@img/sharp-linuxmusl-arm64@0.34.5': resolution: {integrity: sha512-fprJR6GtRsMt6Kyfq44IsChVZeGN97gTD331weR1ex1c1rypDEABN6Tm2xa1wE6lYb5DdEnk03NZPqA7Id21yg==} engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0} cpu: [arm64] os: [linux] - libc: [musl] '@img/sharp-linuxmusl-arm64@0.35.0': resolution: {integrity: sha512-DSTb6ijQzqe6DdAaOBVqJ/SYf1vO8EW5bK6X6LRXufEBebf2722VCdvBUtZ3rtV0x2ApfPNDy/p7LrrjaWjiyQ==} engines: {node: '>=20.9.0'} cpu: [arm64] os: [linux] - libc: [musl] '@img/sharp-linuxmusl-x64@0.34.5': resolution: {integrity: sha512-Jg8wNT1MUzIvhBFxViqrEhWDGzqymo3sV7z7ZsaWbZNDLXRJZoRGrjulp60YYtV4wfY8VIKcWidjojlLcWrd8Q==} engines: {node: ^18.17.0 || ^20.3.0 || >=21.0.0} cpu: [x64] os: [linux] - libc: [musl] '@img/sharp-linuxmusl-x64@0.35.0': resolution: {integrity: sha512-K7ykQ+26Rt6+4BTU80AuGgTPIYX86UxiAKT4rcXX/WNTo7k1ZxpKz+TguHnwVpCqQK3B5PK0vZ0ZBe6nz/ib1w==} engines: {node: '>=20.9.0'} cpu: [x64] os: [linux] - libc: [musl] '@img/sharp-wasm32@0.34.5': resolution: {integrity: sha512-OdWTEiVkY2PHwqkbBI8frFxQQFekHaSSkUIJkwzclWZe64O1X4UlUjqqqLaPbUpMOQk6FBu/HtlGXNblIs0huw==} @@ -9174,35 +9155,30 @@ packages: engines: {node: '>= 10'} cpu: [arm64] os: [linux] - libc: [glibc] '@napi-rs/canvas-linux-arm64-musl@0.1.100': resolution: {integrity: sha512-K3mDW66N+xT2/V439u1alFANiBUjdEx2gLiNYnCmUsva5jZMxWTjafBYwTzYK+EMFMHrUoabuU+T1BIP5CgbYQ==} engines: {node: '>= 10'} cpu: [arm64] os: [linux] - libc: [musl] '@napi-rs/canvas-linux-riscv64-gnu@0.1.100': resolution: {integrity: sha512-mooqUBTIsccZpnoQC4NgrC1v6C1vof39etLNMnBwCY+p0gajWJvAHLGQ6g/gGyS5YrpDW+GefSN4+Cvcr08UWw==} engines: {node: '>= 10'} cpu: [riscv64] os: [linux] - libc: [glibc] '@napi-rs/canvas-linux-x64-gnu@0.1.100': resolution: {integrity: sha512-1eCvkDCazm7FFhsT7DfGOdSaHgZVK3bt/dSBl5EWHOWmnz+I7j8tPseJqqD81NF+MH21jKUK4wQSDjN0mdhnTg==} engines: {node: '>= 10'} cpu: [x64] os: [linux] - libc: [glibc] '@napi-rs/canvas-linux-x64-musl@0.1.100': resolution: {integrity: sha512-20arT6lnI19S68qNlii73TSEDbECNgzMz2EpldC1V3mZFuRkeujXkcebRk0LRJe9SEUAooYiLokfMViY8IX7yA==} engines: {node: '>= 10'} cpu: [x64] os: [linux] - libc: [musl] '@napi-rs/canvas-win32-arm64-msvc@0.1.100': resolution: {integrity: sha512-DZFFT1wIAg37LJw37yhMRFfjATd3vTQzjZ1Yki8u2vhO6Hi5VE6BVaGQ1aaDu7xb4iMErz+9EOwjpS7xcxFeBw==} @@ -9261,49 +9237,42 @@ packages: engines: {node: '>= 10'} cpu: [arm64] os: [linux] - libc: [glibc] '@napi-rs/nice-linux-arm64-musl@1.1.1': resolution: {integrity: sha512-+2Rzdb3nTIYZ0YJF43qf2twhqOCkiSrHx2Pg6DJaCPYhhaxbLcdlV8hCRMHghQ+EtZQWGNcS2xF4KxBhSGeutg==} engines: {node: '>= 10'} cpu: [arm64] os: [linux] - libc: [musl] '@napi-rs/nice-linux-ppc64-gnu@1.1.1': resolution: {integrity: sha512-4FS8oc0GeHpwvv4tKciKkw3Y4jKsL7FRhaOeiPei0X9T4Jd619wHNe4xCLmN2EMgZoeGg+Q7GY7BsvwKpL22Tg==} engines: {node: '>= 10'} cpu: [ppc64] os: [linux] - libc: [glibc] '@napi-rs/nice-linux-riscv64-gnu@1.1.1': resolution: {integrity: sha512-HU0nw9uD4FO/oGCCk409tCi5IzIZpH2agE6nN4fqpwVlCn5BOq0MS1dXGjXaG17JaAvrlpV5ZeyZwSon10XOXw==} engines: {node: '>= 10'} cpu: [riscv64] os: [linux] - libc: [glibc] '@napi-rs/nice-linux-s390x-gnu@1.1.1': resolution: {integrity: sha512-2YqKJWWl24EwrX0DzCQgPLKQBxYDdBxOHot1KWEq7aY2uYeX+Uvtv4I8xFVVygJDgf6/92h9N3Y43WPx8+PAgQ==} engines: {node: '>= 10'} cpu: [s390x] os: [linux] - libc: [glibc] '@napi-rs/nice-linux-x64-gnu@1.1.1': resolution: {integrity: sha512-/gaNz3R92t+dcrfCw/96pDopcmec7oCcAQ3l/M+Zxr82KT4DljD37CpgrnXV+pJC263JkW572pdbP3hP+KjcIg==} engines: {node: '>= 10'} cpu: [x64] os: [linux] - libc: [glibc] '@napi-rs/nice-linux-x64-musl@1.1.1': resolution: {integrity: sha512-xScCGnyj/oppsNPMnevsBe3pvNaoK7FGvMjT35riz9YdhB2WtTG47ZlbxtOLpjeO9SqqQ2J2igCmz6IJOD5JYw==} engines: {node: '>= 10'} cpu: [x64] os: [linux] - libc: [musl] '@napi-rs/nice-openharmony-arm64@1.1.1': resolution: {integrity: sha512-6uJPRVwVCLDeoOaNyeiW0gp2kFIM4r7PL2MczdZQHkFi9gVlgm+Vn+V6nTWRcu856mJ2WjYJiumEajfSm7arPQ==} @@ -9395,56 +9364,48 @@ packages: engines: {node: '>= 10'} cpu: [arm64] os: [linux] - libc: [glibc] '@next/swc-linux-arm64-gnu@16.1.5': resolution: {integrity: sha512-qNIb42o3C02ccIeSeKjacF3HXotGsxh/FMk/rSRmCzOVMtoWH88odn2uZqF8RLsSUWHcAqTgYmPD3pZ03L9ZAA==} engines: {node: '>= 10'} cpu: [arm64] os: [linux] - libc: [glibc] '@next/swc-linux-arm64-musl@14.2.33': resolution: {integrity: sha512-Bm+QulsAItD/x6Ih8wGIMfRJy4G73tu1HJsrccPW6AfqdZd0Sfm5Imhgkgq2+kly065rYMnCOxTBvmvFY1BKfg==} engines: {node: '>= 10'} cpu: [arm64] os: [linux] - libc: [musl] '@next/swc-linux-arm64-musl@16.1.5': resolution: {integrity: sha512-U+kBxGUY1xMAzDTXmuVMfhaWUZQAwzRaHJ/I6ihtR5SbTVUEaDRiEU9YMjy1obBWpdOBuk1bcm+tsmifYSygfw==} engines: {node: '>= 10'} cpu: [arm64] os: [linux] - libc: [musl] '@next/swc-linux-x64-gnu@14.2.33': resolution: {integrity: sha512-FnFn+ZBgsVMbGDsTqo8zsnRzydvsGV8vfiWwUo1LD8FTmPTdV+otGSWKc4LJec0oSexFnCYVO4hX8P8qQKaSlg==} engines: {node: '>= 10'} cpu: [x64] os: [linux] - libc: [glibc] '@next/swc-linux-x64-gnu@16.1.5': resolution: {integrity: sha512-gq2UtoCpN7Ke/7tKaU7i/1L7eFLfhMbXjNghSv0MVGF1dmuoaPeEVDvkDuO/9LVa44h5gqpWeJ4mRRznjDv7LA==} engines: {node: '>= 10'} cpu: [x64] os: [linux] - libc: [glibc] '@next/swc-linux-x64-musl@14.2.33': resolution: {integrity: sha512-345tsIWMzoXaQndUTDv1qypDRiebFxGYx9pYkhwY4hBRaOLt8UGfiWKr9FSSHs25dFIf8ZqIFaPdy5MljdoawA==} engines: {node: '>= 10'} cpu: [x64] os: [linux] - libc: [musl] '@next/swc-linux-x64-musl@16.1.5': resolution: {integrity: sha512-bQWSE729PbXT6mMklWLf8dotislPle2L70E9q6iwETYEOt092GDn0c+TTNj26AjmeceSsC4ndyGsK5nKqHYXjQ==} engines: {node: '>= 10'} cpu: [x64] os: [linux] - libc: [musl] '@next/swc-win32-arm64-msvc@14.2.33': resolution: {integrity: sha512-nscpt0G6UCTkrT2ppnJnFsYbPDQwmum4GNXYTeoTIdsmMydSKFz9Iny2jpaRupTb+Wl298+Rh82WKzt9LCcqSQ==} @@ -9548,25 +9509,21 @@ packages: resolution: {integrity: sha512-mPji9PzleWPvXpmFDKaXpTymRgZkk/hW8JHGhvEZpKHHXMYgTGWC+BqOEM2A4dYC4bu4fi9RrteL7aouRRWJoQ==} cpu: [arm64] os: [linux] - libc: [glibc] '@nx/nx-linux-arm64-musl@22.5.4': resolution: {integrity: sha512-hF/HvEhbCjcFpTgY7RbP1tUTbp0M1adZq4ckyW8mwhDWQ/MDsc8FnOHwCO3Bzy9ZeJM0zQUES6/m0Onz8geaEA==} cpu: [arm64] os: [linux] - libc: [musl] '@nx/nx-linux-x64-gnu@22.5.4': resolution: {integrity: sha512-1+vicSYEOtc7CNMoRCjo59no4gFe8w2nGIT127wk1yeW3EJzRVNlOA7Deu10NUUbzLeOvHc8EFOaU7clT+F7XQ==} cpu: [x64] os: [linux] - libc: [glibc] '@nx/nx-linux-x64-musl@22.5.4': resolution: {integrity: sha512-/KjndxVB14yU0SJOhqADHOWoTy4Y45h5RjW3cxcXlPSJZz7ar1FnlLne1rWMMMUttepc8ku+3T//SGKi2eu+Nw==} cpu: [x64] os: [linux] - libc: [musl] '@nx/nx-win32-arm64-msvc@22.5.4': resolution: {integrity: sha512-CrYt9FwhjOI6ZNy/G6YHLJmZuXCFJ24BCxugPXiZ7knDx7eGrr7owGgfht4SSiK3KCX40CvWCBJfqR4ZSgaSUA==} @@ -9643,37 +9600,31 @@ packages: resolution: {integrity: sha512-u2ndfeEUrW898eXM+qPxIN8TvTPjI90NDQBRgaxxkOfNw3xaotloeiZGz5+Yzlfxgvxr9DY9FdYkqhUhSnGhOw==} cpu: [arm64] os: [linux] - libc: [glibc] '@oxc-resolver/binding-linux-arm64-musl@5.3.0': resolution: {integrity: sha512-TzbjmFkcnESGuVItQ2diKacX8vu5G0bH3BHmIlmY4OSRLyoAlrJFwGKAHmh6C9+Amfcjo2rx8vdm7swzmsGC6Q==} cpu: [arm64] os: [linux] - libc: [musl] '@oxc-resolver/binding-linux-riscv64-gnu@5.3.0': resolution: {integrity: sha512-NH3pjAqh8nuN29iRuRfTY42Vn03ctoR9VE8llfoUKUfhHUjFHYOXK5VSkhjj1usG8AeuesvqrQnLptCRQVTi/Q==} cpu: [riscv64] os: [linux] - libc: [glibc] '@oxc-resolver/binding-linux-s390x-gnu@5.3.0': resolution: {integrity: sha512-tuZtkK9sJYh2MC2uhol1M/8IMTB6ZQ5jmqP2+k5XNXnOb/im94Y5uV/u2lXwVyIuKHZZHtr+0d1HrOiNahoKpw==} cpu: [s390x] os: [linux] - libc: [glibc] '@oxc-resolver/binding-linux-x64-gnu@5.3.0': resolution: {integrity: sha512-VzhPYmZCtoES/ThcPdGSmMop7JlwgqtSvlgtKCW15ByV2JKyl8kHAHnPSBfpIooXb0ehFnRdxFtL9qtAEWy01g==} cpu: [x64] os: [linux] - libc: [glibc] '@oxc-resolver/binding-linux-x64-musl@5.3.0': resolution: {integrity: sha512-Hi39cWzul24rGljN4Vf1lxjXzQdCrdxO5oCT7KJP4ndSlqIUODJnfnMAP1YhcnIRvNvk+5E6sZtnEmFUd/4d8Q==} cpu: [x64] os: [linux] - libc: [musl] '@oxc-resolver/binding-wasm32-wasi@5.3.0': resolution: {integrity: sha512-ddujvHhP3chmHnSXRlkPVUeYj4/B7eLZwL4yUid+df3WCbVh6DgoT9RmllZn21AhxgKtMdekDdyVJYKFd8tl4A==} @@ -9723,42 +9674,36 @@ packages: engines: {node: '>= 10.0.0'} cpu: [arm] os: [linux] - libc: [glibc] '@parcel/watcher-linux-arm-musl@2.5.6': resolution: {integrity: sha512-Ve3gUCG57nuUUSyjBq/MAM0CzArtuIOxsBdQ+ftz6ho8n7s1i9E1Nmk/xmP323r2YL0SONs1EuwqBp2u1k5fxg==} engines: {node: '>= 10.0.0'} cpu: [arm] os: [linux] - libc: [musl] '@parcel/watcher-linux-arm64-glibc@2.5.6': resolution: {integrity: sha512-f2g/DT3NhGPdBmMWYoxixqYr3v/UXcmLOYy16Bx0TM20Tchduwr4EaCbmxh1321TABqPGDpS8D/ggOTaljijOA==} engines: {node: '>= 10.0.0'} cpu: [arm64] os: [linux] - libc: [glibc] '@parcel/watcher-linux-arm64-musl@2.5.6': resolution: {integrity: sha512-qb6naMDGlbCwdhLj6hgoVKJl2odL34z2sqkC7Z6kzir8b5W65WYDpLB6R06KabvZdgoHI/zxke4b3zR0wAbDTA==} engines: {node: '>= 10.0.0'} cpu: [arm64] os: [linux] - libc: [musl] '@parcel/watcher-linux-x64-glibc@2.5.6': resolution: {integrity: sha512-kbT5wvNQlx7NaGjzPFu8nVIW1rWqV780O7ZtkjuWaPUgpv2NMFpjYERVi0UYj1msZNyCzGlaCWEtzc+exjMGbQ==} engines: {node: '>= 10.0.0'} cpu: [x64] os: [linux] - libc: [glibc] '@parcel/watcher-linux-x64-musl@2.5.6': resolution: {integrity: sha512-1JRFeC+h7RdXwldHzTsmdtYR/Ku8SylLgTU/reMuqdVD7CtLwf0VR1FqeprZ0eHQkO0vqsbvFLXUmYm/uNKJBg==} engines: {node: '>= 10.0.0'} cpu: [x64] os: [linux] - libc: [musl] '@parcel/watcher-win32-arm64@2.5.6': resolution: {integrity: sha512-3ukyebjc6eGlw9yRt678DxVF7rjXatWiHvTXqphZLvo7aC5NdEgFufVwjFfY51ijYEWpXbqF5jtrK275z52D4Q==} @@ -11627,70 +11572,60 @@ packages: engines: {node: ^20.19.0 || >=22.12.0} cpu: [arm64] os: [linux] - libc: [glibc] '@rolldown/binding-linux-arm64-gnu@1.0.0-rc.9': resolution: {integrity: sha512-2x9O2JbSPxpxMDhP9Z74mahAStibTlrBMW0520+epJH5sac7/LwZW5Bmg/E6CXuEF53JJFW509uP+lSedaUNxg==} engines: {node: ^20.19.0 || >=22.12.0} cpu: [arm64] os: [linux] - libc: [glibc] '@rolldown/binding-linux-arm64-musl@1.0.0-rc.3': resolution: {integrity: sha512-Z03/wrqau9Bicfgb3Dbs6SYTHliELk2PM2LpG2nFd+cGupTMF5kanLEcj2vuuJLLhptNyS61rtk7SOZ+lPsTUA==} engines: {node: ^20.19.0 || >=22.12.0} cpu: [arm64] os: [linux] - libc: [musl] '@rolldown/binding-linux-arm64-musl@1.0.0-rc.9': resolution: {integrity: sha512-JA1QRW31ogheAIRhIg9tjMfsYbglXXYGNPLdPEYrwFxdbkQCAzvpSCSHCDWNl4hTtrol8WeboCSEpjdZK8qrCg==} engines: {node: ^20.19.0 || >=22.12.0} cpu: [arm64] os: [linux] - libc: [musl] '@rolldown/binding-linux-ppc64-gnu@1.0.0-rc.9': resolution: {integrity: sha512-aOKU9dJheda8Kj8Y3w9gnt9QFOO+qKPAl8SWd7JPHP+Cu0EuDAE5wokQubLzIDQWg2myXq2XhTpOVS07qqvT+w==} engines: {node: ^20.19.0 || >=22.12.0} cpu: [ppc64] os: [linux] - libc: [glibc] '@rolldown/binding-linux-s390x-gnu@1.0.0-rc.9': resolution: {integrity: sha512-OalO94fqj7IWRn3VdXWty75jC5dk4C197AWEuMhIpvVv2lw9fiPhud0+bW2ctCxb3YoBZor71QHbY+9/WToadA==} engines: {node: ^20.19.0 || >=22.12.0} cpu: [s390x] os: [linux] - libc: [glibc] '@rolldown/binding-linux-x64-gnu@1.0.0-rc.3': resolution: {integrity: sha512-iSXXZsQp08CSilff/DCTFZHSVEpEwdicV3W8idHyrByrcsRDVh9sGC3sev6d8BygSGj3vt8GvUKBPCoyMA4tgQ==} engines: {node: ^20.19.0 || >=22.12.0} cpu: [x64] os: [linux] - libc: [glibc] '@rolldown/binding-linux-x64-gnu@1.0.0-rc.9': resolution: {integrity: sha512-cVEl1vZtBsBZna3YMjGXNvnYYrOJ7RzuWvZU0ffvJUexWkukMaDuGhUXn0rjnV0ptzGVkvc+vW9Yqy6h8YX4pg==} engines: {node: ^20.19.0 || >=22.12.0} cpu: [x64] os: [linux] - libc: [glibc] '@rolldown/binding-linux-x64-musl@1.0.0-rc.3': resolution: {integrity: sha512-qaj+MFudtdCv9xZo9znFvkgoajLdc+vwf0Kz5N44g+LU5XMe+IsACgn3UG7uTRlCCvhMAGXm1XlpEA5bZBrOcw==} engines: {node: ^20.19.0 || >=22.12.0} cpu: [x64] os: [linux] - libc: [musl] '@rolldown/binding-linux-x64-musl@1.0.0-rc.9': resolution: {integrity: sha512-UzYnKCIIc4heAKgI4PZ3dfBGUZefGCJ1TPDuLHoCzgrMYPb5Rv6TLFuYtyM4rWyHM7hymNdsg5ik2C+UD9VDbA==} engines: {node: ^20.19.0 || >=22.12.0} cpu: [x64] os: [linux] - libc: [musl] '@rolldown/binding-openharmony-arm64@1.0.0-rc.3': resolution: {integrity: sha512-U662UnMETyjT65gFmG9ma+XziENrs7BBnENi/27swZPYagubfHRirXHG2oMl+pEax2WvO7Kb9gHZmMakpYqBHQ==} @@ -11904,157 +11839,131 @@ packages: resolution: {integrity: sha512-t4ONHboXi/3E0rT6OZl1pKbl2Vgxf9vJfWgmUoCEVQVxhW6Cw/c8I6hbbu7DAvgp82RKiH7TpLwxnJeKv2pbsw==} cpu: [arm] os: [linux] - libc: [glibc] '@rollup/rollup-linux-arm-gnueabihf@4.62.2': resolution: {integrity: sha512-n1GJHPOvpIfhi3TmrCeh6S6URt9BFCt0KQE3qvexyGCTAKpR4Lg+eWvNZEqu7epxwus/8ElT3hacYEucm49SZg==} cpu: [arm] os: [linux] - libc: [glibc] '@rollup/rollup-linux-arm-musleabihf@4.59.0': resolution: {integrity: sha512-CikFT7aYPA2ufMD086cVORBYGHffBo4K8MQ4uPS/ZnY54GKj36i196u8U+aDVT2LX4eSMbyHtyOh7D7Zvk2VvA==} cpu: [arm] os: [linux] - libc: [musl] '@rollup/rollup-linux-arm-musleabihf@4.62.2': resolution: {integrity: sha512-JqgflS8wEB+UXV/vS1RpRbifGBeN4D5lz8D8oOFbFZw4vedvdOgCFAjfBmIMdW3yL10XpQQ0Ambepw6MXrhOnA==} cpu: [arm] os: [linux] - libc: [musl] '@rollup/rollup-linux-arm64-gnu@4.59.0': resolution: {integrity: sha512-jYgUGk5aLd1nUb1CtQ8E+t5JhLc9x5WdBKew9ZgAXg7DBk0ZHErLHdXM24rfX+bKrFe+Xp5YuJo54I5HFjGDAA==} cpu: [arm64] os: [linux] - libc: [glibc] '@rollup/rollup-linux-arm64-gnu@4.62.2': resolution: {integrity: sha512-wnFJkogWvN4jm/hQRF2UBaeUmk20j5+DmHvoyWii2b8HJDyvz1MF2OU/6ynXt2KR63rbZLWkFpoytpdc/yBuSA==} cpu: [arm64] os: [linux] - libc: [glibc] '@rollup/rollup-linux-arm64-musl@4.59.0': resolution: {integrity: sha512-peZRVEdnFWZ5Bh2KeumKG9ty7aCXzzEsHShOZEFiCQlDEepP1dpUl/SrUNXNg13UmZl+gzVDPsiCwnV1uI0RUA==} cpu: [arm64] os: [linux] - libc: [musl] '@rollup/rollup-linux-arm64-musl@4.62.2': resolution: {integrity: sha512-HVu2bp0zhvJ8xHEV9+UUs7S90VadmBSY3LcIMvozbPo4AuMGDWlz3ymHLHZPX4hR67TKTt8Qp5PJ5RBg/i+RMQ==} cpu: [arm64] os: [linux] - libc: [musl] '@rollup/rollup-linux-loong64-gnu@4.59.0': resolution: {integrity: sha512-gbUSW/97f7+r4gHy3Jlup8zDG190AuodsWnNiXErp9mT90iCy9NKKU0Xwx5k8VlRAIV2uU9CsMnEFg/xXaOfXg==} cpu: [loong64] os: [linux] - libc: [glibc] '@rollup/rollup-linux-loong64-gnu@4.62.2': resolution: {integrity: sha512-mQqqAV8QaoSgr9I2fKDLY2BAVvmKjWoGiu/cSYQonsLvtqwEn1E4QYfnCOcp5zoEqNhsDYin1s6jx/VJmrxlZg==} cpu: [loong64] os: [linux] - libc: [glibc] '@rollup/rollup-linux-loong64-musl@4.59.0': resolution: {integrity: sha512-yTRONe79E+o0FWFijasoTjtzG9EBedFXJMl888NBEDCDV9I2wGbFFfJQQe63OijbFCUZqxpHz1GzpbtSFikJ4Q==} cpu: [loong64] os: [linux] - libc: [musl] '@rollup/rollup-linux-loong64-musl@4.62.2': resolution: {integrity: sha512-IxKLoxCQ2IWi6bT2akyDUBGsOImDKB+sPp4EsTmwFQ/fMwpCKm8uLSSgP/Kx/QYUgKis6SEZ5/Nlhup0DIA0PQ==} cpu: [loong64] os: [linux] - libc: [musl] '@rollup/rollup-linux-ppc64-gnu@4.59.0': resolution: {integrity: sha512-sw1o3tfyk12k3OEpRddF68a1unZ5VCN7zoTNtSn2KndUE+ea3m3ROOKRCZxEpmT9nsGnogpFP9x6mnLTCaoLkA==} cpu: [ppc64] os: [linux] - libc: [glibc] '@rollup/rollup-linux-ppc64-gnu@4.62.2': resolution: {integrity: sha512-Mk5ha2RQSgyFfmYYLkBpPnUk8D8FriBxesO1u9O75X0mHgXL1UQcH5Itl2lurWL2tj0RxV9b9tJgipac0hRY9A==} cpu: [ppc64] os: [linux] - libc: [glibc] '@rollup/rollup-linux-ppc64-musl@4.59.0': resolution: {integrity: sha512-+2kLtQ4xT3AiIxkzFVFXfsmlZiG5FXYW7ZyIIvGA7Bdeuh9Z0aN4hVyXS/G1E9bTP/vqszNIN/pUKCk/BTHsKA==} cpu: [ppc64] os: [linux] - libc: [musl] '@rollup/rollup-linux-ppc64-musl@4.62.2': resolution: {integrity: sha512-CjvEnqJL/0/TQ3TXX3OPIJ/kmBellrWd4heXUmHeJlTnmwjKpSJzoehLaL6Xk0ZnMHBu9dZuFADNOrtjF4v+2w==} cpu: [ppc64] os: [linux] - libc: [musl] '@rollup/rollup-linux-riscv64-gnu@4.59.0': resolution: {integrity: sha512-NDYMpsXYJJaj+I7UdwIuHHNxXZ/b/N2hR15NyH3m2qAtb/hHPA4g4SuuvrdxetTdndfj9b1WOmy73kcPRoERUg==} cpu: [riscv64] os: [linux] - libc: [glibc] '@rollup/rollup-linux-riscv64-gnu@4.62.2': resolution: {integrity: sha512-1SiZbzwdkaDURsew/tSOrooKiYy7EQGT6m8ufavAi9NEyQb/6VuIxFXAL1fqa4iZe3g4NbNk4P7J32z2tw5Mgg==} cpu: [riscv64] os: [linux] - libc: [glibc] '@rollup/rollup-linux-riscv64-musl@4.59.0': resolution: {integrity: sha512-nLckB8WOqHIf1bhymk+oHxvM9D3tyPndZH8i8+35p/1YiVoVswPid2yLzgX7ZJP0KQvnkhM4H6QZ5m0LzbyIAg==} cpu: [riscv64] os: [linux] - libc: [musl] '@rollup/rollup-linux-riscv64-musl@4.62.2': resolution: {integrity: sha512-nQts12zJ3NQRoE6uYljOH89v7szzLDvG2JD/vsX+vGXU8w/At1GowTZ5/7qeFQ8m7L55rpR8Okugnuo5bgjy2Q==} cpu: [riscv64] os: [linux] - libc: [musl] '@rollup/rollup-linux-s390x-gnu@4.59.0': resolution: {integrity: sha512-oF87Ie3uAIvORFBpwnCvUzdeYUqi2wY6jRFWJAy1qus/udHFYIkplYRW+wo+GRUP4sKzYdmE1Y3+rY5Gc4ZO+w==} cpu: [s390x] os: [linux] - libc: [glibc] '@rollup/rollup-linux-s390x-gnu@4.62.2': resolution: {integrity: sha512-E9/ll019jhPIJgpzfZoIkBGhcz+kKNgVWYRY0zr9srBdPPFVpvOKW8VaJKUbeK+eZXyQF9ltME+Kk6affeaPgg==} cpu: [s390x] os: [linux] - libc: [glibc] '@rollup/rollup-linux-x64-gnu@4.59.0': resolution: {integrity: sha512-3AHmtQq/ppNuUspKAlvA8HtLybkDflkMuLK4DPo77DfthRb71V84/c4MlWJXixZz4uruIH4uaa07IqoAkG64fg==} cpu: [x64] os: [linux] - libc: [glibc] '@rollup/rollup-linux-x64-gnu@4.62.2': resolution: {integrity: sha512-5BqxR/pshjey51iliyzTD5Xi3EN0aLmQ2lZ3lvefVV9c82BvrLo2/6OT55iifpWBufs6kdwWbuOKS841DrmK9A==} cpu: [x64] os: [linux] - libc: [glibc] '@rollup/rollup-linux-x64-musl@4.59.0': resolution: {integrity: sha512-2UdiwS/9cTAx7qIUZB/fWtToJwvt0Vbo0zmnYt7ED35KPg13Q0ym1g442THLC7VyI6JfYTP4PiSOWyoMdV2/xg==} cpu: [x64] os: [linux] - libc: [musl] '@rollup/rollup-linux-x64-musl@4.62.2': resolution: {integrity: sha512-uNN83XxQrRAh/w0/pmAfibcwyb6YWt4gP+dpnQKPVJshAloQ785ii8CT8ZCIxkGg9opVsvAlGhFitSm6D1Jjpg==} cpu: [x64] os: [linux] - libc: [musl] '@rollup/rollup-openbsd-x64@4.59.0': resolution: {integrity: sha512-M3bLRAVk6GOwFlPTIxVBSYKUaqfLrn8l0psKinkCFxl4lQvOSz8ZrKDz2gxcBwHFpci0B6rttydI4IpS4IS/jQ==} @@ -12674,361 +12583,301 @@ packages: resolution: {integrity: sha512-/24UytJXrK+7CsucDb30GCKYIJ8nG6ceqbJyOtsJv9zeArNLHkxrYGSyjHJIpQfwVN17BPP4RNOi+yIZ3ZgDyA==} cpu: [arm64] os: [linux] - libc: [glibc] '@rspack/binding-linux-arm64-gnu@1.0.14': resolution: {integrity: sha512-JogYtL3VQS9wJ3p3FNhDqinm7avrMsdwz4erP7YCjD7idob93GYAE7dPrHUzSNVnCBYXRaHJYZHDQs7lKVcYZw==} cpu: [arm64] os: [linux] - libc: [glibc] '@rspack/binding-linux-arm64-gnu@1.3.11': resolution: {integrity: sha512-NIOaIfYUmJs1XL4lbGVtcMm1KlA/6ZR6oAbs2ekofKXtJYAFQgnLTf7ZFmIwVjS0mP78BmeSNcIM6pd2w5id4w==} cpu: [arm64] os: [linux] - libc: [glibc] '@rspack/binding-linux-arm64-gnu@1.3.15': resolution: {integrity: sha512-D/YjYk9snKvYm1Elotq8/GsEipB4ZJWVv/V8cZ+ohhFNOPzygENi6JfyI06TryBTQiN0/JDZqt/S9RaWBWnMqw==} cpu: [arm64] os: [linux] - libc: [glibc] '@rspack/binding-linux-arm64-gnu@1.3.9': resolution: {integrity: sha512-pBKnS2Fbn9cDtWe1KcD1qRjQlJwQhP9pFW2KpxdjE7qXbaO11IHtem6dLZwdpNqbDn9QgyfdVGXBDvBaP1tGwA==} cpu: [arm64] os: [linux] - libc: [glibc] '@rspack/binding-linux-arm64-gnu@1.5.8': resolution: {integrity: sha512-UAWCsOnpkvy8eAVRo0uipbHXDhnoDq5zmqWTMhpga0/a3yzCp2e+fnjZb/qnFNYb5MeL0O1mwMOYgn1M3oHILQ==} cpu: [arm64] os: [linux] - libc: [glibc] '@rspack/binding-linux-arm64-gnu@1.6.0-beta.1': resolution: {integrity: sha512-UyUoh5RXHTWCktqPVnqoc5rwlWyLkWqGu6ga+iyJHDxdxlrHFfwJnTSnCd4y8cRadf7CrmjHElxE61GU3WCYhw==} cpu: [arm64] os: [linux] - libc: [glibc] '@rspack/binding-linux-arm64-gnu@1.6.8': resolution: {integrity: sha512-fvZX6xZPvBT8qipSpvkKMX5M7yd2BSpZNCZXcefw6gA3uC7LI3gu+er0LrDXY1PtPzVuHTyDx+abwWpagV3PiQ==} cpu: [arm64] os: [linux] - libc: [glibc] '@rspack/binding-linux-arm64-gnu@1.7.9': resolution: {integrity: sha512-qhUGI/uVfvLmKWts4QkVHGL8yfUyJkblZs+OFD5Upa2y676EOsbQgWsCwX4xGB6Tv+TOzFP0SLh/UfO8ZfdE+w==} cpu: [arm64] os: [linux] - libc: [glibc] '@rspack/binding-linux-arm64-gnu@2.0.0-beta.0': resolution: {integrity: sha512-nTtYtklRZD4sb2RIFCF9YS8tZ/MjpqIBKVS3YIvdXcfHUdVfmQHTZGtwEuZGg6AxTC5L1hcvkYmTXCG0ok7auw==} cpu: [arm64] os: [linux] - libc: [glibc] '@rspack/binding-linux-arm64-gnu@2.0.6': resolution: {integrity: sha512-H6ACzeM1KBxYDEF8YAim3501Jb1aCsSG79Gjm1M4pwJ5OJPK2ydiJEa438ugXmh0962eKYMHI2yZY0sQq8txaw==} cpu: [arm64] os: [linux] - libc: [glibc] '@rspack/binding-linux-arm64-gnu@2.0.8': resolution: {integrity: sha512-pSI+npPQE/uDtiboqvcOIRJbEV2+B+H1xffmko/gw50la92oTUW60kVULFwsb6L0+GVCzIcwX3yq60GtYIn+Ug==} cpu: [arm64] os: [linux] - libc: [glibc] '@rspack/binding-linux-arm64-gnu@2.1.2': resolution: {integrity: sha512-My4m40tyJSgiCEf3bB2KIEX710q3nZg99LIjy+8Zxgi3oZTkg1bFmFRusFU5U4eN5408zfSqDDGvjDE3Yv7o4w==} cpu: [arm64] os: [linux] - libc: [glibc] '@rspack/binding-linux-arm64-gnu@2.1.8': resolution: {integrity: sha512-KLniMc9GzhKpVqhPzaJo3KJwzdAllXVVqZIk/uL1QipXOxs57fgM4u7IexKPFVla0o/u1PQG/Ah2YLDmda24Ow==} cpu: [arm64] os: [linux] - libc: [glibc] '@rspack/binding-linux-arm64-musl@0.7.5': resolution: {integrity: sha512-6RcxG42mLM01Pa6UYycACu/Nu9qusghAPUJumb8b8x5TRIDEtklYC5Ck6Rmagm+8E0ucMude2E/D4rMdIFcS3A==} cpu: [arm64] os: [linux] - libc: [musl] '@rspack/binding-linux-arm64-musl@1.0.14': resolution: {integrity: sha512-qgybhxI/nnoa8CUz7zKTC0Oh37NZt9uRxsSV7+ZYrfxqbrVCoNVuutPpY724uUHy1M6W34kVEm1uT1N4Ka5cZg==} cpu: [arm64] os: [linux] - libc: [musl] '@rspack/binding-linux-arm64-musl@1.3.11': resolution: {integrity: sha512-CRRAQ379uzA2QfD9HHNtxuuqzGksUapMVcTLY5NIXWfvHLUJShdlSJQv3UQcqgAJNrMY7Ex1PnoQs1jZgUiqZA==} cpu: [arm64] os: [linux] - libc: [musl] '@rspack/binding-linux-arm64-musl@1.3.15': resolution: {integrity: sha512-lJbBsPMOiR0hYPCSM42yp7QiZjfo0ALtX7ws2wURpsQp3BMfRVAmXU3Ixpo2XCRtG1zj8crHaCmAWOJTS0smsA==} cpu: [arm64] os: [linux] - libc: [musl] '@rspack/binding-linux-arm64-musl@1.3.9': resolution: {integrity: sha512-0B+iiINW0qOEkBE9exsRcdmcHtYIWAoJGnXrz9tUiiewRxX0Cmm0MjD2HAVUAggJZo+9IN8RGz5PopCjJ/dn1g==} cpu: [arm64] os: [linux] - libc: [musl] '@rspack/binding-linux-arm64-musl@1.5.8': resolution: {integrity: sha512-GnSvGT4GjokPSD45cTtE+g7LgghuxSP1MRmvd+Vp/I8pnxTVSTsebRod4TAqyiv+l11nuS8yqNveK9qiOkBLWw==} cpu: [arm64] os: [linux] - libc: [musl] '@rspack/binding-linux-arm64-musl@1.6.0-beta.1': resolution: {integrity: sha512-JAXVKHQieN4Ruvs7MstvsPUtRBSAROqJ0abCh4rXdV+FzncKp/ZkdfjQploDhBWtWfU8rPvIjaxeZcPfHMI5/A==} cpu: [arm64] os: [linux] - libc: [musl] '@rspack/binding-linux-arm64-musl@1.6.8': resolution: {integrity: sha512-++XMKcMNrt59HcFBLnRaJcn70k3X0GwkAegZBVpel8xYIAgvoXT5+L8P1ExId/yTFxqedaz8DbcxQnNmMozviw==} cpu: [arm64] os: [linux] - libc: [musl] '@rspack/binding-linux-arm64-musl@1.7.9': resolution: {integrity: sha512-VjfmR1hgO9n3L6MaE5KG+DXSrrLVqHHOkVcOtS2LMq3bjMTwbBywY7ycymcLnX5KJsol8d3ZGYep6IfSOt3lFA==} cpu: [arm64] os: [linux] - libc: [musl] '@rspack/binding-linux-arm64-musl@2.0.0-beta.0': resolution: {integrity: sha512-S2fshx0Rf7/XYwoMLaqFsVg4y+VAfHzubrczy8AW5xIs6UNC3eRLVTgShLerUPtF6SG+v6NQxQ9JI3vOo2qPOA==} cpu: [arm64] os: [linux] - libc: [musl] '@rspack/binding-linux-arm64-musl@2.0.6': resolution: {integrity: sha512-QTFmBg0n+L397Wi8CIjbd5pe/hxpHnqCDaG1A7e2NWX8Fj9zulAoKLiKflQa1ELEhAY4Foq88aX75+Ilt2tHcw==} cpu: [arm64] os: [linux] - libc: [musl] '@rspack/binding-linux-arm64-musl@2.0.8': resolution: {integrity: sha512-igjJ43yxWQ72GZqjDDZSSHax9/Vg+6rLMmOvFglTJUkQpB4Tyvu/YjW+WRjYj2xRw6blOjLxUSJWASvuSqqlvg==} cpu: [arm64] os: [linux] - libc: [musl] '@rspack/binding-linux-arm64-musl@2.1.2': resolution: {integrity: sha512-yt+GGWUH7WPE8K97cRc8OpZhH7Pbj1vU+lkvKbDtF/rR8X9a/bJsA/nBqyUV2oBKOVbrp5I8rFZlnDskMqgvKw==} cpu: [arm64] os: [linux] - libc: [musl] '@rspack/binding-linux-arm64-musl@2.1.8': resolution: {integrity: sha512-yUKAxHNGnICtw5RnxFWu4dHtsz/tdt7rbeFcsINNVre9HcrRxf5XP+FbOGL/SMxd9oM9XCo10paU2WckTKwbEA==} cpu: [arm64] os: [linux] - libc: [musl] '@rspack/binding-linux-riscv64-gnu@2.1.2': resolution: {integrity: sha512-uys8Jyw8Z3ralvICbN/L/nZfy5qELIwpOY72rhIqhoDYwFcL4fmMaY7WsvUcJOjCB2rqOcWPaWKuF2oPvo9iDQ==} cpu: [riscv64] os: [linux] - libc: [glibc] '@rspack/binding-linux-riscv64-gnu@2.1.8': resolution: {integrity: sha512-gg4S1jaitwYPHR9HZ3zNGH1EK2GXINm66p4kEpOP1gbc+akyOouVF/dMcu9NGPlRg58FbEhVRZYKu7Z/zcpKHg==} cpu: [riscv64] os: [linux] - libc: [glibc] '@rspack/binding-linux-riscv64-musl@2.1.2': resolution: {integrity: sha512-JYNVQwqCaRGQWvjHQYzZkIzQiwllMaJwh4Rdu3ww6W2OJcJUqT08sL1pkOtU0iCxT4VUYiRRcp93VGTGpHr8fg==} cpu: [riscv64] os: [linux] - libc: [musl] '@rspack/binding-linux-riscv64-musl@2.1.8': resolution: {integrity: sha512-b/aU5j1h368SLNyz5u+flqpZVhzSZ1UIslaj9sZJuAvqkGWv3xsjc/28/PTo/RYXCxd0FNVAxTxWHKvRiAAS8w==} cpu: [riscv64] os: [linux] - libc: [musl] '@rspack/binding-linux-x64-gnu@0.7.5': resolution: {integrity: sha512-R0Lu4CJN2nWMW7WzPBuCIju80cQPpcaqwKJDj/quwQySpJJZ6c5qGwB8mntqjxIzZDrNH6u0OkpiUTbvWZj8ww==} cpu: [x64] os: [linux] - libc: [glibc] '@rspack/binding-linux-x64-gnu@1.0.14': resolution: {integrity: sha512-5vzaDRw3/sGKo3ax/1cU3/cxqNjajwlt2LU288vXNe1/n8oe/pcDfYcTugpOe/A1DqzadanudJszLpFcKsaFtQ==} cpu: [x64] os: [linux] - libc: [glibc] '@rspack/binding-linux-x64-gnu@1.3.11': resolution: {integrity: sha512-k3OyvLneX2ZeL8z/OzPojpImqy6PgqKJD+NtOvcr/TgbgADHZ3xQttf6B2X+qnZMAgOZ+RTeTkOFrvsg9AEKmA==} cpu: [x64] os: [linux] - libc: [glibc] '@rspack/binding-linux-x64-gnu@1.3.15': resolution: {integrity: sha512-qGB8ucHklrzNg6lsAS36VrBsCbOw0acgpQNqTE5cuHWrp1Pu3GFTRiFEogenxEmzoRbohMZt0Ev5grivrcgKBQ==} cpu: [x64] os: [linux] - libc: [glibc] '@rspack/binding-linux-x64-gnu@1.3.9': resolution: {integrity: sha512-82izGJw/qxJ4xaHJy/A4MF7aTRT9tE6VlWoWM4rJmqRszfujN/w54xJRie9jkt041TPvJWGNpYD4Hjpt0/n/oA==} cpu: [x64] os: [linux] - libc: [glibc] '@rspack/binding-linux-x64-gnu@1.5.8': resolution: {integrity: sha512-XLxh5n/pzUfxsugz/8rVBv+Tx2nqEM+9rharK69kfooDsQNKyz7PANllBQ/v4svJ+W0BRHnDL4qXSGdteZeEjA==} cpu: [x64] os: [linux] - libc: [glibc] '@rspack/binding-linux-x64-gnu@1.6.0-beta.1': resolution: {integrity: sha512-LqAos71CJS5/V4knX9T7T68oGz0XPRZ2IJmI3jEByRlNcyZdxYeQ7Dw09JO9Y5Xj0T+0cudOeL2MxHcD3gTF/w==} cpu: [x64] os: [linux] - libc: [glibc] '@rspack/binding-linux-x64-gnu@1.6.8': resolution: {integrity: sha512-tv3BWkTE1TndfX+DsE1rSTg8fBevCxujNZ3MlfZ22Wfy9x1FMXTJlWG8VIOXmaaJ1wUHzv8S7cE2YUUJ2LuiCg==} cpu: [x64] os: [linux] - libc: [glibc] '@rspack/binding-linux-x64-gnu@1.7.9': resolution: {integrity: sha512-0kldV+3WTs/VYDWzxJ7K40hCW26IHtnk8xPK3whKoo1649rgeXXa0EdsU5P7hG8Ef5SWQjHHHZ/fuHYSO3Y6HA==} cpu: [x64] os: [linux] - libc: [glibc] '@rspack/binding-linux-x64-gnu@2.0.0-beta.0': resolution: {integrity: sha512-yx5Fk1gl7lfkvqcjolNLCNeduIs6C2alMsQ/kZ1pLeP5MPquVOYNqs6EcDPIp+fUjo3lZYtnJBiZKK+QosbzYg==} cpu: [x64] os: [linux] - libc: [glibc] '@rspack/binding-linux-x64-gnu@2.0.6': resolution: {integrity: sha512-rerCAz022zf0ewxI+7n3SrqLEaxCL+MXRxKjK5FLUGFa8UkIrivq+VUP/1OB6JLh2Bucebc7Y9WoWHvtk22mLA==} cpu: [x64] os: [linux] - libc: [glibc] '@rspack/binding-linux-x64-gnu@2.0.8': resolution: {integrity: sha512-zrkoEOnqj1hOEBO5T2I/2Ts2HSJsYFh1qXwMpK4dMJFGGNWDfNeUa6/LF5uq3VINF3JUl7RL47AgrucoSZJXPA==} cpu: [x64] os: [linux] - libc: [glibc] '@rspack/binding-linux-x64-gnu@2.1.2': resolution: {integrity: sha512-KDoPy0Msf/JLhxgPPrJQzZeB4Qpqd32em8AP5lSW2s6jR5I35dHgAe9xc2A++EQtnSrU4GTn6DBvFC7q84SihQ==} cpu: [x64] os: [linux] - libc: [glibc] '@rspack/binding-linux-x64-gnu@2.1.8': resolution: {integrity: sha512-EyegohSx0BJRqieCg9f/caCqFARRWkqI5hwJt6k530MoOTLeq8I3vsbeg24/2MktwIC1dmJi8bl0+WhPKQs4eQ==} cpu: [x64] os: [linux] - libc: [glibc] '@rspack/binding-linux-x64-musl@0.7.5': resolution: {integrity: sha512-dDgi/ThikMy1m4llxPeEXDCA2I8F8ezFS/eCPLZGU2/J1b4ALwDjuRsMmo+VXSlFCKgIt98V6h1woeg7nu96yg==} cpu: [x64] os: [linux] - libc: [musl] '@rspack/binding-linux-x64-musl@1.0.14': resolution: {integrity: sha512-4U6QD9xVS1eGme52DuJr6Fg/KdcUfJ+iKwH49Up460dZ/fLvGylnVGA+V0mzPlKi8gfy7NwFuYXZdu3Pwi1YYg==} cpu: [x64] os: [linux] - libc: [musl] '@rspack/binding-linux-x64-musl@1.3.11': resolution: {integrity: sha512-2agcELyyQ95jWGCW0YWD0TvAcN40yUjmxn9NXQBLHPX5Eb07NaHXairMsvV9vqQsPsq0nxxfd9Wsow18Y5r/Hw==} cpu: [x64] os: [linux] - libc: [musl] '@rspack/binding-linux-x64-musl@1.3.15': resolution: {integrity: sha512-qRn6e40fLQP+N2rQD8GAj/h4DakeTIho32VxTIaHRVuzw68ZD7VmKkwn55ssN370ejmey35ZdoNFNE12RBrMZA==} cpu: [x64] os: [linux] - libc: [musl] '@rspack/binding-linux-x64-musl@1.3.9': resolution: {integrity: sha512-V9nDg63iPI6Z7kM11UPV5kBdOdLXPIu3IgI2ObON5Rd4KEZr7RLo/Q4HKzj0IH27Zwl5qeBJdx69zZdu66eOqg==} cpu: [x64] os: [linux] - libc: [musl] '@rspack/binding-linux-x64-musl@1.5.8': resolution: {integrity: sha512-gE0+MZmwF+01p9/svpEESkzkLpBkVUG2o03YMpwXYC/maeRRhWvF8BJ7R3i/Ls/jFGSE87dKX5NbRLVzqksq/w==} cpu: [x64] os: [linux] - libc: [musl] '@rspack/binding-linux-x64-musl@1.6.0-beta.1': resolution: {integrity: sha512-E4dRMzIHYaoYkgmDTFLrgnGtdspbAuVbLfaPF9AWW5YkQn52obGAgbbNb1wi1JJ5f29nTBoLauYCucEO5IGFvA==} cpu: [x64] os: [linux] - libc: [musl] '@rspack/binding-linux-x64-musl@1.6.8': resolution: {integrity: sha512-DCGgZ5/in1O3FjHWqXnDsncRy+48cMhfuUAAUyl0yDj1NpsZu9pP+xfGLvGcQTiYrVl7IH9Aojf1eShP/77WGA==} cpu: [x64] os: [linux] - libc: [musl] '@rspack/binding-linux-x64-musl@1.7.9': resolution: {integrity: sha512-Gi4872cFtc2d83FKATR6Qcf2VBa/tFCqffI/IwRRl6Hx5FulEBqx+tH7gAuRVF693vrbXNxK+FQ+k4iEsEJxrw==} cpu: [x64] os: [linux] - libc: [musl] '@rspack/binding-linux-x64-musl@2.0.0-beta.0': resolution: {integrity: sha512-sBX4b2W0PgehlAVT224k0Q6GaH6t9HP+hBNDrbX/g6d0hfxZN56gm5NfOTOD1Rien4v7OBEejJ3/uFbm1WjwYQ==} cpu: [x64] os: [linux] - libc: [musl] '@rspack/binding-linux-x64-musl@2.0.6': resolution: {integrity: sha512-96IgOFXQjX6Wbxd+DCYJFy2r/VMu1OoHifW4Cr3kGTYDKoQOIMLwb0ieu/ILp2dGWFMZo5S8odiByAmNICAOIA==} cpu: [x64] os: [linux] - libc: [musl] '@rspack/binding-linux-x64-musl@2.0.8': resolution: {integrity: sha512-6CtDaGZjNDvJd9TBp7a9zABbrPORO21W96+3ZcGBn0YNUPUk4ARxIxrTTpeJ/1F41QDM8AYIkGDdqEYMqTYBsA==} cpu: [x64] os: [linux] - libc: [musl] '@rspack/binding-linux-x64-musl@2.1.2': resolution: {integrity: sha512-66hWmIGvn4zCKAYXJE9Bp5SNSLYnLFq2Ke/efE+ZtWy43Dd5vk9AAOmThVGBwdwmIxmGtHGCp+cAuS4G0wu0TA==} cpu: [x64] os: [linux] - libc: [musl] '@rspack/binding-linux-x64-musl@2.1.8': resolution: {integrity: sha512-I6E+goN+UQ297q4r1qdbiAyNCI3t0+a5Y0xDIAPOZfRDRxDTnH/LF8/y65gjsJoKRKyn7zxRC0T/NURTkRNQ9A==} cpu: [x64] os: [linux] - libc: [musl] '@rspack/binding-wasm32-wasi@1.5.8': resolution: {integrity: sha512-cfg3niNHeJuxuml1Vy9VvaJrI/5TakzoaZvKX2g5S24wfzR50Eyy4JAsZ+L2voWQQp1yMJbmPYPmnTCTxdJQBQ==} @@ -14170,98 +14019,84 @@ packages: engines: {node: '>=10'} cpu: [arm64] os: [linux] - libc: [glibc] '@swc/core-linux-arm64-gnu@1.15.8': resolution: {integrity: sha512-o+1y5u6k2FfPYbTRUPvurwzNt5qd0NTumCTFscCNuBksycloXY16J8L+SMW5QRX59n4Hp9EmFa3vpvNHRVv1+Q==} engines: {node: '>=10'} cpu: [arm64] os: [linux] - libc: [glibc] '@swc/core-linux-arm64-gnu@1.7.26': resolution: {integrity: sha512-YKevOV7abpjcAzXrhsl+W48Z9mZvgoVs2eP5nY+uoMAdP2b3GxC0Df1Co0I90o2lkzO4jYBpTMcZlmUXLdXn+Q==} engines: {node: '>=10'} cpu: [arm64] os: [linux] - libc: [glibc] '@swc/core-linux-arm64-musl@1.15.41': resolution: {integrity: sha512-dXu/5vd4gh8symyhRF+4G7gOPkjmb4pONhh7sl+6GSiW0LOKZlfu5kXmyFbTz9smOT7jgr002qY9b1nujjXt2A==} engines: {node: '>=10'} cpu: [arm64] os: [linux] - libc: [musl] '@swc/core-linux-arm64-musl@1.15.8': resolution: {integrity: sha512-koiCqL09EwOP1S2RShCI7NbsQuG6r2brTqUYE7pV7kZm9O17wZ0LSz22m6gVibpwEnw8jI3IE1yYsQTVpluALw==} engines: {node: '>=10'} cpu: [arm64] os: [linux] - libc: [musl] '@swc/core-linux-arm64-musl@1.7.26': resolution: {integrity: sha512-3w8iZICMkQQON0uIcvz7+Q1MPOW6hJ4O5ETjA0LSP/tuKqx30hIniCGOgPDnv3UTMruLUnQbtBwVCZTBKR3Rkg==} engines: {node: '>=10'} cpu: [arm64] os: [linux] - libc: [musl] '@swc/core-linux-ppc64-gnu@1.15.41': resolution: {integrity: sha512-XGO6zVPXoPE0gf/XnI4jBbafNT13AYgoh6ns0JCSdOetI/kqVf0vhpz7NuNgAzZrMVCsmieqjPoTwViDgh4mOQ==} engines: {node: '>=10'} cpu: [ppc64] os: [linux] - libc: [glibc] '@swc/core-linux-s390x-gnu@1.15.41': resolution: {integrity: sha512-0WUglRwyZtW+iMi7J3iFdrCxreZZIKf4egTwEQfIYRsqFax69A0OrFj+NIoFSE03xBT/IFRrg+S8K6f9Ky+4hA==} engines: {node: '>=10'} cpu: [s390x] os: [linux] - libc: [glibc] '@swc/core-linux-x64-gnu@1.15.41': resolution: {integrity: sha512-VxkuQK59c0tHm6uJZCUrS3cyA2JhGGfdU6e41SZz0x/JS+4Sm7C1mIc97In14vkZJopEt7yXA2TouCqZDSygEA==} engines: {node: '>=10'} cpu: [x64] os: [linux] - libc: [glibc] '@swc/core-linux-x64-gnu@1.15.8': resolution: {integrity: sha512-4p6lOMU3bC+Vd5ARtKJ/FxpIC5G8v3XLoPEZ5s7mLR8h7411HWC/LmTXDHcrSXRC55zvAVia1eldy6zDLz8iFQ==} engines: {node: '>=10'} cpu: [x64] os: [linux] - libc: [glibc] '@swc/core-linux-x64-gnu@1.7.26': resolution: {integrity: sha512-c+pp9Zkk2lqb06bNGkR2Looxrs7FtGDMA4/aHjZcCqATgp348hOKH5WPvNLBl+yPrISuWjbKDVn3NgAvfvpH4w==} engines: {node: '>=10'} cpu: [x64] os: [linux] - libc: [glibc] '@swc/core-linux-x64-musl@1.15.41': resolution: {integrity: sha512-/0qXIu1ZxggLuovLb22vFfKHq2AA4n6Whw5UwmVCHk4pkw7KWnPIQpMCEqUMPsNkFJig7PPp/TSYFu8ZEb2rtQ==} engines: {node: '>=10'} cpu: [x64] os: [linux] - libc: [musl] '@swc/core-linux-x64-musl@1.15.8': resolution: {integrity: sha512-z3XBnbrZAL+6xDGAhJoN4lOueIxC/8rGrJ9tg+fEaeqLEuAtHSW2QHDHxDwkxZMjuF/pZ6MUTjHjbp8wLbuRLA==} engines: {node: '>=10'} cpu: [x64] os: [linux] - libc: [musl] '@swc/core-linux-x64-musl@1.7.26': resolution: {integrity: sha512-PgtyfHBF6xG87dUSSdTJHwZ3/8vWZfNIXQV2GlwEpslrOkGqy+WaiiyE7Of7z9AvDILfBBBcJvJ/r8u980wAfQ==} engines: {node: '>=10'} cpu: [x64] os: [linux] - libc: [musl] '@swc/core-win32-arm64-msvc@1.15.41': resolution: {integrity: sha512-Y481sMNZM6rECh9VO4+y26N1lWEDAyxnBZskUf37fl90uHE946VHfmiVQWT0uMFOhyJJFovGTRuF4W82dwewUg==} @@ -15476,49 +15311,41 @@ packages: resolution: {integrity: sha512-34gw7PjDGB9JgePJEmhEqBhWvCiiWCuXsL9hYphDF7crW7UgI05gyBAi6MF58uGcMOiOqSJ2ybEeCvHcq0BCmQ==} cpu: [arm64] os: [linux] - libc: [glibc] '@unrs/resolver-binding-linux-arm64-musl@1.11.1': resolution: {integrity: sha512-RyMIx6Uf53hhOtJDIamSbTskA99sPHS96wxVE/bJtePJJtpdKGXO1wY90oRdXuYOGOTuqjT8ACccMc4K6QmT3w==} cpu: [arm64] os: [linux] - libc: [musl] '@unrs/resolver-binding-linux-ppc64-gnu@1.11.1': resolution: {integrity: sha512-D8Vae74A4/a+mZH0FbOkFJL9DSK2R6TFPC9M+jCWYia/q2einCubX10pecpDiTmkJVUH+y8K3BZClycD8nCShA==} cpu: [ppc64] os: [linux] - libc: [glibc] '@unrs/resolver-binding-linux-riscv64-gnu@1.11.1': resolution: {integrity: sha512-frxL4OrzOWVVsOc96+V3aqTIQl1O2TjgExV4EKgRY09AJ9leZpEg8Ak9phadbuX0BA4k8U5qtvMSQQGGmaJqcQ==} cpu: [riscv64] os: [linux] - libc: [glibc] '@unrs/resolver-binding-linux-riscv64-musl@1.11.1': resolution: {integrity: sha512-mJ5vuDaIZ+l/acv01sHoXfpnyrNKOk/3aDoEdLO/Xtn9HuZlDD6jKxHlkN8ZhWyLJsRBxfv9GYM2utQ1SChKew==} cpu: [riscv64] os: [linux] - libc: [musl] '@unrs/resolver-binding-linux-s390x-gnu@1.11.1': resolution: {integrity: sha512-kELo8ebBVtb9sA7rMe1Cph4QHreByhaZ2QEADd9NzIQsYNQpt9UkM9iqr2lhGr5afh885d/cB5QeTXSbZHTYPg==} cpu: [s390x] os: [linux] - libc: [glibc] '@unrs/resolver-binding-linux-x64-gnu@1.11.1': resolution: {integrity: sha512-C3ZAHugKgovV5YvAMsxhq0gtXuwESUKc5MhEtjBpLoHPLYM+iuwSj3lflFwK3DPm68660rZ7G8BMcwSro7hD5w==} cpu: [x64] os: [linux] - libc: [glibc] '@unrs/resolver-binding-linux-x64-musl@1.11.1': resolution: {integrity: sha512-rV0YSoyhK2nZ4vEswT/QwqzqQXw5I6CjoaYMOX0TqBlWhojUf8P94mvI7nuJTeaCkkds3QE4+zS8Ko+GdXuZtA==} cpu: [x64] os: [linux] - libc: [musl] '@unrs/resolver-binding-wasm32-wasi@1.11.1': resolution: {integrity: sha512-5u4RkfxJm+Ng7IWgkzi3qrFOvLvQYnPBmjmZQ8+szTK/b31fQCnleNl1GgEt7nIsZRIf5PLhPwT0WM+q45x/UQ==} @@ -20428,6 +20255,10 @@ packages: resolution: {integrity: sha512-5IAMJOXfpA5nT+K0MNjClchzz0IhBHs2Szl7WFAhrFOsbtQsYmNynFyJRg/a3IPsmCfxcrf8txUGiNShXpK5Rg==} engines: {node: '>=16.0.0'} + hono@4.12.26: + resolution: {integrity: sha512-uyZtpnYxM9CmQ7QsQknM4zN8EftNqhON1qYeIKM0Se67CCEe2c44xyGURwB0axX2fBDu1dqHrHAc1hmNT8ITkw==} + engines: {node: '>=16.9.0'} + hono@4.12.34: resolution: {integrity: sha512-GqXJqY/xJkJmuloTrnV1ZEXG3fqte+VjkUqoRNZXcrUidiUOP4fMSIHHY4tsqZBK++kVyWmt/AAfSUuy57/eSA==} engines: {node: '>=16.9.0'} @@ -26075,112 +25906,96 @@ packages: engines: {node: '>=14.0.0'} cpu: [arm64] os: [linux] - libc: glibc sass-embedded-linux-arm64@1.98.0: resolution: {integrity: sha512-axOE3t2MTBwCtkUCbrdM++Gj0gC0fdHJPrgzQ+q1WUmY9NoNMGqflBtk5mBZaWUeha2qYO3FawxCB8lctFwCtw==} engines: {node: '>=14.0.0'} cpu: [arm64] os: [linux] - libc: glibc sass-embedded-linux-arm@1.100.0: resolution: {integrity: sha512-9Ul7O1eKrc5YlhwWjkp8tZPSe3UEwSZ1uwUZOQom1HL0pRlBA6F/IlGZYFTLwnHMIP1fc77MMNaBRfc05mKMpw==} engines: {node: '>=14.0.0'} cpu: [arm] os: [linux] - libc: glibc sass-embedded-linux-arm@1.98.0: resolution: {integrity: sha512-03baQZCxVyEp8v1NWBRlzGYrmVT/LK7ZrHlF1piscGiGxwfdxoLXVuxsylx3qn/dD/4i/rh7Bzk7reK1br9jvQ==} engines: {node: '>=14.0.0'} cpu: [arm] os: [linux] - libc: glibc sass-embedded-linux-musl-arm64@1.100.0: resolution: {integrity: sha512-XpACJB2KjSLjf2e9uuvGVdOURsoNrFqgRiihhXyUHK9W0t3LIHb7z5MA/7XGPIT9bWSOO2zyw+rH/FHtDV/Yrg==} engines: {node: '>=14.0.0'} cpu: [arm64] os: [linux] - libc: musl sass-embedded-linux-musl-arm64@1.98.0: resolution: {integrity: sha512-LeqNxQA8y4opjhe68CcFvMzCSrBuJqYVFbwElEj9bagHXQHTp9xVPJRn6VcrC+0VLEDq13HVXMv7RslIuU0zmA==} engines: {node: '>=14.0.0'} cpu: [arm64] os: [linux] - libc: musl sass-embedded-linux-musl-arm@1.100.0: resolution: {integrity: sha512-sl0JgbGloPyJg66XXx5UDSDScZ0oU85DpMQU4JU/sCUCFj1Z8zZ69SJWKTCNE4/jwnce7WI2zPCV5AG+RHOZJw==} engines: {node: '>=14.0.0'} cpu: [arm] os: [linux] - libc: musl sass-embedded-linux-musl-arm@1.98.0: resolution: {integrity: sha512-OBkjTDPYR4hSaueOGIM6FDpl9nt/VZwbSRpbNu9/eEJcxE8G/vynRugW8KRZmCFjPy8j/jkGBvvS+k9iOqKV3g==} engines: {node: '>=14.0.0'} cpu: [arm] os: [linux] - libc: musl sass-embedded-linux-musl-riscv64@1.100.0: resolution: {integrity: sha512-ShvI0Kx04mwoCARwZ0UjiT97isQvzO80tAt91zmFyHLN9kelc/IrQi940farSm2xQVPCKdeVyeG0ekBsokSpYQ==} engines: {node: '>=14.0.0'} cpu: [riscv64] os: [linux] - libc: musl sass-embedded-linux-musl-riscv64@1.98.0: resolution: {integrity: sha512-7w6hSuOHKt8FZsmjRb3iGSxEzM87fO9+M8nt5JIQYMhHTj5C+JY/vcske0v715HCVj5e1xyTnbGXf8FcASeAIw==} engines: {node: '>=14.0.0'} cpu: [riscv64] os: [linux] - libc: musl sass-embedded-linux-musl-x64@1.100.0: resolution: {integrity: sha512-TDBCRWNuS4RDLQXvRc1gjZlWiWTWaWGp0Bwu/IKwJxov81lsvrCs3TihTyNXtW7V5aoN4Ky3r0QOkNb3mwmBnA==} engines: {node: '>=14.0.0'} cpu: [x64] os: [linux] - libc: musl sass-embedded-linux-musl-x64@1.98.0: resolution: {integrity: sha512-QikNyDEJOVqPmxyCFkci8ZdCwEssdItfjQFJB+D+Uy5HFqcS5Lv3d3GxWNX/h1dSb23RPyQdQc267ok5SbEyJw==} engines: {node: '>=14.0.0'} cpu: [x64] os: [linux] - libc: musl sass-embedded-linux-riscv64@1.100.0: resolution: {integrity: sha512-j4ENJGOheO+fm3j/yorLxCjBP6/XskrZx7dTLlT+lXYwN/qqCqoA/gsNLI0McS3DFM6GBwPiffzWsdWS8t6sEQ==} engines: {node: '>=14.0.0'} cpu: [riscv64] os: [linux] - libc: glibc sass-embedded-linux-riscv64@1.98.0: resolution: {integrity: sha512-E7fNytc/v4xFBQKzgzBddV/jretA4ULAPO6XmtBiQu4zZBdBozuSxsQLe2+XXeb0X4S2GIl72V7IPABdqke/vA==} engines: {node: '>=14.0.0'} cpu: [riscv64] os: [linux] - libc: glibc sass-embedded-linux-x64@1.100.0: resolution: {integrity: sha512-0vUSN8j0WGtCJIOPh//EmUvYGHW0QOe5iul8qyhPk50MAcw49MA0r34AhftjDdx94ILPF6vApFs0gwHPQRlpVA==} engines: {node: '>=14.0.0'} cpu: [x64] os: [linux] - libc: glibc sass-embedded-linux-x64@1.98.0: resolution: {integrity: sha512-VsvP0t/uw00mMNPv3vwyYKUrFbqzxQHnRMO+bHdAMjvLw4NFf6mscpym9Bzf+NXwi1ZNKnB6DtXjmcpcvqFqYg==} engines: {node: '>=14.0.0'} cpu: [x64] os: [linux] - libc: glibc sass-embedded-unknown-all@1.100.0: resolution: {integrity: sha512-c+naBgWId4MIpToXcI0DgqetjdAkwTTAxFAuOaBz7HUXLdyG1oZRrEvSsbe41nEdQOKH0vgofVFCeSQgoXOG9A==} @@ -29424,8 +29239,8 @@ snapshots: '@babel/generator@7.29.7': dependencies: - '@babel/parser': 7.29.7 - '@babel/types': 7.29.7 + '@babel/parser': 7.29.8 + '@babel/types': 7.29.8 '@jridgewell/gen-mapping': 0.3.13 '@jridgewell/trace-mapping': 0.3.31 jsesc: 3.1.0 @@ -29449,7 +29264,7 @@ snapshots: '@babel/helper-annotate-as-pure@7.27.3': dependencies: - '@babel/types': 7.29.7 + '@babel/types': 7.29.8 '@babel/helper-annotate-as-pure@7.29.7': dependencies: @@ -29567,28 +29382,28 @@ snapshots: '@babel/helper-module-imports@7.28.6': dependencies: '@babel/traverse': 7.29.7 - '@babel/types': 7.29.7 + '@babel/types': 7.29.8 transitivePeerDependencies: - supports-color '@babel/helper-module-imports@7.28.6(supports-color@5.5.0)': dependencies: '@babel/traverse': 7.29.7(supports-color@5.5.0) - '@babel/types': 7.29.7 + '@babel/types': 7.29.8 transitivePeerDependencies: - supports-color '@babel/helper-module-imports@7.29.7': dependencies: '@babel/traverse': 7.29.7 - '@babel/types': 7.29.7 + '@babel/types': 7.29.8 transitivePeerDependencies: - supports-color '@babel/helper-module-imports@7.29.7(supports-color@5.5.0)': dependencies: '@babel/traverse': 7.29.7(supports-color@5.5.0) - '@babel/types': 7.29.7 + '@babel/types': 7.29.8 transitivePeerDependencies: - supports-color @@ -29690,7 +29505,7 @@ snapshots: '@babel/helper-skip-transparent-expression-wrappers@7.27.1': dependencies: '@babel/traverse': 7.29.7 - '@babel/types': 7.29.7 + '@babel/types': 7.29.8 transitivePeerDependencies: - supports-color @@ -29733,7 +29548,7 @@ snapshots: '@babel/helpers@7.29.7': dependencies: '@babel/template': 7.29.7 - '@babel/types': 7.29.7 + '@babel/types': 7.29.8 '@babel/parser@7.29.2': dependencies: @@ -29741,7 +29556,7 @@ snapshots: '@babel/parser@7.29.7': dependencies: - '@babel/types': 7.29.7 + '@babel/types': 7.29.8 '@babel/parser@7.29.8': dependencies: @@ -31242,8 +31057,8 @@ snapshots: '@babel/template@7.29.7': dependencies: '@babel/code-frame': 7.29.7 - '@babel/parser': 7.29.7 - '@babel/types': 7.29.7 + '@babel/parser': 7.29.8 + '@babel/types': 7.29.8 '@babel/traverse@7.29.0': dependencies: @@ -31260,11 +31075,11 @@ snapshots: '@babel/traverse@7.29.7': dependencies: '@babel/code-frame': 7.29.7 - '@babel/generator': 7.29.7 + '@babel/generator': 7.29.8 '@babel/helper-globals': 7.29.7 - '@babel/parser': 7.29.7 + '@babel/parser': 7.29.8 '@babel/template': 7.29.7 - '@babel/types': 7.29.7 + '@babel/types': 7.29.8 debug: 4.4.3(supports-color@8.1.1) transitivePeerDependencies: - supports-color @@ -31272,11 +31087,11 @@ snapshots: '@babel/traverse@7.29.7(supports-color@5.5.0)': dependencies: '@babel/code-frame': 7.29.7 - '@babel/generator': 7.29.7 + '@babel/generator': 7.29.8 '@babel/helper-globals': 7.29.7 - '@babel/parser': 7.29.7 + '@babel/parser': 7.29.8 '@babel/template': 7.29.7 - '@babel/types': 7.29.7 + '@babel/types': 7.29.8 debug: 4.4.3(supports-color@5.5.0) transitivePeerDependencies: - supports-color @@ -31409,6 +31224,37 @@ snapshots: transitivePeerDependencies: - '@types/node' + '@changesets/cli@2.30.0(@types/node@26.2.0)': + dependencies: + '@changesets/apply-release-plan': 7.1.0 + '@changesets/assemble-release-plan': link:packages/assemble-release-plan + '@changesets/changelog-git': 0.2.1 + '@changesets/config': 3.1.3 + '@changesets/errors': 0.2.0 + '@changesets/get-dependents-graph': 2.1.3 + '@changesets/get-release-plan': 4.0.15 + '@changesets/git': 3.0.4 + '@changesets/logger': 0.1.1 + '@changesets/pre': 2.0.2 + '@changesets/read': 0.6.7 + '@changesets/should-skip-package': 0.1.2 + '@changesets/types': 6.1.0 + '@changesets/write': 0.4.0 + '@inquirer/external-editor': 1.0.3(@types/node@26.2.0) + '@manypkg/get-packages': 1.1.3 + ansi-colors: 4.1.3 + enquirer: 2.4.1 + fs-extra: 7.0.1 + mri: 1.2.0 + package-manager-detector: 0.2.11 + picocolors: 1.1.1 + resolve-from: 5.0.0 + semver: 7.6.3 + spawndamnit: 3.0.1 + term-size: 2.2.1 + transitivePeerDependencies: + - '@types/node' + '@changesets/config@3.1.3': dependencies: '@changesets/errors': 0.2.0 @@ -32986,6 +32832,13 @@ snapshots: optionalDependencies: '@types/node': 20.19.5 + '@inquirer/external-editor@1.0.3(@types/node@26.2.0)': + dependencies: + chardet: 2.1.1 + iconv-lite: 0.7.2 + optionalDependencies: + '@types/node': 26.2.0 + '@internationalized/date@3.12.2': dependencies: '@swc/helpers': 0.5.17 @@ -33626,7 +33479,7 @@ snapshots: '@mdx-js/mdx@3.1.1': dependencies: - '@types/estree': 1.0.8 + '@types/estree': 1.0.9 '@types/estree-jsx': 1.0.5 '@types/hast': 3.0.4 '@types/mdx': 2.0.13 @@ -33924,7 +33777,7 @@ snapshots: '@swc/helpers': 0.5.1 redux: 4.2.1 - '@modern-js/app-tools@2.70.5(@rspack/core@1.7.9(@swc/helpers@0.5.17))(@swc/core@1.15.41(@swc/helpers@0.5.17))(encoding@0.1.13)(react-dom@19.2.7(react@19.2.7))(react@19.2.7)(rollup@4.62.2)(styled-components@6.1.8(react-dom@19.2.7(react@19.2.7))(react@19.2.7))(ts-node@10.9.2(@swc/core@1.15.41(@swc/helpers@0.5.17))(@types/node@20.19.5)(typescript@7.0.2))(tsconfig-paths@4.2.0)(tslib@2.8.1)(type-fest@2.19.0)(typescript@7.0.2)(webpack-cli@5.1.4)(webpack-dev-server@5.2.3(webpack-cli@5.1.4)(webpack@5.104.1(@swc/core@1.15.41(@swc/helpers@0.5.17))(esbuild@0.25.5)(webpack-cli@5.1.4)))(webpack-hot-middleware@2.26.1)': + '@modern-js/app-tools@2.70.5(@rspack/core@1.7.9(@swc/helpers@0.5.17))(@swc/core@1.15.41(@swc/helpers@0.5.17))(encoding@0.1.13)(react-dom@19.2.7(react@19.2.7))(react@19.2.7)(rollup@4.62.2)(styled-components@6.1.8(react-dom@19.2.7(react@19.2.7))(react@19.2.7))(ts-node@10.9.2(@swc/core@1.15.41(@swc/helpers@0.5.17))(@types/node@26.2.0)(typescript@7.0.2))(tsconfig-paths@4.2.0)(tslib@2.8.1)(type-fest@2.19.0)(typescript@7.0.2)(webpack-cli@5.1.4)(webpack-dev-server@5.2.3(webpack-cli@5.1.4)(webpack@5.104.1(@swc/core@1.15.41(@swc/helpers@0.5.17))(esbuild@0.25.5)(webpack-cli@5.1.4)))(webpack-hot-middleware@2.26.1)': dependencies: '@babel/parser': 7.29.2 '@babel/traverse': 7.29.0 @@ -33937,7 +33790,7 @@ snapshots: '@modern-js/plugin-v2': 2.70.5(react-dom@19.2.7(react@19.2.7))(react@19.2.7) '@modern-js/prod-server': 2.70.5(react-dom@19.2.7(react@19.2.7))(react@19.2.7) '@modern-js/rsbuild-plugin-esbuild': 2.70.5(@swc/core@1.15.41(@swc/helpers@0.5.17))(webpack-cli@5.1.4) - '@modern-js/server': 2.70.5(@babel/traverse@7.29.0)(@rsbuild/core@1.7.3)(react-dom@19.2.7(react@19.2.7))(react@19.2.7)(ts-node@10.9.2(@swc/core@1.15.41(@swc/helpers@0.5.17))(@types/node@20.19.5)(typescript@7.0.2))(tsconfig-paths@4.2.0) + '@modern-js/server': 2.70.5(@babel/traverse@7.29.0)(@rsbuild/core@1.7.3)(react-dom@19.2.7(react@19.2.7))(react@19.2.7)(ts-node@10.9.2(@swc/core@1.15.41(@swc/helpers@0.5.17))(@types/node@26.2.0)(typescript@7.0.2))(tsconfig-paths@4.2.0) '@modern-js/server-core': 2.70.5(react-dom@19.2.7(react@19.2.7))(react@19.2.7) '@modern-js/server-utils': 2.70.5(@babel/traverse@7.29.0)(@rsbuild/core@1.7.3) '@modern-js/types': 2.70.5 @@ -33955,7 +33808,7 @@ snapshots: pkg-types: 1.3.1 std-env: 3.10.0 optionalDependencies: - ts-node: 10.9.2(@swc/core@1.15.41(@swc/helpers@0.5.17))(@types/node@20.19.5)(typescript@7.0.2) + ts-node: 10.9.2(@swc/core@1.15.41(@swc/helpers@0.5.17))(@types/node@26.2.0)(typescript@7.0.2) tsconfig-paths: 4.2.0 transitivePeerDependencies: - '@parcel/css' @@ -34048,17 +33901,17 @@ snapshots: - webpack-hot-middleware - webpack-plugin-serve - '@modern-js/app-tools@3.5.0(@module-federation/runtime-tools@2.8.2)(@rspack/core@1.3.9(@swc/helpers@0.5.23))(core-js@3.49.0)(encoding@0.1.13)(esbuild@0.28.1)(react-dom@18.3.1(react@18.3.1))(react-server-dom-rspack@0.0.2(@rspack/core@1.3.9(@swc/helpers@0.5.23))(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react@18.3.1)(rollup@4.62.2)(ts-node@10.9.2(@swc/core@1.15.41(@swc/helpers@0.5.23))(@types/node@20.19.5)(typescript@7.0.2))(tsconfig-paths@3.14.2)(tslib@2.8.1)(typescript@7.0.2)(webpack@5.104.1(@swc/core@1.15.41(@swc/helpers@0.5.23))(esbuild@0.28.1)(webpack-cli@5.1.4(webpack-dev-server@5.2.3)(webpack@5.104.1)))': + '@modern-js/app-tools@3.5.0(@module-federation/runtime-tools@2.8.2)(@rspack/core@2.0.6(@module-federation/runtime-tools@2.8.2)(@swc/helpers@0.5.17))(core-js@3.49.0)(encoding@0.1.13)(esbuild@0.28.1)(react-dom@18.3.1(react@18.3.1))(react-server-dom-rspack@0.0.2(@rspack/core@2.0.6(@module-federation/runtime-tools@2.8.2)(@swc/helpers@0.5.17))(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react@18.3.1)(rollup@4.62.2)(ts-node@10.9.2(@swc/core@1.15.41(@swc/helpers@0.5.17))(@types/node@26.2.0)(typescript@7.0.2))(tsconfig-paths@4.2.0)(tslib@2.8.1)(typescript@7.0.2)(webpack@5.104.1(@swc/core@1.15.41(@swc/helpers@0.5.17))(esbuild@0.28.1)(webpack-cli@5.1.4))': dependencies: '@babel/parser': 7.29.7 '@babel/traverse': 7.29.7 '@babel/types': 7.29.7 - '@modern-js/builder': 3.5.0(@module-federation/runtime-tools@2.8.2)(@rspack/core@1.3.9(@swc/helpers@0.5.23))(esbuild@0.28.1)(react-dom@18.3.1(react@18.3.1))(react-server-dom-rspack@0.0.2(@rspack/core@1.3.9(@swc/helpers@0.5.23))(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react@18.3.1)(tslib@2.8.1)(typescript@7.0.2)(webpack@5.104.1(@swc/core@1.15.41(@swc/helpers@0.5.23))(esbuild@0.28.1)(webpack-cli@5.1.4(webpack-dev-server@5.2.3)(webpack@5.104.1))) + '@modern-js/builder': 3.5.0(@module-federation/runtime-tools@2.8.2)(@rspack/core@2.0.6(@module-federation/runtime-tools@2.8.2)(@swc/helpers@0.5.17))(esbuild@0.28.1)(react-dom@18.3.1(react@18.3.1))(react-server-dom-rspack@0.0.2(@rspack/core@2.0.6(@module-federation/runtime-tools@2.8.2)(@swc/helpers@0.5.17))(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react@18.3.1)(tslib@2.8.1)(typescript@7.0.2)(webpack@5.104.1(@swc/core@1.15.41(@swc/helpers@0.5.17))(esbuild@0.28.1)(webpack-cli@5.1.4)) '@modern-js/i18n-utils': 3.5.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@modern-js/plugin': 3.5.0(@module-federation/runtime-tools@2.8.2)(core-js@3.49.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@modern-js/plugin-data-loader': 3.5.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@modern-js/prod-server': 3.5.0(@module-federation/runtime-tools@2.8.2)(core-js@3.49.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@modern-js/server': 3.5.0(@module-federation/runtime-tools@2.8.2)(core-js@3.49.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(ts-node@10.9.2(@swc/core@1.15.41(@swc/helpers@0.5.23))(@types/node@20.19.5)(typescript@7.0.2))(tsconfig-paths@3.14.2) + '@modern-js/server': 3.5.0(@module-federation/runtime-tools@2.8.2)(core-js@3.49.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(ts-node@10.9.2(@swc/core@1.15.41(@swc/helpers@0.5.17))(@types/node@26.2.0)(typescript@7.0.2))(tsconfig-paths@4.2.0) '@modern-js/server-core': 3.5.0(@module-federation/runtime-tools@2.8.2)(core-js@3.49.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@modern-js/server-utils': 3.5.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@modern-js/types': 3.5.0 @@ -34074,8 +33927,8 @@ snapshots: pkg-types: 1.3.1 std-env: 3.10.0 optionalDependencies: - ts-node: 10.9.2(@swc/core@1.15.41(@swc/helpers@0.5.23))(@types/node@20.19.5)(typescript@7.0.2) - tsconfig-paths: 3.14.2 + ts-node: 10.9.2(@swc/core@1.15.41(@swc/helpers@0.5.17))(@types/node@26.2.0)(typescript@7.0.2) + tsconfig-paths: 4.2.0 transitivePeerDependencies: - '@module-federation/runtime-tools' - '@parcel/css' @@ -34101,17 +33954,17 @@ snapshots: - utf-8-validate - webpack - '@modern-js/app-tools@3.5.0(@module-federation/runtime-tools@2.8.2)(@rspack/core@1.3.9(@swc/helpers@0.5.23))(core-js@3.49.0)(encoding@0.1.13)(esbuild@0.28.1)(react-dom@18.3.1(react@18.3.1))(react-server-dom-rspack@0.0.2(@rspack/core@1.3.9(@swc/helpers@0.5.23))(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react@18.3.1)(rollup@4.62.2)(ts-node@10.9.2(@swc/core@1.15.41(@swc/helpers@0.5.23))(@types/node@20.19.5)(typescript@7.0.2))(tsconfig-paths@4.2.0)(tslib@2.8.1)(typescript@7.0.2)(webpack@5.104.1(@swc/core@1.15.41(@swc/helpers@0.5.23))(esbuild@0.28.1)(webpack-cli@5.1.4(webpack-dev-server@5.2.3)(webpack@5.104.1)))': + '@modern-js/app-tools@3.5.0(@module-federation/runtime-tools@2.8.2)(@rspack/core@2.1.8(@module-federation/runtime-tools@2.8.2)(@swc/helpers@0.5.23))(core-js@3.49.0)(encoding@0.1.13)(esbuild@0.28.1)(react-dom@18.3.1(react@18.3.1))(react-server-dom-rspack@0.0.2(@rspack/core@2.1.8(@module-federation/runtime-tools@2.8.2)(@swc/helpers@0.5.23))(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react@18.3.1)(rollup@4.62.2)(ts-node@10.9.2(@swc/core@1.15.41(@swc/helpers@0.5.23))(@types/node@20.19.5)(typescript@7.0.2))(tsconfig-paths@3.14.2)(tslib@2.8.1)(typescript@7.0.2)(webpack@5.104.1(@swc/core@1.15.41(@swc/helpers@0.5.23))(esbuild@0.28.1)(webpack-cli@5.1.4(webpack-dev-server@5.2.3)(webpack@5.104.1)))': dependencies: '@babel/parser': 7.29.7 '@babel/traverse': 7.29.7 '@babel/types': 7.29.7 - '@modern-js/builder': 3.5.0(@module-federation/runtime-tools@2.8.2)(@rspack/core@1.3.9(@swc/helpers@0.5.23))(esbuild@0.28.1)(react-dom@18.3.1(react@18.3.1))(react-server-dom-rspack@0.0.2(@rspack/core@1.3.9(@swc/helpers@0.5.23))(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react@18.3.1)(tslib@2.8.1)(typescript@7.0.2)(webpack@5.104.1(@swc/core@1.15.41(@swc/helpers@0.5.23))(esbuild@0.28.1)(webpack-cli@5.1.4(webpack-dev-server@5.2.3)(webpack@5.104.1))) + '@modern-js/builder': 3.5.0(@module-federation/runtime-tools@2.8.2)(@rspack/core@2.1.8(@module-federation/runtime-tools@2.8.2)(@swc/helpers@0.5.23))(esbuild@0.28.1)(react-dom@18.3.1(react@18.3.1))(react-server-dom-rspack@0.0.2(@rspack/core@2.1.8(@module-federation/runtime-tools@2.8.2)(@swc/helpers@0.5.23))(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react@18.3.1)(tslib@2.8.1)(typescript@7.0.2)(webpack@5.104.1(@swc/core@1.15.41(@swc/helpers@0.5.23))(esbuild@0.28.1)(webpack-cli@5.1.4(webpack-dev-server@5.2.3)(webpack@5.104.1))) '@modern-js/i18n-utils': 3.5.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@modern-js/plugin': 3.5.0(@module-federation/runtime-tools@2.8.2)(core-js@3.49.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@modern-js/plugin-data-loader': 3.5.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@modern-js/prod-server': 3.5.0(@module-federation/runtime-tools@2.8.2)(core-js@3.49.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@modern-js/server': 3.5.0(@module-federation/runtime-tools@2.8.2)(core-js@3.49.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(ts-node@10.9.2(@swc/core@1.15.41(@swc/helpers@0.5.23))(@types/node@20.19.5)(typescript@7.0.2))(tsconfig-paths@4.2.0) + '@modern-js/server': 3.5.0(@module-federation/runtime-tools@2.8.2)(core-js@3.49.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(ts-node@10.9.2(@swc/core@1.15.41(@swc/helpers@0.5.23))(@types/node@20.19.5)(typescript@7.0.2))(tsconfig-paths@3.14.2) '@modern-js/server-core': 3.5.0(@module-federation/runtime-tools@2.8.2)(core-js@3.49.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@modern-js/server-utils': 3.5.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@modern-js/types': 3.5.0 @@ -34128,7 +33981,7 @@ snapshots: std-env: 3.10.0 optionalDependencies: ts-node: 10.9.2(@swc/core@1.15.41(@swc/helpers@0.5.23))(@types/node@20.19.5)(typescript@7.0.2) - tsconfig-paths: 4.2.0 + tsconfig-paths: 3.14.2 transitivePeerDependencies: - '@module-federation/runtime-tools' - '@parcel/css' @@ -34154,12 +34007,12 @@ snapshots: - utf-8-validate - webpack - '@modern-js/app-tools@3.5.0(@module-federation/runtime-tools@2.8.2)(@rspack/core@1.3.9(@swc/helpers@0.5.23))(core-js@3.49.0)(encoding@0.1.13)(esbuild@0.28.1)(react-dom@18.3.1(react@18.3.1))(react-server-dom-rspack@0.0.2(@rspack/core@1.3.9(@swc/helpers@0.5.23))(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react@18.3.1)(rollup@4.62.2)(ts-node@10.9.2(@swc/core@1.15.41(@swc/helpers@0.5.23))(@types/node@20.19.5)(typescript@7.0.2))(tsconfig-paths@4.2.0)(tslib@2.8.1)(typescript@7.0.2)(webpack@5.104.1(@swc/core@1.15.41(@swc/helpers@0.5.23))(esbuild@0.28.1)(webpack-cli@5.1.4))': + '@modern-js/app-tools@3.5.0(@module-federation/runtime-tools@2.8.2)(@rspack/core@2.1.8(@module-federation/runtime-tools@2.8.2)(@swc/helpers@0.5.23))(core-js@3.49.0)(encoding@0.1.13)(esbuild@0.28.1)(react-dom@18.3.1(react@18.3.1))(react-server-dom-rspack@0.0.2(@rspack/core@2.1.8(@module-federation/runtime-tools@2.8.2)(@swc/helpers@0.5.23))(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react@18.3.1)(rollup@4.62.2)(ts-node@10.9.2(@swc/core@1.15.41(@swc/helpers@0.5.23))(@types/node@20.19.5)(typescript@7.0.2))(tsconfig-paths@4.2.0)(tslib@2.8.1)(typescript@7.0.2)(webpack@5.104.1(@swc/core@1.15.41(@swc/helpers@0.5.23))(esbuild@0.28.1)(webpack-cli@5.1.4(webpack-dev-server@5.2.3)(webpack@5.104.1)))': dependencies: '@babel/parser': 7.29.7 '@babel/traverse': 7.29.7 '@babel/types': 7.29.7 - '@modern-js/builder': 3.5.0(@module-federation/runtime-tools@2.8.2)(@rspack/core@1.3.9(@swc/helpers@0.5.23))(esbuild@0.28.1)(react-dom@18.3.1(react@18.3.1))(react-server-dom-rspack@0.0.2(@rspack/core@1.3.9(@swc/helpers@0.5.23))(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react@18.3.1)(tslib@2.8.1)(typescript@7.0.2)(webpack@5.104.1(@swc/core@1.15.41(@swc/helpers@0.5.23))(esbuild@0.28.1)(webpack-cli@5.1.4)) + '@modern-js/builder': 3.5.0(@module-federation/runtime-tools@2.8.2)(@rspack/core@2.1.8(@module-federation/runtime-tools@2.8.2)(@swc/helpers@0.5.23))(esbuild@0.28.1)(react-dom@18.3.1(react@18.3.1))(react-server-dom-rspack@0.0.2(@rspack/core@2.1.8(@module-federation/runtime-tools@2.8.2)(@swc/helpers@0.5.23))(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react@18.3.1)(tslib@2.8.1)(typescript@7.0.2)(webpack@5.104.1(@swc/core@1.15.41(@swc/helpers@0.5.23))(esbuild@0.28.1)(webpack-cli@5.1.4(webpack-dev-server@5.2.3)(webpack@5.104.1))) '@modern-js/i18n-utils': 3.5.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@modern-js/plugin': 3.5.0(@module-federation/runtime-tools@2.8.2)(core-js@3.49.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@modern-js/plugin-data-loader': 3.5.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) @@ -34207,59 +34060,6 @@ snapshots: - utf-8-validate - webpack - '@modern-js/app-tools@3.5.0(@module-federation/runtime-tools@2.8.2)(@rspack/core@2.0.6(@module-federation/runtime-tools@2.8.2)(@swc/helpers@0.5.17))(core-js@3.49.0)(encoding@0.1.13)(esbuild@0.28.1)(react-dom@18.3.1(react@18.3.1))(react-server-dom-rspack@0.0.2(@rspack/core@2.0.6(@module-federation/runtime-tools@2.8.2)(@swc/helpers@0.5.17))(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react@18.3.1)(rollup@4.62.2)(ts-node@10.9.2(@swc/core@1.15.41(@swc/helpers@0.5.17))(@types/node@20.19.5)(typescript@7.0.2))(tsconfig-paths@4.2.0)(tslib@2.8.1)(typescript@7.0.2)(webpack@5.104.1(@swc/core@1.15.41(@swc/helpers@0.5.17))(esbuild@0.28.1)(webpack-cli@5.1.4))': - dependencies: - '@babel/parser': 7.29.7 - '@babel/traverse': 7.29.7 - '@babel/types': 7.29.7 - '@modern-js/builder': 3.5.0(@module-federation/runtime-tools@2.8.2)(@rspack/core@2.0.6(@module-federation/runtime-tools@2.8.2)(@swc/helpers@0.5.17))(esbuild@0.28.1)(react-dom@18.3.1(react@18.3.1))(react-server-dom-rspack@0.0.2(@rspack/core@2.0.6(@module-federation/runtime-tools@2.8.2)(@swc/helpers@0.5.17))(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react@18.3.1)(tslib@2.8.1)(typescript@7.0.2)(webpack@5.104.1(@swc/core@1.15.41(@swc/helpers@0.5.17))(esbuild@0.28.1)(webpack-cli@5.1.4)) - '@modern-js/i18n-utils': 3.5.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@modern-js/plugin': 3.5.0(@module-federation/runtime-tools@2.8.2)(core-js@3.49.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@modern-js/plugin-data-loader': 3.5.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@modern-js/prod-server': 3.5.0(@module-federation/runtime-tools@2.8.2)(core-js@3.49.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@modern-js/server': 3.5.0(@module-federation/runtime-tools@2.8.2)(core-js@3.49.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(ts-node@10.9.2(@swc/core@1.15.41(@swc/helpers@0.5.17))(@types/node@20.19.5)(typescript@7.0.2))(tsconfig-paths@4.2.0) - '@modern-js/server-core': 3.5.0(@module-federation/runtime-tools@2.8.2)(core-js@3.49.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@modern-js/server-utils': 3.5.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@modern-js/types': 3.5.0 - '@modern-js/utils': 3.5.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@rsbuild/core': 2.1.0(@module-federation/runtime-tools@2.8.2)(core-js@3.49.0) - '@swc/core': 1.15.41(@swc/helpers@0.5.17) - '@swc/helpers': 0.5.17 - es-module-lexer: 1.7.0 - flatted: 3.4.2 - import-meta-resolve: 4.2.0 - mlly: 1.8.2 - ndepe: 0.1.13(encoding@0.1.13)(rollup@4.62.2) - pkg-types: 1.3.1 - std-env: 3.10.0 - optionalDependencies: - ts-node: 10.9.2(@swc/core@1.15.41(@swc/helpers@0.5.17))(@types/node@20.19.5)(typescript@7.0.2) - tsconfig-paths: 4.2.0 - transitivePeerDependencies: - - '@module-federation/runtime-tools' - - '@parcel/css' - - '@rspack/core' - - '@swc/css' - - '@typescript/native-preview' - - bufferutil - - clean-css - - core-js - - csso - - debug - - devcert - - encoding - - esbuild - - lightningcss - - react - - react-dom - - react-server-dom-rspack - - rollup - - supports-color - - tslib - - typescript - - utf-8-validate - - webpack - '@modern-js/babel-compiler@2.68.0': dependencies: '@babel/core': 7.29.7 @@ -34382,7 +34182,7 @@ snapshots: '@babel/preset-env': 7.29.2(@babel/core@7.29.7) '@babel/preset-typescript': 7.28.5(@babel/core@7.29.7) '@babel/runtime': 7.28.2 - '@babel/types': 7.29.7 + '@babel/types': 7.29.8 '@rsbuild/plugin-babel': 1.1.0(@rsbuild/core@1.7.3) '@swc/helpers': 0.5.17 '@types/babel__core': 7.20.5 @@ -34392,72 +34192,20 @@ snapshots: - '@rsbuild/core' - supports-color - '@modern-js/builder@3.5.0(@module-federation/runtime-tools@2.8.2)(@rspack/core@1.3.9(@swc/helpers@0.5.23))(esbuild@0.28.1)(react-dom@18.3.1(react@18.3.1))(react-server-dom-rspack@0.0.2(@rspack/core@1.3.9(@swc/helpers@0.5.23))(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react@18.3.1)(tslib@2.8.1)(typescript@7.0.2)(webpack@5.104.1(@swc/core@1.15.41(@swc/helpers@0.5.23))(esbuild@0.28.1)(webpack-cli@5.1.4(webpack-dev-server@5.2.3)(webpack@5.104.1)))': - dependencies: - '@modern-js/utils': 3.5.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@rsbuild/core': 2.1.0(@module-federation/runtime-tools@2.8.2)(core-js@3.49.0) - '@rsbuild/plugin-assets-retry': 2.0.1(@rsbuild/core@2.1.0(@module-federation/runtime-tools@2.8.2)(core-js@3.49.0)) - '@rsbuild/plugin-check-syntax': 2.0.0(@rsbuild/core@2.1.0(@module-federation/runtime-tools@2.8.2)(core-js@3.49.0)) - '@rsbuild/plugin-css-minimizer': 2.0.1(@rsbuild/core@2.1.0(@module-federation/runtime-tools@2.8.2)(core-js@3.49.0))(esbuild@0.28.1)(webpack@5.104.1(@swc/core@1.15.41(@swc/helpers@0.5.23))(esbuild@0.28.1)(webpack-cli@5.1.4(webpack-dev-server@5.2.3)(webpack@5.104.1))) - '@rsbuild/plugin-less': 1.6.4(@rsbuild/core@2.1.0(@module-federation/runtime-tools@2.8.2)(core-js@3.49.0))(@rspack/core@1.3.9(@swc/helpers@0.5.23))(webpack@5.104.1(@swc/core@1.15.41(@swc/helpers@0.5.23))(esbuild@0.28.1)(webpack-cli@5.1.4(webpack-dev-server@5.2.3)(webpack@5.104.1))) - '@rsbuild/plugin-react': 2.0.1(@rsbuild/core@2.1.0(@module-federation/runtime-tools@2.8.2)(core-js@3.49.0))(@rspack/core@1.3.9(@swc/helpers@0.5.23)) - '@rsbuild/plugin-rem': 1.0.6(@rsbuild/core@2.1.0(@module-federation/runtime-tools@2.8.2)(core-js@3.49.0)) - '@rsbuild/plugin-sass': 1.5.3(@rsbuild/core@2.1.0(@module-federation/runtime-tools@2.8.2)(core-js@3.49.0)) - '@rsbuild/plugin-source-build': 1.0.6(@rsbuild/core@2.1.0(@module-federation/runtime-tools@2.8.2)(core-js@3.49.0)) - '@rsbuild/plugin-svgr': 2.0.3(@rsbuild/core@2.1.0(@module-federation/runtime-tools@2.8.2)(core-js@3.49.0))(@rspack/core@1.3.9(@swc/helpers@0.5.23))(typescript@7.0.2) - '@rsbuild/plugin-type-check': 1.5.0(@rsbuild/core@2.1.0(@module-federation/runtime-tools@2.8.2)(core-js@3.49.0))(@rspack/core@1.3.9(@swc/helpers@0.5.23))(tslib@2.8.1)(typescript@7.0.2) - '@rsbuild/plugin-typed-css-modules': 1.2.3(@rsbuild/core@2.1.0(@module-federation/runtime-tools@2.8.2)(core-js@3.49.0)) - '@swc/core': 1.15.41(@swc/helpers@0.5.17) - '@swc/helpers': 0.5.17 - autoprefixer: 10.4.27(postcss@8.5.23) - browserslist: 4.28.2 - core-js: 3.49.0 - cssnano: 6.1.2(postcss@8.5.23) - html-minifier-terser: 7.2.0 - lodash: 4.18.1 - postcss: 8.5.23 - postcss-custom-properties: 13.3.12(postcss@8.5.23) - postcss-flexbugs-fixes: 5.0.2(postcss@8.5.23) - postcss-font-variant: 5.0.0(postcss@8.5.23) - postcss-initial: 4.0.1(postcss@8.5.23) - postcss-media-minmax: 5.0.0(postcss@8.5.23) - postcss-nesting: 12.1.5(postcss@8.5.23) - postcss-page-break: 3.0.4(postcss@8.5.23) - rsbuild-plugin-rsc: 0.1.1(@rsbuild/core@2.1.0(@module-federation/runtime-tools@2.8.2)(core-js@3.49.0))(react-server-dom-rspack@0.0.2(@rspack/core@1.3.9(@swc/helpers@0.5.23))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)) - rspack-manifest-plugin: 5.2.2(@rspack/core@1.3.9(@swc/helpers@0.5.23)) - ts-deepmerge: 7.0.3 - transitivePeerDependencies: - - '@module-federation/runtime-tools' - - '@parcel/css' - - '@rspack/core' - - '@swc/css' - - '@typescript/native-preview' - - clean-css - - csso - - esbuild - - lightningcss - - react - - react-dom - - react-server-dom-rspack - - supports-color - - tslib - - typescript - - webpack - - '@modern-js/builder@3.5.0(@module-federation/runtime-tools@2.8.2)(@rspack/core@1.3.9(@swc/helpers@0.5.23))(esbuild@0.28.1)(react-dom@18.3.1(react@18.3.1))(react-server-dom-rspack@0.0.2(@rspack/core@1.3.9(@swc/helpers@0.5.23))(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react@18.3.1)(tslib@2.8.1)(typescript@7.0.2)(webpack@5.104.1(@swc/core@1.15.41(@swc/helpers@0.5.23))(esbuild@0.28.1)(webpack-cli@5.1.4))': + '@modern-js/builder@3.5.0(@module-federation/runtime-tools@2.8.2)(@rspack/core@2.0.6(@module-federation/runtime-tools@2.8.2)(@swc/helpers@0.5.17))(esbuild@0.28.1)(react-dom@18.3.1(react@18.3.1))(react-server-dom-rspack@0.0.2(@rspack/core@2.0.6(@module-federation/runtime-tools@2.8.2)(@swc/helpers@0.5.17))(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react@18.3.1)(tslib@2.8.1)(typescript@7.0.2)(webpack@5.104.1(@swc/core@1.15.41(@swc/helpers@0.5.17))(esbuild@0.28.1)(webpack-cli@5.1.4))': dependencies: '@modern-js/utils': 3.5.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@rsbuild/core': 2.1.0(@module-federation/runtime-tools@2.8.2)(core-js@3.49.0) '@rsbuild/plugin-assets-retry': 2.0.1(@rsbuild/core@2.1.0(@module-federation/runtime-tools@2.8.2)(core-js@3.49.0)) '@rsbuild/plugin-check-syntax': 2.0.0(@rsbuild/core@2.1.0(@module-federation/runtime-tools@2.8.2)(core-js@3.49.0)) - '@rsbuild/plugin-css-minimizer': 2.0.1(@rsbuild/core@2.1.0(@module-federation/runtime-tools@2.8.2)(core-js@3.49.0))(esbuild@0.28.1)(webpack@5.104.1(@swc/core@1.15.41(@swc/helpers@0.5.23))(esbuild@0.28.1)(webpack-cli@5.1.4)) - '@rsbuild/plugin-less': 1.6.4(@rsbuild/core@2.1.0(@module-federation/runtime-tools@2.8.2)(core-js@3.49.0))(@rspack/core@1.3.9(@swc/helpers@0.5.23))(webpack@5.104.1(@swc/core@1.15.41(@swc/helpers@0.5.23))(esbuild@0.28.1)(webpack-cli@5.1.4)) - '@rsbuild/plugin-react': 2.0.1(@rsbuild/core@2.1.0(@module-federation/runtime-tools@2.8.2)(core-js@3.49.0))(@rspack/core@1.3.9(@swc/helpers@0.5.23)) + '@rsbuild/plugin-css-minimizer': 2.0.1(@rsbuild/core@2.1.0(@module-federation/runtime-tools@2.8.2)(core-js@3.49.0))(esbuild@0.28.1)(webpack@5.104.1(@swc/core@1.15.41(@swc/helpers@0.5.17))(esbuild@0.28.1)(webpack-cli@5.1.4)) + '@rsbuild/plugin-less': 1.6.4(@rsbuild/core@2.1.0(@module-federation/runtime-tools@2.8.2)(core-js@3.49.0))(@rspack/core@2.0.6(@module-federation/runtime-tools@2.8.2)(@swc/helpers@0.5.17))(webpack@5.104.1(@swc/core@1.15.41(@swc/helpers@0.5.17))(esbuild@0.28.1)(webpack-cli@5.1.4)) + '@rsbuild/plugin-react': 2.0.1(@rsbuild/core@2.1.0(@module-federation/runtime-tools@2.8.2)(core-js@3.49.0))(@rspack/core@2.0.6(@module-federation/runtime-tools@2.8.2)(@swc/helpers@0.5.17)) '@rsbuild/plugin-rem': 1.0.6(@rsbuild/core@2.1.0(@module-federation/runtime-tools@2.8.2)(core-js@3.49.0)) '@rsbuild/plugin-sass': 1.5.3(@rsbuild/core@2.1.0(@module-federation/runtime-tools@2.8.2)(core-js@3.49.0)) '@rsbuild/plugin-source-build': 1.0.6(@rsbuild/core@2.1.0(@module-federation/runtime-tools@2.8.2)(core-js@3.49.0)) - '@rsbuild/plugin-svgr': 2.0.3(@rsbuild/core@2.1.0(@module-federation/runtime-tools@2.8.2)(core-js@3.49.0))(@rspack/core@1.3.9(@swc/helpers@0.5.23))(typescript@7.0.2) - '@rsbuild/plugin-type-check': 1.5.0(@rsbuild/core@2.1.0(@module-federation/runtime-tools@2.8.2)(core-js@3.49.0))(@rspack/core@1.3.9(@swc/helpers@0.5.23))(tslib@2.8.1)(typescript@7.0.2) + '@rsbuild/plugin-svgr': 2.0.3(@rsbuild/core@2.1.0(@module-federation/runtime-tools@2.8.2)(core-js@3.49.0))(@rspack/core@2.0.6(@module-federation/runtime-tools@2.8.2)(@swc/helpers@0.5.17))(typescript@7.0.2) + '@rsbuild/plugin-type-check': 1.5.0(@rsbuild/core@2.1.0(@module-federation/runtime-tools@2.8.2)(core-js@3.49.0))(@rspack/core@2.0.6(@module-federation/runtime-tools@2.8.2)(@swc/helpers@0.5.17))(tslib@2.8.1)(typescript@7.0.2) '@rsbuild/plugin-typed-css-modules': 1.2.3(@rsbuild/core@2.1.0(@module-federation/runtime-tools@2.8.2)(core-js@3.49.0)) '@swc/core': 1.15.41(@swc/helpers@0.5.17) '@swc/helpers': 0.5.17 @@ -34475,8 +34223,8 @@ snapshots: postcss-media-minmax: 5.0.0(postcss@8.5.23) postcss-nesting: 12.1.5(postcss@8.5.23) postcss-page-break: 3.0.4(postcss@8.5.23) - rsbuild-plugin-rsc: 0.1.1(@rsbuild/core@2.1.0(@module-federation/runtime-tools@2.8.2)(core-js@3.49.0))(react-server-dom-rspack@0.0.2(@rspack/core@1.3.9(@swc/helpers@0.5.23))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)) - rspack-manifest-plugin: 5.2.2(@rspack/core@1.3.9(@swc/helpers@0.5.23)) + rsbuild-plugin-rsc: 0.1.1(@rsbuild/core@2.1.0(@module-federation/runtime-tools@2.8.2)(core-js@3.49.0))(react-server-dom-rspack@0.0.2(@rspack/core@2.0.6(@module-federation/runtime-tools@2.8.2)(@swc/helpers@0.5.17))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)) + rspack-manifest-plugin: 5.2.2(@rspack/core@2.0.6(@module-federation/runtime-tools@2.8.2)(@swc/helpers@0.5.17)) ts-deepmerge: 7.0.3 transitivePeerDependencies: - '@module-federation/runtime-tools' @@ -34496,20 +34244,20 @@ snapshots: - typescript - webpack - '@modern-js/builder@3.5.0(@module-federation/runtime-tools@2.8.2)(@rspack/core@2.0.6(@module-federation/runtime-tools@2.8.2)(@swc/helpers@0.5.17))(esbuild@0.28.1)(react-dom@18.3.1(react@18.3.1))(react-server-dom-rspack@0.0.2(@rspack/core@2.0.6(@module-federation/runtime-tools@2.8.2)(@swc/helpers@0.5.17))(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react@18.3.1)(tslib@2.8.1)(typescript@7.0.2)(webpack@5.104.1(@swc/core@1.15.41(@swc/helpers@0.5.17))(esbuild@0.28.1)(webpack-cli@5.1.4))': + '@modern-js/builder@3.5.0(@module-federation/runtime-tools@2.8.2)(@rspack/core@2.1.8(@module-federation/runtime-tools@2.8.2)(@swc/helpers@0.5.23))(esbuild@0.28.1)(react-dom@18.3.1(react@18.3.1))(react-server-dom-rspack@0.0.2(@rspack/core@2.1.8(@module-federation/runtime-tools@2.8.2)(@swc/helpers@0.5.23))(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react@18.3.1)(tslib@2.8.1)(typescript@7.0.2)(webpack@5.104.1(@swc/core@1.15.41(@swc/helpers@0.5.23))(esbuild@0.28.1)(webpack-cli@5.1.4(webpack-dev-server@5.2.3)(webpack@5.104.1)))': dependencies: '@modern-js/utils': 3.5.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@rsbuild/core': 2.1.0(@module-federation/runtime-tools@2.8.2)(core-js@3.49.0) '@rsbuild/plugin-assets-retry': 2.0.1(@rsbuild/core@2.1.0(@module-federation/runtime-tools@2.8.2)(core-js@3.49.0)) '@rsbuild/plugin-check-syntax': 2.0.0(@rsbuild/core@2.1.0(@module-federation/runtime-tools@2.8.2)(core-js@3.49.0)) - '@rsbuild/plugin-css-minimizer': 2.0.1(@rsbuild/core@2.1.0(@module-federation/runtime-tools@2.8.2)(core-js@3.49.0))(esbuild@0.28.1)(webpack@5.104.1(@swc/core@1.15.41(@swc/helpers@0.5.17))(esbuild@0.28.1)(webpack-cli@5.1.4)) - '@rsbuild/plugin-less': 1.6.4(@rsbuild/core@2.1.0(@module-federation/runtime-tools@2.8.2)(core-js@3.49.0))(@rspack/core@2.0.6(@module-federation/runtime-tools@2.8.2)(@swc/helpers@0.5.17))(webpack@5.104.1(@swc/core@1.15.41(@swc/helpers@0.5.17))(esbuild@0.28.1)(webpack-cli@5.1.4)) - '@rsbuild/plugin-react': 2.0.1(@rsbuild/core@2.1.0(@module-federation/runtime-tools@2.8.2)(core-js@3.49.0))(@rspack/core@2.0.6(@module-federation/runtime-tools@2.8.2)(@swc/helpers@0.5.17)) + '@rsbuild/plugin-css-minimizer': 2.0.1(@rsbuild/core@2.1.0(@module-federation/runtime-tools@2.8.2)(core-js@3.49.0))(esbuild@0.28.1)(webpack@5.104.1(@swc/core@1.15.41(@swc/helpers@0.5.23))(esbuild@0.28.1)(webpack-cli@5.1.4(webpack-dev-server@5.2.3)(webpack@5.104.1))) + '@rsbuild/plugin-less': 1.6.4(@rsbuild/core@2.1.0(@module-federation/runtime-tools@2.8.2)(core-js@3.49.0))(@rspack/core@2.1.8(@module-federation/runtime-tools@2.8.2)(@swc/helpers@0.5.23))(webpack@5.104.1(@swc/core@1.15.41(@swc/helpers@0.5.23))(esbuild@0.28.1)(webpack-cli@5.1.4(webpack-dev-server@5.2.3)(webpack@5.104.1))) + '@rsbuild/plugin-react': 2.0.1(@rsbuild/core@2.1.0(@module-federation/runtime-tools@2.8.2)(core-js@3.49.0))(@rspack/core@2.1.8(@module-federation/runtime-tools@2.8.2)(@swc/helpers@0.5.23)) '@rsbuild/plugin-rem': 1.0.6(@rsbuild/core@2.1.0(@module-federation/runtime-tools@2.8.2)(core-js@3.49.0)) '@rsbuild/plugin-sass': 1.5.3(@rsbuild/core@2.1.0(@module-federation/runtime-tools@2.8.2)(core-js@3.49.0)) '@rsbuild/plugin-source-build': 1.0.6(@rsbuild/core@2.1.0(@module-federation/runtime-tools@2.8.2)(core-js@3.49.0)) - '@rsbuild/plugin-svgr': 2.0.3(@rsbuild/core@2.1.0(@module-federation/runtime-tools@2.8.2)(core-js@3.49.0))(@rspack/core@2.0.6(@module-federation/runtime-tools@2.8.2)(@swc/helpers@0.5.17))(typescript@7.0.2) - '@rsbuild/plugin-type-check': 1.5.0(@rsbuild/core@2.1.0(@module-federation/runtime-tools@2.8.2)(core-js@3.49.0))(@rspack/core@2.0.6(@module-federation/runtime-tools@2.8.2)(@swc/helpers@0.5.17))(tslib@2.8.1)(typescript@7.0.2) + '@rsbuild/plugin-svgr': 2.0.3(@rsbuild/core@2.1.0(@module-federation/runtime-tools@2.8.2)(core-js@3.49.0))(@rspack/core@2.1.8(@module-federation/runtime-tools@2.8.2)(@swc/helpers@0.5.23))(typescript@7.0.2) + '@rsbuild/plugin-type-check': 1.5.0(@rsbuild/core@2.1.0(@module-federation/runtime-tools@2.8.2)(core-js@3.49.0))(@rspack/core@2.1.8(@module-federation/runtime-tools@2.8.2)(@swc/helpers@0.5.23))(tslib@2.8.1)(typescript@7.0.2) '@rsbuild/plugin-typed-css-modules': 1.2.3(@rsbuild/core@2.1.0(@module-federation/runtime-tools@2.8.2)(core-js@3.49.0)) '@swc/core': 1.15.41(@swc/helpers@0.5.17) '@swc/helpers': 0.5.17 @@ -34527,8 +34275,8 @@ snapshots: postcss-media-minmax: 5.0.0(postcss@8.5.23) postcss-nesting: 12.1.5(postcss@8.5.23) postcss-page-break: 3.0.4(postcss@8.5.23) - rsbuild-plugin-rsc: 0.1.1(@rsbuild/core@2.1.0(@module-federation/runtime-tools@2.8.2)(core-js@3.49.0))(react-server-dom-rspack@0.0.2(@rspack/core@2.0.6(@module-federation/runtime-tools@2.8.2)(@swc/helpers@0.5.17))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)) - rspack-manifest-plugin: 5.2.2(@rspack/core@2.0.6(@module-federation/runtime-tools@2.8.2)(@swc/helpers@0.5.17)) + rsbuild-plugin-rsc: 0.1.1(@rsbuild/core@2.1.0(@module-federation/runtime-tools@2.8.2)(core-js@3.49.0))(react-server-dom-rspack@0.0.2(@rspack/core@2.1.8(@module-federation/runtime-tools@2.8.2)(@swc/helpers@0.5.23))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)) + rspack-manifest-plugin: 5.2.2(@rspack/core@2.1.8(@module-federation/runtime-tools@2.8.2)(@swc/helpers@0.5.23)) ts-deepmerge: 7.0.3 transitivePeerDependencies: - '@module-federation/runtime-tools' @@ -34583,7 +34331,7 @@ snapshots: - react - react-dom - '@modern-js/module-tools@2.70.5(@types/node@20.19.5)(typescript@7.0.2)': + '@modern-js/module-tools@2.70.5(@types/node@26.2.0)(typescript@7.0.2)': dependencies: '@ampproject/remapping': 2.3.0 '@ast-grep/napi': 0.35.0 @@ -34591,7 +34339,7 @@ snapshots: '@babel/types': 7.29.0 '@modern-js/core': 2.70.5 '@modern-js/plugin': 2.70.5 - '@modern-js/plugin-changeset': 2.70.5(@types/node@20.19.5) + '@modern-js/plugin-changeset': 2.70.5(@types/node@26.2.0) '@modern-js/plugin-i18n': 2.70.5 '@modern-js/swc-plugins': 0.6.11(@swc/helpers@0.5.17) '@modern-js/types': 2.70.5 @@ -34665,9 +34413,9 @@ snapshots: '@swc/helpers': 0.5.17 esbuild: 0.25.5 - '@modern-js/plugin-changeset@2.70.5(@types/node@20.19.5)': + '@modern-js/plugin-changeset@2.70.5(@types/node@26.2.0)': dependencies: - '@changesets/cli': 2.30.0(@types/node@20.19.5) + '@changesets/cli': 2.30.0(@types/node@26.2.0) '@changesets/git': 2.0.0 '@changesets/read': 0.6.7 '@modern-js/plugin-i18n': 2.70.5 @@ -34883,23 +34631,23 @@ snapshots: react-dom: 19.2.4(react@19.2.4) react-server-dom-webpack: 19.2.4(react-dom@19.2.4(react@19.2.4))(react@19.2.4)(webpack@5.104.1(@swc/core@1.15.41(@swc/helpers@0.5.19))(esbuild@0.18.20)(webpack-cli@5.1.4)) - '@modern-js/render@3.5.0(react-dom@18.3.1(react@18.3.1))(react-server-dom-rspack@0.0.2(@rspack/core@1.3.9(@swc/helpers@0.5.23))(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react@18.3.1)': + '@modern-js/render@3.5.0(react-dom@18.3.1(react@18.3.1))(react-server-dom-rspack@0.0.2(@rspack/core@2.0.6(@module-federation/runtime-tools@2.8.2)(@swc/helpers@0.5.17))(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react@18.3.1)': dependencies: '@modern-js/types': 3.5.0 '@modern-js/utils': 3.5.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@swc/helpers': 0.5.17 react: 18.3.1 react-dom: 18.3.1(react@18.3.1) - react-server-dom-rspack: 0.0.2(@rspack/core@1.3.9(@swc/helpers@0.5.23))(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + react-server-dom-rspack: 0.0.2(@rspack/core@2.0.6(@module-federation/runtime-tools@2.8.2)(@swc/helpers@0.5.17))(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@modern-js/render@3.5.0(react-dom@18.3.1(react@18.3.1))(react-server-dom-rspack@0.0.2(@rspack/core@2.0.6(@module-federation/runtime-tools@2.8.2)(@swc/helpers@0.5.17))(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react@18.3.1)': + '@modern-js/render@3.5.0(react-dom@18.3.1(react@18.3.1))(react-server-dom-rspack@0.0.2(@rspack/core@2.1.8(@module-federation/runtime-tools@2.8.2)(@swc/helpers@0.5.23))(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react@18.3.1)': dependencies: '@modern-js/types': 3.5.0 '@modern-js/utils': 3.5.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@swc/helpers': 0.5.17 react: 18.3.1 react-dom: 18.3.1(react@18.3.1) - react-server-dom-rspack: 0.0.2(@rspack/core@2.0.6(@module-federation/runtime-tools@2.8.2)(@swc/helpers@0.5.17))(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + react-server-dom-rspack: 0.0.2(@rspack/core@2.1.8(@module-federation/runtime-tools@2.8.2)(@swc/helpers@0.5.23))(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@modern-js/rsbuild-plugin-esbuild@2.70.5(@swc/core@1.15.41(@swc/helpers@0.5.17))(webpack-cli@5.1.4)': dependencies: @@ -35048,35 +34796,6 @@ snapshots: - react-server-dom-webpack - supports-color - '@modern-js/runtime@3.5.0(@module-federation/runtime-tools@2.8.2)(core-js@3.49.0)(react-dom@18.3.1(react@18.3.1))(react-server-dom-rspack@0.0.2(@rspack/core@1.3.9(@swc/helpers@0.5.23))(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react@18.3.1)': - dependencies: - '@loadable/component': 5.16.7(react@18.3.1) - '@loadable/server': 5.16.7(@loadable/component@5.16.7(react@18.3.1))(react@18.3.1) - '@modern-js/plugin': 3.5.0(@module-federation/runtime-tools@2.8.2)(core-js@3.49.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@modern-js/plugin-data-loader': 3.5.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@modern-js/render': 3.5.0(react-dom@18.3.1(react@18.3.1))(react-server-dom-rspack@0.0.2(@rspack/core@1.3.9(@swc/helpers@0.5.23))(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react@18.3.1) - '@modern-js/runtime-utils': 3.5.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@modern-js/types': 3.5.0 - '@modern-js/utils': 3.5.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@swc/core': 1.15.41(@swc/helpers@0.5.17) - '@swc/helpers': 0.5.17 - '@swc/plugin-loadable-components': 11.15.0 - '@types/loadable__component': 5.13.10 - '@types/react-helmet': 6.1.11 - cookie: 0.7.2 - entities: 7.0.1 - es-module-lexer: 1.7.0 - invariant: 2.2.4 - isbot: 3.8.0 - react: 18.3.1 - react-dom: 18.3.1(react@18.3.1) - react-helmet: 6.1.0(react@18.3.1) - react-is: 18.3.1 - transitivePeerDependencies: - - '@module-federation/runtime-tools' - - core-js - - react-server-dom-rspack - '@modern-js/runtime@3.5.0(@module-federation/runtime-tools@2.8.2)(core-js@3.49.0)(react-dom@18.3.1(react@18.3.1))(react-server-dom-rspack@0.0.2(@rspack/core@2.0.6(@module-federation/runtime-tools@2.8.2)(@swc/helpers@0.5.17))(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react@18.3.1)': dependencies: '@loadable/component': 5.16.7(react@18.3.1) @@ -35106,6 +34825,35 @@ snapshots: - core-js - react-server-dom-rspack + '@modern-js/runtime@3.5.0(@module-federation/runtime-tools@2.8.2)(core-js@3.49.0)(react-dom@18.3.1(react@18.3.1))(react-server-dom-rspack@0.0.2(@rspack/core@2.1.8(@module-federation/runtime-tools@2.8.2)(@swc/helpers@0.5.23))(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react@18.3.1)': + dependencies: + '@loadable/component': 5.16.7(react@18.3.1) + '@loadable/server': 5.16.7(@loadable/component@5.16.7(react@18.3.1))(react@18.3.1) + '@modern-js/plugin': 3.5.0(@module-federation/runtime-tools@2.8.2)(core-js@3.49.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@modern-js/plugin-data-loader': 3.5.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@modern-js/render': 3.5.0(react-dom@18.3.1(react@18.3.1))(react-server-dom-rspack@0.0.2(@rspack/core@2.1.8(@module-federation/runtime-tools@2.8.2)(@swc/helpers@0.5.23))(react-dom@18.3.1(react@18.3.1))(react@18.3.1))(react@18.3.1) + '@modern-js/runtime-utils': 3.5.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@modern-js/types': 3.5.0 + '@modern-js/utils': 3.5.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + '@swc/core': 1.15.41(@swc/helpers@0.5.17) + '@swc/helpers': 0.5.17 + '@swc/plugin-loadable-components': 11.15.0 + '@types/loadable__component': 5.13.10 + '@types/react-helmet': 6.1.11 + cookie: 0.7.2 + entities: 7.0.1 + es-module-lexer: 1.7.0 + invariant: 2.2.4 + isbot: 3.8.0 + react: 18.3.1 + react-dom: 18.3.1(react@18.3.1) + react-helmet: 6.1.0(react@18.3.1) + react-is: 18.3.1 + transitivePeerDependencies: + - '@module-federation/runtime-tools' + - core-js + - react-server-dom-rspack + '@modern-js/server-core@2.70.5(react-dom@19.2.7(react@19.2.7))(react@19.2.7)': dependencies: '@modern-js/plugin': 2.70.5 @@ -35275,7 +35023,7 @@ snapshots: - react - react-dom - '@modern-js/server@2.70.5(@babel/traverse@7.29.0)(@rsbuild/core@1.7.3)(react-dom@19.2.7(react@19.2.7))(react@19.2.7)(ts-node@10.9.2(@swc/core@1.15.41(@swc/helpers@0.5.17))(@types/node@20.19.5)(typescript@7.0.2))(tsconfig-paths@4.2.0)': + '@modern-js/server@2.70.5(@babel/traverse@7.29.0)(@rsbuild/core@1.7.3)(react-dom@19.2.7(react@19.2.7))(react@19.2.7)(ts-node@10.9.2(@swc/core@1.15.41(@swc/helpers@0.5.17))(@types/node@26.2.0)(typescript@7.0.2))(tsconfig-paths@4.2.0)': dependencies: '@babel/core': 7.29.7 '@babel/register': 7.28.6(@babel/core@7.29.7) @@ -35292,7 +35040,7 @@ snapshots: path-to-regexp: 6.3.0 ws: 8.21.0 optionalDependencies: - ts-node: 10.9.2(@swc/core@1.15.41(@swc/helpers@0.5.17))(@types/node@20.19.5)(typescript@7.0.2) + ts-node: 10.9.2(@swc/core@1.15.41(@swc/helpers@0.5.17))(@types/node@26.2.0)(typescript@7.0.2) tsconfig-paths: 4.2.0 transitivePeerDependencies: - '@babel/traverse' @@ -35333,7 +35081,7 @@ snapshots: - supports-color - utf-8-validate - '@modern-js/server@3.5.0(@module-federation/runtime-tools@2.8.2)(core-js@3.49.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(ts-node@10.9.2(@swc/core@1.15.41(@swc/helpers@0.5.17))(@types/node@20.19.5)(typescript@7.0.2))(tsconfig-paths@4.2.0)': + '@modern-js/server@3.5.0(@module-federation/runtime-tools@2.8.2)(core-js@3.49.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(ts-node@10.9.2(@swc/core@1.15.41(@swc/helpers@0.5.17))(@types/node@26.2.0)(typescript@7.0.2))(tsconfig-paths@4.2.0)': dependencies: '@modern-js/runtime-utils': 3.5.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) '@modern-js/server-core': 3.5.0(@module-federation/runtime-tools@2.8.2)(core-js@3.49.0)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) @@ -35348,7 +35096,7 @@ snapshots: path-to-regexp: 6.3.0 ws: 8.21.0 optionalDependencies: - ts-node: 10.9.2(@swc/core@1.15.41(@swc/helpers@0.5.17))(@types/node@20.19.5)(typescript@7.0.2) + ts-node: 10.9.2(@swc/core@1.15.41(@swc/helpers@0.5.17))(@types/node@26.2.0)(typescript@7.0.2) tsconfig-paths: 4.2.0 transitivePeerDependencies: - '@module-federation/runtime-tools' @@ -35570,7 +35318,7 @@ snapshots: dependencies: '@babel/core': 7.29.7 '@babel/preset-react': 7.28.5(@babel/core@7.29.7) - '@babel/types': 7.29.7 + '@babel/types': 7.29.8 '@modern-js/babel-preset': 2.70.5(@rsbuild/core@1.7.3) '@modern-js/flight-server-transform-plugin': 2.70.5 '@modern-js/utils': 2.70.5 @@ -36816,7 +36564,7 @@ snapshots: '@nx/nx-win32-x64-msvc@22.5.4': optional: true - '@nx/react@22.5.4(@babel/core@7.29.7)(@babel/traverse@7.29.8)(@swc-node/register@1.10.10(@swc/core@1.7.26(@swc/helpers@0.5.13))(@swc/types@0.1.27)(typescript@6.0.3))(@swc/core@1.15.41(@swc/helpers@0.5.23))(@swc/helpers@0.5.23)(@types/babel__core@7.20.5)(@zkochan/js-yaml@0.0.7)(esbuild@0.25.5)(eslint@9.39.3(jiti@2.6.1))(nx@22.5.4(@swc-node/register@1.10.10(@swc/core@1.7.26(@swc/helpers@0.5.13))(@swc/types@0.1.27)(typescript@6.0.3))(@swc/core@1.15.41(@swc/helpers@0.5.23)))(react-dom@19.2.7(react@19.2.7))(react@19.2.7)(typescript@7.0.2)(vite@7.3.5(@types/node@26.2.0)(jiti@2.6.1)(less@4.6.4)(sass-embedded@1.98.0)(sass@1.98.0)(terser@5.48.0)(yaml@2.9.0))(vitest@3.2.6(@edge-runtime/vm@3.2.0)(@types/debug@4.1.12)(@types/node@26.2.0)(jiti@2.6.1)(jsdom@20.0.3)(less@4.6.4)(msw@1.3.5(@types/node@20.19.5)(encoding@0.1.13)(typescript@6.0.3))(sass-embedded@1.98.0)(sass@1.98.0)(terser@5.48.0)(yaml@2.9.0))(vue-tsc@2.2.12(typescript@7.0.2))(webpack-cli@5.1.4)': + '@nx/react@22.5.4(@babel/core@7.29.7)(@babel/traverse@7.29.8)(@swc-node/register@1.10.10(@swc/core@1.7.26(@swc/helpers@0.5.13))(@swc/types@0.1.27)(typescript@6.0.3))(@swc/core@1.15.41(@swc/helpers@0.5.23))(@swc/helpers@0.5.23)(@types/babel__core@7.20.5)(@zkochan/js-yaml@0.0.7)(esbuild@0.25.5)(eslint@9.39.3(jiti@2.6.1))(nx@22.5.4(@swc-node/register@1.10.10(@swc/core@1.7.26(@swc/helpers@0.5.13))(@swc/types@0.1.27)(typescript@6.0.3))(@swc/core@1.15.41(@swc/helpers@0.5.23)))(react-dom@19.2.7(react@19.2.7))(react@19.2.7)(typescript@7.0.2)(vite@7.3.6(@types/node@26.2.0)(jiti@2.6.1)(less@4.6.4)(sass-embedded@1.98.0)(sass@1.98.0)(terser@5.48.0)(yaml@2.9.0))(vitest@3.2.6(@edge-runtime/vm@3.2.0)(@types/debug@4.1.12)(@types/node@26.2.0)(jiti@2.6.1)(jsdom@20.0.3)(less@4.6.4)(msw@1.3.5(@types/node@20.19.5)(encoding@0.1.13)(typescript@6.0.3))(sass-embedded@1.98.0)(sass@1.98.0)(terser@5.48.0)(yaml@2.9.0))(vue-tsc@2.2.12(typescript@7.0.2))(webpack-cli@5.1.4)': dependencies: '@nx/devkit': 22.5.4(nx@22.5.4(@swc-node/register@1.10.10(@swc/core@1.7.26(@swc/helpers@0.5.13))(@swc/types@0.1.27)(typescript@6.0.3))(@swc/core@1.15.41(@swc/helpers@0.5.23))) '@nx/eslint': 22.5.4(@babel/traverse@7.29.8)(@swc-node/register@1.10.10(@swc/core@1.7.26(@swc/helpers@0.5.13))(@swc/types@0.1.27)(typescript@6.0.3))(@swc/core@1.15.41(@swc/helpers@0.5.23))(@zkochan/js-yaml@0.0.7)(eslint@9.39.3(jiti@2.6.1))(nx@22.5.4(@swc-node/register@1.10.10(@swc/core@1.7.26(@swc/helpers@0.5.13))(@swc/types@0.1.27)(typescript@6.0.3))(@swc/core@1.15.41(@swc/helpers@0.5.23))) @@ -36833,7 +36581,7 @@ snapshots: semver: 7.6.3 tslib: 2.8.1 optionalDependencies: - '@nx/vite': 22.5.4(@babel/traverse@7.29.8)(@swc-node/register@1.10.10(@swc/core@1.7.26(@swc/helpers@0.5.13))(@swc/types@0.1.27)(typescript@6.0.3))(@swc/core@1.15.41(@swc/helpers@0.5.23))(nx@22.5.4(@swc-node/register@1.10.10(@swc/core@1.7.26(@swc/helpers@0.5.13))(@swc/types@0.1.27)(typescript@6.0.3))(@swc/core@1.15.41(@swc/helpers@0.5.23)))(typescript@7.0.2)(vite@7.3.5(@types/node@26.2.0)(jiti@2.6.1)(less@4.6.4)(sass-embedded@1.98.0)(sass@1.98.0)(terser@5.48.0)(yaml@2.9.0))(vitest@3.2.6(@edge-runtime/vm@3.2.0)(@types/debug@4.1.12)(@types/node@26.2.0)(jiti@2.6.1)(jsdom@20.0.3)(less@4.6.4)(msw@1.3.5(@types/node@20.19.5)(encoding@0.1.13)(typescript@6.0.3))(sass-embedded@1.98.0)(sass@1.98.0)(terser@5.48.0)(yaml@2.9.0)) + '@nx/vite': 22.5.4(@babel/traverse@7.29.8)(@swc-node/register@1.10.10(@swc/core@1.7.26(@swc/helpers@0.5.13))(@swc/types@0.1.27)(typescript@6.0.3))(@swc/core@1.15.41(@swc/helpers@0.5.23))(nx@22.5.4(@swc-node/register@1.10.10(@swc/core@1.7.26(@swc/helpers@0.5.13))(@swc/types@0.1.27)(typescript@6.0.3))(@swc/core@1.15.41(@swc/helpers@0.5.23)))(typescript@7.0.2)(vite@7.3.6(@types/node@26.2.0)(jiti@2.6.1)(less@4.6.4)(sass-embedded@1.98.0)(sass@1.98.0)(terser@5.48.0)(yaml@2.9.0))(vitest@3.2.6(@edge-runtime/vm@3.2.0)(@types/debug@4.1.12)(@types/node@26.2.0)(jiti@2.6.1)(jsdom@20.0.3)(less@4.6.4)(msw@1.3.5(@types/node@20.19.5)(encoding@0.1.13)(typescript@6.0.3))(sass-embedded@1.98.0)(sass@1.98.0)(terser@5.48.0)(yaml@2.9.0)) transitivePeerDependencies: - '@babel/core' - '@babel/traverse' @@ -36863,20 +36611,20 @@ snapshots: dependencies: '@nx/devkit': 22.5.4(nx@22.5.4(@swc-node/register@1.10.10(@swc/core@1.7.26(@swc/helpers@0.5.13))(@swc/types@0.1.27)(typescript@6.0.3))(@swc/core@1.15.41(@swc/helpers@0.5.23))) '@nx/js': 22.5.4(@babel/traverse@7.29.8)(@swc-node/register@1.10.10(@swc/core@1.7.26(@swc/helpers@0.5.13))(@swc/types@0.1.27)(typescript@6.0.3))(@swc/core@1.15.41(@swc/helpers@0.5.23))(nx@22.5.4(@swc-node/register@1.10.10(@swc/core@1.7.26(@swc/helpers@0.5.13))(@swc/types@0.1.27)(typescript@6.0.3))(@swc/core@1.15.41(@swc/helpers@0.5.23))) - '@rollup/plugin-babel': 6.1.0(@babel/core@7.29.7)(@types/babel__core@7.20.5)(rollup@4.59.0) - '@rollup/plugin-commonjs': 25.0.8(rollup@4.59.0) - '@rollup/plugin-image': 3.0.3(rollup@4.59.0) - '@rollup/plugin-json': 6.1.0(rollup@4.59.0) - '@rollup/plugin-node-resolve': 15.3.1(rollup@4.59.0) - '@rollup/plugin-typescript': 12.3.0(rollup@4.59.0)(tslib@2.8.1)(typescript@7.0.2) + '@rollup/plugin-babel': 6.1.0(@babel/core@7.29.7)(@types/babel__core@7.20.5)(rollup@4.62.2) + '@rollup/plugin-commonjs': 25.0.8(rollup@4.62.2) + '@rollup/plugin-image': 3.0.3(rollup@4.62.2) + '@rollup/plugin-json': 6.1.0(rollup@4.62.2) + '@rollup/plugin-node-resolve': 15.3.1(rollup@4.62.2) + '@rollup/plugin-typescript': 12.3.0(rollup@4.62.2)(tslib@2.8.1)(typescript@7.0.2) autoprefixer: 10.4.20(postcss@8.5.23) concat-with-sourcemaps: 1.1.0 picocolors: 1.1.1 picomatch: 4.0.2 postcss: 8.5.23 postcss-modules: 6.0.1(postcss@8.5.23) - rollup: 4.59.0 - rollup-plugin-typescript2: 0.36.0(rollup@4.59.0)(typescript@7.0.2) + rollup: 4.62.2 + rollup-plugin-typescript2: 0.36.0(rollup@4.62.2)(typescript@7.0.2) tslib: 2.8.1 transitivePeerDependencies: - '@babel/core' @@ -36890,11 +36638,11 @@ snapshots: - typescript - verdaccio - '@nx/vite@22.5.4(@babel/traverse@7.29.8)(@swc-node/register@1.10.10(@swc/core@1.7.26(@swc/helpers@0.5.13))(@swc/types@0.1.27)(typescript@6.0.3))(@swc/core@1.15.41(@swc/helpers@0.5.23))(nx@22.5.4(@swc-node/register@1.10.10(@swc/core@1.7.26(@swc/helpers@0.5.13))(@swc/types@0.1.27)(typescript@6.0.3))(@swc/core@1.15.41(@swc/helpers@0.5.23)))(typescript@7.0.2)(vite@7.3.5(@types/node@26.2.0)(jiti@2.6.1)(less@4.6.4)(sass-embedded@1.98.0)(sass@1.98.0)(terser@5.48.0)(yaml@2.9.0))(vitest@3.2.6(@edge-runtime/vm@3.2.0)(@types/debug@4.1.12)(@types/node@26.2.0)(jiti@2.6.1)(jsdom@20.0.3)(less@4.6.4)(msw@1.3.5(@types/node@20.19.5)(encoding@0.1.13)(typescript@6.0.3))(sass-embedded@1.98.0)(sass@1.98.0)(terser@5.48.0)(yaml@2.9.0))': + '@nx/vite@22.5.4(@babel/traverse@7.29.8)(@swc-node/register@1.10.10(@swc/core@1.7.26(@swc/helpers@0.5.13))(@swc/types@0.1.27)(typescript@6.0.3))(@swc/core@1.15.41(@swc/helpers@0.5.23))(nx@22.5.4(@swc-node/register@1.10.10(@swc/core@1.7.26(@swc/helpers@0.5.13))(@swc/types@0.1.27)(typescript@6.0.3))(@swc/core@1.15.41(@swc/helpers@0.5.23)))(typescript@7.0.2)(vite@7.3.6(@types/node@26.2.0)(jiti@2.6.1)(less@4.6.4)(sass-embedded@1.98.0)(sass@1.98.0)(terser@5.48.0)(yaml@2.9.0))(vitest@3.2.6(@edge-runtime/vm@3.2.0)(@types/debug@4.1.12)(@types/node@26.2.0)(jiti@2.6.1)(jsdom@20.0.3)(less@4.6.4)(msw@1.3.5(@types/node@20.19.5)(encoding@0.1.13)(typescript@6.0.3))(sass-embedded@1.98.0)(sass@1.98.0)(terser@5.48.0)(yaml@2.9.0))': dependencies: '@nx/devkit': 22.5.4(nx@22.5.4(@swc-node/register@1.10.10(@swc/core@1.7.26(@swc/helpers@0.5.13))(@swc/types@0.1.27)(typescript@6.0.3))(@swc/core@1.15.41(@swc/helpers@0.5.23))) '@nx/js': 22.5.4(@babel/traverse@7.29.8)(@swc-node/register@1.10.10(@swc/core@1.7.26(@swc/helpers@0.5.13))(@swc/types@0.1.27)(typescript@6.0.3))(@swc/core@1.15.41(@swc/helpers@0.5.23))(nx@22.5.4(@swc-node/register@1.10.10(@swc/core@1.7.26(@swc/helpers@0.5.13))(@swc/types@0.1.27)(typescript@6.0.3))(@swc/core@1.15.41(@swc/helpers@0.5.23))) - '@nx/vitest': 22.5.4(@babel/traverse@7.29.8)(@swc-node/register@1.10.10(@swc/core@1.7.26(@swc/helpers@0.5.13))(@swc/types@0.1.27)(typescript@6.0.3))(@swc/core@1.15.41(@swc/helpers@0.5.23))(nx@22.5.4(@swc-node/register@1.10.10(@swc/core@1.7.26(@swc/helpers@0.5.13))(@swc/types@0.1.27)(typescript@6.0.3))(@swc/core@1.15.41(@swc/helpers@0.5.23)))(typescript@7.0.2)(vite@7.3.5(@types/node@26.2.0)(jiti@2.6.1)(less@4.6.4)(sass-embedded@1.98.0)(sass@1.98.0)(terser@5.48.0)(yaml@2.9.0))(vitest@3.2.6(@edge-runtime/vm@3.2.0)(@types/debug@4.1.12)(@types/node@26.2.0)(jiti@2.6.1)(jsdom@20.0.3)(less@4.6.4)(msw@1.3.5(@types/node@20.19.5)(encoding@0.1.13)(typescript@6.0.3))(sass-embedded@1.98.0)(sass@1.98.0)(terser@5.48.0)(yaml@2.9.0)) + '@nx/vitest': 22.5.4(@babel/traverse@7.29.8)(@swc-node/register@1.10.10(@swc/core@1.7.26(@swc/helpers@0.5.13))(@swc/types@0.1.27)(typescript@6.0.3))(@swc/core@1.15.41(@swc/helpers@0.5.23))(nx@22.5.4(@swc-node/register@1.10.10(@swc/core@1.7.26(@swc/helpers@0.5.13))(@swc/types@0.1.27)(typescript@6.0.3))(@swc/core@1.15.41(@swc/helpers@0.5.23)))(typescript@7.0.2)(vite@7.3.6(@types/node@26.2.0)(jiti@2.6.1)(less@4.6.4)(sass-embedded@1.98.0)(sass@1.98.0)(terser@5.48.0)(yaml@2.9.0))(vitest@3.2.6(@edge-runtime/vm@3.2.0)(@types/debug@4.1.12)(@types/node@26.2.0)(jiti@2.6.1)(jsdom@20.0.3)(less@4.6.4)(msw@1.3.5(@types/node@20.19.5)(encoding@0.1.13)(typescript@6.0.3))(sass-embedded@1.98.0)(sass@1.98.0)(terser@5.48.0)(yaml@2.9.0)) '@phenomnomnominal/tsquery': 6.1.4(typescript@7.0.2) ajv: 8.18.0 enquirer: 2.3.6 @@ -36902,7 +36650,7 @@ snapshots: semver: 7.8.5 tsconfig-paths: 4.2.0 tslib: 2.8.1 - vite: 7.3.5(@types/node@26.2.0)(jiti@2.6.1)(less@4.6.4)(sass-embedded@1.98.0)(sass@1.98.0)(terser@5.48.0)(yaml@2.9.0) + vite: 7.3.6(@types/node@26.2.0)(jiti@2.6.1)(less@4.6.4)(sass-embedded@1.98.0)(sass@1.98.0)(terser@5.48.0)(yaml@2.9.0) vitest: 3.2.6(@edge-runtime/vm@3.2.0)(@types/debug@4.1.12)(@types/node@26.2.0)(jiti@2.6.1)(jsdom@20.0.3)(less@4.6.4)(msw@1.3.5(@types/node@20.19.5)(encoding@0.1.13)(typescript@6.0.3))(sass-embedded@1.98.0)(sass@1.98.0)(terser@5.48.0)(yaml@2.9.0) transitivePeerDependencies: - '@babel/traverse' @@ -36915,7 +36663,7 @@ snapshots: - verdaccio optional: true - '@nx/vitest@22.5.4(@babel/traverse@7.29.8)(@swc-node/register@1.10.10(@swc/core@1.7.26(@swc/helpers@0.5.13))(@swc/types@0.1.27)(typescript@6.0.3))(@swc/core@1.15.41(@swc/helpers@0.5.23))(nx@22.5.4(@swc-node/register@1.10.10(@swc/core@1.7.26(@swc/helpers@0.5.13))(@swc/types@0.1.27)(typescript@6.0.3))(@swc/core@1.15.41(@swc/helpers@0.5.23)))(typescript@7.0.2)(vite@7.3.5(@types/node@26.2.0)(jiti@2.6.1)(less@4.6.4)(sass-embedded@1.98.0)(sass@1.98.0)(terser@5.48.0)(yaml@2.9.0))(vitest@3.2.6(@edge-runtime/vm@3.2.0)(@types/debug@4.1.12)(@types/node@26.2.0)(jiti@2.6.1)(jsdom@20.0.3)(less@4.6.4)(msw@1.3.5(@types/node@20.19.5)(encoding@0.1.13)(typescript@6.0.3))(sass-embedded@1.98.0)(sass@1.98.0)(terser@5.48.0)(yaml@2.9.0))': + '@nx/vitest@22.5.4(@babel/traverse@7.29.8)(@swc-node/register@1.10.10(@swc/core@1.7.26(@swc/helpers@0.5.13))(@swc/types@0.1.27)(typescript@6.0.3))(@swc/core@1.15.41(@swc/helpers@0.5.23))(nx@22.5.4(@swc-node/register@1.10.10(@swc/core@1.7.26(@swc/helpers@0.5.13))(@swc/types@0.1.27)(typescript@6.0.3))(@swc/core@1.15.41(@swc/helpers@0.5.23)))(typescript@7.0.2)(vite@7.3.6(@types/node@26.2.0)(jiti@2.6.1)(less@4.6.4)(sass-embedded@1.98.0)(sass@1.98.0)(terser@5.48.0)(yaml@2.9.0))(vitest@3.2.6(@edge-runtime/vm@3.2.0)(@types/debug@4.1.12)(@types/node@26.2.0)(jiti@2.6.1)(jsdom@20.0.3)(less@4.6.4)(msw@1.3.5(@types/node@20.19.5)(encoding@0.1.13)(typescript@6.0.3))(sass-embedded@1.98.0)(sass@1.98.0)(terser@5.48.0)(yaml@2.9.0))': dependencies: '@nx/devkit': 22.5.4(nx@22.5.4(@swc-node/register@1.10.10(@swc/core@1.7.26(@swc/helpers@0.5.13))(@swc/types@0.1.27)(typescript@6.0.3))(@swc/core@1.15.41(@swc/helpers@0.5.23))) '@nx/js': 22.5.4(@babel/traverse@7.29.8)(@swc-node/register@1.10.10(@swc/core@1.7.26(@swc/helpers@0.5.13))(@swc/types@0.1.27)(typescript@6.0.3))(@swc/core@1.15.41(@swc/helpers@0.5.23))(nx@22.5.4(@swc-node/register@1.10.10(@swc/core@1.7.26(@swc/helpers@0.5.13))(@swc/types@0.1.27)(typescript@6.0.3))(@swc/core@1.15.41(@swc/helpers@0.5.23))) @@ -36923,7 +36671,7 @@ snapshots: semver: 7.8.5 tslib: 2.8.1 optionalDependencies: - vite: 7.3.5(@types/node@26.2.0)(jiti@2.6.1)(less@4.6.4)(sass-embedded@1.98.0)(sass@1.98.0)(terser@5.48.0)(yaml@2.9.0) + vite: 7.3.6(@types/node@26.2.0)(jiti@2.6.1)(less@4.6.4)(sass-embedded@1.98.0)(sass@1.98.0)(terser@5.48.0)(yaml@2.9.0) vitest: 3.2.6(@edge-runtime/vm@3.2.0)(@types/debug@4.1.12)(@types/node@26.2.0)(jiti@2.6.1)(jsdom@20.0.3)(less@4.6.4)(msw@1.3.5(@types/node@20.19.5)(encoding@0.1.13)(typescript@6.0.3))(sass-embedded@1.98.0)(sass@1.98.0)(terser@5.48.0)(yaml@2.9.0) transitivePeerDependencies: - '@babel/traverse' @@ -39825,50 +39573,50 @@ snapshots: optionalDependencies: rollup: 4.62.2 - '@rollup/plugin-babel@6.1.0(@babel/core@7.29.7)(@types/babel__core@7.20.5)(rollup@4.59.0)': + '@rollup/plugin-babel@6.1.0(@babel/core@7.29.7)(@types/babel__core@7.20.5)(rollup@4.62.2)': dependencies: '@babel/core': 7.29.7 '@babel/helper-module-imports': 7.29.7 - '@rollup/pluginutils': 5.3.0(rollup@4.59.0) + '@rollup/pluginutils': 5.3.0(rollup@4.62.2) optionalDependencies: '@types/babel__core': 7.20.5 - rollup: 4.59.0 + rollup: 4.62.2 transitivePeerDependencies: - supports-color - '@rollup/plugin-commonjs@25.0.8(rollup@4.59.0)': + '@rollup/plugin-commonjs@25.0.8(rollup@4.62.2)': dependencies: - '@rollup/pluginutils': 5.3.0(rollup@4.59.0) + '@rollup/pluginutils': 5.3.0(rollup@4.62.2) commondir: 1.0.1 estree-walker: 2.0.2 glob: 8.1.0 is-reference: 1.2.1 magic-string: 0.30.21 optionalDependencies: - rollup: 4.59.0 + rollup: 4.62.2 - '@rollup/plugin-image@3.0.3(rollup@4.59.0)': + '@rollup/plugin-image@3.0.3(rollup@4.62.2)': dependencies: - '@rollup/pluginutils': 5.3.0(rollup@4.59.0) + '@rollup/pluginutils': 5.3.0(rollup@4.62.2) mini-svg-data-uri: 1.4.4 optionalDependencies: - rollup: 4.59.0 + rollup: 4.62.2 - '@rollup/plugin-json@6.1.0(rollup@4.59.0)': + '@rollup/plugin-json@6.1.0(rollup@4.62.2)': dependencies: - '@rollup/pluginutils': 5.3.0(rollup@4.59.0) + '@rollup/pluginutils': 5.3.0(rollup@4.62.2) optionalDependencies: - rollup: 4.59.0 + rollup: 4.62.2 - '@rollup/plugin-node-resolve@15.3.1(rollup@4.59.0)': + '@rollup/plugin-node-resolve@15.3.1(rollup@4.62.2)': dependencies: - '@rollup/pluginutils': 5.3.0(rollup@4.59.0) + '@rollup/pluginutils': 5.3.0(rollup@4.62.2) '@types/resolve': 1.20.2 deepmerge: 4.3.1 is-module: 1.0.0 resolve: 1.22.8 optionalDependencies: - rollup: 4.59.0 + rollup: 4.62.2 '@rollup/plugin-replace@6.0.1(rollup@4.62.2)': dependencies: @@ -39877,13 +39625,13 @@ snapshots: optionalDependencies: rollup: 4.62.2 - '@rollup/plugin-typescript@12.3.0(rollup@4.59.0)(tslib@2.8.1)(typescript@7.0.2)': + '@rollup/plugin-typescript@12.3.0(rollup@4.62.2)(tslib@2.8.1)(typescript@7.0.2)': dependencies: - '@rollup/pluginutils': 5.3.0(rollup@4.59.0) + '@rollup/pluginutils': 5.3.0(rollup@4.62.2) resolve: 1.22.8 typescript: 7.0.2 optionalDependencies: - rollup: 4.59.0 + rollup: 4.62.2 tslib: 2.8.1 '@rollup/pluginutils@4.2.1': @@ -39891,17 +39639,9 @@ snapshots: estree-walker: 2.0.2 picomatch: 2.3.1 - '@rollup/pluginutils@5.3.0(rollup@4.59.0)': - dependencies: - '@types/estree': 1.0.8 - estree-walker: 2.0.2 - picomatch: 4.0.3 - optionalDependencies: - rollup: 4.59.0 - '@rollup/pluginutils@5.3.0(rollup@4.62.2)': dependencies: - '@types/estree': 1.0.8 + '@types/estree': 1.0.9 estree-walker: 2.0.2 picomatch: 4.0.3 optionalDependencies: @@ -40147,15 +39887,6 @@ snapshots: transitivePeerDependencies: - '@module-federation/runtime-tools' - '@rsbuild/core@2.1.10(@module-federation/runtime-tools@2.8.2)(core-js@3.36.1)': - dependencies: - '@rspack/core': 2.1.8(@module-federation/runtime-tools@2.8.2)(@swc/helpers@0.5.23) - '@swc/helpers': 0.5.23 - optionalDependencies: - core-js: 3.36.1 - transitivePeerDependencies: - - '@module-federation/runtime-tools' - '@rsbuild/core@2.1.10(@module-federation/runtime-tools@2.8.2)(core-js@3.49.0)': dependencies: '@rspack/core': 2.1.8(@module-federation/runtime-tools@2.8.2)(@swc/helpers@0.5.23) @@ -40165,9 +39896,9 @@ snapshots: transitivePeerDependencies: - '@module-federation/runtime-tools' - '@rsbuild/core@2.1.4(@module-federation/runtime-tools@2.2.2(node-fetch@2.7.0(encoding@0.1.13)))(core-js@3.49.0)': + '@rsbuild/core@2.1.4(@module-federation/runtime-tools@0.21.6)(core-js@3.49.0)': dependencies: - '@rspack/core': 2.1.2(@module-federation/runtime-tools@2.2.2(node-fetch@2.7.0(encoding@0.1.13)))(@swc/helpers@0.5.23) + '@rspack/core': 2.1.2(@module-federation/runtime-tools@0.21.6)(@swc/helpers@0.5.23) '@swc/helpers': 0.5.23 optionalDependencies: core-js: 3.49.0 @@ -40366,44 +40097,17 @@ snapshots: - lightningcss - webpack - '@rsbuild/plugin-css-minimizer@2.0.1(@rsbuild/core@2.1.0(@module-federation/runtime-tools@2.8.2)(core-js@3.49.0))(esbuild@0.28.1)(webpack@5.104.1(@swc/core@1.15.41(@swc/helpers@0.5.23))(esbuild@0.28.1)(webpack-cli@5.1.4))': - dependencies: - css-minimizer-webpack-plugin: 8.0.0(esbuild@0.28.1)(webpack@5.104.1(@swc/core@1.15.41(@swc/helpers@0.5.23))(esbuild@0.28.1)(webpack-cli@5.1.4)) - reduce-configs: 1.1.2 - optionalDependencies: - '@rsbuild/core': 2.1.0(@module-federation/runtime-tools@2.8.2)(core-js@3.49.0) - transitivePeerDependencies: - - '@parcel/css' - - '@swc/css' - - clean-css - - csso - - esbuild - - lightningcss - - webpack - '@rsbuild/plugin-less@1.6.0(@rsbuild/core@1.7.3)': dependencies: '@rsbuild/core': 1.7.3 deepmerge: 4.3.1 reduce-configs: 1.1.2 - '@rsbuild/plugin-less@1.6.4(@rsbuild/core@2.1.0(@module-federation/runtime-tools@2.8.2)(core-js@3.49.0))(@rspack/core@1.3.9(@swc/helpers@0.5.23))(webpack@5.104.1(@swc/core@1.15.41(@swc/helpers@0.5.23))(esbuild@0.28.1)(webpack-cli@5.1.4(webpack-dev-server@5.2.3)(webpack@5.104.1)))': - dependencies: - deepmerge: 4.3.1 - less: 4.6.4 - less-loader: 12.3.3(@rspack/core@1.3.9(@swc/helpers@0.5.23))(less@4.6.4)(webpack@5.104.1(@swc/core@1.15.41(@swc/helpers@0.5.23))(esbuild@0.28.1)(webpack-cli@5.1.4(webpack-dev-server@5.2.3)(webpack@5.104.1))) - reduce-configs: 1.1.2 - optionalDependencies: - '@rsbuild/core': 2.1.0(@module-federation/runtime-tools@2.8.2)(core-js@3.49.0) - transitivePeerDependencies: - - '@rspack/core' - - webpack - - '@rsbuild/plugin-less@1.6.4(@rsbuild/core@2.1.0(@module-federation/runtime-tools@2.8.2)(core-js@3.49.0))(@rspack/core@1.3.9(@swc/helpers@0.5.23))(webpack@5.104.1(@swc/core@1.15.41(@swc/helpers@0.5.23))(esbuild@0.28.1)(webpack-cli@5.1.4))': + '@rsbuild/plugin-less@1.6.4(@rsbuild/core@2.1.0(@module-federation/runtime-tools@2.8.2)(core-js@3.49.0))(@rspack/core@2.0.6(@module-federation/runtime-tools@2.8.2)(@swc/helpers@0.5.17))(webpack@5.104.1(@swc/core@1.15.41(@swc/helpers@0.5.17))(esbuild@0.28.1)(webpack-cli@5.1.4))': dependencies: deepmerge: 4.3.1 less: 4.6.4 - less-loader: 12.3.3(@rspack/core@1.3.9(@swc/helpers@0.5.23))(less@4.6.4)(webpack@5.104.1(@swc/core@1.15.41(@swc/helpers@0.5.23))(esbuild@0.28.1)(webpack-cli@5.1.4)) + less-loader: 12.3.3(@rspack/core@2.0.6(@module-federation/runtime-tools@2.8.2)(@swc/helpers@0.5.17))(less@4.6.4)(webpack@5.104.1(@swc/core@1.15.41(@swc/helpers@0.5.17))(esbuild@0.28.1)(webpack-cli@5.1.4)) reduce-configs: 1.1.2 optionalDependencies: '@rsbuild/core': 2.1.0(@module-federation/runtime-tools@2.8.2)(core-js@3.49.0) @@ -40411,11 +40115,11 @@ snapshots: - '@rspack/core' - webpack - '@rsbuild/plugin-less@1.6.4(@rsbuild/core@2.1.0(@module-federation/runtime-tools@2.8.2)(core-js@3.49.0))(@rspack/core@2.0.6(@module-federation/runtime-tools@2.8.2)(@swc/helpers@0.5.17))(webpack@5.104.1(@swc/core@1.15.41(@swc/helpers@0.5.17))(esbuild@0.28.1)(webpack-cli@5.1.4))': + '@rsbuild/plugin-less@1.6.4(@rsbuild/core@2.1.0(@module-federation/runtime-tools@2.8.2)(core-js@3.49.0))(@rspack/core@2.1.8(@module-federation/runtime-tools@2.8.2)(@swc/helpers@0.5.23))(webpack@5.104.1(@swc/core@1.15.41(@swc/helpers@0.5.23))(esbuild@0.28.1)(webpack-cli@5.1.4(webpack-dev-server@5.2.3)(webpack@5.104.1)))': dependencies: deepmerge: 4.3.1 less: 4.6.4 - less-loader: 12.3.3(@rspack/core@2.0.6(@module-federation/runtime-tools@2.8.2)(@swc/helpers@0.5.17))(less@4.6.4)(webpack@5.104.1(@swc/core@1.15.41(@swc/helpers@0.5.17))(esbuild@0.28.1)(webpack-cli@5.1.4)) + less-loader: 12.3.3(@rspack/core@2.1.8(@module-federation/runtime-tools@2.8.2)(@swc/helpers@0.5.23))(less@4.6.4)(webpack@5.104.1(@swc/core@1.15.41(@swc/helpers@0.5.23))(esbuild@0.28.1)(webpack-cli@5.1.4(webpack-dev-server@5.2.3)(webpack@5.104.1))) reduce-configs: 1.1.2 optionalDependencies: '@rsbuild/core': 2.1.0(@module-federation/runtime-tools@2.8.2)(core-js@3.49.0) @@ -40520,15 +40224,6 @@ snapshots: transitivePeerDependencies: - webpack-hot-middleware - '@rsbuild/plugin-react@2.0.1(@rsbuild/core@2.1.0(@module-federation/runtime-tools@2.8.2)(core-js@3.49.0))(@rspack/core@1.3.9(@swc/helpers@0.5.23))': - dependencies: - '@rspack/plugin-react-refresh': 2.0.0(@rspack/core@1.3.9(@swc/helpers@0.5.23))(react-refresh@0.18.0) - react-refresh: 0.18.0 - optionalDependencies: - '@rsbuild/core': 2.1.0(@module-federation/runtime-tools@2.8.2)(core-js@3.49.0) - transitivePeerDependencies: - - '@rspack/core' - '@rsbuild/plugin-react@2.0.1(@rsbuild/core@2.1.0(@module-federation/runtime-tools@2.8.2)(core-js@3.49.0))(@rspack/core@2.0.6(@module-federation/runtime-tools@2.8.2)(@swc/helpers@0.5.17))': dependencies: '@rspack/plugin-react-refresh': 2.0.0(@rspack/core@2.0.6(@module-federation/runtime-tools@2.8.2)(@swc/helpers@0.5.17))(react-refresh@0.18.0) @@ -40538,12 +40233,12 @@ snapshots: transitivePeerDependencies: - '@rspack/core' - '@rsbuild/plugin-react@2.0.1(@rsbuild/core@2.1.4(@module-federation/runtime-tools@2.8.2)(core-js@3.36.1))(@rspack/core@1.3.9(@swc/helpers@0.5.23))': + '@rsbuild/plugin-react@2.0.1(@rsbuild/core@2.1.0(@module-federation/runtime-tools@2.8.2)(core-js@3.49.0))(@rspack/core@2.1.8(@module-federation/runtime-tools@2.8.2)(@swc/helpers@0.5.23))': dependencies: - '@rspack/plugin-react-refresh': 2.0.0(@rspack/core@1.3.9(@swc/helpers@0.5.23))(react-refresh@0.18.0) + '@rspack/plugin-react-refresh': 2.0.0(@rspack/core@2.1.8(@module-federation/runtime-tools@2.8.2)(@swc/helpers@0.5.23))(react-refresh@0.18.0) react-refresh: 0.18.0 optionalDependencies: - '@rsbuild/core': 2.1.4(@module-federation/runtime-tools@2.8.2)(core-js@3.36.1) + '@rsbuild/core': 2.1.0(@module-federation/runtime-tools@2.8.2)(core-js@3.49.0) transitivePeerDependencies: - '@rspack/core' @@ -40556,18 +40251,18 @@ snapshots: transitivePeerDependencies: - '@rspack/core' - '@rsbuild/plugin-react@2.1.0(@rsbuild/core@2.1.0(@module-federation/runtime-tools@2.8.2)(core-js@3.49.0))(@rspack/core@1.3.9(@swc/helpers@0.5.23))': + '@rsbuild/plugin-react@2.1.0(@rsbuild/core@2.1.0(@module-federation/runtime-tools@2.8.2)(core-js@3.49.0))(@rspack/core@2.0.6(@module-federation/runtime-tools@2.8.2)(@swc/helpers@0.5.17))': dependencies: - '@rspack/plugin-react-refresh': 2.0.2(@rspack/core@1.3.9(@swc/helpers@0.5.23))(react-refresh@0.18.0) + '@rspack/plugin-react-refresh': 2.0.2(@rspack/core@2.0.6(@module-federation/runtime-tools@2.8.2)(@swc/helpers@0.5.17))(react-refresh@0.18.0) react-refresh: 0.18.0 optionalDependencies: '@rsbuild/core': 2.1.0(@module-federation/runtime-tools@2.8.2)(core-js@3.49.0) transitivePeerDependencies: - '@rspack/core' - '@rsbuild/plugin-react@2.1.0(@rsbuild/core@2.1.0(@module-federation/runtime-tools@2.8.2)(core-js@3.49.0))(@rspack/core@2.0.6(@module-federation/runtime-tools@2.8.2)(@swc/helpers@0.5.17))': + '@rsbuild/plugin-react@2.1.0(@rsbuild/core@2.1.0(@module-federation/runtime-tools@2.8.2)(core-js@3.49.0))(@rspack/core@2.1.8(@module-federation/runtime-tools@2.8.2)(@swc/helpers@0.5.23))': dependencies: - '@rspack/plugin-react-refresh': 2.0.2(@rspack/core@2.0.6(@module-federation/runtime-tools@2.8.2)(@swc/helpers@0.5.17))(react-refresh@0.18.0) + '@rspack/plugin-react-refresh': 2.0.2(@rspack/core@2.1.8(@module-federation/runtime-tools@2.8.2)(@swc/helpers@0.5.23))(react-refresh@0.18.0) react-refresh: 0.18.0 optionalDependencies: '@rsbuild/core': 2.1.0(@module-federation/runtime-tools@2.8.2)(core-js@3.49.0) @@ -40643,7 +40338,7 @@ snapshots: optionalDependencies: '@rsbuild/core': 2.1.0(@module-federation/runtime-tools@2.8.2)(core-js@3.49.0) - '@rsbuild/plugin-sass@2.0.1(@rsbuild/core@2.1.10(@module-federation/runtime-tools@2.8.2)(core-js@3.36.1))': + '@rsbuild/plugin-sass@2.0.1(@rsbuild/core@2.1.10(@module-federation/runtime-tools@2.8.2)(core-js@3.49.0))': dependencies: deepmerge: 4.3.1 loader-utils: 2.0.4 @@ -40651,7 +40346,7 @@ snapshots: reduce-configs: 2.0.1 sass-embedded: 1.100.0 optionalDependencies: - '@rsbuild/core': 2.1.10(@module-federation/runtime-tools@2.8.2)(core-js@3.36.1) + '@rsbuild/core': 2.1.10(@module-federation/runtime-tools@2.8.2)(core-js@3.49.0) '@rsbuild/plugin-source-build@1.0.4(@rsbuild/core@1.7.3)': dependencies: @@ -40690,12 +40385,12 @@ snapshots: - typescript - webpack-hot-middleware - '@rsbuild/plugin-svgr@2.0.3(@rsbuild/core@2.1.0(@module-federation/runtime-tools@2.8.2)(core-js@3.49.0))(@rspack/core@1.3.9(@swc/helpers@0.5.23))(typescript@7.0.2)': + '@rsbuild/plugin-svgr@2.0.3(@rsbuild/core@2.1.0(@module-federation/runtime-tools@2.8.2)(core-js@3.49.0))(@rspack/core@2.0.6(@module-federation/runtime-tools@2.8.2)(@swc/helpers@0.5.17))(typescript@7.0.2)': dependencies: - '@rsbuild/plugin-react': 2.1.0(@rsbuild/core@2.1.0(@module-federation/runtime-tools@2.8.2)(core-js@3.49.0))(@rspack/core@1.3.9(@swc/helpers@0.5.23)) + '@rsbuild/plugin-react': 2.1.0(@rsbuild/core@2.1.0(@module-federation/runtime-tools@2.8.2)(core-js@3.49.0))(@rspack/core@2.0.6(@module-federation/runtime-tools@2.8.2)(@swc/helpers@0.5.17)) '@svgr/core': 8.1.0(typescript@7.0.2) - '@svgr/plugin-jsx': 8.1.0(@svgr/core@8.1.0(typescript@6.0.3)) - '@svgr/plugin-svgo': 8.1.0(@svgr/core@8.1.0(typescript@6.0.3))(typescript@7.0.2) + '@svgr/plugin-jsx': 8.1.0(@svgr/core@8.1.0(typescript@7.0.2)) + '@svgr/plugin-svgo': 8.1.0(@svgr/core@8.1.0(typescript@7.0.2))(typescript@7.0.2) deepmerge: 4.3.1 loader-utils: 3.3.1 optionalDependencies: @@ -40705,12 +40400,12 @@ snapshots: - supports-color - typescript - '@rsbuild/plugin-svgr@2.0.3(@rsbuild/core@2.1.0(@module-federation/runtime-tools@2.8.2)(core-js@3.49.0))(@rspack/core@2.0.6(@module-federation/runtime-tools@2.8.2)(@swc/helpers@0.5.17))(typescript@7.0.2)': + '@rsbuild/plugin-svgr@2.0.3(@rsbuild/core@2.1.0(@module-federation/runtime-tools@2.8.2)(core-js@3.49.0))(@rspack/core@2.1.8(@module-federation/runtime-tools@2.8.2)(@swc/helpers@0.5.23))(typescript@7.0.2)': dependencies: - '@rsbuild/plugin-react': 2.1.0(@rsbuild/core@2.1.0(@module-federation/runtime-tools@2.8.2)(core-js@3.49.0))(@rspack/core@2.0.6(@module-federation/runtime-tools@2.8.2)(@swc/helpers@0.5.17)) + '@rsbuild/plugin-react': 2.1.0(@rsbuild/core@2.1.0(@module-federation/runtime-tools@2.8.2)(core-js@3.49.0))(@rspack/core@2.1.8(@module-federation/runtime-tools@2.8.2)(@swc/helpers@0.5.23)) '@svgr/core': 8.1.0(typescript@7.0.2) - '@svgr/plugin-jsx': 8.1.0(@svgr/core@8.1.0(typescript@7.0.2)) - '@svgr/plugin-svgo': 8.1.0(@svgr/core@8.1.0(typescript@7.0.2))(typescript@7.0.2) + '@svgr/plugin-jsx': 8.1.0(@svgr/core@8.1.0(typescript@6.0.3)) + '@svgr/plugin-svgo': 8.1.0(@svgr/core@8.1.0(typescript@6.0.3))(typescript@7.0.2) deepmerge: 4.3.1 loader-utils: 3.3.1 optionalDependencies: @@ -40752,12 +40447,12 @@ snapshots: - tslib - typescript - '@rsbuild/plugin-type-check@1.5.0(@rsbuild/core@2.1.0(@module-federation/runtime-tools@2.8.2)(core-js@3.49.0))(@rspack/core@1.3.9(@swc/helpers@0.5.23))(tslib@2.8.1)(typescript@7.0.2)': + '@rsbuild/plugin-type-check@1.5.0(@rsbuild/core@2.1.0(@module-federation/runtime-tools@2.8.2)(core-js@3.49.0))(@rspack/core@2.0.6(@module-federation/runtime-tools@2.8.2)(@swc/helpers@0.5.17))(tslib@2.8.1)(typescript@7.0.2)': dependencies: deepmerge: 4.3.1 json5: 2.2.3 reduce-configs: 1.1.2 - ts-checker-rspack-plugin: 1.5.1(@rspack/core@1.3.9(@swc/helpers@0.5.23))(tslib@2.8.1)(typescript@7.0.2) + ts-checker-rspack-plugin: 1.5.1(@rspack/core@2.0.6(@module-federation/runtime-tools@2.8.2)(@swc/helpers@0.5.17))(tslib@2.8.1)(typescript@7.0.2) optionalDependencies: '@rsbuild/core': 2.1.0(@module-federation/runtime-tools@2.8.2)(core-js@3.49.0) transitivePeerDependencies: @@ -40765,12 +40460,12 @@ snapshots: - tslib - typescript - '@rsbuild/plugin-type-check@1.5.0(@rsbuild/core@2.1.0(@module-federation/runtime-tools@2.8.2)(core-js@3.49.0))(@rspack/core@2.0.6(@module-federation/runtime-tools@2.8.2)(@swc/helpers@0.5.17))(tslib@2.8.1)(typescript@7.0.2)': + '@rsbuild/plugin-type-check@1.5.0(@rsbuild/core@2.1.0(@module-federation/runtime-tools@2.8.2)(core-js@3.49.0))(@rspack/core@2.1.8(@module-federation/runtime-tools@2.8.2)(@swc/helpers@0.5.23))(tslib@2.8.1)(typescript@7.0.2)': dependencies: deepmerge: 4.3.1 json5: 2.2.3 reduce-configs: 1.1.2 - ts-checker-rspack-plugin: 1.5.1(@rspack/core@2.0.6(@module-federation/runtime-tools@2.8.2)(@swc/helpers@0.5.17))(tslib@2.8.1)(typescript@7.0.2) + ts-checker-rspack-plugin: 1.5.1(@rspack/core@2.1.8(@module-federation/runtime-tools@2.8.2)(@swc/helpers@0.5.23))(tslib@2.8.1)(typescript@7.0.2) optionalDependencies: '@rsbuild/core': 2.1.0(@module-federation/runtime-tools@2.8.2)(core-js@3.49.0) transitivePeerDependencies: @@ -40778,12 +40473,12 @@ snapshots: - tslib - typescript - '@rsbuild/plugin-type-check@1.5.0(@rsbuild/core@2.1.10(@module-federation/runtime-tools@2.8.2)(core-js@3.49.0))(@rspack/core@2.1.8(@module-federation/runtime-tools@2.8.2)(@swc/helpers@0.5.23))(tslib@2.8.1)(typescript@6.0.3)': + '@rsbuild/plugin-type-check@1.5.0(@rsbuild/core@2.1.10(@module-federation/runtime-tools@2.8.2)(core-js@3.49.0))(@rspack/core@2.1.8(@module-federation/runtime-tools@2.8.2)(@swc/helpers@0.5.23))(tslib@2.8.1)(typescript@7.0.2)': dependencies: deepmerge: 4.3.1 json5: 2.2.3 reduce-configs: 1.1.2 - ts-checker-rspack-plugin: 1.5.1(@rspack/core@2.1.8(@module-federation/runtime-tools@2.8.2)(@swc/helpers@0.5.23))(tslib@2.8.1)(typescript@6.0.3) + ts-checker-rspack-plugin: 1.5.1(@rspack/core@2.1.8(@module-federation/runtime-tools@2.8.2)(@swc/helpers@0.5.23))(tslib@2.8.1)(typescript@7.0.2) optionalDependencies: '@rsbuild/core': 2.1.10(@module-federation/runtime-tools@2.8.2)(core-js@3.49.0) transitivePeerDependencies: @@ -40922,18 +40617,6 @@ snapshots: - '@typescript/native-preview' - core-js - '@rslib/core@0.23.2(@microsoft/api-extractor@7.57.7(@types/node@20.19.5))(@module-federation/runtime-tools@2.8.2)(core-js@3.49.0)(typescript@7.0.2)': - dependencies: - '@rsbuild/core': 2.1.4(@module-federation/runtime-tools@2.8.2)(core-js@3.49.0) - rsbuild-plugin-dts: 0.23.2(@microsoft/api-extractor@7.57.7(@types/node@20.19.5))(@rsbuild/core@2.1.4(@module-federation/runtime-tools@2.8.2)(core-js@3.49.0))(typescript@7.0.2) - optionalDependencies: - '@microsoft/api-extractor': 7.57.7(@types/node@20.19.5) - typescript: 7.0.2 - transitivePeerDependencies: - - '@module-federation/runtime-tools' - - '@typescript/native-preview' - - core-js - '@rslib/core@0.23.2(@microsoft/api-extractor@7.57.7(@types/node@22.19.15))(@module-federation/runtime-tools@2.8.2)(core-js@3.49.0)(typescript@6.0.3)': dependencies: '@rsbuild/core': 2.1.4(@module-federation/runtime-tools@2.8.2)(core-js@3.49.0) @@ -41758,11 +41441,11 @@ snapshots: '@module-federation/runtime-tools': 2.8.2 '@swc/helpers': 0.5.23 - '@rspack/core@2.1.2(@module-federation/runtime-tools@2.2.2(node-fetch@2.7.0(encoding@0.1.13)))(@swc/helpers@0.5.23)': + '@rspack/core@2.1.2(@module-federation/runtime-tools@0.21.6)(@swc/helpers@0.5.23)': dependencies: '@rspack/binding': 2.1.2 optionalDependencies: - '@module-federation/runtime-tools': 2.2.2(node-fetch@2.7.0(encoding@0.1.13)) + '@module-federation/runtime-tools': 0.21.6 '@swc/helpers': 0.5.23 '@rspack/core@2.1.2(@module-federation/runtime-tools@2.8.2)(@swc/helpers@0.5.23)': @@ -41825,12 +41508,6 @@ snapshots: optionalDependencies: webpack-hot-middleware: 2.26.1 - '@rspack/plugin-react-refresh@2.0.0(@rspack/core@1.3.9(@swc/helpers@0.5.23))(react-refresh@0.18.0)': - dependencies: - react-refresh: 0.18.0 - optionalDependencies: - '@rspack/core': 1.3.9(@swc/helpers@0.5.23) - '@rspack/plugin-react-refresh@2.0.0(@rspack/core@2.0.6(@module-federation/runtime-tools@2.8.2)(@swc/helpers@0.5.17))(react-refresh@0.18.0)': dependencies: react-refresh: 0.18.0 @@ -41849,12 +41526,6 @@ snapshots: optionalDependencies: '@rspack/core': 0.7.5(@swc/helpers@0.5.23) - '@rspack/plugin-react-refresh@2.0.2(@rspack/core@1.3.9(@swc/helpers@0.5.23))(react-refresh@0.18.0)': - dependencies: - react-refresh: 0.18.0 - optionalDependencies: - '@rspack/core': 1.3.9(@swc/helpers@0.5.23) - '@rspack/plugin-react-refresh@2.0.2(@rspack/core@2.0.6(@module-federation/runtime-tools@2.8.2)(@swc/helpers@0.5.17))(react-refresh@0.18.0)': dependencies: react-refresh: 0.18.0 @@ -41873,13 +41544,13 @@ snapshots: optionalDependencies: '@rspack/core': 2.1.8(@module-federation/runtime-tools@2.8.2)(@swc/helpers@0.5.23) - '@rspress/core@2.0.14(@module-federation/runtime-tools@2.8.2)(@rspack/core@1.3.9(@swc/helpers@0.5.23))(@types/mdast@4.0.4)(@types/react@19.2.14)(core-js@3.36.1)(micromark-util-types@2.0.2)(micromark@4.0.2)': + '@rspress/core@2.0.14(@module-federation/runtime-tools@2.8.2)(@rspack/core@2.1.8(@module-federation/runtime-tools@2.8.2)(@swc/helpers@0.5.23))(@types/mdast@4.0.4)(@types/react@18.3.28)(core-js@3.49.0)(micromark-util-types@2.0.2)(micromark@4.0.2)': dependencies: '@mdx-js/mdx': 3.1.1 - '@mdx-js/react': 3.1.1(@types/react@19.2.14)(react@19.2.7) - '@rsbuild/core': 2.1.4(@module-federation/runtime-tools@2.8.2)(core-js@3.36.1) - '@rsbuild/plugin-react': 2.0.1(@rsbuild/core@2.1.4(@module-federation/runtime-tools@2.8.2)(core-js@3.36.1))(@rspack/core@1.3.9(@swc/helpers@0.5.23)) - '@rspress/shared': 2.0.14(@module-federation/runtime-tools@2.8.2)(core-js@3.36.1) + '@mdx-js/react': 3.1.1(@types/react@18.3.28)(react@19.2.7) + '@rsbuild/core': 2.1.4(@module-federation/runtime-tools@2.8.2)(core-js@3.49.0) + '@rsbuild/plugin-react': 2.0.1(@rsbuild/core@2.1.4(@module-federation/runtime-tools@2.8.2)(core-js@3.49.0))(@rspack/core@2.1.8(@module-federation/runtime-tools@2.8.2)(@swc/helpers@0.5.23)) + '@rspress/shared': 2.0.14(@module-federation/runtime-tools@2.8.2)(core-js@3.49.0) '@shikijs/rehype': 4.2.0 '@types/unist': 3.0.3 '@unhead/react': 2.1.15(react@19.2.7) @@ -41923,10 +41594,10 @@ snapshots: - micromark-util-types - supports-color - '@rspress/core@2.0.14(@module-federation/runtime-tools@2.8.2)(@rspack/core@2.1.8(@module-federation/runtime-tools@2.8.2)(@swc/helpers@0.5.23))(@types/mdast@4.0.4)(@types/react@18.3.28)(core-js@3.49.0)(micromark-util-types@2.0.2)(micromark@4.0.2)': + '@rspress/core@2.0.14(@module-federation/runtime-tools@2.8.2)(@rspack/core@2.1.8(@module-federation/runtime-tools@2.8.2)(@swc/helpers@0.5.23))(@types/mdast@4.0.4)(@types/react@19.2.14)(core-js@3.49.0)(micromark-util-types@2.0.2)(micromark@4.0.2)': dependencies: '@mdx-js/mdx': 3.1.1 - '@mdx-js/react': 3.1.1(@types/react@18.3.28)(react@19.2.7) + '@mdx-js/react': 3.1.1(@types/react@19.2.14)(react@19.2.7) '@rsbuild/core': 2.1.4(@module-federation/runtime-tools@2.8.2)(core-js@3.49.0) '@rsbuild/plugin-react': 2.0.1(@rsbuild/core@2.1.4(@module-federation/runtime-tools@2.8.2)(core-js@3.49.0))(@rspack/core@2.1.8(@module-federation/runtime-tools@2.8.2)(@swc/helpers@0.5.23)) '@rspress/shared': 2.0.14(@module-federation/runtime-tools@2.8.2)(core-js@3.49.0) @@ -41973,15 +41644,6 @@ snapshots: - micromark-util-types - supports-color - '@rspress/shared@2.0.14(@module-federation/runtime-tools@2.8.2)(core-js@3.36.1)': - dependencies: - '@rsbuild/core': 2.1.4(@module-federation/runtime-tools@2.8.2)(core-js@3.36.1) - '@shikijs/rehype': 4.2.0 - unified: 11.0.5 - transitivePeerDependencies: - - '@module-federation/runtime-tools' - - core-js - '@rspress/shared@2.0.14(@module-federation/runtime-tools@2.8.2)(core-js@3.49.0)': dependencies: '@rsbuild/core': 2.1.4(@module-federation/runtime-tools@2.8.2)(core-js@3.49.0) @@ -42372,7 +42034,7 @@ snapshots: dependencies: '@babel/core': 7.29.7 '@babel/preset-env': 7.29.2(@babel/core@7.29.7) - '@babel/types': 7.29.7 + '@babel/types': 7.29.8 '@ndelangen/get-tarball': 3.0.9 '@storybook/codemod': 7.6.24 '@storybook/core-common': 7.6.24(encoding@0.1.13) @@ -42783,16 +42445,16 @@ snapshots: '@storybook/preview@7.6.24': {} - '@storybook/react-docgen-typescript-plugin@1.0.1(typescript@6.0.3)(webpack@5.104.1(@swc/core@1.7.26(@swc/helpers@0.5.13))(esbuild@0.25.5)(webpack-cli@5.1.4))': + '@storybook/react-docgen-typescript-plugin@1.0.1(typescript@7.0.2)(webpack@5.104.1(@swc/core@1.7.26(@swc/helpers@0.5.13))(esbuild@0.25.5)(webpack-cli@5.1.4))': dependencies: debug: 4.4.3(supports-color@8.1.1) endent: 2.1.0 find-cache-dir: 3.3.2 flat-cache: 3.2.0 micromatch: 4.0.8 - react-docgen-typescript: 2.4.0(typescript@6.0.3) + react-docgen-typescript: 2.4.0(typescript@7.0.2) tslib: 2.8.1 - typescript: 6.0.3 + typescript: 7.0.2 webpack: 5.104.1(@swc/core@1.7.26(@swc/helpers@0.5.13))(esbuild@0.25.5)(webpack-cli@5.1.4) transitivePeerDependencies: - supports-color @@ -42879,7 +42541,7 @@ snapshots: - encoding - supports-color - '@storybook/react@8.6.18(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(storybook@8.6.17(prettier@3.8.1))(typescript@6.0.3)': + '@storybook/react@8.6.18(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(storybook@8.6.17(prettier@3.8.1))(typescript@7.0.2)': dependencies: '@storybook/components': 8.6.18(storybook@8.6.17(prettier@3.8.1)) '@storybook/global': 5.0.0 @@ -42891,7 +42553,7 @@ snapshots: react-dom: 18.3.1(react@18.3.1) storybook: 8.6.17(prettier@3.8.1) optionalDependencies: - typescript: 6.0.3 + typescript: 7.0.2 '@storybook/react@9.0.9(react-dom@19.2.7(react@19.2.7))(react@19.2.7)(storybook@8.6.17(prettier@3.8.1))(typescript@6.0.3)': dependencies: @@ -43554,16 +43216,16 @@ snapshots: '@types/babel__generator@7.27.0': dependencies: - '@babel/types': 7.29.7 + '@babel/types': 7.29.8 '@types/babel__template@7.4.4': dependencies: - '@babel/parser': 7.29.7 - '@babel/types': 7.29.7 + '@babel/parser': 7.29.8 + '@babel/types': 7.29.8 '@types/babel__traverse@7.28.0': dependencies: - '@babel/types': 7.29.7 + '@babel/types': 7.29.8 '@types/body-parser@1.19.6': dependencies: @@ -43773,11 +43435,11 @@ snapshots: '@types/esquery@1.5.4': dependencies: - '@types/estree': 1.0.8 + '@types/estree': 1.0.9 '@types/estree-jsx@1.0.5': dependencies: - '@types/estree': 1.0.8 + '@types/estree': 1.0.9 '@types/estree@0.0.51': {} @@ -45105,7 +44767,7 @@ snapshots: '@babel/core': 7.29.0 '@babel/helper-module-imports': 7.29.7 '@babel/helper-plugin-utils': 7.28.6 - '@babel/parser': 7.29.7 + '@babel/parser': 7.29.8 '@vue/compiler-sfc': 3.5.30 transitivePeerDependencies: - supports-color @@ -45116,7 +44778,7 @@ snapshots: '@babel/core': 7.29.7 '@babel/helper-module-imports': 7.29.7 '@babel/helper-plugin-utils': 7.28.6 - '@babel/parser': 7.29.7 + '@babel/parser': 7.29.8 '@vue/compiler-sfc': 3.5.30 transitivePeerDependencies: - supports-color @@ -45127,14 +44789,14 @@ snapshots: '@babel/core': 7.29.7 '@babel/helper-module-imports': 7.29.7 '@babel/helper-plugin-utils': 7.28.6 - '@babel/parser': 7.29.7 + '@babel/parser': 7.29.8 '@vue/compiler-sfc': 3.5.30 transitivePeerDependencies: - supports-color '@vue/compiler-core@3.5.30': dependencies: - '@babel/parser': 7.29.7 + '@babel/parser': 7.29.8 '@vue/shared': 3.5.30 entities: 7.0.1 estree-walker: 2.0.2 @@ -48113,18 +47775,6 @@ snapshots: optionalDependencies: esbuild: 0.28.1 - css-minimizer-webpack-plugin@8.0.0(esbuild@0.28.1)(webpack@5.104.1(@swc/core@1.15.41(@swc/helpers@0.5.23))(esbuild@0.28.1)(webpack-cli@5.1.4)): - dependencies: - '@jridgewell/trace-mapping': 0.3.31 - cssnano: 7.1.3(postcss@8.5.23) - jest-worker: 30.4.1 - postcss: 8.5.23 - schema-utils: 4.3.0 - serialize-javascript: 7.0.7 - webpack: 5.104.1(@swc/core@1.15.41(@swc/helpers@0.5.23))(esbuild@0.28.1)(webpack-cli@5.1.4) - optionalDependencies: - esbuild: 0.28.1 - css-select@4.3.0: dependencies: boolbase: 1.0.0 @@ -49547,7 +49197,7 @@ snapshots: eslint: 9.26.0(jiti@2.6.1) eslint-import-resolver-node: 0.3.9 eslint-import-resolver-typescript: 3.10.1(eslint-plugin-import@2.32.0(@typescript-eslint/parser@8.56.1(eslint@9.39.3(jiti@2.6.1))(typescript@6.0.3))(eslint@9.26.0(jiti@2.6.1)))(eslint@9.26.0(jiti@2.6.1)) - eslint-plugin-import: 2.32.0(@typescript-eslint/parser@8.56.1(eslint@9.39.3(jiti@2.6.1))(typescript@6.0.3))(eslint-import-resolver-typescript@3.10.1)(eslint@9.26.0(jiti@2.6.1)) + eslint-plugin-import: 2.32.0(@typescript-eslint/parser@8.56.1(eslint@9.39.3(jiti@2.6.1))(typescript@6.0.3))(eslint-import-resolver-typescript@3.10.1(eslint-plugin-import@2.32.0(@typescript-eslint/parser@8.56.1(eslint@9.39.3(jiti@2.6.1))(typescript@6.0.3))(eslint@9.26.0(jiti@2.6.1)))(eslint@9.26.0(jiti@2.6.1)))(eslint@9.26.0(jiti@2.6.1)) eslint-plugin-jsx-a11y: 6.10.1(eslint@9.26.0(jiti@2.6.1)) eslint-plugin-react: 7.37.2(eslint@9.26.0(jiti@2.6.1)) eslint-plugin-react-hooks: 7.0.1(eslint@9.26.0(jiti@2.6.1)) @@ -49588,7 +49238,7 @@ snapshots: tinyglobby: 0.2.15 unrs-resolver: 1.11.1 optionalDependencies: - eslint-plugin-import: 2.32.0(@typescript-eslint/parser@8.56.1(eslint@9.39.3(jiti@2.6.1))(typescript@6.0.3))(eslint-import-resolver-typescript@3.10.1)(eslint@9.26.0(jiti@2.6.1)) + eslint-plugin-import: 2.32.0(@typescript-eslint/parser@8.56.1(eslint@9.39.3(jiti@2.6.1))(typescript@6.0.3))(eslint-import-resolver-typescript@3.10.1(eslint-plugin-import@2.32.0(@typescript-eslint/parser@8.56.1(eslint@9.39.3(jiti@2.6.1))(typescript@6.0.3))(eslint@9.26.0(jiti@2.6.1)))(eslint@9.26.0(jiti@2.6.1)))(eslint@9.26.0(jiti@2.6.1)) transitivePeerDependencies: - supports-color @@ -49713,7 +49363,7 @@ snapshots: - eslint-import-resolver-webpack - supports-color - eslint-plugin-import@2.32.0(@typescript-eslint/parser@8.56.1(eslint@9.39.3(jiti@2.6.1))(typescript@6.0.3))(eslint-import-resolver-typescript@3.10.1)(eslint@9.26.0(jiti@2.6.1)): + eslint-plugin-import@2.32.0(@typescript-eslint/parser@8.56.1(eslint@9.39.3(jiti@2.6.1))(typescript@6.0.3))(eslint-import-resolver-typescript@3.10.1(eslint-plugin-import@2.32.0(@typescript-eslint/parser@8.56.1(eslint@9.39.3(jiti@2.6.1))(typescript@6.0.3))(eslint@9.26.0(jiti@2.6.1)))(eslint@9.26.0(jiti@2.6.1)))(eslint@9.26.0(jiti@2.6.1)): dependencies: '@rtsao/scc': 1.1.0 array-includes: 3.1.9 @@ -49851,7 +49501,7 @@ snapshots: eslint-plugin-react-hooks@7.0.1(eslint@9.26.0(jiti@2.6.1)): dependencies: '@babel/core': 7.29.7 - '@babel/parser': 7.29.7 + '@babel/parser': 7.29.8 eslint: 9.26.0(jiti@2.6.1) hermes-parser: 0.25.1 zod: 4.1.12 @@ -50152,7 +49802,7 @@ snapshots: estree-util-attach-comments@3.0.0: dependencies: - '@types/estree': 1.0.8 + '@types/estree': 1.0.9 estree-util-build-jsx@3.0.1: dependencies: @@ -50165,7 +49815,7 @@ snapshots: estree-util-scope@1.0.0: dependencies: - '@types/estree': 1.0.8 + '@types/estree': 1.0.9 devlop: 1.1.0 estree-util-to-js@2.0.0: @@ -50183,7 +49833,7 @@ snapshots: estree-walker@3.0.3: dependencies: - '@types/estree': 1.0.8 + '@types/estree': 1.0.9 esutils@2.0.3: {} @@ -51482,7 +51132,7 @@ snapshots: hast-util-to-estree@3.1.3: dependencies: - '@types/estree': 1.0.8 + '@types/estree': 1.0.9 '@types/estree-jsx': 1.0.5 '@types/hast': 3.0.4 comma-separated-tokens: 2.0.3 @@ -51517,7 +51167,7 @@ snapshots: hast-util-to-jsx-runtime@2.3.6: dependencies: - '@types/estree': 1.0.8 + '@types/estree': 1.0.9 '@types/hast': 3.0.4 '@types/unist': 3.0.3 comma-separated-tokens: 2.0.3 @@ -51634,6 +51284,8 @@ snapshots: hono@3.12.12: {} + hono@4.12.26: {} + hono@4.12.34: {} hookable@6.1.0: {} @@ -52366,7 +52018,7 @@ snapshots: is-reference@1.2.1: dependencies: - '@types/estree': 1.0.8 + '@types/estree': 1.0.9 is-regex@1.2.1: dependencies: @@ -52945,10 +52597,10 @@ snapshots: jest-snapshot@29.7.0: dependencies: '@babel/core': 7.29.7 - '@babel/generator': 7.29.7 + '@babel/generator': 7.29.8 '@babel/plugin-syntax-jsx': 7.28.6(@babel/core@7.29.7) '@babel/plugin-syntax-typescript': 7.28.6(@babel/core@7.29.7) - '@babel/types': 7.29.7 + '@babel/types': 7.29.8 '@jest/expect-utils': 29.7.0 '@jest/transform': 29.7.0 '@jest/types': 29.6.3 @@ -53360,26 +53012,19 @@ snapshots: less: 4.6.4 webpack: 5.104.1(@swc/core@1.15.41(@swc/helpers@0.5.23))(esbuild@0.25.5)(webpack-cli@5.1.4) - less-loader@12.3.3(@rspack/core@1.3.9(@swc/helpers@0.5.23))(less@4.6.4)(webpack@5.104.1(@swc/core@1.15.41(@swc/helpers@0.5.23))(esbuild@0.28.1)(webpack-cli@5.1.4(webpack-dev-server@5.2.3)(webpack@5.104.1))): - dependencies: - less: 4.6.4 - optionalDependencies: - '@rspack/core': 1.3.9(@swc/helpers@0.5.23) - webpack: 5.104.1(@swc/core@1.15.41(@swc/helpers@0.5.23))(esbuild@0.28.1)(webpack-cli@5.1.4(webpack-dev-server@5.2.3)(webpack@5.104.1)) - - less-loader@12.3.3(@rspack/core@1.3.9(@swc/helpers@0.5.23))(less@4.6.4)(webpack@5.104.1(@swc/core@1.15.41(@swc/helpers@0.5.23))(esbuild@0.28.1)(webpack-cli@5.1.4)): + less-loader@12.3.3(@rspack/core@2.0.6(@module-federation/runtime-tools@2.8.2)(@swc/helpers@0.5.17))(less@4.6.4)(webpack@5.104.1(@swc/core@1.15.41(@swc/helpers@0.5.17))(esbuild@0.28.1)(webpack-cli@5.1.4)): dependencies: less: 4.6.4 optionalDependencies: - '@rspack/core': 1.3.9(@swc/helpers@0.5.23) - webpack: 5.104.1(@swc/core@1.15.41(@swc/helpers@0.5.23))(esbuild@0.28.1)(webpack-cli@5.1.4) + '@rspack/core': 2.0.6(@module-federation/runtime-tools@2.8.2)(@swc/helpers@0.5.17) + webpack: 5.104.1(@swc/core@1.15.41(@swc/helpers@0.5.17))(esbuild@0.28.1)(webpack-cli@5.1.4) - less-loader@12.3.3(@rspack/core@2.0.6(@module-federation/runtime-tools@2.8.2)(@swc/helpers@0.5.17))(less@4.6.4)(webpack@5.104.1(@swc/core@1.15.41(@swc/helpers@0.5.17))(esbuild@0.28.1)(webpack-cli@5.1.4)): + less-loader@12.3.3(@rspack/core@2.1.8(@module-federation/runtime-tools@2.8.2)(@swc/helpers@0.5.23))(less@4.6.4)(webpack@5.104.1(@swc/core@1.15.41(@swc/helpers@0.5.23))(esbuild@0.28.1)(webpack-cli@5.1.4(webpack-dev-server@5.2.3)(webpack@5.104.1))): dependencies: less: 4.6.4 optionalDependencies: - '@rspack/core': 2.0.6(@module-federation/runtime-tools@2.8.2)(@swc/helpers@0.5.17) - webpack: 5.104.1(@swc/core@1.15.41(@swc/helpers@0.5.17))(esbuild@0.28.1)(webpack-cli@5.1.4) + '@rspack/core': 2.1.8(@module-federation/runtime-tools@2.8.2)(@swc/helpers@0.5.23) + webpack: 5.104.1(@swc/core@1.15.41(@swc/helpers@0.5.23))(esbuild@0.28.1)(webpack-cli@5.1.4(webpack-dev-server@5.2.3)(webpack@5.104.1)) less@4.6.4: dependencies: @@ -54229,7 +53874,7 @@ snapshots: metro-source-map@0.83.5: dependencies: '@babel/traverse': 7.29.7 - '@babel/types': 7.29.7 + '@babel/types': 7.29.8 flow-enums-runtime: 0.0.6 invariant: 2.2.4 metro-symbolicate: 0.83.5 @@ -54276,7 +53921,7 @@ snapshots: metro-transform-plugins@0.83.5: dependencies: '@babel/core': 7.29.7 - '@babel/generator': 7.29.7 + '@babel/generator': 7.29.8 '@babel/template': 7.29.7 '@babel/traverse': 7.29.7 flow-enums-runtime: 0.0.6 @@ -54307,9 +53952,9 @@ snapshots: metro-transform-worker@0.83.5: dependencies: '@babel/core': 7.29.7 - '@babel/generator': 7.29.7 - '@babel/parser': 7.29.7 - '@babel/types': 7.29.7 + '@babel/generator': 7.29.8 + '@babel/parser': 7.29.8 + '@babel/types': 7.29.8 flow-enums-runtime: 0.0.6 metro: 0.83.5 metro-babel-transformer: 0.83.5 @@ -54535,7 +54180,7 @@ snapshots: micromark-extension-mdx-expression@3.0.1: dependencies: - '@types/estree': 1.0.8 + '@types/estree': 1.0.9 devlop: 1.1.0 micromark-factory-mdx-expression: 2.0.3 micromark-factory-space: 2.0.1 @@ -54546,7 +54191,7 @@ snapshots: micromark-extension-mdx-jsx@3.0.2: dependencies: - '@types/estree': 1.0.8 + '@types/estree': 1.0.9 devlop: 1.1.0 estree-util-is-identifier-name: 3.0.0 micromark-factory-mdx-expression: 2.0.3 @@ -54563,7 +54208,7 @@ snapshots: micromark-extension-mdxjs-esm@3.0.0: dependencies: - '@types/estree': 1.0.8 + '@types/estree': 1.0.9 devlop: 1.1.0 micromark-core-commonmark: 2.0.3 micromark-util-character: 2.1.1 @@ -54599,7 +54244,7 @@ snapshots: micromark-factory-mdx-expression@2.0.3: dependencies: - '@types/estree': 1.0.8 + '@types/estree': 1.0.9 devlop: 1.1.0 micromark-factory-space: 2.0.1 micromark-util-character: 2.1.1 @@ -54663,7 +54308,7 @@ snapshots: micromark-util-events-to-acorn@2.0.3: dependencies: - '@types/estree': 1.0.8 + '@types/estree': 1.0.9 '@types/unist': 3.0.3 devlop: 1.1.0 estree-util-visit: 2.0.0 @@ -56214,29 +55859,29 @@ snapshots: postcss: 8.4.49 ts-node: 10.9.1(@swc/core@1.7.26(@swc/helpers@0.5.13))(@types/node@20.19.5)(typescript@6.0.3) - postcss-load-config@4.0.2(postcss@8.4.49)(ts-node@10.9.2(@swc/core@1.15.41(@swc/helpers@0.5.23))(@types/node@20.19.5)(typescript@5.9.3)): + postcss-load-config@4.0.2(postcss@8.4.49)(ts-node@10.9.2(@swc/core@1.15.41(@swc/helpers@0.5.23))(@types/node@20.19.5)(typescript@7.0.2)): dependencies: lilconfig: 3.1.3 yaml: 2.8.2 optionalDependencies: postcss: 8.4.49 - ts-node: 10.9.2(@swc/core@1.15.41(@swc/helpers@0.5.23))(@types/node@20.19.5)(typescript@5.9.3) + ts-node: 10.9.2(@swc/core@1.15.41(@swc/helpers@0.5.23))(@types/node@20.19.5)(typescript@7.0.2) - postcss-load-config@4.0.2(postcss@8.4.49)(ts-node@10.9.2(@swc/core@1.15.41(@swc/helpers@0.5.23))(@types/node@20.19.5)(typescript@6.0.3)): + postcss-load-config@4.0.2(postcss@8.4.49)(ts-node@10.9.2(@swc/core@1.15.41(@swc/helpers@0.5.23))(@types/node@26.2.0)(typescript@5.9.3)): dependencies: lilconfig: 3.1.3 yaml: 2.8.2 optionalDependencies: postcss: 8.4.49 - ts-node: 10.9.2(@swc/core@1.15.41(@swc/helpers@0.5.23))(@types/node@20.19.5)(typescript@6.0.3) + ts-node: 10.9.2(@swc/core@1.15.41(@swc/helpers@0.5.23))(@types/node@26.2.0)(typescript@5.9.3) - postcss-load-config@4.0.2(postcss@8.4.49)(ts-node@10.9.2(@swc/core@1.15.41(@swc/helpers@0.5.23))(@types/node@20.19.5)(typescript@7.0.2)): + postcss-load-config@4.0.2(postcss@8.4.49)(ts-node@10.9.2(@swc/core@1.15.41(@swc/helpers@0.5.23))(@types/node@26.2.0)(typescript@7.0.2)): dependencies: lilconfig: 3.1.3 yaml: 2.8.2 optionalDependencies: postcss: 8.4.49 - ts-node: 10.9.2(@swc/core@1.15.41(@swc/helpers@0.5.23))(@types/node@20.19.5)(typescript@7.0.2) + ts-node: 10.9.2(@swc/core@1.15.41(@swc/helpers@0.5.23))(@types/node@26.2.0)(typescript@7.0.2) postcss-load-config@4.0.2(postcss@8.5.23)(ts-node@10.9.2(@swc/core@1.15.41(@swc/helpers@0.5.17))(@types/node@22.19.15)(typescript@6.0.3)): dependencies: @@ -58370,7 +58015,7 @@ snapshots: react-docgen@6.0.0-alpha.3: dependencies: '@babel/core': 7.29.7 - '@babel/generator': 7.29.7 + '@babel/generator': 7.29.8 ast-types: 0.14.2 commander: 2.20.3 doctrine: 3.0.0 @@ -58890,15 +58535,15 @@ snapshots: optionalDependencies: react-dom: 18.3.1(react@18.3.1) - react-server-dom-rspack@0.0.2(@rspack/core@1.3.9(@swc/helpers@0.5.23))(react-dom@18.3.1(react@18.3.1))(react@18.3.1): + react-server-dom-rspack@0.0.2(@rspack/core@2.0.6(@module-federation/runtime-tools@2.8.2)(@swc/helpers@0.5.17))(react-dom@18.3.1(react@18.3.1))(react@18.3.1): dependencies: - '@rspack/core': 1.3.9(@swc/helpers@0.5.23) + '@rspack/core': 2.0.6(@module-federation/runtime-tools@2.8.2)(@swc/helpers@0.5.17) react: 18.3.1 react-dom: 18.3.1(react@18.3.1) - react-server-dom-rspack@0.0.2(@rspack/core@2.0.6(@module-federation/runtime-tools@2.8.2)(@swc/helpers@0.5.17))(react-dom@18.3.1(react@18.3.1))(react@18.3.1): + react-server-dom-rspack@0.0.2(@rspack/core@2.1.8(@module-federation/runtime-tools@2.8.2)(@swc/helpers@0.5.23))(react-dom@18.3.1(react@18.3.1))(react@18.3.1): dependencies: - '@rspack/core': 2.0.6(@module-federation/runtime-tools@2.8.2)(@swc/helpers@0.5.17) + '@rspack/core': 2.1.8(@module-federation/runtime-tools@2.8.2)(@swc/helpers@0.5.23) react: 18.3.1 react-dom: 18.3.1(react@18.3.1) @@ -59134,7 +58779,7 @@ snapshots: recma-build-jsx@1.0.0: dependencies: - '@types/estree': 1.0.8 + '@types/estree': 1.0.9 estree-util-build-jsx: 3.0.1 vfile: 6.0.3 @@ -59149,14 +58794,14 @@ snapshots: recma-parse@1.0.0: dependencies: - '@types/estree': 1.0.8 + '@types/estree': 1.0.9 esast-util-from-js: 2.0.1 unified: 11.0.5 vfile: 6.0.3 recma-stringify@1.0.0: dependencies: - '@types/estree': 1.0.8 + '@types/estree': 1.0.9 estree-util-to-js: 2.0.0 unified: 11.0.5 vfile: 6.0.3 @@ -59272,7 +58917,7 @@ snapshots: rehype-recma@1.0.0: dependencies: - '@types/estree': 1.0.8 + '@types/estree': 1.0.9 '@types/hast': 3.0.4 hast-util-to-estree: 3.1.3 transitivePeerDependencies: @@ -59646,12 +59291,12 @@ snapshots: globby: 10.0.1 is-plain-object: 3.0.1 - rollup-plugin-typescript2@0.36.0(rollup@4.59.0)(typescript@7.0.2): + rollup-plugin-typescript2@0.36.0(rollup@4.62.2)(typescript@7.0.2): dependencies: '@rollup/pluginutils': 4.2.1 find-cache-dir: 3.3.2 fs-extra: 10.1.0 - rollup: 4.59.0 + rollup: 4.62.2 semver: 7.8.5 tslib: 2.8.1 typescript: 7.0.2 @@ -59763,14 +59408,6 @@ snapshots: '@microsoft/api-extractor': 7.57.7(@types/node@20.19.5) typescript: 6.0.3 - rsbuild-plugin-dts@0.23.2(@microsoft/api-extractor@7.57.7(@types/node@20.19.5))(@rsbuild/core@2.1.4(@module-federation/runtime-tools@2.8.2)(core-js@3.49.0))(typescript@7.0.2): - dependencies: - '@ast-grep/napi': 0.37.0 - '@rsbuild/core': 2.1.4(@module-federation/runtime-tools@2.8.2)(core-js@3.49.0) - optionalDependencies: - '@microsoft/api-extractor': 7.57.7(@types/node@20.19.5) - typescript: 7.0.2 - rsbuild-plugin-dts@0.23.2(@microsoft/api-extractor@7.57.7(@types/node@22.19.15))(@rsbuild/core@2.1.4(@module-federation/runtime-tools@2.8.2)(core-js@3.49.0))(typescript@6.0.3): dependencies: '@ast-grep/napi': 0.37.0 @@ -59821,22 +59458,15 @@ snapshots: optionalDependencies: '@rsbuild/core': 1.7.3 - rsbuild-plugin-publint@0.2.1(@rsbuild/core@2.1.4(@module-federation/runtime-tools@2.8.2)(core-js@3.49.0)): - dependencies: - picocolors: 1.1.1 - publint: 0.2.12 - optionalDependencies: - '@rsbuild/core': 2.1.4(@module-federation/runtime-tools@2.8.2)(core-js@3.49.0) - - rsbuild-plugin-rsc@0.1.1(@rsbuild/core@2.1.0(@module-federation/runtime-tools@2.8.2)(core-js@3.49.0))(react-server-dom-rspack@0.0.2(@rspack/core@1.3.9(@swc/helpers@0.5.23))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)): + rsbuild-plugin-rsc@0.1.1(@rsbuild/core@2.1.0(@module-federation/runtime-tools@2.8.2)(core-js@3.49.0))(react-server-dom-rspack@0.0.2(@rspack/core@2.0.6(@module-federation/runtime-tools@2.8.2)(@swc/helpers@0.5.17))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)): dependencies: '@rsbuild/core': 2.1.0(@module-federation/runtime-tools@2.8.2)(core-js@3.49.0) - react-server-dom-rspack: 0.0.2(@rspack/core@1.3.9(@swc/helpers@0.5.23))(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + react-server-dom-rspack: 0.0.2(@rspack/core@2.0.6(@module-federation/runtime-tools@2.8.2)(@swc/helpers@0.5.17))(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - rsbuild-plugin-rsc@0.1.1(@rsbuild/core@2.1.0(@module-federation/runtime-tools@2.8.2)(core-js@3.49.0))(react-server-dom-rspack@0.0.2(@rspack/core@2.0.6(@module-federation/runtime-tools@2.8.2)(@swc/helpers@0.5.17))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)): + rsbuild-plugin-rsc@0.1.1(@rsbuild/core@2.1.0(@module-federation/runtime-tools@2.8.2)(core-js@3.49.0))(react-server-dom-rspack@0.0.2(@rspack/core@2.1.8(@module-federation/runtime-tools@2.8.2)(@swc/helpers@0.5.23))(react-dom@18.3.1(react@18.3.1))(react@18.3.1)): dependencies: '@rsbuild/core': 2.1.0(@module-federation/runtime-tools@2.8.2)(core-js@3.49.0) - react-server-dom-rspack: 0.0.2(@rspack/core@2.0.6(@module-federation/runtime-tools@2.8.2)(@swc/helpers@0.5.17))(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + react-server-dom-rspack: 0.0.2(@rspack/core@2.1.8(@module-federation/runtime-tools@2.8.2)(@swc/helpers@0.5.23))(react-dom@18.3.1(react@18.3.1))(react@18.3.1) rslog@1.2.3: {} @@ -59854,17 +59484,17 @@ snapshots: optionalDependencies: '@rspack/core': 1.7.9(@swc/helpers@0.5.19) - rspack-manifest-plugin@5.2.2(@rspack/core@1.3.9(@swc/helpers@0.5.23)): + rspack-manifest-plugin@5.2.2(@rspack/core@2.0.6(@module-federation/runtime-tools@2.8.2)(@swc/helpers@0.5.17)): dependencies: '@rspack/lite-tapable': 1.1.2 optionalDependencies: - '@rspack/core': 1.3.9(@swc/helpers@0.5.23) + '@rspack/core': 2.0.6(@module-federation/runtime-tools@2.8.2)(@swc/helpers@0.5.17) - rspack-manifest-plugin@5.2.2(@rspack/core@2.0.6(@module-federation/runtime-tools@2.8.2)(@swc/helpers@0.5.17)): + rspack-manifest-plugin@5.2.2(@rspack/core@2.1.8(@module-federation/runtime-tools@2.8.2)(@swc/helpers@0.5.23)): dependencies: '@rspack/lite-tapable': 1.1.2 optionalDependencies: - '@rspack/core': 2.0.6(@module-federation/runtime-tools@2.8.2)(@swc/helpers@0.5.17) + '@rspack/core': 2.1.8(@module-federation/runtime-tools@2.8.2)(@swc/helpers@0.5.23) rspack-vue-loader@17.5.1(@rspack/core@2.1.8(@module-federation/runtime-tools@2.8.2)(@swc/helpers@0.5.23))(vue@3.5.30(typescript@7.0.2)): dependencies: @@ -60783,18 +60413,18 @@ snapshots: es-errors: 1.3.0 internal-slot: 1.1.0 - storybook-addon-rslib@1.0.3(@rsbuild/core@2.1.10(@module-federation/runtime-tools@2.8.2)(core-js@3.49.0))(@rslib/core@0.23.2(@microsoft/api-extractor@7.57.7(@types/node@26.2.0))(@module-federation/runtime-tools@2.8.2)(core-js@3.49.0)(typescript@6.0.3))(storybook-builder-rsbuild@1.0.3(@rsbuild/core@2.1.10(@module-federation/runtime-tools@2.8.2)(core-js@3.49.0))(@rspack/core@2.1.8(@module-federation/runtime-tools@2.8.2)(@swc/helpers@0.5.23))(@types/react@18.3.28)(storybook@8.6.17(prettier@3.8.1))(tslib@2.8.1)(typescript@6.0.3))(typescript@6.0.3): + storybook-addon-rslib@1.0.3(@rsbuild/core@2.1.10(@module-federation/runtime-tools@2.8.2)(core-js@3.49.0))(@rslib/core@0.23.2(@microsoft/api-extractor@7.57.7(@types/node@26.2.0))(@module-federation/runtime-tools@2.8.2)(core-js@3.49.0)(typescript@7.0.2))(storybook-builder-rsbuild@1.0.3(@rsbuild/core@2.1.10(@module-federation/runtime-tools@2.8.2)(core-js@3.49.0))(@rspack/core@2.1.8(@module-federation/runtime-tools@2.8.2)(@swc/helpers@0.5.23))(@types/react@18.3.28)(storybook@8.6.17(prettier@3.8.1))(tslib@2.8.1)(typescript@7.0.2))(typescript@7.0.2): dependencies: '@rsbuild/core': 2.1.10(@module-federation/runtime-tools@2.8.2)(core-js@3.49.0) - '@rslib/core': 0.23.2(@microsoft/api-extractor@7.57.7(@types/node@26.2.0))(@module-federation/runtime-tools@2.8.2)(core-js@3.49.0)(typescript@6.0.3) - storybook-builder-rsbuild: 1.0.3(@rsbuild/core@2.1.10(@module-federation/runtime-tools@2.8.2)(core-js@3.49.0))(@rspack/core@2.1.8(@module-federation/runtime-tools@2.8.2)(@swc/helpers@0.5.23))(@types/react@18.3.28)(storybook@8.6.17(prettier@3.8.1))(tslib@2.8.1)(typescript@6.0.3) + '@rslib/core': 0.23.2(@microsoft/api-extractor@7.57.7(@types/node@26.2.0))(@module-federation/runtime-tools@2.8.2)(core-js@3.49.0)(typescript@7.0.2) + storybook-builder-rsbuild: 1.0.3(@rsbuild/core@2.1.10(@module-federation/runtime-tools@2.8.2)(core-js@3.49.0))(@rspack/core@2.1.8(@module-federation/runtime-tools@2.8.2)(@swc/helpers@0.5.23))(@types/react@18.3.28)(storybook@8.6.17(prettier@3.8.1))(tslib@2.8.1)(typescript@7.0.2) optionalDependencies: - typescript: 6.0.3 + typescript: 7.0.2 - storybook-builder-rsbuild@1.0.3(@rsbuild/core@2.1.10(@module-federation/runtime-tools@2.8.2)(core-js@3.49.0))(@rspack/core@2.1.8(@module-federation/runtime-tools@2.8.2)(@swc/helpers@0.5.23))(@types/react@18.3.28)(storybook@8.6.17(prettier@3.8.1))(tslib@2.8.1)(typescript@6.0.3): + storybook-builder-rsbuild@1.0.3(@rsbuild/core@2.1.10(@module-federation/runtime-tools@2.8.2)(core-js@3.49.0))(@rspack/core@2.1.8(@module-federation/runtime-tools@2.8.2)(@swc/helpers@0.5.23))(@types/react@18.3.28)(storybook@8.6.17(prettier@3.8.1))(tslib@2.8.1)(typescript@7.0.2): dependencies: '@rsbuild/core': 2.1.10(@module-federation/runtime-tools@2.8.2)(core-js@3.49.0) - '@rsbuild/plugin-type-check': 1.5.0(@rsbuild/core@2.1.10(@module-federation/runtime-tools@2.8.2)(core-js@3.49.0))(@rspack/core@2.1.8(@module-federation/runtime-tools@2.8.2)(@swc/helpers@0.5.23))(tslib@2.8.1)(typescript@6.0.3) + '@rsbuild/plugin-type-check': 1.5.0(@rsbuild/core@2.1.10(@module-federation/runtime-tools@2.8.2)(core-js@3.49.0))(@rspack/core@2.1.8(@module-federation/runtime-tools@2.8.2)(@swc/helpers@0.5.23))(tslib@2.8.1)(typescript@7.0.2) '@storybook/addon-docs': 8.6.18(@types/react@18.3.28)(storybook@8.6.17(prettier@3.8.1)) '@storybook/core-webpack': 8.6.18(storybook@8.6.17(prettier@3.8.1)) browser-assert: 1.2.1 @@ -60814,32 +60444,32 @@ snapshots: util: 0.12.5 util-deprecate: 1.0.2 optionalDependencies: - typescript: 6.0.3 + typescript: 7.0.2 transitivePeerDependencies: - '@rspack/core' - '@types/react' - '@typescript/native-preview' - tslib - storybook-react-rsbuild@1.0.3(@rsbuild/core@2.1.10(@module-federation/runtime-tools@2.8.2)(core-js@3.49.0))(@rspack/core@2.1.8(@module-federation/runtime-tools@2.8.2)(@swc/helpers@0.5.23))(@types/react@18.3.28)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(rollup@4.62.2)(storybook@8.6.17(prettier@3.8.1))(tslib@2.8.1)(typescript@6.0.3)(webpack@5.104.1(@swc/core@1.7.26(@swc/helpers@0.5.13))(esbuild@0.25.5)(webpack-cli@5.1.4)): + storybook-react-rsbuild@1.0.3(@rsbuild/core@2.1.10(@module-federation/runtime-tools@2.8.2)(core-js@3.49.0))(@rspack/core@2.1.8(@module-federation/runtime-tools@2.8.2)(@swc/helpers@0.5.23))(@types/react@18.3.28)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(rollup@4.62.2)(storybook@8.6.17(prettier@3.8.1))(tslib@2.8.1)(typescript@7.0.2)(webpack@5.104.1(@swc/core@1.7.26(@swc/helpers@0.5.13))(esbuild@0.25.5)(webpack-cli@5.1.4)): dependencies: '@rollup/pluginutils': 5.3.0(rollup@4.62.2) '@rsbuild/core': 2.1.10(@module-federation/runtime-tools@2.8.2)(core-js@3.49.0) - '@storybook/react': 8.6.18(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(storybook@8.6.17(prettier@3.8.1))(typescript@6.0.3) - '@storybook/react-docgen-typescript-plugin': 1.0.1(typescript@6.0.3)(webpack@5.104.1(@swc/core@1.7.26(@swc/helpers@0.5.13))(esbuild@0.25.5)(webpack-cli@5.1.4)) + '@storybook/react': 8.6.18(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(storybook@8.6.17(prettier@3.8.1))(typescript@7.0.2) + '@storybook/react-docgen-typescript-plugin': 1.0.1(typescript@7.0.2)(webpack@5.104.1(@swc/core@1.7.26(@swc/helpers@0.5.13))(esbuild@0.25.5)(webpack-cli@5.1.4)) '@types/node': 18.19.130 find-up: 5.0.0 magic-string: 0.30.21 react: 18.3.1 react-docgen: 7.1.1 - react-docgen-typescript: 2.4.0(typescript@6.0.3) + react-docgen-typescript: 2.4.0(typescript@7.0.2) react-dom: 18.3.1(react@18.3.1) resolve: 1.22.11 storybook: 8.6.17(prettier@3.8.1) - storybook-builder-rsbuild: 1.0.3(@rsbuild/core@2.1.10(@module-federation/runtime-tools@2.8.2)(core-js@3.49.0))(@rspack/core@2.1.8(@module-federation/runtime-tools@2.8.2)(@swc/helpers@0.5.23))(@types/react@18.3.28)(storybook@8.6.17(prettier@3.8.1))(tslib@2.8.1)(typescript@6.0.3) + storybook-builder-rsbuild: 1.0.3(@rsbuild/core@2.1.10(@module-federation/runtime-tools@2.8.2)(core-js@3.49.0))(@rspack/core@2.1.8(@module-federation/runtime-tools@2.8.2)(@swc/helpers@0.5.23))(@types/react@18.3.28)(storybook@8.6.17(prettier@3.8.1))(tslib@2.8.1)(typescript@7.0.2) tsconfig-paths: 4.2.0 optionalDependencies: - typescript: 6.0.3 + typescript: 7.0.2 transitivePeerDependencies: - '@rspack/core' - '@storybook/test' @@ -61369,7 +60999,7 @@ snapshots: transitivePeerDependencies: - ts-node - tailwindcss@3.4.13(ts-node@10.9.2(@swc/core@1.15.41(@swc/helpers@0.5.23))(@types/node@20.19.5)(typescript@5.9.3)): + tailwindcss@3.4.13(ts-node@10.9.2(@swc/core@1.15.41(@swc/helpers@0.5.23))(@types/node@20.19.5)(typescript@7.0.2)): dependencies: '@alloc/quick-lru': 5.2.0 arg: 5.0.2 @@ -61388,7 +61018,7 @@ snapshots: postcss: 8.4.49 postcss-import: 15.1.0(postcss@8.4.49) postcss-js: 4.1.0(postcss@8.4.49) - postcss-load-config: 4.0.2(postcss@8.4.49)(ts-node@10.9.2(@swc/core@1.15.41(@swc/helpers@0.5.23))(@types/node@20.19.5)(typescript@5.9.3)) + postcss-load-config: 4.0.2(postcss@8.4.49)(ts-node@10.9.2(@swc/core@1.15.41(@swc/helpers@0.5.23))(@types/node@20.19.5)(typescript@7.0.2)) postcss-nested: 6.2.0(postcss@8.4.49) postcss-selector-parser: 6.1.2 resolve: 1.22.8 @@ -61396,7 +61026,7 @@ snapshots: transitivePeerDependencies: - ts-node - tailwindcss@3.4.13(ts-node@10.9.2(@swc/core@1.15.41(@swc/helpers@0.5.23))(@types/node@20.19.5)(typescript@6.0.3)): + tailwindcss@3.4.13(ts-node@10.9.2(@swc/core@1.15.41(@swc/helpers@0.5.23))(@types/node@26.2.0)(typescript@5.9.3)): dependencies: '@alloc/quick-lru': 5.2.0 arg: 5.0.2 @@ -61415,7 +61045,7 @@ snapshots: postcss: 8.4.49 postcss-import: 15.1.0(postcss@8.4.49) postcss-js: 4.1.0(postcss@8.4.49) - postcss-load-config: 4.0.2(postcss@8.4.49)(ts-node@10.9.2(@swc/core@1.15.41(@swc/helpers@0.5.23))(@types/node@20.19.5)(typescript@6.0.3)) + postcss-load-config: 4.0.2(postcss@8.4.49)(ts-node@10.9.2(@swc/core@1.15.41(@swc/helpers@0.5.23))(@types/node@26.2.0)(typescript@5.9.3)) postcss-nested: 6.2.0(postcss@8.4.49) postcss-selector-parser: 6.1.2 resolve: 1.22.8 @@ -61423,7 +61053,7 @@ snapshots: transitivePeerDependencies: - ts-node - tailwindcss@3.4.13(ts-node@10.9.2(@swc/core@1.15.41(@swc/helpers@0.5.23))(@types/node@20.19.5)(typescript@7.0.2)): + tailwindcss@3.4.13(ts-node@10.9.2(@swc/core@1.15.41(@swc/helpers@0.5.23))(@types/node@26.2.0)(typescript@7.0.2)): dependencies: '@alloc/quick-lru': 5.2.0 arg: 5.0.2 @@ -61442,7 +61072,7 @@ snapshots: postcss: 8.4.49 postcss-import: 15.1.0(postcss@8.4.49) postcss-js: 4.1.0(postcss@8.4.49) - postcss-load-config: 4.0.2(postcss@8.4.49)(ts-node@10.9.2(@swc/core@1.15.41(@swc/helpers@0.5.23))(@types/node@20.19.5)(typescript@7.0.2)) + postcss-load-config: 4.0.2(postcss@8.4.49)(ts-node@10.9.2(@swc/core@1.15.41(@swc/helpers@0.5.23))(@types/node@26.2.0)(typescript@7.0.2)) postcss-nested: 6.2.0(postcss@8.4.49) postcss-selector-parser: 6.1.2 resolve: 1.22.8 @@ -61979,18 +61609,6 @@ snapshots: transitivePeerDependencies: - tslib - ts-checker-rspack-plugin@1.5.1(@rspack/core@1.3.9(@swc/helpers@0.5.23))(tslib@2.8.1)(typescript@7.0.2): - dependencies: - '@rspack/lite-tapable': 1.1.2 - chokidar: 3.6.0 - memfs: 4.58.0(tslib@2.8.1) - picocolors: 1.1.1 - typescript: 7.0.2 - optionalDependencies: - '@rspack/core': 1.3.9(@swc/helpers@0.5.23) - transitivePeerDependencies: - - tslib - ts-checker-rspack-plugin@1.5.1(@rspack/core@2.0.6(@module-federation/runtime-tools@2.8.2)(@swc/helpers@0.5.17))(tslib@2.8.1)(typescript@7.0.2): dependencies: '@rspack/lite-tapable': 1.1.2 @@ -62003,13 +61621,13 @@ snapshots: transitivePeerDependencies: - tslib - ts-checker-rspack-plugin@1.5.1(@rspack/core@2.1.8(@module-federation/runtime-tools@2.8.2)(@swc/helpers@0.5.23))(tslib@2.8.1)(typescript@6.0.3): + ts-checker-rspack-plugin@1.5.1(@rspack/core@2.1.8(@module-federation/runtime-tools@2.8.2)(@swc/helpers@0.5.23))(tslib@2.8.1)(typescript@7.0.2): dependencies: '@rspack/lite-tapable': 1.1.2 chokidar: 3.6.0 memfs: 4.58.0(tslib@2.8.1) picocolors: 1.1.1 - typescript: 6.0.3 + typescript: 7.0.2 optionalDependencies: '@rspack/core': 2.1.8(@module-federation/runtime-tools@2.8.2)(@swc/helpers@0.5.23) transitivePeerDependencies: @@ -62115,42 +61733,42 @@ snapshots: optionalDependencies: '@swc/core': 1.7.26(@swc/helpers@0.5.13) - ts-node@10.9.2(@swc/core@1.15.41(@swc/helpers@0.5.17))(@types/node@20.19.5)(typescript@7.0.2): + ts-node@10.9.2(@swc/core@1.15.41(@swc/helpers@0.5.17))(@types/node@22.19.15)(typescript@6.0.3): dependencies: '@cspotcode/source-map-support': 0.8.1 '@tsconfig/node10': 1.0.12 '@tsconfig/node12': 1.0.11 '@tsconfig/node14': 1.0.3 '@tsconfig/node16': 1.0.4 - '@types/node': 20.19.5 + '@types/node': 22.19.15 acorn: 8.17.0 acorn-walk: 8.3.5 arg: 4.1.3 create-require: 1.1.1 diff: 4.0.4 make-error: 1.3.6 - typescript: 7.0.2 + typescript: 6.0.3 v8-compile-cache-lib: 3.0.1 yn: 3.1.1 optionalDependencies: '@swc/core': 1.15.41(@swc/helpers@0.5.17) optional: true - ts-node@10.9.2(@swc/core@1.15.41(@swc/helpers@0.5.17))(@types/node@22.19.15)(typescript@6.0.3): + ts-node@10.9.2(@swc/core@1.15.41(@swc/helpers@0.5.17))(@types/node@26.2.0)(typescript@7.0.2): dependencies: '@cspotcode/source-map-support': 0.8.1 '@tsconfig/node10': 1.0.12 '@tsconfig/node12': 1.0.11 '@tsconfig/node14': 1.0.3 '@tsconfig/node16': 1.0.4 - '@types/node': 22.19.15 + '@types/node': 26.2.0 acorn: 8.17.0 acorn-walk: 8.3.5 arg: 4.1.3 create-require: 1.1.1 diff: 4.0.4 make-error: 1.3.6 - typescript: 6.0.3 + typescript: 7.0.2 v8-compile-cache-lib: 3.0.1 yn: 3.1.1 optionalDependencies: @@ -62178,7 +61796,7 @@ snapshots: '@swc/core': 1.15.41(@swc/helpers@0.5.19) optional: true - ts-node@10.9.2(@swc/core@1.15.41(@swc/helpers@0.5.23))(@types/node@20.19.5)(typescript@5.9.3): + ts-node@10.9.2(@swc/core@1.15.41(@swc/helpers@0.5.23))(@types/node@20.19.5)(typescript@6.0.3): dependencies: '@cspotcode/source-map-support': 0.8.1 '@tsconfig/node10': 1.0.12 @@ -62192,14 +61810,13 @@ snapshots: create-require: 1.1.1 diff: 4.0.4 make-error: 1.3.6 - typescript: 5.9.3 + typescript: 6.0.3 v8-compile-cache-lib: 3.0.1 yn: 3.1.1 optionalDependencies: '@swc/core': 1.15.41(@swc/helpers@0.5.23) - optional: true - ts-node@10.9.2(@swc/core@1.15.41(@swc/helpers@0.5.23))(@types/node@20.19.5)(typescript@6.0.3): + ts-node@10.9.2(@swc/core@1.15.41(@swc/helpers@0.5.23))(@types/node@20.19.5)(typescript@7.0.2): dependencies: '@cspotcode/source-map-support': 0.8.1 '@tsconfig/node10': 1.0.12 @@ -62213,31 +61830,32 @@ snapshots: create-require: 1.1.1 diff: 4.0.4 make-error: 1.3.6 - typescript: 6.0.3 + typescript: 7.0.2 v8-compile-cache-lib: 3.0.1 yn: 3.1.1 optionalDependencies: '@swc/core': 1.15.41(@swc/helpers@0.5.23) - ts-node@10.9.2(@swc/core@1.15.41(@swc/helpers@0.5.23))(@types/node@20.19.5)(typescript@7.0.2): + ts-node@10.9.2(@swc/core@1.15.41(@swc/helpers@0.5.23))(@types/node@26.2.0)(typescript@5.9.3): dependencies: '@cspotcode/source-map-support': 0.8.1 '@tsconfig/node10': 1.0.12 '@tsconfig/node12': 1.0.11 '@tsconfig/node14': 1.0.3 '@tsconfig/node16': 1.0.4 - '@types/node': 20.19.5 + '@types/node': 26.2.0 acorn: 8.17.0 acorn-walk: 8.3.5 arg: 4.1.3 create-require: 1.1.1 diff: 4.0.4 make-error: 1.3.6 - typescript: 7.0.2 + typescript: 5.9.3 v8-compile-cache-lib: 3.0.1 yn: 3.1.1 optionalDependencies: '@swc/core': 1.15.41(@swc/helpers@0.5.23) + optional: true ts-node@10.9.2(@swc/core@1.15.41(@swc/helpers@0.5.23))(@types/node@26.2.0)(typescript@7.0.2): dependencies: @@ -63108,16 +62726,15 @@ snapshots: d3-time: 3.1.0 d3-timer: 3.0.1 - vite-node@3.2.4(@types/node@20.19.5)(jiti@2.6.1)(less@4.6.4)(sass-embedded@1.100.0)(sass@1.100.0)(terser@5.48.0)(yaml@2.9.0): + vite-node@3.2.4(@types/node@20.19.5)(less@4.6.4)(sass-embedded@1.100.0)(sass@1.100.0)(terser@5.48.0): dependencies: cac: 6.7.14 debug: 4.4.3(supports-color@8.1.1) es-module-lexer: 1.7.0 pathe: 2.0.3 - vite: 7.3.6(@types/node@20.19.5)(jiti@2.6.1)(less@4.6.4)(sass-embedded@1.100.0)(sass@1.100.0)(terser@5.48.0)(yaml@2.9.0) + vite: 5.4.21(@types/node@20.19.5)(less@4.6.4)(sass-embedded@1.100.0)(sass@1.100.0)(terser@5.48.0) transitivePeerDependencies: - '@types/node' - - jiti - less - lightningcss - sass @@ -63126,19 +62743,16 @@ snapshots: - sugarss - supports-color - terser - - tsx - - yaml - vite-node@3.2.4(@types/node@26.2.0)(jiti@2.6.1)(less@4.6.4)(sass-embedded@1.98.0)(sass@1.98.0)(terser@5.48.0)(yaml@2.9.0): + vite-node@3.2.4(@types/node@26.2.0)(less@4.6.4)(sass-embedded@1.98.0)(sass@1.98.0)(terser@5.48.0): dependencies: cac: 6.7.14 debug: 4.4.3(supports-color@8.1.1) es-module-lexer: 1.7.0 pathe: 2.0.3 - vite: 7.3.6(@types/node@26.2.0)(jiti@2.6.1)(less@4.6.4)(sass-embedded@1.98.0)(sass@1.98.0)(terser@5.48.0)(yaml@2.9.0) + vite: 5.4.21(@types/node@26.2.0)(less@4.6.4)(sass-embedded@1.98.0)(sass@1.98.0)(terser@5.48.0) transitivePeerDependencies: - '@types/node' - - jiti - less - lightningcss - sass @@ -63147,8 +62761,6 @@ snapshots: - sugarss - supports-color - terser - - tsx - - yaml optional: true vite-tsconfig-paths@4.2.3(typescript@6.0.3)(vite@7.3.5(@types/node@20.19.5)(jiti@2.6.1)(less@4.6.4)(sass-embedded@1.100.0)(sass@1.100.0)(terser@5.48.0)(yaml@2.9.0)): @@ -63165,8 +62777,8 @@ snapshots: vite@5.4.21(@types/node@20.19.5)(less@4.6.4)(sass-embedded@1.100.0)(sass@1.100.0)(terser@5.48.0): dependencies: esbuild: 0.21.5 - postcss: 8.4.49 - rollup: 4.59.0 + postcss: 8.5.23 + rollup: 4.62.2 optionalDependencies: '@types/node': 20.19.5 fsevents: 2.3.3 @@ -63178,8 +62790,8 @@ snapshots: vite@5.4.21(@types/node@26.2.0)(less@4.6.4)(sass-embedded@1.100.0)(sass@1.100.0)(terser@5.48.0): dependencies: esbuild: 0.21.5 - postcss: 8.4.49 - rollup: 4.59.0 + postcss: 8.5.23 + rollup: 4.62.2 optionalDependencies: '@types/node': 26.2.0 fsevents: 2.3.3 @@ -63188,25 +62800,21 @@ snapshots: sass-embedded: 1.100.0 terser: 5.48.0 - vite@7.3.5(@types/node@20.19.5)(jiti@2.6.1)(less@4.6.4)(sass-embedded@1.100.0)(sass@1.100.0)(terser@5.48.0)(yaml@2.9.0): + vite@5.4.21(@types/node@26.2.0)(less@4.6.4)(sass-embedded@1.98.0)(sass@1.98.0)(terser@5.48.0): dependencies: - esbuild: 0.27.3 - fdir: 6.5.0(picomatch@4.0.3) - picomatch: 4.0.3 + esbuild: 0.21.5 postcss: 8.5.23 - rollup: 4.59.0 - tinyglobby: 0.2.15 + rollup: 4.62.2 optionalDependencies: - '@types/node': 20.19.5 + '@types/node': 26.2.0 fsevents: 2.3.3 - jiti: 2.6.1 less: 4.6.4 - sass: 1.100.0 - sass-embedded: 1.100.0 + sass: 1.98.0 + sass-embedded: 1.98.0 terser: 5.48.0 - yaml: 2.9.0 + optional: true - vite@7.3.5(@types/node@26.2.0)(jiti@2.6.1)(less@4.6.4)(sass-embedded@1.98.0)(sass@1.98.0)(terser@5.48.0)(yaml@2.9.0): + vite@7.3.5(@types/node@20.19.5)(jiti@2.6.1)(less@4.6.4)(sass-embedded@1.100.0)(sass@1.100.0)(terser@5.48.0)(yaml@2.9.0): dependencies: esbuild: 0.27.3 fdir: 6.5.0(picomatch@4.0.3) @@ -63215,15 +62823,14 @@ snapshots: rollup: 4.59.0 tinyglobby: 0.2.15 optionalDependencies: - '@types/node': 26.2.0 + '@types/node': 20.19.5 fsevents: 2.3.3 jiti: 2.6.1 less: 4.6.4 - sass: 1.98.0 - sass-embedded: 1.98.0 + sass: 1.100.0 + sass-embedded: 1.100.0 terser: 5.48.0 yaml: 2.9.0 - optional: true vite@7.3.6(@types/node@20.19.5)(jiti@2.6.1)(less@4.6.4)(sass-embedded@1.100.0)(sass@1.100.0)(terser@5.48.0)(yaml@2.9.0): dependencies: @@ -63285,7 +62892,7 @@ snapshots: tinypool: 1.1.1 tinyrainbow: 2.0.0 vite: 7.3.6(@types/node@20.19.5)(jiti@2.6.1)(less@4.6.4)(sass-embedded@1.100.0)(sass@1.100.0)(terser@5.48.0)(yaml@2.9.0) - vite-node: 3.2.4(@types/node@20.19.5)(jiti@2.6.1)(less@4.6.4)(sass-embedded@1.100.0)(sass@1.100.0)(terser@5.48.0)(yaml@2.9.0) + vite-node: 3.2.4(@types/node@20.19.5)(less@4.6.4)(sass-embedded@1.100.0)(sass@1.100.0)(terser@5.48.0) why-is-node-running: 2.3.0 optionalDependencies: '@edge-runtime/vm': 3.2.0 @@ -63329,7 +62936,7 @@ snapshots: tinypool: 1.1.1 tinyrainbow: 2.0.0 vite: 7.3.6(@types/node@26.2.0)(jiti@2.6.1)(less@4.6.4)(sass-embedded@1.98.0)(sass@1.98.0)(terser@5.48.0)(yaml@2.9.0) - vite-node: 3.2.4(@types/node@26.2.0)(jiti@2.6.1)(less@4.6.4)(sass-embedded@1.98.0)(sass@1.98.0)(terser@5.48.0)(yaml@2.9.0) + vite-node: 3.2.4(@types/node@26.2.0)(less@4.6.4)(sass-embedded@1.98.0)(sass@1.98.0)(terser@5.48.0) why-is-node-running: 2.3.0 optionalDependencies: '@edge-runtime/vm': 3.2.0 @@ -64378,19 +63985,19 @@ snapshots: dependencies: os-paths: 4.4.0 - xgplayer-subtitles@3.0.23(core-js@3.36.1): + xgplayer-subtitles@3.0.23(core-js@3.49.0): dependencies: - core-js: 3.36.1 + core-js: 3.49.0 eventemitter3: 4.0.7 - xgplayer@3.0.23(core-js@3.36.1): + xgplayer@3.0.23(core-js@3.49.0): dependencies: - core-js: 3.36.1 + core-js: 3.49.0 danmu.js: 1.2.1 delegate: 3.2.0 downloadjs: 1.4.7 eventemitter3: 4.0.7 - xgplayer-subtitles: 3.0.23(core-js@3.36.1) + xgplayer-subtitles: 3.0.23(core-js@3.49.0) xml-name-validator@4.0.0: {} @@ -64535,18 +64142,18 @@ snapshots: dependencies: tslib: 2.8.1 - zephyr-rsbuild-plugin@1.1.2(@rsbuild/core@2.1.10(@module-federation/runtime-tools@2.8.2)(core-js@3.36.1))(@rspack/core@1.3.9(@swc/helpers@0.5.23))(webpack@5.104.1(@swc/core@1.15.41(@swc/helpers@0.5.23))(esbuild@0.28.1)(webpack-cli@5.1.4)): + zephyr-rsbuild-plugin@1.1.2(@rsbuild/core@2.1.10(@module-federation/runtime-tools@2.8.2)(core-js@3.49.0))(@rspack/core@2.1.8(@module-federation/runtime-tools@2.8.2)(@swc/helpers@0.5.23))(webpack@5.104.1(@swc/core@1.15.41(@swc/helpers@0.5.23))(esbuild@0.28.1)(webpack-cli@5.1.4)): dependencies: - '@rsbuild/core': 2.1.10(@module-federation/runtime-tools@2.8.2)(core-js@3.36.1) - zephyr-rspack-plugin: 1.1.2(@rspack/core@1.3.9(@swc/helpers@0.5.23))(webpack@5.104.1(@swc/core@1.15.41(@swc/helpers@0.5.23))(esbuild@0.28.1)(webpack-cli@5.1.4)) + '@rsbuild/core': 2.1.10(@module-federation/runtime-tools@2.8.2)(core-js@3.49.0) + zephyr-rspack-plugin: 1.1.2(@rspack/core@2.1.8(@module-federation/runtime-tools@2.8.2)(@swc/helpers@0.5.23))(webpack@5.104.1(@swc/core@1.15.41(@swc/helpers@0.5.23))(esbuild@0.28.1)(webpack-cli@5.1.4)) transitivePeerDependencies: - '@rspack/core' - supports-color - webpack - zephyr-rspack-plugin@1.1.2(@rspack/core@1.3.9(@swc/helpers@0.5.23))(webpack@5.104.1(@swc/core@1.15.41(@swc/helpers@0.5.23))(esbuild@0.28.1)(webpack-cli@5.1.4)): + zephyr-rspack-plugin@1.1.2(@rspack/core@2.1.8(@module-federation/runtime-tools@2.8.2)(@swc/helpers@0.5.23))(webpack@5.104.1(@swc/core@1.15.41(@swc/helpers@0.5.23))(esbuild@0.28.1)(webpack-cli@5.1.4)): dependencies: - '@rspack/core': 1.3.9(@swc/helpers@0.5.23) + '@rspack/core': 2.1.8(@module-federation/runtime-tools@2.8.2)(@swc/helpers@0.5.23) tslib: 2.8.1 zephyr-agent: 1.1.2 zephyr-xpack-internal: 1.1.2(webpack@5.104.1(@swc/core@1.15.41(@swc/helpers@0.5.23))(esbuild@0.28.1)(webpack-cli@5.1.4)) @@ -64554,13 +64161,13 @@ snapshots: - supports-color - webpack - zephyr-rspress-plugin@1.1.2(@rsbuild/core@2.1.10(@module-federation/runtime-tools@2.8.2)(core-js@3.36.1))(@rspack/core@1.3.9(@swc/helpers@0.5.23))(@rspress/core@2.0.14(@module-federation/runtime-tools@2.8.2)(@rspack/core@1.3.9(@swc/helpers@0.5.23))(@types/mdast@4.0.4)(@types/react@19.2.14)(core-js@3.36.1)(micromark-util-types@2.0.2)(micromark@4.0.2))(webpack@5.104.1(@swc/core@1.15.41(@swc/helpers@0.5.23))(esbuild@0.28.1)(webpack-cli@5.1.4)): + zephyr-rspress-plugin@1.1.2(@rsbuild/core@2.1.10(@module-federation/runtime-tools@2.8.2)(core-js@3.49.0))(@rspack/core@2.1.8(@module-federation/runtime-tools@2.8.2)(@swc/helpers@0.5.23))(@rspress/core@2.0.14(@module-federation/runtime-tools@2.8.2)(@rspack/core@2.1.8(@module-federation/runtime-tools@2.8.2)(@swc/helpers@0.5.23))(@types/mdast@4.0.4)(@types/react@19.2.14)(core-js@3.49.0)(micromark-util-types@2.0.2)(micromark@4.0.2))(webpack@5.104.1(@swc/core@1.15.41(@swc/helpers@0.5.23))(esbuild@0.28.1)(webpack-cli@5.1.4)): dependencies: - '@rspress/core': 2.0.14(@module-federation/runtime-tools@2.8.2)(@rspack/core@1.3.9(@swc/helpers@0.5.23))(@types/mdast@4.0.4)(@types/react@19.2.14)(core-js@3.36.1)(micromark-util-types@2.0.2)(micromark@4.0.2) + '@rspress/core': 2.0.14(@module-federation/runtime-tools@2.8.2)(@rspack/core@2.1.8(@module-federation/runtime-tools@2.8.2)(@swc/helpers@0.5.23))(@types/mdast@4.0.4)(@types/react@19.2.14)(core-js@3.49.0)(micromark-util-types@2.0.2)(micromark@4.0.2) tslib: 2.8.1 zephyr-agent: 1.1.2 zephyr-edge-contract: 1.1.2 - zephyr-rsbuild-plugin: 1.1.2(@rsbuild/core@2.1.10(@module-federation/runtime-tools@2.8.2)(core-js@3.36.1))(@rspack/core@1.3.9(@swc/helpers@0.5.23))(webpack@5.104.1(@swc/core@1.15.41(@swc/helpers@0.5.23))(esbuild@0.28.1)(webpack-cli@5.1.4)) + zephyr-rsbuild-plugin: 1.1.2(@rsbuild/core@2.1.10(@module-federation/runtime-tools@2.8.2)(core-js@3.49.0))(@rspack/core@2.1.8(@module-federation/runtime-tools@2.8.2)(@swc/helpers@0.5.23))(webpack@5.104.1(@swc/core@1.15.41(@swc/helpers@0.5.23))(esbuild@0.28.1)(webpack-cli@5.1.4)) zephyr-xpack-internal: 1.1.2(webpack@5.104.1(@swc/core@1.15.41(@swc/helpers@0.5.23))(esbuild@0.28.1)(webpack-cli@5.1.4)) transitivePeerDependencies: - '@rsbuild/core'