diff --git a/.changeset/config.json b/.changeset/config.json index d6f3e8c35..3c4acae35 100644 --- a/.changeset/config.json +++ b/.changeset/config.json @@ -10,7 +10,7 @@ "access": "restricted", "baseBranch": "main", "updateInternalDependencies": "patch", - "ignore": ["@basic/*", "@endpoints/*"], + "ignore": ["@basic/*", "@basic-webpack/*", "@basic-mix/*", "@endpoints/*"], "___experimentalUnsafeOptions_WILL_CHANGE_IN_PATCH": { "onlyUpdatePeerDependentsWhenOutOfRange": true } diff --git a/.changeset/old-mugs-tease.md b/.changeset/old-mugs-tease.md new file mode 100644 index 000000000..b9e9889db --- /dev/null +++ b/.changeset/old-mugs-tease.md @@ -0,0 +1,5 @@ +--- +"@squide/firefly-webpack-configs": patch +--- + +Added additional shared dependencies for Honeycomb. diff --git a/.changeset/olive-waves-sin.md b/.changeset/olive-waves-sin.md new file mode 100644 index 000000000..70966c421 --- /dev/null +++ b/.changeset/olive-waves-sin.md @@ -0,0 +1,5 @@ +--- +"@squide/firefly-rsbuild-configs": major +--- + +New Rsbuild shared configs adapted for Squide firefly apps. diff --git a/.changeset/plenty-walls-glow.md b/.changeset/plenty-walls-glow.md new file mode 100644 index 000000000..2530dbadb --- /dev/null +++ b/.changeset/plenty-walls-glow.md @@ -0,0 +1,5 @@ +--- +"@squide/react-router": patch +--- + +Fixed an error message. diff --git a/.changeset/wicked-spiders-cover.md b/.changeset/wicked-spiders-cover.md new file mode 100644 index 000000000..3a6ef3998 --- /dev/null +++ b/.changeset/wicked-spiders-cover.md @@ -0,0 +1,5 @@ +--- +"@squide/firefly-honeycomb": major +--- + +Added "@opentelemetry/instrumentation-fetch" and "@opentelemetry/sdk-trace-web" as peerDependencies. diff --git a/.eslintignore b/.eslintignore index c83493c7a..61522be80 100644 --- a/.eslintignore +++ b/.eslintignore @@ -1,5 +1,3 @@ -**/dist/* -**/__snapshots__/* node_modules *.md *.yml diff --git a/.github/workflows/changeset.yml b/.github/workflows/changeset.yml index a11bfcee9..a5e2ce80b 100644 --- a/.github/workflows/changeset.yml +++ b/.github/workflows/changeset.yml @@ -23,32 +23,40 @@ jobs: fetch-depth: 0 - name: Install pnpm - uses: pnpm/action-setup@v3 + uses: pnpm/action-setup@v4 with: - version: 9 run_install: false - name: Install Node.js uses: actions/setup-node@v4 with: - node-version: ">=21.1.0" - check-latest: true, + node-version: ">=22.0.0" + check-latest: true cache: pnpm + cache-dependency-path: pnpm-lock.yaml - name: Install Dependencies run: pnpm install --frozen-lockfile - - name: Cache turborepo - uses: actions/cache@v4 + - name: Restore Turborepo cache + id: cache-turborepo-restore + uses: actions/cache/restore@v4 with: - path: node_modules/.cache/turbo - key: ${{ runner.os }}-turbo-${{ github.sha }} + key: ${{ runner.os }}-turborepo-${{ github.sha }} restore-keys: | - ${{ runner.os }}-turbo- - save-always: true + ${{ runner.os }}-turborepo- + path: .turbo - name: Build packages - run: pnpm ci-build + run: pnpm build-pkg + + - name: Save Turborepo cache + id: cache-turborepo-save + if: always() && steps.cache-turborepo-restore.outputs.cache-hit != 'true' + uses: actions/cache/save@v4 + with: + key: ${{ steps.cache-turborepo-restore.outputs.cache-primary-key }} + path: .turbo - name: Create release Pull Request or publish to NPM uses: changesets/action@v1 diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index fc5add70b..d9f1775bf 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -1,6 +1,6 @@ name: CI -# Pnpm setup based on https://github.com/pnpm/action-setup#use-cache-to-reduce-installation-time +# PNPM setup based on https://github.com/pnpm/action-setup#use-cache-to-reduce-installation-time on: push: @@ -24,66 +24,55 @@ jobs: uses: actions/checkout@v4 - name: Install pnpm - uses: pnpm/action-setup@v3 + uses: pnpm/action-setup@v4 with: - version: 9 run_install: false - name: Install Node.js uses: actions/setup-node@v4 with: - node-version: ">=21.1.0" + node-version: ">=22.0.0" check-latest: true cache: pnpm + cache-dependency-path: pnpm-lock.yaml - name: Install dependencies run: pnpm install --frozen-lockfile - - name: Cache Turborepo - uses: actions/cache@v4 + - name: Restore Turborepo cache + id: cache-turborepo-restore + uses: actions/cache/restore@v4 with: - path: node_modules/.cache/turbo - key: ${{ runner.os }}-turbo-${{ github.sha }} + key: ${{ runner.os }}-turborepo-${{ github.sha }} restore-keys: | - ${{ runner.os }}-turbo- - save-always: true + ${{ runner.os }}-turborepo- + path: .turbo - - name: Cache ESLint - uses: actions/cache@v4 - with: - path: node_modules/.cache/eslint - key: ${{ runner.os }}-eslint-${{ github.sha }} - restore-keys: | - ${{ runner.os }}-eslint- - save-always: true - - - name: Cache Knip - uses: actions/cache@v4 - with: - path: node_modules/.cache/knip - key: ${{ runner.os }}-knip-${{ github.sha }} - restore-keys: | - ${{ runner.os }}-knip- - save-always: true - - - name: Cache Jest - uses: actions/cache@v4 - with: - path: packages/**/node_modules/.cache/jest - key: ${{ runner.os }}-jest-${{ hashFiles('packages/**/node_modules/.cache/jest') }} - save-always: true + - name: Lint packages & samples + run: pnpm lint - name: Build packages - run: pnpm ci-build + run: pnpm build-pkg - name: Build basic sample - run: pnpm ci-build-basic + run: pnpm build-basic - - name: Build endpoints sample - run: pnpm ci-build-endpoints + - name: Build basic webpack sample + run: pnpm build-basic-webpack - - name: Lint packages & samples - run: pnpm lint + - name: Build basic mix sample + run: pnpm build-basic-mix + + - name: Build endpoints sample + run: pnpm build-endpoints - name: Test packages run: pnpm test + + - name: Save Turborepo cache + id: cache-turborepo-save + if: always() && steps.cache-turborepo-restore.outputs.cache-hit != 'true' + uses: actions/cache/save@v4 + with: + key: ${{ steps.cache-turborepo-restore.outputs.cache-primary-key }} + path: .turbo diff --git a/.github/workflows/pr-pkg.yml b/.github/workflows/pr-pkg.yml new file mode 100644 index 000000000..97ae6ba06 --- /dev/null +++ b/.github/workflows/pr-pkg.yml @@ -0,0 +1,63 @@ +name: Publish PR packages + +# PNPM setup based on https://github.com/pnpm/action-setup#use-cache-to-reduce-installation-time + +on: + push: + branches: ["main"] + pull_request: + branches: ["main"] + +env: + CI: true + +concurrency: + group: pr-pkg-${{ github.ref }} + cancel-in-progress: true + +jobs: + build: + runs-on: ubuntu-latest + + steps: + - name: Checkout + uses: actions/checkout@v4 + + - name: Install pnpm + uses: pnpm/action-setup@v4 + with: + run_install: false + + - name: Install Node.js + uses: actions/setup-node@v4 + with: + node-version: ">=22.0.0" + check-latest: true + cache: pnpm + cache-dependency-path: pnpm-lock.yaml + + - name: Install dependencies + run: pnpm install --frozen-lockfile + + - name: Restore Turborepo cache + id: cache-turborepo-restore + uses: actions/cache/restore@v4 + with: + key: ${{ runner.os }}-turborepo-${{ github.sha }} + restore-keys: | + ${{ runner.os }}-turborepo- + path: .turbo + + - name: Build packages + run: pnpm build-pkg + + - name: Save Turborepo cache + id: cache-turborepo-save + if: always() && steps.cache-turborepo-restore.outputs.cache-hit != 'true' + uses: actions/cache/save@v4 + with: + key: ${{ steps.cache-turborepo-restore.outputs.cache-primary-key }} + path: .turbo + + - name: Publish PR packages + run: pnpm publish-pr-pkg diff --git a/.github/workflows/retype-action.yml b/.github/workflows/retype-action.yml index 2163e50f9..e585aae6f 100644 --- a/.github/workflows/retype-action.yml +++ b/.github/workflows/retype-action.yml @@ -16,9 +16,13 @@ jobs: steps: - uses: actions/checkout@v4 + - uses: actions/setup-dotnet@v1 + with: + dotnet-version: 7.0.x + - uses: retypeapp/action-build@latest with: - license: ${{ secrets.RETYPE_API_KEY }} + license: ${{ secrets.RETYPE_API_KEY }} - uses: retypeapp/action-github-pages@latest with: diff --git a/.gitignore b/.gitignore index 3c71334bd..3b7fb980d 100644 --- a/.gitignore +++ b/.gitignore @@ -3,6 +3,7 @@ dist .pnpm-debug.log* .netlify .turbo +.rslib .retype # Mac diff --git a/.syncpackrc.js b/.syncpackrc.js new file mode 100644 index 000000000..c9c8d992d --- /dev/null +++ b/.syncpackrc.js @@ -0,0 +1,42 @@ +// @ts-check + +/** @type {import("syncpack").RcFile} */ +export default { + "lintFormatting": false, + "dependencyTypes": ["prod", "dev"], + "semverGroups": [ + { + "dependencies": ["useless-lib"], + "packages": ["**"], + "isIgnored": true + }, + { + "range": "^", + "dependencyTypes": ["prod"], + "dependencies": ["**"], + "packages": ["@squide/firefly-rsbuild-configs", "@squide/firefly-webpack-configs"], + "label": "config packages dependencies version should be ranged" + }, + { + "range": "", + "dependencyTypes": ["prod", "dev"], + "dependencies": ["**"], + "packages": ["**"], + "label": "packages version should be pinned" + }, + ], + "versionGroups": [ + { + "dependencies": ["useless-lib"], + "packages": ["**"], + "isIgnored": true + }, + { + "dependencyTypes": ["prod", "dev"], + "preferVersion": "highestSemver", + "dependencies": ["**"], + "packages": ["**"], + "label": "packages should have a single version across the repository" + } + ] +}; diff --git a/.vscode/settings.json b/.vscode/settings.json index dfb058f10..287682c92 100644 --- a/.vscode/settings.json +++ b/.vscode/settings.json @@ -31,6 +31,7 @@ // Settings for third parties that are frequently used "files.associations": { - "*.snap": "javascriptreact" + "*.snap": "javascriptreact", + "turbo.json": "jsonc" } } diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 75ea61dc7..38e5290c0 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -20,21 +20,33 @@ It's important to note that PNPM workspace doesn't hoist the npm dependencies at The main difference to account for is that the `devDependencies` must now be installed locally in every package `package.json` file rather than in the root `package.json` file. +### Turborepo + +This repository use [Turborepo](https://turbo.build/repo/docs) to execute it's commands. Turborepo help saving time with it's built-in cache but also ensure the packages topological order is respected when executing commands. + +To be understand the relationships between the commands, have a look at this repository [turbo.json](./turbo.json) configuration file. + +### JIT packages + +When possible, the packages and the sample applications' projects are configured for [JIT packages](https://www.shew.dev/monorepos/packaging/jit). + ## Project overview -This project is split into two major sections, [packages/](packages/) and [samples/](samples/). +This project is split into three major sections, [packages/](packages/), [samples/](samples/) and [templates/](templates/). ### Packages -Under [packages/](packages/) are the actual packages composing the federated application shell. +Under [packages/](packages/) are the actual packages composing the modular application shell. ### Samples Under [samples/](samples/) are applications to test the Squide functionalities while developing. -You'll find two samples: +You'll find four samples: -- `basic`: A sample application showcasing the basic features or Squide. +- `basic`: A sample application showcasing the basic features of Squide. +- `basic-wenpack`: A sample application showcasing the basic features of Squide using webpack as a bundle. +- `basic-mix`: A sample application showcasing the basic features of Squide using an rsbuild host application and webpack remote modules. - `endpoints`: A more complexe sample application showcasing the different usecases related to data fetching and localization. ## Installation @@ -45,7 +57,7 @@ This project uses PNPM, therefore, you must install [PNPM](https://pnpm.io/insta npm install -g pnpm ``` -To install the Squide project, open a terminal at the root of the workspace and execute the following command: +To install the dependencies of this repository, open a terminal at the root of the workspace and execute the following command: ```bash pnpm install @@ -67,18 +79,22 @@ npx retype wallet --add ## Develop the packages -We recommend opening two [VSCode terminals](https://code.visualstudio.com/docs/terminal/basics#_managing-multiple-terminals) to develop the packages. +Open a [VSCode terminals](https://code.visualstudio.com/docs/terminal/basics#_managing-multiple-terminals) and start one of the sample application with one of the following scripts: + +```bash +pnpm dev-basic +``` -With the first terminal, execute the following script: +or ```bash -pnpm dev +pnpm dev-basic-webpack ``` -With the second terminal, start one of the sample application with either the following script: +or ```bash -pnpm dev-basic +pnpm dev-basic-mix ``` or @@ -91,9 +107,16 @@ You can then open your favorite browser and navigate to `http://localhost:8080/` > To test that a remote module is working correctly, navigate to the remote module entry file. For a remote module hosted on the port `8081`, the URL should be `http://localhost:8081/remoteEntry.js`. +If you prefer to develop without a sample application, use the `dev-pkg` script instead: + +```bash +pnpm dev-pkg +``` + ## Release the packages When you are ready to release the packages, you must follow the following steps: + 1. Run `pnpm changeset` and follow the prompt. For versioning, always follow the [SemVer standard](https://semver.org/). 2. Commit the newly generated file in your branch and submit a new Pull Request (PR). Changesets will automatically detect the changes and post a message in your pull request telling you that once the PR closes, the versions will be released. 3. Find someone to review your PR. @@ -114,7 +137,7 @@ Make sure GitHub Action has **write access** to the selected npm packages. If the packages failed to compile, it's easier to debug without executing the full release flow every time. To do so, instead, execute the following command: ```bash -pnpm build +pnpm build-pkg ``` By default, packages compilation output will be in their respective *dist* directory. @@ -136,7 +159,7 @@ The sites for this sample application are hosted on [Netlify](https://www.netlif To deploy the sample application, open a terminal at the root of the repository and execute the following script: ```bash -deploy-basic +pnpm deploy-basic ``` A prompt with a few questions will appear and then the site will automatically be deployed to production. @@ -152,7 +175,7 @@ The sites for this sample application are hosted on [Netlify](https://www.netlif To deploy the sample application, open a terminal at the root of the repository and execute the following script: ```bash -deploy-endpoints +pnpm deploy-endpoints ``` A prompt with a few questions will appear and then the sites will automatically be deployed to production. @@ -160,7 +183,7 @@ A prompt with a few questions will appear and then the sites will automatically Then, execute the following script: ```bash -deploy-endpoints-isolated +pnpm deploy-endpoints-isolated ``` Another prompt with a few questions will appear and then the sites will automatically be deployed to production. @@ -169,25 +192,41 @@ Another prompt with a few questions will appear and then the sites will automati From the project root, you have access to many commands. The most important ones are: -### dev +### dev-pkg -Build the shell packages for development and start the watch processes. +Start a watch process for the packages. ```bash -pnpm dev +pnpm dev-pkg ``` ### dev-basic -Build the sample "basic" application for development and start the dev servers. +Start a watch process for the "basic" sample application. ```bash pnpm dev-basic ``` +### dev-basic-webpack + +Start a watch process for the "basic" sample application using a webpack bundler. + +```bash +pnpm dev-basic-webpack +``` + +### dev-basic-mix + +Start a watch process for the "basic" sample application with an host application using rsbuild and remote modules using webpack. + +```bash +pnpm dev-basic-mix +``` + ### dev-endpoints -Build the sample "application with "endpoints" for development and start the dev servers. +Start a watch process for the "endpoints" sample application. ```bash pnpm dev-endpoints @@ -195,39 +234,47 @@ pnpm dev-endpoints ### dev-docs -Build the [Retype](https://retype.com/) documentation for development and start the Retype dev server. If you are experiencing issue with the license, refer to the [setup Retype section](#setup-retype). +Start the [Retype](https://retype.com/) dev server. If you are experiencing issue with the license, refer to the [setup Retype section](#setup-retype). ```bash pnpm dev-docs ``` -### build +### build-pkg Build the packages for release. ```bash -pnpm build +pnpm build-pkg ``` ### build-basic -Build the sample "basic" application for release. +Build the "basic" sample application for release. ```bash pnpm build-basic ``` -### build-endpoints +### build-basic-webpack -Build the sample application with "endpoints" for release. +Build for release the "basic" sample application using webpack bundler. ```bash -pnpm build-endpoints +pnpm build-basic-webpack +``` + +### build-basic-mix + +Build for release the "basic" sample with an host application using rsbuild and remote modules using webpack. + +```bash +pnpm build-basic-webpack ``` -### build-endpoints-isolated +### build-endpoints -Build for an isolated setup the sample application with "endpoints" for release. +Build the "endpoints" sample application for release. ```bash pnpm build-endpoints @@ -241,9 +288,25 @@ Build the sample "basic" application for deployment and start a local web server pnpm serve-basic ``` +### serve-basic-webpack + +Build the sample "basic" application using webpack bundler for deployment and start a local web server to serve the application. + +```bash +pnpm serve-basic-webpack +``` + +### serve-basic-mix + +Build the sample "basic" application with an rsbuild host application and remote modules using webpack for deployment and start a local web server to serve the application. + +```bash +pnpm serve-basic-mix +``` + ### serve-endpoints -Build the sample application with "endpoints" for deployment and start a local web server to serve the application. +Build the sample "endpoints" application for deployment and start a local web server to serve the application. ```bash pnpm serve-endpoints @@ -319,7 +382,7 @@ This action runs on a push on the `main` branch. If there is a file present in t ### CI -This action will trigger when a commit is done in a PR to `main` or after a push to `main` and will run `build`, `lint-ci` and `test` commands on the source code. +This action will trigger when a commit is done in a PR to `main` or after a push to `main` and will run `build-pkg`, `build-basic`, `build-basic-webpack`, `build-basic-mix`, `build-endpoints`, `lint` and `test` commands on the source code. ### Retype diff --git a/MSW_EXAMPLE.md b/MSW_EXAMPLE.md index 0b4e001d1..ff88739a0 100644 --- a/MSW_EXAMPLE.md +++ b/MSW_EXAMPLE.md @@ -12,11 +12,7 @@ To install the sample and start the application with a developer server, follow - Install the codebase with PNPM, execute the following command at the root of the monorepo: `pnpm install`. -- Compile the core packages of the monorepo by executing the following command at the root of the monorepo: `pnpm dev`. - -- In **a distinct terminal**, start the sample application by executing the following command at the root of the monorepo: `pnpm dev-endpoints`. - -- You should now have two terminals running distinct scripts. +- Start the sample application by executing the following command at the root of the monorepo: `pnpm dev-endpoints`. - Once the sample application is started, open a browser and navigate to `http://localhost:8080`. diff --git a/README.md b/README.md index e849c1b47..4dd23a630 100644 --- a/README.md +++ b/README.md @@ -12,12 +12,12 @@ A modular web application shell built on top of [Module Federation](https://mod | [@squide/core](packages/core/README.md) | [![npm version](https://img.shields.io/npm/v/@squide/core)](https://www.npmjs.com/package/@squide/core) | | [@squide/react-router](packages/react-router/README.md) | [![npm version](https://img.shields.io/npm/v/@squide/react-router)](https://www.npmjs.com/package/@squide/react-router) | | [@squide/module-federation](packages/module-federation/README.md) | [![npm version](https://img.shields.io/npm/v/@squide/module-federation)](https://www.npmjs.com/package/@squide/module-federation) | -| [@squide/webpack-configs](packages/webpack-configs/README.md) | [![npm version](https://img.shields.io/npm/v/@squide/webpack-configs)](https://www.npmjs.com/package/@squide/webpack-configs) | | [@squide/msw](packages/msw/README.md) | [![npm version](https://img.shields.io/npm/v/@squide/msw)](https://www.npmjs.com/package/@squide/msw) | | [@squide/i18next](packages/i18next/README.md) | [![npm version](https://img.shields.io/npm/v/@squide/i18next)](https://www.npmjs.com/package/@squide/i18next) | | [@squide/env-vars](packages/env-vars/README.md) | [![npm version](https://img.shields.io/npm/v/@squide/env-vars)](https://www.npmjs.com/package/@squide/env-vars) | | [@squide/firefly](packages/firefly/README.md) | [![npm version](https://img.shields.io/npm/v/@squide/firefly)](https://www.npmjs.com/package/@squide/firefly) | | [@squide/firefly-webpack-configs](packages/firefly-webpack-configs/README.md) | [![npm version](https://img.shields.io/npm/v/@squide/firefly-webpack-configs)](https://www.npmjs.com/package/@squide/firefly-webpack-configs) | +| [@squide/firefly-rsbuild-configs](packages/firefly-rsbuild-configs/README.md) | [![npm version](https://img.shields.io/npm/v/@squide/firefly-rsbuild-configs)](https://www.npmjs.com/package/@squide/firefly-rsbuild-configs) | | [@squide/firefly-honeycomb](packages/firefly-honeycomb/README.md) | [![npm version](https://img.shields.io/npm/v/@squide/firefly-honeycomb)](https://www.npmjs.com/package/@squide/firefly-honeycomb) | | [@squide/fakes](packages/fakes/README.md) | [![npm version](https://img.shields.io/npm/v/@squide/fakes)](https://www.npmjs.com/package/@squide/fakes) | diff --git a/docs/getting-started/create-host.md b/docs/getting-started/create-host.md index 7d0b391d2..f6474e5c1 100644 --- a/docs/getting-started/create-host.md +++ b/docs/getting-started/create-host.md @@ -401,6 +401,10 @@ export default defineDevHostConfig(swcConfig, 8080, Remotes); > If you are having issues with the wepack configuration that are not related to module federation, refer to the [@workleap/webpack-configs](https://gsoft-inc.github.io/wl-web-configs/webpack/configure-dev/) documentation. +!!!info +If the application _**does not**_ not include any remote modules, use the [defineDevConfig](https://gsoft-inc.github.io/wl-web-configs/webpack/configure-dev/) function instead of [defineDevHostConfig](../reference/webpack/defineDevHostConfig.md). +!!! + ### Build configuration To configure webpack for a **build** environment, first open the `swc.build.js` file and copy/paste the following code: @@ -435,6 +439,10 @@ export default defineBuildHostConfig(swcConfig, Remotes); > If you are having issues with the wepack configuration that are not related to module federation, refer to the [@workleap/webpack-configs](https://gsoft-inc.github.io/wl-web-configs/webpack/configure-build/) documentation. +!!!info +If the application _**does not**_ not include any remote modules, use the [defineBuildConfig](https://gsoft-inc.github.io/wl-web-configs/rsbuild/configure-build/) function instead of [defineBuildHostConfig](../reference/webpack/defineBuildHostConfig.md). +!!! + ## Add CLI scripts To initiate the development server, add the following script to the application `package.json` file: diff --git a/docs/getting-started/create-local-module.md b/docs/getting-started/create-local-module.md index 48878d0b6..0ed710cc0 100644 --- a/docs/getting-started/create-local-module.md +++ b/docs/getting-started/create-local-module.md @@ -25,17 +25,17 @@ Create a new application (we'll refer to ours as `local-module`), then open a te +++ pnpm ```bash -pnpm add -D @workleap/tsup-configs tsup typescript @types/react @types/react-dom +pnpm add -D typescript @types/react @types/react-dom pnpm add @squide/firefly react react-dom react-router-dom @tanstack/react-query ``` +++ yarn ```bash -yarn add -D @workleap/tsup-configs tsup typescript @types/react @types/react-dom +yarn add -D typescript @types/react @types/react-dom yarn add @squide/firefly react @squide/firefly react-dom react-router-dom @tanstack/react-query ``` +++ npm ```bash -npm add -D @workleap/tsup-configs tsup typescript @types/react @types/react-dom +npm add -D typescript @types/react @types/react-dom npm install @squide/firefly react react-dom react-router-dom @tanstack/react-query ``` +++ @@ -53,8 +53,6 @@ local-modules ├── src ├──── register.tsx ├──── Page.tsx -├── tsup.dev.ts -├── tsup.build.ts ├── package.json ``` @@ -72,16 +70,12 @@ Finally, configure the package to be shareable by adding the `name`, `version`, { "name": "@getting-started/local-module", "version": "0.0.1", - "exports": { - ".": { - "types": "./dist/register.d.ts", - "import": "./dist/register.js", - "default": "./dist/register.js" - } - } + "exports": "./src/register.tsx" } ``` +> For more information about the `exports` field, refer to this resource on [Just-In-Time Packages](https://www.shew.dev/monorepos/packaging/jit). + ### Routes registration Next, register the local module routes and navigation items with [registerRoute](/reference/runtime/runtime-class.md#register-routes) and [registerNavigationItem](/reference/runtime/runtime-class.md#register-navigation-items) functions: @@ -164,53 +158,9 @@ root.render( ); ``` -## Configure tsup - -!!!info -If you are having issues with the tsup configuration, refer to the [@workleap/tsup-configs](https://gsoft-inc.github.io/wl-web-configs/tsup) documentation. -!!! - -### Development configuration - -To configure tsup for a **development** environment, open the `tsup.dev.ts` file and copy/paste the following code: - -```ts local-module/tsup.dev.ts -import { defineDevConfig } from "@workleap/tsup-configs"; - -export default defineDevConfig(); -``` - -### Build configuration - -To configure tsup for a **build** environment, open the `tsup.build.ts` file and copy/paste the following code: - -```ts local-module/tsup.build.ts -import { defineBuildConfig } from "@workleap/tsup-configs"; - -export default defineBuildConfig(); -``` - -## Add CLI scripts - -To initiate the development server, add the following script to the application `package.json` file: - -```json local-module/package.json -{ - "dev": "tsup --config ./tsup.dev.ts" -} -``` - -To build the module, add the following script to the application `package.json` file: - -```json local-module/package.json -{ - "build": "tsup --config ./tsup.build.ts" -} -``` - ## Try it :rocket: -Start the `host`, `remote-module` and `local-module` applications in development mode using the `dev` script. You should notice an additional link labelled `Local/Page` in the navigation menu. Click on the link to navigate to the page of your new **local** module! +Start the `host` and `remote-module` applications in development mode using the `dev` script. You should notice an additional link labelled `Local/Page` in the navigation menu. Click on the link to navigate to the page of your new **local** module! ### Troubleshoot issues diff --git a/docs/guides/develop-a-module-in-isolation.md b/docs/guides/develop-a-module-in-isolation.md index 8c106ca89..c76ad7497 100644 --- a/docs/guides/develop-a-module-in-isolation.md +++ b/docs/guides/develop-a-module-in-isolation.md @@ -20,8 +20,6 @@ monorepo ├─────────── register.tsx ├─────────── index.ts ├───────── package.json -├───────── tsup.dev.ts -├───────── tsup.build.ts ├── modules ├───────── local-module ├───────── remote-module @@ -40,19 +38,11 @@ First, create a new package (we'll refer to ours as `shell`) and add the followi "name": "@sample/shell", "version": "0.0.1", "type": "module", - "exports": { - ".": { - "import": "./dist/index.js", - "types": "./dist/index.d.ts", - "default": "./dist/index.js" - } - } + "exports": "./src/index.ts" } ``` -Then, install the package dependencies and configure the new package with [tsup](https://gsoft-inc.github.io/wl-web-configs/tsup/). - -Then, create an `AppRouter` component in the shell package to provide a **reusable router configuration** that can be shared between the host application and the isolated modules. This new `AppRouter` component should wrap the `@squide/firefly` [AppRouter](../reference/routing/appRouter.md) component: +Then, install the package dependencies and create an `AppRouter` component in the shell package to provide a **reusable router configuration** that can be shared between the host application and the isolated modules. This new `AppRouter` component should wrap the `@squide/firefly` [AppRouter](../reference/routing/appRouter.md) component: ```tsx shell/src/AppRouter.tsx import { AppRouter as FireflyAppRouter } from "@squide/firefly"; diff --git a/docs/guides/setup-honeycomb.md b/docs/guides/setup-honeycomb.md index 368d7944d..57ea80458 100644 --- a/docs/guides/setup-honeycomb.md +++ b/docs/guides/setup-honeycomb.md @@ -18,15 +18,15 @@ Let's start by configuring the host application. First, open a terminal at the r +++ pnpm ```bash -pnpm add @squide/firefly-honeycomb @honeycombio/opentelemetry-web @opentelemetry/api @opentelemetry/auto-instrumentations-web +pnpm add @squide/firefly-honeycomb @honeycombio/opentelemetry-web @opentelemetry/api @opentelemetry/auto-instrumentations-web @opentelemetry/instrumentation-fetch @opentelemetry/sdk-trace-web ``` +++ yarn ```bash -yarn add @squide/firefly-honeycomb @honeycombio/opentelemetry-web @opentelemetry/api @opentelemetry/auto-instrumentations-web +yarn add @squide/firefly-honeycomb @honeycombio/opentelemetry-web @opentelemetry/api @opentelemetry/auto-instrumentations-web @opentelemetry/instrumentation-fetch @opentelemetry/sdk-trace-web ``` +++ npm ```bash -npm install @squide/firefly-honeycomb @honeycombio/opentelemetry-web @opentelemetry/api @opentelemetry/auto-instrumentations-web +npm install @squide/firefly-honeycomb @honeycombio/opentelemetry-web @opentelemetry/api @opentelemetry/auto-instrumentations-web @opentelemetry/instrumentation-fetch @opentelemetry/sdk-trace-web ``` +++ diff --git a/docs/guides/use-environment-variables.md b/docs/guides/use-environment-variables.md index 23467b294..352263904 100644 --- a/docs/guides/use-environment-variables.md +++ b/docs/guides/use-environment-variables.md @@ -155,6 +155,16 @@ Finally, update the module `tsconfig.json` to include the `types` folder: } ``` +If the project contains Typescript files at its root that need to be linted (such as tooling configuration files), consider including all project files instead of specific directories: + +```json !#3 host/tsconfig.json +{ + "extends": "@workleap/typescript-configs/web-application.json", + "include": ["."], + "exclude": ["dist", "node_modules"] +} +``` + ### Register variables Now, let's register our first variable. We recommend registering environment variables in the module's [register function](../reference/registration/registerLocalModules.md#register-a-local-module) as it's the most logical place to access the runtime instance: diff --git a/docs/reference/default.md b/docs/reference/default.md index 4251be9a2..205cf337c 100644 --- a/docs/reference/default.md +++ b/docs/reference/default.md @@ -67,6 +67,13 @@ toc: - [defineBuildHostConfig](./webpack/defineBuildHostConfig.md) - [defineBuildRemoteModuleConfig](./webpack/defineBuildRemoteModuleConfig.md) +### Rsbuild + +- [defineDevHostConfig](./rsbuild/defineDevHostConfig.md) [!badge variant="danger" size="xs" text="experimental"] +- [defineDevRemoteModuleConfig](./rsbuild/defineDevRemoteModuleConfig.md) [!badge variant="danger" size="xs" text="experimental"] +- [defineBuildHostConfig](./rsbuild/defineBuildHostConfig.md) [!badge variant="danger" size="xs" text="experimental"] +- [defineBuildRemoteModuleConfig](./rsbuild/defineBuildRemoteModuleConfig.md) [!badge variant="danger" size="xs" text="experimental"] + ### TanStack Query - [usePublicDataQueries](./tanstack-query/usePublicDataQueries.md) diff --git a/docs/reference/packages.md b/docs/reference/packages.md index a3aa38f8c..ba3d748d0 100644 --- a/docs/reference/packages.md +++ b/docs/reference/packages.md @@ -19,11 +19,11 @@ order: 200 | :icon-mark-github: [@squide/core](https://github.com/gsoft-inc/wl-squide/tree/main/packages/core) | Core functionalities of Squide. | [![npm version](https://img.shields.io/npm/v/@squide/core)](https://www.npmjs.com/package/@squide/core) | | :icon-mark-github: [@squide/react-router](https://github.com/gsoft-inc/wl-squide/tree/main/packages/react-router) | Specific implementation of the core functionalities to support [React Router](https://reactrouter.com/en/main). | [![npm version](https://img.shields.io/npm/v/@squide/react-router)](https://www.npmjs.com/package/@squide/react-router) | | :icon-mark-github: [@squide/module-federation](https://github.com/gsoft-inc/wl-squide/tree/main/packages/module-federation) | Add support for [Module Federation](https://module-federation.io/). | [![npm version](https://img.shields.io/npm/v/@squide/module-federation)](https://www.npmjs.com/package/@squide/module-federation) | -| :icon-mark-github: [@squide/webpack-configs](https://github.com/gsoft-inc/wl-squide/tree/main/packages/webpack-configs) | Utilities to configure [webpack](https://webpack.js.org/). | [![npm version](https://img.shields.io/npm/v/@squide/webpack-configs)](https://www.npmjs.com/package/@squide/webpack-configs) | | :icon-mark-github: [@squide/msw](https://github.com/gsoft-inc/wl-squide/tree/main/packages/msw) | Add support for [MSW](https://mswjs.io/). | [![npm version](https://img.shields.io/npm/v/@squide/msw)](https://www.npmjs.com/package/@squide/msw) | | :icon-mark-github: [@squide/i18next](https://github.com/gsoft-inc/wl-squide/tree/main/packages/i18next) | Add support for [i18next](https://www.i18next.com/). | [![npm version](https://img.shields.io/npm/v/@squide/i18next)](https://www.npmjs.com/package/@squide/i18next) | | :icon-mark-github: [@squide/env-vars](https://github.com/gsoft-inc/wl-squide/tree/main/packages/env-vars) | Add support for environment variables. | [![npm version](https://img.shields.io/npm/v/@squide/env-vars)](https://www.npmjs.com/package/@squide/env-vars) | | :icon-mark-github: [@squide/firefly](https://github.com/gsoft-inc/wl-squide/tree/main/packages/firefly) | Squide for the firefly technology stack. | [![npm version](https://img.shields.io/npm/v/@squide/firefly)](https://www.npmjs.com/package/@squide/firefly) | | :icon-mark-github: [@squide/firefly-webpack-configs](https://github.com/gsoft-inc/wl-squide/tree/main/packages/firefly-webpack-configs) | [webpack](https://webpack.js.org/) configuration helpers for the Squide firefly technology stack. | [![npm version](https://img.shields.io/npm/v/@squide/firefly-webpack-configs)](https://www.npmjs.com/package/@squide/firefly-webpack-configs) | +| :icon-mark-github: [@squide/firefly-rsbuild-configs](https://github.com/gsoft-inc/wl-squide/tree/main/packages/firefly-rsbuild-configs) | [Rsbuild](https://rsbuild.dev/) configuration helpers for the Squide firefly technology stack. | [![npm version](https://img.shields.io/npm/v/@squide/firefly-rsbuild-configs)](https://www.npmjs.com/package/@squide/firefly-rsbuild-configs) | | :icon-mark-github: [@squide/firefly-honeycomb](https://github.com/gsoft-inc/wl-squide/tree/main/packages/firefly-honeycomb) | [Honeycomb](https://www.honeycomb.io/) instrumentation for the Squide firefly technology stack. | [![npm version](https://img.shields.io/npm/v/@squide/firefly-honeycomb)](https://www.npmjs.com/package/@squide/firefly-honeycomb) | | :icon-mark-github: [@squide/fakes](https://github.com/gsoft-inc/wl-squide/tree/main/packages/fakes) | A collection of fake implementations to facilitate the development of federated modules. | [![npm version](https://img.shields.io/npm/v/@squide/fakes)](https://www.npmjs.com/package/@squide/fakes) | diff --git a/docs/reference/rsbuild/defineBuildHostConfig.md b/docs/reference/rsbuild/defineBuildHostConfig.md new file mode 100644 index 000000000..daecda287 --- /dev/null +++ b/docs/reference/rsbuild/defineBuildHostConfig.md @@ -0,0 +1,226 @@ +--- +order: 80 +toc: + depth: 2-3 +--- + +# defineBuildHostConfig + +!!!danger +This is an experimental feature. +!!! + +Creates an Rsbuild [configuration object](https://rsbuild.dev/config/index) that is adapted for a Squide host application in **build** mode. This function is a wrapper built on top of [@workleap/rsbuild-configs](https://www.npmjs.com/package/@workleap/rsbuild-configs). Make sure to read the [defineBuildConfig](https://gsoft-inc.github.io/wl-web-configs/rsbuild/configure-build/) documentation first. + +!!!info +If the application _**does not**_ not include any remote modules, use the [defineBuildConfig](https://gsoft-inc.github.io/wl-web-configs/rsbuild/configure-build/) function instead of `defineBuildHostConfig`. +!!! + +## Reference + +```ts +const rsbuildConfig = defineBuildHostConfig(remotes: [], options?: {}) +``` + +## Parameters + +- `remotes`: An array of `RemoteDefinition` (view the [Remote definition](#remote-definition) section). +- `options`: An optional object literal of options: + - Accepts most of Rsbuild `definedBuildConfig` [predefined options](https://gsoft-inc.github.io/wl-web-configs/rsbuild/configure-build/#3-set-predefined-options). + - `features`: An optional object literal of feature switches to define additional shared dependencies. + - `i18next`: Whether or not to add `@squide/i18next` as a shared dependency. + - `environmentVariables`: Whether or not to add `@squide/env-vars` as a shared dependency. + - `honeycomb`: Whether or not to add `@squide/firefly-honeycomb` as a shared dependency. + - `msw`: `false` to remove `@squide/msw` from shared dependencies. + - `runtimePlugins`: An optional array of module federation [runtime plugins](https://module-federation.io/plugin/dev/). + - `sharedDependencies`: An optional object literal of additional (or updated) module federation shared dependencies. + - `moduleFederationPluginOptions`: An optional object literal of [ModuleFederationPlugin](https://module-federation.io/configure/index.html) options. + +## Returns + +An Rsbuild [configuration object](https://rsbuild.dev/config/index) tailored for a Squide host application in build mode. + +## Default shared dependencies + +The `defineBuildHostConfig` function will add the following shared dependencies as `singleton` by default: +- [react](https://www.npmjs.com/package/react) +- [react-dom](https://www.npmjs.com/package/react-dom) +- [react-router-dom](https://www.npmjs.com/package/react-router-dom) +- [@squide/core](https://www.npmjs.com/package/@squide/core) +- [@squide/react-router](https://www.npmjs.com/package/@squide/react-router) +- [@squide/module-federation](https://www.npmjs.com/package/@squide/module-federation) +- [@squide/msw](https://www.npmjs.com/package/@squide/msw) + +For the full shared dependencies configuration, have a look at the [defineConfig.ts](https://github.com/gsoft-inc/wl-squide/blob/main/packages/firefly-rsbuild-configs/src/defineConfig.ts) file on GitHub. + +## Usage + +### Define an Rsbuild config + +```ts !#7 host/rsbuild.build.ts +import { defineBuildHostConfig, type RemoteDefinition } from "@squide/firefly-rsbuild-configs"; + +const Remotes: RemoteDefinition[] = [ + { name: "remote1", url: "http://localhost:8081" } +]; + +export default defineBuildHostConfig(Remotes); +``` + +### Activate additional features + +```ts !#8-10 host/rsbuild.build.ts +import { defineBuildHostConfig, type RemoteDefinition } from "@squide/firefly-rsbuild-configs"; + +const Remotes: RemoteDefinition[] = [ + { name: "remote1", url: "http://localhost:8081" } +]; + +export default defineBuildHostConfig(Remotes, { + features: { + i18next: true + } +}); +``` + +!!!info +Features must be activated on the host application as well as every remote module. +!!! + +### Specify additional shared dependencies + +```ts !#8-12 host/rsbuild.build.ts +import { defineBuildHostConfig, type RemoteDefinition } from "@squide/firefly-rsbuild-configs"; + +const Remotes: RemoteDefinition[] = [ + { name: "remote1", url: "http://localhost:8081" } +]; + +export default defineBuildHostConfig(Remotes, { + sharedDependencies: { + "@sample/shared": { + singleton: true + } + } +}); +``` + +!!!info +Additional shared dependencies must be configured on the host application as well as every remote module. +!!! + +### Extend a default shared dependency + +```ts !#8-12 host/rsbuild.build.ts +import { defineBuildHostConfig, type RemoteDefinition } from "@squide/firefly-rsbuild-configs"; + +const Remotes: RemoteDefinition[] = [ + { name: "remote1", url: "http://localhost:8081" } +]; + +export default defineBuildHostConfig(Remotes, { + sharedDependencies: { + "react": { + requiredVersion: "18.2.0" + } + } +}); +``` + +In the previous code sample, the `react` shared dependency will be **augmented** with the `strictVersion` option. The resulting shared dependency will be: + +```ts !#5 +{ + "react": { + eager: true, + singleton: true, + requiredVersion: "18.2.0" + } +} +``` + +### Override a default shared dependency + +```ts !#8-12 host/rsbuild.build.ts +import { defineBuildHostConfig, type RemoteDefinition } from "@squide/firefly-rsbuild-configs"; + +const Remotes: RemoteDefinition[] = [ + { name: "remote1", url: "http://localhost:8081" } +]; + +export default defineBuildHostConfig(Remotes, { + sharedDependencies: { + "react": { + singleton: false + } + } +}); +``` + +In the previous code sample, the `react` shared dependency `singleton` option will be **overrided** by the newly provided value. The resulting shared dependency will be: + +```ts !#4 +{ + "react": { + eager: true, + singleton: false + } +} +``` + +### Customize module federation configuration + +```ts !#8-12 host/rsbuild.build.ts +import { defineBuildHostConfig, type RemoteDefinition } from "@squide/firefly-rsbuild-configs"; + +const Remotes: RemoteDefinition[] = [ + { name: "remote1", url: "http://localhost:8081" } +]; + +export default defineBuildHostConfig(Remotes, { + moduleFederationPluginOptions: defaultOptions => { + defaultOptions.name = "my-application"; + + return defaultOptions; + } +}); +``` + +## Remote definition + +### `name` + +The `name` option of a remote definition **must match** the `name` option defined in the remote module [ModuleFederationPlugin](https://module-federation.io/configure/index.html) configuration. + +If you are relying on the Squide [defineBuildRemoteModuleConfig](./defineBuildRemoteModuleConfig.md) function to add the `ModuleFederationPlugin` to the remote module Rsbuild [configuration object](https://rsbuild.dev/config/index), then the remote module `name` is the first argument of the function. + +In the following exemple, the remote module `name` is `remote1`. + +```ts !#4 host/rsbuild.build.ts +import type { RemoteDefinition } from "@squide/firefly-rsbuild-configs"; + +const Remotes: RemoteDefinition[] = [ + { name: "remote1", url: `http://localhost:8081` } +]; +``` + +```ts remote-module/rsbuild.build.ts +import { defineBuildRemoteModuleConfig } from "@squide/firefly-rsbuild-configs"; + +export default defineBuildRemoteModuleConfig("remote1"); +``` + +### `url` + +The `url` option of a remote definition **must match** the [assetPrefix](https://rsbuild.dev/config/output/asset-prefix) of the remote module Rsbuild [configuration object](https://rsbuild.dev/config/index). + +In the following exemple, the remote module `assetPrefix` is `http://localhost:8081`. + +```ts !#4 host/rsbuild.build.ts +import type { RemoteDefinition } from "@squide/firefly-rsbuild-configs"; + +const Remotes: RemoteDefinition[] = [ + { name: "remote1", url: "http://localhost:8081" } +]; +``` + diff --git a/docs/reference/rsbuild/defineBuildRemoteModuleConfig.md b/docs/reference/rsbuild/defineBuildRemoteModuleConfig.md new file mode 100644 index 000000000..424bac29f --- /dev/null +++ b/docs/reference/rsbuild/defineBuildRemoteModuleConfig.md @@ -0,0 +1,192 @@ +--- +order: 70 +toc: + depth: 2-3 +--- + +# defineBuildRemoteModuleConfig + +!!!danger +This is an experimental feature. +!!! + +Creates an Rsbuild [configuration object](https://rsbuild.dev/config/index) that is adapted for a Squide remote module application in **build** mode. This function is a wrapper built on top of [@workleap/rsbuild-configs](https://www.npmjs.com/package/@workleap/rsbuild-configs). Make sure to read the [defineBuildConfig](https://gsoft-inc.github.io/wl-web-configs/rsbuild/configure-build/) documentation first. + +## Reference + +```ts +const rsbuildConfig = defineBuildRemoteModuleConfig(applicationName, options?: {}) +``` + +## Parameters + +- `applicationName`: The remote module application name. +- `options`: An optional object literal of options: + - Accepts most of Rsbuild `definedDevConfig` [predefined options](https://gsoft-inc.github.io/wl-web-configs/rsbuild/configure-dev/#3-set-predefined-options). + - `features`: An optional object literal of feature switches to define additional shared dependencies. + - `i18next`: Whether or not to add `@squide/i18next` as a shared dependency. + - `environmentVariables`: Whether or not to add `@squide/env-vars` as a shared dependency. + - `honeycomb`: Whether or not to add `@squide/firefly-honeycomb` as a shared dependency. + - `msw`: `false` to remove `@squide/msw` from shared dependencies. + - `sharedDependencies`: An optional object literal of additional (or updated) module federation shared dependencies. + - `moduleFederationPluginOptions`: An optional object literal of [ModuleFederationPlugin](https://module-federation.io/configure/index.html) options. + +## Returns + +An Rsbuild [configuration object](https://rsbuild.dev/config/index) tailored for a Squide remote module application in build mode. + +## Conventions + +To fulfill Squide remote module requirements, the `defineBuildRemoteModuleConfig` function will pre-configure the [ModuleFederationPlugin](https://module-federation.io/configure/index.html) with the following `filename` and `exposes` properties. + +```ts +{ + filename: "/remoteEntry.js", + exposes: { + "register.js": "./src/register" + } +} +``` + +!!!info +If the remote module `assetsPrefix` is `http://localhost/8081`, the remote module bundle is available at `http://localhost:8081/remoteEntry.js`. +!!! + +## Default shared dependencies + +The `defineBuildRemoteModuleConfig` function will add the following shared dependencies as `singleton` by default: +- [react](https://www.npmjs.com/package/react) +- [react-dom](https://www.npmjs.com/package/react-dom) +- [react-router-dom](https://www.npmjs.com/package/react-router-dom) +- [@squide/core](https://www.npmjs.com/package/@squide/core) +- [@squide/react-router](https://www.npmjs.com/package/@squide/react-router) +- [@squide/module-federation](https://www.npmjs.com/package/@squide/module-federation) +- [@squide/msw](https://www.npmjs.com/package/@squide/msw) + +For the full shared dependencies configuration, have a look at the [defineConfig.ts](https://github.com/gsoft-inc/wl-squide/blob/main/packages/firefly-rsbuild-configs/src/defineConfig.ts) file on Github. + +## Usage + +### Define an Rsbuild config + +```ts remote-module/rsbuild.build.ts +import { defineBuildRemoteModuleConfig } from "@squide/firefly-rsbuild-configs"; + +export default defineBuildRemoteModuleConfig("remote1"); +``` + +### Activate additional features + +```ts !#4-6 remote-module/rsbuild.build.ts +import { defineBuildRemoteModuleConfig } from "@squide/firefly-rsbuild-configs"; + +export default defineBuildRemoteModuleConfig("remote1", { + features: { + i18next: true + } +}); +``` + +!!!info +Features must be activated on the host application as well as every remote module. +!!! + +### Specify additional shared dependencies + +```ts !#4-8 remote-module/rsbuild.build.ts +import { defineBuildRemoteModuleConfig } from "@squide/firefly-rsbuild-configs"; + +export default defineBuildRemoteModuleConfig("remote1", { + sharedDependencies: { + "@sample/shared": { + singleton: true + } + } +}); +``` + +!!!info +Additional shared dependencies must be configured on the host application as well as every remote module. +!!! + +### Extend a default shared dependency + +```ts !#4-8 remote-module/rsbuild.build.ts +import { defineBuildRemoteModuleConfig } from "@squide/firefly-rsbuild-configs"; + +export default defineBuildRemoteModuleConfig("remote1", { + sharedDependencies: { + "react": { + requiredVersion: "18.2.0" + } + } +}); +``` + +In the previous code sample, the `react` shared dependency will be **augmented** with the newly provided `strictVersion` option. The resulting shared dependency will be: + +```ts !#5 +{ + "react": { + eager: true, + singleton: true, + requiredVersion: "18.2.0" + } +} +``` + +### Override a default shared dependency + +```ts !#4-8 remote-module/rsbuild.build.ts +import { defineBuildRemoteModuleConfig } from "@squide/firefly-rsbuild-configs"; + +export default defineBuildRemoteModuleConfig("remote1", { + sharedDependencies: { + "react": { + singleton: false + } + } +}); +``` + +In the previous code sample, the `react` shared dependency `singleton` option will be **overrided** by the newly provided value. The resulting shared dependency will be: + +```ts !#4 +{ + "react": { + eager: true, + singleton: false + } +} +``` + +### Customize module federation configuration + +```ts !#4-8 remote-module/rsbuild.build.ts +import { defineBuildRemoteModuleConfig } from "@squide/firefly-rsbuild-configs"; + +export default defineBuildRemoteModuleConfig("remote1", { + moduleFederationPluginOptions: defaultOptions => { + defaultOptions.name = "my-application"; + + return defaultOptions; + } +}); +``` + +### Expose an additional module + +```ts !#4-11 remote-module/rsbuild.build.ts +import { defineBuildRemoteModuleConfig } from "@squide/firefly-rsbuild-configs"; + +export default defineBuildRemoteModuleConfig("remote1", { + moduleFederationPluginOptions: defaultOptions => { + defaultOptions.exposes = { + ...(defaultOptions.exposes ?? {}), + "./foo": "./src/bar" + } + + return defaultOptions; + } +}); +``` diff --git a/docs/reference/rsbuild/defineDevHostConfig.md b/docs/reference/rsbuild/defineDevHostConfig.md new file mode 100644 index 000000000..2649e1f72 --- /dev/null +++ b/docs/reference/rsbuild/defineDevHostConfig.md @@ -0,0 +1,237 @@ +--- +order: 100 +toc: + depth: 2-3 +--- + +# defineDevHostConfig + +!!!danger +This is an experimental feature. +!!! + +Creates an Rsbuild [configuration object](https://rsbuild.dev/config/index) that is adapted for a Squide host application in **development** mode. This function is a wrapper built on top of [@workleap/rsbuild-configs](https://www.npmjs.com/package/@workleap/rsbuild-configs). Make sure to read the [defineDevConfig](https://gsoft-inc.github.io/wl-web-configs/rsbuild/configure-dev/) documentation first. + +!!!info +If the application _**does not**_ not include any remote modules, use the [defineDevConfig](https://gsoft-inc.github.io/wl-web-configs/rsbuild/configure-dev/) function instead of `defineDevHostConfig`. +!!! + +## Reference + +```ts +const rsbuildConfig = defineDevHostConfig(port, remotes: [], options?: {}) +``` + +## Parameters + +- `port`: The host application port. +- `remotes`: An array of `RemoteDefinition` (view the [Remote definition](#remote-definition) section). +- `options`: An optional object literal of options: + - Accepts most of Rsbuild `definedDevConfig` [predefined options](https://gsoft-inc.github.io/wl-web-configs/rsbuild/configure-dev/#3-set-predefined-options). + - `features`: An optional object literal of feature switches to define additional shared dependencies. + - `i18next`: Whether or not to add `@squide/i18next` as a shared dependency. + - `environmentVariables`: Whether or not to add `@squide/env-vars` as a shared dependency. + - `honeycomb`: Whether or not to add `@squide/firefly-honeycomb` as a shared dependency. + - `msw`: `false` to remove `@squide/msw` from shared dependencies. + - `sharedDependencies`: An optional object literal of additional (or updated) module federation shared dependencies. + - `moduleFederationPluginOptions`: An optional object literal of [ModuleFederationPlugin](https://module-federation.io/configure/index.html) options. + +## Returns + +An Rsbuild [configuration object](https://rsbuild.dev/config/index) tailored for a Squide host application in development mode. + +## Default shared dependencies + +The `defineDevHostConfig` function will add the following shared dependencies as `singleton` by default: +- [react](https://www.npmjs.com/package/react) +- [react-dom](https://www.npmjs.com/package/react-dom) +- [react-router-dom](https://www.npmjs.com/package/react-router-dom) +- [@squide/core](https://www.npmjs.com/package/@squide/core) +- [@squide/react-router](https://www.npmjs.com/package/@squide/react-router) +- [@squide/module-federation](https://www.npmjs.com/package/@squide/module-federation) +- [@squide/msw](https://www.npmjs.com/package/@squide/msw) + +For the full shared dependencies configuration, have a look at the [defineConfig.ts](https://github.com/gsoft-inc/wl-squide/blob/main/packages/firefly-rsbuild-configs/src/defineConfig.ts) file on Github. + +## Usage + +### Define an Rsbuild config + +```ts !#7 host/rsbuild.dev.ts +import { defineDevHostConfig, type RemoteDefinition } from "@squide/firefly-rsbuild-configs"; + +const Remotes: RemoteDefinition[] = [ + { name: "remote1", url: "http://localhost:8081" } +]; + +export default defineDevHostConfig(8080, Remotes); +``` + +### Activate optional features + +```ts !#8-10 host/rsbuild.dev.ts +import { defineDevHostConfig, type RemoteDefinition } from "@squide/firefly-rsbuild-configs"; + +const Remotes: RemoteDefinition[] = [ + { name: "remote1", url: "http://localhost:8081" } +]; + +export default defineDevHostConfig(8080, Remotes, { + features: { + i18next: true + } +}); +``` + +!!!info +Features must be activated on the host application as well as every remote module. +!!! + +### Specify additional shared dependencies + +```ts !#8-12 host/rsbuild.dev.ts +import { defineDevHostConfig, type RemoteDefinition } from "@squide/firefly-rsbuild-configs"; + +const Remotes: RemoteDefinition[] = [ + { name: "remote1", url: "http://localhost:8081" } +]; + +export default defineDevHostConfig(8080, Remotes, { + sharedDependencies: { + "@sample/shared": { + singleton: true + } + } +}); +``` + +!!!info +Additional shared dependencies must be configured on the host application as well as every remote module. +!!! + +### Extend a default shared dependency + +```ts !#8-12 host/rsbuild.dev.ts +import { defineDevHostConfig, type RemoteDefinition } from "@squide/firefly-rsbuild-configs"; + +const Remotes: RemoteDefinition[] = [ + { name: "remote1", url: "http://localhost:8081" } +]; + +export default defineDevHostConfig(8080, Remotes, { + sharedDependencies: { + "react": { + requiredVersion: "18.2.0" + } + } +}); +``` + +In the previous code sample, the `react` shared dependency will be **augmented** with the `strictVersion` option. The resulting shared dependency will be: + +```ts !#5 +{ + "react": { + eager: true, + singleton: true, + requiredVersion: "18.2.0" + } +} +``` + +### Override a default shared dependency + +```ts !#8-12 host/rsbuild.dev.ts +import { defineDevHostConfig, type RemoteDefinition } from "@squide/firefly-rsbuild-configs"; + +const Remotes: RemoteDefinition[] = [ + { name: "remote1", url: "http://localhost:8081" } +]; + +export default defineDevHostConfig(8080, { + sharedDependencies: { + "react": { + singleton: false + } + } +}); +``` + +In the previous code sample, the `react` shared dependency `singleton` option will be **overrided** by the newly provided value. The resulting shared dependency will be: + +```ts !#4 +{ + "react": { + eager: true, + singleton: false + } +} +``` + +### Customize module federation configuration + +```ts !#8-12 host/rsbuild.dev.ts +import { defineDevHostConfig, type RemoteDefinition } from "@squide/firefly-rsbuild-configs"; + +const Remotes: RemoteDefinition[] = [ + { name: "remote1", url: "http://localhost:8081" } +]; + +export default defineDevHostConfig(8080, Remotes, { + moduleFederationPluginOptions: defaultOptions => { + defaultOptions.name = "my-application"; + + return defaultOptions; + } +}); +``` + +## Remote definition + +### `name` + +The `name` option of a remote definition **must match** the `name` option defined in the remote module [ModuleFederationPlugin](https://module-federation.io/configure/index.html) configuration. + +If you are relying on the Squide [defineDevRemoteModuleConfig](./defineDevRemoteModuleConfig.md) function to add the `ModuleFederationPlugin` to the remote module Rsbuild [configuration object](https://rsbuild.dev/config/index), then the remote module `name` is the first argument of the function. + +In the following exemple, the remote module `name` is `remote1`. + +```ts !#4 host/rsbuild.dev.ts +import type { RemoteDefinition } from "@squide/firefly-rsbuild-configs"; + +const Remotes: RemoteDefinition[] = [ + { name: "remote1", url: `http://localhost:8081` } +]; +``` + +```ts remote-module/rsbuild.dev.ts +import { defineDevRemoteModuleConfig } from "@squide/firefly-rsbuild-configs"; + +export default defineDevRemoteModuleConfig("remote1", 8081); +``` + +### `url` + +The `url` option of a remote definition **must match** the [assetPrefix](https://rsbuild.dev/config/output/asset-prefix) of the remote module Rsbuild [configuration object](https://rsbuild.dev/config/index). + +In the following exemple, the remote module `assetPrefix` is `http://localhost:8081`. + +```ts !#4 host/rsbuild.dev.ts +import type { RemoteDefinition } from "@squide/firefly-rsbuild-configs"; + +const Remotes: RemoteDefinition[] = [ + { name: "remote1", url: "http://localhost:8081" } +]; +``` + +The `assetPrefix` is built from the provided `host` and `port` values. Therefore, if the port value is `8081`, then the generated `assetPrefix` would be `http://localhost:8081`: + +```ts remote-module/rsbuild.dev.ts +import { defineDevRemoteModuleConfig } from "@squide/firefly-rsbuild-configs"; + +export default defineDevRemoteModuleConfig("remote1", 8081, { + host: "localhost" // (This is the default value) +}); +``` + + diff --git a/docs/reference/rsbuild/defineDevRemoteModuleConfig.md b/docs/reference/rsbuild/defineDevRemoteModuleConfig.md new file mode 100644 index 000000000..264d13de9 --- /dev/null +++ b/docs/reference/rsbuild/defineDevRemoteModuleConfig.md @@ -0,0 +1,193 @@ +--- +order: 90 +toc: + depth: 2-3 +--- + +# defineDevRemoteModuleConfig + +!!!danger +This is an experimental feature. +!!! + +Creates an Rsbuild [configuration object](https://rsbuild.dev/config/index) that is adapted for a Squide remote module application in **development** mode. This function is a wrapper built on top of [@workleap/rsbuild-configs](https://www.npmjs.com/package/@workleap/rsbuild-configs). Make sure to read the [defineDevConfig](https://gsoft-inc.github.io/wl-web-configs/rsbuild/configure-dev/) documentation first. + +## Reference + +```ts +const rsbuildConfig = defineDevRemoteModuleConfig(applicationName, port, options?: {}) +``` + +## Parameters + +- `applicationName`: The remote module application name. +- `port`: The remote module application port. +- `options`: An optional object literal of options: + - Accepts most of Rsbuild `definedDevConfig` [predefined options](https://gsoft-inc.github.io/wl-web-configs/rsbuild/configure-dev/#3-set-predefined-options). + - `features`: An optional object literal of feature switches to define additional shared dependencies. + - `i18next`: Whether or not to add `@squide/i18next` as a shared dependency. + - `environmentVariables`: Whether or not to add `@squide/env-vars` as a shared dependency. + - `honeycomb`: Whether or not to add `@squide/firefly-honeycomb` as a shared dependency. + - `msw`: `false` to remove `@squide/msw` from shared dependencies. + - `sharedDependencies`: An optional object literal of additional (or updated) module federation shared dependencies. + - `moduleFederationPluginOptions`: An optional object literal of [ModuleFederationPlugin](https://module-federation.io/configure/index.html) options. + +## Returns + +An Rsbuild [configuration object](https://rsbuild.dev/config/index) tailored for a Squide remote module application in development mode. + +## Conventions + +To fulfill Squide remote module requirements, the `defineDevRemoteModuleConfig` function will pre-configure the [ModuleFederationPlugin](https://module-federation.io/configure/index.html) with the following `filename` and `exposes` properties. + +```ts +{ + filename: "/remoteEntry.js", + exposes: { + "register.js": "./src/register" + } +} +``` + +!!!info +If the remote module `port` is `8081`, the remote module bundle is available at `http://localhost:8081/remoteEntry.js`. +!!! + +## Default shared dependencies + +The `defineDevRemoteModuleConfig` function will add the following shared dependencies as `singleton` by default: +- [react](https://www.npmjs.com/package/react) +- [react-dom](https://www.npmjs.com/package/react-dom) +- [react-router-dom](https://www.npmjs.com/package/react-router-dom) +- [@squide/core](https://www.npmjs.com/package/@squide/core) +- [@squide/react-router](https://www.npmjs.com/package/@squide/react-router) +- [@squide/module-federation](https://www.npmjs.com/package/@squide/module-federation) +- [@squide/msw](https://www.npmjs.com/package/@squide/msw) + +For the full shared dependencies configuration, have a look at the [defineConfig.ts](https://github.com/gsoft-inc/wl-squide/blob/main/packages/firefly-rsbuild-configs/src/defineConfig.ts) file on Github. + +## Usage + +### Define a webpack config + +```ts remote-module/rsbuild.dev.ts +import { defineDevRemoteModuleConfig } from "@squide/firefly-rsbuild-configs"; + +export default defineDevRemoteModuleConfig("remote1", 8080); +``` + +### Activate additional features + +```ts !#4-6 remote-module/rsbuild.dev.ts +import { defineDevRemoteModuleConfig } from "@squide/firefly-rsbuild-configs"; + +export default defineDevRemoteModuleConfig("remote1", 8080, { + features: { + i18next: true + } +}); +``` + +!!!info +Features must be activated on the host application as well as every remote module. +!!! + +### Specify additional shared dependencies + +```ts !#4-8 remote-module/rsbuild.dev.ts +import { defineDevRemoteModuleConfig } from "@squide/firefly-rsbuild-configs"; + +export default defineDevRemoteModuleConfig("remote1", 8080, { + sharedDependencies: { + "@sample/shared": { + singleton: true + } + } +}); +``` + +!!!info +Additional shared dependencies must be configured on the host application as well as every remote module. +!!! + +### Extend a default shared dependency + +```ts !#4-8 remote-module/rsbuild.dev.ts +import { defineDevRemoteModuleConfig } from "@squide/firefly-rsbuild-configs"; + +export default defineDevRemoteModuleConfig("remote1", 8080, { + sharedDependencies: { + "react": { + requiredVersion: "18.2.0" + } + } +}); +``` + +In the previous code sample, the `react` shared dependency will be **augmented** with the newly provided `strictVersion` option. The resulting shared dependency will be: + +```ts !#5 +{ + "react": { + eager: true, + singleton: true, + requiredVersion: "18.2.0" + } +} +``` + +### Override a default shared dependency + +```ts !#4-8 remote-module/rsbuild.dev.ts +import { defineDevRemoteModuleConfig } from "@squide/firefly-rsbuild-configs"; + +export default defineDevRemoteModuleConfig("remote1", 8080, { + sharedDependencies: { + "react": { + singleton: false + } + } +}); +``` + +In the previous code sample, the `react` shared dependency `singleton` option will be **overrided** by the newly provided value. The resulting shared dependency will be: + +```ts !#4 +{ + "react": { + eager: true, + singleton: false + } +} +``` + +### Customize module federation configuration + +```ts !#4-8 remote-module/rsbuild.dev.ts +import { defineDevRemoteModuleConfig } from "@squide/firefly-rsbuild-configs"; + +export default defineDevRemoteModuleConfig("remote1", 8080, { + moduleFederationPluginOptions: defaultOptions => { + defaultOptions.name = "my-application"; + + return defaultOptions; + } +}); +``` + +### Expose an additional module + +```ts !#4-11 remote-module/rsbuild.dev.ts +import { defineDevRemoteModuleConfig } from "@squide/firefly-rsbuild-configs"; + +export default defineDevRemoteModuleConfig("remote1", 8080, { + moduleFederationPluginOptions: defaultOptions => { + defaultOptions.exposes = { + ...(defaultOptions.exposes ?? {}), + "./foo": "./src/bar" + } + + return defaultOptions; + } +}); +``` diff --git a/docs/reference/rsbuild/index.yaml b/docs/reference/rsbuild/index.yaml new file mode 100644 index 000000000..9fa376429 --- /dev/null +++ b/docs/reference/rsbuild/index.yaml @@ -0,0 +1,2 @@ +order: -12 +label: "Rsbuild" diff --git a/docs/reference/webpack/defineBuildHostConfig.md b/docs/reference/webpack/defineBuildHostConfig.md index 9c55f0386..6aa32d513 100644 --- a/docs/reference/webpack/defineBuildHostConfig.md +++ b/docs/reference/webpack/defineBuildHostConfig.md @@ -6,10 +6,10 @@ toc: # defineBuildHostConfig -Creates a webpack [configuration object](https://webpack.js.org/concepts/configuration/) that is adapted for a Squide host application in **build** mode. +Creates a webpack [configuration object](https://webpack.js.org/concepts/configuration/) that is adapted for a Squide host application in **build** mode. This function is a wrapper built on top of [@workleap/webpack-configs](https://www.npmjs.com/package/@workleap/webpack-configs). Make sure to read the [defineBuildConfig](https://gsoft-inc.github.io/wl-web-configs/webpack/configure-build/) documentation first. !!!info -This function is a wrapper built on top of [@workleap/web-configs](https://www.npmjs.com/package/@workleap/webpack-configs). Make sure to read the [defineBuildConfig](https://gsoft-inc.github.io/wl-web-configs/webpack/configure-build/) documentation first. +If the application _**does not**_ not include any remote modules, use the [defineBuildConfig](https://gsoft-inc.github.io/wl-web-configs/webpack/configure-build/) function instead of `defineBuildHostConfig`. !!! ## Reference @@ -27,6 +27,10 @@ const webpackConfig = defineBuildHostConfig(swcConfig: {}, remotes: [], options? - `htmlWebpackPluginOptions`: An optional object literal accepting any options of the [HtmlWebpackPlugin](https://github.com/jantimon/html-webpack-plugin#options). - `features`: An optional object literal of feature switches to define additional shared dependencies. - `i18next`: Whether or not to add `@squide/i18next` as a shared dependency. + - `environmentVariables`: Whether or not to add `@squide/env-vars` as a shared dependency. + - `honeycomb`: Whether or not to add `@squide/firefly-honeycomb` as a shared dependency. + - `msw`: `false` to remove `@squide/msw` from shared dependencies. + - `runtimePlugins`: An optional array of module federation [runtime plugins](https://module-federation.io/plugin/dev/). - `sharedDependencies`: An optional object literal of additional (or updated) module federation shared dependencies. - `moduleFederationPluginOptions`: An optional object literal of [ModuleFederationPlugin](https://module-federation.io/configure/index.html) options. @@ -45,7 +49,7 @@ The `defineBuildHostConfig` function will add the following shared dependencies - [@squide/module-federation](https://www.npmjs.com/package/@squide/module-federation) - [@squide/msw](https://www.npmjs.com/package/@squide/msw) -For the full shared dependencies configuration, have a look at the [defineConfig.ts](https://github.com/gsoft-inc/wl-squide/blob/main/packages/firefly/src/defineConfig.ts) file on GitHub. +For the full shared dependencies configuration, have a look at the [defineConfig.ts](https://github.com/gsoft-inc/wl-squide/blob/main/packages/firefly-webpack-configs/src/defineConfig.ts) file on GitHub. ## Usage @@ -225,7 +229,7 @@ export default defineBuildHostConfig(swcConfig, Remotes, { The `name` option of a remote definition **must match** the `name` option defined in the remote module [ModuleFederationPlugin](https://module-federation.io/configure/index.html) configuration. -If you are relying on the Squide [defineBuildRemoteModuleConfig](../webpack/defineBuildRemoteModuleConfig.md) function to add the `ModuleFederationPlugin` to the remote module webpack [configuration object](https://module-federation.io/), then the remote module `name` is the second argument of the function. +If you are relying on the Squide [defineBuildRemoteModuleConfig](./defineBuildRemoteModuleConfig.md) function to add the `ModuleFederationPlugin` to the remote module webpack [configuration object](https://webpack.js.org/concepts/configuration/), then the remote module `name` is the second argument of the function. In the following exemple, the remote module `name` is `remote1`. diff --git a/docs/reference/webpack/defineBuildRemoteModuleConfig.md b/docs/reference/webpack/defineBuildRemoteModuleConfig.md index 45f232754..281e08cf0 100644 --- a/docs/reference/webpack/defineBuildRemoteModuleConfig.md +++ b/docs/reference/webpack/defineBuildRemoteModuleConfig.md @@ -6,11 +6,7 @@ toc: # defineBuildRemoteModuleConfig -Creates a webpack [configuration object](https://webpack.js.org/concepts/configuration/) that is adapted for a Squide remote module application in **build** mode. - -!!!info -This function is a wrapper built on top of [@workleap/web-configs](https://www.npmjs.com/package/@workleap/webpack-configs). Make sure to read the [defineBuildConfig](https://gsoft-inc.github.io/wl-web-configs/webpack/configure-build/) documentation first. -!!! +Creates a webpack [configuration object](https://webpack.js.org/concepts/configuration/) that is adapted for a Squide remote module application in **build** mode. This function is a wrapper built on top of [@workleap/webpack-configs](https://www.npmjs.com/package/@workleap/webpack-configs). Make sure to read the [defineBuildConfig](https://gsoft-inc.github.io/wl-web-configs/webpack/configure-build/) documentation first. ## Reference @@ -26,6 +22,9 @@ const webpackConfig = defineBuildRemoteModuleConfig(swcConfig: {}, applicationNa - Accepts most of webpack `definedDevConfig` [predefined options](https://gsoft-inc.github.io/wl-web-configs/webpack/configure-dev/#3-set-predefined-options). - `features`: An optional object literal of feature switches to define additional shared dependencies. - `i18next`: Whether or not to add `@squide/i18next` as a shared dependency. + - `environmentVariables`: Whether or not to add `@squide/env-vars` as a shared dependency. + - `honeycomb`: Whether or not to add `@squide/firefly-honeycomb` as a shared dependency. + - `msw`: `false` to remove `@squide/msw` from shared dependencies. - `sharedDependencies`: An optional object literal of additional (or updated) module federation shared dependencies. - `moduleFederationPluginOptions`: An optional object literal of [ModuleFederationPlugin](https://module-federation.io/configure/index.html) options. @@ -61,7 +60,7 @@ The `defineBuildRemoteModuleConfig` function will add the following shared depen - [@squide/module-federation](https://www.npmjs.com/package/@squide/module-federation) - [@squide/msw](https://www.npmjs.com/package/@squide/msw) -For the full shared dependencies configuration, have a look at the [defineConfig.ts](https://github.com/gsoft-inc/wl-squide/blob/main/packages/firefly/src/defineConfig.ts) file on Github. +For the full shared dependencies configuration, have a look at the [defineConfig.ts](https://github.com/gsoft-inc/wl-squide/blob/main/packages/firefly-webpack-configs/src/defineConfig.ts) file on Github. ## Usage diff --git a/docs/reference/webpack/defineDevHostConfig.md b/docs/reference/webpack/defineDevHostConfig.md index 891dd3dfa..9602b38d8 100644 --- a/docs/reference/webpack/defineDevHostConfig.md +++ b/docs/reference/webpack/defineDevHostConfig.md @@ -6,10 +6,10 @@ toc: # defineDevHostConfig -Creates a webpack [configuration object](https://webpack.js.org/concepts/configuration/) that is adapted for a Squide host application in **development** mode. +Creates a webpack [configuration object](https://webpack.js.org/concepts/configuration/) that is adapted for a Squide host application in **development** mode. This function is a wrapper built on top of [@workleap/webpack-configs](https://www.npmjs.com/package/@workleap/webpack-configs). Make sure to read the [defineDevConfig](https://gsoft-inc.github.io/wl-web-configs/webpack/configure-dev/) documentation first. !!!info -This function is a wrapper built on top of [@workleap/web-configs](https://www.npmjs.com/package/@workleap/webpack-configs). Make sure to read the [defineDevConfig](https://gsoft-inc.github.io/wl-web-configs/webpack/configure-dev/) documentation first. +If the application _**does not**_ not include any remote modules, use the [defineDevConfig](https://gsoft-inc.github.io/wl-web-configs/webpack/configure-dev/) function instead of `defineDevHostConfig`. !!! ## Reference @@ -28,6 +28,9 @@ const webpackConfig = defineDevHostConfig(swcConfig: {}, port, remotes: [], opti - `htmlWebpackPluginOptions`: An optional object literal accepting any options of the [HtmlWebpackPlugin](https://github.com/jantimon/html-webpack-plugin#options). - `features`: An optional object literal of feature switches to define additional shared dependencies. - `i18next`: Whether or not to add `@squide/i18next` as a shared dependency. + - `environmentVariables`: Whether or not to add `@squide/env-vars` as a shared dependency. + - `honeycomb`: Whether or not to add `@squide/firefly-honeycomb` as a shared dependency. + - `msw`: `false` to remove `@squide/msw` from shared dependencies. - `sharedDependencies`: An optional object literal of additional (or updated) module federation shared dependencies. - `moduleFederationPluginOptions`: An optional object literal of [ModuleFederationPlugin](https://module-federation.io/configure/index.html) options. @@ -46,7 +49,7 @@ The `defineDevHostConfig` function will add the following shared dependencies as - [@squide/module-federation](https://www.npmjs.com/package/@squide/module-federation) - [@squide/msw](https://www.npmjs.com/package/@squide/msw) -For the full shared dependencies configuration, have a look at the [defineConfig.ts](https://github.com/gsoft-inc/wl-squide/blob/main/packages/firefly/src/defineConfig.ts) file on Github. +For the full shared dependencies configuration, have a look at the [defineConfig.ts](https://github.com/gsoft-inc/wl-squide/blob/main/packages/firefly-webpack-configs/src/defineConfig.ts) file on Github. ## Usage @@ -226,7 +229,7 @@ export default defineDevHostConfig(swcConfig, 8080, Remotes, { The `name` option of a remote definition **must match** the `name` option defined in the remote module [ModuleFederationPlugin](https://module-federation.io/configure/index.html) configuration. -If you are relying on the Squide [defineDevRemoteModuleConfig](../webpack/defineDevRemoteModuleConfig.md) function to add the `ModuleFederationPlugin` to the remote module webpack [configuration object](https://module-federation.io/), then the remote module `name` is the second argument of the function. +If you are relying on the Squide [defineDevRemoteModuleConfig](./defineDevRemoteModuleConfig.md) function to add the `ModuleFederationPlugin` to the remote module webpack [configuration object](https://webpack.js.org/concepts/configuration/), then the remote module `name` is the second argument of the function. In the following exemple, the remote module `name` is `remote1`. diff --git a/docs/reference/webpack/defineDevRemoteModuleConfig.md b/docs/reference/webpack/defineDevRemoteModuleConfig.md index caf7ccacc..88c4ac073 100644 --- a/docs/reference/webpack/defineDevRemoteModuleConfig.md +++ b/docs/reference/webpack/defineDevRemoteModuleConfig.md @@ -6,11 +6,7 @@ toc: # defineDevRemoteModuleConfig -Creates a webpack [configuration object](https://webpack.js.org/concepts/configuration/) that is adapted for a Squide remote module application in **development** mode. - -!!!info -This function is a wrapper built on top of [@workleap/web-configs](https://www.npmjs.com/package/@workleap/webpack-configs). Make sure to read the [defineDevConfig](https://gsoft-inc.github.io/wl-web-configs/webpack/configure-dev/) documentation first. -!!! +Creates a webpack [configuration object](https://webpack.js.org/concepts/configuration/) that is adapted for a Squide remote module application in **development** mode. This function is a wrapper built on top of [@workleap/webpack-configs](https://www.npmjs.com/package/@workleap/webpack-configs). Make sure to read the [defineDevConfig](https://gsoft-inc.github.io/wl-web-configs/webpack/configure-dev/) documentation first. ## Reference @@ -27,6 +23,9 @@ const webpackConfig = defineDevRemoteModuleConfig(swcConfig: {}, applicationName - Accepts most of webpack `definedDevConfig` [predefined options](https://gsoft-inc.github.io/wl-web-configs/webpack/configure-dev/#3-set-predefined-options). - `features`: An optional object literal of feature switches to define additional shared dependencies. - `i18next`: Whether or not to add `@squide/i18next` as a shared dependency. + - `environmentVariables`: Whether or not to add `@squide/env-vars` as a shared dependency. + - `honeycomb`: Whether or not to add `@squide/firefly-honeycomb` as a shared dependency. + - `msw`: `false` to remove `@squide/msw` from shared dependencies. - `sharedDependencies`: An optional object literal of additional (or updated) module federation shared dependencies. - `moduleFederationPluginOptions`: An optional object literal of [ModuleFederationPlugin](https://module-federation.io/configure/index.html) options. @@ -62,7 +61,7 @@ The `defineDevRemoteModuleConfig` function will add the following shared depende - [@squide/module-federation](https://www.npmjs.com/package/@squide/module-federation) - [@squide/msw](https://www.npmjs.com/package/@squide/msw) -For the full shared dependencies configuration, have a look at the [defineConfig.ts](https://github.com/gsoft-inc/wl-squide/blob/main/packages/firefly/src/defineConfig.ts) file on Github. +For the full shared dependencies configuration, have a look at the [defineConfig.ts](https://github.com/gsoft-inc/wl-squide/blob/main/packages/firefly-webpack-configs/src/defineConfig.ts) file on Github. ## Usage diff --git a/docs/upgrading/default.md b/docs/upgrading/default.md index b28770479..225552270 100644 --- a/docs/upgrading/default.md +++ b/docs/upgrading/default.md @@ -8,3 +8,5 @@ expanded: true - [Migrate to firefly v9.0](./migrate-to-firefly-v9.0.md) - [Migrate to firefly v9.3](./migrate-to-firefly-v9.3.md) +- [Migrate to Rsbuild](./migrate-to-rsbuild.md) [!badge variant="danger" size="xs" text="experimental"] +- [Migrate to Just-In-Time packages](./migrate-to-jit-packages.md) diff --git a/docs/upgrading/migrate-to-jit-packages.md b/docs/upgrading/migrate-to-jit-packages.md new file mode 100644 index 000000000..b826f8c7d --- /dev/null +++ b/docs/upgrading/migrate-to-jit-packages.md @@ -0,0 +1,235 @@ +--- +order: 850 +label: Migrate to JIT packages +--- + +# Migrate to Just-In-Time packages + +Using [Just-in-Time packages](https://www.shew.dev/monorepos/packaging/jit) is a great way to reduce the configuration complexity of your monorepo. Using a Just-In-Time package strategy allows you to directly consume TypeScript files from library projects into applications without having to pre-compile them. Instead, the applications themselves will compile the TypeScript packages at build time. + +> For more information about Just-in-Time packages, refer to this [documentation](https://www.shew.dev/monorepos/packaging/jit). + +To migrate your library projects (e.g., utility packages, shared packages, local modules, etc.) to JIT packages, based on your project type, execute the following steps :point_down: + +## Internal package + +### Remove packages + +Open a terminal at the root of the host application project and remove the following packages: + ++++ pnpm +```bash +pnpm remove -D @workleap/tsup-configs tsup nodemon +``` ++++ yarn +```bash +yarn remove -D @workleap/tsup-configs tsup nodemon +``` ++++ npm +```bash +npm uninstall -D @workleap/tsup-configs tsup nodemon +``` ++++ + +### Update files + +``` +library +├── src +├──── index.ts +├── tsup.build.ts --> X +├── tsup.dev.ts --> X +├── nodemond.json --> X +├── package.json +``` + +#### `package.json` + +Open the `package.json` file and update the `exports` field to point to the library project's entry file. In this example, the entry file is `index.ts`. + +Before: + +```json package.json +"exports": { + ".": { + "import": "./dist/index.js", + "types": "./dist/index.d.ts", + "default": "./dist/index.js" + } +} +``` + +After: + +```json package.json +"exports": "./src/index.ts" +``` + +#### `tsconfig.json` + +Open the `tsconfig.json` file and remove the `compilerOptions.paths` entries for library projects that enabled are Just-In-Time. + +Before: + +```json !#4-9 tsconfig.json +{ + "extends": "@workleap/typescript-configs/library.json", + "compilerOptions": { + "paths": { + "@squide/core": ["../core/src/index.ts"], + "@squide/react-router": ["../react-router/src/index.ts"], + "@squide/module-federation": ["../module-federation/src/index.ts"], + "@squide/msw": ["../msw/src/index.ts"] + } + }, + "exclude": ["dist", "node_modules"] +} +``` + +After: + +```json tsconfig.json +{ + "extends": "@workleap/typescript-configs/library.json", + "exclude": ["dist", "node_modules"] +} +``` + +#### `tsup.build.ts` + +Delete the `tsup.build.ts` file. + +#### `tsup.dev.ts` + +Delete the `tsup.dev.ts` file. + +#### `nodemon.json` (optional) + +Delete the `nodemon.json` file. + +### Update scripts + +Remove the `dev` and `build` scripts. + +## Registry package + +### Remove packages (optional) + +Open a terminal at the root of the host application project and remove the following packages: + ++++ pnpm +```bash +pnpm remove -D nodemon +``` ++++ yarn +```bash +yarn remove -D nodemon +``` ++++ npm +```bash +npm uninstall -D nodemon +``` ++++ + +### Update files + +``` +library +├── src +├──── index.ts +├── tsup.build.ts +├── tsup.dev.ts --> X +├── nodemond.json --> X +├── package.json +``` + +#### `package.json` + +Open the `package.json` file and move the `export` field value to the [publishConfig](https://pnpm.io/package_json#publishconfig) field. + +Before: + +```json package.json +"publishConfig": { + "access": "public", + "provenance": true +} +``` + +After: + +```json package.json +"publishConfig": { + "access": "public", + "provenance": true, + "exports": { + ".": { + "import": "./dist/index.js", + "types": "./dist/index.d.ts", + "default": "./dist/index.js" + } + } +} +``` + +Then, update the `exports` field to point to the library project's entry file. In this example, the entry file is `index.ts`. + +Before: + +```json package.json +"exports": { + ".": { + "import": "./dist/index.js", + "types": "./dist/index.d.ts", + "default": "./dist/index.js" + } +} +``` + +After: + +```json package.json +"exports": "./src/index.ts" +``` + +#### `tsconfig.json` + +Open the `tsconfig.json` file and remove the `compilerOptions.paths` entries for library projects that enabled are Just-In-Time. + +Before: + +```json !#4-9 tsconfig.json +{ + "extends": "@workleap/typescript-configs/library.json", + "compilerOptions": { + "paths": { + "@squide/core": ["../core/src/index.ts"], + "@squide/react-router": ["../react-router/src/index.ts"], + "@squide/module-federation": ["../module-federation/src/index.ts"], + "@squide/msw": ["../msw/src/index.ts"] + } + }, + "exclude": ["dist", "node_modules"] +} +``` + +After: + +```json tsconfig.json +{ + "extends": "@workleap/typescript-configs/library.json", + "exclude": ["dist", "node_modules"] +} +``` + +#### `tsup.dev.ts` + +Delete the `tsup.dev.ts` file. + +#### `nodemon.json` (optional) + +Delete the `nodemon.json` file. + +### Update scripts + +Remove the `dev` script. diff --git a/docs/upgrading/migrate-to-rsbuild.md b/docs/upgrading/migrate-to-rsbuild.md new file mode 100644 index 000000000..e72e6afe3 --- /dev/null +++ b/docs/upgrading/migrate-to-rsbuild.md @@ -0,0 +1,610 @@ +--- +order: 900 +label: Migrate to Rsbuild +--- + +# Migrate to Rsbuild + +!!!danger +This is an experimental feature. +!!! + +[Rsbuild](https://lib.rsbuild.dev/index) is a high-performance build tool powered by [Rspack](https://rspack.dev/), a Rust-based port of [webpack](https://webpack.js.org/) designed for efficiency and speed. Squide firefly introduces a new [@squide/firefly-rsbuild-configs](https://www.npmjs.com/package/@squide/firefly-rsbuild-configs) package to improve it's developer experience with modern web development tooling. This package provides ready-to-use Rsbuild configurations specifically tailored for Squide applications. + +To migrate from [@squide/firefly-webpack-configs](https://www.npmjs.com/package/@squide/firefly-webpack-configs) to `@squide/firefly-rsbuild-configs`, based on your project type, execute the following steps :point_down: + +## Host application + +### Update packages + +Open a terminal at the root of the host application project and install the following packages: + ++++ pnpm +```bash +pnpm add -D @squide/firefly-rsbuild-configs @rsbuild/core @rspack/core +``` ++++ yarn +```bash +yarn add -D @squide/firefly-rsbuild-configs @rsbuild/core @rspack/core +``` ++++ npm +```bash +npm install -D @squide/firefly-rsbuild-configs @rsbuild/core @rspack/core +``` ++++ + +Then, in the same terminal, remove the following packages: + ++++ pnpm +```bash +pnpm remove @squide/firefly-webpack-configs @swc/core @swc/helpers @workleap/swc-configs webpack webpack-cli webpack-dev-server +``` ++++ yarn +```bash +yarn remove @squide/firefly-webpack-configs @swc/core @swc/helpers @workleap/swc-configs webpack webpack-cli webpack-dev-server +``` ++++ npm +```bash +npm uninstall @squide/firefly-webpack-configs @swc/core @swc/helpers @workleap/swc-configs webpack webpack-cli webpack-dev-server +``` ++++ + +!!!warning +If your host application project uses SWC for tests, you may want to keep the `@swc/core` and `@workleap/swc-configs` packages. +!!! + +### Update files + +``` +host +├── public +├── src +├──── index.ts --> X +├──── bootstrap.tsx --> index.tsx +├── webpack.dev.js --> rsbuild.dev.ts +├── webpack.build.js --> rsbuild.build.ts +├── webpack.common.js --> rsbuild.common.ts +├── swc.build.js --> X +├── swc.dev.js --> X +├── package.json +``` + +#### `webpack.build.js` + +Rename the file from `webpack.build.js` to `rsbuild.build.ts`. + +Then, open the `rsbuild.build.ts` file and apply the following changes: + +- Replace `"@squide/firefly-webpack-configs"` for `"@squide/firefly-rsbuild-configs"`. +- Remove `import { swcConfig } from "./swc.build.js"`. +- Remove the first argument of the `defineBuildHostConfig` function. +- Remove `// @ts-check`. + +Before: + +```js webpack.build.js +// @ts-check + +import { defineBuildHostConfig } from "@squide/firefly-webpack-configs"; +import { swcConfig } from "./swc.build.js"; + +export default defineBuildHostConfig(swcConfig, []); +``` + +After: + +```ts rsbuild.build.ts +import { defineBuildHostConfig } from "@squide/firefly-rsbuild-configs"; + +export default defineBuildHostConfig([]); +``` + +#### `webpack.dev.js` + +Rename the file from `webpack.dev.js` to `rsbuild.dev.ts`. + +Then, open the `rsbuild.build.ts` file and and apply the following changes: + +- Replace `"@squide/firefly-webpack-configs"` for `"@squide/firefly-rsbuild-configs"`. +- Remove `import { swcConfig } from "./swc.build.js"`. +- Remove the first argument of the `defineDevHostConfig` function. +- Remove `// @ts-check`. + +Before: + +```js webpack.dev.js +// @ts-check + +import { defineDevHostConfig } from "@squide/firefly-webpack-configs"; +import { swcConfig } from "./swc.dev.js"; + +export default defineDevHostConfig(swcConfig, 8080, Remotes); +``` + +After: + +```ts rsbuild.dev.ts +import { defineDevHostConfig } from "@squide/firefly-rsbuild-configs"; + +export default defineDevHostConfig(8080, Remotes); +``` + +#### `webpack.common.js` (optional) + +Rename the file from `webpack.common.js` to `rsbuild.common.ts`. + +Then, open the `rsbuild.common.ts` file and and apply the following changes: + +- Use typings for `ModuleFederationShared`. +- Use typings for `Features`. +- Remove `// @ts-check`. + +Before: + +```js webpack.common.js +// @ts-check + +export function getSharedDependencies() { + return { + "@endpoints/shared": { + singleton: true, + eager: true + } + }; +} + +/** + * @type {import("@squide/firefly-webpack-configs").FireflyFeatures} + */ +export const features = { + i18next: true, + environmentVariables: true, + honeycomb: true +}; +``` + +After: + +```ts rsbuild.common.ts +import type { Features, ModuleFederationShared } from "@squide/firefly-rsbuild-configs"; + +export function getSharedDependencies() { + return { + "@endpoints/layouts": { + singleton: true, + eager: true + }, + "@endpoints/shared": { + singleton: true, + eager: true + } + } as ModuleFederationShared; +} + +export const features: Features = { + i18next: true, + environmentVariables: true, + honeycomb: true +}; +``` + +#### `swc.build.js` + +Delete the `swc.build.js` file. + +#### `swc.dev.js` + +Delete the `swc.dev.js` file. + +#### `index.ts` + +Delete the `index.ts` file. + +#### `bootstrap.tsx` + +Rename the `bootstrap.tsx` file for `index.tsx`. + +### Update scripts + +#### `build` + +Update the `build` script to run Rsbuild instead of webpack. + +Before: + +```json package.json +"scripts": { + "build": "webpack --config webpack.build.js" +} +``` + +After: + +```json package.json +"scripts": { + "build": "rsbuild build --config rsbuild.build.ts" +} +``` + +#### `dev` + +Update the `dev` script to run Rsbuild instead of webpack. + +Before: + +```json package.json +"scripts": { + "dev": "webpack serve --config webpack.dev.js" +} +``` + +After: + +```json package.json +"scripts": { + "dev": "rsbuild dev --config rsbuild.dev.ts" +} +``` + +### Try it :rocket: + +Start the application in a development environment using the `dev` script. Everything should run smoothly and you should see the homepage of your application. Even if the remote modules of your application are still bundled with webpack, they should be available. + +## Remote module + +### Update packages + +Open a terminal at the root of the remote module project and install the following packages: + ++++ pnpm +```bash +pnpm add -D @squide/firefly-rsbuild-configs @rsbuild/core +``` ++++ yarn +```bash +yarn add -D @squide/firefly-rsbuild-configs @rsbuild/core +``` ++++ npm +```bash +npm install -D @squide/firefly-rsbuild-configs @rsbuild/core +``` ++++ + +Then, in the same terminal, remove the following packages: + ++++ pnpm +```bash +pnpm remove @squide/firefly-webpack-configs @swc/core @swc/helpers @workleap/swc-configs webpack webpack-cli webpack-dev-server +``` ++++ yarn +```bash +yarn remove @squide/firefly-webpack-configs @swc/core @swc/helpers @workleap/swc-configs webpack webpack-cli webpack-dev-server +``` ++++ npm +```bash +npm uninstall @squide/firefly-webpack-configs @swc/core @swc/helpers @workleap/swc-configs webpack webpack-cli webpack-dev-server +``` ++++ + +!!!warning +If your remote module project uses SWC for tests, you may want to keep the `@swc/core` and `@workleap/swc-configs` packages. +!!! + +### Update files + +``` +remote-module +├── public +├── src +├── webpack.dev.js --> rsbuild.dev.ts +├── webpack.build.js --> rsbuild.build.ts +├── webpack.common.js --> rsbuild.common.ts +├── swc.build.js --> X +├── swc.dev.js --> X +├── package.json +``` + +#### `webpack.build.js` + +Rename the file from `webpack.build.js` to `rsbuild.build.ts`. + +Then, open the `rsbuild.build.ts` file and apply the following changes: + +- Replace `"@squide/firefly-webpack-configs"` for `"@squide/firefly-rsbuild-configs"`. +- Remove `import { swcConfig } from "./swc.build.js"`. +- Remove the first argument of the `defineBuildRemoteModuleConfig` function. +- Remove `// @ts-check`. + +Before: + +```js webpack.build.js +// @ts-check + +import { defineBuildRemoteModuleConfig } from "@squide/firefly-webpack-configs"; +import { swcConfig } from "./swc.build.js"; + +export default defineBuildRemoteModuleConfig(swcConfig, "remote1"); +``` + +After: + +```ts rsbuild.build.ts +import { defineBuildRemoteModuleConfig } from "@squide/firefly-rsbuild-configs"; + +export default defineBuildRemoteModuleConfig("remote1"); +``` + +#### `webpack.dev.js` + +Rename the file from `webpack.dev.js` to `rsbuild.dev.ts`. + +Then, open the `rsbuild.dev.ts` file and apply the following changes: + +- Replace `"@squide/firefly-webpack-configs"` for `"@squide/firefly-rsbuild-configs"`. +- Remove `import { swcConfig } from "./swc.dev.js"`. +- Remove the first argument of the `defineDevRemoteModuleConfig` function. +- Remove `// @ts-check`. + +Before: + +```js webpack.dev.js +// @ts-check + +import { defineDevRemoteModuleConfig } from "@squide/firefly-webpack-configs"; +import { swcConfig } from "./swc.dev.js"; + +export default defineDevRemoteModuleConfig(swcConfig, "remote1", 8081); +``` + +After: + +```ts rsbuild.dev.ts +import { defineDevRemoteModuleConfig } from "@squide/firefly-webpack-configs"; + +export default defineDevRemoteModuleConfig("remote1", 8081); +``` + +#### `webpack.common.js` (optional) + +Rename the file from `webpack.common.js` to `rsbuild.common.ts`. + +Then, open the `rsbuild.common.ts` file and and apply the following changes: + +- Use typings for `ModuleFederationShared`. +- Use typings for `Features`. +- Remove `// @ts-check`. + +Before: + +```js webpack.common.js +// @ts-check + +export function getSharedDependencies() { + return { + "@endpoints/shared": { + singleton: true, + eager: true + } + }; +} + +/** + * @type {import("@squide/firefly-webpack-configs").FireflyFeatures} + */ +export const features = { + i18next: true, + environmentVariables: true, + honeycomb: true +}; +``` + +After: + +```ts rsbuild.common.ts +import type { Features, ModuleFederationShared } from "@squide/firefly-rsbuild-configs"; + +export function getSharedDependencies() { + return { + "@endpoints/layouts": { + singleton: true, + eager: true + }, + "@endpoints/shared": { + singleton: true, + eager: true + } + } as ModuleFederationShared; +} + +export const features: Features = { + i18next: true, + environmentVariables: true, + honeycomb: true +}; +``` + +#### `swc.build.js` + +Delete the `swc.build.js` file. + +#### `swc.dev.js` + +Delete the `swc.dev.js` file. + +### Update scripts + +#### `build` + +Update the `build` script to run Rsbuild instead of webpack. + +Before: + +```json package.json +"scripts": { + "build": "webpack --config webpack.build.js" +} +``` + +After: + +```json package.json +"scripts": { + "build": "rsbuild build --config rsbuild.build.ts" +} +``` + +#### `dev` + +Update the `dev` script to run Rsbuild instead of webpack. + +Before: + +```json package.json +"scripts": { + "dev": "webpack serve --config webpack.dev.js" +} +``` + +After: + +```json package.json +"scripts": { + "dev": "rsbuild dev --config rsbuild.dev.ts" +} +``` + +### Try it :rocket: + +Start the host application and the migrated remote module in development mode using the `dev` script. Everything should run smoothly and you should see the homepage of your application. Even if the host application is still bundled with webpack, the application should be available. + +## Local module + +### Update packages + +Open a terminal at the root of the local module project and install the following packages: + ++++ pnpm +```bash +pnpm add -D @squide/firefly-rsbuild-configs @rsbuild/core +``` ++++ yarn +```bash +yarn add -D @squide/firefly-rsbuild-configs @rsbuild/core +``` ++++ npm +```bash +npm install -D @squide/firefly-rsbuild-configs @rsbuild/core +``` ++++ + +Then, in the same terminal, remove the following packages: + ++++ pnpm +```bash +pnpm remove @squide/firefly-webpack-configs @swc/core @swc/helpers @workleap/swc-configs webpack webpack-cli webpack-dev-server +``` ++++ yarn +```bash +yarn remove @squide/firefly-webpack-configs @swc/core @swc/helpers @workleap/swc-configs webpack webpack-cli webpack-dev-server +``` ++++ npm +```bash +npm uninstall @squide/firefly-webpack-configs @swc/core @swc/helpers @workleap/swc-configs webpack webpack-cli webpack-dev-server +``` ++++ + +!!!info +If your local module project uses SWC for tests, you may want to keep the `@swc/core` and `@workleap/swc-configs` packages. +!!! + +!!!warning +While you can use any package manager to develop an application with Squide, it is highly recommended that you use [PNPM](https://pnpm.io/) as the guides has been developed and tested with PNPM. +!!! + +### Update files + +``` +local-module +├── public +├── src +├── webpack.config.js --> rsbuild.config.ts +├── swc.config.js --> X +├── package.json +``` + +#### `webpack.config.js` + +Rename the file from `webpack.config.js` to `rsbuild.config.ts`. + +Then, open the `rsbuild.config.ts` file and apply the following changes: + +- Replace `"@squide/firefly-webpack-configs"` for `"@squide/firefly-rsbuild-configs"`. +- Remove `import { swcConfig } from "./swc.dev.js"`. +- Remove the first argument of the `defineDevRemoteModuleConfig` function. +- Remove `// @ts-check`. + +Before: + +```js webpack.config.js +// @ts-check + +import { defineDevHostConfig } from "@squide/firefly-webpack-configs"; +import path from "node:path"; +import { swcConfig } from "./swc.config.js"; + +export default defineDevHostConfig(swcConfig, 8080, [], { + entry: path.resolve("./src/dev/index.tsx") +}); +``` + +After: + +```ts rsbuild.config.ts +import { defineDevHostConfig } from "@squide/firefly-rsbuild-configs"; +import path from "node:path"; + +export default defineDevHostConfig(8080, [], { + entry: { + index: path.resolve("./src/dev/index.tsx") + } +}); +``` + +#### `swc.config.js` + +Delete the `swc.config.js` file. + +### Update scripts + +#### `dev-isolated` + +Update the `dev-isolated` script to run Rsbuild instead of webpack. + +Before: + +```json package.json +"scripts": { + "dev-isolated": "webpack serve --config webpack.config.js" +} +``` + +After: + +```json package.json +"scripts": { + "dev-isolated": "rsbuild dev --config rsbuild.config.ts" +} +``` + +### Try it :rocket: + +Start the host application and the migrated local module in development mode using the `dev` script. Everything should run smoothly and you should see the homepage of your application. Even if the host application is still bundled with webpack, the application should be available. + +## Sample applications + +For additional examples, have a look at Squide's sample applications: + +- :icon-mark-github: [basic](https://github.com/gsoft-inc/wl-squide/tree/main/samples/basic) +- :icon-mark-github: [endpoints](https://github.com/gsoft-inc/wl-squide/tree/main/samples/endpoints) + + diff --git a/jest.config.ts b/jest.config.ts deleted file mode 100644 index 065dd019d..000000000 --- a/jest.config.ts +++ /dev/null @@ -1,12 +0,0 @@ -import type { Config } from "jest"; - -const config: Config = { - projects: [ - "/packages/*" - ], - testRegex: "/tests/*/.*\\.test\\.(ts|tsx)$", - testPathIgnorePatterns: ["/node_modules/", "/dist/"], - verbose: true -}; - -export default config; diff --git a/knip.ts b/knip.ts index d93ac61cb..a781e92c7 100644 --- a/knip.ts +++ b/knip.ts @@ -67,8 +67,8 @@ const configurePackage: KnipTransformer = config => { return { ...config, eslint: true, - tsup: { - config: ["tsup.*.ts"] + rsbuild: { + config: ["rsbuild.*.ts"] } }; }; diff --git a/package.json b/package.json index dc67987fd..887b012aa 100644 --- a/package.json +++ b/package.json @@ -6,57 +6,58 @@ "type": "module", "license": "Apache-2.0", "scripts": { - "dev": "turbo run dev --filter=./packages/* --concurrency 12", - "build": "turbo run build --filter=./packages/*", - "ci-build": "turbo run build --filter=./packages/* --cache-dir=node_modules/.cache/turbo", - "test-no-build": "jest", - "pretest": "turbo run build --filter=./packages/*", - "test": "jest", - "prelint": "turbo run build --filter=!@getting-started/*", - "lint": "pnpm run \"/^lint:.*/\"", - "lint:eslint": "eslint . --max-warnings=-0 --cache --cache-location node_modules/.cache/eslint", - "lint:knip": "knip --cache --cache-location node_modules/.cache/knip", - "lint:installed-check": "installed-check --engine-check --version-check", - "lint:types": "pnpm -r --parallel --include-workspace-root exec tsc", - "changeset": "changeset", - "publish-pkg": "changeset publish", - "clean": "pnpm -r --parallel --include-workspace-root exec pnpm dlx rimraf dist .turbo .netlify node_modules/.cache", - "reset": "pnpm clean && pnpm reset:modules", - "reset:modules": "pnpm -r --parallel --include-workspace-root exec pnpm dlx rimraf node_modules pnpm-lock.yaml", - "dev-basic": "turbo run dev --filter=./samples/basic/*", + "dev-pkg": "turbo dev --filter=./packages/*", + "dev-basic": "turbo dev --filter=./samples/basic/*", + "dev-basic-webpack": "turbo dev --filter=./samples/basic-webpack/*", + "dev-basic-mix": "turbo dev --filter=./samples/basic-mix/*", + "dev-endpoints": "turbo dev --filter=./samples/endpoints/*", + "dev-docs": "retype start", + "build-pkg": "turbo run build --filter=./packages/*", "build-basic": "turbo run build --filter=./samples/basic/*", - "ci-build-basic": "turbo run build --filter=./samples/basic/* --cache-dir=node_modules/.cache/turbo", - "serve-basic": "turbo run serve-build --filter=./samples/basic/*", - "deploy-basic": "cross-env NETLIFY=true turbo run deploy --filter=./samples/basic/*", - "dev-endpoints": "turbo run dev --filter=./samples/endpoints/*", + "build-basic-webpack": "turbo run build --filter=./samples/basic-webpack/*", + "build-basic-mix": "turbo run build --filter=./samples/basic-mix/*", "build-endpoints": "turbo run build --filter=./samples/endpoints/*", - "ci-build-endpoints": "turbo run build --filter=./samples/endpoints/* --cache-dir=node_modules/.cache/turbo", + "serve-basic": "turbo run serve-build --filter=./samples/basic/*", + "serve-basic-webpack": "turbo run serve-build --filter=./samples/basic-webpack/*", + "serve-basic-mix": "turbo run serve-build --filter=./samples/basic-mix/*", "serve-endpoints": "turbo run serve-build --filter=./samples/endpoints/*", + "deploy-basic": "cross-env NETLIFY=true turbo run deploy --filter=./samples/basic/*", "deploy-endpoints": "cross-env NETLIFY=true turbo run deploy --filter=./samples/endpoints/*", "deploy-endpoints-isolated": "cross-env NETLIFY=true turbo run deploy-isolated --filter=./samples/endpoints/*", - "dev-docs": "retype start", - "list-outdated-deps": "pnpm outdated -r --format list !eslint !useless-lib !turbo !typescript", - "update-outdated-deps": "pnpm update -r --latest !eslint !useless-lib !turbo !typescript" + "lint": "turbo run lint --continue", + "eslint": "eslint . --ignore-pattern packages --ignore-pattern samples --ignore-pattern templates --max-warnings=-0 --cache --cache-location node_modules/.cache/eslint", + "typecheck": "tsc", + "syncpack": "syncpack lint", + "knip": "knip --cache --cache-location ./node_modules/.cache/knip", + "test": "turbo run test --continue", + "changeset": "changeset", + "publish-pkg": "changeset publish", + "publish-pr-pkg": "pkg-pr-new publish ./packages/* --packageManager=pnpm --pnpm", + "clean": "pnpm -r --parallel --include-workspace-root exec pnpm dlx rimraf dist .turbo .rslib .netlify public/mockServiceWorker.js node_modules/.cache", + "reset": "pnpm clean && pnpm reset:modules", + "reset:modules": "pnpm -r --parallel --include-workspace-root exec pnpm dlx rimraf node_modules pnpm-lock.yaml", + "list-outdated-deps": "pnpm outdated -r --format list !eslint !useless-lib !typescript !react-router-dom", + "update-outdated-deps": "pnpm update -r --latest !eslint !useless-lib !typescript !react-router-dom" }, "devDependencies": { "@changesets/changelog-github": "0.5.0", - "@changesets/cli": "2.27.9", - "@types/node": "22.9.0", - "@typescript-eslint/parser": "8.13.0", - "@workleap/eslint-plugin": "3.2.3", + "@changesets/cli": "2.27.10", + "@types/node": "22.10.2", + "@typescript-eslint/parser": "8.18.0", + "@workleap/eslint-plugin": "3.2.5", "@workleap/typescript-configs": "3.0.2", "cross-env": "7.0.3", "eslint": "8.57.0", "installed-check": "9.3.0", - "jest": "29.7.0", - "knip": "5.36.2", + "knip": "5.40.0", + "pkg-pr-new": "0.0.37", "retypeapp": "3.6.0", - "ts-node": "10.9.2", - "turbo": "1.13.3", + "syncpack": "13.0.0", + "turbo": "2.3.3", "typescript": "5.5.4" }, "engines": { - "node": ">=21.1.0", + "node": ">=22.0.0", "pnpm": ">=9" }, "packageManager": "pnpm@9.5.0+sha512.140036830124618d624a2187b50d04289d5a087f326c9edfc0ccd733d76c4f52c3a313d4fc148794a2a9d81553016004e6742e8cf850670268a7387fc220c903" diff --git a/packages/core/.eslintignore b/packages/core/.eslintignore new file mode 100644 index 000000000..de4d1f007 --- /dev/null +++ b/packages/core/.eslintignore @@ -0,0 +1,2 @@ +dist +node_modules diff --git a/packages/core/jest.config.ts b/packages/core/jest.config.ts index 529588f53..31da15c64 100644 --- a/packages/core/jest.config.ts +++ b/packages/core/jest.config.ts @@ -2,10 +2,13 @@ import type { Config } from "jest"; import { swcConfig } from "./swc.jest.ts"; const config: Config = { + testRegex: "/tests/*/.*\\.test\\.(ts|tsx)$", + testPathIgnorePatterns: ["/node_modules/", "/dist/"], transform: { "^.+\\.(js|ts)$": ["@swc/jest", swcConfig as Record] }, - cacheDirectory: "./node_modules/.cache/jest" + cacheDirectory: "./node_modules/.cache/jest", + verbose: true }; export default config; diff --git a/packages/core/package.json b/packages/core/package.json index e670b0da1..232c55fae 100644 --- a/packages/core/package.json +++ b/packages/core/package.json @@ -9,49 +9,53 @@ "url": "git+https://github.com/gsoft-inc/wl-squide.git", "directory": "packages/core" }, + "type": "module", "publishConfig": { "access": "public", - "provenance": true - }, - "type": "module", - "exports": { - ".": { - "types": "./dist/index.d.ts", - "import": "./dist/index.js", - "default": "./dist/index.js" + "provenance": true, + "exports": { + ".": { + "types": "./dist/index.d.ts", + "import": "./dist/index.js", + "default": "./dist/index.js" + } } }, + "exports": "./src/index.ts", "files": [ "/dist", "CHANGELOG.md", "README.md" ], "scripts": { - "dev": "tsup --config ./tsup.dev.ts", - "build": "tsup --config ./tsup.build.ts" + "build": "rslib build --config ./rslib.build.ts", + "eslint": "eslint . --max-warnings=-0 --cache --cache-location node_modules/.cache/eslint", + "typecheck": "tsc", + "test": "jest" }, "peerDependencies": { - "react": "*", - "react-dom": "*" + "react": "*" + }, + "dependencies": { + "@types/react": "19.0.1", + "eventemitter3": "5.0.1" }, "devDependencies": { - "@swc/core": "1.8.0", + "@rsbuild/plugin-react": "1.1.0", + "@rslib/core": "0.1.4", + "@swc/core": "1.10.1", "@swc/jest": "0.2.37", "@types/jest": "29.5.14", - "@types/react": "18.3.12", - "@workleap/eslint-plugin": "3.2.3", + "@typescript-eslint/parser": "8.18.0", + "@workleap/eslint-plugin": "3.2.5", "@workleap/swc-configs": "2.2.3", - "@workleap/tsup-configs": "3.0.6", "@workleap/typescript-configs": "3.0.2", "eslint": "8.57.0", "jest": "29.7.0", - "react": "18.3.1", - "tsup": "8.3.5", + "react": "19.0.0", + "ts-node": "10.9.2", "typescript": "5.5.4" }, - "dependencies": { - "eventemitter3": "5.0.1" - }, "sideEffects": false, "engines": { "node": ">=21.1.0" diff --git a/packages/core/rslib.build.ts b/packages/core/rslib.build.ts new file mode 100644 index 000000000..43144dcb9 --- /dev/null +++ b/packages/core/rslib.build.ts @@ -0,0 +1,26 @@ +import { pluginReact } from "@rsbuild/plugin-react"; +import { defineConfig } from "@rslib/core"; + +export default defineConfig({ + lib: [{ + format: "esm", + syntax: "esnext", + bundle: false, + dts: true + }], + source: { + entry: { + index: "./src/**" + }, + tsconfigPath: "./tsconfig.build.json" + }, + output: { + target: "web", + distPath: { + root: "./dist" + }, + cleanDistPath: true, + minify: false + }, + plugins: [pluginReact()] +}); diff --git a/packages/core/tsconfig.build.json b/packages/core/tsconfig.build.json new file mode 100644 index 000000000..63879d6a7 --- /dev/null +++ b/packages/core/tsconfig.build.json @@ -0,0 +1,5 @@ +{ + "extends": "@workleap/typescript-configs/library.json", + "include": ["src"], + "exclude": ["dist", "node_modules"] +} diff --git a/packages/core/tsconfig.json b/packages/core/tsconfig.json index 02c33279e..1ace09268 100644 --- a/packages/core/tsconfig.json +++ b/packages/core/tsconfig.json @@ -1,4 +1,8 @@ { "extends": "@workleap/typescript-configs/library.json", + "compilerOptions": { + "incremental": true, + "tsBuildInfoFile": "node_modules/.cache/tsbuildinfo.json" + }, "exclude": ["dist", "node_modules"] } diff --git a/packages/core/tsup.build.ts b/packages/core/tsup.build.ts deleted file mode 100644 index 1b2c65a89..000000000 --- a/packages/core/tsup.build.ts +++ /dev/null @@ -1,3 +0,0 @@ -import { defineBuildConfig } from "@workleap/tsup-configs"; - -export default defineBuildConfig(); diff --git a/packages/core/tsup.dev.ts b/packages/core/tsup.dev.ts deleted file mode 100644 index 8aa2904c8..000000000 --- a/packages/core/tsup.dev.ts +++ /dev/null @@ -1,3 +0,0 @@ -import { defineDevConfig } from "@workleap/tsup-configs"; - -export default defineDevConfig(); diff --git a/packages/env-vars/.eslintignore b/packages/env-vars/.eslintignore new file mode 100644 index 000000000..de4d1f007 --- /dev/null +++ b/packages/env-vars/.eslintignore @@ -0,0 +1,2 @@ +dist +node_modules diff --git a/packages/env-vars/jest.config.ts b/packages/env-vars/jest.config.ts index 092a9b4af..802ac7b23 100644 --- a/packages/env-vars/jest.config.ts +++ b/packages/env-vars/jest.config.ts @@ -1,9 +1,9 @@ import type { Config } from "jest"; -import { pathsToModuleNameMapper } from "ts-jest"; import { swcConfig } from "./swc.jest.ts"; -import { compilerOptions } from "./tsconfig.json"; const config: Config = { + testRegex: "/tests/*/.*\\.test\\.(ts|tsx)$", + testPathIgnorePatterns: ["/node_modules/", "/dist/"], testEnvironment: "jsdom", transformIgnorePatterns: [ "node_modules/(?!.pnpm|memoize|mimic-function)" @@ -11,12 +11,8 @@ const config: Config = { transform: { "^.+\\.(js|ts|tsx)$": ["@swc/jest", swcConfig as Record] }, - moduleNameMapper: { - ...pathsToModuleNameMapper(compilerOptions.paths, { - prefix: "" - }) - }, - cacheDirectory: "./node_modules/.cache/jest" + cacheDirectory: "./node_modules/.cache/jest", + verbose: true }; export default config; diff --git a/packages/env-vars/package.json b/packages/env-vars/package.json index 2b26fe24f..8d99c0924 100644 --- a/packages/env-vars/package.json +++ b/packages/env-vars/package.json @@ -9,48 +9,54 @@ "url": "git+https://github.com/gsoft-inc/wl-squide.git", "directory": "packages/env-vars" }, + "type": "module", "publishConfig": { "access": "public", - "provenance": true - }, - "type": "module", - "exports": { - ".": { - "types": "./dist/index.d.ts", - "import": "./dist/index.js", - "default": "./dist/index.js" + "provenance": true, + "exports": { + ".": { + "types": "./dist/index.d.ts", + "import": "./dist/index.js", + "default": "./dist/index.js" + } } }, + "exports": "./src/index.ts", "files": [ "/dist", "CHANGELOG.md", "README.md" ], "scripts": { - "dev": "tsup --config ./tsup.dev.ts", - "build": "tsup --config ./tsup.build.ts" + "build": "rslib build --config ./rslib.build.ts", + "eslint": "eslint . --max-warnings=-0 --cache --cache-location node_modules/.cache/eslint", + "typecheck": "tsc", + "test": "jest" + }, + "peerDependencies": { + "react": "*" + }, + "dependencies": { + "@squide/core": "workspace:*", + "@types/react": "19.0.1", + "memoize": "10.0.0" }, "devDependencies": { - "@swc/core": "1.8.0", + "@rslib/core": "0.1.4", + "@swc/core": "1.10.1", "@swc/jest": "0.2.37", "@types/jest": "29.5.14", - "@types/react": "18.3.12", - "@types/react-dom": "18.3.1", - "@workleap/eslint-plugin": "3.2.3", + "@typescript-eslint/parser": "8.18.0", + "@workleap/eslint-plugin": "3.2.5", "@workleap/swc-configs": "2.2.3", - "@workleap/tsup-configs": "3.0.6", "@workleap/typescript-configs": "3.0.2", "eslint": "8.57.0", "jest": "29.7.0", "jest-environment-jsdom": "29.7.0", - "ts-jest": "29.2.5", - "tsup": "8.3.5", + "react": "19.0.0", + "ts-node": "10.9.2", "typescript": "5.5.4" }, - "dependencies": { - "@squide/core": "workspace:*", - "memoize": "10.0.0" - }, "sideEffects": false, "engines": { "node": ">=21.1.0" diff --git a/packages/env-vars/rslib.build.ts b/packages/env-vars/rslib.build.ts new file mode 100644 index 000000000..20c4563e3 --- /dev/null +++ b/packages/env-vars/rslib.build.ts @@ -0,0 +1,24 @@ +import { defineConfig } from "@rslib/core"; + +export default defineConfig({ + lib: [{ + format: "esm", + syntax: "esnext", + bundle: false, + dts: true + }], + source: { + entry: { + index: "./src/**" + }, + tsconfigPath: "./tsconfig.build.json" + }, + output: { + target: "web", + distPath: { + root: "./dist" + }, + cleanDistPath: true, + minify: false + } +}); diff --git a/packages/env-vars/src/EnvironmentVariablesRegistry.ts b/packages/env-vars/src/EnvironmentVariablesRegistry.ts index 75bf6ee19..7eac329f4 100644 --- a/packages/env-vars/src/EnvironmentVariablesRegistry.ts +++ b/packages/env-vars/src/EnvironmentVariablesRegistry.ts @@ -2,6 +2,7 @@ import memoize, { memoizeClear } from "memoize"; // The "EnvironmentVariables" interface is expected to be extended by remote modules adding their own environment variables to the runtime. // This magic is called module augmentation: https://www.typescriptlang.org/docs/handbook/declaration-merging.html#module-augmentation. +// eslint-disable-next-line @typescript-eslint/no-empty-object-type export interface EnvironmentVariables {} export type EnvironmentVariablesRegistryKey = keyof EnvironmentVariables; diff --git a/packages/env-vars/tsconfig.build.json b/packages/env-vars/tsconfig.build.json new file mode 100644 index 000000000..63879d6a7 --- /dev/null +++ b/packages/env-vars/tsconfig.build.json @@ -0,0 +1,5 @@ +{ + "extends": "@workleap/typescript-configs/library.json", + "include": ["src"], + "exclude": ["dist", "node_modules"] +} diff --git a/packages/env-vars/tsconfig.json b/packages/env-vars/tsconfig.json index 5161504c1..1ace09268 100644 --- a/packages/env-vars/tsconfig.json +++ b/packages/env-vars/tsconfig.json @@ -1,9 +1,8 @@ { "extends": "@workleap/typescript-configs/library.json", "compilerOptions": { - "paths": { - "@squide/core": ["../core/src/index.ts"] - } + "incremental": true, + "tsBuildInfoFile": "node_modules/.cache/tsbuildinfo.json" }, "exclude": ["dist", "node_modules"] } diff --git a/packages/env-vars/tsup.build.ts b/packages/env-vars/tsup.build.ts deleted file mode 100644 index 1b2c65a89..000000000 --- a/packages/env-vars/tsup.build.ts +++ /dev/null @@ -1,3 +0,0 @@ -import { defineBuildConfig } from "@workleap/tsup-configs"; - -export default defineBuildConfig(); diff --git a/packages/env-vars/tsup.dev.ts b/packages/env-vars/tsup.dev.ts deleted file mode 100644 index 8aa2904c8..000000000 --- a/packages/env-vars/tsup.dev.ts +++ /dev/null @@ -1,3 +0,0 @@ -import { defineDevConfig } from "@workleap/tsup-configs"; - -export default defineDevConfig(); diff --git a/packages/fakes/.eslintignore b/packages/fakes/.eslintignore new file mode 100644 index 000000000..de4d1f007 --- /dev/null +++ b/packages/fakes/.eslintignore @@ -0,0 +1,2 @@ +dist +node_modules diff --git a/packages/fakes/package.json b/packages/fakes/package.json index dcecaa362..8d19596de 100644 --- a/packages/fakes/package.json +++ b/packages/fakes/package.json @@ -9,38 +9,40 @@ "url": "git+https://github.com/gsoft-inc/wl-squide.git", "directory": "packages/fakes" }, + "type": "module", "publishConfig": { "access": "public", - "provenance": true - }, - "type": "module", - "exports": { - ".": { - "types": "./dist/index.d.ts", - "import": "./dist/index.js", - "default": "./dist/index.js" + "provenance": true, + "exports": { + ".": { + "types": "./dist/index.d.ts", + "import": "./dist/index.js", + "default": "./dist/index.js" + } } }, + "exports": "./src/index.ts", "files": [ "/dist", "CHANGELOG.md", "README.md" ], "scripts": { - "dev": "tsup --config ./tsup.dev.ts", - "build": "tsup --config ./tsup.build.ts" + "build": "rslib build --config ./rslib.build.ts", + "eslint": "eslint . --max-warnings=-0 --cache --cache-location node_modules/.cache/eslint", + "typecheck": "tsc" + }, + "dependencies": { + "@squide/core": "workspace:*" }, "devDependencies": { - "@workleap/eslint-plugin": "3.2.3", - "@workleap/tsup-configs": "3.0.6", + "@rslib/core": "0.1.4", + "@typescript-eslint/parser": "8.18.0", + "@workleap/eslint-plugin": "3.2.5", "@workleap/typescript-configs": "3.0.2", "eslint": "8.57.0", - "tsup": "8.3.5", "typescript": "5.5.4" }, - "dependencies": { - "@squide/core": "workspace:*" - }, "sideEffects": false, "engines": { "node": ">=21.1.0" diff --git a/packages/fakes/rslib.build.ts b/packages/fakes/rslib.build.ts new file mode 100644 index 000000000..20c4563e3 --- /dev/null +++ b/packages/fakes/rslib.build.ts @@ -0,0 +1,24 @@ +import { defineConfig } from "@rslib/core"; + +export default defineConfig({ + lib: [{ + format: "esm", + syntax: "esnext", + bundle: false, + dts: true + }], + source: { + entry: { + index: "./src/**" + }, + tsconfigPath: "./tsconfig.build.json" + }, + output: { + target: "web", + distPath: { + root: "./dist" + }, + cleanDistPath: true, + minify: false + } +}); diff --git a/packages/fakes/tsconfig.build.json b/packages/fakes/tsconfig.build.json new file mode 100644 index 000000000..63879d6a7 --- /dev/null +++ b/packages/fakes/tsconfig.build.json @@ -0,0 +1,5 @@ +{ + "extends": "@workleap/typescript-configs/library.json", + "include": ["src"], + "exclude": ["dist", "node_modules"] +} diff --git a/packages/fakes/tsconfig.json b/packages/fakes/tsconfig.json index 5161504c1..1ace09268 100644 --- a/packages/fakes/tsconfig.json +++ b/packages/fakes/tsconfig.json @@ -1,9 +1,8 @@ { "extends": "@workleap/typescript-configs/library.json", "compilerOptions": { - "paths": { - "@squide/core": ["../core/src/index.ts"] - } + "incremental": true, + "tsBuildInfoFile": "node_modules/.cache/tsbuildinfo.json" }, "exclude": ["dist", "node_modules"] } diff --git a/packages/fakes/tsup.build.ts b/packages/fakes/tsup.build.ts deleted file mode 100644 index 1b2c65a89..000000000 --- a/packages/fakes/tsup.build.ts +++ /dev/null @@ -1,3 +0,0 @@ -import { defineBuildConfig } from "@workleap/tsup-configs"; - -export default defineBuildConfig(); diff --git a/packages/fakes/tsup.dev.ts b/packages/fakes/tsup.dev.ts deleted file mode 100644 index 8aa2904c8..000000000 --- a/packages/fakes/tsup.dev.ts +++ /dev/null @@ -1,3 +0,0 @@ -import { defineDevConfig } from "@workleap/tsup-configs"; - -export default defineDevConfig(); diff --git a/packages/firefly-honeycomb/.eslintignore b/packages/firefly-honeycomb/.eslintignore new file mode 100644 index 000000000..3688c6fab --- /dev/null +++ b/packages/firefly-honeycomb/.eslintignore @@ -0,0 +1,3 @@ +dist +node_modules +**/__snapshots__/* diff --git a/packages/firefly-honeycomb/jest.config.ts b/packages/firefly-honeycomb/jest.config.ts index ac20f468e..f1304f31c 100644 --- a/packages/firefly-honeycomb/jest.config.ts +++ b/packages/firefly-honeycomb/jest.config.ts @@ -1,22 +1,17 @@ import type { Config } from "jest"; -import { pathsToModuleNameMapper } from "ts-jest"; import { swcConfig } from "./swc.jest.ts"; -import { compilerOptions } from "./tsconfig.json"; const config: Config = { - testEnvironment: "jsdom", + testRegex: "/tests/*/.*\\.test\\.(ts|tsx)$", + testPathIgnorePatterns: ["/node_modules/", "/dist/"], transformIgnorePatterns: [ "node_modules/(?!.pnpm|memoize|mimic-function|@workleap/honeycomb)" ], transform: { "^.+\\.(js|ts|tsx)$": ["@swc/jest", swcConfig as Record] }, - moduleNameMapper: { - ...pathsToModuleNameMapper(compilerOptions.paths, { - prefix: "" - }) - }, - cacheDirectory: "./node_modules/.cache/jest" + cacheDirectory: "./node_modules/.cache/jest", + verbose: true }; export default config; diff --git a/packages/firefly-honeycomb/package.json b/packages/firefly-honeycomb/package.json index 09daac4bf..9fa252e86 100644 --- a/packages/firefly-honeycomb/package.json +++ b/packages/firefly-honeycomb/package.json @@ -9,55 +9,57 @@ "url": "git+https://github.com/gsoft-inc/wl-squide.git", "directory": "packages/firefly-honeycomb" }, + "type": "module", "publishConfig": { "access": "public", - "provenance": true - }, - "type": "module", - "exports": { - ".": { - "types": "./dist/index.d.ts", - "import": "./dist/index.js", - "default": "./dist/index.js" + "provenance": true, + "exports": { + ".": { + "types": "./dist/index.d.ts", + "import": "./dist/index.js", + "default": "./dist/index.js" + } } }, + "exports": "./src/index.ts", "files": [ "/dist", "CHANGELOG.md", "README.md" ], "scripts": { - "dev": "tsup --config ./tsup.dev.ts", - "build": "tsup --config ./tsup.build.ts" + "build": "rslib build --config ./rslib.build.ts", + "eslint": "eslint . --max-warnings=-0 --cache --cache-location node_modules/.cache/eslint", + "typecheck": "tsc", + "test": "jest" }, "peerDependencies": { "@honeycombio/opentelemetry-web": "*", "@opentelemetry/api": "*", - "@opentelemetry/auto-instrumentations-web": "*" + "@opentelemetry/auto-instrumentations-web": "*", + "@opentelemetry/instrumentation-fetch": "*", + "@opentelemetry/sdk-trace-web": "*" + }, + "dependencies": { + "@squide/firefly": "workspace:*", + "@types/uuid": "10.0.0", + "@workleap/honeycomb": "1.0.0", + "uuid": "11.0.3" }, "devDependencies": { - "@opentelemetry/instrumentation-fetch": "*", - "@opentelemetry/sdk-trace-web": "*", - "@swc/core": "1.8.0", + "@rslib/core": "0.1.4", + "@swc/core": "1.10.1", "@swc/jest": "0.2.37", "@types/jest": "29.5.14", - "@types/uuid": "10.0.0", - "@workleap/eslint-plugin": "3.2.3", + "@typescript-eslint/parser": "8.18.0", + "@workleap/eslint-plugin": "3.2.5", "@workleap/swc-configs": "2.2.3", - "@workleap/tsup-configs": "3.0.6", "@workleap/typescript-configs": "3.0.2", "eslint": "8.57.0", "jest": "29.7.0", - "jest-environment-jsdom": "29.7.0", - "ts-jest": "29.2.5", - "tsup": "8.3.5", + "ts-node": "10.9.2", "typescript": "5.5.4" }, - "dependencies": { - "@squide/firefly": "workspace:*", - "@workleap/honeycomb": "1.0.0", - "uuid": "11.0.2" - }, "sideEffects": false, "engines": { "node": ">=21.1.0" diff --git a/packages/firefly-honeycomb/rslib.build.ts b/packages/firefly-honeycomb/rslib.build.ts new file mode 100644 index 000000000..20c4563e3 --- /dev/null +++ b/packages/firefly-honeycomb/rslib.build.ts @@ -0,0 +1,24 @@ +import { defineConfig } from "@rslib/core"; + +export default defineConfig({ + lib: [{ + format: "esm", + syntax: "esnext", + bundle: false, + dts: true + }], + source: { + entry: { + index: "./src/**" + }, + tsconfigPath: "./tsconfig.build.json" + }, + output: { + target: "web", + distPath: { + root: "./dist" + }, + cleanDistPath: true, + minify: false + } +}); diff --git a/packages/firefly-honeycomb/tsconfig.build.json b/packages/firefly-honeycomb/tsconfig.build.json new file mode 100644 index 000000000..63879d6a7 --- /dev/null +++ b/packages/firefly-honeycomb/tsconfig.build.json @@ -0,0 +1,5 @@ +{ + "extends": "@workleap/typescript-configs/library.json", + "include": ["src"], + "exclude": ["dist", "node_modules"] +} diff --git a/packages/firefly-honeycomb/tsconfig.json b/packages/firefly-honeycomb/tsconfig.json index 6017014cc..8d3f8f735 100644 --- a/packages/firefly-honeycomb/tsconfig.json +++ b/packages/firefly-honeycomb/tsconfig.json @@ -1,13 +1,8 @@ { "extends": "@workleap/typescript-configs/library.json", "compilerOptions": { - "paths": { - "@squide/core": ["../core/src/index.ts"], - "@squide/react-router": ["../react-router/src/index.ts"], - "@squide/module-federation": ["../module-federation/src/index.ts"], - "@squide/msw": ["../msw/src/index.ts"], - "@squide/firefly": ["../firefly/src/index.ts"] - } + "incremental": true, + "tsBuildInfoFile": "node_modules/.cache/tsbuildinfo.json" }, - "exclude": ["dist", "node_modules"] + "exclude": ["dist", "node_modules", "tests/__snapshots__"] } diff --git a/packages/firefly-honeycomb/tsup.build.ts b/packages/firefly-honeycomb/tsup.build.ts deleted file mode 100644 index 1b2c65a89..000000000 --- a/packages/firefly-honeycomb/tsup.build.ts +++ /dev/null @@ -1,3 +0,0 @@ -import { defineBuildConfig } from "@workleap/tsup-configs"; - -export default defineBuildConfig(); diff --git a/packages/firefly-honeycomb/tsup.dev.ts b/packages/firefly-honeycomb/tsup.dev.ts deleted file mode 100644 index 8aa2904c8..000000000 --- a/packages/firefly-honeycomb/tsup.dev.ts +++ /dev/null @@ -1,3 +0,0 @@ -import { defineDevConfig } from "@workleap/tsup-configs"; - -export default defineDevConfig(); diff --git a/packages/firefly-rsbuild-configs/.eslintignore b/packages/firefly-rsbuild-configs/.eslintignore new file mode 100644 index 000000000..3688c6fab --- /dev/null +++ b/packages/firefly-rsbuild-configs/.eslintignore @@ -0,0 +1,3 @@ +dist +node_modules +**/__snapshots__/* diff --git a/packages/webpack-configs/.eslintrc.json b/packages/firefly-rsbuild-configs/.eslintrc.json similarity index 100% rename from packages/webpack-configs/.eslintrc.json rename to packages/firefly-rsbuild-configs/.eslintrc.json diff --git a/packages/webpack-configs/README.md b/packages/firefly-rsbuild-configs/README.md similarity index 91% rename from packages/webpack-configs/README.md rename to packages/firefly-rsbuild-configs/README.md index 81aa07dcf..37c95798d 100644 --- a/packages/webpack-configs/README.md +++ b/packages/firefly-rsbuild-configs/README.md @@ -1,4 +1,4 @@ -# @squide/webpack-configs +# @squide/firefly-webpack-configs ## Usage diff --git a/packages/webpack-configs/jest.config.ts b/packages/firefly-rsbuild-configs/jest.config.ts similarity index 70% rename from packages/webpack-configs/jest.config.ts rename to packages/firefly-rsbuild-configs/jest.config.ts index 4e8312bd9..da0d3bc26 100644 --- a/packages/webpack-configs/jest.config.ts +++ b/packages/firefly-rsbuild-configs/jest.config.ts @@ -3,7 +3,8 @@ import path from "node:path"; import { swcConfig } from "./swc.jest.ts"; const config: Config = { - testEnvironment: "jsdom", + testRegex: "/tests/*/.*\\.test\\.(ts|tsx)$", + testPathIgnorePatterns: ["/node_modules/", "/dist/"], transformIgnorePatterns: [ // Must exclude @workleap/webpack-configs from the transform ignore files // because it's an ESM only project which must be processed by SWC. @@ -13,14 +14,13 @@ const config: Config = { `${path.join( __dirname, "../.." - )}/node_modules/.pnpm/(?!(@workleap\\+webpack-configs)@)` + )}/node_modules/.pnpm/(?!(@workleap\\+rsbuild-configs)@)` ], transform: { - // Must add the ".js" file extension because the files from @workleap/webpack-configs - // are ESM only and therefore must be processed by SWC. "^.+\\.(js|ts)$": ["@swc/jest", swcConfig as Record] }, - cacheDirectory: "./node_modules/.cache/jest" + cacheDirectory: "./node_modules/.cache/jest", + verbose: true }; export default config; diff --git a/packages/firefly-rsbuild-configs/package.json b/packages/firefly-rsbuild-configs/package.json new file mode 100644 index 000000000..0ef974383 --- /dev/null +++ b/packages/firefly-rsbuild-configs/package.json @@ -0,0 +1,68 @@ +{ + "name": "@squide/firefly-rsbuild-configs", + "author": "Workleap", + "version": "0.0.1", + "description": "Rsbuild configuration helpers for the Squide firefly technology stack.", + "license": "Apache-2.0", + "repository": { + "type": "git", + "url": "git+https://github.com/gsoft-inc/wl-squide.git", + "directory": "packages/firefly-rsbuild-configs" + }, + "type": "module", + "publishConfig": { + "access": "public", + "provenance": true + }, + "exports": { + ".": { + "types": "./dist/index.d.ts", + "import": "./dist/index.js", + "default": "./dist/index.js" + } + }, + "files": [ + "/dist", + "CHANGELOG.md", + "README.md" + ], + "scripts": { + "dev": "rslib build --watch --config ./rslib.dev.ts", + "build": "rslib build --config ./rslib.build.ts", + "eslint": "eslint . --max-warnings=-0 --cache --cache-location node_modules/.cache/eslint", + "typecheck": "tsc", + "test": "jest" + }, + "peerDependencies": { + "@rsbuild/core": "*", + "@rspack/core": "*" + }, + "dependencies": { + "@module-federation/enhanced": "^0.8.4", + "@module-federation/rsbuild-plugin": "^0.8.4", + "@types/node": "^22.10.2", + "@types/semver": "^7.5.8", + "@workleap/rsbuild-configs": "^1.0.1", + "deepmerge": "^4.3.1", + "semver": "^7.6.3" + }, + "devDependencies": { + "@rsbuild/core": "1.1.10", + "@rslib/core": "0.1.4", + "@rspack/core": "1.1.6", + "@swc/core": "1.10.1", + "@swc/jest": "0.2.37", + "@types/jest": "29.5.14", + "@typescript-eslint/parser": "8.18.0", + "@workleap/eslint-plugin": "3.2.5", + "@workleap/swc-configs": "2.2.3", + "@workleap/typescript-configs": "3.0.2", + "eslint": "8.57.0", + "jest": "29.7.0", + "ts-node": "10.9.2", + "typescript": "5.5.4" + }, + "engines": { + "node": ">=21.1.0" + } +} diff --git a/packages/firefly-rsbuild-configs/rslib.build.ts b/packages/firefly-rsbuild-configs/rslib.build.ts new file mode 100644 index 000000000..633feb928 --- /dev/null +++ b/packages/firefly-rsbuild-configs/rslib.build.ts @@ -0,0 +1,24 @@ +import { defineConfig } from "@rslib/core"; + +export default defineConfig({ + lib: [{ + format: "esm", + syntax: "esnext", + bundle: false, + dts: true + }], + source: { + entry: { + index: "./src/**" + }, + tsconfigPath: "./tsconfig.build.json" + }, + output: { + target: "node", + distPath: { + root: "./dist" + }, + cleanDistPath: true, + minify: false + } +}); diff --git a/packages/firefly-rsbuild-configs/rslib.dev.ts b/packages/firefly-rsbuild-configs/rslib.dev.ts new file mode 100644 index 000000000..30251ee2a --- /dev/null +++ b/packages/firefly-rsbuild-configs/rslib.dev.ts @@ -0,0 +1,24 @@ +import { defineConfig } from "@rslib/core"; + +export default defineConfig({ + lib: [{ + format: "esm", + syntax: "esnext", + bundle: false, + dts: false + }], + source: { + entry: { + index: "./src/**" + }, + tsconfigPath: "./tsconfig.build.json" + }, + output: { + target: "node", + distPath: { + root: "./dist" + }, + cleanDistPath: true, + minify: false + } +}); diff --git a/packages/firefly-rsbuild-configs/src/defineConfig.ts b/packages/firefly-rsbuild-configs/src/defineConfig.ts new file mode 100644 index 000000000..a7c783d29 --- /dev/null +++ b/packages/firefly-rsbuild-configs/src/defineConfig.ts @@ -0,0 +1,507 @@ +import { pluginModuleFederation } from "@module-federation/rsbuild-plugin"; +import type { RsbuildConfig, RsbuildPlugin } from "@rsbuild/core"; +import { defineBuildConfig, defineDevConfig, type DefineBuildConfigOptions, type DefineDevConfigOptions, type RsbuildConfigTransformer } from "@workleap/rsbuild-configs"; +import merge from "deepmerge"; +import path from "node:path"; +import url from "node:url"; +import { HostApplicationName } from "./shared.ts"; + +// Using import.meta.url instead of import.meta.dirname because Jest is throwing the following error: +// SyntaxError: Cannot use 'import.meta' outside a module +const packageDirectory = url.fileURLToPath(new URL(".", import.meta.url)); + +// Must be similar to the module name defined in @workleap/module-federation. +const RemoteRegisterModuleName = "./register"; +const RemoteEntryPoint = "remoteEntry.js"; + +// Rsbuild doesn't export ModuleFederationPlugin typings. +export type ModuleFederationPluginOptions = Parameters[0]; +export type ModuleFederationRemotesOption = ModuleFederationPluginOptions["remotes"]; + +export type ModuleFederationRuntimePlugins = NonNullable; +export type ModuleFederationShared = NonNullable; + +export type ModuleFederationPluginFactory = (moduleFederationOptions: ModuleFederationPluginOptions) => RsbuildPlugin; + +let moduleFederationPluginFactory: ModuleFederationPluginFactory | undefined; + +function createModuleFederationPlugin(moduleFederationOptions: ModuleFederationPluginOptions) { + if (!moduleFederationPluginFactory) { + return pluginModuleFederation(moduleFederationOptions); + } + + return moduleFederationPluginFactory(moduleFederationOptions); +} + +// This function should only be used by tests. +export function __setModuleFederationPluginFactory(factory: ModuleFederationPluginFactory) { + moduleFederationPluginFactory = factory; +} + +// This function should only be used by tests. +export function __clearModuleFederationPluginFactory() { + moduleFederationPluginFactory = undefined; +} + +// Generally, only the host application should have eager dependencies. +// For more informations about shared dependencies refer to: https://github.com/patricklafrance/wmf-versioning +function getDefaultSharedDependencies(features: Features, isHost: boolean): ModuleFederationShared { + return { + "react": { + singleton: true, + eager: isHost ? true : undefined, + // Fixed the warning when `react-i18next` is imported in any remote modules. + // For more information, refer to: https://github.com/i18next/react-i18next/issues/1697#issuecomment-1821748226. + requiredVersion: features.i18next ? false : undefined + }, + "react-dom": { + singleton: true, + eager: isHost ? true : undefined + }, + "@squide/core": { + singleton: true, + eager: isHost ? true : undefined + }, + "@squide/module-federation": { + singleton: true, + eager: isHost ? true : undefined + } + }; +} + +export type Router = "react-router"; + +export interface Features { + router?: Router; + msw?: boolean; + i18next?: boolean; + environmentVariables?: boolean; + honeycomb?: boolean; +} + +// Generally, only the host application should have eager dependencies. +// For more informations about shared dependencies refer to: https://github.com/patricklafrance/wmf-versioning +function getReactRouterSharedDependencies(isHost: boolean): ModuleFederationShared { + return { + "react-router-dom": { + singleton: true, + eager: isHost ? true : undefined + }, + "@squide/react-router": { + singleton: true, + eager: isHost ? true : undefined + } + }; +} + +function getMswSharedDependency(isHost: boolean): ModuleFederationShared { + return { + "@squide/msw": { + singleton: true, + eager: isHost ? true : undefined + } + }; +} + +function getI18nextSharedDependency(isHost: boolean): ModuleFederationShared { + return { + "i18next": { + singleton: true, + eager: isHost ? true : undefined + }, + // Not adding as a shared dependency for the moment because it causes the following error: + // Uncaught (in promise) TypeError: i18next_browser_languagedetector__WEBPACK_IMPORTED_MODULE_3__ is not a constructor + // "i18next-browser-languagedetector": { + // singleton: true, + // eager: isHost ? true : undefined + // }, + "react-i18next": { + singleton: true, + eager: isHost ? true : undefined + }, + "@squide/i18next": { + singleton: true, + eager: isHost ? true : undefined + } + }; +} + +function getEnvironmentVariablesSharedDependencies(isHost: boolean): ModuleFederationShared { + return { + "@squide/env-vars": { + singleton: true, + eager: isHost ? true : undefined + } + }; +} + +function getHoneycombSharedDependencies(isHost: boolean): ModuleFederationShared { + return { + "@honeycombio/opentelemetry-web": { + singleton: true, + eager: isHost ? true : undefined + }, + "@opentelemetry/api": { + singleton: true, + eager: isHost ? true : undefined + }, + "@opentelemetry/auto-instrumentations-web": { + singleton: true, + eager: isHost ? true : undefined + }, + "@squide/firefly-honeycomb": { + singleton: true, + eager: isHost ? true : undefined + } + }; +} + +function getFeaturesDependencies(features: Features, isHost: boolean) { + const { + router = "react-router", + msw = true, + i18next, + environmentVariables, + honeycomb + } = features; + + return { + ...(router === "react-router" ? getReactRouterSharedDependencies(isHost) : {}), + ...(msw ? getMswSharedDependency(isHost) : {}), + ...(i18next ? getI18nextSharedDependency(isHost) : {}), + ...(environmentVariables ? getEnvironmentVariablesSharedDependencies(isHost) : {}), + ...(honeycomb ? getHoneycombSharedDependencies(isHost) : {}) + }; +} + +function resolveDefaultSharedDependencies(features: Features, isHost: boolean) { + return { + ...getDefaultSharedDependencies(features, isHost), + ...getFeaturesDependencies(features, isHost) + }; +} + +export type DefineModuleFederationPluginOptions = (defaultOptions: ModuleFederationPluginOptions) => ModuleFederationPluginOptions; + +function defaultDefineModuleFederationPluginOptions(defaultOptions: ModuleFederationPluginOptions) { + return defaultOptions; +} + +// There seems to be issues with cache and ModuleFederation, it's better to disable it for now. +const disableCacheTransformer: RsbuildConfigTransformer = (config: RsbuildConfig) => { + config.tools = config.tools ?? {}; + config.tools.rspack = config.tools.rspack ?? {}; + + // The typings are broken because "rspack" also accepts a function. + // eslint-disable-next-line @typescript-eslint/ban-ts-comment + // @ts-ignore + config.tools.rspack.cache = false; + + return config; +}; + +const forceNamedChunkIdsTransformer: RsbuildConfigTransformer = (config: RsbuildConfig) => { + config.tools = config.tools ?? {}; + config.tools.rspack = config.tools.rspack ?? {}; + + // The typings are broken because "rspack" also accepts a function. + // eslint-disable-next-line @typescript-eslint/ban-ts-comment + // @ts-ignore + config.tools.rspack.optimization = { + // The typings are broken because "rspack" also accepts a function. + // eslint-disable-next-line @typescript-eslint/ban-ts-comment + // @ts-ignore + ...(config.tools.rspack.optimization ?? {}), + chunkIds: "named" + }; + + return config; +}; + +//////////////////////////// Host ///////////////////////////// + +export interface RemoteDefinition { + // The name of the remote module. + name: string; + // The URL of the remote, ex: http://localhost:8081. + url: string; +} + +interface GetDefaultHostModuleFederationPluginOptions extends ModuleFederationPluginOptions { + features?: Features; +} + +function getDefaultHostModuleFederationPluginOptions(remotes: RemoteDefinition[], options: GetDefaultHostModuleFederationPluginOptions) { + const { + features = {}, + shared = {}, + runtimePlugins = [], + ...rest + } = options; + + const defaultSharedDependencies = resolveDefaultSharedDependencies(features, true); + + return { + // shareStrategy: "loaded-first", + name: HostApplicationName, + // Since Squide modules are only exporting a register function with a standardized API + // it doesn't requires any typing. + dts: false, + // Currently only supporting .js remotes. + manifest: false, + remotes: remotes.reduce((acc, x) => { + // Object reduce are always a mess for typings. + // eslint-disable-next-line @typescript-eslint/ban-ts-comment + // @ts-ignore + acc[x.name] = `${x.name}@${x.url}/${RemoteEntryPoint}`; + + return acc; + }, {}) as ModuleFederationRemotesOption, + // Deep merging the default shared dependencies with the provided shared dependencies + // to allow the consumer to easily override a default option of a shared dependency + // without extending the whole default shared dependencies object. + shared: merge.all([ + defaultSharedDependencies, + shared + ]) as ModuleFederationShared, + runtimePlugins: [ + path.resolve(packageDirectory, "./sharedDependenciesResolutionPlugin.js"), + path.resolve(packageDirectory, "./nonCacheableRemoteEntryPlugin.js"), + ...runtimePlugins + ], + // Commented because it doesn't seems to work, the runtime is still embedded into remotes. + // experiments: { + // // The runtime is 100kb minified. + // federationRuntime: "hoisted" + // }, + ...rest + }; +} + +export interface DefineDevHostConfigOptions extends Omit { + features?: Features; + sharedDependencies?: ModuleFederationShared; + runtimePlugins?: ModuleFederationRuntimePlugins; + moduleFederationPluginOptions?: DefineModuleFederationPluginOptions; +} + +// The function return type is mandatory, otherwise we got an error TS4058. +export function defineDevHostConfig(port: number, remotes: RemoteDefinition[], options: DefineDevHostConfigOptions = {}): RsbuildConfig { + const { + entry = { + index: path.resolve("./src/index.tsx") + }, + assetPrefix = "auto", + plugins = [], + // Breaks the initialization of the shell when true, usually causing a blank page. + lazyCompilation = false, + features, + sharedDependencies, + runtimePlugins, + moduleFederationPluginOptions = defaultDefineModuleFederationPluginOptions, + transformers = [], + ...rsbuildOptions + } = options; + + return defineDevConfig({ + entry, + port, + assetPrefix, + plugins: [ + ...plugins, + createModuleFederationPlugin( + moduleFederationPluginOptions( + getDefaultHostModuleFederationPluginOptions(remotes, { features, shared: sharedDependencies, runtimePlugins }))) + ], + lazyCompilation, + transformers: [ + ...transformers, + disableCacheTransformer + ], + ...rsbuildOptions + }); +} + +export interface DefineBuildHostConfigOptions extends DefineBuildConfigOptions { + features?: Features; + sharedDependencies?: ModuleFederationShared; + runtimePlugins?: ModuleFederationRuntimePlugins; + moduleFederationPluginOptions?: DefineModuleFederationPluginOptions; +} + +// The function return type is mandatory, otherwise we got an error TS4058. +export function defineBuildHostConfig(remotes: RemoteDefinition[], options: DefineBuildHostConfigOptions = {}): RsbuildConfig { + const { + entry = { + index: path.resolve("./src/index.tsx") + }, + assetPrefix = "auto", + plugins = [], + features, + sharedDependencies, + runtimePlugins, + moduleFederationPluginOptions = defaultDefineModuleFederationPluginOptions, + transformers = [], + ...webpackOptions + } = options; + + return defineBuildConfig({ + entry, + assetPrefix, + plugins: [ + ...plugins, + createModuleFederationPlugin( + moduleFederationPluginOptions( + getDefaultHostModuleFederationPluginOptions(remotes, { features, shared: sharedDependencies, runtimePlugins }))) + ], + transformers: [ + forceNamedChunkIdsTransformer, + disableCacheTransformer, + ...transformers + ], + ...webpackOptions + }); +} + +//////////////////////////// Remote ///////////////////////////// + +interface GetDefaultRemoteModuleFederationPluginOptions extends ModuleFederationPluginOptions { + features?: Features; +} + +function getDefaultRemoteModuleFederationPluginOptions(applicationName: string, options: GetDefaultRemoteModuleFederationPluginOptions) { + const { + features = {}, + exposes = {}, + shared = {}, + runtimePlugins = [], + ...rest + } = options; + + const defaultSharedDependencies = resolveDefaultSharedDependencies(features, false); + + return { + // shareStrategy: "loaded-first", + name: applicationName, + // Since Squide modules are only exporting a register function with a standardized API + // it doesn't requires any typing. + dts: false, + // Currently only supporting .js remotes. + manifest: false, + filename: RemoteEntryPoint, + exposes: { + [RemoteRegisterModuleName]: "./src/register", + ...exposes + }, + // Deep merging the default shared dependencies with the provided shared dependencies + // to allow the consumer to easily override a default option of a shared dependency + // without extending the whole default shared dependencies object. + shared: merge.all([ + defaultSharedDependencies, + shared + ]) as ModuleFederationShared, + runtimePlugins: [ + path.resolve(packageDirectory, "./sharedDependenciesResolutionPlugin.js"), + path.resolve(packageDirectory, "./nonCacheableRemoteEntryPlugin.js"), + ...runtimePlugins + ], + // Commented because it doesn't seems to work, the runtime is still embedded into remotes. + // experiments: { + // // The runtime is 100kb minified. + // federationRuntime: "hoisted" + // }, + ...rest + }; +} + +export interface DefineDevRemoteModuleConfigOptions extends Omit { + features?: Features; + sharedDependencies?: ModuleFederationShared; + runtimePlugins?: ModuleFederationRuntimePlugins; + moduleFederationPluginOptions?: DefineModuleFederationPluginOptions; +} + +// The function return type is mandatory, otherwise we got an error TS4058. +export function defineDevRemoteModuleConfig(applicationName: string, port: number, options: DefineDevRemoteModuleConfigOptions = {}): RsbuildConfig { + const { + entry = { + index: path.resolve("./src/register.tsx") + }, + assetPrefix = "auto", + plugins = [], + // Breaks the initialization of the shell when true, usually causing a blank page. + lazyCompilation = false, + html = false, + features, + sharedDependencies, + runtimePlugins, + moduleFederationPluginOptions = defaultDefineModuleFederationPluginOptions, + transformers = [], + ...rsbuildOptions + } = options; + + return defineDevConfig({ + entry, + port, + assetPrefix, + // Disable the error overlay by default for remotes as otherwise every remote module's error overlay will be + // stack on top of the host application's error overlay. + overlay: false, + plugins: [ + ...plugins, + createModuleFederationPlugin( + moduleFederationPluginOptions( + getDefaultRemoteModuleFederationPluginOptions(applicationName, { features, shared: sharedDependencies, runtimePlugins }))) + ], + lazyCompilation, + html, + transformers: [ + ...transformers, + disableCacheTransformer + ], + ...rsbuildOptions + }); +} + +export interface DefineBuildRemoteModuleConfigOptions extends DefineBuildConfigOptions { + features?: Features; + sharedDependencies?: ModuleFederationShared; + runtimePlugins?: ModuleFederationRuntimePlugins; + moduleFederationPluginOptions?: DefineModuleFederationPluginOptions; +} + +// The function return type is mandatory, otherwise we got an error TS4058. +export function defineBuildRemoteModuleConfig(applicationName: string, options: DefineBuildRemoteModuleConfigOptions = {}): RsbuildConfig { + const { + entry = { + index: path.resolve("./src/register.tsx") + }, + assetPrefix = "auto", + plugins = [], + html = false, + features, + sharedDependencies, + runtimePlugins, + moduleFederationPluginOptions = defaultDefineModuleFederationPluginOptions, + transformers = [], + ...rsbuildOptions + } = options; + + return defineBuildConfig({ + entry, + assetPrefix, + plugins: [ + ...plugins, + createModuleFederationPlugin( + moduleFederationPluginOptions( + getDefaultRemoteModuleFederationPluginOptions(applicationName, { features, shared: sharedDependencies, runtimePlugins }))) + ], + html, + transformers: [ + forceNamedChunkIdsTransformer, + disableCacheTransformer, + ...transformers + ], + ...rsbuildOptions + }); +} diff --git a/packages/firefly-rsbuild-configs/src/index.ts b/packages/firefly-rsbuild-configs/src/index.ts new file mode 100644 index 000000000..bb1a18090 --- /dev/null +++ b/packages/firefly-rsbuild-configs/src/index.ts @@ -0,0 +1,2 @@ +export * from "./defineConfig.ts"; + diff --git a/packages/webpack-configs/src/nonCacheableRemoteEntryPlugin.ts b/packages/firefly-rsbuild-configs/src/nonCacheableRemoteEntryPlugin.ts similarity index 100% rename from packages/webpack-configs/src/nonCacheableRemoteEntryPlugin.ts rename to packages/firefly-rsbuild-configs/src/nonCacheableRemoteEntryPlugin.ts diff --git a/packages/webpack-configs/src/shared.ts b/packages/firefly-rsbuild-configs/src/shared.ts similarity index 100% rename from packages/webpack-configs/src/shared.ts rename to packages/firefly-rsbuild-configs/src/shared.ts diff --git a/packages/webpack-configs/src/sharedDependenciesResolutionPlugin.ts b/packages/firefly-rsbuild-configs/src/sharedDependenciesResolutionPlugin.ts similarity index 100% rename from packages/webpack-configs/src/sharedDependenciesResolutionPlugin.ts rename to packages/firefly-rsbuild-configs/src/sharedDependenciesResolutionPlugin.ts diff --git a/packages/firefly-rsbuild-configs/swc.jest.ts b/packages/firefly-rsbuild-configs/swc.jest.ts new file mode 100644 index 000000000..febebfd65 --- /dev/null +++ b/packages/firefly-rsbuild-configs/swc.jest.ts @@ -0,0 +1,4 @@ +import { defineJestConfig } from "@workleap/swc-configs"; + +export const swcConfig = defineJestConfig(); + diff --git a/packages/firefly-rsbuild-configs/tests/__snapshots__/defineConfig.test.ts.snap b/packages/firefly-rsbuild-configs/tests/__snapshots__/defineConfig.test.ts.snap new file mode 100644 index 000000000..59c33bde2 --- /dev/null +++ b/packages/firefly-rsbuild-configs/tests/__snapshots__/defineConfig.test.ts.snap @@ -0,0 +1,1907 @@ +// Jest Snapshot v1, https://goo.gl/fbAQLP + +exports[`defineBuildHostConfig the application name is set as the federation plugin application name 1`] = ` +{ + "dts": false, + "manifest": false, + "name": "host", + "remotes": {}, + "shared": { + "@squide/core": { + "eager": true, + "singleton": true, + }, + "@squide/module-federation": { + "eager": true, + "singleton": true, + }, + "@squide/msw": { + "eager": true, + "singleton": true, + }, + "@squide/react-router": { + "eager": true, + "singleton": true, + }, + "react": { + "eager": true, + "requiredVersion": undefined, + "singleton": true, + }, + "react-dom": { + "eager": true, + "singleton": true, + }, + "react-router-dom": { + "eager": true, + "singleton": true, + }, + }, +} +`; + +exports[`defineBuildHostConfig the module federation plugin configuration includes the default shared dependencies 1`] = ` +{ + "dts": false, + "manifest": false, + "name": "host", + "remotes": {}, + "shared": { + "@squide/core": { + "eager": true, + "singleton": true, + }, + "@squide/module-federation": { + "eager": true, + "singleton": true, + }, + "@squide/msw": { + "eager": true, + "singleton": true, + }, + "@squide/react-router": { + "eager": true, + "singleton": true, + }, + "react": { + "eager": true, + "requiredVersion": undefined, + "singleton": true, + }, + "react-dom": { + "eager": true, + "singleton": true, + }, + "react-router-dom": { + "eager": true, + "singleton": true, + }, + }, +} +`; + +exports[`defineBuildHostConfig the module federation plugin configuration includes the remotes 1`] = ` +{ + "dts": false, + "manifest": false, + "name": "host", + "remotes": { + "remote1": "remote1@http://localhost/remote1/remoteEntry.js", + "remote2": "remote2@http://localhost/remote2/remoteEntry.js", + }, + "shared": { + "@squide/core": { + "eager": true, + "singleton": true, + }, + "@squide/module-federation": { + "eager": true, + "singleton": true, + }, + "@squide/msw": { + "eager": true, + "singleton": true, + }, + "@squide/react-router": { + "eager": true, + "singleton": true, + }, + "react": { + "eager": true, + "requiredVersion": undefined, + "singleton": true, + }, + "react-dom": { + "eager": true, + "singleton": true, + }, + "react-router-dom": { + "eager": true, + "singleton": true, + }, + }, +} +`; + +exports[`defineBuildHostConfig when a function is provided to override the module federation plugin, apply the function 1`] = ` +{ + "dts": false, + "filename": "this is a dummy test value", + "manifest": false, + "name": "host", + "remotes": {}, + "shared": { + "@squide/core": { + "eager": true, + "singleton": true, + }, + "@squide/module-federation": { + "eager": true, + "singleton": true, + }, + "@squide/msw": { + "eager": true, + "singleton": true, + }, + "@squide/react-router": { + "eager": true, + "singleton": true, + }, + "react": { + "eager": true, + "requiredVersion": undefined, + "singleton": true, + }, + "react-dom": { + "eager": true, + "singleton": true, + }, + "react-router-dom": { + "eager": true, + "singleton": true, + }, + }, +} +`; + +exports[`defineBuildHostConfig when additional options are provided for an existing default shared dependency, add the consumer options to the default options 1`] = ` +{ + "dts": false, + "manifest": false, + "name": "host", + "remotes": {}, + "shared": { + "@squide/core": { + "eager": true, + "singleton": true, + }, + "@squide/module-federation": { + "eager": true, + "singleton": true, + }, + "@squide/msw": { + "eager": true, + "singleton": true, + }, + "@squide/react-router": { + "eager": true, + "singleton": true, + }, + "react": { + "eager": true, + "requiredVersion": "1.2.3", + "singleton": true, + }, + "react-dom": { + "eager": true, + "singleton": true, + }, + "react-router-dom": { + "eager": true, + "singleton": true, + }, + }, +} +`; + +exports[`defineBuildHostConfig when additional shared dependencies are provided, add the dependencies to the module federation plugin configuration 1`] = ` +{ + "dts": false, + "manifest": false, + "name": "host", + "remotes": {}, + "shared": { + "@squide/core": { + "eager": true, + "singleton": true, + }, + "@squide/module-federation": { + "eager": true, + "singleton": true, + }, + "@squide/msw": { + "eager": true, + "singleton": true, + }, + "@squide/react-router": { + "eager": true, + "singleton": true, + }, + "first": { + "singleton": true, + }, + "react": { + "eager": true, + "requiredVersion": undefined, + "singleton": true, + }, + "react-dom": { + "eager": true, + "singleton": true, + }, + "react-router-dom": { + "eager": true, + "singleton": true, + }, + "second": { + "eager": true, + "singleton": true, + }, + }, +} +`; + +exports[`defineBuildHostConfig when environmentVariables is env-vars, add env-vars shared dependency and requiredVersion: false to the react shared dependency definition 1`] = ` +{ + "dts": false, + "manifest": false, + "name": "host", + "remotes": {}, + "shared": { + "@squide/core": { + "eager": true, + "singleton": true, + }, + "@squide/env-vars": { + "eager": true, + "singleton": true, + }, + "@squide/module-federation": { + "eager": true, + "singleton": true, + }, + "@squide/msw": { + "eager": true, + "singleton": true, + }, + "@squide/react-router": { + "eager": true, + "singleton": true, + }, + "react": { + "eager": true, + "requiredVersion": undefined, + "singleton": true, + }, + "react-dom": { + "eager": true, + "singleton": true, + }, + "react-router-dom": { + "eager": true, + "singleton": true, + }, + }, +} +`; + +exports[`defineBuildHostConfig when honeycomb is activated, add honeycomb shared dependency and requiredVersion: false to the react shared dependency definition 1`] = ` +{ + "dts": false, + "manifest": false, + "name": "host", + "remotes": {}, + "shared": { + "@honeycombio/opentelemetry-web": { + "eager": true, + "singleton": true, + }, + "@opentelemetry/api": { + "eager": true, + "singleton": true, + }, + "@opentelemetry/auto-instrumentations-web": { + "eager": true, + "singleton": true, + }, + "@squide/core": { + "eager": true, + "singleton": true, + }, + "@squide/firefly-honeycomb": { + "eager": true, + "singleton": true, + }, + "@squide/module-federation": { + "eager": true, + "singleton": true, + }, + "@squide/msw": { + "eager": true, + "singleton": true, + }, + "@squide/react-router": { + "eager": true, + "singleton": true, + }, + "react": { + "eager": true, + "requiredVersion": undefined, + "singleton": true, + }, + "react-dom": { + "eager": true, + "singleton": true, + }, + "react-router-dom": { + "eager": true, + "singleton": true, + }, + }, +} +`; + +exports[`defineBuildHostConfig when i18next is activated, add i18next shared dependency and requiredVersion: false to the react shared dependency definition 1`] = ` +{ + "dts": false, + "manifest": false, + "name": "host", + "remotes": {}, + "shared": { + "@squide/core": { + "eager": true, + "singleton": true, + }, + "@squide/i18next": { + "eager": true, + "singleton": true, + }, + "@squide/module-federation": { + "eager": true, + "singleton": true, + }, + "@squide/msw": { + "eager": true, + "singleton": true, + }, + "@squide/react-router": { + "eager": true, + "singleton": true, + }, + "i18next": { + "eager": true, + "singleton": true, + }, + "react": { + "eager": true, + "requiredVersion": false, + "singleton": true, + }, + "react-dom": { + "eager": true, + "singleton": true, + }, + "react-i18next": { + "eager": true, + "singleton": true, + }, + "react-router-dom": { + "eager": true, + "singleton": true, + }, + }, +} +`; + +exports[`defineBuildHostConfig when no asset prefix is provided, the default asset prefix is "auto" 1`] = ` +{ + "dts": false, + "manifest": false, + "name": "host", + "remotes": {}, + "shared": { + "@squide/core": { + "eager": true, + "singleton": true, + }, + "@squide/module-federation": { + "eager": true, + "singleton": true, + }, + "@squide/msw": { + "eager": true, + "singleton": true, + }, + "@squide/react-router": { + "eager": true, + "singleton": true, + }, + "react": { + "eager": true, + "requiredVersion": undefined, + "singleton": true, + }, + "react-dom": { + "eager": true, + "singleton": true, + }, + "react-router-dom": { + "eager": true, + "singleton": true, + }, + }, +} +`; + +exports[`defineBuildHostConfig when overriding options are provided for a default shared dependency, use the consumer option 1`] = ` +{ + "dts": false, + "manifest": false, + "name": "host", + "remotes": {}, + "shared": { + "@squide/core": { + "eager": true, + "singleton": true, + }, + "@squide/module-federation": { + "eager": true, + "singleton": true, + }, + "@squide/msw": { + "eager": true, + "singleton": true, + }, + "@squide/react-router": { + "eager": true, + "singleton": true, + }, + "react": { + "eager": false, + "requiredVersion": undefined, + "singleton": false, + }, + "react-dom": { + "eager": true, + "singleton": true, + }, + "react-router-dom": { + "eager": true, + "singleton": true, + }, + }, +} +`; + +exports[`defineBuildHostConfig when the router is not react-router, do not add react-router shared dependencies 1`] = ` +{ + "dts": false, + "manifest": false, + "name": "host", + "remotes": {}, + "shared": { + "@squide/core": { + "eager": true, + "singleton": true, + }, + "@squide/module-federation": { + "eager": true, + "singleton": true, + }, + "@squide/msw": { + "eager": true, + "singleton": true, + }, + "react": { + "eager": true, + "requiredVersion": undefined, + "singleton": true, + }, + "react-dom": { + "eager": true, + "singleton": true, + }, + }, +} +`; + +exports[`defineBuildRemoteModuleConfig the application name is set as the federation plugin application name 1`] = ` +{ + "dts": false, + "exposes": { + "./register": "./src/register", + }, + "filename": "remoteEntry.js", + "manifest": false, + "name": "remote1", + "shared": { + "@squide/core": { + "eager": undefined, + "singleton": true, + }, + "@squide/module-federation": { + "eager": undefined, + "singleton": true, + }, + "@squide/msw": { + "eager": undefined, + "singleton": true, + }, + "@squide/react-router": { + "eager": undefined, + "singleton": true, + }, + "react": { + "eager": undefined, + "requiredVersion": undefined, + "singleton": true, + }, + "react-dom": { + "eager": undefined, + "singleton": true, + }, + "react-router-dom": { + "eager": undefined, + "singleton": true, + }, + }, +} +`; + +exports[`defineBuildRemoteModuleConfig the module federation plugin configuration includes the default shared dependencies 1`] = ` +{ + "dts": false, + "exposes": { + "./register": "./src/register", + }, + "filename": "remoteEntry.js", + "manifest": false, + "name": "remote1", + "shared": { + "@squide/core": { + "eager": undefined, + "singleton": true, + }, + "@squide/module-federation": { + "eager": undefined, + "singleton": true, + }, + "@squide/msw": { + "eager": undefined, + "singleton": true, + }, + "@squide/react-router": { + "eager": undefined, + "singleton": true, + }, + "react": { + "eager": undefined, + "requiredVersion": undefined, + "singleton": true, + }, + "react-dom": { + "eager": undefined, + "singleton": true, + }, + "react-router-dom": { + "eager": undefined, + "singleton": true, + }, + }, +} +`; + +exports[`defineBuildRemoteModuleConfig when a function is provided to override the module federation plugin, apply the function 1`] = ` +{ + "dts": false, + "exposes": { + "./register": "./src/register", + }, + "filename": "this is a dummy test value", + "manifest": false, + "name": "remote1", + "shared": { + "@squide/core": { + "eager": undefined, + "singleton": true, + }, + "@squide/module-federation": { + "eager": undefined, + "singleton": true, + }, + "@squide/msw": { + "eager": undefined, + "singleton": true, + }, + "@squide/react-router": { + "eager": undefined, + "singleton": true, + }, + "react": { + "eager": undefined, + "requiredVersion": undefined, + "singleton": true, + }, + "react-dom": { + "eager": undefined, + "singleton": true, + }, + "react-router-dom": { + "eager": undefined, + "singleton": true, + }, + }, +} +`; + +exports[`defineBuildRemoteModuleConfig when additional options are provided for an existing default shared dependency, add the consumer options to the default options 1`] = ` +{ + "dts": false, + "exposes": { + "./register": "./src/register", + }, + "filename": "remoteEntry.js", + "manifest": false, + "name": "remote1", + "shared": { + "@squide/core": { + "eager": undefined, + "singleton": true, + }, + "@squide/module-federation": { + "eager": undefined, + "singleton": true, + }, + "@squide/msw": { + "eager": undefined, + "singleton": true, + }, + "@squide/react-router": { + "eager": undefined, + "singleton": true, + }, + "react": { + "eager": undefined, + "requiredVersion": "1.2.3", + "singleton": true, + }, + "react-dom": { + "eager": undefined, + "singleton": true, + }, + "react-router-dom": { + "eager": undefined, + "singleton": true, + }, + }, +} +`; + +exports[`defineBuildRemoteModuleConfig when additional shared dependencies are provided, add the dependencies to the module federation plugin configuration 1`] = ` +{ + "dts": false, + "exposes": { + "./register": "./src/register", + }, + "filename": "remoteEntry.js", + "manifest": false, + "name": "remote1", + "shared": { + "@squide/core": { + "eager": undefined, + "singleton": true, + }, + "@squide/module-federation": { + "eager": undefined, + "singleton": true, + }, + "@squide/msw": { + "eager": undefined, + "singleton": true, + }, + "@squide/react-router": { + "eager": undefined, + "singleton": true, + }, + "first": { + "singleton": true, + }, + "react": { + "eager": undefined, + "requiredVersion": undefined, + "singleton": true, + }, + "react-dom": { + "eager": undefined, + "singleton": true, + }, + "react-router-dom": { + "eager": undefined, + "singleton": true, + }, + "second": { + "eager": true, + "singleton": true, + }, + }, +} +`; + +exports[`defineBuildRemoteModuleConfig when environmentVariables is activated, add env-vars shared dependency and requiredVersion: false to the react shared dependency definition 1`] = ` +{ + "dts": false, + "exposes": { + "./register": "./src/register", + }, + "filename": "remoteEntry.js", + "manifest": false, + "name": "remote1", + "shared": { + "@squide/core": { + "eager": undefined, + "singleton": true, + }, + "@squide/env-vars": { + "eager": undefined, + "singleton": true, + }, + "@squide/module-federation": { + "eager": undefined, + "singleton": true, + }, + "@squide/msw": { + "eager": undefined, + "singleton": true, + }, + "@squide/react-router": { + "eager": undefined, + "singleton": true, + }, + "react": { + "eager": undefined, + "requiredVersion": undefined, + "singleton": true, + }, + "react-dom": { + "eager": undefined, + "singleton": true, + }, + "react-router-dom": { + "eager": undefined, + "singleton": true, + }, + }, +} +`; + +exports[`defineBuildRemoteModuleConfig when honeycomb is activated, add honeycomb shared dependency and requiredVersion: false to the react shared dependency definition 1`] = ` +{ + "dts": false, + "exposes": { + "./register": "./src/register", + }, + "filename": "remoteEntry.js", + "manifest": false, + "name": "remote1", + "shared": { + "@honeycombio/opentelemetry-web": { + "eager": undefined, + "singleton": true, + }, + "@opentelemetry/api": { + "eager": undefined, + "singleton": true, + }, + "@opentelemetry/auto-instrumentations-web": { + "eager": undefined, + "singleton": true, + }, + "@squide/core": { + "eager": undefined, + "singleton": true, + }, + "@squide/firefly-honeycomb": { + "eager": undefined, + "singleton": true, + }, + "@squide/module-federation": { + "eager": undefined, + "singleton": true, + }, + "@squide/msw": { + "eager": undefined, + "singleton": true, + }, + "@squide/react-router": { + "eager": undefined, + "singleton": true, + }, + "react": { + "eager": undefined, + "requiredVersion": undefined, + "singleton": true, + }, + "react-dom": { + "eager": undefined, + "singleton": true, + }, + "react-router-dom": { + "eager": undefined, + "singleton": true, + }, + }, +} +`; + +exports[`defineBuildRemoteModuleConfig when i18next is activated, add i18next shared dependency and requiredVersion: false to the react shared dependency definition 1`] = ` +{ + "dts": false, + "exposes": { + "./register": "./src/register", + }, + "filename": "remoteEntry.js", + "manifest": false, + "name": "remote1", + "shared": { + "@squide/core": { + "eager": undefined, + "singleton": true, + }, + "@squide/i18next": { + "eager": undefined, + "singleton": true, + }, + "@squide/module-federation": { + "eager": undefined, + "singleton": true, + }, + "@squide/msw": { + "eager": undefined, + "singleton": true, + }, + "@squide/react-router": { + "eager": undefined, + "singleton": true, + }, + "i18next": { + "eager": undefined, + "singleton": true, + }, + "react": { + "eager": undefined, + "requiredVersion": false, + "singleton": true, + }, + "react-dom": { + "eager": undefined, + "singleton": true, + }, + "react-i18next": { + "eager": undefined, + "singleton": true, + }, + "react-router-dom": { + "eager": undefined, + "singleton": true, + }, + }, +} +`; + +exports[`defineBuildRemoteModuleConfig when overriding options are provided for a default shared dependency, use the consumer option 1`] = ` +{ + "dts": false, + "exposes": { + "./register": "./src/register", + }, + "filename": "remoteEntry.js", + "manifest": false, + "name": "remote1", + "shared": { + "@squide/core": { + "eager": undefined, + "singleton": true, + }, + "@squide/module-federation": { + "eager": undefined, + "singleton": true, + }, + "@squide/msw": { + "eager": undefined, + "singleton": true, + }, + "@squide/react-router": { + "eager": undefined, + "singleton": true, + }, + "react": { + "eager": false, + "requiredVersion": undefined, + "singleton": false, + }, + "react-dom": { + "eager": undefined, + "singleton": true, + }, + "react-router-dom": { + "eager": undefined, + "singleton": true, + }, + }, +} +`; + +exports[`defineBuildRemoteModuleConfig when the router is not react-router, add react-router shared dependencies 1`] = ` +{ + "dts": false, + "exposes": { + "./register": "./src/register", + }, + "filename": "remoteEntry.js", + "manifest": false, + "name": "remote1", + "shared": { + "@squide/core": { + "eager": undefined, + "singleton": true, + }, + "@squide/module-federation": { + "eager": undefined, + "singleton": true, + }, + "@squide/msw": { + "eager": undefined, + "singleton": true, + }, + "react": { + "eager": undefined, + "requiredVersion": undefined, + "singleton": true, + }, + "react-dom": { + "eager": undefined, + "singleton": true, + }, + }, +} +`; + +exports[`defineDevHostConfig the application name is set as the federation plugin application name 1`] = ` +{ + "dts": false, + "manifest": false, + "name": "host", + "remotes": {}, + "shared": { + "@squide/core": { + "eager": true, + "singleton": true, + }, + "@squide/module-federation": { + "eager": true, + "singleton": true, + }, + "@squide/msw": { + "eager": true, + "singleton": true, + }, + "@squide/react-router": { + "eager": true, + "singleton": true, + }, + "react": { + "eager": true, + "requiredVersion": undefined, + "singleton": true, + }, + "react-dom": { + "eager": true, + "singleton": true, + }, + "react-router-dom": { + "eager": true, + "singleton": true, + }, + }, +} +`; + +exports[`defineDevHostConfig the module federation plugin configuration includes the default shared dependencies 1`] = ` +{ + "dts": false, + "manifest": false, + "name": "host", + "remotes": {}, + "shared": { + "@squide/core": { + "eager": true, + "singleton": true, + }, + "@squide/module-federation": { + "eager": true, + "singleton": true, + }, + "@squide/msw": { + "eager": true, + "singleton": true, + }, + "@squide/react-router": { + "eager": true, + "singleton": true, + }, + "react": { + "eager": true, + "requiredVersion": undefined, + "singleton": true, + }, + "react-dom": { + "eager": true, + "singleton": true, + }, + "react-router-dom": { + "eager": true, + "singleton": true, + }, + }, +} +`; + +exports[`defineDevHostConfig the module federation plugin configuration includes the remotes 1`] = ` +{ + "dts": false, + "manifest": false, + "name": "host", + "remotes": { + "remote1": "remote1@http://localhost/remote1/remoteEntry.js", + "remote2": "remote2@http://localhost/remote2/remoteEntry.js", + }, + "shared": { + "@squide/core": { + "eager": true, + "singleton": true, + }, + "@squide/module-federation": { + "eager": true, + "singleton": true, + }, + "@squide/msw": { + "eager": true, + "singleton": true, + }, + "@squide/react-router": { + "eager": true, + "singleton": true, + }, + "react": { + "eager": true, + "requiredVersion": undefined, + "singleton": true, + }, + "react-dom": { + "eager": true, + "singleton": true, + }, + "react-router-dom": { + "eager": true, + "singleton": true, + }, + }, +} +`; + +exports[`defineDevHostConfig when a function is provided to override the module federation plugin, apply the function 1`] = ` +{ + "dts": false, + "filename": "this is a dummy test value", + "manifest": false, + "name": "host", + "remotes": {}, + "shared": { + "@squide/core": { + "eager": true, + "singleton": true, + }, + "@squide/module-federation": { + "eager": true, + "singleton": true, + }, + "@squide/msw": { + "eager": true, + "singleton": true, + }, + "@squide/react-router": { + "eager": true, + "singleton": true, + }, + "react": { + "eager": true, + "requiredVersion": undefined, + "singleton": true, + }, + "react-dom": { + "eager": true, + "singleton": true, + }, + "react-router-dom": { + "eager": true, + "singleton": true, + }, + }, +} +`; + +exports[`defineDevHostConfig when additional options are provided for an existing default shared dependency, add the consumer options to the default options 1`] = ` +{ + "dts": false, + "manifest": false, + "name": "host", + "remotes": {}, + "shared": { + "@squide/core": { + "eager": true, + "singleton": true, + }, + "@squide/module-federation": { + "eager": true, + "singleton": true, + }, + "@squide/msw": { + "eager": true, + "singleton": true, + }, + "@squide/react-router": { + "eager": true, + "singleton": true, + }, + "react": { + "eager": true, + "requiredVersion": "1.2.3", + "singleton": true, + }, + "react-dom": { + "eager": true, + "singleton": true, + }, + "react-router-dom": { + "eager": true, + "singleton": true, + }, + }, +} +`; + +exports[`defineDevHostConfig when additional shared dependencies are provided, add the dependencies to the module federation plugin configuration 1`] = ` +{ + "dts": false, + "manifest": false, + "name": "host", + "remotes": {}, + "shared": { + "@squide/core": { + "eager": true, + "singleton": true, + }, + "@squide/module-federation": { + "eager": true, + "singleton": true, + }, + "@squide/msw": { + "eager": true, + "singleton": true, + }, + "@squide/react-router": { + "eager": true, + "singleton": true, + }, + "first": { + "singleton": true, + }, + "react": { + "eager": true, + "requiredVersion": undefined, + "singleton": true, + }, + "react-dom": { + "eager": true, + "singleton": true, + }, + "react-router-dom": { + "eager": true, + "singleton": true, + }, + "second": { + "eager": true, + "singleton": true, + }, + }, +} +`; + +exports[`defineDevHostConfig when environmentVariables is activated, add env-var shared dependency and requiredVersion: false to the react shared dependency definition 1`] = ` +{ + "dts": false, + "manifest": false, + "name": "host", + "remotes": {}, + "shared": { + "@squide/core": { + "eager": true, + "singleton": true, + }, + "@squide/env-vars": { + "eager": true, + "singleton": true, + }, + "@squide/module-federation": { + "eager": true, + "singleton": true, + }, + "@squide/msw": { + "eager": true, + "singleton": true, + }, + "@squide/react-router": { + "eager": true, + "singleton": true, + }, + "react": { + "eager": true, + "requiredVersion": undefined, + "singleton": true, + }, + "react-dom": { + "eager": true, + "singleton": true, + }, + "react-router-dom": { + "eager": true, + "singleton": true, + }, + }, +} +`; + +exports[`defineDevHostConfig when honeycomb is activated, add honeycomb shared dependency and requiredVersion: false to the react shared dependency definition 1`] = ` +{ + "dts": false, + "manifest": false, + "name": "host", + "remotes": {}, + "shared": { + "@honeycombio/opentelemetry-web": { + "eager": true, + "singleton": true, + }, + "@opentelemetry/api": { + "eager": true, + "singleton": true, + }, + "@opentelemetry/auto-instrumentations-web": { + "eager": true, + "singleton": true, + }, + "@squide/core": { + "eager": true, + "singleton": true, + }, + "@squide/firefly-honeycomb": { + "eager": true, + "singleton": true, + }, + "@squide/module-federation": { + "eager": true, + "singleton": true, + }, + "@squide/msw": { + "eager": true, + "singleton": true, + }, + "@squide/react-router": { + "eager": true, + "singleton": true, + }, + "react": { + "eager": true, + "requiredVersion": undefined, + "singleton": true, + }, + "react-dom": { + "eager": true, + "singleton": true, + }, + "react-router-dom": { + "eager": true, + "singleton": true, + }, + }, +} +`; + +exports[`defineDevHostConfig when i18next is activated, add i18next shared dependency and requiredVersion: false to the react shared dependency definition 1`] = ` +{ + "dts": false, + "manifest": false, + "name": "host", + "remotes": {}, + "shared": { + "@squide/core": { + "eager": true, + "singleton": true, + }, + "@squide/i18next": { + "eager": true, + "singleton": true, + }, + "@squide/module-federation": { + "eager": true, + "singleton": true, + }, + "@squide/msw": { + "eager": true, + "singleton": true, + }, + "@squide/react-router": { + "eager": true, + "singleton": true, + }, + "i18next": { + "eager": true, + "singleton": true, + }, + "react": { + "eager": true, + "requiredVersion": false, + "singleton": true, + }, + "react-dom": { + "eager": true, + "singleton": true, + }, + "react-i18next": { + "eager": true, + "singleton": true, + }, + "react-router-dom": { + "eager": true, + "singleton": true, + }, + }, +} +`; + +exports[`defineDevHostConfig when overriding options are provided for a default shared dependency, use the consumer option 1`] = ` +{ + "dts": false, + "manifest": false, + "name": "host", + "remotes": {}, + "shared": { + "@squide/core": { + "eager": true, + "singleton": true, + }, + "@squide/module-federation": { + "eager": true, + "singleton": true, + }, + "@squide/msw": { + "eager": true, + "singleton": true, + }, + "@squide/react-router": { + "eager": true, + "singleton": true, + }, + "react": { + "eager": false, + "requiredVersion": undefined, + "singleton": false, + }, + "react-dom": { + "eager": true, + "singleton": true, + }, + "react-router-dom": { + "eager": true, + "singleton": true, + }, + }, +} +`; + +exports[`defineDevHostConfig when the router is not react-router, do not add react-router shared dependencies 1`] = ` +{ + "dts": false, + "manifest": false, + "name": "host", + "remotes": {}, + "shared": { + "@squide/core": { + "eager": true, + "singleton": true, + }, + "@squide/module-federation": { + "eager": true, + "singleton": true, + }, + "@squide/msw": { + "eager": true, + "singleton": true, + }, + "react": { + "eager": true, + "requiredVersion": undefined, + "singleton": true, + }, + "react-dom": { + "eager": true, + "singleton": true, + }, + }, +} +`; + +exports[`defineDevRemoteModuleConfig the application name is set as the federation plugin application name 1`] = ` +{ + "dts": false, + "exposes": { + "./register": "./src/register", + }, + "filename": "remoteEntry.js", + "manifest": false, + "name": "remote1", + "shared": { + "@squide/core": { + "eager": undefined, + "singleton": true, + }, + "@squide/module-federation": { + "eager": undefined, + "singleton": true, + }, + "@squide/msw": { + "eager": undefined, + "singleton": true, + }, + "@squide/react-router": { + "eager": undefined, + "singleton": true, + }, + "react": { + "eager": undefined, + "requiredVersion": undefined, + "singleton": true, + }, + "react-dom": { + "eager": undefined, + "singleton": true, + }, + "react-router-dom": { + "eager": undefined, + "singleton": true, + }, + }, +} +`; + +exports[`defineDevRemoteModuleConfig the module federation plugin configuration includes the default shared dependencies 1`] = ` +{ + "dts": false, + "exposes": { + "./register": "./src/register", + }, + "filename": "remoteEntry.js", + "manifest": false, + "name": "remote1", + "shared": { + "@squide/core": { + "eager": undefined, + "singleton": true, + }, + "@squide/module-federation": { + "eager": undefined, + "singleton": true, + }, + "@squide/msw": { + "eager": undefined, + "singleton": true, + }, + "@squide/react-router": { + "eager": undefined, + "singleton": true, + }, + "react": { + "eager": undefined, + "requiredVersion": undefined, + "singleton": true, + }, + "react-dom": { + "eager": undefined, + "singleton": true, + }, + "react-router-dom": { + "eager": undefined, + "singleton": true, + }, + }, +} +`; + +exports[`defineDevRemoteModuleConfig when a function is provided to override the module federation plugin, apply the function 1`] = ` +{ + "dts": false, + "exposes": { + "./register": "./src/register", + }, + "filename": "this is a dummy test value", + "manifest": false, + "name": "remote1", + "shared": { + "@squide/core": { + "eager": undefined, + "singleton": true, + }, + "@squide/module-federation": { + "eager": undefined, + "singleton": true, + }, + "@squide/msw": { + "eager": undefined, + "singleton": true, + }, + "@squide/react-router": { + "eager": undefined, + "singleton": true, + }, + "react": { + "eager": undefined, + "requiredVersion": undefined, + "singleton": true, + }, + "react-dom": { + "eager": undefined, + "singleton": true, + }, + "react-router-dom": { + "eager": undefined, + "singleton": true, + }, + }, +} +`; + +exports[`defineDevRemoteModuleConfig when additional options are provided for an existing default shared dependency, add the consumer options to the default options 1`] = ` +{ + "dts": false, + "exposes": { + "./register": "./src/register", + }, + "filename": "remoteEntry.js", + "manifest": false, + "name": "remote1", + "shared": { + "@squide/core": { + "eager": undefined, + "singleton": true, + }, + "@squide/module-federation": { + "eager": undefined, + "singleton": true, + }, + "@squide/msw": { + "eager": undefined, + "singleton": true, + }, + "@squide/react-router": { + "eager": undefined, + "singleton": true, + }, + "react": { + "eager": undefined, + "requiredVersion": "1.2.3", + "singleton": true, + }, + "react-dom": { + "eager": undefined, + "singleton": true, + }, + "react-router-dom": { + "eager": undefined, + "singleton": true, + }, + }, +} +`; + +exports[`defineDevRemoteModuleConfig when additional shared dependencies are provided, add the dependencies to the module federation plugin configuration 1`] = ` +{ + "dts": false, + "exposes": { + "./register": "./src/register", + }, + "filename": "remoteEntry.js", + "manifest": false, + "name": "remote1", + "shared": { + "@squide/core": { + "eager": undefined, + "singleton": true, + }, + "@squide/module-federation": { + "eager": undefined, + "singleton": true, + }, + "@squide/msw": { + "eager": undefined, + "singleton": true, + }, + "@squide/react-router": { + "eager": undefined, + "singleton": true, + }, + "first": { + "singleton": true, + }, + "react": { + "eager": undefined, + "requiredVersion": undefined, + "singleton": true, + }, + "react-dom": { + "eager": undefined, + "singleton": true, + }, + "react-router-dom": { + "eager": undefined, + "singleton": true, + }, + "second": { + "eager": true, + "singleton": true, + }, + }, +} +`; + +exports[`defineDevRemoteModuleConfig when environmentVariables is activated, add env-vars shared dependency and requiredVersion: false to the react shared dependency definition 1`] = ` +{ + "dts": false, + "manifest": false, + "name": "host", + "remotes": {}, + "shared": { + "@squide/core": { + "eager": true, + "singleton": true, + }, + "@squide/env-vars": { + "eager": true, + "singleton": true, + }, + "@squide/module-federation": { + "eager": true, + "singleton": true, + }, + "@squide/msw": { + "eager": true, + "singleton": true, + }, + "@squide/react-router": { + "eager": true, + "singleton": true, + }, + "react": { + "eager": true, + "requiredVersion": undefined, + "singleton": true, + }, + "react-dom": { + "eager": true, + "singleton": true, + }, + "react-router-dom": { + "eager": true, + "singleton": true, + }, + }, +} +`; + +exports[`defineDevRemoteModuleConfig when honeycomb is activated, add honeycomb shared dependency and requiredVersion: false to the react shared dependency definition 1`] = ` +{ + "dts": false, + "manifest": false, + "name": "host", + "remotes": {}, + "shared": { + "@honeycombio/opentelemetry-web": { + "eager": true, + "singleton": true, + }, + "@opentelemetry/api": { + "eager": true, + "singleton": true, + }, + "@opentelemetry/auto-instrumentations-web": { + "eager": true, + "singleton": true, + }, + "@squide/core": { + "eager": true, + "singleton": true, + }, + "@squide/firefly-honeycomb": { + "eager": true, + "singleton": true, + }, + "@squide/module-federation": { + "eager": true, + "singleton": true, + }, + "@squide/msw": { + "eager": true, + "singleton": true, + }, + "@squide/react-router": { + "eager": true, + "singleton": true, + }, + "react": { + "eager": true, + "requiredVersion": undefined, + "singleton": true, + }, + "react-dom": { + "eager": true, + "singleton": true, + }, + "react-router-dom": { + "eager": true, + "singleton": true, + }, + }, +} +`; + +exports[`defineDevRemoteModuleConfig when i18next is activated, add i18next shared dependency and requiredVersion: false to the react shared dependency definition 1`] = ` +{ + "dts": false, + "exposes": { + "./register": "./src/register", + }, + "filename": "remoteEntry.js", + "manifest": false, + "name": "remote1", + "shared": { + "@squide/core": { + "eager": undefined, + "singleton": true, + }, + "@squide/i18next": { + "eager": undefined, + "singleton": true, + }, + "@squide/module-federation": { + "eager": undefined, + "singleton": true, + }, + "@squide/msw": { + "eager": undefined, + "singleton": true, + }, + "@squide/react-router": { + "eager": undefined, + "singleton": true, + }, + "i18next": { + "eager": undefined, + "singleton": true, + }, + "react": { + "eager": undefined, + "requiredVersion": false, + "singleton": true, + }, + "react-dom": { + "eager": undefined, + "singleton": true, + }, + "react-i18next": { + "eager": undefined, + "singleton": true, + }, + "react-router-dom": { + "eager": undefined, + "singleton": true, + }, + }, +} +`; + +exports[`defineDevRemoteModuleConfig when overriding options are provided for a default shared dependency, use the consumer option 1`] = ` +{ + "dts": false, + "exposes": { + "./register": "./src/register", + }, + "filename": "remoteEntry.js", + "manifest": false, + "name": "remote1", + "shared": { + "@squide/core": { + "eager": undefined, + "singleton": true, + }, + "@squide/module-federation": { + "eager": undefined, + "singleton": true, + }, + "@squide/msw": { + "eager": undefined, + "singleton": true, + }, + "@squide/react-router": { + "eager": undefined, + "singleton": true, + }, + "react": { + "eager": false, + "requiredVersion": undefined, + "singleton": false, + }, + "react-dom": { + "eager": undefined, + "singleton": true, + }, + "react-router-dom": { + "eager": undefined, + "singleton": true, + }, + }, +} +`; + +exports[`defineDevRemoteModuleConfig when the router is not react-router, add react-router shared dependencies 1`] = ` +{ + "dts": false, + "exposes": { + "./register": "./src/register", + }, + "filename": "remoteEntry.js", + "manifest": false, + "name": "remote1", + "shared": { + "@squide/core": { + "eager": undefined, + "singleton": true, + }, + "@squide/module-federation": { + "eager": undefined, + "singleton": true, + }, + "@squide/msw": { + "eager": undefined, + "singleton": true, + }, + "react": { + "eager": undefined, + "requiredVersion": undefined, + "singleton": true, + }, + "react-dom": { + "eager": undefined, + "singleton": true, + }, + }, +} +`; diff --git a/packages/firefly-rsbuild-configs/tests/defineConfig.test.ts b/packages/firefly-rsbuild-configs/tests/defineConfig.test.ts new file mode 100644 index 000000000..5708e2cd9 --- /dev/null +++ b/packages/firefly-rsbuild-configs/tests/defineConfig.test.ts @@ -0,0 +1,853 @@ +import { pluginModuleFederation } from "@module-federation/rsbuild-plugin"; +import type { RsbuildConfig, RsbuildPlugin, RsbuildPlugins } from "@rsbuild/core"; +import { __clearModuleFederationPluginFactory, __setModuleFederationPluginFactory, defineBuildHostConfig, defineBuildRemoteModuleConfig, defineDevHostConfig, defineDevRemoteModuleConfig, type ModuleFederationPluginOptions } from "../src/defineConfig.ts"; + +const dummyPlugin = (): RsbuildPlugin => { + return { + name: "dummy-plugin", + setup: () => { + console.log("Setup Dummy plugin."); + } + }; +}; + +const pluginModuleFederationWrapper = (moduleFederationOptions: ModuleFederationPluginOptions): RsbuildPlugin => { + const originalPlugin = pluginModuleFederation(moduleFederationOptions); + + return { + // eslint-disable-next-line @typescript-eslint/ban-ts-comment + // @ts-ignore + _options: moduleFederationOptions, + ...originalPlugin + }; +}; + +function findPlugin(name: string, plugins: RsbuildPlugins = []) { + // eslint-disable-next-line @typescript-eslint/ban-ts-comment + // @ts-ignore + const plugin = plugins.find(x => x!.name === name); + + if (!plugin) { + throw new Error(`Cannot find Rspack plugin named: "${name}".`); + } + + return plugin as RsbuildPlugin; +} + +// The following options are relative to the environment running the test and breaks on CI. +function prepareModuleFederationPluginForSnapshot(plugin: RsbuildPlugin) { + // eslint-disable-next-line @typescript-eslint/ban-ts-comment + // @ts-ignore + const options = plugin._options; + + delete (options as ModuleFederationPluginOptions)["runtimePlugins"]; + + return options; +} + +describe("defineDevHostConfig", () => { + beforeAll(() => { + __setModuleFederationPluginFactory(pluginModuleFederationWrapper); + }); + + afterAll(() => { + __clearModuleFederationPluginFactory(); + }); + + test("the application name is set as the federation plugin application name", () => { + const config = defineDevHostConfig(8080, []); + const plugin = findPlugin("rsbuild:module-federation-enhanced", config.plugins); + + expect(plugin).toBeDefined(); + expect(prepareModuleFederationPluginForSnapshot(plugin)).toMatchSnapshot(); + }); + + test("the port number is set as the dev server port", () => { + const result = defineDevHostConfig(8080, []); + + expect(result.server!.port).toBe(8080); + }); + + test("when no asset prefix is provided, the default asset prefix is \"auto\"", () => { + const config = defineDevHostConfig(8080, []); + + expect(config.dev!.assetPrefix).toBe("auto"); + }); + + test("when an asset prefix is provided, use the provided asset prefix", () => { + const config = defineDevHostConfig(8080, [], { + assetPrefix: "http://localhost:8080/" + }); + + expect(config.dev!.assetPrefix).toBe("http://localhost:8080/"); + }); + + test("when no value is provided for lazy compilation, lazy compilation is disabled", () => { + const config = defineDevHostConfig(8080, []); + + expect(config.dev!.lazyCompilation).toBeFalsy(); + }); + + test("when a value is provided for lazy compilation, use the provided value", () => { + const config = defineDevHostConfig(8080, [], { + lazyCompilation: true + }); + + expect(config.dev!.lazyCompilation).toBeTruthy(); + }); + + test("when a function is provided to override the module federation plugin, apply the function", () => { + const config = defineDevHostConfig(8080, [], { + moduleFederationPluginOptions: (defaultOptions: ModuleFederationPluginOptions) => { + defaultOptions.filename = "this is a dummy test value"; + + return defaultOptions; + } + }); + + const plugin = findPlugin("rsbuild:module-federation-enhanced", config.plugins); + + expect(plugin).toBeDefined(); + expect(prepareModuleFederationPluginForSnapshot(plugin)).toMatchSnapshot(); + }); + + test("the module federation plugin configuration includes the remotes", () => { + const config = defineDevHostConfig(8080, [ + { name: "remote1", url: "http://localhost/remote1" }, + { name: "remote2", url: "http://localhost/remote2" } + ]); + + const plugin = findPlugin("rsbuild:module-federation-enhanced", config.plugins); + + expect(plugin).toBeDefined(); + expect(prepareModuleFederationPluginForSnapshot(plugin)).toMatchSnapshot(); + }); + + test("the module federation plugin configuration includes the default shared dependencies", () => { + const config = defineDevHostConfig(8080, []); + const plugin = findPlugin("rsbuild:module-federation-enhanced", config.plugins); + + expect(plugin).toBeDefined(); + expect(prepareModuleFederationPluginForSnapshot(plugin)).toMatchSnapshot(); + }); + + test("when additional shared dependencies are provided, add the dependencies to the module federation plugin configuration", () => { + const config = defineDevHostConfig(8080, [], { + sharedDependencies: { + "first": { + singleton: true + }, + "second": { + eager: true, + singleton: true + } + } + }); + + const plugin = findPlugin("rsbuild:module-federation-enhanced", config.plugins); + + expect(plugin).toBeDefined(); + expect(prepareModuleFederationPluginForSnapshot(plugin)).toMatchSnapshot(); + }); + + test("when additional options are provided for an existing default shared dependency, add the consumer options to the default options", () => { + const config = defineDevHostConfig(8080, [], { + sharedDependencies: { + "react": { + requiredVersion: "1.2.3" + } + } + }); + + const plugin = findPlugin("rsbuild:module-federation-enhanced", config.plugins); + + expect(plugin).toBeDefined(); + expect(prepareModuleFederationPluginForSnapshot(plugin)).toMatchSnapshot(); + }); + + test("when overriding options are provided for a default shared dependency, use the consumer option", () => { + const config = defineDevHostConfig(8080, [], { + sharedDependencies: { + "react": { + eager: false, + singleton: false + } + } + }); + + const plugin = findPlugin("rsbuild:module-federation-enhanced", config.plugins); + + expect(plugin).toBeDefined(); + expect(prepareModuleFederationPluginForSnapshot(plugin)).toMatchSnapshot(); + }); + + test("when the router is not react-router, do not add react-router shared dependencies", () => { + const config = defineDevHostConfig(8080, [], { + features: { + // eslint-disable-next-line @typescript-eslint/ban-ts-comment + // @ts-ignore + router: "something-else" + } + }); + + const plugin = findPlugin("rsbuild:module-federation-enhanced", config.plugins); + + expect(plugin).toBeDefined(); + expect(prepareModuleFederationPluginForSnapshot(plugin)).toMatchSnapshot(); + }); + + test("when i18next is activated, add i18next shared dependency and requiredVersion: false to the react shared dependency definition", () => { + const config = defineDevHostConfig(8080, [], { + features: { + i18next: true + } + }); + + const plugin = findPlugin("rsbuild:module-federation-enhanced", config.plugins); + + expect(plugin).toBeDefined(); + expect(prepareModuleFederationPluginForSnapshot(plugin)).toMatchSnapshot(); + }); + + test("when honeycomb is activated, add honeycomb shared dependency and requiredVersion: false to the react shared dependency definition", () => { + const config = defineDevHostConfig(8080, [], { + features: { + honeycomb: true + } + }); + + const plugin = findPlugin("rsbuild:module-federation-enhanced", config.plugins); + + expect(plugin).toBeDefined(); + expect(prepareModuleFederationPluginForSnapshot(plugin)).toMatchSnapshot(); + }); + + test("when environmentVariables is activated, add env-var shared dependency and requiredVersion: false to the react shared dependency definition", () => { + const config = defineDevHostConfig(8080, [], { + features: { + environmentVariables: true + } + }); + + const plugin = findPlugin("rsbuild:module-federation-enhanced", config.plugins); + + expect(plugin).toBeDefined(); + expect(prepareModuleFederationPluginForSnapshot(plugin)).toMatchSnapshot(); + }); + + test("when additional plugins are provided, the plugins are added to the configuration", () => { + const config = defineDevHostConfig(8080, [], { + plugins: [dummyPlugin()] + }); + + const plugin = findPlugin("dummy-plugin", config.plugins); + + expect(plugin).toBeDefined(); + }); + + test("when configuration transformers are provided, the transformers are applied to the configuration", () => { + const result = defineDevHostConfig(8080, [], { + transformers: [(config: RsbuildConfig) => { + config.source = config.source ?? {}; + + config.source.entry = { + index: "updated by the dummy transformer" + }; + + return config; + }] + }); + + expect(result.source!.entry!.index).toBe("updated by the dummy transformer"); + }); +}); + +describe("defineBuildHostConfig", () => { + beforeAll(() => { + __setModuleFederationPluginFactory(pluginModuleFederationWrapper); + }); + + afterAll(() => { + __clearModuleFederationPluginFactory(); + }); + + test("the application name is set as the federation plugin application name", () => { + const config = defineBuildHostConfig([]); + const plugin = findPlugin("rsbuild:module-federation-enhanced", config.plugins); + + expect(plugin).toBeDefined(); + expect(prepareModuleFederationPluginForSnapshot(plugin)).toMatchSnapshot(); + }); + + test("when no asset prefix is provided, the default asset prefix is \"auto\"", () => { + const config = defineBuildHostConfig([]); + const plugin = findPlugin("rsbuild:module-federation-enhanced", config.plugins); + + expect(plugin).toBeDefined(); + expect(prepareModuleFederationPluginForSnapshot(plugin)).toMatchSnapshot(); + }); + + test("when an asset prefix is provided, use the provided asset prefix", () => { + const config = defineBuildHostConfig([], { + assetPrefix: "http://localhost:8080/" + }); + + expect(config.output!.assetPrefix).toBe("http://localhost:8080/"); + }); + + test("when a function is provided to override the module federation plugin, apply the function", () => { + const config = defineBuildHostConfig([], { + moduleFederationPluginOptions: (defaultOptions: ModuleFederationPluginOptions) => { + defaultOptions.filename = "this is a dummy test value"; + + return defaultOptions; + } + }); + + const plugin = findPlugin("rsbuild:module-federation-enhanced", config.plugins); + + expect(plugin).toBeDefined(); + expect(prepareModuleFederationPluginForSnapshot(plugin)).toMatchSnapshot(); + }); + + test("the module federation plugin configuration includes the remotes", () => { + const config = defineBuildHostConfig([ + { name: "remote1", url: "http://localhost/remote1" }, + { name: "remote2", url: "http://localhost/remote2" } + ]); + + const plugin = findPlugin("rsbuild:module-federation-enhanced", config.plugins); + + expect(plugin).toBeDefined(); + expect(prepareModuleFederationPluginForSnapshot(plugin)).toMatchSnapshot(); + }); + + test("the module federation plugin configuration includes the default shared dependencies", () => { + const config = defineBuildHostConfig([]); + const plugin = findPlugin("rsbuild:module-federation-enhanced", config.plugins); + + expect(plugin).toBeDefined(); + expect(prepareModuleFederationPluginForSnapshot(plugin)).toMatchSnapshot(); + }); + + test("when additional shared dependencies are provided, add the dependencies to the module federation plugin configuration", () => { + const config = defineBuildHostConfig([], { + sharedDependencies: { + "first": { + singleton: true + }, + "second": { + eager: true, + singleton: true + } + } + }); + + const plugin = findPlugin("rsbuild:module-federation-enhanced", config.plugins); + + expect(plugin).toBeDefined(); + expect(prepareModuleFederationPluginForSnapshot(plugin)).toMatchSnapshot(); + }); + + test("when additional options are provided for an existing default shared dependency, add the consumer options to the default options", () => { + const config = defineBuildHostConfig([], { + sharedDependencies: { + "react": { + requiredVersion: "1.2.3" + } + } + }); + + const plugin = findPlugin("rsbuild:module-federation-enhanced", config.plugins); + + expect(plugin).toBeDefined(); + expect(prepareModuleFederationPluginForSnapshot(plugin)).toMatchSnapshot(); + }); + + test("when overriding options are provided for a default shared dependency, use the consumer option", () => { + const config = defineBuildHostConfig([], { + sharedDependencies: { + "react": { + eager: false, + singleton: false + } + } + }); + + const plugin = findPlugin("rsbuild:module-federation-enhanced", config.plugins); + + expect(plugin).toBeDefined(); + expect(prepareModuleFederationPluginForSnapshot(plugin)).toMatchSnapshot(); + }); + + test("when the router is not react-router, do not add react-router shared dependencies", () => { + const config = defineBuildHostConfig([], { + features: { + // eslint-disable-next-line @typescript-eslint/ban-ts-comment + // @ts-ignore + router: "something-else" + } + }); + + const plugin = findPlugin("rsbuild:module-federation-enhanced", config.plugins); + + expect(plugin).toBeDefined(); + expect(prepareModuleFederationPluginForSnapshot(plugin)).toMatchSnapshot(); + }); + + test("when i18next is activated, add i18next shared dependency and requiredVersion: false to the react shared dependency definition", () => { + const config = defineBuildHostConfig([], { + features: { + i18next: true + } + }); + + const plugin = findPlugin("rsbuild:module-federation-enhanced", config.plugins); + + expect(plugin).toBeDefined(); + expect(prepareModuleFederationPluginForSnapshot(plugin)).toMatchSnapshot(); + }); + + test("when honeycomb is activated, add honeycomb shared dependency and requiredVersion: false to the react shared dependency definition", () => { + const config = defineBuildHostConfig([], { + features: { + honeycomb: true + } + }); + + const plugin = findPlugin("rsbuild:module-federation-enhanced", config.plugins); + + expect(plugin).toBeDefined(); + expect(prepareModuleFederationPluginForSnapshot(plugin)).toMatchSnapshot(); + }); + + test("when environmentVariables is env-vars, add env-vars shared dependency and requiredVersion: false to the react shared dependency definition", () => { + const config = defineBuildHostConfig([], { + features: { + environmentVariables: true + } + }); + + const plugin = findPlugin("rsbuild:module-federation-enhanced", config.plugins); + + expect(plugin).toBeDefined(); + expect(prepareModuleFederationPluginForSnapshot(plugin)).toMatchSnapshot(); + }); + + test("when additional plugins are provided, the plugins are added to the configuration", () => { + const config = defineBuildHostConfig([], { + plugins: [dummyPlugin()] + }); + + const plugin = findPlugin("dummy-plugin", config.plugins); + + expect(plugin).toBeDefined(); + }); + + test("when configuration transformers are provided, the transformers are applied to the configuration", () => { + const result = defineBuildHostConfig([], { + transformers: [(config: RsbuildConfig) => { + config.source = config.source ?? {}; + + config.source.entry = { + index: "updated by the dummy transformer" + }; + + return config; + }] + }); + + expect(result.source!.entry!.index).toBe("updated by the dummy transformer"); + }); +}); + +describe("defineDevRemoteModuleConfig", () => { + beforeAll(() => { + __setModuleFederationPluginFactory(pluginModuleFederationWrapper); + }); + + afterAll(() => { + __clearModuleFederationPluginFactory(); + }); + + test("the application name is set as the federation plugin application name", () => { + const config = defineDevRemoteModuleConfig("remote1", 8081); + const plugin = findPlugin("rsbuild:module-federation-enhanced", config.plugins); + + expect(plugin).toBeDefined(); + expect(prepareModuleFederationPluginForSnapshot(plugin)).toMatchSnapshot(); + }); + + test("the port number is set as the dev server port", () => { + const result = defineDevRemoteModuleConfig("remote1", 8081); + + expect(result.server!.port).toBe(8081); + }); + + test("when no asset prefix is provided, the default asset prefix is \"auto\"", () => { + const config = defineDevRemoteModuleConfig("remote1", 8081); + + expect(config.dev!.assetPrefix).toBe("auto"); + }); + + test("when an asset prefix is provided, use the provided asset prefix", () => { + const config = defineDevRemoteModuleConfig("remote1", 8081, { + assetPrefix: "http://localhost:8081/" + }); + + expect(config.dev!.assetPrefix).toBe("http://localhost:8081/"); + }); + + test("when no value is provided for lazy compilation, lazy compilation is disabled", () => { + const config = defineDevRemoteModuleConfig("remote1", 8081); + + expect(config.dev!.lazyCompilation).toBeFalsy(); + }); + + test("when a value is provided for lazy compilation, use the provided value", () => { + const config = defineDevRemoteModuleConfig("remote1", 8081, { + lazyCompilation: true + }); + + expect(config.dev!.lazyCompilation).toBeTruthy(); + }); + + test("when a function is provided to override the module federation plugin, apply the function", () => { + const config = defineDevRemoteModuleConfig("remote1", 8081, { + moduleFederationPluginOptions: (defaultOptions: ModuleFederationPluginOptions) => { + defaultOptions.filename = "this is a dummy test value"; + + return defaultOptions; + } + }); + + const plugin = findPlugin("rsbuild:module-federation-enhanced", config.plugins); + + expect(plugin).toBeDefined(); + expect(prepareModuleFederationPluginForSnapshot(plugin)).toMatchSnapshot(); + }); + + test("the module federation plugin configuration includes the default shared dependencies", () => { + const config = defineDevRemoteModuleConfig("remote1", 8081); + const plugin = findPlugin("rsbuild:module-federation-enhanced", config.plugins); + + expect(plugin).toBeDefined(); + expect(prepareModuleFederationPluginForSnapshot(plugin)).toMatchSnapshot(); + }); + + test("when additional shared dependencies are provided, add the dependencies to the module federation plugin configuration", () => { + const config = defineDevRemoteModuleConfig("remote1", 8081, { + sharedDependencies: { + "first": { + singleton: true + }, + "second": { + eager: true, + singleton: true + } + } + }); + + const plugin = findPlugin("rsbuild:module-federation-enhanced", config.plugins); + + expect(plugin).toBeDefined(); + expect(prepareModuleFederationPluginForSnapshot(plugin)).toMatchSnapshot(); + }); + + test("when additional options are provided for an existing default shared dependency, add the consumer options to the default options", () => { + const config = defineDevRemoteModuleConfig("remote1", 8081, { + sharedDependencies: { + "react": { + requiredVersion: "1.2.3" + } + } + }); + + const plugin = findPlugin("rsbuild:module-federation-enhanced", config.plugins); + + expect(plugin).toBeDefined(); + expect(prepareModuleFederationPluginForSnapshot(plugin)).toMatchSnapshot(); + }); + + test("when overriding options are provided for a default shared dependency, use the consumer option", () => { + const config = defineDevRemoteModuleConfig("remote1", 8081, { + sharedDependencies: { + "react": { + eager: false, + singleton: false + } + } + }); + + const plugin = findPlugin("rsbuild:module-federation-enhanced", config.plugins); + + expect(plugin).toBeDefined(); + expect(prepareModuleFederationPluginForSnapshot(plugin)).toMatchSnapshot(); + }); + + test("when the router is not react-router, add react-router shared dependencies", () => { + const config = defineDevRemoteModuleConfig("remote1", 8081, { + features: { + // eslint-disable-next-line @typescript-eslint/ban-ts-comment + // @ts-ignore + router: "something-else" + } + }); + + const plugin = findPlugin("rsbuild:module-federation-enhanced", config.plugins); + + expect(plugin).toBeDefined(); + expect(prepareModuleFederationPluginForSnapshot(plugin)).toMatchSnapshot(); + }); + + test("when i18next is activated, add i18next shared dependency and requiredVersion: false to the react shared dependency definition", () => { + const config = defineDevRemoteModuleConfig("remote1", 8081, { + features: { + i18next: true + } + }); + + const plugin = findPlugin("rsbuild:module-federation-enhanced", config.plugins); + + expect(plugin).toBeDefined(); + expect(prepareModuleFederationPluginForSnapshot(plugin)).toMatchSnapshot(); + }); + + test("when honeycomb is activated, add honeycomb shared dependency and requiredVersion: false to the react shared dependency definition", () => { + const config = defineBuildHostConfig([], { + features: { + honeycomb: true + } + }); + + const plugin = findPlugin("rsbuild:module-federation-enhanced", config.plugins); + + expect(plugin).toBeDefined(); + expect(prepareModuleFederationPluginForSnapshot(plugin)).toMatchSnapshot(); + }); + + test("when environmentVariables is activated, add env-vars shared dependency and requiredVersion: false to the react shared dependency definition", () => { + const config = defineBuildHostConfig([], { + features: { + environmentVariables: true + } + }); + + const plugin = findPlugin("rsbuild:module-federation-enhanced", config.plugins); + + expect(plugin).toBeDefined(); + expect(prepareModuleFederationPluginForSnapshot(plugin)).toMatchSnapshot(); + }); + + test("when additional plugins are provided, the plugins are added to the configuration", () => { + const config = defineDevRemoteModuleConfig("remote1", 8081, { + plugins: [dummyPlugin()] + }); + + const plugin = findPlugin("dummy-plugin", config.plugins); + + expect(plugin).toBeDefined(); + }); + + test("when additional configuration transformers are provided, the transformers are applied to the configuration", () => { + const result = defineDevRemoteModuleConfig("remote1", 8081, { + transformers: [(config: RsbuildConfig) => { + config.source = config.source ?? {}; + + config.source.entry = { + index: "updated by the dummy transformer" + }; + + return config; + }] + }); + + expect(result.source!.entry!.index).toBe("updated by the dummy transformer"); + }); +}); + +describe("defineBuildRemoteModuleConfig", () => { + beforeAll(() => { + __setModuleFederationPluginFactory(pluginModuleFederationWrapper); + }); + + afterAll(() => { + __clearModuleFederationPluginFactory(); + }); + + test("the application name is set as the federation plugin application name", () => { + const config = defineBuildRemoteModuleConfig("remote1"); + const plugin = findPlugin("rsbuild:module-federation-enhanced", config.plugins); + + expect(plugin).toBeDefined(); + expect(prepareModuleFederationPluginForSnapshot(plugin)).toMatchSnapshot(); + }); + + test("when no asset prefix is provided, the default asset prefix is \"auto\"", () => { + const config = defineBuildRemoteModuleConfig("remote1"); + + expect(config.output!.assetPrefix).toBe("auto"); + }); + + test("when an asset prefix is provided, use the provided asset prefix", () => { + const config = defineBuildRemoteModuleConfig("remote1", { + assetPrefix: "http://localhost:8080/" + }); + + expect(config.output!.assetPrefix).toBe("http://localhost:8080/"); + }); + + test("when a function is provided to override the module federation plugin, apply the function", () => { + const config = defineBuildRemoteModuleConfig("remote1", { + moduleFederationPluginOptions: (defaultOptions: ModuleFederationPluginOptions) => { + defaultOptions.filename = "this is a dummy test value"; + + return defaultOptions; + } + }); + + const plugin = findPlugin("rsbuild:module-federation-enhanced", config.plugins); + + expect(plugin).toBeDefined(); + expect(prepareModuleFederationPluginForSnapshot(plugin)).toMatchSnapshot(); + }); + + test("the module federation plugin configuration includes the default shared dependencies", () => { + const config = defineBuildRemoteModuleConfig("remote1"); + const plugin = findPlugin("rsbuild:module-federation-enhanced", config.plugins); + + expect(plugin).toBeDefined(); + expect(prepareModuleFederationPluginForSnapshot(plugin)).toMatchSnapshot(); + }); + + test("when additional shared dependencies are provided, add the dependencies to the module federation plugin configuration", () => { + const config = defineBuildRemoteModuleConfig("remote1", { + sharedDependencies: { + "first": { + singleton: true + }, + "second": { + eager: true, + singleton: true + } + } + }); + + const plugin = findPlugin("rsbuild:module-federation-enhanced", config.plugins); + + expect(plugin).toBeDefined(); + expect(prepareModuleFederationPluginForSnapshot(plugin)).toMatchSnapshot(); + }); + + test("when additional options are provided for an existing default shared dependency, add the consumer options to the default options", () => { + const config = defineBuildRemoteModuleConfig("remote1", { + sharedDependencies: { + "react": { + requiredVersion: "1.2.3" + } + } + }); + + const plugin = findPlugin("rsbuild:module-federation-enhanced", config.plugins); + + expect(plugin).toBeDefined(); + expect(prepareModuleFederationPluginForSnapshot(plugin)).toMatchSnapshot(); + }); + + test("when overriding options are provided for a default shared dependency, use the consumer option", () => { + const config = defineBuildRemoteModuleConfig("remote1", { + sharedDependencies: { + "react": { + eager: false, + singleton: false + } + } + }); + + const plugin = findPlugin("rsbuild:module-federation-enhanced", config.plugins); + + expect(plugin).toBeDefined(); + expect(prepareModuleFederationPluginForSnapshot(plugin)).toMatchSnapshot(); + }); + + test("when the router is not react-router, add react-router shared dependencies", () => { + const config = defineBuildRemoteModuleConfig("remote1", { + features: { + // eslint-disable-next-line @typescript-eslint/ban-ts-comment + // @ts-ignore + router: "something-else" + } + }); + + + const plugin = findPlugin("rsbuild:module-federation-enhanced", config.plugins); + + expect(plugin).toBeDefined(); + expect(prepareModuleFederationPluginForSnapshot(plugin)).toMatchSnapshot(); + }); + + test("when i18next is activated, add i18next shared dependency and requiredVersion: false to the react shared dependency definition", () => { + const config = defineBuildRemoteModuleConfig("remote1", { + features: { + i18next: true + } + }); + + const plugin = findPlugin("rsbuild:module-federation-enhanced", config.plugins); + + expect(plugin).toBeDefined(); + expect(prepareModuleFederationPluginForSnapshot(plugin)).toMatchSnapshot(); + }); + + test("when honeycomb is activated, add honeycomb shared dependency and requiredVersion: false to the react shared dependency definition", () => { + const config = defineDevRemoteModuleConfig("remote1", 8081, { + features: { + honeycomb: true + } + }); + + const plugin = findPlugin("rsbuild:module-federation-enhanced", config.plugins); + + expect(plugin).toBeDefined(); + expect(prepareModuleFederationPluginForSnapshot(plugin)).toMatchSnapshot(); + }); + + test("when environmentVariables is activated, add env-vars shared dependency and requiredVersion: false to the react shared dependency definition", () => { + const config = defineDevRemoteModuleConfig("remote1", 8081, { + features: { + environmentVariables: true + } + }); + + const plugin = findPlugin("rsbuild:module-federation-enhanced", config.plugins); + + expect(plugin).toBeDefined(); + expect(prepareModuleFederationPluginForSnapshot(plugin)).toMatchSnapshot(); + }); + + test("when additional plugins are provided, the plugins are added to the configuration", () => { + const config = defineBuildRemoteModuleConfig("remote1", { + plugins: [dummyPlugin()] + }); + + const plugin = findPlugin("dummy-plugin", config.plugins); + + expect(plugin).toBeDefined(); + }); + + test("when configuration transformers are provided, the transformers are applied to the configuration", () => { + const result = defineBuildRemoteModuleConfig("remote1", { + transformers: [(config: RsbuildConfig) => { + config.source = config.source ?? {}; + + config.source.entry = { + index: "updated by the dummy transformer" + }; + + return config; + }] + }); + + expect(result.source!.entry!.index).toBe("updated by the dummy transformer"); + }); +}); diff --git a/packages/webpack-configs/tests/sharedDependenciesResolutionPlugin.test.ts b/packages/firefly-rsbuild-configs/tests/sharedDependenciesResolutionPlugin.test.ts similarity index 100% rename from packages/webpack-configs/tests/sharedDependenciesResolutionPlugin.test.ts rename to packages/firefly-rsbuild-configs/tests/sharedDependenciesResolutionPlugin.test.ts diff --git a/packages/firefly-rsbuild-configs/tsconfig.build.json b/packages/firefly-rsbuild-configs/tsconfig.build.json new file mode 100644 index 000000000..63879d6a7 --- /dev/null +++ b/packages/firefly-rsbuild-configs/tsconfig.build.json @@ -0,0 +1,5 @@ +{ + "extends": "@workleap/typescript-configs/library.json", + "include": ["src"], + "exclude": ["dist", "node_modules"] +} diff --git a/packages/webpack-configs/tsconfig.json b/packages/firefly-rsbuild-configs/tsconfig.json similarity index 50% rename from packages/webpack-configs/tsconfig.json rename to packages/firefly-rsbuild-configs/tsconfig.json index b4b16e5ae..8d3f8f735 100644 --- a/packages/webpack-configs/tsconfig.json +++ b/packages/firefly-rsbuild-configs/tsconfig.json @@ -1,4 +1,8 @@ { "extends": "@workleap/typescript-configs/library.json", + "compilerOptions": { + "incremental": true, + "tsBuildInfoFile": "node_modules/.cache/tsbuildinfo.json" + }, "exclude": ["dist", "node_modules", "tests/__snapshots__"] } diff --git a/packages/firefly-webpack-configs/.eslintignore b/packages/firefly-webpack-configs/.eslintignore new file mode 100644 index 000000000..3688c6fab --- /dev/null +++ b/packages/firefly-webpack-configs/.eslintignore @@ -0,0 +1,3 @@ +dist +node_modules +**/__snapshots__/* diff --git a/packages/firefly-webpack-configs/jest.config.ts b/packages/firefly-webpack-configs/jest.config.ts index a6101daa6..7543e452f 100644 --- a/packages/firefly-webpack-configs/jest.config.ts +++ b/packages/firefly-webpack-configs/jest.config.ts @@ -1,15 +1,17 @@ import type { Config } from "jest"; import path from "node:path"; -import { pathsToModuleNameMapper } from "ts-jest"; import { swcConfig } from "./swc.jest.ts"; -import { compilerOptions } from "./tsconfig.json"; const config: Config = { + testRegex: "/tests/*/.*\\.test\\.(ts|tsx)$", + testPathIgnorePatterns: ["/node_modules/", "/dist/"], testEnvironment: "jsdom", transformIgnorePatterns: [ // Must exclude @workleap/webpack-configs from the transform ignore files // because it's an ESM only project which must be processed by SWC. - // The pattern is optimized for PNPM, for more info view: https://jestjs.io/docs/configuration#transformignorepatterns-arraystring. + // The pattern is optimized for PNPM, for more info view: + // - https://jestjs.io/docs/configuration#transformignorepatterns-arraystring + // - https://jestjs.io/docs/ecmascript-modules `${path.join( __dirname, "../.." @@ -18,12 +20,8 @@ const config: Config = { transform: { "^.+\\.(js|ts)$": ["@swc/jest", swcConfig as Record] }, - moduleNameMapper: { - ...pathsToModuleNameMapper(compilerOptions.paths, { - prefix: "" - }) - }, - cacheDirectory: "./node_modules/.cache/jest" + cacheDirectory: "./node_modules/.cache/jest", + verbose: true }; export default config; diff --git a/packages/firefly-webpack-configs/package.json b/packages/firefly-webpack-configs/package.json index fa7e22391..0f3b05dce 100644 --- a/packages/firefly-webpack-configs/package.json +++ b/packages/firefly-webpack-configs/package.json @@ -7,13 +7,13 @@ "repository": { "type": "git", "url": "git+https://github.com/gsoft-inc/wl-squide.git", - "directory": "packages/firefly-configs" + "directory": "packages/firefly-webpack-configs" }, + "type": "module", "publishConfig": { "access": "public", "provenance": true }, - "type": "module", "exports": { ".": { "types": "./dist/index.d.ts", @@ -27,8 +27,11 @@ "README.md" ], "scripts": { - "dev": "tsup --config ./tsup.dev.ts", - "build": "tsup --config ./tsup.build.ts" + "dev": "rslib build --watch --config ./rslib.dev.ts", + "build": "rslib build --config ./rslib.build.ts", + "eslint": "eslint . --max-warnings=-0 --cache --cache-location node_modules/.cache/eslint", + "typecheck": "tsc", + "test": "jest" }, "peerDependencies": { "@swc/core": "*", @@ -39,26 +42,31 @@ "webpack": ">=5.0.0", "webpack-dev-server": ">=5.0.0" }, + "dependencies": { + "@module-federation/enhanced": "^0.8.4", + "@types/node": "^22.10.2", + "@types/semver": "^7.5.8", + "@workleap/webpack-configs": "^1.5.2", + "deepmerge": "^4.3.1", + "html-webpack-plugin": "^5.6.3", + "semver": "^7.6.3" + }, "devDependencies": { - "@module-federation/enhanced": "0.6.16", - "@swc/core": "1.8.0", + "@rslib/core": "0.1.4", + "@swc/core": "1.10.1", "@swc/jest": "0.2.37", "@types/jest": "29.5.14", - "@workleap/eslint-plugin": "3.2.3", + "@typescript-eslint/parser": "8.18.0", + "@workleap/eslint-plugin": "3.2.5", "@workleap/swc-configs": "2.2.3", - "@workleap/tsup-configs": "3.0.6", "@workleap/typescript-configs": "3.0.2", "eslint": "8.57.0", "jest": "29.7.0", "jest-environment-jsdom": "29.7.0", - "ts-jest": "29.2.5", - "tsup": "8.3.5", + "ts-node": "10.9.2", "typescript": "5.5.4", - "webpack": "5.96.1" - }, - "dependencies": { - "@squide/webpack-configs": "workspace:*", - "@workleap/webpack-configs": "1.5.1" + "webpack": "5.97.1", + "webpack-dev-server": "5.2.0" }, "engines": { "node": ">=21.1.0" diff --git a/packages/firefly-webpack-configs/rslib.build.ts b/packages/firefly-webpack-configs/rslib.build.ts new file mode 100644 index 000000000..633feb928 --- /dev/null +++ b/packages/firefly-webpack-configs/rslib.build.ts @@ -0,0 +1,24 @@ +import { defineConfig } from "@rslib/core"; + +export default defineConfig({ + lib: [{ + format: "esm", + syntax: "esnext", + bundle: false, + dts: true + }], + source: { + entry: { + index: "./src/**" + }, + tsconfigPath: "./tsconfig.build.json" + }, + output: { + target: "node", + distPath: { + root: "./dist" + }, + cleanDistPath: true, + minify: false + } +}); diff --git a/packages/firefly-webpack-configs/rslib.dev.ts b/packages/firefly-webpack-configs/rslib.dev.ts new file mode 100644 index 000000000..30251ee2a --- /dev/null +++ b/packages/firefly-webpack-configs/rslib.dev.ts @@ -0,0 +1,24 @@ +import { defineConfig } from "@rslib/core"; + +export default defineConfig({ + lib: [{ + format: "esm", + syntax: "esnext", + bundle: false, + dts: false + }], + source: { + entry: { + index: "./src/**" + }, + tsconfigPath: "./tsconfig.build.json" + }, + output: { + target: "node", + distPath: { + root: "./dist" + }, + cleanDistPath: true, + minify: false + } +}); diff --git a/packages/webpack-configs/src/defineConfig.ts b/packages/firefly-webpack-configs/src/defineConfig.ts similarity index 95% rename from packages/webpack-configs/src/defineConfig.ts rename to packages/firefly-webpack-configs/src/defineConfig.ts index 2b15e3ea6..43cd30ac5 100644 --- a/packages/webpack-configs/src/defineConfig.ts +++ b/packages/firefly-webpack-configs/src/defineConfig.ts @@ -119,6 +119,18 @@ function getEnvironmentVariablesSharedDependencies(isHost: boolean): ModuleFeder function getHoneycombSharedDependencies(isHost: boolean): ModuleFederationShared { return { + "@honeycombio/opentelemetry-web": { + singleton: true, + eager: isHost ? true : undefined + }, + "@opentelemetry/api": { + singleton: true, + eager: isHost ? true : undefined + }, + "@opentelemetry/auto-instrumentations-web": { + singleton: true, + eager: isHost ? true : undefined + }, "@squide/firefly-honeycomb": { singleton: true, eager: isHost ? true : undefined @@ -128,8 +140,8 @@ function getHoneycombSharedDependencies(isHost: boolean): ModuleFederationShared function getFeaturesDependencies(features: Features, isHost: boolean) { const { - router, - msw, + router = "react-router", + msw = true, i18next, environmentVariables, honeycomb @@ -244,6 +256,11 @@ export function defineHostModuleFederationPluginOptions(remotes: RemoteDefinitio path.resolve(packageDirectory, "./nonCacheableRemoteEntryPlugin.js"), ...runtimePlugins ], + // Commented because it doesn't seems to work, the runtime is still embedded into remotes. + // experiments: { + // // The runtime is 100kb minified. + // federationRuntime: "hoisted" + // }, ...rest }; } @@ -387,6 +404,11 @@ export function defineRemoteModuleFederationPluginOptions(applicationName: strin path.resolve(packageDirectory, "./nonCacheableRemoteEntryPlugin.js"), ...runtimePlugins ], + // Commented because it doesn't seems to work, the runtime is still embedded into remotes. + // experiments: { + // // The runtime is 100kb minified. + // federationRuntime: "hoisted" + // }, ...rest }; } diff --git a/packages/firefly-webpack-configs/src/index.ts b/packages/firefly-webpack-configs/src/index.ts index aed145ba3..10075443f 100644 --- a/packages/firefly-webpack-configs/src/index.ts +++ b/packages/firefly-webpack-configs/src/index.ts @@ -1,96 +1,3 @@ -import { - defineBuildHostConfig as baseDefineBuildHostConfig, - defineBuildRemoteModuleConfig as baseDefineBuildRemoteModuleConfig, - defineDevHostConfig as baseDefineDevHostConfig, - defineDevRemoteModuleConfig as baseDefineDevRemoteModuleConfig, - defineRemoteModuleFederationPluginOptions, - type DefineBuildHostConfigOptions, - type DefineBuildRemoteModuleConfigOptions, - type DefineDevHostConfigOptions, - type DefineDevRemoteModuleConfigOptions, - type DefineHostModuleFederationPluginOptions, - type DefineRemoteModuleFederationPluginOptions, - type Features, - type ModuleFederationPluginOptions, - type RemoteDefinition, - type Router -} from "@squide/webpack-configs"; -import type { SwcConfig } from "@workleap/swc-configs"; -import type webpack from "webpack"; - export * from "@workleap/webpack-configs"; +export * from "./defineConfig.ts"; -export { - DefineHostModuleFederationPluginOptions, - DefineRemoteModuleFederationPluginOptions, - defineRemoteModuleFederationPluginOptions, - ModuleFederationPluginOptions, - RemoteDefinition, - Router -}; - -export type FireflyFeatures = Omit; - -export interface FireflyDefineDevHostConfigOptions extends DefineDevHostConfigOptions { - features?: FireflyFeatures; -} - -// The function return type is mandatory, otherwise we get an error TS4058. -export function defineDevHostConfig(swcConfig: SwcConfig, port: number, remotes: RemoteDefinition[], { features = {}, ...options }: FireflyDefineDevHostConfigOptions = {}): webpack.Configuration { - return baseDefineDevHostConfig(swcConfig, port, remotes, { - ...options, - features: { - router: "react-router", - msw: true, - ...features - } - }); -} - -export interface FireflyDefineBuildHostConfigOptions extends DefineBuildHostConfigOptions { - features?: FireflyFeatures; -} - -// The function return type is mandatory, otherwise we get an error TS4058. -export function defineBuildHostConfig(swcConfig: SwcConfig, remotes: RemoteDefinition[], { features = {}, ...options }: FireflyDefineBuildHostConfigOptions = {}): webpack.Configuration { - return baseDefineBuildHostConfig(swcConfig, remotes, { - ...options, - features: { - router: "react-router", - msw: true, - ...features - } - }); -} - -export interface FireflyDefineDevRemoteModuleConfigOptions extends DefineDevRemoteModuleConfigOptions { - features?: FireflyFeatures; -} - -// The function return type is mandatory, otherwise we get an error TS4058. -export function defineDevRemoteModuleConfig(swcConfig: SwcConfig, applicationName: string, port: number, { features = {}, ...options }: FireflyDefineDevRemoteModuleConfigOptions = {}): webpack.Configuration { - return baseDefineDevRemoteModuleConfig(swcConfig, applicationName, port, { - ...options, - features: { - router: "react-router", - msw: true, - ...features - } - }); -} - -export interface FireflyDefineBuildRemoteModuleConfigOptions extends DefineBuildRemoteModuleConfigOptions { - features?: FireflyFeatures; -} - -// The function return type is mandatory, otherwise we get an error TS4058. -export function defineBuildRemoteModuleConfig(swcConfig: SwcConfig, applicationName: string, { features = {}, ...options }: FireflyDefineBuildRemoteModuleConfigOptions = {}): webpack.Configuration { - return baseDefineBuildRemoteModuleConfig(swcConfig, applicationName, { - ...options, - features: { - router: "react-router", - msw: true, - ...features - } - }); -} diff --git a/packages/firefly-webpack-configs/src/nonCacheableRemoteEntryPlugin.ts b/packages/firefly-webpack-configs/src/nonCacheableRemoteEntryPlugin.ts new file mode 100644 index 000000000..195600fb3 --- /dev/null +++ b/packages/firefly-webpack-configs/src/nonCacheableRemoteEntryPlugin.ts @@ -0,0 +1,20 @@ +import type { FederationRuntimePlugin } from "@module-federation/enhanced/runtime"; + +const plugin: () => FederationRuntimePlugin = () => { + return { + name: "non-cacheable-remote-entry-plugin", + createScript: function({ url }) { + const element = document.createElement("script"); + + // Adding a timestamp to make sure the remote entry points are never cached. + // View: https://github.com/module-federation/module-federation-examples/issues/566. + element.src = `${url}?t=${Date.now()}`; + element.type = "text/javascript"; + element.async = true; + + return element; + } + }; +}; + +export default plugin; diff --git a/packages/firefly-webpack-configs/src/shared.ts b/packages/firefly-webpack-configs/src/shared.ts new file mode 100644 index 000000000..4a9a19e2e --- /dev/null +++ b/packages/firefly-webpack-configs/src/shared.ts @@ -0,0 +1,2 @@ +// Hardcoded to "host" because of the "sharedDependenciesResolutionPlugin" plugin. +export const HostApplicationName = "host"; diff --git a/packages/firefly-webpack-configs/src/sharedDependenciesResolutionPlugin.ts b/packages/firefly-webpack-configs/src/sharedDependenciesResolutionPlugin.ts new file mode 100644 index 000000000..716e69a64 --- /dev/null +++ b/packages/firefly-webpack-configs/src/sharedDependenciesResolutionPlugin.ts @@ -0,0 +1,173 @@ +/* +This custom share dependency resolution strategy ensure that only the host app can ask for a new major version of a library. +Otherwise, any remote can request for an higher non-major version. + +Examples: + +host: 2.0 +remote-1: 2.1 <----- +remote-2: 2.0 + +host: 2.0 <----- +remote-1: 3.1 +remote-2: 2.0 + +host: 2.0 +remote-1: 3.1 +remote-2: 2.1 <----- + +host: >2.0 +remote-1: 3.1 +remote-2: 2.1 <----- +*/ + +import type { FederationHost, FederationRuntimePlugin } from "@module-federation/enhanced/runtime"; +import { minVersion, parse, rcompare, type SemVer } from "semver"; +import { HostApplicationName } from "./shared.ts"; + +type Shared = FederationHost["shareScopeMap"][string][string][string]; + +// Toggle to "true" to facilitate the debugging of this plugin. +const isDebug = false; + +function log(...args: unknown[]) { + if (isDebug) { + console.log(...args); + } +} + +function findHighestVersionForMajor(entries: Shared[], major: number) { + return entries.find(x => { + return parse(x.version)!.major === major; + }) as Shared; +} + +interface ResolveSharedDependencyResult { + resolvedEntry: Shared; + highestVersionEntry: Shared; +} + +// The return type is required otherwise we get the following error: error TS2742: The inferred type of 'resolveSharedDependency' cannot be named without a reference to. +export function resolveSharedDependency(pkgName: string, entries: Shared[], logFct: (...rest: unknown[]) => void = () => {}): ResolveSharedDependencyResult { + const cleanedEntries = entries.map(x => ({ + ...x, + // Removing any special characters like >,>=,^,~ etc... + version: minVersion(x.version)!.version + })); + + // From higher to lower versions. + const sortedEntries = cleanedEntries.sort((x, y) => rcompare(x.version, y.version)); + + logFct("[squide] Sorted the entries by version from higher to lower", sortedEntries); + + const highestVersionEntry = sortedEntries[0]; + + logFct(`[squide] ${pkgName} highest requested version is`, highestVersionEntry.version, highestVersionEntry); + + // The host is always right! + if (highestVersionEntry.from === HostApplicationName) { + logFct("[squide] %cThis is the host version%c, great, resolving to:", "color: black; background-color: pink;", "", highestVersionEntry.version, highestVersionEntry); + + return { + resolvedEntry: highestVersionEntry, + highestVersionEntry: highestVersionEntry + }; + } + + logFct(`[squide] ${pkgName} Highest requested version is not from the host.`); + + const hostEntry = sortedEntries.find(x => x.from === HostApplicationName); + + // Found nothing, that's odd but let's not break the app for this. + if (!hostEntry) { + logFct(`[squide] The host is not requesting any version of ${pkgName}, %caborting%c.`, "color: black; background-color: pink;", ""); + + return { + resolvedEntry: highestVersionEntry, + highestVersionEntry: highestVersionEntry + }; + } + + logFct(`[squide] ${pkgName} version requested by the host is:`, hostEntry.version, hostEntry); + + const parsedHighestVersion = parse(highestVersionEntry.version) as SemVer; + const parsedHostVersion = parse(hostEntry.version) as SemVer; + + // Major versions should always be introduced by the host application. + if (parsedHighestVersion.major === parsedHostVersion.major) { + logFct(`[squide] Resolving to %c${parsedHighestVersion.major}%c.`, "color: black; background-color: pink;", ""); + + return { + resolvedEntry: highestVersionEntry, + highestVersionEntry: highestVersionEntry + }; + } + + logFct("[squide] The major number of the highest requested version is higher than the major number of the version requested by the host, looking for another version to resolve to."); + + // Start at the second entry since the first entry is the current higher version entry. + // The result could either be the actual host entry or any other entry that is higher than the version requested + // by the host, but match the host entry major version number. + const fallbackEntry = findHighestVersionForMajor(sortedEntries.splice(1), parsedHostVersion.major); + + logFct(`[squide] The %chighest requested version%c for ${pkgName} that is in-range with the requested host major version number is:`, "color: black; background-color: pink;", "", fallbackEntry.version, fallbackEntry); + + return { + resolvedEntry: fallbackEntry, + highestVersionEntry: highestVersionEntry + }; +} + +const plugin: () => FederationRuntimePlugin = () => { + return { + name: "shared-dependencies-resolution-plugin", + resolveShare: function(args) { + const { shareScopeMap, scope, pkgName } = args; + + log(`[squide] Resolving ${pkgName}:`, args); + + // This custom strategy only applies to singleton shared dependencies. + const entries = Object.values(shareScopeMap[scope][pkgName]).filter(x => { + return ( + // Temporary check until all the remotes on Webpack Module Federation has been updated to Module Federation 2.0. + // eslint-disable-next-line @typescript-eslint/ban-ts-comment + // @ts-ignore + x.singleton || + (x.shareConfig && x.shareConfig.singleton) + ); + }); + + // Not a singleton dependency. + if (entries.length === 0) { + log(`[squide] ${pkgName} is not a singleton dependency, aborting.`); + + return args; + } + + // If there's only one version entry, then it means that everyone is requesting the same version + // of the dependency. + if (entries.length <= 1) { + log(`[squide] There's only one version requested for ${pkgName}, resolving to:`, entries[0].version, entries[0]); + + return args; + } + + args.resolver = () => { + log(`[squide] There's %cmore than one requested version%c for ${pkgName}:`, "color: black; background-color: pink;", "", entries.length, shareScopeMap[scope][pkgName]); + + const { resolvedEntry, highestVersionEntry } = resolveSharedDependency(pkgName, entries, log); + + if (resolvedEntry.version !== highestVersionEntry.version) { + // eslint-disable-next-line max-len + console.log(`%c[squide] "${highestVersionEntry.from}" requested version "${highestVersionEntry.version}" of "${pkgName}". This version is higher than the major number of the version requested by the host for this dependency (${resolvedEntry.version}). The version for "${pkgName}" has been forced to "${resolvedEntry.version}".`, "color: white; background-color: red;"); + } + + return resolvedEntry; + }; + + return args; + } + }; +}; + +export default plugin; diff --git a/packages/firefly-webpack-configs/tests/__snapshots__/defineConfig.test.ts.snap b/packages/firefly-webpack-configs/tests/__snapshots__/defineConfig.test.ts.snap index a4f4aff0f..ed3ee7b93 100644 --- a/packages/firefly-webpack-configs/tests/__snapshots__/defineConfig.test.ts.snap +++ b/packages/firefly-webpack-configs/tests/__snapshots__/defineConfig.test.ts.snap @@ -1,6 +1,6 @@ // Jest Snapshot v1, https://goo.gl/fbAQLP -exports[`defineBuildHostConfig includes react-router and msw dependencies 1`] = ` +exports[`defineBuildHostConfig the application name is set as the federation plugin application name 1`] = ` ModuleFederationPlugin { "_options": { "dts": false, @@ -43,7 +43,1685 @@ ModuleFederationPlugin { } `; -exports[`defineBuildRemoteModuleConfig includes react-router and msw dependencies 1`] = ` +exports[`defineBuildHostConfig the module federation plugin configuration includes the default shared dependencies 1`] = ` +ModuleFederationPlugin { + "_options": { + "dts": false, + "manifest": false, + "name": "host", + "remotes": {}, + "shared": { + "@squide/core": { + "eager": true, + "singleton": true, + }, + "@squide/module-federation": { + "eager": true, + "singleton": true, + }, + "@squide/msw": { + "eager": true, + "singleton": true, + }, + "@squide/react-router": { + "eager": true, + "singleton": true, + }, + "react": { + "eager": true, + "requiredVersion": undefined, + "singleton": true, + }, + "react-dom": { + "eager": true, + "singleton": true, + }, + "react-router-dom": { + "eager": true, + "singleton": true, + }, + }, + }, + "name": "ModuleFederationPlugin", +} +`; + +exports[`defineBuildHostConfig the module federation plugin configuration includes the remotes 1`] = ` +ModuleFederationPlugin { + "_options": { + "dts": false, + "manifest": false, + "name": "host", + "remotes": { + "remote1": "remote1@http://localhost/remote1/remoteEntry.js", + "remote2": "remote2@http://localhost/remote2/remoteEntry.js", + }, + "shared": { + "@squide/core": { + "eager": true, + "singleton": true, + }, + "@squide/module-federation": { + "eager": true, + "singleton": true, + }, + "@squide/msw": { + "eager": true, + "singleton": true, + }, + "@squide/react-router": { + "eager": true, + "singleton": true, + }, + "react": { + "eager": true, + "requiredVersion": undefined, + "singleton": true, + }, + "react-dom": { + "eager": true, + "singleton": true, + }, + "react-router-dom": { + "eager": true, + "singleton": true, + }, + }, + }, + "name": "ModuleFederationPlugin", +} +`; + +exports[`defineBuildHostConfig when a public path option is provided for the html webpack plugin, do not alter the provided public path option 1`] = ` +HtmlWebpackPlugin { + "options": { + "base": false, + "cache": true, + "chunks": "all", + "chunksSortMode": "auto", + "compile": true, + "excludeChunks": [], + "favicon": false, + "filename": "index.html", + "hash": false, + "inject": "head", + "meta": {}, + "minify": "auto", + "publicPath": "/toto", + "scriptLoading": "defer", + "showErrors": true, + "template": "auto", + "templateContent": false, + "templateParameters": [Function], + "title": "Webpack App", + "xhtml": false, + }, + "userOptions": { + "publicPath": "/toto", + }, + "version": 5, +} +`; + +exports[`defineBuildHostConfig when additional options are provided for an existing default shared dependency, add the consumer options to the default options 1`] = ` +ModuleFederationPlugin { + "_options": { + "dts": false, + "manifest": false, + "name": "host", + "remotes": {}, + "shared": { + "@squide/core": { + "eager": true, + "singleton": true, + }, + "@squide/module-federation": { + "eager": true, + "singleton": true, + }, + "@squide/msw": { + "eager": true, + "singleton": true, + }, + "@squide/react-router": { + "eager": true, + "singleton": true, + }, + "react": { + "eager": true, + "requiredVersion": "1.2.3", + "singleton": true, + }, + "react-dom": { + "eager": true, + "singleton": true, + }, + "react-router-dom": { + "eager": true, + "singleton": true, + }, + }, + }, + "name": "ModuleFederationPlugin", +} +`; + +exports[`defineBuildHostConfig when additional shared dependencies are provided, add the dependencies to the module federation plugin configuration 1`] = ` +ModuleFederationPlugin { + "_options": { + "dts": false, + "manifest": false, + "name": "host", + "remotes": {}, + "shared": { + "@squide/core": { + "eager": true, + "singleton": true, + }, + "@squide/module-federation": { + "eager": true, + "singleton": true, + }, + "@squide/msw": { + "eager": true, + "singleton": true, + }, + "@squide/react-router": { + "eager": true, + "singleton": true, + }, + "first": { + "singleton": true, + }, + "react": { + "eager": true, + "requiredVersion": undefined, + "singleton": true, + }, + "react-dom": { + "eager": true, + "singleton": true, + }, + "react-router-dom": { + "eager": true, + "singleton": true, + }, + "second": { + "eager": true, + "singleton": true, + }, + }, + }, + "name": "ModuleFederationPlugin", +} +`; + +exports[`defineBuildHostConfig when environmentVariables is env-vars, add env-vars shared dependency and requiredVersion: false to the react shared dependency definition 1`] = ` +ModuleFederationPlugin { + "_options": { + "dts": false, + "manifest": false, + "name": "host", + "remotes": {}, + "shared": { + "@squide/core": { + "eager": true, + "singleton": true, + }, + "@squide/env-vars": { + "eager": true, + "singleton": true, + }, + "@squide/module-federation": { + "eager": true, + "singleton": true, + }, + "@squide/msw": { + "eager": true, + "singleton": true, + }, + "@squide/react-router": { + "eager": true, + "singleton": true, + }, + "react": { + "eager": true, + "requiredVersion": undefined, + "singleton": true, + }, + "react-dom": { + "eager": true, + "singleton": true, + }, + "react-router-dom": { + "eager": true, + "singleton": true, + }, + }, + }, + "name": "ModuleFederationPlugin", +} +`; + +exports[`defineBuildHostConfig when honeycomb is activated, add honeycomb shared dependency and requiredVersion: false to the react shared dependency definition 1`] = ` +ModuleFederationPlugin { + "_options": { + "dts": false, + "manifest": false, + "name": "host", + "remotes": {}, + "shared": { + "@honeycombio/opentelemetry-web": { + "eager": true, + "singleton": true, + }, + "@opentelemetry/api": { + "eager": true, + "singleton": true, + }, + "@opentelemetry/auto-instrumentations-web": { + "eager": true, + "singleton": true, + }, + "@squide/core": { + "eager": true, + "singleton": true, + }, + "@squide/firefly-honeycomb": { + "eager": true, + "singleton": true, + }, + "@squide/module-federation": { + "eager": true, + "singleton": true, + }, + "@squide/msw": { + "eager": true, + "singleton": true, + }, + "@squide/react-router": { + "eager": true, + "singleton": true, + }, + "react": { + "eager": true, + "requiredVersion": undefined, + "singleton": true, + }, + "react-dom": { + "eager": true, + "singleton": true, + }, + "react-router-dom": { + "eager": true, + "singleton": true, + }, + }, + }, + "name": "ModuleFederationPlugin", +} +`; + +exports[`defineBuildHostConfig when i18next is activated, add i18next shared dependency and requiredVersion: false to the react shared dependency definition 1`] = ` +ModuleFederationPlugin { + "_options": { + "dts": false, + "manifest": false, + "name": "host", + "remotes": {}, + "shared": { + "@squide/core": { + "eager": true, + "singleton": true, + }, + "@squide/i18next": { + "eager": true, + "singleton": true, + }, + "@squide/module-federation": { + "eager": true, + "singleton": true, + }, + "@squide/msw": { + "eager": true, + "singleton": true, + }, + "@squide/react-router": { + "eager": true, + "singleton": true, + }, + "i18next": { + "eager": true, + "singleton": true, + }, + "react": { + "eager": true, + "requiredVersion": false, + "singleton": true, + }, + "react-dom": { + "eager": true, + "singleton": true, + }, + "react-i18next": { + "eager": true, + "singleton": true, + }, + "react-router-dom": { + "eager": true, + "singleton": true, + }, + }, + }, + "name": "ModuleFederationPlugin", +} +`; + +exports[`defineBuildHostConfig when no options are provided for the html webpack plugin, add a public path option 1`] = ` +HtmlWebpackPlugin { + "options": { + "base": false, + "cache": true, + "chunks": "all", + "chunksSortMode": "auto", + "compile": true, + "excludeChunks": [], + "favicon": false, + "filename": "index.html", + "hash": false, + "inject": "head", + "meta": {}, + "minify": "auto", + "publicPath": "/", + "scriptLoading": "defer", + "showErrors": true, + "templateContent": false, + "templateParameters": [Function], + "title": "Webpack App", + "xhtml": false, + }, + "userOptions": { + "publicPath": "/", + }, + "version": 5, +} +`; + +exports[`defineBuildHostConfig when options others than the public path option are provided for the html webpack plugin, add a public path option 1`] = ` +HtmlWebpackPlugin { + "options": { + "base": false, + "cache": true, + "chunks": "all", + "chunksSortMode": "auto", + "compile": true, + "excludeChunks": [], + "favicon": "toto.png", + "filename": "index.html", + "hash": false, + "inject": "head", + "meta": {}, + "minify": "auto", + "publicPath": "/", + "scriptLoading": "defer", + "showErrors": true, + "template": "auto", + "templateContent": false, + "templateParameters": [Function], + "title": "Webpack App", + "xhtml": false, + }, + "userOptions": { + "favicon": "toto.png", + "publicPath": "/", + }, + "version": 5, +} +`; + +exports[`defineBuildHostConfig when overriding options are provided for a default shared dependency, use the consumer option 1`] = ` +ModuleFederationPlugin { + "_options": { + "dts": false, + "manifest": false, + "name": "host", + "remotes": {}, + "shared": { + "@squide/core": { + "eager": true, + "singleton": true, + }, + "@squide/module-federation": { + "eager": true, + "singleton": true, + }, + "@squide/msw": { + "eager": true, + "singleton": true, + }, + "@squide/react-router": { + "eager": true, + "singleton": true, + }, + "react": { + "eager": false, + "requiredVersion": undefined, + "singleton": false, + }, + "react-dom": { + "eager": true, + "singleton": true, + }, + "react-router-dom": { + "eager": true, + "singleton": true, + }, + }, + }, + "name": "ModuleFederationPlugin", +} +`; + +exports[`defineBuildHostConfig when the router is react-router, add react-router shared dependencies 1`] = ` +ModuleFederationPlugin { + "_options": { + "dts": false, + "manifest": false, + "name": "host", + "remotes": {}, + "shared": { + "@squide/core": { + "eager": true, + "singleton": true, + }, + "@squide/module-federation": { + "eager": true, + "singleton": true, + }, + "@squide/msw": { + "eager": true, + "singleton": true, + }, + "@squide/react-router": { + "eager": true, + "singleton": true, + }, + "react": { + "eager": true, + "requiredVersion": undefined, + "singleton": true, + }, + "react-dom": { + "eager": true, + "singleton": true, + }, + "react-router-dom": { + "eager": true, + "singleton": true, + }, + }, + }, + "name": "ModuleFederationPlugin", +} +`; + +exports[`defineBuildRemoteModuleConfig the application name is set as the federation plugin application name 1`] = ` +ModuleFederationPlugin { + "_options": { + "dts": false, + "exposes": { + "./register": "./src/register", + }, + "filename": "remoteEntry.js", + "manifest": false, + "name": "remote1", + "shared": { + "@squide/core": { + "eager": undefined, + "singleton": true, + }, + "@squide/module-federation": { + "eager": undefined, + "singleton": true, + }, + "@squide/msw": { + "eager": undefined, + "singleton": true, + }, + "@squide/react-router": { + "eager": undefined, + "singleton": true, + }, + "react": { + "eager": undefined, + "requiredVersion": undefined, + "singleton": true, + }, + "react-dom": { + "eager": undefined, + "singleton": true, + }, + "react-router-dom": { + "eager": undefined, + "singleton": true, + }, + }, + }, + "name": "ModuleFederationPlugin", +} +`; + +exports[`defineBuildRemoteModuleConfig the module federation plugin configuration includes the default shared dependencies 1`] = ` +ModuleFederationPlugin { + "_options": { + "dts": false, + "exposes": { + "./register": "./src/register", + }, + "filename": "remoteEntry.js", + "manifest": false, + "name": "remote1", + "shared": { + "@squide/core": { + "eager": undefined, + "singleton": true, + }, + "@squide/module-federation": { + "eager": undefined, + "singleton": true, + }, + "@squide/msw": { + "eager": undefined, + "singleton": true, + }, + "@squide/react-router": { + "eager": undefined, + "singleton": true, + }, + "react": { + "eager": undefined, + "requiredVersion": undefined, + "singleton": true, + }, + "react-dom": { + "eager": undefined, + "singleton": true, + }, + "react-router-dom": { + "eager": undefined, + "singleton": true, + }, + }, + }, + "name": "ModuleFederationPlugin", +} +`; + +exports[`defineBuildRemoteModuleConfig when additional options are provided for an existing default shared dependency, add the consumer options to the default options 1`] = ` +ModuleFederationPlugin { + "_options": { + "dts": false, + "exposes": { + "./register": "./src/register", + }, + "filename": "remoteEntry.js", + "manifest": false, + "name": "remote1", + "shared": { + "@squide/core": { + "eager": undefined, + "singleton": true, + }, + "@squide/module-federation": { + "eager": undefined, + "singleton": true, + }, + "@squide/msw": { + "eager": undefined, + "singleton": true, + }, + "@squide/react-router": { + "eager": undefined, + "singleton": true, + }, + "react": { + "eager": undefined, + "requiredVersion": "1.2.3", + "singleton": true, + }, + "react-dom": { + "eager": undefined, + "singleton": true, + }, + "react-router-dom": { + "eager": undefined, + "singleton": true, + }, + }, + }, + "name": "ModuleFederationPlugin", +} +`; + +exports[`defineBuildRemoteModuleConfig when additional shared dependencies are provided, add the dependencies to the module federation plugin configuration 1`] = ` +ModuleFederationPlugin { + "_options": { + "dts": false, + "exposes": { + "./register": "./src/register", + }, + "filename": "remoteEntry.js", + "manifest": false, + "name": "remote1", + "shared": { + "@squide/core": { + "eager": undefined, + "singleton": true, + }, + "@squide/module-federation": { + "eager": undefined, + "singleton": true, + }, + "@squide/msw": { + "eager": undefined, + "singleton": true, + }, + "@squide/react-router": { + "eager": undefined, + "singleton": true, + }, + "first": { + "singleton": true, + }, + "react": { + "eager": undefined, + "requiredVersion": undefined, + "singleton": true, + }, + "react-dom": { + "eager": undefined, + "singleton": true, + }, + "react-router-dom": { + "eager": undefined, + "singleton": true, + }, + "second": { + "eager": true, + "singleton": true, + }, + }, + }, + "name": "ModuleFederationPlugin", +} +`; + +exports[`defineBuildRemoteModuleConfig when environmentVariables is activated, add env-vars shared dependency and requiredVersion: false to the react shared dependency definition 1`] = ` +ModuleFederationPlugin { + "_options": { + "dts": false, + "exposes": { + "./register": "./src/register", + }, + "filename": "remoteEntry.js", + "manifest": false, + "name": "remote1", + "shared": { + "@squide/core": { + "eager": undefined, + "singleton": true, + }, + "@squide/env-vars": { + "eager": undefined, + "singleton": true, + }, + "@squide/module-federation": { + "eager": undefined, + "singleton": true, + }, + "@squide/msw": { + "eager": undefined, + "singleton": true, + }, + "@squide/react-router": { + "eager": undefined, + "singleton": true, + }, + "react": { + "eager": undefined, + "requiredVersion": undefined, + "singleton": true, + }, + "react-dom": { + "eager": undefined, + "singleton": true, + }, + "react-router-dom": { + "eager": undefined, + "singleton": true, + }, + }, + }, + "name": "ModuleFederationPlugin", +} +`; + +exports[`defineBuildRemoteModuleConfig when honeycomb is activated, add honeycomb shared dependency and requiredVersion: false to the react shared dependency definition 1`] = ` +ModuleFederationPlugin { + "_options": { + "dts": false, + "exposes": { + "./register": "./src/register", + }, + "filename": "remoteEntry.js", + "manifest": false, + "name": "remote1", + "shared": { + "@honeycombio/opentelemetry-web": { + "eager": undefined, + "singleton": true, + }, + "@opentelemetry/api": { + "eager": undefined, + "singleton": true, + }, + "@opentelemetry/auto-instrumentations-web": { + "eager": undefined, + "singleton": true, + }, + "@squide/core": { + "eager": undefined, + "singleton": true, + }, + "@squide/firefly-honeycomb": { + "eager": undefined, + "singleton": true, + }, + "@squide/module-federation": { + "eager": undefined, + "singleton": true, + }, + "@squide/msw": { + "eager": undefined, + "singleton": true, + }, + "@squide/react-router": { + "eager": undefined, + "singleton": true, + }, + "react": { + "eager": undefined, + "requiredVersion": undefined, + "singleton": true, + }, + "react-dom": { + "eager": undefined, + "singleton": true, + }, + "react-router-dom": { + "eager": undefined, + "singleton": true, + }, + }, + }, + "name": "ModuleFederationPlugin", +} +`; + +exports[`defineBuildRemoteModuleConfig when i18next is activated, add i18next shared dependency and requiredVersion: false to the react shared dependency definition 1`] = ` +ModuleFederationPlugin { + "_options": { + "dts": false, + "exposes": { + "./register": "./src/register", + }, + "filename": "remoteEntry.js", + "manifest": false, + "name": "remote1", + "shared": { + "@squide/core": { + "eager": undefined, + "singleton": true, + }, + "@squide/i18next": { + "eager": undefined, + "singleton": true, + }, + "@squide/module-federation": { + "eager": undefined, + "singleton": true, + }, + "@squide/msw": { + "eager": undefined, + "singleton": true, + }, + "@squide/react-router": { + "eager": undefined, + "singleton": true, + }, + "i18next": { + "eager": undefined, + "singleton": true, + }, + "react": { + "eager": undefined, + "requiredVersion": false, + "singleton": true, + }, + "react-dom": { + "eager": undefined, + "singleton": true, + }, + "react-i18next": { + "eager": undefined, + "singleton": true, + }, + "react-router-dom": { + "eager": undefined, + "singleton": true, + }, + }, + }, + "name": "ModuleFederationPlugin", +} +`; + +exports[`defineBuildRemoteModuleConfig when overriding options are provided for a default shared dependency, use the consumer option 1`] = ` +ModuleFederationPlugin { + "_options": { + "dts": false, + "exposes": { + "./register": "./src/register", + }, + "filename": "remoteEntry.js", + "manifest": false, + "name": "remote1", + "shared": { + "@squide/core": { + "eager": undefined, + "singleton": true, + }, + "@squide/module-federation": { + "eager": undefined, + "singleton": true, + }, + "@squide/msw": { + "eager": undefined, + "singleton": true, + }, + "@squide/react-router": { + "eager": undefined, + "singleton": true, + }, + "react": { + "eager": false, + "requiredVersion": undefined, + "singleton": false, + }, + "react-dom": { + "eager": undefined, + "singleton": true, + }, + "react-router-dom": { + "eager": undefined, + "singleton": true, + }, + }, + }, + "name": "ModuleFederationPlugin", +} +`; + +exports[`defineBuildRemoteModuleConfig when the router is react-router, add react-router shared dependencies 1`] = ` +ModuleFederationPlugin { + "_options": { + "dts": false, + "exposes": { + "./register": "./src/register", + }, + "filename": "remoteEntry.js", + "manifest": false, + "name": "remote1", + "shared": { + "@squide/core": { + "eager": undefined, + "singleton": true, + }, + "@squide/module-federation": { + "eager": undefined, + "singleton": true, + }, + "@squide/msw": { + "eager": undefined, + "singleton": true, + }, + "@squide/react-router": { + "eager": undefined, + "singleton": true, + }, + "react": { + "eager": undefined, + "requiredVersion": undefined, + "singleton": true, + }, + "react-dom": { + "eager": undefined, + "singleton": true, + }, + "react-router-dom": { + "eager": undefined, + "singleton": true, + }, + }, + }, + "name": "ModuleFederationPlugin", +} +`; + +exports[`defineDevHostConfig the application name is set as the federation plugin application name 1`] = ` +ModuleFederationPlugin { + "_options": { + "dts": false, + "manifest": false, + "name": "host", + "remotes": {}, + "shared": { + "@squide/core": { + "eager": true, + "singleton": true, + }, + "@squide/module-federation": { + "eager": true, + "singleton": true, + }, + "@squide/msw": { + "eager": true, + "singleton": true, + }, + "@squide/react-router": { + "eager": true, + "singleton": true, + }, + "react": { + "eager": true, + "requiredVersion": undefined, + "singleton": true, + }, + "react-dom": { + "eager": true, + "singleton": true, + }, + "react-router-dom": { + "eager": true, + "singleton": true, + }, + }, + }, + "name": "ModuleFederationPlugin", +} +`; + +exports[`defineDevHostConfig the module federation plugin configuration includes the default shared dependencies 1`] = ` +ModuleFederationPlugin { + "_options": { + "dts": false, + "manifest": false, + "name": "host", + "remotes": {}, + "shared": { + "@squide/core": { + "eager": true, + "singleton": true, + }, + "@squide/module-federation": { + "eager": true, + "singleton": true, + }, + "@squide/msw": { + "eager": true, + "singleton": true, + }, + "@squide/react-router": { + "eager": true, + "singleton": true, + }, + "react": { + "eager": true, + "requiredVersion": undefined, + "singleton": true, + }, + "react-dom": { + "eager": true, + "singleton": true, + }, + "react-router-dom": { + "eager": true, + "singleton": true, + }, + }, + }, + "name": "ModuleFederationPlugin", +} +`; + +exports[`defineDevHostConfig the module federation plugin configuration includes the remotes 1`] = ` +ModuleFederationPlugin { + "_options": { + "dts": false, + "manifest": false, + "name": "host", + "remotes": { + "remote1": "remote1@http://localhost/remote1/remoteEntry.js", + "remote2": "remote2@http://localhost/remote2/remoteEntry.js", + }, + "shared": { + "@squide/core": { + "eager": true, + "singleton": true, + }, + "@squide/module-federation": { + "eager": true, + "singleton": true, + }, + "@squide/msw": { + "eager": true, + "singleton": true, + }, + "@squide/react-router": { + "eager": true, + "singleton": true, + }, + "react": { + "eager": true, + "requiredVersion": undefined, + "singleton": true, + }, + "react-dom": { + "eager": true, + "singleton": true, + }, + "react-router-dom": { + "eager": true, + "singleton": true, + }, + }, + }, + "name": "ModuleFederationPlugin", +} +`; + +exports[`defineDevHostConfig when a public path option is provided for the html webpack plugin, do not alter the provided public path option 1`] = ` +HtmlWebpackPlugin { + "options": { + "base": false, + "cache": true, + "chunks": "all", + "chunksSortMode": "auto", + "compile": true, + "excludeChunks": [], + "favicon": false, + "filename": "index.html", + "hash": false, + "inject": "head", + "meta": {}, + "minify": "auto", + "publicPath": "/toto", + "scriptLoading": "defer", + "showErrors": true, + "template": "auto", + "templateContent": false, + "templateParameters": [Function], + "title": "Webpack App", + "xhtml": false, + }, + "userOptions": { + "publicPath": "/toto", + }, + "version": 5, +} +`; + +exports[`defineDevHostConfig when additional options are provided for an existing default shared dependency, add the consumer options to the default options 1`] = ` +ModuleFederationPlugin { + "_options": { + "dts": false, + "manifest": false, + "name": "host", + "remotes": {}, + "shared": { + "@squide/core": { + "eager": true, + "singleton": true, + }, + "@squide/module-federation": { + "eager": true, + "singleton": true, + }, + "@squide/msw": { + "eager": true, + "singleton": true, + }, + "@squide/react-router": { + "eager": true, + "singleton": true, + }, + "react": { + "eager": true, + "requiredVersion": "1.2.3", + "singleton": true, + }, + "react-dom": { + "eager": true, + "singleton": true, + }, + "react-router-dom": { + "eager": true, + "singleton": true, + }, + }, + }, + "name": "ModuleFederationPlugin", +} +`; + +exports[`defineDevHostConfig when additional shared dependencies are provided, add the dependencies to the module federation plugin configuration 1`] = ` +ModuleFederationPlugin { + "_options": { + "dts": false, + "manifest": false, + "name": "host", + "remotes": {}, + "shared": { + "@squide/core": { + "eager": true, + "singleton": true, + }, + "@squide/module-federation": { + "eager": true, + "singleton": true, + }, + "@squide/msw": { + "eager": true, + "singleton": true, + }, + "@squide/react-router": { + "eager": true, + "singleton": true, + }, + "first": { + "singleton": true, + }, + "react": { + "eager": true, + "requiredVersion": undefined, + "singleton": true, + }, + "react-dom": { + "eager": true, + "singleton": true, + }, + "react-router-dom": { + "eager": true, + "singleton": true, + }, + "second": { + "eager": true, + "singleton": true, + }, + }, + }, + "name": "ModuleFederationPlugin", +} +`; + +exports[`defineDevHostConfig when environmentVariables is activated, add env-vars shared dependency and requiredVersion: false to the react shared dependency definition 1`] = ` +ModuleFederationPlugin { + "_options": { + "dts": false, + "manifest": false, + "name": "host", + "remotes": {}, + "shared": { + "@squide/core": { + "eager": true, + "singleton": true, + }, + "@squide/env-vars": { + "eager": true, + "singleton": true, + }, + "@squide/module-federation": { + "eager": true, + "singleton": true, + }, + "@squide/msw": { + "eager": true, + "singleton": true, + }, + "@squide/react-router": { + "eager": true, + "singleton": true, + }, + "react": { + "eager": true, + "requiredVersion": undefined, + "singleton": true, + }, + "react-dom": { + "eager": true, + "singleton": true, + }, + "react-router-dom": { + "eager": true, + "singleton": true, + }, + }, + }, + "name": "ModuleFederationPlugin", +} +`; + +exports[`defineDevHostConfig when honeycomb is activated, add honeycomb shared dependency and requiredVersion: false to the react shared dependency definition 1`] = ` +ModuleFederationPlugin { + "_options": { + "dts": false, + "manifest": false, + "name": "host", + "remotes": {}, + "shared": { + "@honeycombio/opentelemetry-web": { + "eager": true, + "singleton": true, + }, + "@opentelemetry/api": { + "eager": true, + "singleton": true, + }, + "@opentelemetry/auto-instrumentations-web": { + "eager": true, + "singleton": true, + }, + "@squide/core": { + "eager": true, + "singleton": true, + }, + "@squide/firefly-honeycomb": { + "eager": true, + "singleton": true, + }, + "@squide/module-federation": { + "eager": true, + "singleton": true, + }, + "@squide/msw": { + "eager": true, + "singleton": true, + }, + "@squide/react-router": { + "eager": true, + "singleton": true, + }, + "react": { + "eager": true, + "requiredVersion": undefined, + "singleton": true, + }, + "react-dom": { + "eager": true, + "singleton": true, + }, + "react-router-dom": { + "eager": true, + "singleton": true, + }, + }, + }, + "name": "ModuleFederationPlugin", +} +`; + +exports[`defineDevHostConfig when i18next is activated, add i18next shared dependency and requiredVersion: false to the react shared dependency definition 1`] = ` +ModuleFederationPlugin { + "_options": { + "dts": false, + "manifest": false, + "name": "host", + "remotes": {}, + "shared": { + "@squide/core": { + "eager": true, + "singleton": true, + }, + "@squide/i18next": { + "eager": true, + "singleton": true, + }, + "@squide/module-federation": { + "eager": true, + "singleton": true, + }, + "@squide/msw": { + "eager": true, + "singleton": true, + }, + "@squide/react-router": { + "eager": true, + "singleton": true, + }, + "i18next": { + "eager": true, + "singleton": true, + }, + "react": { + "eager": true, + "requiredVersion": false, + "singleton": true, + }, + "react-dom": { + "eager": true, + "singleton": true, + }, + "react-i18next": { + "eager": true, + "singleton": true, + }, + "react-router-dom": { + "eager": true, + "singleton": true, + }, + }, + }, + "name": "ModuleFederationPlugin", +} +`; + +exports[`defineDevHostConfig when no options are provided for the html webpack plugin, add a public path option 1`] = ` +HtmlWebpackPlugin { + "options": { + "base": false, + "cache": true, + "chunks": "all", + "chunksSortMode": "auto", + "compile": true, + "excludeChunks": [], + "favicon": false, + "filename": "index.html", + "hash": false, + "inject": "head", + "meta": {}, + "minify": "auto", + "publicPath": "/", + "scriptLoading": "defer", + "showErrors": true, + "templateContent": false, + "templateParameters": [Function], + "title": "Webpack App", + "xhtml": false, + }, + "userOptions": { + "publicPath": "/", + }, + "version": 5, +} +`; + +exports[`defineDevHostConfig when options others than the public path option are provided for the html webpack plugin, add a public path option 1`] = ` +HtmlWebpackPlugin { + "options": { + "base": false, + "cache": true, + "chunks": "all", + "chunksSortMode": "auto", + "compile": true, + "excludeChunks": [], + "favicon": "toto.png", + "filename": "index.html", + "hash": false, + "inject": "head", + "meta": {}, + "minify": "auto", + "publicPath": "/", + "scriptLoading": "defer", + "showErrors": true, + "template": "auto", + "templateContent": false, + "templateParameters": [Function], + "title": "Webpack App", + "xhtml": false, + }, + "userOptions": { + "favicon": "toto.png", + "publicPath": "/", + }, + "version": 5, +} +`; + +exports[`defineDevHostConfig when overriding options are provided for a default shared dependency, use the consumer option 1`] = ` +ModuleFederationPlugin { + "_options": { + "dts": false, + "manifest": false, + "name": "host", + "remotes": {}, + "shared": { + "@squide/core": { + "eager": true, + "singleton": true, + }, + "@squide/module-federation": { + "eager": true, + "singleton": true, + }, + "@squide/msw": { + "eager": true, + "singleton": true, + }, + "@squide/react-router": { + "eager": true, + "singleton": true, + }, + "react": { + "eager": false, + "requiredVersion": undefined, + "singleton": false, + }, + "react-dom": { + "eager": true, + "singleton": true, + }, + "react-router-dom": { + "eager": true, + "singleton": true, + }, + }, + }, + "name": "ModuleFederationPlugin", +} +`; + +exports[`defineDevHostConfig when the router is react-router, add react-router shared dependencies 1`] = ` +ModuleFederationPlugin { + "_options": { + "dts": false, + "manifest": false, + "name": "host", + "remotes": {}, + "shared": { + "@squide/core": { + "eager": true, + "singleton": true, + }, + "@squide/module-federation": { + "eager": true, + "singleton": true, + }, + "@squide/msw": { + "eager": true, + "singleton": true, + }, + "@squide/react-router": { + "eager": true, + "singleton": true, + }, + "react": { + "eager": true, + "requiredVersion": undefined, + "singleton": true, + }, + "react-dom": { + "eager": true, + "singleton": true, + }, + "react-router-dom": { + "eager": true, + "singleton": true, + }, + }, + }, + "name": "ModuleFederationPlugin", +} +`; + +exports[`defineDevRemoteModuleConfig the application name is set as the federation plugin application name 1`] = ` +ModuleFederationPlugin { + "_options": { + "dts": false, + "exposes": { + "./register": "./src/register", + }, + "filename": "remoteEntry.js", + "manifest": false, + "name": "remote1", + "shared": { + "@squide/core": { + "eager": undefined, + "singleton": true, + }, + "@squide/module-federation": { + "eager": undefined, + "singleton": true, + }, + "@squide/msw": { + "eager": undefined, + "singleton": true, + }, + "@squide/react-router": { + "eager": undefined, + "singleton": true, + }, + "react": { + "eager": undefined, + "requiredVersion": undefined, + "singleton": true, + }, + "react-dom": { + "eager": undefined, + "singleton": true, + }, + "react-router-dom": { + "eager": undefined, + "singleton": true, + }, + }, + }, + "name": "ModuleFederationPlugin", +} +`; + +exports[`defineDevRemoteModuleConfig the module federation plugin configuration includes the default shared dependencies 1`] = ` +ModuleFederationPlugin { + "_options": { + "dts": false, + "exposes": { + "./register": "./src/register", + }, + "filename": "remoteEntry.js", + "manifest": false, + "name": "remote1", + "shared": { + "@squide/core": { + "eager": undefined, + "singleton": true, + }, + "@squide/module-federation": { + "eager": undefined, + "singleton": true, + }, + "@squide/msw": { + "eager": undefined, + "singleton": true, + }, + "@squide/react-router": { + "eager": undefined, + "singleton": true, + }, + "react": { + "eager": undefined, + "requiredVersion": undefined, + "singleton": true, + }, + "react-dom": { + "eager": undefined, + "singleton": true, + }, + "react-router-dom": { + "eager": undefined, + "singleton": true, + }, + }, + }, + "name": "ModuleFederationPlugin", +} +`; + +exports[`defineDevRemoteModuleConfig when additional options are provided for an existing default shared dependency, add the consumer options to the default options 1`] = ` +ModuleFederationPlugin { + "_options": { + "dts": false, + "exposes": { + "./register": "./src/register", + }, + "filename": "remoteEntry.js", + "manifest": false, + "name": "remote1", + "shared": { + "@squide/core": { + "eager": undefined, + "singleton": true, + }, + "@squide/module-federation": { + "eager": undefined, + "singleton": true, + }, + "@squide/msw": { + "eager": undefined, + "singleton": true, + }, + "@squide/react-router": { + "eager": undefined, + "singleton": true, + }, + "react": { + "eager": undefined, + "requiredVersion": "1.2.3", + "singleton": true, + }, + "react-dom": { + "eager": undefined, + "singleton": true, + }, + "react-router-dom": { + "eager": undefined, + "singleton": true, + }, + }, + }, + "name": "ModuleFederationPlugin", +} +`; + +exports[`defineDevRemoteModuleConfig when additional shared dependencies are provided, add the dependencies to the module federation plugin configuration 1`] = ` ModuleFederationPlugin { "_options": { "dts": false, @@ -70,6 +1748,9 @@ ModuleFederationPlugin { "eager": undefined, "singleton": true, }, + "first": { + "singleton": true, + }, "react": { "eager": undefined, "requiredVersion": undefined, @@ -83,13 +1764,64 @@ ModuleFederationPlugin { "eager": undefined, "singleton": true, }, + "second": { + "eager": true, + "singleton": true, + }, + }, + }, + "name": "ModuleFederationPlugin", +} +`; + +exports[`defineDevRemoteModuleConfig when environmentVariables is activated, add env-vars shared dependency and requiredVersion: false to the react shared dependency definition 1`] = ` +ModuleFederationPlugin { + "_options": { + "dts": false, + "manifest": false, + "name": "host", + "remotes": {}, + "shared": { + "@squide/core": { + "eager": true, + "singleton": true, + }, + "@squide/env-vars": { + "eager": true, + "singleton": true, + }, + "@squide/module-federation": { + "eager": true, + "singleton": true, + }, + "@squide/msw": { + "eager": true, + "singleton": true, + }, + "@squide/react-router": { + "eager": true, + "singleton": true, + }, + "react": { + "eager": true, + "requiredVersion": undefined, + "singleton": true, + }, + "react-dom": { + "eager": true, + "singleton": true, + }, + "react-router-dom": { + "eager": true, + "singleton": true, + }, }, }, "name": "ModuleFederationPlugin", } `; -exports[`defineDevHostConfig includes react-router and msw dependencies 1`] = ` +exports[`defineDevRemoteModuleConfig when honeycomb is activated, add honeycomb shared dependency and requiredVersion: false to the react shared dependency definition 1`] = ` ModuleFederationPlugin { "_options": { "dts": false, @@ -97,10 +1829,26 @@ ModuleFederationPlugin { "name": "host", "remotes": {}, "shared": { + "@honeycombio/opentelemetry-web": { + "eager": true, + "singleton": true, + }, + "@opentelemetry/api": { + "eager": true, + "singleton": true, + }, + "@opentelemetry/auto-instrumentations-web": { + "eager": true, + "singleton": true, + }, "@squide/core": { "eager": true, "singleton": true, }, + "@squide/firefly-honeycomb": { + "eager": true, + "singleton": true, + }, "@squide/module-federation": { "eager": true, "singleton": true, @@ -132,7 +1880,111 @@ ModuleFederationPlugin { } `; -exports[`defineDevRemoteModuleConfig includes react-router and msw dependencies 1`] = ` +exports[`defineDevRemoteModuleConfig when i18next is activated, add i18next shared dependency and requiredVersion: false to the react shared dependency definition 1`] = ` +ModuleFederationPlugin { + "_options": { + "dts": false, + "exposes": { + "./register": "./src/register", + }, + "filename": "remoteEntry.js", + "manifest": false, + "name": "remote1", + "shared": { + "@squide/core": { + "eager": undefined, + "singleton": true, + }, + "@squide/i18next": { + "eager": undefined, + "singleton": true, + }, + "@squide/module-federation": { + "eager": undefined, + "singleton": true, + }, + "@squide/msw": { + "eager": undefined, + "singleton": true, + }, + "@squide/react-router": { + "eager": undefined, + "singleton": true, + }, + "i18next": { + "eager": undefined, + "singleton": true, + }, + "react": { + "eager": undefined, + "requiredVersion": false, + "singleton": true, + }, + "react-dom": { + "eager": undefined, + "singleton": true, + }, + "react-i18next": { + "eager": undefined, + "singleton": true, + }, + "react-router-dom": { + "eager": undefined, + "singleton": true, + }, + }, + }, + "name": "ModuleFederationPlugin", +} +`; + +exports[`defineDevRemoteModuleConfig when overriding options are provided for a default shared dependency, use the consumer option 1`] = ` +ModuleFederationPlugin { + "_options": { + "dts": false, + "exposes": { + "./register": "./src/register", + }, + "filename": "remoteEntry.js", + "manifest": false, + "name": "remote1", + "shared": { + "@squide/core": { + "eager": undefined, + "singleton": true, + }, + "@squide/module-federation": { + "eager": undefined, + "singleton": true, + }, + "@squide/msw": { + "eager": undefined, + "singleton": true, + }, + "@squide/react-router": { + "eager": undefined, + "singleton": true, + }, + "react": { + "eager": false, + "requiredVersion": undefined, + "singleton": false, + }, + "react-dom": { + "eager": undefined, + "singleton": true, + }, + "react-router-dom": { + "eager": undefined, + "singleton": true, + }, + }, + }, + "name": "ModuleFederationPlugin", +} +`; + +exports[`defineDevRemoteModuleConfig when the router is react-router, add react-router shared dependencies 1`] = ` ModuleFederationPlugin { "_options": { "dts": false, diff --git a/packages/firefly-webpack-configs/tests/defineConfig.test.ts b/packages/firefly-webpack-configs/tests/defineConfig.test.ts index 31736b14c..f6a836937 100644 --- a/packages/firefly-webpack-configs/tests/defineConfig.test.ts +++ b/packages/firefly-webpack-configs/tests/defineConfig.test.ts @@ -1,9 +1,21 @@ import { ModuleFederationPlugin } from "@module-federation/enhanced/webpack"; -import type { ModuleFederationPluginOptions } from "@squide/webpack-configs"; import { defineBuildConfig as defineSwcBuildConfig, defineDevConfig as defineSwcDevConfig } from "@workleap/swc-configs"; -import { findPlugin, matchConstructorName } from "@workleap/webpack-configs"; +import { findPlugin, matchConstructorName, type WebpackConfig } from "@workleap/webpack-configs"; +import HtmlWebpackPlugin from "html-webpack-plugin"; import type { WebpackPluginInstance } from "webpack"; -import { defineBuildHostConfig, defineBuildRemoteModuleConfig, defineDevHostConfig, defineDevRemoteModuleConfig } from "../src/index.ts"; +import { defineBuildHostConfig, defineBuildRemoteModuleConfig, defineDevHostConfig, defineDevRemoteModuleConfig, defineHostModuleFederationPluginOptions, defineRemoteModuleFederationPluginOptions, type ModuleFederationPluginOptions } from "../src/defineConfig.ts"; + +class DummyPlugin { + _options: unknown; + + constructor(options: unknown) { + this._options = options; + } + + apply() { + console.log("Apply Dummy plugin."); + } +} // The following options are relative to the environment running the test and breaks on CI. function prepareModuleFederationPluginForSnapshot(plugin: WebpackPluginInstance) { @@ -17,25 +29,417 @@ describe("defineDevHostConfig", () => { chrome: "116" }); - test("includes react-router and msw dependencies", () => { + test("the application name is set as the federation plugin application name", () => { + const config = defineDevHostConfig(SwcConfig, 8080, []); + const result = findPlugin(config, matchConstructorName(ModuleFederationPlugin.name)); + + expect(prepareModuleFederationPluginForSnapshot(result.plugin as WebpackPluginInstance)).toMatchSnapshot(); + }); + + test("the application name is set as the output unique name", () => { + const result = defineDevHostConfig(SwcConfig, 8080, []); + + expect(result.output!.uniqueName).toBe("host"); + }); + + test("the port number is set as the dev server port", () => { + const result = defineDevHostConfig(SwcConfig, 8080, []); + + // "devServer" does exist but webpack types are a messed. + // eslint-disable-next-line @typescript-eslint/ban-ts-comment + // @ts-ignore + expect(result.devServer.port).toBe(8080); + }); + + test("when no public path is provided, the default public path is \"auto\"", () => { + const config = defineDevHostConfig(SwcConfig, 8080, []); + + expect(config.output!.publicPath).toBe("auto"); + }); + + test("when a public path is provided, use the provided public path", () => { + const config = defineDevHostConfig(SwcConfig, 8080, [], { + publicPath: "http://localhost:8080/" + }); + + expect(config.output!.publicPath).toBe("http://localhost:8080/"); + }); + + test("the module federation plugin configuration includes the remotes", () => { + const config = defineDevHostConfig(SwcConfig, 8080, [ + { name: "remote1", url: "http://localhost/remote1" }, + { name: "remote2", url: "http://localhost/remote2" } + ]); + + const result = findPlugin(config, matchConstructorName(ModuleFederationPlugin.name)); + + expect(prepareModuleFederationPluginForSnapshot(result.plugin as WebpackPluginInstance)).toMatchSnapshot(); + }); + + test("the module federation plugin configuration includes the default shared dependencies", () => { const config = defineDevHostConfig(SwcConfig, 8080, []); const result = findPlugin(config, matchConstructorName(ModuleFederationPlugin.name)); expect(prepareModuleFederationPluginForSnapshot(result.plugin as WebpackPluginInstance)).toMatchSnapshot(); }); + + test("when additional shared dependencies are provided, add the dependencies to the module federation plugin configuration", () => { + const config = defineDevHostConfig(SwcConfig, 8080, [], { + sharedDependencies: { + "first": { + singleton: true + }, + "second": { + eager: true, + singleton: true + } + } + }); + + const result = findPlugin(config, matchConstructorName(ModuleFederationPlugin.name)); + + expect(prepareModuleFederationPluginForSnapshot(result.plugin as WebpackPluginInstance)).toMatchSnapshot(); + }); + + test("when additional options are provided for an existing default shared dependency, add the consumer options to the default options", () => { + const config = defineDevHostConfig(SwcConfig, 8080, [], { + sharedDependencies: { + "react": { + requiredVersion: "1.2.3" + } + } + }); + + const result = findPlugin(config, matchConstructorName(ModuleFederationPlugin.name)); + + expect(prepareModuleFederationPluginForSnapshot(result.plugin as WebpackPluginInstance)).toMatchSnapshot(); + }); + + test("when overriding options are provided for a default shared dependency, use the consumer option", () => { + const config = defineDevHostConfig(SwcConfig, 8080, [], { + sharedDependencies: { + "react": { + eager: false, + singleton: false + } + } + }); + + const result = findPlugin(config, matchConstructorName(ModuleFederationPlugin.name)); + + expect(prepareModuleFederationPluginForSnapshot(result.plugin as WebpackPluginInstance)).toMatchSnapshot(); + }); + + test("when the router is react-router, add react-router shared dependencies", () => { + const config = defineDevHostConfig(SwcConfig, 8080, [], { + features: { + router: "react-router" + } + }); + + const result = findPlugin(config, matchConstructorName(ModuleFederationPlugin.name)); + + expect(prepareModuleFederationPluginForSnapshot(result.plugin as WebpackPluginInstance)).toMatchSnapshot(); + }); + + test("when i18next is activated, add i18next shared dependency and requiredVersion: false to the react shared dependency definition", () => { + const config = defineDevHostConfig(SwcConfig, 8080, [], { + features: { + i18next: true + } + }); + + const result = findPlugin(config, matchConstructorName(ModuleFederationPlugin.name)); + + expect(prepareModuleFederationPluginForSnapshot(result.plugin as WebpackPluginInstance)).toMatchSnapshot(); + }); + + test("when honeycomb is activated, add honeycomb shared dependency and requiredVersion: false to the react shared dependency definition", () => { + const config = defineDevHostConfig(SwcConfig, 8080, [], { + features: { + honeycomb: true + } + }); + + const result = findPlugin(config, matchConstructorName(ModuleFederationPlugin.name)); + + expect(prepareModuleFederationPluginForSnapshot(result.plugin as WebpackPluginInstance)).toMatchSnapshot(); + }); + + test("when environmentVariables is activated, add env-vars shared dependency and requiredVersion: false to the react shared dependency definition", () => { + const config = defineDevHostConfig(SwcConfig, 8080, [], { + features: { + environmentVariables: true + } + }); + + const result = findPlugin(config, matchConstructorName(ModuleFederationPlugin.name)); + + expect(prepareModuleFederationPluginForSnapshot(result.plugin as WebpackPluginInstance)).toMatchSnapshot(); + }); + + test("when additional plugins are provided, the plugins are added to the configuration", () => { + const config = defineDevHostConfig(SwcConfig, 8080, [], { + plugins: [new DummyPlugin({})] + }); + + const result = findPlugin(config, matchConstructorName(DummyPlugin.name)); + + expect(result).toBeDefined(); + }); + + test("when configuration transformers are provided, the transformers are applied to the configuration", () => { + const result = defineDevHostConfig(SwcConfig, 8080, [], { + transformers: [(config: WebpackConfig) => { + config.entry = "updated by the dummy transformer"; + + return config; + }] + }); + + expect(result.entry).toBe("updated by the dummy transformer"); + }); + + test("when no options are provided for the html webpack plugin, add a public path option", () => { + const config = defineDevHostConfig(SwcConfig, 8080, []); + + const result = findPlugin(config, matchConstructorName(HtmlWebpackPlugin.name)); + + // This is an option that is relative to the environment running the test and breaks on CI. + // eslint-disable-next-line @typescript-eslint/ban-ts-comment + // @ts-ignore + delete (result.plugin.userOptions as HtmlWebpackPlugin.Options)["template"]; + // This is an option that is relative to the environment running the test and breaks on CI. + // eslint-disable-next-line @typescript-eslint/ban-ts-comment + // @ts-ignore + delete (result.plugin.options as HtmlWebpackPlugin.Options)["template"]; + + expect(result.plugin).toMatchSnapshot(); + }); + + test("when options others than the public path option are provided for the html webpack plugin, add a public path option", () => { + const config = defineDevHostConfig(SwcConfig, 8080, [], { + htmlWebpackPluginOptions: { + favicon: "toto.png" + } + }); + + const result = findPlugin(config, matchConstructorName(HtmlWebpackPlugin.name)); + + expect(result.plugin).toMatchSnapshot(); + }); + + test("when a public path option is provided for the html webpack plugin, do not alter the provided public path option", () => { + const config = defineDevHostConfig(SwcConfig, 8080, [], { + htmlWebpackPluginOptions: { + publicPath: "/toto" + } + }); + + const result = findPlugin(config, matchConstructorName(HtmlWebpackPlugin.name)); + + expect(result.plugin).toMatchSnapshot(); + }); }); + describe("defineBuildHostConfig", () => { const SwcConfig = defineSwcBuildConfig({ chrome: "116" }); - test("includes react-router and msw dependencies", () => { + test("the application name is set as the federation plugin application name", () => { const config = defineBuildHostConfig(SwcConfig, []); const result = findPlugin(config, matchConstructorName(ModuleFederationPlugin.name)); expect(prepareModuleFederationPluginForSnapshot(result.plugin as WebpackPluginInstance)).toMatchSnapshot(); }); + + test("when no public path is provided, the default public path is \"auto\"", () => { + const config = defineBuildHostConfig(SwcConfig, []); + + expect(config.output!.publicPath).toBe("auto"); + }); + + test("when a public path is provided, use the provided public path", () => { + const config = defineBuildHostConfig(SwcConfig, [], { + publicPath: "http://localhost:8080/" + }); + + expect(config.output!.publicPath).toBe("http://localhost:8080/"); + }); + + test("the module federation plugin configuration includes the remotes", () => { + const config = defineBuildHostConfig(SwcConfig, [ + { name: "remote1", url: "http://localhost/remote1" }, + { name: "remote2", url: "http://localhost/remote2" } + ]); + + const result = findPlugin(config, matchConstructorName(ModuleFederationPlugin.name)); + + expect(prepareModuleFederationPluginForSnapshot(result.plugin as WebpackPluginInstance)).toMatchSnapshot(); + }); + + test("the module federation plugin configuration includes the default shared dependencies", () => { + const config = defineBuildHostConfig(SwcConfig, []); + const result = findPlugin(config, matchConstructorName(ModuleFederationPlugin.name)); + + expect(prepareModuleFederationPluginForSnapshot(result.plugin as WebpackPluginInstance)).toMatchSnapshot(); + }); + + test("when additional shared dependencies are provided, add the dependencies to the module federation plugin configuration", () => { + const config = defineBuildHostConfig(SwcConfig, [], { + sharedDependencies: { + "first": { + singleton: true + }, + "second": { + eager: true, + singleton: true + } + } + }); + + const result = findPlugin(config, matchConstructorName(ModuleFederationPlugin.name)); + + expect(prepareModuleFederationPluginForSnapshot(result.plugin as WebpackPluginInstance)).toMatchSnapshot(); + }); + + test("when additional options are provided for an existing default shared dependency, add the consumer options to the default options", () => { + const config = defineBuildHostConfig(SwcConfig, [], { + sharedDependencies: { + "react": { + requiredVersion: "1.2.3" + } + } + }); + + const result = findPlugin(config, matchConstructorName(ModuleFederationPlugin.name)); + + expect(prepareModuleFederationPluginForSnapshot(result.plugin as WebpackPluginInstance)).toMatchSnapshot(); + }); + + test("when overriding options are provided for a default shared dependency, use the consumer option", () => { + const config = defineBuildHostConfig(SwcConfig, [], { + sharedDependencies: { + "react": { + eager: false, + singleton: false + } + } + }); + + const result = findPlugin(config, matchConstructorName(ModuleFederationPlugin.name)); + + expect(prepareModuleFederationPluginForSnapshot(result.plugin as WebpackPluginInstance)).toMatchSnapshot(); + }); + + test("when the router is react-router, add react-router shared dependencies", () => { + const config = defineBuildHostConfig(SwcConfig, [], { + features: { + router: "react-router" + } + }); + + const result = findPlugin(config, matchConstructorName(ModuleFederationPlugin.name)); + + expect(prepareModuleFederationPluginForSnapshot(result.plugin as WebpackPluginInstance)).toMatchSnapshot(); + }); + + test("when i18next is activated, add i18next shared dependency and requiredVersion: false to the react shared dependency definition", () => { + const config = defineBuildHostConfig(SwcConfig, [], { + features: { + i18next: true + } + }); + + const result = findPlugin(config, matchConstructorName(ModuleFederationPlugin.name)); + + expect(prepareModuleFederationPluginForSnapshot(result.plugin as WebpackPluginInstance)).toMatchSnapshot(); + }); + + test("when honeycomb is activated, add honeycomb shared dependency and requiredVersion: false to the react shared dependency definition", () => { + const config = defineBuildHostConfig(SwcConfig, [], { + features: { + honeycomb: true + } + }); + + const result = findPlugin(config, matchConstructorName(ModuleFederationPlugin.name)); + + expect(prepareModuleFederationPluginForSnapshot(result.plugin as WebpackPluginInstance)).toMatchSnapshot(); + }); + + test("when environmentVariables is env-vars, add env-vars shared dependency and requiredVersion: false to the react shared dependency definition", () => { + const config = defineBuildHostConfig(SwcConfig, [], { + features: { + environmentVariables: true + } + }); + + const result = findPlugin(config, matchConstructorName(ModuleFederationPlugin.name)); + + expect(prepareModuleFederationPluginForSnapshot(result.plugin as WebpackPluginInstance)).toMatchSnapshot(); + }); + + test("when additional plugins are provided, the plugins are added to the configuration", () => { + const config = defineBuildHostConfig(SwcConfig, [], { + plugins: [new DummyPlugin({})] + }); + + const result = findPlugin(config, matchConstructorName(DummyPlugin.name)); + + expect(result).toBeDefined(); + }); + + test("when configuration transformers are provided, the transformers are applied to the configuration", () => { + const result = defineBuildHostConfig(SwcConfig, [], { + transformers: [(config: WebpackConfig) => { + config.entry = "updated by the dummy transformer"; + + return config; + }] + }); + + expect(result.entry).toBe("updated by the dummy transformer"); + }); + + test("when no options are provided for the html webpack plugin, add a public path option", () => { + const config = defineBuildHostConfig(SwcConfig, []); + + const result = findPlugin(config, matchConstructorName(HtmlWebpackPlugin.name)); + + // This is an option that is relative to the environment running the test and breaks on CI. + delete ((result.plugin as WebpackPluginInstance).userOptions as HtmlWebpackPlugin.Options)["template"]; + // This is an option that is relative to the environment running the test and breaks on CI. + delete ((result.plugin as WebpackPluginInstance).options as HtmlWebpackPlugin.Options)["template"]; + + expect(result.plugin).toMatchSnapshot(); + }); + + test("when options others than the public path option are provided for the html webpack plugin, add a public path option", () => { + const config = defineBuildHostConfig(SwcConfig, [], { + htmlWebpackPluginOptions: { + favicon: "toto.png" + } + }); + + const result = findPlugin(config, matchConstructorName(HtmlWebpackPlugin.name)); + + expect(result.plugin).toMatchSnapshot(); + }); + + test("when a public path option is provided for the html webpack plugin, do not alter the provided public path option", () => { + const config = defineBuildHostConfig(SwcConfig, [], { + htmlWebpackPluginOptions: { + publicPath: "/toto" + } + }); + + const result = findPlugin(config, matchConstructorName(HtmlWebpackPlugin.name)); + + expect(result.plugin).toMatchSnapshot(); + }); }); describe("defineDevRemoteModuleConfig", () => { @@ -43,12 +447,176 @@ describe("defineDevRemoteModuleConfig", () => { chrome: "116" }); - test("includes react-router and msw dependencies", () => { + test("the application name is set as the federation plugin application name", () => { + const config = defineDevRemoteModuleConfig(SwcConfig, "remote1", 8081); + const result = findPlugin(config, matchConstructorName(ModuleFederationPlugin.name)); + + expect(prepareModuleFederationPluginForSnapshot(result.plugin as WebpackPluginInstance)).toMatchSnapshot(); + }); + + test("the application name is set as the output unique name", () => { + const config = defineDevRemoteModuleConfig(SwcConfig, "remote1", 8081); + + expect(config.output!.uniqueName).toBe("remote1"); + }); + + test("the port number is set as the dev server port", () => { + const result = defineDevRemoteModuleConfig(SwcConfig, "remote1", 8081); + + // "devServer" does exist but webpack types are a messed. + // eslint-disable-next-line @typescript-eslint/ban-ts-comment + // @ts-ignore + expect(result.devServer.port).toBe(8081); + }); + + test("when no public path is provided, the default public path is \"auto\"", () => { + const config = defineDevRemoteModuleConfig(SwcConfig, "remote1", 8081); + + expect(config.output!.publicPath).toBe("auto"); + }); + + test("when a public path is provided, use the provided public path", () => { + const config = defineDevRemoteModuleConfig(SwcConfig, "remote1", 8081, { + publicPath: "http://localhost:8081/" + }); + + expect(config.output!.publicPath).toBe("http://localhost:8081/"); + }); + + test("the module federation plugin configuration includes the default shared dependencies", () => { const config = defineDevRemoteModuleConfig(SwcConfig, "remote1", 8081); const result = findPlugin(config, matchConstructorName(ModuleFederationPlugin.name)); expect(prepareModuleFederationPluginForSnapshot(result.plugin as WebpackPluginInstance)).toMatchSnapshot(); }); + + test("when additional shared dependencies are provided, add the dependencies to the module federation plugin configuration", () => { + const config = defineDevRemoteModuleConfig(SwcConfig, "remote1", 8081, { + sharedDependencies: { + "first": { + singleton: true + }, + "second": { + eager: true, + singleton: true + } + } + }); + + const result = findPlugin(config, matchConstructorName(ModuleFederationPlugin.name)); + + expect(prepareModuleFederationPluginForSnapshot(result.plugin as WebpackPluginInstance)).toMatchSnapshot(); + }); + + test("when additional options are provided for an existing default shared dependency, add the consumer options to the default options", () => { + const config = defineDevRemoteModuleConfig(SwcConfig, "remote1", 8081, { + sharedDependencies: { + "react": { + requiredVersion: "1.2.3" + } + } + }); + + const result = findPlugin(config, matchConstructorName(ModuleFederationPlugin.name)); + + expect(prepareModuleFederationPluginForSnapshot(result.plugin as WebpackPluginInstance)).toMatchSnapshot(); + }); + + test("when overriding options are provided for a default shared dependency, use the consumer option", () => { + const config = defineDevRemoteModuleConfig(SwcConfig, "remote1", 8081, { + sharedDependencies: { + "react": { + eager: false, + singleton: false + } + } + }); + + const result = findPlugin(config, matchConstructorName(ModuleFederationPlugin.name)); + + expect(prepareModuleFederationPluginForSnapshot(result.plugin as WebpackPluginInstance)).toMatchSnapshot(); + }); + + test("when the router is react-router, add react-router shared dependencies", () => { + const config = defineDevRemoteModuleConfig(SwcConfig, "remote1", 8081, { + features: { + router: "react-router" + } + }); + + const result = findPlugin(config, matchConstructorName(ModuleFederationPlugin.name)); + + expect(prepareModuleFederationPluginForSnapshot(result.plugin as WebpackPluginInstance)).toMatchSnapshot(); + }); + + test("when i18next is activated, add i18next shared dependency and requiredVersion: false to the react shared dependency definition", () => { + const config = defineDevRemoteModuleConfig(SwcConfig, "remote1", 8081, { + features: { + i18next: true + } + }); + + const result = findPlugin(config, matchConstructorName(ModuleFederationPlugin.name)); + + expect(prepareModuleFederationPluginForSnapshot(result.plugin as WebpackPluginInstance)).toMatchSnapshot(); + }); + + test("when honeycomb is activated, add honeycomb shared dependency and requiredVersion: false to the react shared dependency definition", () => { + const config = defineBuildHostConfig(SwcConfig, [], { + features: { + honeycomb: true + } + }); + + const result = findPlugin(config, matchConstructorName(ModuleFederationPlugin.name)); + + expect(prepareModuleFederationPluginForSnapshot(result.plugin as WebpackPluginInstance)).toMatchSnapshot(); + }); + + test("when environmentVariables is activated, add env-vars shared dependency and requiredVersion: false to the react shared dependency definition", () => { + const config = defineBuildHostConfig(SwcConfig, [], { + features: { + environmentVariables: true + } + }); + + const result = findPlugin(config, matchConstructorName(ModuleFederationPlugin.name)); + + expect(prepareModuleFederationPluginForSnapshot(result.plugin as WebpackPluginInstance)).toMatchSnapshot(); + }); + + test("access control headers are added to the dev server configuration", () => { + const result = defineDevRemoteModuleConfig(SwcConfig, "remote1", 8081); + + // "devServer" does exist but webpack types are a messed. + // eslint-disable-next-line @typescript-eslint/ban-ts-comment + // @ts-ignore + expect(result.devServer.headers["Access-Control-Allow-Origin"]).toBe("*"); + }); + + test("when additional plugins are provided, the plugins are added to the configuration", () => { + const config = defineDevRemoteModuleConfig(SwcConfig, "remote1", 8081, { + plugins: [new DummyPlugin({})] + }); + + const result = findPlugin(config, matchConstructorName(DummyPlugin.name)); + + expect(result).toBeDefined(); + }); + + test("when additional configuration transformers are provided, the transformers are applied to the configuration", () => { + const dummyTransformer = (config: WebpackConfig) => { + config.entry = "updated by the dummy transformer"; + + return config; + }; + + const result = defineDevRemoteModuleConfig(SwcConfig, "remote1", 8081, { + transformers: [dummyTransformer] + }); + + expect(result.entry).toBe("updated by the dummy transformer"); + }); }); describe("defineBuildRemoteModuleConfig", () => { @@ -56,12 +624,249 @@ describe("defineBuildRemoteModuleConfig", () => { chrome: "116" }); - test("includes react-router and msw dependencies", () => { + test("the application name is set as the federation plugin application name", () => { const config = defineBuildRemoteModuleConfig(SwcConfig, "remote1"); const result = findPlugin(config, matchConstructorName(ModuleFederationPlugin.name)); expect(prepareModuleFederationPluginForSnapshot(result.plugin as WebpackPluginInstance)).toMatchSnapshot(); }); + + test("when no public path is provided, the default public path is \"auto\"", () => { + const config = defineBuildRemoteModuleConfig(SwcConfig, "remote1"); + + expect(config.output!.publicPath).toBe("auto"); + }); + + test("when a public path is provided, use the provided public path", () => { + const config = defineBuildRemoteModuleConfig(SwcConfig, "remote1", { + publicPath: "http://localhost:8080/" + }); + + expect(config.output!.publicPath).toBe("http://localhost:8080/"); + }); + + test("the module federation plugin configuration includes the default shared dependencies", () => { + const config = defineBuildRemoteModuleConfig(SwcConfig, "remote1"); + const result = findPlugin(config, matchConstructorName(ModuleFederationPlugin.name)); + + expect(prepareModuleFederationPluginForSnapshot(result.plugin as WebpackPluginInstance)).toMatchSnapshot(); + }); + + test("when additional shared dependencies are provided, add the dependencies to the module federation plugin configuration", () => { + const config = defineBuildRemoteModuleConfig(SwcConfig, "remote1", { + sharedDependencies: { + "first": { + singleton: true + }, + "second": { + eager: true, + singleton: true + } + } + }); + + const result = findPlugin(config, matchConstructorName(ModuleFederationPlugin.name)); + + expect(prepareModuleFederationPluginForSnapshot(result.plugin as WebpackPluginInstance)).toMatchSnapshot(); + }); + + test("when additional options are provided for an existing default shared dependency, add the consumer options to the default options", () => { + const config = defineBuildRemoteModuleConfig(SwcConfig, "remote1", { + sharedDependencies: { + "react": { + requiredVersion: "1.2.3" + } + } + }); + + const result = findPlugin(config, matchConstructorName(ModuleFederationPlugin.name)); + + expect(prepareModuleFederationPluginForSnapshot(result.plugin as WebpackPluginInstance)).toMatchSnapshot(); + }); + + test("when overriding options are provided for a default shared dependency, use the consumer option", () => { + const config = defineBuildRemoteModuleConfig(SwcConfig, "remote1", { + sharedDependencies: { + "react": { + eager: false, + singleton: false + } + } + }); + + const result = findPlugin(config, matchConstructorName(ModuleFederationPlugin.name)); + + expect(prepareModuleFederationPluginForSnapshot(result.plugin as WebpackPluginInstance)).toMatchSnapshot(); + }); + + test("when the router is react-router, add react-router shared dependencies", () => { + const config = defineBuildRemoteModuleConfig(SwcConfig, "remote1", { + features: { + router: "react-router" + } + }); + + const result = findPlugin(config, matchConstructorName(ModuleFederationPlugin.name)); + + expect(prepareModuleFederationPluginForSnapshot(result.plugin as WebpackPluginInstance)).toMatchSnapshot(); + }); + + test("when i18next is activated, add i18next shared dependency and requiredVersion: false to the react shared dependency definition", () => { + const config = defineBuildRemoteModuleConfig(SwcConfig, "remote1", { + features: { + i18next: true + } + }); + + const result = findPlugin(config, matchConstructorName(ModuleFederationPlugin.name)); + + expect(prepareModuleFederationPluginForSnapshot(result.plugin as WebpackPluginInstance)).toMatchSnapshot(); + }); + + test("when honeycomb is activated, add honeycomb shared dependency and requiredVersion: false to the react shared dependency definition", () => { + const config = defineDevRemoteModuleConfig(SwcConfig, "remote1", 8081, { + features: { + honeycomb: true + } + }); + + const result = findPlugin(config, matchConstructorName(ModuleFederationPlugin.name)); + + expect(prepareModuleFederationPluginForSnapshot(result.plugin as WebpackPluginInstance)).toMatchSnapshot(); + }); + + test("when environmentVariables is activated, add env-vars shared dependency and requiredVersion: false to the react shared dependency definition", () => { + const config = defineDevRemoteModuleConfig(SwcConfig, "remote1", 8081, { + features: { + environmentVariables: true + } + }); + + const result = findPlugin(config, matchConstructorName(ModuleFederationPlugin.name)); + + expect(prepareModuleFederationPluginForSnapshot(result.plugin as WebpackPluginInstance)).toMatchSnapshot(); + }); + + test("when additional plugins are provided, the plugins are added to the configuration", () => { + const config = defineBuildRemoteModuleConfig(SwcConfig, "remote1", { + plugins: [new DummyPlugin({})] + }); + + const result = findPlugin(config, matchConstructorName(DummyPlugin.name)); + + expect(result).toBeDefined(); + }); + + test("when configuration transformers are provided, the transformers are applied to the configuration", () => { + const dummyTransformer = (config: WebpackConfig) => { + config.entry = "updated by the dummy transformer"; + + return config; + }; + + const result = defineBuildRemoteModuleConfig(SwcConfig, "remote1", { + transformers: [dummyTransformer] + }); + + expect(result.entry).toBe("updated by the dummy transformer"); + }); +}); + +describe("defineHostModuleFederationPluginOptions", () => { + test("merge the default options with the provided options", () => { + const result = defineHostModuleFederationPluginOptions([], { + runtime: "a-custom-runtime-name" + }); + + expect(result.runtime).toBe("a-custom-runtime-name"); + }); + + test("merge the shared dependencies with the default shared dependencies", () => { + const result = defineHostModuleFederationPluginOptions([], { + shared: { + "react": { + singleton: false, + requiredVersion: "1.2.3" + }, + "first": { + singleton: true + }, + "second": { + eager: true, + singleton: true + } + } + }); + + // eslint-disable-next-line @typescript-eslint/ban-ts-comment + // @ts-ignore + expect(result.shared.react).toBeDefined(); + // eslint-disable-next-line @typescript-eslint/ban-ts-comment + // @ts-ignore + expect(result.shared.react.singleton).toBeFalsy(); + // eslint-disable-next-line @typescript-eslint/ban-ts-comment + // @ts-ignore + expect(result.shared.react.requiredVersion).toBe("1.2.3"); + // eslint-disable-next-line @typescript-eslint/ban-ts-comment + // @ts-ignore + expect(result.shared.first).toBeDefined(); + // eslint-disable-next-line @typescript-eslint/ban-ts-comment + // @ts-ignore + expect(result.shared.second).toBeDefined(); + }); }); +describe("defineRemoteModuleFederationPluginOptions", () => { + test("merge the default options with the provided options", () => { + const result = defineRemoteModuleFederationPluginOptions("remote1", { + runtime: "a-custom-runtime-name" + }); + + expect(result.runtime).toBe("a-custom-runtime-name"); + }); + + test("merge the shared dependencies with the default shared dependencies", () => { + const result = defineRemoteModuleFederationPluginOptions("remote1", { + shared: { + "react": { + singleton: false, + requiredVersion: "1.2.3" + }, + "first": { + singleton: true + }, + "second": { + eager: true, + singleton: true + } + } + }); + // eslint-disable-next-line @typescript-eslint/ban-ts-comment + // @ts-ignore + expect(result.shared.react).toBeDefined(); + // eslint-disable-next-line @typescript-eslint/ban-ts-comment + // @ts-ignore + expect(result.shared.react.singleton).toBeFalsy(); + // eslint-disable-next-line @typescript-eslint/ban-ts-comment + // @ts-ignore + expect(result.shared.react.requiredVersion).toBe("1.2.3"); + // eslint-disable-next-line @typescript-eslint/ban-ts-comment + // @ts-ignore + expect(result.shared.first).toBeDefined(); + // eslint-disable-next-line @typescript-eslint/ban-ts-comment + // @ts-ignore + expect(result.shared.second).toBeDefined(); + }); + + test("should provide additional \"exposes\"", () => { + const result = defineRemoteModuleFederationPluginOptions("remote1", { + exposes: { + "custom-file.js": "./src/custom-file.js" + } + }); + + expect(Object.keys(result.exposes!).length).toBe(2); + expect(Object.values(result.exposes!)[1]).toBe("./src/custom-file.js"); + }); +}); diff --git a/packages/firefly-webpack-configs/tests/sharedDependenciesResolutionPlugin.test.ts b/packages/firefly-webpack-configs/tests/sharedDependenciesResolutionPlugin.test.ts new file mode 100644 index 000000000..89dc2b8fc --- /dev/null +++ b/packages/firefly-webpack-configs/tests/sharedDependenciesResolutionPlugin.test.ts @@ -0,0 +1,108 @@ +import type { FederationHost } from "@module-federation/enhanced/runtime"; +import { resolveSharedDependency } from "../src/sharedDependenciesResolutionPlugin.ts"; + +type Shared = FederationHost["shareScopeMap"][string][string][string]; + +function createSharedEntry(from: string, version: string, singleton?: boolean): Shared { + return { + from, + version, + shareConfig: { + singleton, + requiredVersion: false + }, + deps: [], + get: () => () => {}, + scope: ["default"], + strategy: "version-first", + useIn: [from] + }; +} + +test("when a remote request a version with the same major version as the host requested version, but with an higher minor version, resolve to the remote requested version", () => { + const { resolvedEntry, highestVersionEntry } = resolveSharedDependency("my-lib", [ + createSharedEntry("host", "2.0.0", true), + createSharedEntry("remote-1", "2.1.0", true), + createSharedEntry("remote-2", "2.0.0", true) + ]); + + expect(resolvedEntry.version).toBe("2.1.0"); + expect(highestVersionEntry.version).toBe("2.1.0"); +}); + +test("when a remote request a version with the same major version as the host requested version, but with an higher patch version, resolve to the remote requested version", () => { + const { resolvedEntry, highestVersionEntry } = resolveSharedDependency("my-lib", [ + createSharedEntry("host", "2.0.0", true), + createSharedEntry("remote-1", "2.0.1", true), + createSharedEntry("remote-2", "2.0.0", true) + ]); + + expect(resolvedEntry.version).toBe("2.0.1"); + expect(highestVersionEntry.version).toBe("2.0.1"); +}); + +test("when a remote request a version with an higher major version than the host requested version, fallback to the highest requested version sharing the same major version as the host requested version", () => { + const { resolvedEntry, highestVersionEntry } = resolveSharedDependency("my-lib", [ + createSharedEntry("host", "2.0.0", true), + createSharedEntry("remote-1", "3.1.0", true), + createSharedEntry("remote-2", "2.1.0", true) + ]); + + expect(resolvedEntry.version).toBe("2.1.0"); + expect(highestVersionEntry.version).toBe("3.1.0"); +}); + +test("supports \">\" range", () => { + const { resolvedEntry, highestVersionEntry } = resolveSharedDependency("my-lib", [ + createSharedEntry("host", ">2.0.0", true), + createSharedEntry("remote-1", "3.1.0", true), + createSharedEntry("remote-2", "2.1.0", true) + ]); + + expect(resolvedEntry.version).toBe("2.1.0"); + expect(highestVersionEntry.version).toBe("3.1.0"); +}); + +test("supports \">=\" range", () => { + const { resolvedEntry, highestVersionEntry } = resolveSharedDependency("my-lib", [ + createSharedEntry("host", ">=2.0.0", true), + createSharedEntry("remote-1", "3.1.0", true), + createSharedEntry("remote-2", "2.1.0", true) + ]); + + expect(resolvedEntry.version).toBe("2.1.0"); + expect(highestVersionEntry.version).toBe("3.1.0"); +}); + +test("supports \"> <\" range", () => { + const { resolvedEntry, highestVersionEntry } = resolveSharedDependency("my-lib", [ + createSharedEntry("host", ">2.0.0 <2.1.0", true), + createSharedEntry("remote-1", "3.1.0", true), + createSharedEntry("remote-2", "2.1.0", true) + ]); + + expect(resolvedEntry.version).toBe("2.1.0"); + expect(highestVersionEntry.version).toBe("3.1.0"); +}); + +test("supports \"> <=\" range", () => { + const { resolvedEntry, highestVersionEntry } = resolveSharedDependency("my-lib", [ + createSharedEntry("host", ">2.0.0 <=2.1.0", true), + createSharedEntry("remote-1", "3.1.0", true), + createSharedEntry("remote-2", "2.1.0", true) + ]); + + expect(resolvedEntry.version).toBe("2.1.0"); + expect(highestVersionEntry.version).toBe("3.1.0"); +}); + +test("supports \"^\" range", () => { + const { resolvedEntry, highestVersionEntry } = resolveSharedDependency("my-lib", [ + createSharedEntry("host", "^2.0.0", true), + createSharedEntry("remote-1", "3.1.0", true), + createSharedEntry("remote-2", "2.1.0", true) + ]); + + expect(resolvedEntry.version).toBe("2.1.0"); + expect(highestVersionEntry.version).toBe("3.1.0"); +}); diff --git a/packages/firefly-webpack-configs/tsconfig.build.json b/packages/firefly-webpack-configs/tsconfig.build.json new file mode 100644 index 000000000..63879d6a7 --- /dev/null +++ b/packages/firefly-webpack-configs/tsconfig.build.json @@ -0,0 +1,5 @@ +{ + "extends": "@workleap/typescript-configs/library.json", + "include": ["src"], + "exclude": ["dist", "node_modules"] +} diff --git a/packages/firefly-webpack-configs/tsconfig.json b/packages/firefly-webpack-configs/tsconfig.json index 46af1fcfe..8d3f8f735 100644 --- a/packages/firefly-webpack-configs/tsconfig.json +++ b/packages/firefly-webpack-configs/tsconfig.json @@ -1,9 +1,8 @@ { "extends": "@workleap/typescript-configs/library.json", "compilerOptions": { - "paths": { - "@squide/webpack-configs": ["../webpack-configs/src/index.ts"] - } + "incremental": true, + "tsBuildInfoFile": "node_modules/.cache/tsbuildinfo.json" }, - "exclude": ["dist", "node_modules"] + "exclude": ["dist", "node_modules", "tests/__snapshots__"] } diff --git a/packages/firefly-webpack-configs/tsup.build.ts b/packages/firefly-webpack-configs/tsup.build.ts deleted file mode 100644 index 1b2c65a89..000000000 --- a/packages/firefly-webpack-configs/tsup.build.ts +++ /dev/null @@ -1,3 +0,0 @@ -import { defineBuildConfig } from "@workleap/tsup-configs"; - -export default defineBuildConfig(); diff --git a/packages/firefly-webpack-configs/tsup.dev.ts b/packages/firefly-webpack-configs/tsup.dev.ts deleted file mode 100644 index 8aa2904c8..000000000 --- a/packages/firefly-webpack-configs/tsup.dev.ts +++ /dev/null @@ -1,3 +0,0 @@ -import { defineDevConfig } from "@workleap/tsup-configs"; - -export default defineDevConfig(); diff --git a/packages/firefly/.eslintignore b/packages/firefly/.eslintignore new file mode 100644 index 000000000..de4d1f007 --- /dev/null +++ b/packages/firefly/.eslintignore @@ -0,0 +1,2 @@ +dist +node_modules diff --git a/packages/firefly/jest.config.ts b/packages/firefly/jest.config.ts index 1b237ca78..165536dc3 100644 --- a/packages/firefly/jest.config.ts +++ b/packages/firefly/jest.config.ts @@ -1,9 +1,9 @@ import type { Config } from "jest"; -import { pathsToModuleNameMapper } from "ts-jest"; import { swcConfig } from "./swc.jest.ts"; -import { compilerOptions } from "./tsconfig.json"; const config: Config = { + testRegex: "/tests/*/.*\\.test\\.(ts|tsx)$", + testPathIgnorePatterns: ["/node_modules/", "/dist/"], testEnvironment: "jsdom", transform: { "^.+\\.(js|ts|tsx)$": ["@swc/jest", swcConfig as Record] @@ -11,18 +11,14 @@ const config: Config = { transformIgnorePatterns: [ "node_modules/(?!.pnpm|memoize|mimic-function)" ], - moduleNameMapper: { - ...pathsToModuleNameMapper(compilerOptions.paths, { - prefix: "" - }) - }, globals: { __webpack_share_scopes__: { default: {} } }, setupFilesAfterEnv: ["/jest-setup.js"], - cacheDirectory: "./node_modules/.cache/jest" + cacheDirectory: "./node_modules/.cache/jest", + verbose: true }; export default config; diff --git a/packages/firefly/package.json b/packages/firefly/package.json index 121fa7d35..a4b080c2a 100644 --- a/packages/firefly/package.json +++ b/packages/firefly/package.json @@ -9,26 +9,29 @@ "url": "git+https://github.com/gsoft-inc/wl-squide.git", "directory": "packages/firefly" }, + "type": "module", "publishConfig": { "access": "public", - "provenance": true - }, - "type": "module", - "exports": { - ".": { - "types": "./dist/index.d.ts", - "import": "./dist/index.js", - "default": "./dist/index.js" + "provenance": true, + "exports": { + ".": { + "types": "./dist/index.d.ts", + "import": "./dist/index.js", + "default": "./dist/index.js" + } } }, + "exports": "./src/index.ts", "files": [ "/dist", "CHANGELOG.md", "README.md" ], "scripts": { - "dev": "tsup --config ./tsup.dev.ts", - "build": "tsup --config ./tsup.build.ts" + "build": "rslib build --config ./rslib.build.ts", + "eslint": "eslint . --max-warnings=-0 --cache --cache-location node_modules/.cache/eslint", + "typecheck": "tsc", + "test": "jest" }, "peerDependencies": { "@tanstack/react-query": "*", @@ -37,35 +40,36 @@ "react-dom": "*", "react-router-dom": "*" }, + "dependencies": { + "@squide/core": "workspace:*", + "@squide/module-federation": "workspace:*", + "@squide/msw": "workspace:*", + "@squide/react-router": "workspace:*", + "@types/react": "19.0.1", + "@types/react-dom": "19.0.2" + }, "devDependencies": { - "@swc/core": "1.8.0", + "@rsbuild/plugin-react": "1.1.0", + "@rslib/core": "0.1.4", + "@swc/core": "1.10.1", "@swc/jest": "0.2.37", "@testing-library/jest-dom": "6.6.3", - "@testing-library/react": "16.0.1", + "@testing-library/react": "16.1.0", "@types/jest": "29.5.14", - "@types/react": "18.3.12", - "@types/react-dom": "18.3.1", - "@workleap/eslint-plugin": "3.2.3", + "@typescript-eslint/parser": "8.18.0", + "@workleap/eslint-plugin": "3.2.5", "@workleap/swc-configs": "2.2.3", - "@workleap/tsup-configs": "3.0.6", "@workleap/typescript-configs": "3.0.2", "eslint": "8.57.0", "jest": "29.7.0", "jest-environment-jsdom": "29.7.0", - "msw": "2.6.1", - "react": "18.3.1", - "react-dom": "18.3.1", + "msw": "2.6.9", + "react": "19.0.0", + "react-dom": "19.0.0", "react-router-dom": "6.27.0", - "ts-jest": "29.2.5", - "tsup": "8.3.5", + "ts-node": "10.9.2", "typescript": "5.5.4" }, - "dependencies": { - "@squide/core": "workspace:*", - "@squide/module-federation": "workspace:*", - "@squide/msw": "workspace:*", - "@squide/react-router": "workspace:*" - }, "sideEffects": false, "engines": { "node": ">=21.1.0" diff --git a/packages/firefly/rslib.build.ts b/packages/firefly/rslib.build.ts new file mode 100644 index 000000000..43144dcb9 --- /dev/null +++ b/packages/firefly/rslib.build.ts @@ -0,0 +1,26 @@ +import { pluginReact } from "@rsbuild/plugin-react"; +import { defineConfig } from "@rslib/core"; + +export default defineConfig({ + lib: [{ + format: "esm", + syntax: "esnext", + bundle: false, + dts: true + }], + source: { + entry: { + index: "./src/**" + }, + tsconfigPath: "./tsconfig.build.json" + }, + output: { + target: "web", + distPath: { + root: "./dist" + }, + cleanDistPath: true, + minify: false + }, + plugins: [pluginReact()] +}); diff --git a/packages/firefly/tsconfig.build.json b/packages/firefly/tsconfig.build.json new file mode 100644 index 000000000..63879d6a7 --- /dev/null +++ b/packages/firefly/tsconfig.build.json @@ -0,0 +1,5 @@ +{ + "extends": "@workleap/typescript-configs/library.json", + "include": ["src"], + "exclude": ["dist", "node_modules"] +} diff --git a/packages/firefly/tsconfig.json b/packages/firefly/tsconfig.json index 431a2cd10..1ace09268 100644 --- a/packages/firefly/tsconfig.json +++ b/packages/firefly/tsconfig.json @@ -1,12 +1,8 @@ { "extends": "@workleap/typescript-configs/library.json", "compilerOptions": { - "paths": { - "@squide/core": ["../core/src/index.ts"], - "@squide/react-router": ["../react-router/src/index.ts"], - "@squide/module-federation": ["../module-federation/src/index.ts"], - "@squide/msw": ["../msw/src/index.ts"] - } + "incremental": true, + "tsBuildInfoFile": "node_modules/.cache/tsbuildinfo.json" }, "exclude": ["dist", "node_modules"] } diff --git a/packages/firefly/tsup.build.ts b/packages/firefly/tsup.build.ts deleted file mode 100644 index 1b2c65a89..000000000 --- a/packages/firefly/tsup.build.ts +++ /dev/null @@ -1,3 +0,0 @@ -import { defineBuildConfig } from "@workleap/tsup-configs"; - -export default defineBuildConfig(); diff --git a/packages/firefly/tsup.dev.ts b/packages/firefly/tsup.dev.ts deleted file mode 100644 index 8aa2904c8..000000000 --- a/packages/firefly/tsup.dev.ts +++ /dev/null @@ -1,3 +0,0 @@ -import { defineDevConfig } from "@workleap/tsup-configs"; - -export default defineDevConfig(); diff --git a/packages/i18next/.eslintignore b/packages/i18next/.eslintignore new file mode 100644 index 000000000..de4d1f007 --- /dev/null +++ b/packages/i18next/.eslintignore @@ -0,0 +1,2 @@ +dist +node_modules diff --git a/packages/i18next/jest.config.ts b/packages/i18next/jest.config.ts index 8e3354ec7..363d164c2 100644 --- a/packages/i18next/jest.config.ts +++ b/packages/i18next/jest.config.ts @@ -1,19 +1,15 @@ import type { Config } from "jest"; -import { pathsToModuleNameMapper } from "ts-jest"; import { swcConfig } from "./swc.jest.ts"; -import { compilerOptions } from "./tsconfig.json"; const config: Config = { + testRegex: "/tests/*/.*\\.test\\.(ts|tsx)$", + testPathIgnorePatterns: ["/node_modules/", "/dist/"], testEnvironment: "jsdom", transform: { "^.+\\.(js|ts|tsx)$": ["@swc/jest", swcConfig as Record] }, - moduleNameMapper: { - ...pathsToModuleNameMapper(compilerOptions.paths, { - prefix: "" - }) - }, - cacheDirectory: "./node_modules/.cache/jest" + cacheDirectory: "./node_modules/.cache/jest", + verbose: true }; export default config; diff --git a/packages/i18next/package.json b/packages/i18next/package.json index a0aeddb73..83a660cdf 100644 --- a/packages/i18next/package.json +++ b/packages/i18next/package.json @@ -9,60 +9,61 @@ "url": "git+https://github.com/gsoft-inc/wl-squide.git", "directory": "packages/i18next" }, + "type": "module", "publishConfig": { "access": "public", - "provenance": true - }, - "type": "module", - "exports": { - ".": { - "types": "./dist/index.d.ts", - "import": "./dist/index.js", - "default": "./dist/index.js" + "provenance": true, + "exports": { + ".": { + "types": "./dist/index.d.ts", + "import": "./dist/index.js", + "default": "./dist/index.js" + } } }, + "exports": "./src/index.ts", "files": [ "/dist", "CHANGELOG.md", "README.md" ], "scripts": { - "dev": "tsup --config ./tsup.dev.ts", - "build": "tsup --config ./tsup.build.ts" + "build": "rslib build --config ./rslib.build.ts", + "eslint": "eslint . --max-warnings=-0 --cache --cache-location node_modules/.cache/eslint", + "typecheck": "tsc", + "test": "jest" }, "peerDependencies": { "i18next": "*", "i18next-browser-languagedetector": "*", "react": "*", - "react-dom": "*", "react-i18next": "*" }, + "dependencies": { + "@formatjs/intl-localematcher": "0.5.9", + "@squide/core": "workspace:*", + "@types/react": "19.0.1" + }, "devDependencies": { - "@swc/core": "1.8.0", + "@rsbuild/plugin-react": "1.1.0", + "@rslib/core": "0.1.4", + "@swc/core": "1.10.1", "@swc/jest": "0.2.37", "@types/jest": "29.5.14", - "@types/react": "18.3.12", - "@types/react-dom": "18.3.1", - "@workleap/eslint-plugin": "3.2.3", + "@typescript-eslint/parser": "8.18.0", + "@workleap/eslint-plugin": "3.2.5", "@workleap/swc-configs": "2.2.3", - "@workleap/tsup-configs": "3.0.6", "@workleap/typescript-configs": "3.0.2", "eslint": "8.57.0", - "i18next": "23.16.4", - "i18next-browser-languagedetector": "8.0.0", + "i18next": "24.1.0", + "i18next-browser-languagedetector": "8.0.2", "jest": "29.7.0", "jest-environment-jsdom": "29.7.0", - "react": "18.3.1", - "react-dom": "18.3.1", - "react-i18next": "15.1.0", - "ts-jest": "29.2.5", - "tsup": "8.3.5", + "react": "19.0.0", + "react-i18next": "15.2.0", + "ts-node": "10.9.2", "typescript": "5.5.4" }, - "dependencies": { - "@formatjs/intl-localematcher": "0.5.7", - "@squide/core": "workspace:*" - }, "sideEffects": false, "engines": { "node": ">=21.1.0" diff --git a/packages/i18next/rslib.build.ts b/packages/i18next/rslib.build.ts new file mode 100644 index 000000000..43144dcb9 --- /dev/null +++ b/packages/i18next/rslib.build.ts @@ -0,0 +1,26 @@ +import { pluginReact } from "@rsbuild/plugin-react"; +import { defineConfig } from "@rslib/core"; + +export default defineConfig({ + lib: [{ + format: "esm", + syntax: "esnext", + bundle: false, + dts: true + }], + source: { + entry: { + index: "./src/**" + }, + tsconfigPath: "./tsconfig.build.json" + }, + output: { + target: "web", + distPath: { + root: "./dist" + }, + cleanDistPath: true, + minify: false + }, + plugins: [pluginReact()] +}); diff --git a/packages/i18next/tsconfig.build.json b/packages/i18next/tsconfig.build.json new file mode 100644 index 000000000..63879d6a7 --- /dev/null +++ b/packages/i18next/tsconfig.build.json @@ -0,0 +1,5 @@ +{ + "extends": "@workleap/typescript-configs/library.json", + "include": ["src"], + "exclude": ["dist", "node_modules"] +} diff --git a/packages/i18next/tsconfig.json b/packages/i18next/tsconfig.json index 5161504c1..1ace09268 100644 --- a/packages/i18next/tsconfig.json +++ b/packages/i18next/tsconfig.json @@ -1,9 +1,8 @@ { "extends": "@workleap/typescript-configs/library.json", "compilerOptions": { - "paths": { - "@squide/core": ["../core/src/index.ts"] - } + "incremental": true, + "tsBuildInfoFile": "node_modules/.cache/tsbuildinfo.json" }, "exclude": ["dist", "node_modules"] } diff --git a/packages/i18next/tsup.build.ts b/packages/i18next/tsup.build.ts deleted file mode 100644 index 1b2c65a89..000000000 --- a/packages/i18next/tsup.build.ts +++ /dev/null @@ -1,3 +0,0 @@ -import { defineBuildConfig } from "@workleap/tsup-configs"; - -export default defineBuildConfig(); diff --git a/packages/i18next/tsup.dev.ts b/packages/i18next/tsup.dev.ts deleted file mode 100644 index 8aa2904c8..000000000 --- a/packages/i18next/tsup.dev.ts +++ /dev/null @@ -1,3 +0,0 @@ -import { defineDevConfig } from "@workleap/tsup-configs"; - -export default defineDevConfig(); diff --git a/packages/module-federation/.eslintignore b/packages/module-federation/.eslintignore new file mode 100644 index 000000000..de4d1f007 --- /dev/null +++ b/packages/module-federation/.eslintignore @@ -0,0 +1,2 @@ +dist +node_modules diff --git a/packages/module-federation/jest.config.ts b/packages/module-federation/jest.config.ts index e2bfc4a43..4ee5b47a2 100644 --- a/packages/module-federation/jest.config.ts +++ b/packages/module-federation/jest.config.ts @@ -1,24 +1,20 @@ import type { Config } from "jest"; -import { pathsToModuleNameMapper } from "ts-jest"; import { swcConfig } from "./swc.jest.ts"; -import { compilerOptions } from "./tsconfig.json"; const config: Config = { + testRegex: "/tests/*/.*\\.test\\.(ts|tsx)$", + testPathIgnorePatterns: ["/node_modules/", "/dist/"], testEnvironment: "jsdom", transform: { "^.+\\.(ts|tsx)$": ["@swc/jest", swcConfig as Record] }, - moduleNameMapper: { - ...pathsToModuleNameMapper(compilerOptions.paths, { - prefix: "" - }) - }, globals: { __webpack_share_scopes__: { default: {} } }, - cacheDirectory: "./node_modules/.cache/jest" + cacheDirectory: "./node_modules/.cache/jest", + verbose: true }; export default config; diff --git a/packages/module-federation/package.json b/packages/module-federation/package.json index 1fe11c725..82061531d 100644 --- a/packages/module-federation/package.json +++ b/packages/module-federation/package.json @@ -9,55 +9,49 @@ "url": "git+https://github.com/gsoft-inc/wl-squide.git", "directory": "packages/module-federation" }, + "type": "module", "publishConfig": { "access": "public", - "provenance": true - }, - "type": "module", - "exports": { - ".": { - "types": "./dist/index.d.ts", - "import": "./dist/index.js", - "default": "./dist/index.js" + "provenance": true, + "exports": { + ".": { + "types": "./dist/index.d.ts", + "import": "./dist/index.js", + "default": "./dist/index.js" + } } }, + "exports": "./src/index.ts", "files": [ "/dist", "CHANGELOG.md", "README.md" ], "scripts": { - "dev": "tsup --config ./tsup.dev.ts", - "build": "tsup --config ./tsup.build.ts" + "build": "rslib build --config ./rslib.build.ts", + "eslint": "eslint . --max-warnings=-0 --cache --cache-location node_modules/.cache/eslint", + "typecheck": "tsc", + "test": "jest" }, - "peerDependencies": { - "react": "*", - "react-dom": "*" + "dependencies": { + "@module-federation/enhanced": "0.8.4", + "@squide/core": "workspace:*" }, "devDependencies": { - "@swc/core": "1.8.0", + "@rslib/core": "0.1.4", + "@swc/core": "1.10.1", "@swc/jest": "0.2.37", "@types/jest": "29.5.14", - "@types/node": "22.9.0", - "@types/react": "18.3.12", - "@types/react-dom": "18.3.1", - "@workleap/eslint-plugin": "3.2.3", + "@typescript-eslint/parser": "8.18.0", + "@workleap/eslint-plugin": "3.2.5", "@workleap/swc-configs": "2.2.3", - "@workleap/tsup-configs": "3.0.6", "@workleap/typescript-configs": "3.0.2", "eslint": "8.57.0", "jest": "29.7.0", "jest-environment-jsdom": "29.7.0", - "react": "18.3.1", - "react-dom": "18.3.1", - "ts-jest": "29.2.5", - "tsup": "8.3.5", + "ts-node": "10.9.2", "typescript": "5.5.4" }, - "dependencies": { - "@module-federation/enhanced": "0.6.16", - "@squide/core": "workspace:*" - }, "sideEffects": false, "engines": { "node": ">=21.1.0" diff --git a/packages/module-federation/rslib.build.ts b/packages/module-federation/rslib.build.ts new file mode 100644 index 000000000..20c4563e3 --- /dev/null +++ b/packages/module-federation/rslib.build.ts @@ -0,0 +1,24 @@ +import { defineConfig } from "@rslib/core"; + +export default defineConfig({ + lib: [{ + format: "esm", + syntax: "esnext", + bundle: false, + dts: true + }], + source: { + entry: { + index: "./src/**" + }, + tsconfigPath: "./tsconfig.build.json" + }, + output: { + target: "web", + distPath: { + root: "./dist" + }, + cleanDistPath: true, + minify: false + } +}); diff --git a/packages/module-federation/tests/registerDeferredRegistrations.test.ts b/packages/module-federation/tests/registerDeferredRegistrations.test.ts index 6a2a74448..de27def1b 100644 --- a/packages/module-federation/tests/registerDeferredRegistrations.test.ts +++ b/packages/module-federation/tests/registerDeferredRegistrations.test.ts @@ -138,6 +138,7 @@ test("when an unmanaged error is thrown, complete the deferred registration scop // Oddly, I can't get it to work with expect(() => {}).toThrow(); try { await registerDeferredRegistrations(data, runtime); + // eslint-disable-next-line @typescript-eslint/no-unused-vars } catch (error: unknown) { // .... } diff --git a/packages/module-federation/tests/updateDeferredRegistrations.test.ts b/packages/module-federation/tests/updateDeferredRegistrations.test.ts index d583e1aab..00e6adbfc 100644 --- a/packages/module-federation/tests/updateDeferredRegistrations.test.ts +++ b/packages/module-federation/tests/updateDeferredRegistrations.test.ts @@ -145,6 +145,7 @@ test("when an unmanaged error is thrown, complete the deferred registration scop // Oddly, I can't get it to work with expect(() => {}).toThrow(); try { await updateDeferredRegistrations(data, runtime); + // eslint-disable-next-line @typescript-eslint/no-unused-vars } catch (error: unknown) { // .... } diff --git a/packages/module-federation/tsconfig.build.json b/packages/module-federation/tsconfig.build.json new file mode 100644 index 000000000..63879d6a7 --- /dev/null +++ b/packages/module-federation/tsconfig.build.json @@ -0,0 +1,5 @@ +{ + "extends": "@workleap/typescript-configs/library.json", + "include": ["src"], + "exclude": ["dist", "node_modules"] +} diff --git a/packages/module-federation/tsconfig.json b/packages/module-federation/tsconfig.json index 461b516f9..8d3f8f735 100644 --- a/packages/module-federation/tsconfig.json +++ b/packages/module-federation/tsconfig.json @@ -1,9 +1,8 @@ { "extends": "@workleap/typescript-configs/library.json", "compilerOptions": { - "paths": { - "@squide/core": ["../core/src/index.ts"] - } + "incremental": true, + "tsBuildInfoFile": "node_modules/.cache/tsbuildinfo.json" }, "exclude": ["dist", "node_modules", "tests/__snapshots__"] } diff --git a/packages/module-federation/tsup.build.ts b/packages/module-federation/tsup.build.ts deleted file mode 100644 index b04dcec2b..000000000 --- a/packages/module-federation/tsup.build.ts +++ /dev/null @@ -1,5 +0,0 @@ -import { defineBuildConfig } from "@workleap/tsup-configs"; - -export default defineBuildConfig({ - entry: ["./src/index.ts"] -}); diff --git a/packages/module-federation/tsup.dev.ts b/packages/module-federation/tsup.dev.ts deleted file mode 100644 index 4b3e1b071..000000000 --- a/packages/module-federation/tsup.dev.ts +++ /dev/null @@ -1,5 +0,0 @@ -import { defineDevConfig } from "@workleap/tsup-configs"; - -export default defineDevConfig({ - entry: ["./src/index.ts"] -}); diff --git a/packages/msw/.eslintignore b/packages/msw/.eslintignore new file mode 100644 index 000000000..de4d1f007 --- /dev/null +++ b/packages/msw/.eslintignore @@ -0,0 +1,2 @@ +dist +node_modules diff --git a/packages/msw/package.json b/packages/msw/package.json index 1df95bcff..d9038b4ee 100644 --- a/packages/msw/package.json +++ b/packages/msw/package.json @@ -9,53 +9,49 @@ "url": "git+https://github.com/gsoft-inc/wl-squide.git", "directory": "packages/msw" }, + "type": "module", "publishConfig": { "access": "public", - "provenance": true - }, - "type": "module", - "exports": { - ".": { - "types": "./dist/index.d.ts", - "import": "./dist/index.js", - "default": "./dist/index.js" + "provenance": true, + "exports": { + ".": { + "types": "./dist/index.d.ts", + "import": "./dist/index.js", + "default": "./dist/index.js" + } } }, + "exports": "./src/index.ts", "files": [ "/dist", "CHANGELOG.md", "README.md" ], "scripts": { - "dev": "tsup --config ./tsup.dev.ts", - "build": "tsup --config ./tsup.build.ts" + "build": "rslib build --config ./rslib.build.ts", + "eslint": "eslint . --max-warnings=-0 --cache --cache-location node_modules/.cache/eslint", + "typecheck": "tsc" }, "peerDependencies": { - "msw": "*", - "react": "*", - "react-dom": "*" + "msw": "*" }, "peerDependenciesMeta": { "msw": { "optional": true } }, + "dependencies": { + "@squide/core": "workspace:*" + }, "devDependencies": { - "@types/react": "18.3.12", - "@types/react-dom": "18.3.1", - "@workleap/eslint-plugin": "3.2.3", - "@workleap/tsup-configs": "3.0.6", + "@rslib/core": "0.1.4", + "@typescript-eslint/parser": "8.18.0", + "@workleap/eslint-plugin": "3.2.5", "@workleap/typescript-configs": "3.0.2", "eslint": "8.57.0", - "msw": "2.6.1", - "react": "18.3.1", - "react-dom": "18.3.1", - "tsup": "8.3.5", + "msw": "2.6.9", "typescript": "5.5.4" }, - "dependencies": { - "@squide/core": "workspace:*" - }, "sideEffects": false, "engines": { "node": ">=21.1.0" diff --git a/packages/msw/rslib.build.ts b/packages/msw/rslib.build.ts new file mode 100644 index 000000000..20c4563e3 --- /dev/null +++ b/packages/msw/rslib.build.ts @@ -0,0 +1,24 @@ +import { defineConfig } from "@rslib/core"; + +export default defineConfig({ + lib: [{ + format: "esm", + syntax: "esnext", + bundle: false, + dts: true + }], + source: { + entry: { + index: "./src/**" + }, + tsconfigPath: "./tsconfig.build.json" + }, + output: { + target: "web", + distPath: { + root: "./dist" + }, + cleanDistPath: true, + minify: false + } +}); diff --git a/packages/msw/tsconfig.build.json b/packages/msw/tsconfig.build.json new file mode 100644 index 000000000..63879d6a7 --- /dev/null +++ b/packages/msw/tsconfig.build.json @@ -0,0 +1,5 @@ +{ + "extends": "@workleap/typescript-configs/library.json", + "include": ["src"], + "exclude": ["dist", "node_modules"] +} diff --git a/packages/msw/tsconfig.json b/packages/msw/tsconfig.json index 5161504c1..1ace09268 100644 --- a/packages/msw/tsconfig.json +++ b/packages/msw/tsconfig.json @@ -1,9 +1,8 @@ { "extends": "@workleap/typescript-configs/library.json", "compilerOptions": { - "paths": { - "@squide/core": ["../core/src/index.ts"] - } + "incremental": true, + "tsBuildInfoFile": "node_modules/.cache/tsbuildinfo.json" }, "exclude": ["dist", "node_modules"] } diff --git a/packages/msw/tsup.build.ts b/packages/msw/tsup.build.ts deleted file mode 100644 index 1b2c65a89..000000000 --- a/packages/msw/tsup.build.ts +++ /dev/null @@ -1,3 +0,0 @@ -import { defineBuildConfig } from "@workleap/tsup-configs"; - -export default defineBuildConfig(); diff --git a/packages/msw/tsup.dev.ts b/packages/msw/tsup.dev.ts deleted file mode 100644 index 8aa2904c8..000000000 --- a/packages/msw/tsup.dev.ts +++ /dev/null @@ -1,3 +0,0 @@ -import { defineDevConfig } from "@workleap/tsup-configs"; - -export default defineDevConfig(); diff --git a/packages/react-router/.eslintignore b/packages/react-router/.eslintignore new file mode 100644 index 000000000..3688c6fab --- /dev/null +++ b/packages/react-router/.eslintignore @@ -0,0 +1,3 @@ +dist +node_modules +**/__snapshots__/* diff --git a/packages/react-router/jest.config.ts b/packages/react-router/jest.config.ts index 092a9b4af..802ac7b23 100644 --- a/packages/react-router/jest.config.ts +++ b/packages/react-router/jest.config.ts @@ -1,9 +1,9 @@ import type { Config } from "jest"; -import { pathsToModuleNameMapper } from "ts-jest"; import { swcConfig } from "./swc.jest.ts"; -import { compilerOptions } from "./tsconfig.json"; const config: Config = { + testRegex: "/tests/*/.*\\.test\\.(ts|tsx)$", + testPathIgnorePatterns: ["/node_modules/", "/dist/"], testEnvironment: "jsdom", transformIgnorePatterns: [ "node_modules/(?!.pnpm|memoize|mimic-function)" @@ -11,12 +11,8 @@ const config: Config = { transform: { "^.+\\.(js|ts|tsx)$": ["@swc/jest", swcConfig as Record] }, - moduleNameMapper: { - ...pathsToModuleNameMapper(compilerOptions.paths, { - prefix: "" - }) - }, - cacheDirectory: "./node_modules/.cache/jest" + cacheDirectory: "./node_modules/.cache/jest", + verbose: true }; export default config; diff --git a/packages/react-router/package.json b/packages/react-router/package.json index 6c371109d..14f5e37d2 100644 --- a/packages/react-router/package.json +++ b/packages/react-router/package.json @@ -9,59 +9,61 @@ "url": "git+https://github.com/gsoft-inc/wl-squide.git", "directory": "packages/react-router" }, + "type": "module", "publishConfig": { "access": "public", - "provenance": true - }, - "type": "module", - "exports": { - ".": { - "types": "./dist/index.d.ts", - "import": "./dist/index.js", - "default": "./dist/index.js" + "provenance": true, + "exports": { + ".": { + "types": "./dist/index.d.ts", + "import": "./dist/index.js", + "default": "./dist/index.js" + } } }, + "exports": "./src/index.ts", "files": [ "/dist", "CHANGELOG.md", "README.md" ], "scripts": { - "dev": "tsup --config ./tsup.dev.ts", - "build": "tsup --config ./tsup.build.ts" + "build": "rslib build --config ./rslib.build.ts", + "eslint": "eslint . --max-warnings=-0 --cache --cache-location node_modules/.cache/eslint", + "typecheck": "tsc", + "test": "jest" }, "peerDependencies": { "react": "*", "react-dom": "*", "react-router-dom": "*" }, + "dependencies": { + "@squide/core": "workspace:*", + "@types/react": "19.0.1", + "@types/react-dom": "19.0.2", + "memoize": "10.0.0" + }, "devDependencies": { - "@swc/core": "1.8.0", + "@rsbuild/plugin-react": "1.1.0", + "@rslib/core": "0.1.4", + "@swc/core": "1.10.1", "@swc/jest": "0.2.37", - "@testing-library/react": "16.0.1", + "@testing-library/react": "16.1.0", "@types/jest": "29.5.14", - "@types/react": "18.3.12", - "@types/react-dom": "18.3.1", - "@types/react-test-renderer": "18.3.0", - "@workleap/eslint-plugin": "3.2.3", + "@typescript-eslint/parser": "8.18.0", + "@workleap/eslint-plugin": "3.2.5", "@workleap/swc-configs": "2.2.3", - "@workleap/tsup-configs": "3.0.6", "@workleap/typescript-configs": "3.0.2", "eslint": "8.57.0", "jest": "29.7.0", "jest-environment-jsdom": "29.7.0", - "react": "18.3.1", - "react-dom": "18.3.1", + "react": "19.0.0", + "react-dom": "19.0.0", "react-router-dom": "6.27.0", - "react-test-renderer": "18.3.1", - "ts-jest": "29.2.5", - "tsup": "8.3.5", + "ts-node": "10.9.2", "typescript": "5.5.4" }, - "dependencies": { - "@squide/core": "workspace:*", - "memoize": "10.0.0" - }, "sideEffects": false, "engines": { "node": ">=21.1.0" diff --git a/packages/react-router/rslib.build.ts b/packages/react-router/rslib.build.ts new file mode 100644 index 000000000..43144dcb9 --- /dev/null +++ b/packages/react-router/rslib.build.ts @@ -0,0 +1,26 @@ +import { pluginReact } from "@rsbuild/plugin-react"; +import { defineConfig } from "@rslib/core"; + +export default defineConfig({ + lib: [{ + format: "esm", + syntax: "esnext", + bundle: false, + dts: true + }], + source: { + entry: { + index: "./src/**" + }, + tsconfigPath: "./tsconfig.build.json" + }, + output: { + target: "web", + distPath: { + root: "./dist" + }, + cleanDistPath: true, + minify: false + }, + plugins: [pluginReact()] +}); diff --git a/packages/react-router/src/reactRouterRuntime.ts b/packages/react-router/src/reactRouterRuntime.ts index 082a704a6..a087763b5 100644 --- a/packages/react-router/src/reactRouterRuntime.ts +++ b/packages/react-router/src/reactRouterRuntime.ts @@ -211,7 +211,7 @@ export class ReactRouterRuntime extends Runtime { message += `If you are certain that the navigation section${pendingSectionIds.length !== 1 ? "s" : ""} has been registered, make sure that the following conditions are met:\r\n`; message += "- The missing navigation section \"$id\" and \"menuId\" properties perfectly match the provided \"sectionId\" and \"menuId\".\r\n"; - message += "For more information about nested navigation items, refers to [TODO: ADD LINK].\r\n"; + message += "For more information about nested navigation items, refers to: https://gsoft-inc.github.io/wl-squide/reference/runtime/runtime-class/#register-nested-navigation-items.\r\n"; if (this._mode === "development") { throw new Error(message); diff --git a/packages/react-router/tests/__snapshots__/useRenderedNavigationItems.test.tsx.snap b/packages/react-router/tests/__snapshots__/useRenderedNavigationItems.test.tsx.snap index dc6592dee..bb94638df 100644 --- a/packages/react-router/tests/__snapshots__/useRenderedNavigationItems.test.tsx.snap +++ b/packages/react-router/tests/__snapshots__/useRenderedNavigationItems.test.tsx.snap @@ -1,494 +1,498 @@ // Jest Snapshot v1, https://goo.gl/fbAQLP exports[`highest priority goes first 1`] = ` -
    -
  • +
      -
      - Toto -
      - -
    • -
      + Toto +
      +
    • +
    • - Bar - -
    • -
    • -
      + Bar +
      +
    • +
    • - Foo - -
    • -
    • -
      + Foo +
      +
    • +
    • - Tutu - -
    • -
    +
    + Tutu +
    +
  • +
+ `; exports[`link item additionalProps are rendered 1`] = ` -
    -
  • +
      -
      - Foo -
      - -
    • -
      + Foo +
      +
    • +
    • - Bar - -
    • -
    +
    + Bar +
    +
  • +
+ `; exports[`link item custom keys are rendered 1`] = ` -
    -
  • +
      -
      - Foo -
      - -
    • -
      + Foo +
      +
    • +
    • - Bar - -
    • -
    +
    + Bar +
    +
  • +
+ `; exports[`negative priority goes last 1`] = ` -
    -
  • +
      -
      - Foo -
      - -
    • -
      + Foo +
      +
    • +
    • - Bar - -
    • -
    • -
      + Bar +
      +
    • +
    • - Tutu - -
    • -
    • -
      + Tutu +
      +
    • +
    • - Toto - -
    • -
    +
    + Toto +
    +
  • +
+ `; exports[`nested item custom keys are rendered 1`] = ` -
    -
  • +
      - Foo -
        -
      • -
        - Bar -
        -
      • -
      - -
    +
    + Bar +
    +
  • +
+ + + `; exports[`section item additionalProps are rendered 1`] = ` -
    -
  • +
      - Foo -
        -
      • -
        - Bar -
        -
      • -
      - -
    +
    + Bar +
    +
  • +
+ + + `; exports[`section item custom keys are rendered 1`] = ` -
    -
  • +
      - Foo -
        -
      • -
        - Bar -
        -
      • -
      - -
    +
    + Bar +
    +
  • +
+ + + `; exports[`support 2 section levels 1`] = ` -
    -
  • +
      -
      - Foo -
      - -
    • - Bar -
        -
      • + Foo + +
      • +
      • + Bar +
          -
          - Toto -
          - -
        • -
          + Toto +
          +
        • +
        • - Tutu - -
        • -
        -
      • -
      +
      + Tutu +
      +
    • +
    +
  • +
+ `; exports[`support 3 section levels 1`] = ` -
    -
  • +
      -
      - Foo -
      - -
    • - Bar -
        +
        + Foo +
        + +
      • -
      • -
        - Toto -
        -
      • -
      • - Tutu -
          -
        • + Toto + +
        • +
        • + Tutu +
            -
            - Titi -
            - -
          -
        • -
        -
      • -
      +
      + Titi +
      +
    • +
    +
  • +
+ + + `; exports[`when a link item canRender prop return false, the item is not rendered 1`] = ` -
    -
  • +
      -
      - Bar -
      - -
    +
    + Bar +
    +
  • +
+ `; exports[`when a section item canRender prop return false, the item is not rendered 1`] = ` -
    -
  • +
      -
      - acme -
      - -
    +
    + acme +
    +
  • +
+ `; exports[`when the canRender prop of all the items of a nested section return false, do not render the section 1`] = ` -
    -
  • +
      - Foo - -
    • - John -
        + Foo + +
      • -
      • - Doe -
      • -
      -
    • -
    +
  • + Doe +
  • +
+ + + `; -exports[`when the canRender prop of all the root items return false, do not render the root section 1`] = `null`; +exports[`when the canRender prop of all the root items return false, do not render the root section 1`] = ``; diff --git a/packages/react-router/tests/useRenderedNavigationItems.test.tsx b/packages/react-router/tests/useRenderedNavigationItems.test.tsx index 5243814c9..20a12cb6b 100644 --- a/packages/react-router/tests/useRenderedNavigationItems.test.tsx +++ b/packages/react-router/tests/useRenderedNavigationItems.test.tsx @@ -1,6 +1,5 @@ -import { renderHook } from "@testing-library/react"; +import { render, renderHook } from "@testing-library/react"; import { useCallback, type ReactNode } from "react"; -import renderer from "react-test-renderer"; import type { NavigationItem, RootNavigationItem } from "../src/navigationItemRegistry.ts"; import { isNavigationLink, useRenderedNavigationItems, type NavigationLinkRenderProps, type NavigationSectionRenderProps, type RenderItemFunction, type RenderSectionFunction } from "../src/useRenderedNavigationItems.tsx"; @@ -84,9 +83,7 @@ test("highest priority goes first", () => { } ]; - const tree = renderer - .create() - .toJSON(); + const tree = render().asFragment(); expect(tree).toMatchSnapshot(); }); @@ -112,9 +109,7 @@ test("negative priority goes last", () => { } ]; - const tree = renderer - .create() - .toJSON(); + const tree = render().asFragment(); expect(tree).toMatchSnapshot(); }); @@ -140,9 +135,7 @@ test("support 2 section levels", () => { } ]; - const tree = renderer - .create() - .toJSON(); + const tree = render().asFragment(); expect(tree).toMatchSnapshot(); }); @@ -173,9 +166,7 @@ test("support 3 section levels", () => { } ]; - const tree = renderer - .create() - .toJSON(); + const tree = render().asFragment(); expect(tree).toMatchSnapshot(); }); @@ -195,9 +186,7 @@ test("link item additionalProps are rendered", () => { } ]; - const tree = renderer - .create() - .toJSON(); + const tree = render().asFragment(); expect(tree).toMatchSnapshot(); }); @@ -218,9 +207,7 @@ test("section item additionalProps are rendered", () => { } ]; - const tree = renderer - .create() - .toJSON(); + const tree = render().asFragment(); expect(tree).toMatchSnapshot(); }); @@ -242,9 +229,7 @@ test("link item custom keys are rendered", () => { } ]; - const tree = renderer - .create() - .toJSON(); + const tree = render().asFragment(); expect(tree).toMatchSnapshot(); }); @@ -266,9 +251,7 @@ test("section item custom keys are rendered", () => { } ]; - const tree = renderer - .create() - .toJSON(); + const tree = render().asFragment(); expect(tree).toMatchSnapshot(); }); @@ -290,9 +273,7 @@ test("nested item custom keys are rendered", () => { } ]; - const tree = renderer - .create() - .toJSON(); + const tree = render().asFragment(); expect(tree).toMatchSnapshot(); }); @@ -310,9 +291,7 @@ test("when a link item canRender prop return false, the item is not rendered", ( } ]; - const tree = renderer - .create() - .toJSON(); + const tree = render().asFragment(); expect(tree).toMatchSnapshot(); }); @@ -335,9 +314,7 @@ test("when a section item canRender prop return false, the item is not rendered" } ]; - const tree = renderer - .create() - .toJSON(); + const tree = render().asFragment(); expect(tree).toMatchSnapshot(); }); @@ -356,9 +333,7 @@ test("when the canRender prop of all the root items return false, do not render } ]; - const tree = renderer - .create() - .toJSON(); + const tree = render().asFragment(); expect(tree).toMatchSnapshot(); }); @@ -392,9 +367,7 @@ test("when the canRender prop of all the items of a nested section return false, } ]; - const tree = renderer - .create() - .toJSON(); + const tree = render().asFragment(); expect(tree).toMatchSnapshot(); }); diff --git a/packages/react-router/tsconfig.build.json b/packages/react-router/tsconfig.build.json new file mode 100644 index 000000000..63879d6a7 --- /dev/null +++ b/packages/react-router/tsconfig.build.json @@ -0,0 +1,5 @@ +{ + "extends": "@workleap/typescript-configs/library.json", + "include": ["src"], + "exclude": ["dist", "node_modules"] +} diff --git a/packages/react-router/tsconfig.json b/packages/react-router/tsconfig.json index 461b516f9..8d3f8f735 100644 --- a/packages/react-router/tsconfig.json +++ b/packages/react-router/tsconfig.json @@ -1,9 +1,8 @@ { "extends": "@workleap/typescript-configs/library.json", "compilerOptions": { - "paths": { - "@squide/core": ["../core/src/index.ts"] - } + "incremental": true, + "tsBuildInfoFile": "node_modules/.cache/tsbuildinfo.json" }, "exclude": ["dist", "node_modules", "tests/__snapshots__"] } diff --git a/packages/react-router/tsup.build.ts b/packages/react-router/tsup.build.ts deleted file mode 100644 index 1b2c65a89..000000000 --- a/packages/react-router/tsup.build.ts +++ /dev/null @@ -1,3 +0,0 @@ -import { defineBuildConfig } from "@workleap/tsup-configs"; - -export default defineBuildConfig(); diff --git a/packages/react-router/tsup.dev.ts b/packages/react-router/tsup.dev.ts deleted file mode 100644 index 8aa2904c8..000000000 --- a/packages/react-router/tsup.dev.ts +++ /dev/null @@ -1,3 +0,0 @@ -import { defineDevConfig } from "@workleap/tsup-configs"; - -export default defineDevConfig(); diff --git a/packages/webpack-configs/CHANGELOG.md b/packages/webpack-configs/CHANGELOG.md deleted file mode 100644 index 8c0ba6c04..000000000 --- a/packages/webpack-configs/CHANGELOG.md +++ /dev/null @@ -1,330 +0,0 @@ -# @squide/webpack-configs - -## 4.3.1 - -### Patch Changes - -- [#221](https://github.com/gsoft-inc/wl-squide/pull/221) [`8411080`](https://github.com/gsoft-inc/wl-squide/commit/8411080dfd0df6d0eafb01888298154fa5e5d925) Thanks [@patricklafrance](https://github.com/patricklafrance)! - Fix deferred registrations. - -## 4.3.0 - -### Minor Changes - -- [#219](https://github.com/gsoft-inc/wl-squide/pull/219) [`25cb482`](https://github.com/gsoft-inc/wl-squide/commit/25cb482779ee280f3f7109de4607b92dcfeef7f3) Thanks [@patricklafrance](https://github.com/patricklafrance)! - Now dispatching events to enable instrumentation packages for observability platforms. - -## 4.2.0 - -### Minor Changes - -- [#204](https://github.com/gsoft-inc/wl-squide/pull/204) [`d3f7b9c`](https://github.com/gsoft-inc/wl-squide/commit/d3f7b9c6aa80249cd898916f6315ea27c4526812) Thanks [@patricklafrance](https://github.com/patricklafrance)! - The `registerNavigationItem` function now accepts a `sectionId` option to nest the item under a specific navigation section: - - ```ts - runtime.registerNavigationItem( - { - $id: "link", - $label: "Link", - to: "/link", - }, - { - sectionId: "some-section", - } - ); - ``` - -## 4.1.0 - -### Minor Changes - -- [#202](https://github.com/gsoft-inc/wl-squide/pull/202) [`52d57fc`](https://github.com/gsoft-inc/wl-squide/commit/52d57fcc8fcff7b7f6e84d7621724bad8ed9f2a9) Thanks [@patricklafrance](https://github.com/patricklafrance)! - Webpack config now automatically whether the entry file should be index.ts or index.tsx. - -## 4.0.1 - -### Patch Changes - -- [#191](https://github.com/gsoft-inc/wl-squide/pull/191) [`2b62c53`](https://github.com/gsoft-inc/wl-squide/commit/2b62c539b0f3123cb47475566181e0b446ea6b40) Thanks [@patricklafrance](https://github.com/patricklafrance)! - Updated packages description. - -## 4.0.0 - -### Major Changes - -- [#182](https://github.com/gsoft-inc/wl-squide/pull/182) [`58cf066`](https://github.com/gsoft-inc/wl-squide/commit/58cf066e87e23611510c254cca96016bd2bad08a) Thanks [@patricklafrance](https://github.com/patricklafrance)! - ## Firefly v9 - - This major version of @squide/firefly introduces TanStack Query as the official library for fetching the global data of a Squide's application and features a complete rewrite of the AppRouter component, which now uses a state machine to manage the application's bootstrapping flow. - - Prior to v9, Squide applications couldn't use TanStack Query to fetch global data, making it challenging for Workleap's applications to keep their global data in sync with the server state. With v9, applications can now leverage custom wrappers of the useQueries hook to fetch and keep their global data up-to-date with the server state. Additionally, the new deferred registrations update feature allows applications to even keep their conditional navigation items in sync with the server state. - - Finally, with v9, Squide's philosophy has evolved. We used to describe Squide as a shell for federated applications. Now, we refer to Squide as a shell for modular applications. After playing with Squide's local module feature for a while, we discovered that Squide offers significant value even for non-federated applications, which triggered this shift in philosophy. - - > For a full breakdown of the changres and a migration procedure, read the following [documentation](https://gsoft-inc.github.io/wl-squide/guides/migrate-to-firefly-v9/). - - ## Breaking changes - - - The `useAreModulesRegistered` hook has been removed, use the `useIsBootstrapping` hook instead. - - The `useAreModulesReady` hook has been removed, use the `useIsBootstrapping` hook instead. - - The `useIsMswStarted` hook has been removed, use the `useIsBootstrapping` hook instead. - - The `completeModuleRegistrations` function as been removed use the `useDeferredRegistrations` hook instead. - - The `completeLocalModulesRegistrations` function has been removed use the `useDeferredRegistrations` hook instead. - - The `completeRemoteModuleRegistrations` function has been removed use the `useDeferredRegistrations` hook instead. - - The `useSession` hook has been removed, define your own React context instead. - - The `useIsAuthenticated` hook has been removed, define your own React context instead. - - The `sessionAccessor` option has been removed from the `FireflyRuntime` options, define your own React context instead. - - Removed supports for deferred routes. - - Plugin's constructor now requires a runtime instance argument. - - Plugins now registers with a factory function. - - Full rewrite of the `AppRouter` component. - - ## Renamed - - - The `setMswAsStarted` function has been renamed to `setMswIsReady`. - - ## Others - - - The `@squide/firefly` package now takes a peerDependency on `@tanstack/react-query`. - - The `@squide/firefly` package doesn't takes a peerDependency on `react-error-boundary` anymore. - - ## New hooks and functions - - - A new `useIsBoostrapping` hook is now available. - - A new `useDeferredRegistrations` hook is now available. - - A new `usePublicDataQueries` hook is now available. - - A new `useProtectedDataQueries` hook is now available. - - A new `isGlobalDataQueriesError` function is now available. - - ## Improvements - - - Deferred registration functions now always receive a `data` argument. - - Deferred registration functions now receives a new `operation` argument. - - Navigation items now include a `$canRender` option, enabling modules to control whether a navigation item should be rendered. - - New `$key` option for navigation items. - - For more details about the changes and a migration procedure, read the following [documentation](https://gsoft-inc.github.io/wl-squide/guides/migrate-to-firefly-v9/). - -## 3.0.0 - -### Major Changes - -- [#170](https://github.com/gsoft-inc/wl-squide/pull/170) [`119570f`](https://github.com/gsoft-inc/wl-squide/commit/119570f9c93341285a24e8be879d0a468ee2b5db) Thanks [@patricklafrance](https://github.com/patricklafrance)! - The host define function doesn't accept an "applicationName" anymore as it is now hardcoded to "host". - -## 2.0.0 - -### Major Changes - -- [#168](https://github.com/gsoft-inc/wl-squide/pull/168) [`89ace29`](https://github.com/gsoft-inc/wl-squide/commit/89ace29b9aeadbbe83cfa71dd137b9f1a115c283) Thanks [@patricklafrance](https://github.com/patricklafrance)! - This release Migrates Squide from Webpack Module Federation to [Module Federation 2.0](https://module-federation.io/guide/start/quick-start.html). - - This release deprecates the following packages: - - - `@squide/webpack-module-federation`, use `@squide/module-federation` instead. - - `@squide/firefly-configs`, use `@squide/firefly-webpack-configs` instead. - - And introduce a few changes to existing API: - - - The `FireflyRuntime` nows accept a `useMsw` option and expose a new `isMswEnabled` getter: - - ```ts - // bootstrap.tsx - - import { FireflyRuntime } from "@squide/firefly"; - - const runtime = new FireflyRuntime({ - useMsw: true, - }); - - // Use the runtime to determine if MSW handlers should be registered. - if (runtime.isMswEnabled) { - // ... - } - ``` - - - The `registerRemoteModules` function doesn't accept the remotes URL anymore. The remotes URL should be configured in the webpack configuration files. - - Previously: - - ```ts - // bootstrap.tsx - - import { - registerRemoteModules, - type RemoteDefinition, - } from "@squide/firefly"; - - const Remotes: RemoteDefinition = [ - { - name: "remote1", - url: "http://localhost:8081", - }, - ]; - - await registerRemoteModules(Remotes, runtime); - ``` - - ```js - // webpack.dev.js - - import { defineDevHostConfig } from "@squide/firefly-webpack-configs"; - import { swcConfig } from "./swc.dev.js"; - - export default defineDevHostConfig(swcConfig, 8080, { - overlay: false, - }); - ``` - - Now: - - ```ts - // bootstrap.tsx - - import { - registerRemoteModules, - type RemoteDefinition, - } from "@squide/firefly"; - - const Remotes: RemoteDefinition = [ - { - name: "remote1", - }, - ]; - - await registerRemoteModules(Remotes, runtime); - ``` - - ```js - // webpack.dev.js - - import { defineDevHostConfig } from "@squide/firefly-webpack-configs"; - import { swcConfig } from "./swc.dev.js"; - - /** - * @typedef {import("@squide/firefly-webpack-configs").RemoteDefinition}[] - */ - export const Remotes = [ - { - name: "remote1", - url: "http://localhost:8081", - }, - ]; - - export default defineDevHostConfig(swcConfig, 8080, Remotes, { - overlay: false, - }); - ``` - - To migrate: - - 1. Replace the `@squide/webpack-module-federation` dependency by `@squide/module-federation`. - - 2. Replace the `@squide/firefly-configs` dependency by `@squide/firefly-webpack-configs`. - - 3. Move the remotes URL from the `bootstrap.tsx` file to the `webpack.*.js` files. - - 4. Integrate the new `useMsw` and `isMswEnabled` props. - -## 1.2.8 - -### Patch Changes - -- [#165](https://github.com/gsoft-inc/wl-squide/pull/165) [`c9358e5`](https://github.com/gsoft-inc/wl-squide/commit/c9358e5a276e38d877d16a6831251c1932b8497e) Thanks [@bsokol-wl](https://github.com/bsokol-wl)! - update webpack config dependency to remove hashes from chunk filenames - -## 1.2.7 - -### Patch Changes - -- [#162](https://github.com/gsoft-inc/wl-squide/pull/162) [`2c0840c`](https://github.com/gsoft-inc/wl-squide/commit/2c0840cb1c2c22e830e4f25f438c240c2d75d27a) Thanks [@patricklafrance](https://github.com/patricklafrance)! - Moved @workleap/webpack-configs as a dependency. - -## 1.2.6 - -### Patch Changes - -- [#160](https://github.com/gsoft-inc/wl-squide/pull/160) [`535b62c`](https://github.com/gsoft-inc/wl-squide/commit/535b62c9ce72bf32b69f018d9467a18186d123a8) Thanks [@bsokol-wl](https://github.com/bsokol-wl)! - Add webpack memory caching by default - -## 1.2.5 - -### Patch Changes - -- [#154](https://github.com/gsoft-inc/wl-squide/pull/154) [`e440515`](https://github.com/gsoft-inc/wl-squide/commit/e4405150a3c364fd4029c345399891614a434176) Thanks [@patricklafrance](https://github.com/patricklafrance)! - Updated packages. - -## 1.2.4 - -### Patch Changes - -- [#152](https://github.com/gsoft-inc/wl-squide/pull/152) [`d27fe71`](https://github.com/gsoft-inc/wl-squide/commit/d27fe717f899e395c3f01af86aac3e015159d719) Thanks [@patricklafrance](https://github.com/patricklafrance)! - Updated dependency versions. - -## 1.2.3 - -### Patch Changes - -- [#148](https://github.com/gsoft-inc/wl-squide/pull/148) [`a448347`](https://github.com/gsoft-inc/wl-squide/commit/a4483478bb8b7ef1f24513244e8c2410bdb86bc1) Thanks [@patricklafrance](https://github.com/patricklafrance)! - Removed `@squide/webpack-module-federation` dependency. - -## 1.2.2 - -### Patch Changes - -- Updated dependencies []: - - @squide/webpack-module-federation@3.0.5 - -## 1.2.1 - -### Patch Changes - -- [#142](https://github.com/gsoft-inc/wl-squide/pull/142) [`524be12b`](https://github.com/gsoft-inc/wl-squide/commit/524be12b26fdde5fe2b5d95ab20e1167a2b812f1) Thanks [@patricklafrance](https://github.com/patricklafrance)! - Removing `i18next-browser-languagedetector` from the shared dependencies as it causing an Error at runtime. - -## 1.2.0 - -### Minor Changes - -- [#140](https://github.com/gsoft-inc/wl-squide/pull/140) [`6eaf4ac3`](https://github.com/gsoft-inc/wl-squide/commit/6eaf4ac3f6ac88b62045ce280562a5887589026b) Thanks [@patricklafrance](https://github.com/patricklafrance)! - Added i18next libraries as shared singleton dependencies - -## 1.1.4 - -### Patch Changes - -- [`2f077119`](https://github.com/gsoft-inc/wl-squide/commit/2f0771194fd2034602955b8d3f72e1cc43e20e64) Thanks [@patricklafrance](https://github.com/patricklafrance)! - The `defineDevHostConfig` function now enables `fastRefresh`. - -## 1.1.3 - -### Patch Changes - -- Updated dependencies [[`1cda1be`](https://github.com/gsoft-inc/wl-squide/commit/1cda1be30779d1a1d5d2e21eac043baff20c0f7e)]: - - @squide/webpack-module-federation@3.0.4 - -## 1.1.2 - -### Patch Changes - -- Updated dependencies []: - - @squide/webpack-module-federation@3.0.3 - -## 1.1.1 - -### Patch Changes - -- Updated dependencies [[`4c3b6f1`](https://github.com/gsoft-inc/wl-squide/commit/4c3b6f1929364844dda6c1190fc45c3b037e8df9)]: - - @squide/webpack-module-federation@3.0.2 - -## 1.1.0 - -### Minor Changes - -- [#115](https://github.com/gsoft-inc/wl-squide/pull/115) [`568255a`](https://github.com/gsoft-inc/wl-squide/commit/568255a50a519e7d19c8c2b03909559686cd24c4) Thanks [@patricklafrance](https://github.com/patricklafrance)! - - A new `features` option is now available with the `defineConfig` functions to add the `@squide/i18next` package to the shared dependencies. - -### Patch Changes - -- Updated dependencies []: - - @squide/webpack-module-federation@3.0.1 - -## 1.0.0 - -### Major Changes - -- [#112](https://github.com/gsoft-inc/wl-squide/pull/112) [`a9dda1c`](https://github.com/gsoft-inc/wl-squide/commit/a9dda1c3b010f616556fc3313c1934e20a26bc11) Thanks [@patricklafrance](https://github.com/patricklafrance)! - This is a new package that includes the webpack configs. Moving the webpack configs to a standalone projects allow `@squide/firefly` to take an optionnal dependency on `webpack`. Thisis useful for local module projects that use the firefly stack but don't want to setup webpack because they do not need to support an isolated development environment. - - This new packages includes: - - - `defineDevHostConfig` - - `defineBuildHostConfig` - - `defineDevRemoteModuleConfig` - - `defineBuildRemoteModuleConfig` - -### Patch Changes - -- Updated dependencies [[`a9dda1c`](https://github.com/gsoft-inc/wl-squide/commit/a9dda1c3b010f616556fc3313c1934e20a26bc11)]: - - @squide/webpack-module-federation@3.0.0 diff --git a/packages/webpack-configs/package.json b/packages/webpack-configs/package.json deleted file mode 100644 index 2b4d40164..000000000 --- a/packages/webpack-configs/package.json +++ /dev/null @@ -1,69 +0,0 @@ -{ - "name": "@squide/webpack-configs", - "author": "Workleap", - "version": "4.3.1", - "description": "Utilities to configure webpack with a @squide application shell.", - "license": "Apache-2.0", - "repository": { - "type": "git", - "url": "git+https://github.com/gsoft-inc/wl-squide.git", - "directory": "packages/webpack-configs" - }, - "publishConfig": { - "access": "public", - "provenance": true - }, - "type": "module", - "exports": { - ".": { - "types": "./dist/index.d.ts", - "import": "./dist/index.js", - "default": "./dist/index.js" - } - }, - "files": [ - "/dist", - "CHANGELOG.md", - "README.md" - ], - "scripts": { - "dev": "tsup --config ./tsup.dev.ts", - "build": "tsup --config ./tsup.build.ts" - }, - "peerDependencies": { - "@swc/core": "*", - "@swc/helpers": "*", - "@workleap/swc-configs": "*", - "browserslist": "*", - "postcss": "*", - "webpack": ">=5.0.0", - "webpack-dev-server": ">=5.0.0" - }, - "devDependencies": { - "@swc/core": "1.8.0", - "@swc/jest": "0.2.37", - "@types/jest": "29.5.14", - "@types/node": "22.9.0", - "@types/semver": "7.5.8", - "@workleap/eslint-plugin": "3.2.3", - "@workleap/swc-configs": "2.2.3", - "@workleap/tsup-configs": "3.0.6", - "@workleap/typescript-configs": "3.0.2", - "eslint": "8.57.0", - "jest": "29.7.0", - "jest-environment-jsdom": "29.7.0", - "tsup": "8.3.5", - "typescript": "5.5.4", - "webpack": "5.96.1" - }, - "dependencies": { - "@module-federation/enhanced": "0.6.16", - "@workleap/webpack-configs": "1.5.1", - "deepmerge": "4.3.1", - "html-webpack-plugin": "5.6.3", - "semver": "7.6.3" - }, - "engines": { - "node": ">=21.1.0" - } -} diff --git a/packages/webpack-configs/src/index.ts b/packages/webpack-configs/src/index.ts deleted file mode 100644 index ca7aaabe4..000000000 --- a/packages/webpack-configs/src/index.ts +++ /dev/null @@ -1,4 +0,0 @@ -export * from "@workleap/webpack-configs"; - -export * from "./defineConfig.ts"; - diff --git a/packages/webpack-configs/swc.jest.ts b/packages/webpack-configs/swc.jest.ts deleted file mode 100644 index f58241822..000000000 --- a/packages/webpack-configs/swc.jest.ts +++ /dev/null @@ -1,13 +0,0 @@ -import { defineJestConfig } from "@workleap/swc-configs"; - -// const commonJsTransformer: SwcConfigTransformer = config => { -// return { -// ...config, -// module: { -// // The output module resolution system that the code will be compiled for. -// type: "commonjs" -// } -// }; -// }; - -export const swcConfig = defineJestConfig(); diff --git a/packages/webpack-configs/tests/__snapshots__/defineConfig.test.ts.snap b/packages/webpack-configs/tests/__snapshots__/defineConfig.test.ts.snap deleted file mode 100644 index 9e8b464a5..000000000 --- a/packages/webpack-configs/tests/__snapshots__/defineConfig.test.ts.snap +++ /dev/null @@ -1,1419 +0,0 @@ -// Jest Snapshot v1, https://goo.gl/fbAQLP - -exports[`defineBuildHostConfig the application name is set as the federation plugin application name 1`] = ` -ModuleFederationPlugin { - "_options": { - "dts": false, - "manifest": false, - "name": "host", - "remotes": {}, - "shared": { - "@squide/core": { - "eager": true, - "singleton": true, - }, - "@squide/module-federation": { - "eager": true, - "singleton": true, - }, - "react": { - "eager": true, - "requiredVersion": undefined, - "singleton": true, - }, - "react-dom": { - "eager": true, - "singleton": true, - }, - }, - }, - "name": "ModuleFederationPlugin", -} -`; - -exports[`defineBuildHostConfig the module federation plugin configuration includes the default shared dependencies 1`] = ` -ModuleFederationPlugin { - "_options": { - "dts": false, - "manifest": false, - "name": "host", - "remotes": {}, - "shared": { - "@squide/core": { - "eager": true, - "singleton": true, - }, - "@squide/module-federation": { - "eager": true, - "singleton": true, - }, - "react": { - "eager": true, - "requiredVersion": undefined, - "singleton": true, - }, - "react-dom": { - "eager": true, - "singleton": true, - }, - }, - }, - "name": "ModuleFederationPlugin", -} -`; - -exports[`defineBuildHostConfig the module federation plugin configuration includes the remotes 1`] = ` -ModuleFederationPlugin { - "_options": { - "dts": false, - "manifest": false, - "name": "host", - "remotes": { - "remote1": "remote1@http://localhost/remote1/remoteEntry.js", - "remote2": "remote2@http://localhost/remote2/remoteEntry.js", - }, - "shared": { - "@squide/core": { - "eager": true, - "singleton": true, - }, - "@squide/module-federation": { - "eager": true, - "singleton": true, - }, - "react": { - "eager": true, - "requiredVersion": undefined, - "singleton": true, - }, - "react-dom": { - "eager": true, - "singleton": true, - }, - }, - }, - "name": "ModuleFederationPlugin", -} -`; - -exports[`defineBuildHostConfig when a public path option is provided for the html webpack plugin, do not alter the provided public path option 1`] = ` -HtmlWebpackPlugin { - "options": { - "base": false, - "cache": true, - "chunks": "all", - "chunksSortMode": "auto", - "compile": true, - "excludeChunks": [], - "favicon": false, - "filename": "index.html", - "hash": false, - "inject": "head", - "meta": {}, - "minify": "auto", - "publicPath": "/toto", - "scriptLoading": "defer", - "showErrors": true, - "template": "auto", - "templateContent": false, - "templateParameters": [Function], - "title": "Webpack App", - "xhtml": false, - }, - "userOptions": { - "publicPath": "/toto", - }, - "version": 5, -} -`; - -exports[`defineBuildHostConfig when additional options are provided for an existing default shared dependency, add the consumer options to the default options 1`] = ` -ModuleFederationPlugin { - "_options": { - "dts": false, - "manifest": false, - "name": "host", - "remotes": {}, - "shared": { - "@squide/core": { - "eager": true, - "singleton": true, - }, - "@squide/module-federation": { - "eager": true, - "singleton": true, - }, - "react": { - "eager": true, - "requiredVersion": "1.2.3", - "singleton": true, - }, - "react-dom": { - "eager": true, - "singleton": true, - }, - }, - }, - "name": "ModuleFederationPlugin", -} -`; - -exports[`defineBuildHostConfig when additional shared dependencies are provided, add the dependencies to the module federation plugin configuration 1`] = ` -ModuleFederationPlugin { - "_options": { - "dts": false, - "manifest": false, - "name": "host", - "remotes": {}, - "shared": { - "@squide/core": { - "eager": true, - "singleton": true, - }, - "@squide/module-federation": { - "eager": true, - "singleton": true, - }, - "first": { - "singleton": true, - }, - "react": { - "eager": true, - "requiredVersion": undefined, - "singleton": true, - }, - "react-dom": { - "eager": true, - "singleton": true, - }, - "second": { - "eager": true, - "singleton": true, - }, - }, - }, - "name": "ModuleFederationPlugin", -} -`; - -exports[`defineBuildHostConfig when i18next is activated, add i18next shared dependency and requiredVersion: false to the react shared dependency definition 1`] = ` -ModuleFederationPlugin { - "_options": { - "dts": false, - "manifest": false, - "name": "host", - "remotes": {}, - "shared": { - "@squide/core": { - "eager": true, - "singleton": true, - }, - "@squide/i18next": { - "eager": true, - "singleton": true, - }, - "@squide/module-federation": { - "eager": true, - "singleton": true, - }, - "i18next": { - "eager": true, - "singleton": true, - }, - "react": { - "eager": true, - "requiredVersion": false, - "singleton": true, - }, - "react-dom": { - "eager": true, - "singleton": true, - }, - "react-i18next": { - "eager": true, - "singleton": true, - }, - }, - }, - "name": "ModuleFederationPlugin", -} -`; - -exports[`defineBuildHostConfig when msw is activated, add msw shared dependency 1`] = ` -ModuleFederationPlugin { - "_options": { - "dts": false, - "manifest": false, - "name": "host", - "remotes": {}, - "shared": { - "@squide/core": { - "eager": true, - "singleton": true, - }, - "@squide/module-federation": { - "eager": true, - "singleton": true, - }, - "@squide/msw": { - "eager": true, - "singleton": true, - }, - "react": { - "eager": true, - "requiredVersion": undefined, - "singleton": true, - }, - "react-dom": { - "eager": true, - "singleton": true, - }, - }, - }, - "name": "ModuleFederationPlugin", -} -`; - -exports[`defineBuildHostConfig when no options are provided for the html webpack plugin, add a public path option 1`] = ` -HtmlWebpackPlugin { - "options": { - "base": false, - "cache": true, - "chunks": "all", - "chunksSortMode": "auto", - "compile": true, - "excludeChunks": [], - "favicon": false, - "filename": "index.html", - "hash": false, - "inject": "head", - "meta": {}, - "minify": "auto", - "publicPath": "/", - "scriptLoading": "defer", - "showErrors": true, - "templateContent": false, - "templateParameters": [Function], - "title": "Webpack App", - "xhtml": false, - }, - "userOptions": { - "publicPath": "/", - }, - "version": 5, -} -`; - -exports[`defineBuildHostConfig when options others than the public path option are provided for the html webpack plugin, add a public path option 1`] = ` -HtmlWebpackPlugin { - "options": { - "base": false, - "cache": true, - "chunks": "all", - "chunksSortMode": "auto", - "compile": true, - "excludeChunks": [], - "favicon": "toto.png", - "filename": "index.html", - "hash": false, - "inject": "head", - "meta": {}, - "minify": "auto", - "publicPath": "/", - "scriptLoading": "defer", - "showErrors": true, - "template": "auto", - "templateContent": false, - "templateParameters": [Function], - "title": "Webpack App", - "xhtml": false, - }, - "userOptions": { - "favicon": "toto.png", - "publicPath": "/", - }, - "version": 5, -} -`; - -exports[`defineBuildHostConfig when overriding options are provided for a default shared dependency, use the consumer option 1`] = ` -ModuleFederationPlugin { - "_options": { - "dts": false, - "manifest": false, - "name": "host", - "remotes": {}, - "shared": { - "@squide/core": { - "eager": true, - "singleton": true, - }, - "@squide/module-federation": { - "eager": true, - "singleton": true, - }, - "react": { - "eager": false, - "requiredVersion": undefined, - "singleton": false, - }, - "react-dom": { - "eager": true, - "singleton": true, - }, - }, - }, - "name": "ModuleFederationPlugin", -} -`; - -exports[`defineBuildHostConfig when the router is react-router, add react-router shared dependencies 1`] = ` -ModuleFederationPlugin { - "_options": { - "dts": false, - "manifest": false, - "name": "host", - "remotes": {}, - "shared": { - "@squide/core": { - "eager": true, - "singleton": true, - }, - "@squide/module-federation": { - "eager": true, - "singleton": true, - }, - "@squide/react-router": { - "eager": true, - "singleton": true, - }, - "react": { - "eager": true, - "requiredVersion": undefined, - "singleton": true, - }, - "react-dom": { - "eager": true, - "singleton": true, - }, - "react-router-dom": { - "eager": true, - "singleton": true, - }, - }, - }, - "name": "ModuleFederationPlugin", -} -`; - -exports[`defineBuildRemoteModuleConfig the application name is set as the federation plugin application name 1`] = ` -ModuleFederationPlugin { - "_options": { - "dts": false, - "exposes": { - "./register": "./src/register", - }, - "filename": "remoteEntry.js", - "manifest": false, - "name": "remote1", - "shared": { - "@squide/core": { - "eager": undefined, - "singleton": true, - }, - "@squide/module-federation": { - "eager": undefined, - "singleton": true, - }, - "react": { - "eager": undefined, - "requiredVersion": undefined, - "singleton": true, - }, - "react-dom": { - "eager": undefined, - "singleton": true, - }, - }, - }, - "name": "ModuleFederationPlugin", -} -`; - -exports[`defineBuildRemoteModuleConfig the module federation plugin configuration includes the default shared dependencies 1`] = ` -ModuleFederationPlugin { - "_options": { - "dts": false, - "exposes": { - "./register": "./src/register", - }, - "filename": "remoteEntry.js", - "manifest": false, - "name": "remote1", - "shared": { - "@squide/core": { - "eager": undefined, - "singleton": true, - }, - "@squide/module-federation": { - "eager": undefined, - "singleton": true, - }, - "react": { - "eager": undefined, - "requiredVersion": undefined, - "singleton": true, - }, - "react-dom": { - "eager": undefined, - "singleton": true, - }, - }, - }, - "name": "ModuleFederationPlugin", -} -`; - -exports[`defineBuildRemoteModuleConfig when additional options are provided for an existing default shared dependency, add the consumer options to the default options 1`] = ` -ModuleFederationPlugin { - "_options": { - "dts": false, - "exposes": { - "./register": "./src/register", - }, - "filename": "remoteEntry.js", - "manifest": false, - "name": "remote1", - "shared": { - "@squide/core": { - "eager": undefined, - "singleton": true, - }, - "@squide/module-federation": { - "eager": undefined, - "singleton": true, - }, - "react": { - "eager": undefined, - "requiredVersion": "1.2.3", - "singleton": true, - }, - "react-dom": { - "eager": undefined, - "singleton": true, - }, - }, - }, - "name": "ModuleFederationPlugin", -} -`; - -exports[`defineBuildRemoteModuleConfig when additional shared dependencies are provided, add the dependencies to the module federation plugin configuration 1`] = ` -ModuleFederationPlugin { - "_options": { - "dts": false, - "exposes": { - "./register": "./src/register", - }, - "filename": "remoteEntry.js", - "manifest": false, - "name": "remote1", - "shared": { - "@squide/core": { - "eager": undefined, - "singleton": true, - }, - "@squide/module-federation": { - "eager": undefined, - "singleton": true, - }, - "first": { - "singleton": true, - }, - "react": { - "eager": undefined, - "requiredVersion": undefined, - "singleton": true, - }, - "react-dom": { - "eager": undefined, - "singleton": true, - }, - "second": { - "eager": true, - "singleton": true, - }, - }, - }, - "name": "ModuleFederationPlugin", -} -`; - -exports[`defineBuildRemoteModuleConfig when i18next is activated, add i18next shared dependency and requiredVersion: false to the react shared dependency definition 1`] = ` -ModuleFederationPlugin { - "_options": { - "dts": false, - "exposes": { - "./register": "./src/register", - }, - "filename": "remoteEntry.js", - "manifest": false, - "name": "remote1", - "shared": { - "@squide/core": { - "eager": undefined, - "singleton": true, - }, - "@squide/i18next": { - "eager": undefined, - "singleton": true, - }, - "@squide/module-federation": { - "eager": undefined, - "singleton": true, - }, - "i18next": { - "eager": undefined, - "singleton": true, - }, - "react": { - "eager": undefined, - "requiredVersion": false, - "singleton": true, - }, - "react-dom": { - "eager": undefined, - "singleton": true, - }, - "react-i18next": { - "eager": undefined, - "singleton": true, - }, - }, - }, - "name": "ModuleFederationPlugin", -} -`; - -exports[`defineBuildRemoteModuleConfig when msw is activated, add msw shared dependency 1`] = ` -ModuleFederationPlugin { - "_options": { - "dts": false, - "exposes": { - "./register": "./src/register", - }, - "filename": "remoteEntry.js", - "manifest": false, - "name": "remote1", - "shared": { - "@squide/core": { - "eager": undefined, - "singleton": true, - }, - "@squide/module-federation": { - "eager": undefined, - "singleton": true, - }, - "@squide/msw": { - "eager": undefined, - "singleton": true, - }, - "react": { - "eager": undefined, - "requiredVersion": undefined, - "singleton": true, - }, - "react-dom": { - "eager": undefined, - "singleton": true, - }, - }, - }, - "name": "ModuleFederationPlugin", -} -`; - -exports[`defineBuildRemoteModuleConfig when overriding options are provided for a default shared dependency, use the consumer option 1`] = ` -ModuleFederationPlugin { - "_options": { - "dts": false, - "exposes": { - "./register": "./src/register", - }, - "filename": "remoteEntry.js", - "manifest": false, - "name": "remote1", - "shared": { - "@squide/core": { - "eager": undefined, - "singleton": true, - }, - "@squide/module-federation": { - "eager": undefined, - "singleton": true, - }, - "react": { - "eager": false, - "requiredVersion": undefined, - "singleton": false, - }, - "react-dom": { - "eager": undefined, - "singleton": true, - }, - }, - }, - "name": "ModuleFederationPlugin", -} -`; - -exports[`defineBuildRemoteModuleConfig when the router is react-router, add react-router shared dependencies 1`] = ` -ModuleFederationPlugin { - "_options": { - "dts": false, - "exposes": { - "./register": "./src/register", - }, - "filename": "remoteEntry.js", - "manifest": false, - "name": "remote1", - "shared": { - "@squide/core": { - "eager": undefined, - "singleton": true, - }, - "@squide/module-federation": { - "eager": undefined, - "singleton": true, - }, - "@squide/react-router": { - "eager": undefined, - "singleton": true, - }, - "react": { - "eager": undefined, - "requiredVersion": undefined, - "singleton": true, - }, - "react-dom": { - "eager": undefined, - "singleton": true, - }, - "react-router-dom": { - "eager": undefined, - "singleton": true, - }, - }, - }, - "name": "ModuleFederationPlugin", -} -`; - -exports[`defineDevHostConfig the application name is set as the federation plugin application name 1`] = ` -ModuleFederationPlugin { - "_options": { - "dts": false, - "manifest": false, - "name": "host", - "remotes": {}, - "shared": { - "@squide/core": { - "eager": true, - "singleton": true, - }, - "@squide/module-federation": { - "eager": true, - "singleton": true, - }, - "react": { - "eager": true, - "requiredVersion": undefined, - "singleton": true, - }, - "react-dom": { - "eager": true, - "singleton": true, - }, - }, - }, - "name": "ModuleFederationPlugin", -} -`; - -exports[`defineDevHostConfig the module federation plugin configuration includes the default shared dependencies 1`] = ` -ModuleFederationPlugin { - "_options": { - "dts": false, - "manifest": false, - "name": "host", - "remotes": {}, - "shared": { - "@squide/core": { - "eager": true, - "singleton": true, - }, - "@squide/module-federation": { - "eager": true, - "singleton": true, - }, - "react": { - "eager": true, - "requiredVersion": undefined, - "singleton": true, - }, - "react-dom": { - "eager": true, - "singleton": true, - }, - }, - }, - "name": "ModuleFederationPlugin", -} -`; - -exports[`defineDevHostConfig the module federation plugin configuration includes the remotes 1`] = ` -ModuleFederationPlugin { - "_options": { - "dts": false, - "manifest": false, - "name": "host", - "remotes": { - "remote1": "remote1@http://localhost/remote1/remoteEntry.js", - "remote2": "remote2@http://localhost/remote2/remoteEntry.js", - }, - "shared": { - "@squide/core": { - "eager": true, - "singleton": true, - }, - "@squide/module-federation": { - "eager": true, - "singleton": true, - }, - "react": { - "eager": true, - "requiredVersion": undefined, - "singleton": true, - }, - "react-dom": { - "eager": true, - "singleton": true, - }, - }, - }, - "name": "ModuleFederationPlugin", -} -`; - -exports[`defineDevHostConfig when a public path option is provided for the html webpack plugin, do not alter the provided public path option 1`] = ` -HtmlWebpackPlugin { - "options": { - "base": false, - "cache": true, - "chunks": "all", - "chunksSortMode": "auto", - "compile": true, - "excludeChunks": [], - "favicon": false, - "filename": "index.html", - "hash": false, - "inject": "head", - "meta": {}, - "minify": "auto", - "publicPath": "/toto", - "scriptLoading": "defer", - "showErrors": true, - "template": "auto", - "templateContent": false, - "templateParameters": [Function], - "title": "Webpack App", - "xhtml": false, - }, - "userOptions": { - "publicPath": "/toto", - }, - "version": 5, -} -`; - -exports[`defineDevHostConfig when additional options are provided for an existing default shared dependency, add the consumer options to the default options 1`] = ` -ModuleFederationPlugin { - "_options": { - "dts": false, - "manifest": false, - "name": "host", - "remotes": {}, - "shared": { - "@squide/core": { - "eager": true, - "singleton": true, - }, - "@squide/module-federation": { - "eager": true, - "singleton": true, - }, - "react": { - "eager": true, - "requiredVersion": "1.2.3", - "singleton": true, - }, - "react-dom": { - "eager": true, - "singleton": true, - }, - }, - }, - "name": "ModuleFederationPlugin", -} -`; - -exports[`defineDevHostConfig when additional shared dependencies are provided, add the dependencies to the module federation plugin configuration 1`] = ` -ModuleFederationPlugin { - "_options": { - "dts": false, - "manifest": false, - "name": "host", - "remotes": {}, - "shared": { - "@squide/core": { - "eager": true, - "singleton": true, - }, - "@squide/module-federation": { - "eager": true, - "singleton": true, - }, - "first": { - "singleton": true, - }, - "react": { - "eager": true, - "requiredVersion": undefined, - "singleton": true, - }, - "react-dom": { - "eager": true, - "singleton": true, - }, - "second": { - "eager": true, - "singleton": true, - }, - }, - }, - "name": "ModuleFederationPlugin", -} -`; - -exports[`defineDevHostConfig when i18next is activated, add i18next shared dependency and requiredVersion: false to the react shared dependency definition 1`] = ` -ModuleFederationPlugin { - "_options": { - "dts": false, - "manifest": false, - "name": "host", - "remotes": {}, - "shared": { - "@squide/core": { - "eager": true, - "singleton": true, - }, - "@squide/i18next": { - "eager": true, - "singleton": true, - }, - "@squide/module-federation": { - "eager": true, - "singleton": true, - }, - "i18next": { - "eager": true, - "singleton": true, - }, - "react": { - "eager": true, - "requiredVersion": false, - "singleton": true, - }, - "react-dom": { - "eager": true, - "singleton": true, - }, - "react-i18next": { - "eager": true, - "singleton": true, - }, - }, - }, - "name": "ModuleFederationPlugin", -} -`; - -exports[`defineDevHostConfig when msw is activated, add msw shared dependency 1`] = ` -ModuleFederationPlugin { - "_options": { - "dts": false, - "manifest": false, - "name": "host", - "remotes": {}, - "shared": { - "@squide/core": { - "eager": true, - "singleton": true, - }, - "@squide/module-federation": { - "eager": true, - "singleton": true, - }, - "@squide/msw": { - "eager": true, - "singleton": true, - }, - "react": { - "eager": true, - "requiredVersion": undefined, - "singleton": true, - }, - "react-dom": { - "eager": true, - "singleton": true, - }, - }, - }, - "name": "ModuleFederationPlugin", -} -`; - -exports[`defineDevHostConfig when no options are provided for the html webpack plugin, add a public path option 1`] = ` -HtmlWebpackPlugin { - "options": { - "base": false, - "cache": true, - "chunks": "all", - "chunksSortMode": "auto", - "compile": true, - "excludeChunks": [], - "favicon": false, - "filename": "index.html", - "hash": false, - "inject": "head", - "meta": {}, - "minify": "auto", - "publicPath": "/", - "scriptLoading": "defer", - "showErrors": true, - "templateContent": false, - "templateParameters": [Function], - "title": "Webpack App", - "xhtml": false, - }, - "userOptions": { - "publicPath": "/", - }, - "version": 5, -} -`; - -exports[`defineDevHostConfig when options others than the public path option are provided for the html webpack plugin, add a public path option 1`] = ` -HtmlWebpackPlugin { - "options": { - "base": false, - "cache": true, - "chunks": "all", - "chunksSortMode": "auto", - "compile": true, - "excludeChunks": [], - "favicon": "toto.png", - "filename": "index.html", - "hash": false, - "inject": "head", - "meta": {}, - "minify": "auto", - "publicPath": "/", - "scriptLoading": "defer", - "showErrors": true, - "template": "auto", - "templateContent": false, - "templateParameters": [Function], - "title": "Webpack App", - "xhtml": false, - }, - "userOptions": { - "favicon": "toto.png", - "publicPath": "/", - }, - "version": 5, -} -`; - -exports[`defineDevHostConfig when overriding options are provided for a default shared dependency, use the consumer option 1`] = ` -ModuleFederationPlugin { - "_options": { - "dts": false, - "manifest": false, - "name": "host", - "remotes": {}, - "shared": { - "@squide/core": { - "eager": true, - "singleton": true, - }, - "@squide/module-federation": { - "eager": true, - "singleton": true, - }, - "react": { - "eager": false, - "requiredVersion": undefined, - "singleton": false, - }, - "react-dom": { - "eager": true, - "singleton": true, - }, - }, - }, - "name": "ModuleFederationPlugin", -} -`; - -exports[`defineDevHostConfig when the router is react-router, add react-router shared dependencies 1`] = ` -ModuleFederationPlugin { - "_options": { - "dts": false, - "manifest": false, - "name": "host", - "remotes": {}, - "shared": { - "@squide/core": { - "eager": true, - "singleton": true, - }, - "@squide/module-federation": { - "eager": true, - "singleton": true, - }, - "@squide/react-router": { - "eager": true, - "singleton": true, - }, - "react": { - "eager": true, - "requiredVersion": undefined, - "singleton": true, - }, - "react-dom": { - "eager": true, - "singleton": true, - }, - "react-router-dom": { - "eager": true, - "singleton": true, - }, - }, - }, - "name": "ModuleFederationPlugin", -} -`; - -exports[`defineDevRemoteModuleConfig the application name is set as the federation plugin application name 1`] = ` -ModuleFederationPlugin { - "_options": { - "dts": false, - "exposes": { - "./register": "./src/register", - }, - "filename": "remoteEntry.js", - "manifest": false, - "name": "remote1", - "shared": { - "@squide/core": { - "eager": undefined, - "singleton": true, - }, - "@squide/module-federation": { - "eager": undefined, - "singleton": true, - }, - "react": { - "eager": undefined, - "requiredVersion": undefined, - "singleton": true, - }, - "react-dom": { - "eager": undefined, - "singleton": true, - }, - }, - }, - "name": "ModuleFederationPlugin", -} -`; - -exports[`defineDevRemoteModuleConfig the module federation plugin configuration includes the default shared dependencies 1`] = ` -ModuleFederationPlugin { - "_options": { - "dts": false, - "exposes": { - "./register": "./src/register", - }, - "filename": "remoteEntry.js", - "manifest": false, - "name": "remote1", - "shared": { - "@squide/core": { - "eager": undefined, - "singleton": true, - }, - "@squide/module-federation": { - "eager": undefined, - "singleton": true, - }, - "react": { - "eager": undefined, - "requiredVersion": undefined, - "singleton": true, - }, - "react-dom": { - "eager": undefined, - "singleton": true, - }, - }, - }, - "name": "ModuleFederationPlugin", -} -`; - -exports[`defineDevRemoteModuleConfig when additional options are provided for an existing default shared dependency, add the consumer options to the default options 1`] = ` -ModuleFederationPlugin { - "_options": { - "dts": false, - "exposes": { - "./register": "./src/register", - }, - "filename": "remoteEntry.js", - "manifest": false, - "name": "remote1", - "shared": { - "@squide/core": { - "eager": undefined, - "singleton": true, - }, - "@squide/module-federation": { - "eager": undefined, - "singleton": true, - }, - "react": { - "eager": undefined, - "requiredVersion": "1.2.3", - "singleton": true, - }, - "react-dom": { - "eager": undefined, - "singleton": true, - }, - }, - }, - "name": "ModuleFederationPlugin", -} -`; - -exports[`defineDevRemoteModuleConfig when additional shared dependencies are provided, add the dependencies to the module federation plugin configuration 1`] = ` -ModuleFederationPlugin { - "_options": { - "dts": false, - "exposes": { - "./register": "./src/register", - }, - "filename": "remoteEntry.js", - "manifest": false, - "name": "remote1", - "shared": { - "@squide/core": { - "eager": undefined, - "singleton": true, - }, - "@squide/module-federation": { - "eager": undefined, - "singleton": true, - }, - "first": { - "singleton": true, - }, - "react": { - "eager": undefined, - "requiredVersion": undefined, - "singleton": true, - }, - "react-dom": { - "eager": undefined, - "singleton": true, - }, - "second": { - "eager": true, - "singleton": true, - }, - }, - }, - "name": "ModuleFederationPlugin", -} -`; - -exports[`defineDevRemoteModuleConfig when i18next is activated, add i18next shared dependency and requiredVersion: false to the react shared dependency definition 1`] = ` -ModuleFederationPlugin { - "_options": { - "dts": false, - "exposes": { - "./register": "./src/register", - }, - "filename": "remoteEntry.js", - "manifest": false, - "name": "remote1", - "shared": { - "@squide/core": { - "eager": undefined, - "singleton": true, - }, - "@squide/i18next": { - "eager": undefined, - "singleton": true, - }, - "@squide/module-federation": { - "eager": undefined, - "singleton": true, - }, - "i18next": { - "eager": undefined, - "singleton": true, - }, - "react": { - "eager": undefined, - "requiredVersion": false, - "singleton": true, - }, - "react-dom": { - "eager": undefined, - "singleton": true, - }, - "react-i18next": { - "eager": undefined, - "singleton": true, - }, - }, - }, - "name": "ModuleFederationPlugin", -} -`; - -exports[`defineDevRemoteModuleConfig when msw is activated, add msw shared dependency 1`] = ` -ModuleFederationPlugin { - "_options": { - "dts": false, - "exposes": { - "./register": "./src/register", - }, - "filename": "remoteEntry.js", - "manifest": false, - "name": "remote1", - "shared": { - "@squide/core": { - "eager": undefined, - "singleton": true, - }, - "@squide/module-federation": { - "eager": undefined, - "singleton": true, - }, - "@squide/msw": { - "eager": undefined, - "singleton": true, - }, - "react": { - "eager": undefined, - "requiredVersion": undefined, - "singleton": true, - }, - "react-dom": { - "eager": undefined, - "singleton": true, - }, - }, - }, - "name": "ModuleFederationPlugin", -} -`; - -exports[`defineDevRemoteModuleConfig when overriding options are provided for a default shared dependency, use the consumer option 1`] = ` -ModuleFederationPlugin { - "_options": { - "dts": false, - "exposes": { - "./register": "./src/register", - }, - "filename": "remoteEntry.js", - "manifest": false, - "name": "remote1", - "shared": { - "@squide/core": { - "eager": undefined, - "singleton": true, - }, - "@squide/module-federation": { - "eager": undefined, - "singleton": true, - }, - "react": { - "eager": false, - "requiredVersion": undefined, - "singleton": false, - }, - "react-dom": { - "eager": undefined, - "singleton": true, - }, - }, - }, - "name": "ModuleFederationPlugin", -} -`; - -exports[`defineDevRemoteModuleConfig when the router is react-router, add react-router shared dependencies 1`] = ` -ModuleFederationPlugin { - "_options": { - "dts": false, - "exposes": { - "./register": "./src/register", - }, - "filename": "remoteEntry.js", - "manifest": false, - "name": "remote1", - "shared": { - "@squide/core": { - "eager": undefined, - "singleton": true, - }, - "@squide/module-federation": { - "eager": undefined, - "singleton": true, - }, - "@squide/react-router": { - "eager": undefined, - "singleton": true, - }, - "react": { - "eager": undefined, - "requiredVersion": undefined, - "singleton": true, - }, - "react-dom": { - "eager": undefined, - "singleton": true, - }, - "react-router-dom": { - "eager": undefined, - "singleton": true, - }, - }, - }, - "name": "ModuleFederationPlugin", -} -`; diff --git a/packages/webpack-configs/tests/defineConfig.test.ts b/packages/webpack-configs/tests/defineConfig.test.ts deleted file mode 100644 index 17a5ff7f7..000000000 --- a/packages/webpack-configs/tests/defineConfig.test.ts +++ /dev/null @@ -1,825 +0,0 @@ -import { ModuleFederationPlugin } from "@module-federation/enhanced/webpack"; -import { defineBuildConfig as defineSwcBuildConfig, defineDevConfig as defineSwcDevConfig } from "@workleap/swc-configs"; -import { findPlugin, matchConstructorName, type WebpackConfig } from "@workleap/webpack-configs"; -import HtmlWebpackPlugin from "html-webpack-plugin"; -import type { WebpackPluginInstance } from "webpack"; -import { defineBuildHostConfig, defineBuildRemoteModuleConfig, defineDevHostConfig, defineDevRemoteModuleConfig, defineHostModuleFederationPluginOptions, defineRemoteModuleFederationPluginOptions, type ModuleFederationPluginOptions } from "../src/defineConfig.ts"; - -class DummyPlugin { - _options: unknown; - - constructor(options: unknown) { - this._options = options; - } - - apply() { - console.log("Apply Dummy plugin."); - } -} - -// The following options are relative to the environment running the test and breaks on CI. -function prepareModuleFederationPluginForSnapshot(plugin: WebpackPluginInstance) { - delete (plugin._options as ModuleFederationPluginOptions)["runtimePlugins"]; - - return plugin; -} - -describe("defineDevHostConfig", () => { - const SwcConfig = defineSwcDevConfig({ - chrome: "116" - }); - - test("the application name is set as the federation plugin application name", () => { - const config = defineDevHostConfig(SwcConfig, 8080, []); - const result = findPlugin(config, matchConstructorName(ModuleFederationPlugin.name)); - - expect(prepareModuleFederationPluginForSnapshot(result.plugin as WebpackPluginInstance)).toMatchSnapshot(); - }); - - test("the application name is set as the output unique name", () => { - const result = defineDevHostConfig(SwcConfig, 8080, []); - - expect(result.output?.uniqueName).toBe("host"); - }); - - test("the port number is set as the dev server port and the public path port", () => { - const result = defineDevHostConfig(SwcConfig, 8080, []); - - // "devServer" does exist but webpack types are a messed. - // eslint-disable-next-line @typescript-eslint/ban-ts-comment - // @ts-ignore - expect(result.devServer.port).toBe(8080); - }); - - test("when no public path is provided, the default public path is \"auto\"", () => { - const config = defineDevHostConfig(SwcConfig, 8080, []); - - expect(config.output?.publicPath).toBe("auto"); - }); - - test("when a public path is provided, use the provided public path", () => { - const config = defineDevHostConfig(SwcConfig, 8080, [], { - publicPath: "http://localhost:8080/" - }); - - expect(config.output?.publicPath).toBe("http://localhost:8080/"); - }); - - test("the module federation plugin configuration includes the remotes", () => { - const config = defineDevHostConfig(SwcConfig, 8080, [ - { name: "remote1", url: "http://localhost/remote1" }, - { name: "remote2", url: "http://localhost/remote2" } - ]); - - const result = findPlugin(config, matchConstructorName(ModuleFederationPlugin.name)); - - expect(prepareModuleFederationPluginForSnapshot(result.plugin as WebpackPluginInstance)).toMatchSnapshot(); - }); - - test("the module federation plugin configuration includes the default shared dependencies", () => { - const config = defineDevHostConfig(SwcConfig, 8080, []); - const result = findPlugin(config, matchConstructorName(ModuleFederationPlugin.name)); - - expect(prepareModuleFederationPluginForSnapshot(result.plugin as WebpackPluginInstance)).toMatchSnapshot(); - }); - - test("when additional shared dependencies are provided, add the dependencies to the module federation plugin configuration", () => { - const config = defineDevHostConfig(SwcConfig, 8080, [], { - sharedDependencies: { - "first": { - singleton: true - }, - "second": { - eager: true, - singleton: true - } - } - }); - - const result = findPlugin(config, matchConstructorName(ModuleFederationPlugin.name)); - - expect(prepareModuleFederationPluginForSnapshot(result.plugin as WebpackPluginInstance)).toMatchSnapshot(); - }); - - test("when additional options are provided for an existing default shared dependency, add the consumer options to the default options", () => { - const config = defineDevHostConfig(SwcConfig, 8080, [], { - sharedDependencies: { - "react": { - requiredVersion: "1.2.3" - } - } - }); - - const result = findPlugin(config, matchConstructorName(ModuleFederationPlugin.name)); - - expect(prepareModuleFederationPluginForSnapshot(result.plugin as WebpackPluginInstance)).toMatchSnapshot(); - }); - - test("when overriding options are provided for a default shared dependency, use the consumer option", () => { - const config = defineDevHostConfig(SwcConfig, 8080, [], { - sharedDependencies: { - "react": { - eager: false, - singleton: false - } - } - }); - - const result = findPlugin(config, matchConstructorName(ModuleFederationPlugin.name)); - - expect(prepareModuleFederationPluginForSnapshot(result.plugin as WebpackPluginInstance)).toMatchSnapshot(); - }); - - test("when the router is react-router, add react-router shared dependencies", () => { - const config = defineDevHostConfig(SwcConfig, 8080, [], { - features: { - router: "react-router" - } - }); - - const result = findPlugin(config, matchConstructorName(ModuleFederationPlugin.name)); - - expect(prepareModuleFederationPluginForSnapshot(result.plugin as WebpackPluginInstance)).toMatchSnapshot(); - }); - - test("when msw is activated, add msw shared dependency", () => { - const config = defineDevHostConfig(SwcConfig, 8080, [], { - features: { - msw: true - } - }); - - const result = findPlugin(config, matchConstructorName(ModuleFederationPlugin.name)); - - expect(prepareModuleFederationPluginForSnapshot(result.plugin as WebpackPluginInstance)).toMatchSnapshot(); - }); - - test("when i18next is activated, add i18next shared dependency and requiredVersion: false to the react shared dependency definition", () => { - const config = defineDevHostConfig(SwcConfig, 8080, [], { - features: { - i18next: true - } - }); - - const result = findPlugin(config, matchConstructorName(ModuleFederationPlugin.name)); - - expect(prepareModuleFederationPluginForSnapshot(result.plugin as WebpackPluginInstance)).toMatchSnapshot(); - }); - - test("when additional plugins are provided, the plugins are added to the configuration", () => { - const config = defineDevHostConfig(SwcConfig, 8080, [], { - plugins: [new DummyPlugin({})] - }); - - const result = findPlugin(config, matchConstructorName(DummyPlugin.name)); - - expect(result).toBeDefined(); - }); - - test("when configuration transformers are provided, the transformers are applied to the configuration", () => { - const result = defineDevHostConfig(SwcConfig, 8080, [], { - transformers: [(config: WebpackConfig) => { - config.entry = "updated by the dummy transformer"; - - return config; - }] - }); - - expect(result.entry).toBe("updated by the dummy transformer"); - }); - - test("when no options are provided for the html webpack plugin, add a public path option", () => { - const config = defineDevHostConfig(SwcConfig, 8080, []); - - const result = findPlugin(config, matchConstructorName(HtmlWebpackPlugin.name)); - - // This is an option that is relative to the environment running the test and breaks on CI. - // eslint-disable-next-line @typescript-eslint/ban-ts-comment - // @ts-ignore - delete (result.plugin.userOptions as HtmlWebpackPlugin.Options)["template"]; - // This is an option that is relative to the environment running the test and breaks on CI. - // eslint-disable-next-line @typescript-eslint/ban-ts-comment - // @ts-ignore - delete (result.plugin.options as HtmlWebpackPlugin.Options)["template"]; - - expect(result.plugin).toMatchSnapshot(); - }); - - test("when options others than the public path option are provided for the html webpack plugin, add a public path option", () => { - const config = defineDevHostConfig(SwcConfig, 8080, [], { - htmlWebpackPluginOptions: { - favicon: "toto.png" - } - }); - - const result = findPlugin(config, matchConstructorName(HtmlWebpackPlugin.name)); - - expect(result.plugin).toMatchSnapshot(); - }); - - test("when a public path option is provided for the html webpack plugin, do not alter the provided public path option", () => { - const config = defineDevHostConfig(SwcConfig, 8080, [], { - htmlWebpackPluginOptions: { - publicPath: "/toto" - } - }); - - const result = findPlugin(config, matchConstructorName(HtmlWebpackPlugin.name)); - - expect(result.plugin).toMatchSnapshot(); - }); -}); - - -describe("defineBuildHostConfig", () => { - const SwcConfig = defineSwcBuildConfig({ - chrome: "116" - }); - - test("the application name is set as the federation plugin application name", () => { - const config = defineBuildHostConfig(SwcConfig, []); - const result = findPlugin(config, matchConstructorName(ModuleFederationPlugin.name)); - - expect(prepareModuleFederationPluginForSnapshot(result.plugin as WebpackPluginInstance)).toMatchSnapshot(); - }); - - test("when no public path is provided, the default public path is \"auto\"", () => { - const config = defineBuildHostConfig(SwcConfig, []); - - expect(config.output?.publicPath).toBe("auto"); - }); - - test("when a public path is provided, use the provided public path", () => { - const config = defineBuildHostConfig(SwcConfig, [], { - publicPath: "http://localhost:8080/" - }); - - expect(config.output?.publicPath).toBe("http://localhost:8080/"); - }); - - test("the module federation plugin configuration includes the remotes", () => { - const config = defineBuildHostConfig(SwcConfig, [ - { name: "remote1", url: "http://localhost/remote1" }, - { name: "remote2", url: "http://localhost/remote2" } - ]); - - const result = findPlugin(config, matchConstructorName(ModuleFederationPlugin.name)); - - expect(prepareModuleFederationPluginForSnapshot(result.plugin as WebpackPluginInstance)).toMatchSnapshot(); - }); - - test("the module federation plugin configuration includes the default shared dependencies", () => { - const config = defineBuildHostConfig(SwcConfig, []); - const result = findPlugin(config, matchConstructorName(ModuleFederationPlugin.name)); - - expect(prepareModuleFederationPluginForSnapshot(result.plugin as WebpackPluginInstance)).toMatchSnapshot(); - }); - - test("when additional shared dependencies are provided, add the dependencies to the module federation plugin configuration", () => { - const config = defineBuildHostConfig(SwcConfig, [], { - sharedDependencies: { - "first": { - singleton: true - }, - "second": { - eager: true, - singleton: true - } - } - }); - - const result = findPlugin(config, matchConstructorName(ModuleFederationPlugin.name)); - - expect(prepareModuleFederationPluginForSnapshot(result.plugin as WebpackPluginInstance)).toMatchSnapshot(); - }); - - test("when additional options are provided for an existing default shared dependency, add the consumer options to the default options", () => { - const config = defineBuildHostConfig(SwcConfig, [], { - sharedDependencies: { - "react": { - requiredVersion: "1.2.3" - } - } - }); - - const result = findPlugin(config, matchConstructorName(ModuleFederationPlugin.name)); - - expect(prepareModuleFederationPluginForSnapshot(result.plugin as WebpackPluginInstance)).toMatchSnapshot(); - }); - - test("when overriding options are provided for a default shared dependency, use the consumer option", () => { - const config = defineBuildHostConfig(SwcConfig, [], { - sharedDependencies: { - "react": { - eager: false, - singleton: false - } - } - }); - - const result = findPlugin(config, matchConstructorName(ModuleFederationPlugin.name)); - - expect(prepareModuleFederationPluginForSnapshot(result.plugin as WebpackPluginInstance)).toMatchSnapshot(); - }); - - test("when the router is react-router, add react-router shared dependencies", () => { - const config = defineBuildHostConfig(SwcConfig, [], { - features: { - router: "react-router" - } - }); - - const result = findPlugin(config, matchConstructorName(ModuleFederationPlugin.name)); - - expect(prepareModuleFederationPluginForSnapshot(result.plugin as WebpackPluginInstance)).toMatchSnapshot(); - }); - - test("when msw is activated, add msw shared dependency", () => { - const config = defineBuildHostConfig(SwcConfig, [], { - features: { - msw: true - } - }); - - const result = findPlugin(config, matchConstructorName(ModuleFederationPlugin.name)); - - expect(prepareModuleFederationPluginForSnapshot(result.plugin as WebpackPluginInstance)).toMatchSnapshot(); - }); - - test("when i18next is activated, add i18next shared dependency and requiredVersion: false to the react shared dependency definition", () => { - const config = defineBuildHostConfig(SwcConfig, [], { - features: { - i18next: true - } - }); - - const result = findPlugin(config, matchConstructorName(ModuleFederationPlugin.name)); - - expect(prepareModuleFederationPluginForSnapshot(result.plugin as WebpackPluginInstance)).toMatchSnapshot(); - }); - - test("when additional plugins are provided, the plugins are added to the configuration", () => { - const config = defineBuildHostConfig(SwcConfig, [], { - plugins: [new DummyPlugin({})] - }); - - const result = findPlugin(config, matchConstructorName(DummyPlugin.name)); - - expect(result).toBeDefined(); - }); - - test("when configuration transformers are provided, the transformers are applied to the configuration", () => { - const result = defineBuildHostConfig(SwcConfig, [], { - transformers: [(config: WebpackConfig) => { - config.entry = "updated by the dummy transformer"; - - return config; - }] - }); - - expect(result.entry).toBe("updated by the dummy transformer"); - }); - - test("when no options are provided for the html webpack plugin, add a public path option", () => { - const config = defineBuildHostConfig(SwcConfig, []); - - const result = findPlugin(config, matchConstructorName(HtmlWebpackPlugin.name)); - - // This is an option that is relative to the environment running the test and breaks on CI. - delete ((result.plugin as WebpackPluginInstance).userOptions as HtmlWebpackPlugin.Options)["template"]; - // This is an option that is relative to the environment running the test and breaks on CI. - delete ((result.plugin as WebpackPluginInstance).options as HtmlWebpackPlugin.Options)["template"]; - - expect(result.plugin).toMatchSnapshot(); - }); - - test("when options others than the public path option are provided for the html webpack plugin, add a public path option", () => { - const config = defineBuildHostConfig(SwcConfig, [], { - htmlWebpackPluginOptions: { - favicon: "toto.png" - } - }); - - const result = findPlugin(config, matchConstructorName(HtmlWebpackPlugin.name)); - - expect(result.plugin).toMatchSnapshot(); - }); - - test("when a public path option is provided for the html webpack plugin, do not alter the provided public path option", () => { - const config = defineBuildHostConfig(SwcConfig, [], { - htmlWebpackPluginOptions: { - publicPath: "/toto" - } - }); - - const result = findPlugin(config, matchConstructorName(HtmlWebpackPlugin.name)); - - expect(result.plugin).toMatchSnapshot(); - }); -}); - - -describe("defineDevRemoteModuleConfig", () => { - const SwcConfig = defineSwcDevConfig({ - chrome: "116" - }); - - test("the application name is set as the federation plugin application name", () => { - const config = defineDevRemoteModuleConfig(SwcConfig, "remote1", 8081); - const result = findPlugin(config, matchConstructorName(ModuleFederationPlugin.name)); - - expect(prepareModuleFederationPluginForSnapshot(result.plugin as WebpackPluginInstance)).toMatchSnapshot(); - }); - - test("the application name is set as the output unique name", () => { - const config = defineDevRemoteModuleConfig(SwcConfig, "remote1", 8081); - - expect(config.output?.uniqueName).toBe("remote1"); - }); - - test("the port number is set as the dev server port", () => { - const result = defineDevRemoteModuleConfig(SwcConfig, "remote1", 8081); - - // "devServer" does exist but webpack types are a messed. - // eslint-disable-next-line @typescript-eslint/ban-ts-comment - // @ts-ignore - expect(result.devServer.port).toBe(8081); - }); - - test("when no public path is provided, the default public path is \"auto\"", () => { - const config = defineDevRemoteModuleConfig(SwcConfig, "host", 8081); - - expect(config.output?.publicPath).toBe("auto"); - }); - - test("when a public path is provided, use the provided public path", () => { - const config = defineDevRemoteModuleConfig(SwcConfig, "host", 8081, { - publicPath: "http://localhost:8081/" - }); - - expect(config.output?.publicPath).toBe("http://localhost:8081/"); - }); - - test("the module federation plugin configuration includes the default shared dependencies", () => { - const config = defineDevRemoteModuleConfig(SwcConfig, "remote1", 8081); - const result = findPlugin(config, matchConstructorName(ModuleFederationPlugin.name)); - - expect(prepareModuleFederationPluginForSnapshot(result.plugin as WebpackPluginInstance)).toMatchSnapshot(); - }); - - test("when additional shared dependencies are provided, add the dependencies to the module federation plugin configuration", () => { - const config = defineDevRemoteModuleConfig(SwcConfig, "remote1", 8081, { - sharedDependencies: { - "first": { - singleton: true - }, - "second": { - eager: true, - singleton: true - } - } - }); - - const result = findPlugin(config, matchConstructorName(ModuleFederationPlugin.name)); - - expect(prepareModuleFederationPluginForSnapshot(result.plugin as WebpackPluginInstance)).toMatchSnapshot(); - }); - - test("when additional options are provided for an existing default shared dependency, add the consumer options to the default options", () => { - const config = defineDevRemoteModuleConfig(SwcConfig, "remote1", 8081, { - sharedDependencies: { - "react": { - requiredVersion: "1.2.3" - } - } - }); - - const result = findPlugin(config, matchConstructorName(ModuleFederationPlugin.name)); - - expect(prepareModuleFederationPluginForSnapshot(result.plugin as WebpackPluginInstance)).toMatchSnapshot(); - }); - - test("when overriding options are provided for a default shared dependency, use the consumer option", () => { - const config = defineDevRemoteModuleConfig(SwcConfig, "remote1", 8081, { - sharedDependencies: { - "react": { - eager: false, - singleton: false - } - } - }); - - const result = findPlugin(config, matchConstructorName(ModuleFederationPlugin.name)); - - expect(prepareModuleFederationPluginForSnapshot(result.plugin as WebpackPluginInstance)).toMatchSnapshot(); - }); - - test("when the router is react-router, add react-router shared dependencies", () => { - const config = defineDevRemoteModuleConfig(SwcConfig, "remote1", 8081, { - features: { - router: "react-router" - } - }); - - const result = findPlugin(config, matchConstructorName(ModuleFederationPlugin.name)); - - expect(prepareModuleFederationPluginForSnapshot(result.plugin as WebpackPluginInstance)).toMatchSnapshot(); - }); - - test("when msw is activated, add msw shared dependency", () => { - const config = defineDevRemoteModuleConfig(SwcConfig, "remote1", 8081, { - features: { - msw: true - } - }); - - const result = findPlugin(config, matchConstructorName(ModuleFederationPlugin.name)); - - expect(prepareModuleFederationPluginForSnapshot(result.plugin as WebpackPluginInstance)).toMatchSnapshot(); - }); - - test("when i18next is activated, add i18next shared dependency and requiredVersion: false to the react shared dependency definition", () => { - const config = defineDevRemoteModuleConfig(SwcConfig, "remote1", 8081, { - features: { - i18next: true - } - }); - - const result = findPlugin(config, matchConstructorName(ModuleFederationPlugin.name)); - - expect(prepareModuleFederationPluginForSnapshot(result.plugin as WebpackPluginInstance)).toMatchSnapshot(); - }); - - test("access control headers are added to the dev server configuration", () => { - const result = defineDevRemoteModuleConfig(SwcConfig, "remote1", 8081); - - // "devServer" does exist but webpack types are a messed. - // eslint-disable-next-line @typescript-eslint/ban-ts-comment - // @ts-ignore - expect(result.devServer.headers["Access-Control-Allow-Origin"]).toBe("*"); - }); - - test("when additional plugins are provided, the plugins are added to the configuration", () => { - const config = defineDevRemoteModuleConfig(SwcConfig, "remote1", 8081, { - plugins: [new DummyPlugin({})] - }); - - const result = findPlugin(config, matchConstructorName(DummyPlugin.name)); - - expect(result).toBeDefined(); - }); - - test("when additional configuration transformers are provided, the transformers are applied to the configuration", () => { - const dummyTransformer = (config: WebpackConfig) => { - config.entry = "updated by the dummy transformer"; - - return config; - }; - - const result = defineDevRemoteModuleConfig(SwcConfig, "remote1", 8081, { - transformers: [dummyTransformer] - }); - - expect(result.entry).toBe("updated by the dummy transformer"); - }); -}); - -describe("defineBuildRemoteModuleConfig", () => { - const SwcConfig = defineSwcBuildConfig({ - chrome: "116" - }); - - test("the application name is set as the federation plugin application name", () => { - const config = defineBuildRemoteModuleConfig(SwcConfig, "remote1"); - const result = findPlugin(config, matchConstructorName(ModuleFederationPlugin.name)); - - expect(prepareModuleFederationPluginForSnapshot(result.plugin as WebpackPluginInstance)).toMatchSnapshot(); - }); - - test("when no public path is provided, the default public path is \"auto\"", () => { - const config = defineBuildRemoteModuleConfig(SwcConfig, "host"); - - expect(config.output?.publicPath).toBe("auto"); - }); - - test("when a public path is provided, use the provided public path", () => { - const config = defineBuildRemoteModuleConfig(SwcConfig, "host", { - publicPath: "http://localhost:8080/" - }); - - expect(config.output?.publicPath).toBe("http://localhost:8080/"); - }); - - test("the module federation plugin configuration includes the default shared dependencies", () => { - const config = defineBuildRemoteModuleConfig(SwcConfig, "remote1"); - const result = findPlugin(config, matchConstructorName(ModuleFederationPlugin.name)); - - expect(prepareModuleFederationPluginForSnapshot(result.plugin as WebpackPluginInstance)).toMatchSnapshot(); - }); - - test("when additional shared dependencies are provided, add the dependencies to the module federation plugin configuration", () => { - const config = defineBuildRemoteModuleConfig(SwcConfig, "remote1", { - sharedDependencies: { - "first": { - singleton: true - }, - "second": { - eager: true, - singleton: true - } - } - }); - - const result = findPlugin(config, matchConstructorName(ModuleFederationPlugin.name)); - - expect(prepareModuleFederationPluginForSnapshot(result.plugin as WebpackPluginInstance)).toMatchSnapshot(); - }); - - test("when additional options are provided for an existing default shared dependency, add the consumer options to the default options", () => { - const config = defineBuildRemoteModuleConfig(SwcConfig, "remote1", { - sharedDependencies: { - "react": { - requiredVersion: "1.2.3" - } - } - }); - - const result = findPlugin(config, matchConstructorName(ModuleFederationPlugin.name)); - - expect(prepareModuleFederationPluginForSnapshot(result.plugin as WebpackPluginInstance)).toMatchSnapshot(); - }); - - test("when overriding options are provided for a default shared dependency, use the consumer option", () => { - const config = defineBuildRemoteModuleConfig(SwcConfig, "remote1", { - sharedDependencies: { - "react": { - eager: false, - singleton: false - } - } - }); - - const result = findPlugin(config, matchConstructorName(ModuleFederationPlugin.name)); - - expect(prepareModuleFederationPluginForSnapshot(result.plugin as WebpackPluginInstance)).toMatchSnapshot(); - }); - - test("when the router is react-router, add react-router shared dependencies", () => { - const config = defineBuildRemoteModuleConfig(SwcConfig, "remote1", { - features: { - router: "react-router" - } - }); - - const result = findPlugin(config, matchConstructorName(ModuleFederationPlugin.name)); - - expect(prepareModuleFederationPluginForSnapshot(result.plugin as WebpackPluginInstance)).toMatchSnapshot(); - }); - - test("when msw is activated, add msw shared dependency", () => { - const config = defineBuildRemoteModuleConfig(SwcConfig, "remote1", { - features: { - msw: true - } - }); - - const result = findPlugin(config, matchConstructorName(ModuleFederationPlugin.name)); - - expect(prepareModuleFederationPluginForSnapshot(result.plugin as WebpackPluginInstance)).toMatchSnapshot(); - }); - - test("when i18next is activated, add i18next shared dependency and requiredVersion: false to the react shared dependency definition", () => { - const config = defineBuildRemoteModuleConfig(SwcConfig, "remote1", { - features: { - i18next: true - } - }); - - const result = findPlugin(config, matchConstructorName(ModuleFederationPlugin.name)); - - expect(prepareModuleFederationPluginForSnapshot(result.plugin as WebpackPluginInstance)).toMatchSnapshot(); - }); - - test("when additional plugins are provided, the plugins are added to the configuration", () => { - const config = defineBuildRemoteModuleConfig(SwcConfig, "remote1", { - plugins: [new DummyPlugin({})] - }); - - const result = findPlugin(config, matchConstructorName(DummyPlugin.name)); - - expect(result).toBeDefined(); - }); - - test("when configuration transformers are provided, the transformers are applied to the configuration", () => { - const dummyTransformer = (config: WebpackConfig) => { - config.entry = "updated by the dummy transformer"; - - return config; - }; - - const result = defineBuildRemoteModuleConfig(SwcConfig, "remote1", { - transformers: [dummyTransformer] - }); - - expect(result.entry).toBe("updated by the dummy transformer"); - }); -}); - -describe("defineHostModuleFederationPluginOptions", () => { - test("merge the default options with the provided options", () => { - const result = defineHostModuleFederationPluginOptions([], { - runtime: "a-custom-runtime-name" - }); - - expect(result.runtime).toBe("a-custom-runtime-name"); - }); - - test("merge the shared dependencies with the default shared dependencies", () => { - const result = defineHostModuleFederationPluginOptions([], { - shared: { - "react": { - singleton: false, - requiredVersion: "1.2.3" - }, - "first": { - singleton: true - }, - "second": { - eager: true, - singleton: true - } - } - }); - - // eslint-disable-next-line @typescript-eslint/ban-ts-comment - // @ts-ignore - expect(result.shared.react).toBeDefined(); - // eslint-disable-next-line @typescript-eslint/ban-ts-comment - // @ts-ignore - expect(result.shared.react.singleton).toBeFalsy(); - // eslint-disable-next-line @typescript-eslint/ban-ts-comment - // @ts-ignore - expect(result.shared.react.requiredVersion).toBe("1.2.3"); - // eslint-disable-next-line @typescript-eslint/ban-ts-comment - // @ts-ignore - expect(result.shared.first).toBeDefined(); - // eslint-disable-next-line @typescript-eslint/ban-ts-comment - // @ts-ignore - expect(result.shared.second).toBeDefined(); - }); -}); - -describe("defineRemoteModuleFederationPluginOptions", () => { - test("merge the default options with the provided options", () => { - const result = defineRemoteModuleFederationPluginOptions("remote1", { - runtime: "a-custom-runtime-name" - }); - - expect(result.runtime).toBe("a-custom-runtime-name"); - }); - - test("merge the shared dependencies with the default shared dependencies", () => { - const result = defineRemoteModuleFederationPluginOptions("remote1", { - shared: { - "react": { - singleton: false, - requiredVersion: "1.2.3" - }, - "first": { - singleton: true - }, - "second": { - eager: true, - singleton: true - } - } - }); - - // eslint-disable-next-line @typescript-eslint/ban-ts-comment - // @ts-ignore - expect(result.shared.react).toBeDefined(); - // eslint-disable-next-line @typescript-eslint/ban-ts-comment - // @ts-ignore - expect(result.shared.react.singleton).toBeFalsy(); - // eslint-disable-next-line @typescript-eslint/ban-ts-comment - // @ts-ignore - expect(result.shared.react.requiredVersion).toBe("1.2.3"); - // eslint-disable-next-line @typescript-eslint/ban-ts-comment - // @ts-ignore - expect(result.shared.first).toBeDefined(); - // eslint-disable-next-line @typescript-eslint/ban-ts-comment - // @ts-ignore - expect(result.shared.second).toBeDefined(); - }); - - test("should provide additional \"exposes\"", () => { - const result = defineRemoteModuleFederationPluginOptions("remote1", { - exposes: { - "custom-file.js": "./src/custom-file.js" - } - }); - - expect(Object.keys(result.exposes!).length).toBe(2); - expect(Object.values(result.exposes!)[1]).toBe("./src/custom-file.js"); - }); -}); diff --git a/packages/webpack-configs/tsup.build.ts b/packages/webpack-configs/tsup.build.ts deleted file mode 100644 index 0cf229c86..000000000 --- a/packages/webpack-configs/tsup.build.ts +++ /dev/null @@ -1,11 +0,0 @@ -import { defineBuildConfig } from "@workleap/tsup-configs"; - -export default defineBuildConfig({ - // Temporary fix to support using "node:path". - platform: undefined, - entry: [ - "./src/index.ts", - "./src/sharedDependenciesResolutionPlugin.ts", - "./src/nonCacheableRemoteEntryPlugin.ts" - ] -}); diff --git a/packages/webpack-configs/tsup.dev.ts b/packages/webpack-configs/tsup.dev.ts deleted file mode 100644 index ce9176877..000000000 --- a/packages/webpack-configs/tsup.dev.ts +++ /dev/null @@ -1,11 +0,0 @@ -import { defineDevConfig } from "@workleap/tsup-configs"; - -export default defineDevConfig({ - // Temporary fix to support using "node:path". - platform: undefined, - entry: [ - "./src/index.ts", - "./src/sharedDependenciesResolutionPlugin.ts", - "./src/nonCacheableRemoteEntryPlugin.ts" - ] -}); diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 03f7d08dd..732a17679 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -12,17 +12,17 @@ importers: specifier: 0.5.0 version: 0.5.0 '@changesets/cli': - specifier: 2.27.9 - version: 2.27.9 + specifier: 2.27.10 + version: 2.27.10 '@types/node': - specifier: 22.9.0 - version: 22.9.0 + specifier: 22.10.2 + version: 22.10.2 '@typescript-eslint/parser': - specifier: 8.13.0 - version: 8.13.0(eslint@8.57.0)(typescript@5.5.4) + specifier: 8.18.0 + version: 8.18.0(eslint@8.57.0)(typescript@5.5.4) '@workleap/eslint-plugin': - specifier: 3.2.3 - version: 3.2.3(@typescript-eslint/parser@8.13.0(eslint@8.57.0)(typescript@5.5.4))(eslint@8.57.0)(jest@29.7.0(@types/node@22.9.0)(ts-node@10.9.2(@swc/core@1.8.0)(@types/node@22.9.0)(typescript@5.5.4)))(typescript@5.5.4) + specifier: 3.2.5 + version: 3.2.5(@typescript-eslint/parser@8.18.0(eslint@8.57.0)(typescript@5.5.4))(eslint@8.57.0)(jest@29.7.0(@types/node@22.10.2)(ts-node@10.9.2(@swc/core@1.10.1(@swc/helpers@0.5.15))(@types/node@22.10.2)(typescript@5.5.4)))(typescript@5.5.4) '@workleap/typescript-configs': specifier: 3.0.2 version: 3.0.2(typescript@5.5.4) @@ -35,55 +35,58 @@ importers: installed-check: specifier: 9.3.0 version: 9.3.0 - jest: - specifier: 29.7.0 - version: 29.7.0(@types/node@22.9.0)(ts-node@10.9.2(@swc/core@1.8.0)(@types/node@22.9.0)(typescript@5.5.4)) knip: - specifier: 5.36.2 - version: 5.36.2(@types/node@22.9.0)(typescript@5.5.4) + specifier: 5.40.0 + version: 5.40.0(@types/node@22.10.2)(typescript@5.5.4) + pkg-pr-new: + specifier: 0.0.37 + version: 0.0.37 retypeapp: specifier: 3.6.0 version: 3.6.0 - ts-node: - specifier: 10.9.2 - version: 10.9.2(@swc/core@1.8.0(@swc/helpers@0.5.13))(@types/node@22.9.0)(typescript@5.5.4) + syncpack: + specifier: 13.0.0 + version: 13.0.0(typescript@5.5.4) turbo: - specifier: 1.13.3 - version: 1.13.3 + specifier: 2.3.3 + version: 2.3.3 typescript: specifier: 5.5.4 version: 5.5.4 packages/core: dependencies: + '@types/react': + specifier: 19.0.1 + version: 19.0.1 eventemitter3: specifier: 5.0.1 version: 5.0.1 - react-dom: - specifier: '*' - version: 18.3.1(react@18.3.1) devDependencies: + '@rsbuild/plugin-react': + specifier: 1.1.0 + version: 1.1.0(@rsbuild/core@1.1.10) + '@rslib/core': + specifier: 0.1.4 + version: 0.1.4(typescript@5.5.4) '@swc/core': - specifier: 1.8.0 - version: 1.8.0(@swc/helpers@0.5.13) + specifier: 1.10.1 + version: 1.10.1(@swc/helpers@0.5.15) '@swc/jest': specifier: 0.2.37 - version: 0.2.37(@swc/core@1.8.0(@swc/helpers@0.5.13)) + version: 0.2.37(@swc/core@1.10.1(@swc/helpers@0.5.15)) '@types/jest': specifier: 29.5.14 version: 29.5.14 - '@types/react': - specifier: 18.3.12 - version: 18.3.12 + '@typescript-eslint/parser': + specifier: 8.18.0 + version: 8.18.0(eslint@8.57.0)(typescript@5.5.4) '@workleap/eslint-plugin': - specifier: 3.2.3 - version: 3.2.3(@typescript-eslint/parser@8.13.0(eslint@8.57.0)(typescript@5.5.4))(eslint@8.57.0)(jest@29.7.0(@types/node@22.9.0)(ts-node@10.9.2(@swc/core@1.8.0)(@types/node@22.9.0)(typescript@5.5.4)))(typescript@5.5.4) + specifier: 3.2.5 + version: 3.2.5(@typescript-eslint/parser@8.18.0(eslint@8.57.0)(typescript@5.5.4))(eslint@8.57.0)(jest@29.7.0(@types/node@22.10.2)(ts-node@10.9.2(@swc/core@1.10.1(@swc/helpers@0.5.15))(@types/node@22.10.2)(typescript@5.5.4)))(typescript@5.5.4) '@workleap/swc-configs': specifier: 2.2.3 - version: 2.2.3(@swc/core@1.8.0(@swc/helpers@0.5.13))(@swc/helpers@0.5.13)(@swc/jest@0.2.37(@swc/core@1.8.0(@swc/helpers@0.5.13)))(browserslist@4.24.2) - '@workleap/tsup-configs': - specifier: 3.0.6 - version: 3.0.6(tsup@8.3.5(@swc/core@1.8.0)(jiti@2.4.0)(postcss@8.4.49)(tsx@4.19.2)(typescript@5.5.4)(yaml@2.6.0))(typescript@5.5.4) + version: 2.2.3(@swc/core@1.10.1(@swc/helpers@0.5.15))(@swc/helpers@0.5.15)(@swc/jest@0.2.37(@swc/core@1.10.1(@swc/helpers@0.5.15)))(browserslist@4.24.3) '@workleap/typescript-configs': specifier: 3.0.2 version: 3.0.2(typescript@5.5.4) @@ -92,13 +95,13 @@ importers: version: 8.57.0 jest: specifier: 29.7.0 - version: 29.7.0(@types/node@22.9.0)(ts-node@10.9.2(@swc/core@1.8.0)(@types/node@22.9.0)(typescript@5.5.4)) + version: 29.7.0(@types/node@22.10.2)(ts-node@10.9.2(@swc/core@1.10.1(@swc/helpers@0.5.15))(@types/node@22.10.2)(typescript@5.5.4)) react: - specifier: 18.3.1 - version: 18.3.1 - tsup: - specifier: 8.3.5 - version: 8.3.5(@swc/core@1.8.0)(jiti@2.4.0)(postcss@8.4.49)(tsx@4.19.2)(typescript@5.5.4)(yaml@2.6.0) + specifier: 19.0.0 + version: 19.0.0 + ts-node: + specifier: 10.9.2 + version: 10.9.2(@swc/core@1.10.1)(@types/node@22.10.2)(typescript@5.5.4) typescript: specifier: 5.5.4 version: 5.5.4 @@ -108,34 +111,34 @@ importers: '@squide/core': specifier: workspace:* version: link:../core + '@types/react': + specifier: 19.0.1 + version: 19.0.1 memoize: specifier: 10.0.0 version: 10.0.0 devDependencies: + '@rslib/core': + specifier: 0.1.4 + version: 0.1.4(typescript@5.5.4) '@swc/core': - specifier: 1.8.0 - version: 1.8.0(@swc/helpers@0.5.13) + specifier: 1.10.1 + version: 1.10.1(@swc/helpers@0.5.15) '@swc/jest': specifier: 0.2.37 - version: 0.2.37(@swc/core@1.8.0(@swc/helpers@0.5.13)) + version: 0.2.37(@swc/core@1.10.1(@swc/helpers@0.5.15)) '@types/jest': specifier: 29.5.14 version: 29.5.14 - '@types/react': - specifier: 18.3.12 - version: 18.3.12 - '@types/react-dom': - specifier: 18.3.1 - version: 18.3.1 + '@typescript-eslint/parser': + specifier: 8.18.0 + version: 8.18.0(eslint@8.57.0)(typescript@5.5.4) '@workleap/eslint-plugin': - specifier: 3.2.3 - version: 3.2.3(@typescript-eslint/parser@8.13.0(eslint@8.57.0)(typescript@5.5.4))(eslint@8.57.0)(jest@29.7.0(@types/node@22.9.0)(ts-node@10.9.2(@swc/core@1.8.0)(@types/node@22.9.0)(typescript@5.5.4)))(typescript@5.5.4) + specifier: 3.2.5 + version: 3.2.5(@typescript-eslint/parser@8.18.0(eslint@8.57.0)(typescript@5.5.4))(eslint@8.57.0)(jest@29.7.0(@types/node@22.10.2)(ts-node@10.9.2(@swc/core@1.10.1(@swc/helpers@0.5.15))(@types/node@22.10.2)(typescript@5.5.4)))(typescript@5.5.4) '@workleap/swc-configs': specifier: 2.2.3 - version: 2.2.3(@swc/core@1.8.0(@swc/helpers@0.5.13))(@swc/helpers@0.5.13)(@swc/jest@0.2.37(@swc/core@1.8.0(@swc/helpers@0.5.13)))(browserslist@4.24.2) - '@workleap/tsup-configs': - specifier: 3.0.6 - version: 3.0.6(tsup@8.3.5(@swc/core@1.8.0)(jiti@2.4.0)(postcss@8.4.49)(tsx@4.19.2)(typescript@5.5.4)(yaml@2.6.0))(typescript@5.5.4) + version: 2.2.3(@swc/core@1.10.1(@swc/helpers@0.5.15))(@swc/helpers@0.5.15)(@swc/jest@0.2.37(@swc/core@1.10.1(@swc/helpers@0.5.15)))(browserslist@4.24.3) '@workleap/typescript-configs': specifier: 3.0.2 version: 3.0.2(typescript@5.5.4) @@ -144,16 +147,16 @@ importers: version: 8.57.0 jest: specifier: 29.7.0 - version: 29.7.0(@types/node@22.9.0)(ts-node@10.9.2(@swc/core@1.8.0)(@types/node@22.9.0)(typescript@5.5.4)) + version: 29.7.0(@types/node@22.10.2)(ts-node@10.9.2(@swc/core@1.10.1(@swc/helpers@0.5.15))(@types/node@22.10.2)(typescript@5.5.4)) jest-environment-jsdom: specifier: 29.7.0 version: 29.7.0 - ts-jest: - specifier: 29.2.5 - version: 29.2.5(@babel/core@7.26.0)(@jest/transform@29.7.0)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.26.0))(esbuild@0.24.0)(jest@29.7.0(@types/node@22.9.0)(ts-node@10.9.2(@swc/core@1.8.0)(@types/node@22.9.0)(typescript@5.5.4)))(typescript@5.5.4) - tsup: - specifier: 8.3.5 - version: 8.3.5(@swc/core@1.8.0)(jiti@2.4.0)(postcss@8.4.49)(tsx@4.19.2)(typescript@5.5.4)(yaml@2.6.0) + react: + specifier: 19.0.0 + version: 19.0.0 + ts-node: + specifier: 10.9.2 + version: 10.9.2(@swc/core@1.10.1)(@types/node@22.10.2)(typescript@5.5.4) typescript: specifier: 5.5.4 version: 5.5.4 @@ -164,21 +167,21 @@ importers: specifier: workspace:* version: link:../core devDependencies: + '@rslib/core': + specifier: 0.1.4 + version: 0.1.4(typescript@5.5.4) + '@typescript-eslint/parser': + specifier: 8.18.0 + version: 8.18.0(eslint@8.57.0)(typescript@5.5.4) '@workleap/eslint-plugin': - specifier: 3.2.3 - version: 3.2.3(@typescript-eslint/parser@8.13.0(eslint@8.57.0)(typescript@5.5.4))(eslint@8.57.0)(jest@29.7.0(@types/node@22.9.0)(ts-node@10.9.2(@swc/core@1.8.0)(@types/node@22.9.0)(typescript@5.5.4)))(typescript@5.5.4) - '@workleap/tsup-configs': - specifier: 3.0.6 - version: 3.0.6(tsup@8.3.5(@swc/core@1.8.0)(jiti@2.4.0)(postcss@8.4.49)(tsx@4.19.2)(typescript@5.5.4)(yaml@2.6.0))(typescript@5.5.4) + specifier: 3.2.5 + version: 3.2.5(@typescript-eslint/parser@8.18.0(eslint@8.57.0)(typescript@5.5.4))(eslint@8.57.0)(jest@29.7.0(@types/node@22.10.2)(ts-node@10.9.2(@swc/core@1.10.1(@swc/helpers@0.5.15))(@types/node@22.10.2)(typescript@5.5.4)))(typescript@5.5.4) '@workleap/typescript-configs': specifier: 3.0.2 version: 3.0.2(typescript@5.5.4) eslint: specifier: 8.57.0 version: 8.57.0 - tsup: - specifier: 8.3.5 - version: 8.3.5(@swc/core@1.8.0)(jiti@2.4.0)(postcss@8.4.49)(tsx@4.19.2)(typescript@5.5.4)(yaml@2.6.0) typescript: specifier: 5.5.4 version: 5.5.4 @@ -199,38 +202,44 @@ importers: version: link:../react-router '@tanstack/react-query': specifier: '*' - version: 5.59.19(react@18.3.1) + version: 5.62.7(react@19.0.0) + '@types/react': + specifier: 19.0.1 + version: 19.0.1 + '@types/react-dom': + specifier: 19.0.2 + version: 19.0.2(@types/react@19.0.1) devDependencies: + '@rsbuild/plugin-react': + specifier: 1.1.0 + version: 1.1.0(@rsbuild/core@1.1.10) + '@rslib/core': + specifier: 0.1.4 + version: 0.1.4(typescript@5.5.4) '@swc/core': - specifier: 1.8.0 - version: 1.8.0(@swc/helpers@0.5.13) + specifier: 1.10.1 + version: 1.10.1(@swc/helpers@0.5.15) '@swc/jest': specifier: 0.2.37 - version: 0.2.37(@swc/core@1.8.0(@swc/helpers@0.5.13)) + version: 0.2.37(@swc/core@1.10.1(@swc/helpers@0.5.15)) '@testing-library/jest-dom': specifier: 6.6.3 version: 6.6.3 '@testing-library/react': - specifier: 16.0.1 - version: 16.0.1(@testing-library/dom@10.4.0)(@types/react-dom@18.3.1)(@types/react@18.3.12)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + specifier: 16.1.0 + version: 16.1.0(@testing-library/dom@10.4.0)(@types/react-dom@19.0.2(@types/react@19.0.1))(@types/react@19.0.1)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) '@types/jest': specifier: 29.5.14 version: 29.5.14 - '@types/react': - specifier: 18.3.12 - version: 18.3.12 - '@types/react-dom': - specifier: 18.3.1 - version: 18.3.1 + '@typescript-eslint/parser': + specifier: 8.18.0 + version: 8.18.0(eslint@8.57.0)(typescript@5.5.4) '@workleap/eslint-plugin': - specifier: 3.2.3 - version: 3.2.3(@typescript-eslint/parser@8.13.0(eslint@8.57.0)(typescript@5.5.4))(eslint@8.57.0)(jest@29.7.0(@types/node@22.9.0)(ts-node@10.9.2(@swc/core@1.8.0)(@types/node@22.9.0)(typescript@5.5.4)))(typescript@5.5.4) + specifier: 3.2.5 + version: 3.2.5(@typescript-eslint/parser@8.18.0(eslint@8.57.0)(typescript@5.5.4))(eslint@8.57.0)(jest@29.7.0(@types/node@22.10.2)(ts-node@10.9.2(@swc/core@1.10.1(@swc/helpers@0.5.15))(@types/node@22.10.2)(typescript@5.5.4)))(typescript@5.5.4) '@workleap/swc-configs': specifier: 2.2.3 - version: 2.2.3(@swc/core@1.8.0(@swc/helpers@0.5.13))(@swc/helpers@0.5.13)(@swc/jest@0.2.37(@swc/core@1.8.0(@swc/helpers@0.5.13)))(browserslist@4.24.2) - '@workleap/tsup-configs': - specifier: 3.0.6 - version: 3.0.6(tsup@8.3.5(@swc/core@1.8.0)(jiti@2.4.0)(postcss@8.4.49)(tsx@4.19.2)(typescript@5.5.4)(yaml@2.6.0))(typescript@5.5.4) + version: 2.2.3(@swc/core@1.10.1(@swc/helpers@0.5.15))(@swc/helpers@0.5.15)(@swc/jest@0.2.37(@swc/core@1.10.1(@swc/helpers@0.5.15)))(browserslist@4.24.3) '@workleap/typescript-configs': specifier: 3.0.2 version: 3.0.2(typescript@5.5.4) @@ -239,28 +248,25 @@ importers: version: 8.57.0 jest: specifier: 29.7.0 - version: 29.7.0(@types/node@22.9.0)(ts-node@10.9.2(@swc/core@1.8.0)(@types/node@22.9.0)(typescript@5.5.4)) + version: 29.7.0(@types/node@22.10.2)(ts-node@10.9.2(@swc/core@1.10.1(@swc/helpers@0.5.15))(@types/node@22.10.2)(typescript@5.5.4)) jest-environment-jsdom: specifier: 29.7.0 version: 29.7.0 msw: - specifier: 2.6.1 - version: 2.6.1(@types/node@22.9.0)(typescript@5.5.4) + specifier: 2.6.9 + version: 2.6.9(@types/node@22.10.2)(typescript@5.5.4) react: - specifier: 18.3.1 - version: 18.3.1 + specifier: 19.0.0 + version: 19.0.0 react-dom: - specifier: 18.3.1 - version: 18.3.1(react@18.3.1) + specifier: 19.0.0 + version: 19.0.0(react@19.0.0) react-router-dom: specifier: 6.27.0 - version: 6.27.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - ts-jest: - specifier: 29.2.5 - version: 29.2.5(@babel/core@7.26.0)(@jest/transform@29.7.0)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.26.0))(esbuild@0.24.0)(jest@29.7.0(@types/node@22.9.0)(ts-node@10.9.2(@swc/core@1.8.0)(@types/node@22.9.0)(typescript@5.5.4)))(typescript@5.5.4) - tsup: - specifier: 8.3.5 - version: 8.3.5(@swc/core@1.8.0)(jiti@2.4.0)(postcss@8.4.49)(tsx@4.19.2)(typescript@5.5.4)(yaml@2.6.0) + version: 6.27.0(react-dom@19.0.0(react@19.0.0))(react@19.0.0) + ts-node: + specifier: 10.9.2 + version: 10.9.2(@swc/core@1.10.1)(@types/node@22.10.2)(typescript@5.5.4) typescript: specifier: 5.5.4 version: 5.5.4 @@ -269,50 +275,53 @@ importers: dependencies: '@honeycombio/opentelemetry-web': specifier: '*' - version: 0.8.1(zone.js@0.14.10) + version: 0.10.0(zone.js@0.14.10) '@opentelemetry/api': specifier: '*' version: 1.9.0 '@opentelemetry/auto-instrumentations-web': specifier: '*' - version: 0.42.0(@opentelemetry/api@1.9.0)(zone.js@0.14.10) + version: 0.44.0(@opentelemetry/api@1.9.0)(zone.js@0.14.10) + '@opentelemetry/instrumentation-fetch': + specifier: '*' + version: 0.56.0(@opentelemetry/api@1.9.0) + '@opentelemetry/sdk-trace-web': + specifier: '*' + version: 1.29.0(@opentelemetry/api@1.9.0) '@squide/firefly': specifier: workspace:* version: link:../firefly + '@types/uuid': + specifier: 10.0.0 + version: 10.0.0 '@workleap/honeycomb': specifier: 1.0.0 - version: 1.0.0(@honeycombio/opentelemetry-web@0.8.1(zone.js@0.14.10))(@opentelemetry/api@1.9.0)(@opentelemetry/auto-instrumentations-web@0.42.0(@opentelemetry/api@1.9.0)(zone.js@0.14.10)) + version: 1.0.0(@honeycombio/opentelemetry-web@0.10.0(zone.js@0.14.10))(@opentelemetry/api@1.9.0)(@opentelemetry/auto-instrumentations-web@0.44.0(@opentelemetry/api@1.9.0)(zone.js@0.14.10)) uuid: - specifier: 11.0.2 - version: 11.0.2 + specifier: 11.0.3 + version: 11.0.3 devDependencies: - '@opentelemetry/instrumentation-fetch': - specifier: '*' - version: 0.55.0(@opentelemetry/api@1.9.0) - '@opentelemetry/sdk-trace-web': - specifier: '*' - version: 1.26.0(@opentelemetry/api@1.9.0) + '@rslib/core': + specifier: 0.1.4 + version: 0.1.4(typescript@5.5.4) '@swc/core': - specifier: 1.8.0 - version: 1.8.0(@swc/helpers@0.5.13) + specifier: 1.10.1 + version: 1.10.1(@swc/helpers@0.5.15) '@swc/jest': specifier: 0.2.37 - version: 0.2.37(@swc/core@1.8.0(@swc/helpers@0.5.13)) + version: 0.2.37(@swc/core@1.10.1(@swc/helpers@0.5.15)) '@types/jest': specifier: 29.5.14 version: 29.5.14 - '@types/uuid': - specifier: 10.0.0 - version: 10.0.0 + '@typescript-eslint/parser': + specifier: 8.18.0 + version: 8.18.0(eslint@8.57.0)(typescript@5.5.4) '@workleap/eslint-plugin': - specifier: 3.2.3 - version: 3.2.3(@typescript-eslint/parser@8.13.0(eslint@8.57.0)(typescript@5.5.4))(eslint@8.57.0)(jest@29.7.0(@types/node@22.9.0)(ts-node@10.9.2(@swc/core@1.8.0)(@types/node@22.9.0)(typescript@5.5.4)))(typescript@5.5.4) + specifier: 3.2.5 + version: 3.2.5(@typescript-eslint/parser@8.18.0(eslint@8.57.0)(typescript@5.5.4))(eslint@8.57.0)(jest@29.7.0(@types/node@22.10.2)(ts-node@10.9.2(@swc/core@1.10.1(@swc/helpers@0.5.15))(@types/node@22.10.2)(typescript@5.5.4)))(typescript@5.5.4) '@workleap/swc-configs': specifier: 2.2.3 - version: 2.2.3(@swc/core@1.8.0(@swc/helpers@0.5.13))(@swc/helpers@0.5.13)(@swc/jest@0.2.37(@swc/core@1.8.0(@swc/helpers@0.5.13)))(browserslist@4.24.2) - '@workleap/tsup-configs': - specifier: 3.0.6 - version: 3.0.6(tsup@8.3.5(@swc/core@1.8.0)(jiti@2.4.0)(postcss@8.4.49)(tsx@4.19.2)(typescript@5.5.4)(yaml@2.6.0))(typescript@5.5.4) + version: 2.2.3(@swc/core@1.10.1(@swc/helpers@0.5.15))(@swc/helpers@0.5.15)(@swc/jest@0.2.37(@swc/core@1.10.1(@swc/helpers@0.5.15)))(browserslist@4.24.3) '@workleap/typescript-configs': specifier: 3.0.2 version: 3.0.2(typescript@5.5.4) @@ -321,62 +330,135 @@ importers: version: 8.57.0 jest: specifier: 29.7.0 - version: 29.7.0(@types/node@22.9.0)(ts-node@10.9.2(@swc/core@1.8.0)(@types/node@22.9.0)(typescript@5.5.4)) - jest-environment-jsdom: + version: 29.7.0(@types/node@22.10.2)(ts-node@10.9.2(@swc/core@1.10.1(@swc/helpers@0.5.15))(@types/node@22.10.2)(typescript@5.5.4)) + ts-node: + specifier: 10.9.2 + version: 10.9.2(@swc/core@1.10.1)(@types/node@22.10.2)(typescript@5.5.4) + typescript: + specifier: 5.5.4 + version: 5.5.4 + + packages/firefly-rsbuild-configs: + dependencies: + '@module-federation/enhanced': + specifier: ^0.8.4 + version: 0.8.4(@rspack/core@1.1.6(@swc/helpers@0.5.15))(react-dom@19.0.0(react@19.0.0))(react@19.0.0)(typescript@5.5.4)(webpack@5.97.1(@swc/core@1.10.1(@swc/helpers@0.5.15))) + '@module-federation/rsbuild-plugin': + specifier: ^0.8.4 + version: 0.8.4(@module-federation/enhanced@0.8.4(@rspack/core@1.1.6(@swc/helpers@0.5.15))(react-dom@19.0.0(react@19.0.0))(react@19.0.0)(typescript@5.5.4)(webpack@5.97.1(@swc/core@1.10.1(@swc/helpers@0.5.15))))(@rsbuild/core@1.1.10) + '@types/node': + specifier: ^22.10.2 + version: 22.10.2 + '@types/semver': + specifier: ^7.5.8 + version: 7.5.8 + '@workleap/rsbuild-configs': + specifier: ^1.0.1 + version: 1.0.1(@rsbuild/core@1.1.10)(@rspack/core@1.1.6(@swc/helpers@0.5.15))(typescript@5.5.4) + deepmerge: + specifier: ^4.3.1 + version: 4.3.1 + semver: + specifier: ^7.6.3 + version: 7.6.3 + devDependencies: + '@rsbuild/core': + specifier: 1.1.10 + version: 1.1.10 + '@rslib/core': + specifier: 0.1.4 + version: 0.1.4(typescript@5.5.4) + '@rspack/core': + specifier: 1.1.6 + version: 1.1.6(@swc/helpers@0.5.15) + '@swc/core': + specifier: 1.10.1 + version: 1.10.1(@swc/helpers@0.5.15) + '@swc/jest': + specifier: 0.2.37 + version: 0.2.37(@swc/core@1.10.1(@swc/helpers@0.5.15)) + '@types/jest': + specifier: 29.5.14 + version: 29.5.14 + '@typescript-eslint/parser': + specifier: 8.18.0 + version: 8.18.0(eslint@8.57.0)(typescript@5.5.4) + '@workleap/eslint-plugin': + specifier: 3.2.5 + version: 3.2.5(@typescript-eslint/parser@8.18.0(eslint@8.57.0)(typescript@5.5.4))(eslint@8.57.0)(jest@29.7.0(@types/node@22.10.2)(ts-node@10.9.2(@swc/core@1.10.1(@swc/helpers@0.5.15))(@types/node@22.10.2)(typescript@5.5.4)))(typescript@5.5.4) + '@workleap/swc-configs': + specifier: 2.2.3 + version: 2.2.3(@swc/core@1.10.1(@swc/helpers@0.5.15))(@swc/helpers@0.5.15)(@swc/jest@0.2.37(@swc/core@1.10.1(@swc/helpers@0.5.15)))(browserslist@4.24.3) + '@workleap/typescript-configs': + specifier: 3.0.2 + version: 3.0.2(typescript@5.5.4) + eslint: + specifier: 8.57.0 + version: 8.57.0 + jest: specifier: 29.7.0 - version: 29.7.0 - ts-jest: - specifier: 29.2.5 - version: 29.2.5(@babel/core@7.26.0)(@jest/transform@29.7.0)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.26.0))(esbuild@0.24.0)(jest@29.7.0(@types/node@22.9.0)(ts-node@10.9.2(@swc/core@1.8.0)(@types/node@22.9.0)(typescript@5.5.4)))(typescript@5.5.4) - tsup: - specifier: 8.3.5 - version: 8.3.5(@swc/core@1.8.0)(jiti@2.4.0)(postcss@8.4.49)(tsx@4.19.2)(typescript@5.5.4)(yaml@2.6.0) + version: 29.7.0(@types/node@22.10.2)(ts-node@10.9.2(@swc/core@1.10.1(@swc/helpers@0.5.15))(@types/node@22.10.2)(typescript@5.5.4)) + ts-node: + specifier: 10.9.2 + version: 10.9.2(@swc/core@1.10.1)(@types/node@22.10.2)(typescript@5.5.4) typescript: specifier: 5.5.4 version: 5.5.4 packages/firefly-webpack-configs: dependencies: - '@squide/webpack-configs': - specifier: workspace:* - version: link:../webpack-configs + '@module-federation/enhanced': + specifier: ^0.8.4 + version: 0.8.4(@rspack/core@1.1.6(@swc/helpers@0.5.15))(react-dom@19.0.0(react@19.0.0))(react@19.0.0)(typescript@5.5.4)(webpack@5.97.1(@swc/core@1.10.1(@swc/helpers@0.5.15))) '@swc/helpers': specifier: '*' - version: 0.5.13 + version: 0.5.15 + '@types/node': + specifier: ^22.10.2 + version: 22.10.2 + '@types/semver': + specifier: ^7.5.8 + version: 7.5.8 '@workleap/webpack-configs': - specifier: 1.5.1 - version: 1.5.1(@swc/core@1.8.0(@swc/helpers@0.5.13))(@swc/helpers@0.5.13)(browserslist@4.24.2)(postcss@8.4.49)(type-fest@4.27.0)(typescript@5.5.4)(webpack-dev-server@5.1.0(webpack@5.96.1(@swc/core@1.8.0(@swc/helpers@0.5.13))))(webpack@5.96.1(@swc/core@1.8.0(@swc/helpers@0.5.13))) + specifier: ^1.5.2 + version: 1.5.2(@rspack/core@1.1.6(@swc/helpers@0.5.15))(@swc/core@1.10.1(@swc/helpers@0.5.15))(@swc/helpers@0.5.15)(browserslist@4.24.3)(postcss@8.4.49)(type-fest@4.30.1)(typescript@5.5.4)(webpack-dev-server@5.2.0(webpack@5.97.1(@swc/core@1.10.1(@swc/helpers@0.5.15))))(webpack@5.97.1(@swc/core@1.10.1(@swc/helpers@0.5.15))) browserslist: specifier: '*' - version: 4.24.2 + version: 4.24.3 + deepmerge: + specifier: ^4.3.1 + version: 4.3.1 + html-webpack-plugin: + specifier: ^5.6.3 + version: 5.6.3(@rspack/core@1.1.6(@swc/helpers@0.5.15))(webpack@5.97.1(@swc/core@1.10.1(@swc/helpers@0.5.15))) postcss: specifier: '*' version: 8.4.49 - webpack-dev-server: - specifier: '>=5.0.0' - version: 5.1.0(webpack@5.96.1(@swc/core@1.8.0(@swc/helpers@0.5.13))) + semver: + specifier: ^7.6.3 + version: 7.6.3 devDependencies: - '@module-federation/enhanced': - specifier: 0.6.16 - version: 0.6.16(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.5.4)(webpack@5.96.1(@swc/core@1.8.0(@swc/helpers@0.5.13))) + '@rslib/core': + specifier: 0.1.4 + version: 0.1.4(typescript@5.5.4) '@swc/core': - specifier: 1.8.0 - version: 1.8.0(@swc/helpers@0.5.13) + specifier: 1.10.1 + version: 1.10.1(@swc/helpers@0.5.15) '@swc/jest': specifier: 0.2.37 - version: 0.2.37(@swc/core@1.8.0(@swc/helpers@0.5.13)) + version: 0.2.37(@swc/core@1.10.1(@swc/helpers@0.5.15)) '@types/jest': specifier: 29.5.14 version: 29.5.14 + '@typescript-eslint/parser': + specifier: 8.18.0 + version: 8.18.0(eslint@8.57.0)(typescript@5.5.4) '@workleap/eslint-plugin': - specifier: 3.2.3 - version: 3.2.3(@typescript-eslint/parser@8.13.0(eslint@8.57.0)(typescript@5.5.4))(eslint@8.57.0)(jest@29.7.0(@types/node@22.9.0)(ts-node@10.9.2(@swc/core@1.8.0)(@types/node@22.9.0)(typescript@5.5.4)))(typescript@5.5.4) + specifier: 3.2.5 + version: 3.2.5(@typescript-eslint/parser@8.18.0(eslint@8.57.0)(typescript@5.5.4))(eslint@8.57.0)(jest@29.7.0(@types/node@22.10.2)(ts-node@10.9.2(@swc/core@1.10.1(@swc/helpers@0.5.15))(@types/node@22.10.2)(typescript@5.5.4)))(typescript@5.5.4) '@workleap/swc-configs': specifier: 2.2.3 - version: 2.2.3(@swc/core@1.8.0(@swc/helpers@0.5.13))(@swc/helpers@0.5.13)(@swc/jest@0.2.37(@swc/core@1.8.0(@swc/helpers@0.5.13)))(browserslist@4.24.2) - '@workleap/tsup-configs': - specifier: 3.0.6 - version: 3.0.6(tsup@8.3.5(@swc/core@1.8.0)(jiti@2.4.0)(postcss@8.4.49)(tsx@4.19.2)(typescript@5.5.4)(yaml@2.6.0))(typescript@5.5.4) + version: 2.2.3(@swc/core@1.10.1(@swc/helpers@0.5.15))(@swc/helpers@0.5.15)(@swc/jest@0.2.37(@swc/core@1.10.1(@swc/helpers@0.5.15)))(browserslist@4.24.3) '@workleap/typescript-configs': specifier: 3.0.2 version: 3.0.2(typescript@5.5.4) @@ -385,56 +467,59 @@ importers: version: 8.57.0 jest: specifier: 29.7.0 - version: 29.7.0(@types/node@22.9.0)(ts-node@10.9.2(@swc/core@1.8.0)(@types/node@22.9.0)(typescript@5.5.4)) + version: 29.7.0(@types/node@22.10.2)(ts-node@10.9.2(@swc/core@1.10.1(@swc/helpers@0.5.15))(@types/node@22.10.2)(typescript@5.5.4)) jest-environment-jsdom: specifier: 29.7.0 version: 29.7.0 - ts-jest: - specifier: 29.2.5 - version: 29.2.5(@babel/core@7.26.0)(@jest/transform@29.7.0)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.26.0))(esbuild@0.24.0)(jest@29.7.0(@types/node@22.9.0)(ts-node@10.9.2(@swc/core@1.8.0)(@types/node@22.9.0)(typescript@5.5.4)))(typescript@5.5.4) - tsup: - specifier: 8.3.5 - version: 8.3.5(@swc/core@1.8.0)(jiti@2.4.0)(postcss@8.4.49)(tsx@4.19.2)(typescript@5.5.4)(yaml@2.6.0) + ts-node: + specifier: 10.9.2 + version: 10.9.2(@swc/core@1.10.1)(@types/node@22.10.2)(typescript@5.5.4) typescript: specifier: 5.5.4 version: 5.5.4 webpack: - specifier: 5.96.1 - version: 5.96.1(@swc/core@1.8.0(@swc/helpers@0.5.13)) + specifier: 5.97.1 + version: 5.97.1(@swc/core@1.10.1(@swc/helpers@0.5.15)) + webpack-dev-server: + specifier: 5.2.0 + version: 5.2.0(webpack@5.97.1(@swc/core@1.10.1(@swc/helpers@0.5.15))) packages/i18next: dependencies: '@formatjs/intl-localematcher': - specifier: 0.5.7 - version: 0.5.7 + specifier: 0.5.9 + version: 0.5.9 '@squide/core': specifier: workspace:* version: link:../core + '@types/react': + specifier: 19.0.1 + version: 19.0.1 devDependencies: + '@rsbuild/plugin-react': + specifier: 1.1.0 + version: 1.1.0(@rsbuild/core@1.1.10) + '@rslib/core': + specifier: 0.1.4 + version: 0.1.4(typescript@5.5.4) '@swc/core': - specifier: 1.8.0 - version: 1.8.0(@swc/helpers@0.5.13) + specifier: 1.10.1 + version: 1.10.1(@swc/helpers@0.5.15) '@swc/jest': specifier: 0.2.37 - version: 0.2.37(@swc/core@1.8.0(@swc/helpers@0.5.13)) + version: 0.2.37(@swc/core@1.10.1(@swc/helpers@0.5.15)) '@types/jest': specifier: 29.5.14 version: 29.5.14 - '@types/react': - specifier: 18.3.12 - version: 18.3.12 - '@types/react-dom': - specifier: 18.3.1 - version: 18.3.1 + '@typescript-eslint/parser': + specifier: 8.18.0 + version: 8.18.0(eslint@8.57.0)(typescript@5.5.4) '@workleap/eslint-plugin': - specifier: 3.2.3 - version: 3.2.3(@typescript-eslint/parser@8.13.0(eslint@8.57.0)(typescript@5.5.4))(eslint@8.57.0)(jest@29.7.0(@types/node@22.9.0)(ts-node@10.9.2(@swc/core@1.8.0)(@types/node@22.9.0)(typescript@5.5.4)))(typescript@5.5.4) + specifier: 3.2.5 + version: 3.2.5(@typescript-eslint/parser@8.18.0(eslint@8.57.0)(typescript@5.5.4))(eslint@8.57.0)(jest@29.7.0(@types/node@22.10.2)(ts-node@10.9.2(@swc/core@1.10.1(@swc/helpers@0.5.15))(@types/node@22.10.2)(typescript@5.5.4)))(typescript@5.5.4) '@workleap/swc-configs': specifier: 2.2.3 - version: 2.2.3(@swc/core@1.8.0(@swc/helpers@0.5.13))(@swc/helpers@0.5.13)(@swc/jest@0.2.37(@swc/core@1.8.0(@swc/helpers@0.5.13)))(browserslist@4.24.2) - '@workleap/tsup-configs': - specifier: 3.0.6 - version: 3.0.6(tsup@8.3.5(@swc/core@1.8.0)(jiti@2.4.0)(postcss@8.4.49)(tsx@4.19.2)(typescript@5.5.4)(yaml@2.6.0))(typescript@5.5.4) + version: 2.2.3(@swc/core@1.10.1(@swc/helpers@0.5.15))(@swc/helpers@0.5.15)(@swc/jest@0.2.37(@swc/core@1.10.1(@swc/helpers@0.5.15)))(browserslist@4.24.3) '@workleap/typescript-configs': specifier: 3.0.2 version: 3.0.2(typescript@5.5.4) @@ -442,32 +527,26 @@ importers: specifier: 8.57.0 version: 8.57.0 i18next: - specifier: 23.16.4 - version: 23.16.4 + specifier: 24.1.0 + version: 24.1.0(typescript@5.5.4) i18next-browser-languagedetector: - specifier: 8.0.0 - version: 8.0.0 + specifier: 8.0.2 + version: 8.0.2 jest: specifier: 29.7.0 - version: 29.7.0(@types/node@22.9.0)(ts-node@10.9.2(@swc/core@1.8.0)(@types/node@22.9.0)(typescript@5.5.4)) + version: 29.7.0(@types/node@22.10.2)(ts-node@10.9.2(@swc/core@1.10.1(@swc/helpers@0.5.15))(@types/node@22.10.2)(typescript@5.5.4)) jest-environment-jsdom: specifier: 29.7.0 version: 29.7.0 react: - specifier: 18.3.1 - version: 18.3.1 - react-dom: - specifier: 18.3.1 - version: 18.3.1(react@18.3.1) + specifier: 19.0.0 + version: 19.0.0 react-i18next: - specifier: 15.1.0 - version: 15.1.0(i18next@23.16.4)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - ts-jest: - specifier: 29.2.5 - version: 29.2.5(@babel/core@7.26.0)(@jest/transform@29.7.0)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.26.0))(esbuild@0.24.0)(jest@29.7.0(@types/node@22.9.0)(ts-node@10.9.2(@swc/core@1.8.0)(@types/node@22.9.0)(typescript@5.5.4)))(typescript@5.5.4) - tsup: - specifier: 8.3.5 - version: 8.3.5(@swc/core@1.8.0)(jiti@2.4.0)(postcss@8.4.49)(tsx@4.19.2)(typescript@5.5.4)(yaml@2.6.0) + specifier: 15.2.0 + version: 15.2.0(i18next@24.1.0(typescript@5.5.4))(react-dom@19.0.0(react@19.0.0))(react@19.0.0) + ts-node: + specifier: 10.9.2 + version: 10.9.2(@swc/core@1.10.1)(@types/node@22.10.2)(typescript@5.5.4) typescript: specifier: 5.5.4 version: 5.5.4 @@ -475,255 +554,1016 @@ importers: packages/module-federation: dependencies: '@module-federation/enhanced': - specifier: 0.6.16 - version: 0.6.16(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.5.4)(webpack@5.96.1(@swc/core@1.8.0(@swc/helpers@0.5.13))) + specifier: 0.8.4 + version: 0.8.4(@rspack/core@1.1.6(@swc/helpers@0.5.15))(react-dom@19.0.0(react@19.0.0))(react@19.0.0)(typescript@5.5.4)(webpack@5.97.1(@swc/core@1.10.1(@swc/helpers@0.5.15))) '@squide/core': specifier: workspace:* version: link:../core devDependencies: + '@rslib/core': + specifier: 0.1.4 + version: 0.1.4(typescript@5.5.4) '@swc/core': - specifier: 1.8.0 - version: 1.8.0(@swc/helpers@0.5.13) + specifier: 1.10.1 + version: 1.10.1(@swc/helpers@0.5.15) '@swc/jest': specifier: 0.2.37 - version: 0.2.37(@swc/core@1.8.0(@swc/helpers@0.5.13)) + version: 0.2.37(@swc/core@1.10.1(@swc/helpers@0.5.15)) '@types/jest': specifier: 29.5.14 version: 29.5.14 - '@types/node': - specifier: 22.9.0 - version: 22.9.0 + '@typescript-eslint/parser': + specifier: 8.18.0 + version: 8.18.0(eslint@8.57.0)(typescript@5.5.4) + '@workleap/eslint-plugin': + specifier: 3.2.5 + version: 3.2.5(@typescript-eslint/parser@8.18.0(eslint@8.57.0)(typescript@5.5.4))(eslint@8.57.0)(jest@29.7.0(@types/node@22.10.2)(ts-node@10.9.2(@swc/core@1.10.1(@swc/helpers@0.5.15))(@types/node@22.10.2)(typescript@5.5.4)))(typescript@5.5.4) + '@workleap/swc-configs': + specifier: 2.2.3 + version: 2.2.3(@swc/core@1.10.1(@swc/helpers@0.5.15))(@swc/helpers@0.5.15)(@swc/jest@0.2.37(@swc/core@1.10.1(@swc/helpers@0.5.15)))(browserslist@4.24.3) + '@workleap/typescript-configs': + specifier: 3.0.2 + version: 3.0.2(typescript@5.5.4) + eslint: + specifier: 8.57.0 + version: 8.57.0 + jest: + specifier: 29.7.0 + version: 29.7.0(@types/node@22.10.2)(ts-node@10.9.2(@swc/core@1.10.1(@swc/helpers@0.5.15))(@types/node@22.10.2)(typescript@5.5.4)) + jest-environment-jsdom: + specifier: 29.7.0 + version: 29.7.0 + ts-node: + specifier: 10.9.2 + version: 10.9.2(@swc/core@1.10.1)(@types/node@22.10.2)(typescript@5.5.4) + typescript: + specifier: 5.5.4 + version: 5.5.4 + + packages/msw: + dependencies: + '@squide/core': + specifier: workspace:* + version: link:../core + devDependencies: + '@rslib/core': + specifier: 0.1.4 + version: 0.1.4(typescript@5.5.4) + '@typescript-eslint/parser': + specifier: 8.18.0 + version: 8.18.0(eslint@8.57.0)(typescript@5.5.4) + '@workleap/eslint-plugin': + specifier: 3.2.5 + version: 3.2.5(@typescript-eslint/parser@8.18.0(eslint@8.57.0)(typescript@5.5.4))(eslint@8.57.0)(jest@29.7.0(@types/node@22.10.2)(ts-node@10.9.2(@swc/core@1.10.1(@swc/helpers@0.5.15))(@types/node@22.10.2)(typescript@5.5.4)))(typescript@5.5.4) + '@workleap/typescript-configs': + specifier: 3.0.2 + version: 3.0.2(typescript@5.5.4) + eslint: + specifier: 8.57.0 + version: 8.57.0 + msw: + specifier: 2.6.9 + version: 2.6.9(@types/node@22.10.2)(typescript@5.5.4) + typescript: + specifier: 5.5.4 + version: 5.5.4 + + packages/react-router: + dependencies: + '@squide/core': + specifier: workspace:* + version: link:../core + '@types/react': + specifier: 19.0.1 + version: 19.0.1 + '@types/react-dom': + specifier: 19.0.2 + version: 19.0.2(@types/react@19.0.1) + memoize: + specifier: 10.0.0 + version: 10.0.0 + devDependencies: + '@rsbuild/plugin-react': + specifier: 1.1.0 + version: 1.1.0(@rsbuild/core@1.1.10) + '@rslib/core': + specifier: 0.1.4 + version: 0.1.4(typescript@5.5.4) + '@swc/core': + specifier: 1.10.1 + version: 1.10.1(@swc/helpers@0.5.15) + '@swc/jest': + specifier: 0.2.37 + version: 0.2.37(@swc/core@1.10.1(@swc/helpers@0.5.15)) + '@testing-library/react': + specifier: 16.1.0 + version: 16.1.0(@testing-library/dom@10.4.0)(@types/react-dom@19.0.2(@types/react@19.0.1))(@types/react@19.0.1)(react-dom@19.0.0(react@19.0.0))(react@19.0.0) + '@types/jest': + specifier: 29.5.14 + version: 29.5.14 + '@typescript-eslint/parser': + specifier: 8.18.0 + version: 8.18.0(eslint@8.57.0)(typescript@5.5.4) + '@workleap/eslint-plugin': + specifier: 3.2.5 + version: 3.2.5(@typescript-eslint/parser@8.18.0(eslint@8.57.0)(typescript@5.5.4))(eslint@8.57.0)(jest@29.7.0(@types/node@22.10.2)(ts-node@10.9.2(@swc/core@1.10.1(@swc/helpers@0.5.15))(@types/node@22.10.2)(typescript@5.5.4)))(typescript@5.5.4) + '@workleap/swc-configs': + specifier: 2.2.3 + version: 2.2.3(@swc/core@1.10.1(@swc/helpers@0.5.15))(@swc/helpers@0.5.15)(@swc/jest@0.2.37(@swc/core@1.10.1(@swc/helpers@0.5.15)))(browserslist@4.24.3) + '@workleap/typescript-configs': + specifier: 3.0.2 + version: 3.0.2(typescript@5.5.4) + eslint: + specifier: 8.57.0 + version: 8.57.0 + jest: + specifier: 29.7.0 + version: 29.7.0(@types/node@22.10.2)(ts-node@10.9.2(@swc/core@1.10.1(@swc/helpers@0.5.15))(@types/node@22.10.2)(typescript@5.5.4)) + jest-environment-jsdom: + specifier: 29.7.0 + version: 29.7.0 + react: + specifier: 19.0.0 + version: 19.0.0 + react-dom: + specifier: 19.0.0 + version: 19.0.0(react@19.0.0) + react-router-dom: + specifier: 6.27.0 + version: 6.27.0(react-dom@19.0.0(react@19.0.0))(react@19.0.0) + ts-node: + specifier: 10.9.2 + version: 10.9.2(@swc/core@1.10.1)(@types/node@22.10.2)(typescript@5.5.4) + typescript: + specifier: 5.5.4 + version: 5.5.4 + + samples/basic-mix/another-remote-module: + dependencies: + '@basic-mix/shared': + specifier: workspace:* + version: link:../shared + '@basic-mix/shell': + specifier: workspace:* + version: link:../shell + '@react-aria/toast': + specifier: 3.0.0-beta.18 + version: 3.0.0-beta.18(react@19.0.0) + '@react-stately/toast': + specifier: 3.0.0-beta.7 + version: 3.0.0-beta.7(react@19.0.0) + '@squide/fakes': + specifier: workspace:* + version: link:../../../packages/fakes + '@squide/firefly': + specifier: workspace:* + version: link:../../../packages/firefly + react: + specifier: 19.0.0 + version: 19.0.0 + react-dom: + specifier: 19.0.0 + version: 19.0.0(react@19.0.0) + react-router-dom: + specifier: 6.27.0 + version: 6.27.0(react-dom@19.0.0(react@19.0.0))(react@19.0.0) + useless-lib: + specifier: 3.0.0 + version: 3.0.0 + devDependencies: + '@squide/firefly-webpack-configs': + specifier: workspace:* + version: link:../../../packages/firefly-webpack-configs + '@swc/core': + specifier: 1.10.1 + version: 1.10.1(@swc/helpers@0.5.15) + '@swc/helpers': + specifier: 0.5.15 + version: 0.5.15 + '@types/react': + specifier: 19.0.1 + version: 19.0.1 + '@types/react-dom': + specifier: 19.0.2 + version: 19.0.2(@types/react@19.0.1) + '@typescript-eslint/parser': + specifier: 8.18.0 + version: 8.18.0(eslint@8.57.0)(typescript@5.5.4) + '@workleap/browserslist-config': + specifier: 2.0.1 + version: 2.0.1 + '@workleap/eslint-plugin': + specifier: 3.2.5 + version: 3.2.5(@typescript-eslint/parser@8.18.0(eslint@8.57.0)(typescript@5.5.4))(eslint@8.57.0)(jest@29.7.0(@types/node@22.10.2)(ts-node@10.9.2(@swc/core@1.10.1(@swc/helpers@0.5.15))(@types/node@22.10.2)(typescript@5.5.4)))(typescript@5.5.4) + '@workleap/swc-configs': + specifier: 2.2.3 + version: 2.2.3(@swc/core@1.10.1(@swc/helpers@0.5.15))(@swc/helpers@0.5.15)(@swc/jest@0.2.37(@swc/core@1.10.1(@swc/helpers@0.5.15)))(browserslist@4.24.3) + '@workleap/typescript-configs': + specifier: 3.0.2 + version: 3.0.2(typescript@5.5.4) + browserslist: + specifier: 4.24.3 + version: 4.24.3 + cross-env: + specifier: 7.0.3 + version: 7.0.3 + eslint: + specifier: 8.57.0 + version: 8.57.0 + http-server: + specifier: 14.1.1 + version: 14.1.1 + nodemon: + specifier: 3.1.9 + version: 3.1.9 + typescript: + specifier: 5.5.4 + version: 5.5.4 + webpack: + specifier: 5.97.1 + version: 5.97.1(@swc/core@1.10.1(@swc/helpers@0.5.15))(webpack-cli@5.1.4) + webpack-cli: + specifier: 5.1.4 + version: 5.1.4(webpack-dev-server@5.2.0)(webpack@5.97.1) + webpack-dev-server: + specifier: 5.2.0 + version: 5.2.0(webpack-cli@5.1.4)(webpack@5.97.1) + + samples/basic-mix/host: + dependencies: + '@basic-mix/local-module': + specifier: workspace:* + version: link:../local-module + '@basic-mix/shared': + specifier: workspace:* + version: link:../shared + '@basic-mix/shell': + specifier: workspace:* + version: link:../shell + '@react-aria/toast': + specifier: 3.0.0-beta.18 + version: 3.0.0-beta.18(react@19.0.0) + '@react-stately/toast': + specifier: 3.0.0-beta.7 + version: 3.0.0-beta.7(react@19.0.0) + '@squide/fakes': + specifier: workspace:* + version: link:../../../packages/fakes + '@squide/firefly': + specifier: workspace:* + version: link:../../../packages/firefly + '@tanstack/react-query': + specifier: 5.62.7 + version: 5.62.7(react@19.0.0) + react: + specifier: 19.0.0 + version: 19.0.0 + react-dom: + specifier: 19.0.0 + version: 19.0.0(react@19.0.0) + react-router-dom: + specifier: 6.27.0 + version: 6.27.0(react-dom@19.0.0(react@19.0.0))(react@19.0.0) + useless-lib: + specifier: ^2.0.0 + version: 2.1.0 + devDependencies: + '@rsbuild/core': + specifier: 1.1.10 + version: 1.1.10 + '@squide/firefly-rsbuild-configs': + specifier: workspace:* + version: link:../../../packages/firefly-rsbuild-configs + '@types/react': + specifier: 19.0.1 + version: 19.0.1 + '@types/react-dom': + specifier: 19.0.2 + version: 19.0.2(@types/react@19.0.1) + '@typescript-eslint/parser': + specifier: 8.18.0 + version: 8.18.0(eslint@8.57.0)(typescript@5.5.4) + '@workleap/browserslist-config': + specifier: 2.0.1 + version: 2.0.1 + '@workleap/eslint-plugin': + specifier: 3.2.5 + version: 3.2.5(@typescript-eslint/parser@8.18.0(eslint@8.57.0)(typescript@5.5.4))(eslint@8.57.0)(jest@29.7.0(@types/node@22.10.2)(ts-node@10.9.2(@swc/core@1.10.1(@swc/helpers@0.5.15))(@types/node@22.10.2)(typescript@5.5.4)))(typescript@5.5.4) + '@workleap/typescript-configs': + specifier: 3.0.2 + version: 3.0.2(typescript@5.5.4) + browserslist: + specifier: 4.24.3 + version: 4.24.3 + copyfiles: + specifier: 2.4.1 + version: 2.4.1 + eslint: + specifier: 8.57.0 + version: 8.57.0 + http-server: + specifier: 14.1.1 + version: 14.1.1 + netlify-cli: + specifier: 17.38.0 + version: 17.38.0(@swc/core@1.10.1)(@types/express@4.17.21)(@types/node@22.10.2)(picomatch@4.0.2) + nodemon: + specifier: 3.1.9 + version: 3.1.9 + typescript: + specifier: 5.5.4 + version: 5.5.4 + + samples/basic-mix/local-module: + dependencies: + '@basic-mix/shared': + specifier: workspace:* + version: link:../shared + '@basic-mix/shell': + specifier: workspace:* + version: link:../shell + '@squide/fakes': + specifier: workspace:* + version: link:../../../packages/fakes + '@squide/firefly': + specifier: workspace:* + version: link:../../../packages/firefly + '@types/react': + specifier: 19.0.1 + version: 19.0.1 + '@types/react-dom': + specifier: 19.0.2 + version: 19.0.2(@types/react@19.0.1) + react: + specifier: 19.0.0 + version: 19.0.0 + react-dom: + specifier: 19.0.0 + version: 19.0.0(react@19.0.0) + react-router-dom: + specifier: 6.27.0 + version: 6.27.0(react-dom@19.0.0(react@19.0.0))(react@19.0.0) + devDependencies: + '@react-aria/toast': + specifier: 3.0.0-beta.18 + version: 3.0.0-beta.18(react@19.0.0) + '@react-stately/toast': + specifier: 3.0.0-beta.7 + version: 3.0.0-beta.7(react@19.0.0) + '@rsbuild/core': + specifier: 1.1.10 + version: 1.1.10 + '@squide/firefly-rsbuild-configs': + specifier: workspace:* + version: link:../../../packages/firefly-rsbuild-configs + '@typescript-eslint/parser': + specifier: 8.18.0 + version: 8.18.0(eslint@8.57.0)(typescript@5.5.4) + '@workleap/browserslist-config': + specifier: 2.0.1 + version: 2.0.1 + '@workleap/eslint-plugin': + specifier: 3.2.5 + version: 3.2.5(@typescript-eslint/parser@8.18.0(eslint@8.57.0)(typescript@5.5.4))(eslint@8.57.0)(jest@29.7.0(@types/node@22.10.2)(ts-node@10.9.2(@swc/core@1.10.1(@swc/helpers@0.5.15))(@types/node@22.10.2)(typescript@5.5.4)))(typescript@5.5.4) + '@workleap/typescript-configs': + specifier: 3.0.2 + version: 3.0.2(typescript@5.5.4) + browserslist: + specifier: 4.24.3 + version: 4.24.3 + eslint: + specifier: 8.57.0 + version: 8.57.0 + nodemon: + specifier: 3.1.9 + version: 3.1.9 + typescript: + specifier: 5.5.4 + version: 5.5.4 + + samples/basic-mix/remote-module: + dependencies: + '@basic-mix/shared': + specifier: workspace:* + version: link:../shared + '@basic-mix/shell': + specifier: workspace:* + version: link:../shell + '@react-aria/toast': + specifier: 3.0.0-beta.18 + version: 3.0.0-beta.18(react@19.0.0) + '@react-stately/toast': + specifier: 3.0.0-beta.7 + version: 3.0.0-beta.7(react@19.0.0) + '@squide/fakes': + specifier: workspace:* + version: link:../../../packages/fakes + '@squide/firefly': + specifier: workspace:* + version: link:../../../packages/firefly + react: + specifier: 19.0.0 + version: 19.0.0 + react-dom: + specifier: 19.0.0 + version: 19.0.0(react@19.0.0) + react-router-dom: + specifier: 6.27.0 + version: 6.27.0(react-dom@19.0.0(react@19.0.0))(react@19.0.0) + useless-lib: + specifier: ^2.1.0 + version: 2.1.0 + devDependencies: + '@squide/firefly-webpack-configs': + specifier: workspace:* + version: link:../../../packages/firefly-webpack-configs + '@swc/core': + specifier: 1.10.1 + version: 1.10.1(@swc/helpers@0.5.15) + '@swc/helpers': + specifier: 0.5.15 + version: 0.5.15 + '@types/react': + specifier: 19.0.1 + version: 19.0.1 + '@types/react-dom': + specifier: 19.0.2 + version: 19.0.2(@types/react@19.0.1) + '@typescript-eslint/parser': + specifier: 8.18.0 + version: 8.18.0(eslint@8.57.0)(typescript@5.5.4) + '@workleap/browserslist-config': + specifier: 2.0.1 + version: 2.0.1 + '@workleap/eslint-plugin': + specifier: 3.2.5 + version: 3.2.5(@typescript-eslint/parser@8.18.0(eslint@8.57.0)(typescript@5.5.4))(eslint@8.57.0)(jest@29.7.0(@types/node@22.10.2)(ts-node@10.9.2(@swc/core@1.10.1(@swc/helpers@0.5.15))(@types/node@22.10.2)(typescript@5.5.4)))(typescript@5.5.4) + '@workleap/swc-configs': + specifier: 2.2.3 + version: 2.2.3(@swc/core@1.10.1(@swc/helpers@0.5.15))(@swc/helpers@0.5.15)(@swc/jest@0.2.37(@swc/core@1.10.1(@swc/helpers@0.5.15)))(browserslist@4.24.3) + '@workleap/typescript-configs': + specifier: 3.0.2 + version: 3.0.2(typescript@5.5.4) + browserslist: + specifier: 4.24.3 + version: 4.24.3 + cross-env: + specifier: 7.0.3 + version: 7.0.3 + eslint: + specifier: 8.57.0 + version: 8.57.0 + http-server: + specifier: 14.1.1 + version: 14.1.1 + nodemon: + specifier: 3.1.9 + version: 3.1.9 + typescript: + specifier: 5.5.4 + version: 5.5.4 + webpack: + specifier: 5.97.1 + version: 5.97.1(@swc/core@1.10.1(@swc/helpers@0.5.15))(webpack-cli@5.1.4) + webpack-cli: + specifier: 5.1.4 + version: 5.1.4(webpack-dev-server@5.2.0)(webpack@5.97.1) + webpack-dev-server: + specifier: 5.2.0 + version: 5.2.0(webpack-cli@5.1.4)(webpack@5.97.1) + + samples/basic-mix/shared: + dependencies: + react: + specifier: '*' + version: 19.0.0 + react-dom: + specifier: '*' + version: 19.0.0(react@19.0.0) + react-router-dom: + specifier: '*' + version: 6.27.0(react-dom@19.0.0(react@19.0.0))(react@19.0.0) + devDependencies: + '@squide/firefly': + specifier: workspace:* + version: link:../../../packages/firefly + '@types/react': + specifier: 19.0.1 + version: 19.0.1 + '@types/react-dom': + specifier: 19.0.2 + version: 19.0.2(@types/react@19.0.1) + '@typescript-eslint/parser': + specifier: 8.18.0 + version: 8.18.0(eslint@8.57.0)(typescript@5.5.4) + '@workleap/eslint-plugin': + specifier: 3.2.5 + version: 3.2.5(@typescript-eslint/parser@8.18.0(eslint@8.57.0)(typescript@5.5.4))(eslint@8.57.0)(jest@29.7.0(@types/node@22.10.2)(ts-node@10.9.2(@swc/core@1.10.1(@swc/helpers@0.5.15))(@types/node@22.10.2)(typescript@5.5.4)))(typescript@5.5.4) + '@workleap/typescript-configs': + specifier: 3.0.2 + version: 3.0.2(typescript@5.5.4) + eslint: + specifier: 8.57.0 + version: 8.57.0 + typescript: + specifier: 5.5.4 + version: 5.5.4 + + samples/basic-mix/shell: + dependencies: + '@react-aria/toast': + specifier: '*' + version: 3.0.0-beta.18(react@19.0.0) + '@react-stately/toast': + specifier: '*' + version: 3.0.0-beta.7(react@19.0.0) + react: + specifier: '*' + version: 19.0.0 + react-dom: + specifier: '*' + version: 19.0.0(react@19.0.0) + react-router-dom: + specifier: '*' + version: 6.27.0(react-dom@19.0.0(react@19.0.0))(react@19.0.0) + devDependencies: + '@basic-mix/shared': + specifier: workspace:* + version: link:../shared + '@squide/fakes': + specifier: workspace:* + version: link:../../../packages/fakes + '@squide/firefly': + specifier: workspace:* + version: link:../../../packages/firefly + '@types/react': + specifier: 19.0.1 + version: 19.0.1 + '@types/react-dom': + specifier: 19.0.2 + version: 19.0.2(@types/react@19.0.1) + '@typescript-eslint/parser': + specifier: 8.18.0 + version: 8.18.0(eslint@8.57.0)(typescript@5.5.4) + '@workleap/eslint-plugin': + specifier: 3.2.5 + version: 3.2.5(@typescript-eslint/parser@8.18.0(eslint@8.57.0)(typescript@5.5.4))(eslint@8.57.0)(jest@29.7.0(@types/node@22.10.2)(ts-node@10.9.2(@swc/core@1.10.1(@swc/helpers@0.5.15))(@types/node@22.10.2)(typescript@5.5.4)))(typescript@5.5.4) + '@workleap/typescript-configs': + specifier: 3.0.2 + version: 3.0.2(typescript@5.5.4) + eslint: + specifier: 8.57.0 + version: 8.57.0 + typescript: + specifier: 5.5.4 + version: 5.5.4 + + samples/basic-webpack/another-remote-module: + dependencies: + '@basic-webpack/shared': + specifier: workspace:* + version: link:../shared + '@basic-webpack/shell': + specifier: workspace:* + version: link:../shell + '@react-aria/toast': + specifier: 3.0.0-beta.18 + version: 3.0.0-beta.18(react@19.0.0) + '@react-stately/toast': + specifier: 3.0.0-beta.7 + version: 3.0.0-beta.7(react@19.0.0) + '@squide/fakes': + specifier: workspace:* + version: link:../../../packages/fakes + '@squide/firefly': + specifier: workspace:* + version: link:../../../packages/firefly + react: + specifier: 19.0.0 + version: 19.0.0 + react-dom: + specifier: 19.0.0 + version: 19.0.0(react@19.0.0) + react-router-dom: + specifier: 6.27.0 + version: 6.27.0(react-dom@19.0.0(react@19.0.0))(react@19.0.0) + useless-lib: + specifier: 3.0.0 + version: 3.0.0 + devDependencies: + '@squide/firefly-webpack-configs': + specifier: workspace:* + version: link:../../../packages/firefly-webpack-configs + '@swc/core': + specifier: 1.10.1 + version: 1.10.1(@swc/helpers@0.5.15) + '@swc/helpers': + specifier: 0.5.15 + version: 0.5.15 + '@types/react': + specifier: 19.0.1 + version: 19.0.1 + '@types/react-dom': + specifier: 19.0.2 + version: 19.0.2(@types/react@19.0.1) + '@typescript-eslint/parser': + specifier: 8.18.0 + version: 8.18.0(eslint@8.57.0)(typescript@5.5.4) + '@workleap/browserslist-config': + specifier: 2.0.1 + version: 2.0.1 + '@workleap/eslint-plugin': + specifier: 3.2.5 + version: 3.2.5(@typescript-eslint/parser@8.18.0(eslint@8.57.0)(typescript@5.5.4))(eslint@8.57.0)(jest@29.7.0(@types/node@22.10.2)(ts-node@10.9.2(@swc/core@1.10.1(@swc/helpers@0.5.15))(@types/node@22.10.2)(typescript@5.5.4)))(typescript@5.5.4) + '@workleap/swc-configs': + specifier: 2.2.3 + version: 2.2.3(@swc/core@1.10.1(@swc/helpers@0.5.15))(@swc/helpers@0.5.15)(@swc/jest@0.2.37(@swc/core@1.10.1(@swc/helpers@0.5.15)))(browserslist@4.24.3) + '@workleap/typescript-configs': + specifier: 3.0.2 + version: 3.0.2(typescript@5.5.4) + browserslist: + specifier: 4.24.3 + version: 4.24.3 + cross-env: + specifier: 7.0.3 + version: 7.0.3 + eslint: + specifier: 8.57.0 + version: 8.57.0 + http-server: + specifier: 14.1.1 + version: 14.1.1 + nodemon: + specifier: 3.1.9 + version: 3.1.9 + typescript: + specifier: 5.5.4 + version: 5.5.4 + webpack: + specifier: 5.97.1 + version: 5.97.1(@swc/core@1.10.1(@swc/helpers@0.5.15))(webpack-cli@5.1.4) + webpack-cli: + specifier: 5.1.4 + version: 5.1.4(webpack-dev-server@5.2.0)(webpack@5.97.1) + webpack-dev-server: + specifier: 5.2.0 + version: 5.2.0(webpack-cli@5.1.4)(webpack@5.97.1) + + samples/basic-webpack/host: + dependencies: + '@basic-webpack/local-module': + specifier: workspace:* + version: link:../local-module + '@basic-webpack/shared': + specifier: workspace:* + version: link:../shared + '@basic-webpack/shell': + specifier: workspace:* + version: link:../shell + '@react-aria/toast': + specifier: 3.0.0-beta.18 + version: 3.0.0-beta.18(react@19.0.0) + '@react-stately/toast': + specifier: 3.0.0-beta.7 + version: 3.0.0-beta.7(react@19.0.0) + '@squide/fakes': + specifier: workspace:* + version: link:../../../packages/fakes + '@squide/firefly': + specifier: workspace:* + version: link:../../../packages/firefly + '@tanstack/react-query': + specifier: 5.62.7 + version: 5.62.7(react@19.0.0) + react: + specifier: 19.0.0 + version: 19.0.0 + react-dom: + specifier: 19.0.0 + version: 19.0.0(react@19.0.0) + react-router-dom: + specifier: 6.27.0 + version: 6.27.0(react-dom@19.0.0(react@19.0.0))(react@19.0.0) + useless-lib: + specifier: ^2.0.0 + version: 2.1.0 + devDependencies: + '@squide/firefly-webpack-configs': + specifier: workspace:* + version: link:../../../packages/firefly-webpack-configs + '@swc/core': + specifier: 1.10.1 + version: 1.10.1(@swc/helpers@0.5.15) + '@swc/helpers': + specifier: 0.5.15 + version: 0.5.15 + '@types/react': + specifier: 19.0.1 + version: 19.0.1 + '@types/react-dom': + specifier: 19.0.2 + version: 19.0.2(@types/react@19.0.1) + '@typescript-eslint/parser': + specifier: 8.18.0 + version: 8.18.0(eslint@8.57.0)(typescript@5.5.4) + '@workleap/browserslist-config': + specifier: 2.0.1 + version: 2.0.1 + '@workleap/eslint-plugin': + specifier: 3.2.5 + version: 3.2.5(@typescript-eslint/parser@8.18.0(eslint@8.57.0)(typescript@5.5.4))(eslint@8.57.0)(jest@29.7.0(@types/node@22.10.2)(ts-node@10.9.2(@swc/core@1.10.1(@swc/helpers@0.5.15))(@types/node@22.10.2)(typescript@5.5.4)))(typescript@5.5.4) + '@workleap/swc-configs': + specifier: 2.2.3 + version: 2.2.3(@swc/core@1.10.1(@swc/helpers@0.5.15))(@swc/helpers@0.5.15)(@swc/jest@0.2.37(@swc/core@1.10.1(@swc/helpers@0.5.15)))(browserslist@4.24.3) + '@workleap/typescript-configs': + specifier: 3.0.2 + version: 3.0.2(typescript@5.5.4) + browserslist: + specifier: 4.24.3 + version: 4.24.3 + copyfiles: + specifier: 2.4.1 + version: 2.4.1 + eslint: + specifier: 8.57.0 + version: 8.57.0 + http-server: + specifier: 14.1.1 + version: 14.1.1 + nodemon: + specifier: 3.1.9 + version: 3.1.9 + typescript: + specifier: 5.5.4 + version: 5.5.4 + webpack: + specifier: 5.97.1 + version: 5.97.1(@swc/core@1.10.1(@swc/helpers@0.5.15))(webpack-cli@5.1.4) + webpack-cli: + specifier: 5.1.4 + version: 5.1.4(webpack-dev-server@5.2.0)(webpack@5.97.1) + webpack-dev-server: + specifier: 5.2.0 + version: 5.2.0(webpack-cli@5.1.4)(webpack@5.97.1) + + samples/basic-webpack/local-module: + dependencies: + '@basic-webpack/shared': + specifier: workspace:* + version: link:../shared + '@basic-webpack/shell': + specifier: workspace:* + version: link:../shell + '@squide/fakes': + specifier: workspace:* + version: link:../../../packages/fakes + '@squide/firefly': + specifier: workspace:* + version: link:../../../packages/firefly + react: + specifier: 19.0.0 + version: 19.0.0 + react-dom: + specifier: 19.0.0 + version: 19.0.0(react@19.0.0) + react-router-dom: + specifier: 6.27.0 + version: 6.27.0(react-dom@19.0.0(react@19.0.0))(react@19.0.0) + devDependencies: + '@react-aria/toast': + specifier: 3.0.0-beta.18 + version: 3.0.0-beta.18(react@19.0.0) + '@react-stately/toast': + specifier: 3.0.0-beta.7 + version: 3.0.0-beta.7(react@19.0.0) + '@squide/firefly-webpack-configs': + specifier: workspace:* + version: link:../../../packages/firefly-webpack-configs + '@swc/core': + specifier: 1.10.1 + version: 1.10.1(@swc/helpers@0.5.15) + '@swc/helpers': + specifier: 0.5.15 + version: 0.5.15 '@types/react': - specifier: 18.3.12 - version: 18.3.12 + specifier: 19.0.1 + version: 19.0.1 '@types/react-dom': - specifier: 18.3.1 - version: 18.3.1 + specifier: 19.0.2 + version: 19.0.2(@types/react@19.0.1) + '@typescript-eslint/parser': + specifier: 8.18.0 + version: 8.18.0(eslint@8.57.0)(typescript@5.5.4) + '@workleap/browserslist-config': + specifier: 2.0.1 + version: 2.0.1 '@workleap/eslint-plugin': - specifier: 3.2.3 - version: 3.2.3(@typescript-eslint/parser@8.13.0(eslint@8.57.0)(typescript@5.5.4))(eslint@8.57.0)(jest@29.7.0(@types/node@22.9.0)(ts-node@10.9.2(@swc/core@1.8.0)(@types/node@22.9.0)(typescript@5.5.4)))(typescript@5.5.4) + specifier: 3.2.5 + version: 3.2.5(@typescript-eslint/parser@8.18.0(eslint@8.57.0)(typescript@5.5.4))(eslint@8.57.0)(jest@29.7.0(@types/node@22.10.2)(ts-node@10.9.2(@swc/core@1.10.1(@swc/helpers@0.5.15))(@types/node@22.10.2)(typescript@5.5.4)))(typescript@5.5.4) '@workleap/swc-configs': specifier: 2.2.3 - version: 2.2.3(@swc/core@1.8.0(@swc/helpers@0.5.13))(@swc/helpers@0.5.13)(@swc/jest@0.2.37(@swc/core@1.8.0(@swc/helpers@0.5.13)))(browserslist@4.24.2) - '@workleap/tsup-configs': - specifier: 3.0.6 - version: 3.0.6(tsup@8.3.5(@swc/core@1.8.0)(jiti@2.4.0)(postcss@8.4.49)(tsx@4.19.2)(typescript@5.5.4)(yaml@2.6.0))(typescript@5.5.4) + version: 2.2.3(@swc/core@1.10.1(@swc/helpers@0.5.15))(@swc/helpers@0.5.15)(@swc/jest@0.2.37(@swc/core@1.10.1(@swc/helpers@0.5.15)))(browserslist@4.24.3) '@workleap/typescript-configs': specifier: 3.0.2 version: 3.0.2(typescript@5.5.4) + browserslist: + specifier: 4.24.3 + version: 4.24.3 eslint: specifier: 8.57.0 version: 8.57.0 - jest: - specifier: 29.7.0 - version: 29.7.0(@types/node@22.9.0)(ts-node@10.9.2(@swc/core@1.8.0)(@types/node@22.9.0)(typescript@5.5.4)) - jest-environment-jsdom: - specifier: 29.7.0 - version: 29.7.0 - react: - specifier: 18.3.1 - version: 18.3.1 - react-dom: - specifier: 18.3.1 - version: 18.3.1(react@18.3.1) - ts-jest: - specifier: 29.2.5 - version: 29.2.5(@babel/core@7.26.0)(@jest/transform@29.7.0)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.26.0))(esbuild@0.24.0)(jest@29.7.0(@types/node@22.9.0)(ts-node@10.9.2(@swc/core@1.8.0)(@types/node@22.9.0)(typescript@5.5.4)))(typescript@5.5.4) - tsup: - specifier: 8.3.5 - version: 8.3.5(@swc/core@1.8.0)(jiti@2.4.0)(postcss@8.4.49)(tsx@4.19.2)(typescript@5.5.4)(yaml@2.6.0) + nodemon: + specifier: 3.1.9 + version: 3.1.9 typescript: specifier: 5.5.4 version: 5.5.4 + webpack: + specifier: 5.97.1 + version: 5.97.1(@swc/core@1.10.1(@swc/helpers@0.5.15))(webpack-cli@5.1.4) + webpack-cli: + specifier: 5.1.4 + version: 5.1.4(webpack-dev-server@5.2.0)(webpack@5.97.1) + webpack-dev-server: + specifier: 5.2.0 + version: 5.2.0(webpack-cli@5.1.4)(webpack@5.97.1) - packages/msw: + samples/basic-webpack/remote-module: dependencies: - '@squide/core': + '@basic-webpack/shared': specifier: workspace:* - version: link:../core + version: link:../shared + '@basic-webpack/shell': + specifier: workspace:* + version: link:../shell + '@react-aria/toast': + specifier: 3.0.0-beta.18 + version: 3.0.0-beta.18(react@19.0.0) + '@react-stately/toast': + specifier: 3.0.0-beta.7 + version: 3.0.0-beta.7(react@19.0.0) + '@squide/fakes': + specifier: workspace:* + version: link:../../../packages/fakes + '@squide/firefly': + specifier: workspace:* + version: link:../../../packages/firefly + react: + specifier: 19.0.0 + version: 19.0.0 + react-dom: + specifier: 19.0.0 + version: 19.0.0(react@19.0.0) + react-router-dom: + specifier: 6.27.0 + version: 6.27.0(react-dom@19.0.0(react@19.0.0))(react@19.0.0) + useless-lib: + specifier: ^2.1.0 + version: 2.1.0 devDependencies: + '@squide/firefly-webpack-configs': + specifier: workspace:* + version: link:../../../packages/firefly-webpack-configs + '@swc/core': + specifier: 1.10.1 + version: 1.10.1(@swc/helpers@0.5.15) + '@swc/helpers': + specifier: 0.5.15 + version: 0.5.15 '@types/react': - specifier: 18.3.12 - version: 18.3.12 + specifier: 19.0.1 + version: 19.0.1 '@types/react-dom': - specifier: 18.3.1 - version: 18.3.1 + specifier: 19.0.2 + version: 19.0.2(@types/react@19.0.1) + '@typescript-eslint/parser': + specifier: 8.18.0 + version: 8.18.0(eslint@8.57.0)(typescript@5.5.4) + '@workleap/browserslist-config': + specifier: 2.0.1 + version: 2.0.1 '@workleap/eslint-plugin': - specifier: 3.2.3 - version: 3.2.3(@typescript-eslint/parser@8.13.0(eslint@8.57.0)(typescript@5.5.4))(eslint@8.57.0)(jest@29.7.0(@types/node@22.9.0)(ts-node@10.9.2(@swc/core@1.8.0)(@types/node@22.9.0)(typescript@5.5.4)))(typescript@5.5.4) - '@workleap/tsup-configs': - specifier: 3.0.6 - version: 3.0.6(tsup@8.3.5(@swc/core@1.8.0)(jiti@2.4.0)(postcss@8.4.49)(tsx@4.19.2)(typescript@5.5.4)(yaml@2.6.0))(typescript@5.5.4) + specifier: 3.2.5 + version: 3.2.5(@typescript-eslint/parser@8.18.0(eslint@8.57.0)(typescript@5.5.4))(eslint@8.57.0)(jest@29.7.0(@types/node@22.10.2)(ts-node@10.9.2(@swc/core@1.10.1(@swc/helpers@0.5.15))(@types/node@22.10.2)(typescript@5.5.4)))(typescript@5.5.4) + '@workleap/swc-configs': + specifier: 2.2.3 + version: 2.2.3(@swc/core@1.10.1(@swc/helpers@0.5.15))(@swc/helpers@0.5.15)(@swc/jest@0.2.37(@swc/core@1.10.1(@swc/helpers@0.5.15)))(browserslist@4.24.3) '@workleap/typescript-configs': specifier: 3.0.2 version: 3.0.2(typescript@5.5.4) + browserslist: + specifier: 4.24.3 + version: 4.24.3 + cross-env: + specifier: 7.0.3 + version: 7.0.3 eslint: specifier: 8.57.0 version: 8.57.0 - msw: - specifier: 2.6.1 - version: 2.6.1(@types/node@22.9.0)(typescript@5.5.4) - react: - specifier: 18.3.1 - version: 18.3.1 - react-dom: - specifier: 18.3.1 - version: 18.3.1(react@18.3.1) - tsup: - specifier: 8.3.5 - version: 8.3.5(@swc/core@1.8.0)(jiti@2.4.0)(postcss@8.4.49)(tsx@4.19.2)(typescript@5.5.4)(yaml@2.6.0) + http-server: + specifier: 14.1.1 + version: 14.1.1 + nodemon: + specifier: 3.1.9 + version: 3.1.9 typescript: specifier: 5.5.4 version: 5.5.4 + webpack: + specifier: 5.97.1 + version: 5.97.1(@swc/core@1.10.1(@swc/helpers@0.5.15))(webpack-cli@5.1.4) + webpack-cli: + specifier: 5.1.4 + version: 5.1.4(webpack-dev-server@5.2.0)(webpack@5.97.1) + webpack-dev-server: + specifier: 5.2.0 + version: 5.2.0(webpack-cli@5.1.4)(webpack@5.97.1) - packages/react-router: + samples/basic-webpack/shared: dependencies: - '@squide/core': - specifier: workspace:* - version: link:../core - memoize: - specifier: 10.0.0 - version: 10.0.0 + react: + specifier: '*' + version: 19.0.0 + react-dom: + specifier: '*' + version: 19.0.0(react@19.0.0) + react-router-dom: + specifier: '*' + version: 6.27.0(react-dom@19.0.0(react@19.0.0))(react@19.0.0) devDependencies: - '@swc/core': - specifier: 1.8.0 - version: 1.8.0(@swc/helpers@0.5.13) - '@swc/jest': - specifier: 0.2.37 - version: 0.2.37(@swc/core@1.8.0(@swc/helpers@0.5.13)) - '@testing-library/react': - specifier: 16.0.1 - version: 16.0.1(@testing-library/dom@10.4.0)(@types/react-dom@18.3.1)(@types/react@18.3.12)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@types/jest': - specifier: 29.5.14 - version: 29.5.14 + '@squide/firefly': + specifier: workspace:* + version: link:../../../packages/firefly '@types/react': - specifier: 18.3.12 - version: 18.3.12 + specifier: 19.0.1 + version: 19.0.1 '@types/react-dom': - specifier: 18.3.1 - version: 18.3.1 - '@types/react-test-renderer': - specifier: 18.3.0 - version: 18.3.0 + specifier: 19.0.2 + version: 19.0.2(@types/react@19.0.1) + '@typescript-eslint/parser': + specifier: 8.18.0 + version: 8.18.0(eslint@8.57.0)(typescript@5.5.4) '@workleap/eslint-plugin': - specifier: 3.2.3 - version: 3.2.3(@typescript-eslint/parser@8.13.0(eslint@8.57.0)(typescript@5.5.4))(eslint@8.57.0)(jest@29.7.0(@types/node@22.9.0)(ts-node@10.9.2(@swc/core@1.8.0)(@types/node@22.9.0)(typescript@5.5.4)))(typescript@5.5.4) - '@workleap/swc-configs': - specifier: 2.2.3 - version: 2.2.3(@swc/core@1.8.0(@swc/helpers@0.5.13))(@swc/helpers@0.5.13)(@swc/jest@0.2.37(@swc/core@1.8.0(@swc/helpers@0.5.13)))(browserslist@4.24.2) - '@workleap/tsup-configs': - specifier: 3.0.6 - version: 3.0.6(tsup@8.3.5(@swc/core@1.8.0)(jiti@2.4.0)(postcss@8.4.49)(tsx@4.19.2)(typescript@5.5.4)(yaml@2.6.0))(typescript@5.5.4) + specifier: 3.2.5 + version: 3.2.5(@typescript-eslint/parser@8.18.0(eslint@8.57.0)(typescript@5.5.4))(eslint@8.57.0)(jest@29.7.0(@types/node@22.10.2)(ts-node@10.9.2(@swc/core@1.10.1(@swc/helpers@0.5.15))(@types/node@22.10.2)(typescript@5.5.4)))(typescript@5.5.4) '@workleap/typescript-configs': specifier: 3.0.2 version: 3.0.2(typescript@5.5.4) eslint: specifier: 8.57.0 version: 8.57.0 - jest: - specifier: 29.7.0 - version: 29.7.0(@types/node@22.9.0)(ts-node@10.9.2(@swc/core@1.8.0)(@types/node@22.9.0)(typescript@5.5.4)) - jest-environment-jsdom: - specifier: 29.7.0 - version: 29.7.0 - react: - specifier: 18.3.1 - version: 18.3.1 - react-dom: - specifier: 18.3.1 - version: 18.3.1(react@18.3.1) - react-router-dom: - specifier: 6.27.0 - version: 6.27.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - react-test-renderer: - specifier: 18.3.1 - version: 18.3.1(react@18.3.1) - ts-jest: - specifier: 29.2.5 - version: 29.2.5(@babel/core@7.26.0)(@jest/transform@29.7.0)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.26.0))(esbuild@0.24.0)(jest@29.7.0(@types/node@22.9.0)(ts-node@10.9.2(@swc/core@1.8.0)(@types/node@22.9.0)(typescript@5.5.4)))(typescript@5.5.4) - tsup: - specifier: 8.3.5 - version: 8.3.5(@swc/core@1.8.0)(jiti@2.4.0)(postcss@8.4.49)(tsx@4.19.2)(typescript@5.5.4)(yaml@2.6.0) typescript: specifier: 5.5.4 version: 5.5.4 - packages/webpack-configs: + samples/basic-webpack/shell: dependencies: - '@module-federation/enhanced': - specifier: 0.6.16 - version: 0.6.16(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.5.4)(webpack@5.96.1(@swc/core@1.8.0(@swc/helpers@0.5.13))) - '@swc/helpers': + '@react-aria/toast': specifier: '*' - version: 0.5.13 - '@workleap/webpack-configs': - specifier: 1.5.1 - version: 1.5.1(@swc/core@1.8.0(@swc/helpers@0.5.13))(@swc/helpers@0.5.13)(browserslist@4.24.2)(postcss@8.4.49)(type-fest@4.27.0)(typescript@5.5.4)(webpack-dev-server@5.1.0(webpack@5.96.1(@swc/core@1.8.0(@swc/helpers@0.5.13))))(webpack@5.96.1(@swc/core@1.8.0(@swc/helpers@0.5.13))) - browserslist: + version: 3.0.0-beta.18(react@19.0.0) + '@react-stately/toast': specifier: '*' - version: 4.24.2 - deepmerge: - specifier: 4.3.1 - version: 4.3.1 - html-webpack-plugin: - specifier: 5.6.3 - version: 5.6.3(webpack@5.96.1(@swc/core@1.8.0(@swc/helpers@0.5.13))) - postcss: + version: 3.0.0-beta.7(react@19.0.0) + react: specifier: '*' - version: 8.4.49 - semver: - specifier: 7.6.3 - version: 7.6.3 - webpack-dev-server: - specifier: '>=5.0.0' - version: 5.1.0(webpack@5.96.1(@swc/core@1.8.0(@swc/helpers@0.5.13))) + version: 19.0.0 + react-dom: + specifier: '*' + version: 19.0.0(react@19.0.0) + react-router-dom: + specifier: '*' + version: 6.27.0(react-dom@19.0.0(react@19.0.0))(react@19.0.0) devDependencies: - '@swc/core': - specifier: 1.8.0 - version: 1.8.0(@swc/helpers@0.5.13) - '@swc/jest': - specifier: 0.2.37 - version: 0.2.37(@swc/core@1.8.0(@swc/helpers@0.5.13)) - '@types/jest': - specifier: 29.5.14 - version: 29.5.14 - '@types/node': - specifier: 22.9.0 - version: 22.9.0 - '@types/semver': - specifier: 7.5.8 - version: 7.5.8 + '@basic-webpack/shared': + specifier: workspace:* + version: link:../shared + '@squide/fakes': + specifier: workspace:* + version: link:../../../packages/fakes + '@squide/firefly': + specifier: workspace:* + version: link:../../../packages/firefly + '@types/react': + specifier: 19.0.1 + version: 19.0.1 + '@types/react-dom': + specifier: 19.0.2 + version: 19.0.2(@types/react@19.0.1) + '@typescript-eslint/parser': + specifier: 8.18.0 + version: 8.18.0(eslint@8.57.0)(typescript@5.5.4) '@workleap/eslint-plugin': - specifier: 3.2.3 - version: 3.2.3(@typescript-eslint/parser@8.13.0(eslint@8.57.0)(typescript@5.5.4))(eslint@8.57.0)(jest@29.7.0(@types/node@22.9.0)(ts-node@10.9.2(@swc/core@1.8.0)(@types/node@22.9.0)(typescript@5.5.4)))(typescript@5.5.4) - '@workleap/swc-configs': - specifier: 2.2.3 - version: 2.2.3(@swc/core@1.8.0(@swc/helpers@0.5.13))(@swc/helpers@0.5.13)(@swc/jest@0.2.37(@swc/core@1.8.0(@swc/helpers@0.5.13)))(browserslist@4.24.2) - '@workleap/tsup-configs': - specifier: 3.0.6 - version: 3.0.6(tsup@8.3.5(@swc/core@1.8.0)(jiti@2.4.0)(postcss@8.4.49)(tsx@4.19.2)(typescript@5.5.4)(yaml@2.6.0))(typescript@5.5.4) + specifier: 3.2.5 + version: 3.2.5(@typescript-eslint/parser@8.18.0(eslint@8.57.0)(typescript@5.5.4))(eslint@8.57.0)(jest@29.7.0(@types/node@22.10.2)(ts-node@10.9.2(@swc/core@1.10.1(@swc/helpers@0.5.15))(@types/node@22.10.2)(typescript@5.5.4)))(typescript@5.5.4) '@workleap/typescript-configs': specifier: 3.0.2 version: 3.0.2(typescript@5.5.4) eslint: specifier: 8.57.0 version: 8.57.0 - jest: - specifier: 29.7.0 - version: 29.7.0(@types/node@22.9.0)(ts-node@10.9.2(@swc/core@1.8.0)(@types/node@22.9.0)(typescript@5.5.4)) - jest-environment-jsdom: - specifier: 29.7.0 - version: 29.7.0 - tsup: - specifier: 8.3.5 - version: 8.3.5(@swc/core@1.8.0)(jiti@2.4.0)(postcss@8.4.49)(tsx@4.19.2)(typescript@5.5.4)(yaml@2.6.0) typescript: specifier: 5.5.4 version: 5.5.4 - webpack: - specifier: 5.96.1 - version: 5.96.1(@swc/core@1.8.0(@swc/helpers@0.5.13)) samples/basic/another-remote-module: dependencies: @@ -734,11 +1574,11 @@ importers: specifier: workspace:* version: link:../shell '@react-aria/toast': - specifier: 3.0.0-beta.17 - version: 3.0.0-beta.17(react@18.3.1) + specifier: 3.0.0-beta.18 + version: 3.0.0-beta.18(react@19.0.0) '@react-stately/toast': - specifier: 3.0.0-beta.6 - version: 3.0.0-beta.6(react@18.3.1) + specifier: 3.0.0-beta.7 + version: 3.0.0-beta.7(react@19.0.0) '@squide/fakes': specifier: workspace:* version: link:../../../packages/fakes @@ -746,48 +1586,45 @@ importers: specifier: workspace:* version: link:../../../packages/firefly react: - specifier: 18.3.1 - version: 18.3.1 + specifier: 19.0.0 + version: 19.0.0 react-dom: - specifier: 18.3.1 - version: 18.3.1(react@18.3.1) + specifier: 19.0.0 + version: 19.0.0(react@19.0.0) react-router-dom: specifier: 6.27.0 - version: 6.27.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + version: 6.27.0(react-dom@19.0.0(react@19.0.0))(react@19.0.0) useless-lib: specifier: 3.0.0 version: 3.0.0 devDependencies: - '@squide/firefly-webpack-configs': + '@rsbuild/core': + specifier: 1.1.10 + version: 1.1.10 + '@squide/firefly-rsbuild-configs': specifier: workspace:* - version: link:../../../packages/firefly-webpack-configs - '@swc/core': - specifier: 1.8.0 - version: 1.8.0(@swc/helpers@0.5.13) - '@swc/helpers': - specifier: 0.5.13 - version: 0.5.13 + version: link:../../../packages/firefly-rsbuild-configs '@types/react': - specifier: 18.3.12 - version: 18.3.12 + specifier: 19.0.1 + version: 19.0.1 '@types/react-dom': - specifier: 18.3.1 - version: 18.3.1 + specifier: 19.0.2 + version: 19.0.2(@types/react@19.0.1) + '@typescript-eslint/parser': + specifier: 8.18.0 + version: 8.18.0(eslint@8.57.0)(typescript@5.5.4) '@workleap/browserslist-config': specifier: 2.0.1 version: 2.0.1 '@workleap/eslint-plugin': - specifier: 3.2.3 - version: 3.2.3(@typescript-eslint/parser@8.13.0(eslint@8.57.0)(typescript@5.5.4))(eslint@8.57.0)(jest@29.7.0(@types/node@22.9.0)(ts-node@10.9.2(@swc/core@1.8.0)(@types/node@22.9.0)(typescript@5.5.4)))(typescript@5.5.4) - '@workleap/swc-configs': - specifier: 2.2.3 - version: 2.2.3(@swc/core@1.8.0(@swc/helpers@0.5.13))(@swc/helpers@0.5.13)(@swc/jest@0.2.37(@swc/core@1.8.0(@swc/helpers@0.5.13)))(browserslist@4.24.2) + specifier: 3.2.5 + version: 3.2.5(@typescript-eslint/parser@8.18.0(eslint@8.57.0)(typescript@5.5.4))(eslint@8.57.0)(jest@29.7.0(@types/node@22.10.2)(ts-node@10.9.2(@swc/core@1.10.1(@swc/helpers@0.5.15))(@types/node@22.10.2)(typescript@5.5.4)))(typescript@5.5.4) '@workleap/typescript-configs': specifier: 3.0.2 version: 3.0.2(typescript@5.5.4) browserslist: - specifier: 4.24.2 - version: 4.24.2 + specifier: 4.24.3 + version: 4.24.3 cross-env: specifier: 7.0.3 version: 7.0.3 @@ -798,23 +1635,14 @@ importers: specifier: 14.1.1 version: 14.1.1 netlify-cli: - specifier: 17.37.2 - version: 17.37.2(@swc/core@1.8.0(@swc/helpers@0.5.13))(@types/express@4.17.21)(@types/node@22.9.0)(picomatch@4.0.2) + specifier: 17.38.0 + version: 17.38.0(@swc/core@1.10.1)(@types/express@4.17.21)(@types/node@22.10.2)(picomatch@4.0.2) nodemon: - specifier: 3.1.7 - version: 3.1.7 + specifier: 3.1.9 + version: 3.1.9 typescript: specifier: 5.5.4 version: 5.5.4 - webpack: - specifier: 5.96.1 - version: 5.96.1(@swc/core@1.8.0(@swc/helpers@0.5.13))(webpack-cli@5.1.4) - webpack-cli: - specifier: 5.1.4 - version: 5.1.4(webpack-dev-server@5.1.0)(webpack@5.96.1) - webpack-dev-server: - specifier: 5.1.0 - version: 5.1.0(webpack-cli@5.1.4)(webpack@5.96.1) samples/basic/host: dependencies: @@ -828,11 +1656,11 @@ importers: specifier: workspace:* version: link:../shell '@react-aria/toast': - specifier: 3.0.0-beta.17 - version: 3.0.0-beta.17(react@18.3.1) + specifier: 3.0.0-beta.18 + version: 3.0.0-beta.18(react@19.0.0) '@react-stately/toast': - specifier: 3.0.0-beta.6 - version: 3.0.0-beta.6(react@18.3.1) + specifier: 3.0.0-beta.7 + version: 3.0.0-beta.7(react@19.0.0) '@squide/fakes': specifier: workspace:* version: link:../../../packages/fakes @@ -840,51 +1668,48 @@ importers: specifier: workspace:* version: link:../../../packages/firefly '@tanstack/react-query': - specifier: 5.59.19 - version: 5.59.19(react@18.3.1) + specifier: 5.62.7 + version: 5.62.7(react@19.0.0) react: - specifier: 18.3.1 - version: 18.3.1 + specifier: 19.0.0 + version: 19.0.0 react-dom: - specifier: 18.3.1 - version: 18.3.1(react@18.3.1) + specifier: 19.0.0 + version: 19.0.0(react@19.0.0) react-router-dom: specifier: 6.27.0 - version: 6.27.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + version: 6.27.0(react-dom@19.0.0(react@19.0.0))(react@19.0.0) useless-lib: specifier: ^2.0.0 version: 2.1.0 devDependencies: - '@squide/firefly-webpack-configs': + '@rsbuild/core': + specifier: 1.1.10 + version: 1.1.10 + '@squide/firefly-rsbuild-configs': specifier: workspace:* - version: link:../../../packages/firefly-webpack-configs - '@swc/core': - specifier: 1.8.0 - version: 1.8.0(@swc/helpers@0.5.13) - '@swc/helpers': - specifier: 0.5.13 - version: 0.5.13 + version: link:../../../packages/firefly-rsbuild-configs '@types/react': - specifier: 18.3.12 - version: 18.3.12 + specifier: 19.0.1 + version: 19.0.1 '@types/react-dom': - specifier: 18.3.1 - version: 18.3.1 + specifier: 19.0.2 + version: 19.0.2(@types/react@19.0.1) + '@typescript-eslint/parser': + specifier: 8.18.0 + version: 8.18.0(eslint@8.57.0)(typescript@5.5.4) '@workleap/browserslist-config': specifier: 2.0.1 version: 2.0.1 '@workleap/eslint-plugin': - specifier: 3.2.3 - version: 3.2.3(@typescript-eslint/parser@8.13.0(eslint@8.57.0)(typescript@5.5.4))(eslint@8.57.0)(jest@29.7.0(@types/node@22.9.0)(ts-node@10.9.2(@swc/core@1.8.0)(@types/node@22.9.0)(typescript@5.5.4)))(typescript@5.5.4) - '@workleap/swc-configs': - specifier: 2.2.3 - version: 2.2.3(@swc/core@1.8.0(@swc/helpers@0.5.13))(@swc/helpers@0.5.13)(@swc/jest@0.2.37(@swc/core@1.8.0(@swc/helpers@0.5.13)))(browserslist@4.24.2) + specifier: 3.2.5 + version: 3.2.5(@typescript-eslint/parser@8.18.0(eslint@8.57.0)(typescript@5.5.4))(eslint@8.57.0)(jest@29.7.0(@types/node@22.10.2)(ts-node@10.9.2(@swc/core@1.10.1(@swc/helpers@0.5.15))(@types/node@22.10.2)(typescript@5.5.4)))(typescript@5.5.4) '@workleap/typescript-configs': specifier: 3.0.2 version: 3.0.2(typescript@5.5.4) browserslist: - specifier: 4.24.2 - version: 4.24.2 + specifier: 4.24.3 + version: 4.24.3 copyfiles: specifier: 2.4.1 version: 2.4.1 @@ -895,23 +1720,14 @@ importers: specifier: 14.1.1 version: 14.1.1 netlify-cli: - specifier: 17.37.2 - version: 17.37.2(@swc/core@1.8.0(@swc/helpers@0.5.13))(@types/express@4.17.21)(@types/node@22.9.0)(picomatch@4.0.2) + specifier: 17.38.0 + version: 17.38.0(@swc/core@1.10.1)(@types/express@4.17.21)(@types/node@22.10.2)(picomatch@4.0.2) nodemon: - specifier: 3.1.7 - version: 3.1.7 + specifier: 3.1.9 + version: 3.1.9 typescript: specifier: 5.5.4 version: 5.5.4 - webpack: - specifier: 5.96.1 - version: 5.96.1(@swc/core@1.8.0(@swc/helpers@0.5.13))(webpack-cli@5.1.4) - webpack-cli: - specifier: 5.1.4 - version: 5.1.4(webpack-dev-server@5.1.0)(webpack@5.96.1) - webpack-dev-server: - specifier: 5.1.0 - version: 5.1.0(webpack-cli@5.1.4)(webpack@5.96.1) samples/basic/local-module: dependencies: @@ -927,76 +1743,58 @@ importers: '@squide/firefly': specifier: workspace:* version: link:../../../packages/firefly + '@types/react': + specifier: 19.0.1 + version: 19.0.1 + '@types/react-dom': + specifier: 19.0.2 + version: 19.0.2(@types/react@19.0.1) react: - specifier: 18.3.1 - version: 18.3.1 + specifier: 19.0.0 + version: 19.0.0 react-dom: - specifier: 18.3.1 - version: 18.3.1(react@18.3.1) + specifier: 19.0.0 + version: 19.0.0(react@19.0.0) react-router-dom: specifier: 6.27.0 - version: 6.27.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + version: 6.27.0(react-dom@19.0.0(react@19.0.0))(react@19.0.0) devDependencies: '@react-aria/toast': - specifier: 3.0.0-beta.17 - version: 3.0.0-beta.17(react@18.3.1) + specifier: 3.0.0-beta.18 + version: 3.0.0-beta.18(react@19.0.0) '@react-stately/toast': - specifier: 3.0.0-beta.6 - version: 3.0.0-beta.6(react@18.3.1) - '@squide/firefly-webpack-configs': + specifier: 3.0.0-beta.7 + version: 3.0.0-beta.7(react@19.0.0) + '@rsbuild/core': + specifier: 1.1.10 + version: 1.1.10 + '@squide/firefly-rsbuild-configs': specifier: workspace:* - version: link:../../../packages/firefly-webpack-configs - '@swc/core': - specifier: 1.8.0 - version: 1.8.0(@swc/helpers@0.5.13) - '@swc/helpers': - specifier: 0.5.13 - version: 0.5.13 - '@types/react': - specifier: 18.3.12 - version: 18.3.12 - '@types/react-dom': - specifier: 18.3.1 - version: 18.3.1 + version: link:../../../packages/firefly-rsbuild-configs + '@typescript-eslint/parser': + specifier: 8.18.0 + version: 8.18.0(eslint@8.57.0)(typescript@5.5.4) '@workleap/browserslist-config': specifier: 2.0.1 version: 2.0.1 '@workleap/eslint-plugin': - specifier: 3.2.3 - version: 3.2.3(@typescript-eslint/parser@8.13.0(eslint@8.57.0)(typescript@5.5.4))(eslint@8.57.0)(jest@29.7.0(@types/node@22.9.0)(ts-node@10.9.2(@swc/core@1.8.0)(@types/node@22.9.0)(typescript@5.5.4)))(typescript@5.5.4) - '@workleap/swc-configs': - specifier: 2.2.3 - version: 2.2.3(@swc/core@1.8.0(@swc/helpers@0.5.13))(@swc/helpers@0.5.13)(@swc/jest@0.2.37(@swc/core@1.8.0(@swc/helpers@0.5.13)))(browserslist@4.24.2) - '@workleap/tsup-configs': - specifier: 3.0.6 - version: 3.0.6(tsup@8.3.5(@swc/core@1.8.0)(jiti@2.4.0)(postcss@8.4.49)(tsx@4.19.2)(typescript@5.5.4)(yaml@2.6.0))(typescript@5.5.4) + specifier: 3.2.5 + version: 3.2.5(@typescript-eslint/parser@8.18.0(eslint@8.57.0)(typescript@5.5.4))(eslint@8.57.0)(jest@29.7.0(@types/node@22.10.2)(ts-node@10.9.2(@swc/core@1.10.1(@swc/helpers@0.5.15))(@types/node@22.10.2)(typescript@5.5.4)))(typescript@5.5.4) '@workleap/typescript-configs': specifier: 3.0.2 version: 3.0.2(typescript@5.5.4) browserslist: - specifier: 4.24.2 - version: 4.24.2 + specifier: 4.24.3 + version: 4.24.3 eslint: specifier: 8.57.0 version: 8.57.0 nodemon: - specifier: 3.1.7 - version: 3.1.7 - tsup: - specifier: 8.3.5 - version: 8.3.5(@swc/core@1.8.0)(jiti@2.4.0)(postcss@8.4.49)(tsx@4.19.2)(typescript@5.5.4)(yaml@2.6.0) + specifier: 3.1.9 + version: 3.1.9 typescript: specifier: 5.5.4 version: 5.5.4 - webpack: - specifier: 5.96.1 - version: 5.96.1(@swc/core@1.8.0(@swc/helpers@0.5.13))(webpack-cli@5.1.4) - webpack-cli: - specifier: 5.1.4 - version: 5.1.4(webpack-dev-server@5.1.0)(webpack@5.96.1) - webpack-dev-server: - specifier: 5.1.0 - version: 5.1.0(webpack-cli@5.1.4)(webpack@5.96.1) samples/basic/remote-module: dependencies: @@ -1007,11 +1805,11 @@ importers: specifier: workspace:* version: link:../shell '@react-aria/toast': - specifier: 3.0.0-beta.17 - version: 3.0.0-beta.17(react@18.3.1) + specifier: 3.0.0-beta.18 + version: 3.0.0-beta.18(react@19.0.0) '@react-stately/toast': - specifier: 3.0.0-beta.6 - version: 3.0.0-beta.6(react@18.3.1) + specifier: 3.0.0-beta.7 + version: 3.0.0-beta.7(react@19.0.0) '@squide/fakes': specifier: workspace:* version: link:../../../packages/fakes @@ -1019,48 +1817,45 @@ importers: specifier: workspace:* version: link:../../../packages/firefly react: - specifier: 18.3.1 - version: 18.3.1 + specifier: 19.0.0 + version: 19.0.0 react-dom: - specifier: 18.3.1 - version: 18.3.1(react@18.3.1) + specifier: 19.0.0 + version: 19.0.0(react@19.0.0) react-router-dom: specifier: 6.27.0 - version: 6.27.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + version: 6.27.0(react-dom@19.0.0(react@19.0.0))(react@19.0.0) useless-lib: specifier: ^2.1.0 version: 2.1.0 devDependencies: - '@squide/firefly-webpack-configs': + '@rsbuild/core': + specifier: 1.1.10 + version: 1.1.10 + '@squide/firefly-rsbuild-configs': specifier: workspace:* - version: link:../../../packages/firefly-webpack-configs - '@swc/core': - specifier: 1.8.0 - version: 1.8.0(@swc/helpers@0.5.13) - '@swc/helpers': - specifier: 0.5.13 - version: 0.5.13 + version: link:../../../packages/firefly-rsbuild-configs '@types/react': - specifier: 18.3.12 - version: 18.3.12 + specifier: 19.0.1 + version: 19.0.1 '@types/react-dom': - specifier: 18.3.1 - version: 18.3.1 + specifier: 19.0.2 + version: 19.0.2(@types/react@19.0.1) + '@typescript-eslint/parser': + specifier: 8.18.0 + version: 8.18.0(eslint@8.57.0)(typescript@5.5.4) '@workleap/browserslist-config': specifier: 2.0.1 version: 2.0.1 '@workleap/eslint-plugin': - specifier: 3.2.3 - version: 3.2.3(@typescript-eslint/parser@8.13.0(eslint@8.57.0)(typescript@5.5.4))(eslint@8.57.0)(jest@29.7.0(@types/node@22.9.0)(ts-node@10.9.2(@swc/core@1.8.0)(@types/node@22.9.0)(typescript@5.5.4)))(typescript@5.5.4) - '@workleap/swc-configs': - specifier: 2.2.3 - version: 2.2.3(@swc/core@1.8.0(@swc/helpers@0.5.13))(@swc/helpers@0.5.13)(@swc/jest@0.2.37(@swc/core@1.8.0(@swc/helpers@0.5.13)))(browserslist@4.24.2) + specifier: 3.2.5 + version: 3.2.5(@typescript-eslint/parser@8.18.0(eslint@8.57.0)(typescript@5.5.4))(eslint@8.57.0)(jest@29.7.0(@types/node@22.10.2)(ts-node@10.9.2(@swc/core@1.10.1(@swc/helpers@0.5.15))(@types/node@22.10.2)(typescript@5.5.4)))(typescript@5.5.4) '@workleap/typescript-configs': specifier: 3.0.2 version: 3.0.2(typescript@5.5.4) browserslist: - specifier: 4.24.2 - version: 4.24.2 + specifier: 4.24.3 + version: 4.24.3 cross-env: specifier: 7.0.3 version: 7.0.3 @@ -1071,63 +1866,48 @@ importers: specifier: 14.1.1 version: 14.1.1 netlify-cli: - specifier: 17.37.2 - version: 17.37.2(@swc/core@1.8.0(@swc/helpers@0.5.13))(@types/express@4.17.21)(@types/node@22.9.0)(picomatch@4.0.2) + specifier: 17.38.0 + version: 17.38.0(@swc/core@1.10.1)(@types/express@4.17.21)(@types/node@22.10.2)(picomatch@4.0.2) nodemon: - specifier: 3.1.7 - version: 3.1.7 + specifier: 3.1.9 + version: 3.1.9 typescript: specifier: 5.5.4 version: 5.5.4 - webpack: - specifier: 5.96.1 - version: 5.96.1(@swc/core@1.8.0(@swc/helpers@0.5.13))(webpack-cli@5.1.4) - webpack-cli: - specifier: 5.1.4 - version: 5.1.4(webpack-dev-server@5.1.0)(webpack@5.96.1) - webpack-dev-server: - specifier: 5.1.0 - version: 5.1.0(webpack-cli@5.1.4)(webpack@5.96.1) samples/basic/shared: dependencies: + '@types/react': + specifier: 19.0.1 + version: 19.0.1 + '@types/react-dom': + specifier: 19.0.2 + version: 19.0.2(@types/react@19.0.1) react: specifier: '*' - version: 18.3.1 + version: 19.0.0 react-dom: specifier: '*' - version: 18.3.1(react@18.3.1) + version: 19.0.0(react@19.0.0) react-router-dom: specifier: '*' - version: 6.27.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + version: 6.27.0(react-dom@19.0.0(react@19.0.0))(react@19.0.0) devDependencies: '@squide/firefly': specifier: workspace:* version: link:../../../packages/firefly - '@types/react': - specifier: 18.3.12 - version: 18.3.12 - '@types/react-dom': - specifier: 18.3.1 - version: 18.3.1 + '@typescript-eslint/parser': + specifier: 8.18.0 + version: 8.18.0(eslint@8.57.0)(typescript@5.5.4) '@workleap/eslint-plugin': - specifier: 3.2.3 - version: 3.2.3(@typescript-eslint/parser@8.13.0(eslint@8.57.0)(typescript@5.5.4))(eslint@8.57.0)(jest@29.7.0(@types/node@22.9.0)(ts-node@10.9.2(@swc/core@1.8.0)(@types/node@22.9.0)(typescript@5.5.4)))(typescript@5.5.4) - '@workleap/tsup-configs': - specifier: 3.0.6 - version: 3.0.6(tsup@8.3.5(@swc/core@1.8.0)(jiti@2.4.0)(postcss@8.4.49)(tsx@4.19.2)(typescript@5.5.4)(yaml@2.6.0))(typescript@5.5.4) + specifier: 3.2.5 + version: 3.2.5(@typescript-eslint/parser@8.18.0(eslint@8.57.0)(typescript@5.5.4))(eslint@8.57.0)(jest@29.7.0(@types/node@22.10.2)(ts-node@10.9.2(@swc/core@1.10.1(@swc/helpers@0.5.15))(@types/node@22.10.2)(typescript@5.5.4)))(typescript@5.5.4) '@workleap/typescript-configs': specifier: 3.0.2 version: 3.0.2(typescript@5.5.4) eslint: specifier: 8.57.0 version: 8.57.0 - nodemon: - specifier: 3.1.7 - version: 3.1.7 - tsup: - specifier: 8.3.5 - version: 8.3.5(@swc/core@1.8.0)(jiti@2.4.0)(postcss@8.4.49)(tsx@4.19.2)(typescript@5.5.4)(yaml@2.6.0) typescript: specifier: 5.5.4 version: 5.5.4 @@ -1136,19 +1916,25 @@ importers: dependencies: '@react-aria/toast': specifier: '*' - version: 3.0.0-beta.17(react@18.3.1) + version: 3.0.0-beta.18(react@19.0.0) '@react-stately/toast': specifier: '*' - version: 3.0.0-beta.6(react@18.3.1) + version: 3.0.0-beta.7(react@19.0.0) + '@types/react': + specifier: 19.0.1 + version: 19.0.1 + '@types/react-dom': + specifier: 19.0.2 + version: 19.0.2(@types/react@19.0.1) react: specifier: '*' - version: 18.3.1 + version: 19.0.0 react-dom: specifier: '*' - version: 18.3.1(react@18.3.1) + version: 19.0.0(react@19.0.0) react-router-dom: specifier: '*' - version: 6.27.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + version: 6.27.0(react-dom@19.0.0(react@19.0.0))(react@19.0.0) devDependencies: '@basic/shared': specifier: workspace:* @@ -1159,18 +1945,12 @@ importers: '@squide/firefly': specifier: workspace:* version: link:../../../packages/firefly - '@types/react': - specifier: 18.3.12 - version: 18.3.12 - '@types/react-dom': - specifier: 18.3.1 - version: 18.3.1 + '@typescript-eslint/parser': + specifier: 8.18.0 + version: 8.18.0(eslint@8.57.0)(typescript@5.5.4) '@workleap/eslint-plugin': - specifier: 3.2.3 - version: 3.2.3(@typescript-eslint/parser@8.13.0(eslint@8.57.0)(typescript@5.5.4))(eslint@8.57.0)(jest@29.7.0(@types/node@22.9.0)(ts-node@10.9.2(@swc/core@1.8.0)(@types/node@22.9.0)(typescript@5.5.4)))(typescript@5.5.4) - '@workleap/tsup-configs': - specifier: 3.0.6 - version: 3.0.6(tsup@8.3.5(@swc/core@1.8.0)(jiti@2.4.0)(postcss@8.4.49)(tsx@4.19.2)(typescript@5.5.4)(yaml@2.6.0))(typescript@5.5.4) + specifier: 3.2.5 + version: 3.2.5(@typescript-eslint/parser@8.18.0(eslint@8.57.0)(typescript@5.5.4))(eslint@8.57.0)(jest@29.7.0(@types/node@22.10.2)(ts-node@10.9.2(@swc/core@1.10.1(@swc/helpers@0.5.15))(@types/node@22.10.2)(typescript@5.5.4)))(typescript@5.5.4) '@workleap/typescript-configs': specifier: 3.0.2 version: 3.0.2(typescript@5.5.4) @@ -1178,11 +1958,8 @@ importers: specifier: 8.57.0 version: 8.57.0 nodemon: - specifier: 3.1.7 - version: 3.1.7 - tsup: - specifier: 8.3.5 - version: 8.3.5(@swc/core@1.8.0)(jiti@2.4.0)(postcss@8.4.49)(tsx@4.19.2)(typescript@5.5.4)(yaml@2.6.0) + specifier: 3.1.9 + version: 3.1.9 typescript: specifier: 5.5.4 version: 5.5.4 @@ -1193,26 +1970,26 @@ importers: specifier: 1.9.0 version: 1.9.0 '@opentelemetry/auto-instrumentations-node': - specifier: 0.52.0 - version: 0.52.0(@opentelemetry/api@1.9.0) - '@opentelemetry/exporter-trace-otlp-http': specifier: 0.54.0 version: 0.54.0(@opentelemetry/api@1.9.0) + '@opentelemetry/exporter-trace-otlp-http': + specifier: 0.56.0 + version: 0.56.0(@opentelemetry/api@1.9.0) '@opentelemetry/instrumentation-express': - specifier: 0.44.0 - version: 0.44.0(@opentelemetry/api@1.9.0) + specifier: 0.46.0 + version: 0.46.0(@opentelemetry/api@1.9.0) '@opentelemetry/instrumentation-http': - specifier: 0.54.0 - version: 0.54.0(@opentelemetry/api@1.9.0) + specifier: 0.56.0 + version: 0.56.0(@opentelemetry/api@1.9.0) '@opentelemetry/sdk-node': - specifier: 0.54.0 - version: 0.54.0(@opentelemetry/api@1.9.0) + specifier: 0.56.0 + version: 0.56.0(@opentelemetry/api@1.9.0) cors: specifier: 2.8.5 version: 2.8.5 express: - specifier: 4.21.1 - version: 4.21.1 + specifier: 4.21.2 + version: 4.21.2 devDependencies: '@types/cors': specifier: 2.8.17 @@ -1221,11 +1998,14 @@ importers: specifier: 5.0.0 version: 5.0.0 '@types/node': - specifier: 22.9.0 - version: 22.9.0 + specifier: 22.10.2 + version: 22.10.2 + '@typescript-eslint/parser': + specifier: 8.18.0 + version: 8.18.0(eslint@8.57.0)(typescript@5.5.4) '@workleap/eslint-plugin': - specifier: 3.2.3 - version: 3.2.3(@typescript-eslint/parser@8.13.0(eslint@8.57.0)(typescript@5.5.4))(eslint@8.57.0)(jest@29.7.0(@types/node@22.9.0)(ts-node@10.9.2(@swc/core@1.8.0)(@types/node@22.9.0)(typescript@5.5.4)))(typescript@5.5.4) + specifier: 3.2.5 + version: 3.2.5(@typescript-eslint/parser@8.18.0(eslint@8.57.0)(typescript@5.5.4))(eslint@8.57.0)(jest@29.7.0(@types/node@22.10.2)(ts-node@10.9.2(@swc/core@1.10.1(@swc/helpers@0.5.15))(@types/node@22.10.2)(typescript@5.5.4)))(typescript@5.5.4) '@workleap/typescript-configs': specifier: 3.0.2 version: 3.0.2(typescript@5.5.4) @@ -1233,8 +2013,8 @@ importers: specifier: 8.57.0 version: 8.57.0 nodemon: - specifier: 3.1.7 - version: 3.1.7 + specifier: 3.1.9 + version: 3.1.9 tsx: specifier: 4.19.2 version: 4.19.2 @@ -1260,17 +2040,20 @@ importers: specifier: workspace:* version: link:../shell '@honeycombio/opentelemetry-web': - specifier: 0.8.1 - version: 0.8.1(zone.js@0.14.10) + specifier: 0.10.0 + version: 0.10.0(zone.js@0.14.10) '@opentelemetry/api': specifier: 1.9.0 version: 1.9.0 '@opentelemetry/auto-instrumentations-web': - specifier: 0.42.0 - version: 0.42.0(@opentelemetry/api@1.9.0)(zone.js@0.14.10) + specifier: 0.44.0 + version: 0.44.0(@opentelemetry/api@1.9.0)(zone.js@0.14.10) + '@opentelemetry/instrumentation-fetch': + specifier: 0.56.0 + version: 0.56.0(@opentelemetry/api@1.9.0) '@opentelemetry/sdk-trace-web': - specifier: 1.26.0 - version: 1.26.0(@opentelemetry/api@1.9.0) + specifier: 1.29.0 + version: 1.29.0(@opentelemetry/api@1.9.0) '@squide/env-vars': specifier: workspace:* version: link:../../../packages/env-vars @@ -1287,63 +2070,60 @@ importers: specifier: workspace:* version: link:../../../packages/i18next '@tanstack/react-query': - specifier: 5.59.19 - version: 5.59.19(react@18.3.1) + specifier: 5.62.7 + version: 5.62.7(react@19.0.0) i18next: - specifier: 23.16.4 - version: 23.16.4 + specifier: 24.1.0 + version: 24.1.0(typescript@5.5.4) i18next-browser-languagedetector: - specifier: 8.0.0 - version: 8.0.0 + specifier: 8.0.2 + version: 8.0.2 msw: - specifier: 2.6.1 - version: 2.6.1(@types/node@22.9.0)(typescript@5.5.4) + specifier: 2.6.9 + version: 2.6.9(@types/node@22.10.2)(typescript@5.5.4) react: - specifier: 18.3.1 - version: 18.3.1 + specifier: 19.0.0 + version: 19.0.0 react-dom: - specifier: 18.3.1 - version: 18.3.1(react@18.3.1) + specifier: 19.0.0 + version: 19.0.0(react@19.0.0) react-error-boundary: specifier: 4.1.2 - version: 4.1.2(react@18.3.1) + version: 4.1.2(react@19.0.0) react-i18next: - specifier: 15.1.0 - version: 15.1.0(i18next@23.16.4)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + specifier: 15.2.0 + version: 15.2.0(i18next@24.1.0(typescript@5.5.4))(react-dom@19.0.0(react@19.0.0))(react@19.0.0) react-router-dom: specifier: 6.27.0 - version: 6.27.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + version: 6.27.0(react-dom@19.0.0(react@19.0.0))(react@19.0.0) devDependencies: - '@squide/firefly-webpack-configs': + '@rsbuild/core': + specifier: 1.1.10 + version: 1.1.10 + '@squide/firefly-rsbuild-configs': specifier: workspace:* - version: link:../../../packages/firefly-webpack-configs - '@swc/core': - specifier: 1.8.0 - version: 1.8.0(@swc/helpers@0.5.13) - '@swc/helpers': - specifier: 0.5.13 - version: 0.5.13 + version: link:../../../packages/firefly-rsbuild-configs '@types/react': - specifier: 18.3.12 - version: 18.3.12 + specifier: 19.0.1 + version: 19.0.1 '@types/react-dom': - specifier: 18.3.1 - version: 18.3.1 + specifier: 19.0.2 + version: 19.0.2(@types/react@19.0.1) + '@typescript-eslint/parser': + specifier: 8.18.0 + version: 8.18.0(eslint@8.57.0)(typescript@5.5.4) '@workleap/browserslist-config': specifier: 2.0.1 version: 2.0.1 '@workleap/eslint-plugin': - specifier: 3.2.3 - version: 3.2.3(@typescript-eslint/parser@8.13.0(eslint@8.57.0)(typescript@5.5.4))(eslint@8.57.0)(jest@29.7.0(@types/node@22.9.0)(ts-node@10.9.2(@swc/core@1.8.0)(@types/node@22.9.0)(typescript@5.5.4)))(typescript@5.5.4) - '@workleap/swc-configs': - specifier: 2.2.3 - version: 2.2.3(@swc/core@1.8.0(@swc/helpers@0.5.13))(@swc/helpers@0.5.13)(@swc/jest@0.2.37(@swc/core@1.8.0(@swc/helpers@0.5.13)))(browserslist@4.24.2) + specifier: 3.2.5 + version: 3.2.5(@typescript-eslint/parser@8.18.0(eslint@8.57.0)(typescript@5.5.4))(eslint@8.57.0)(jest@29.7.0(@types/node@22.10.2)(ts-node@10.9.2(@swc/core@1.10.1(@swc/helpers@0.5.15))(@types/node@22.10.2)(typescript@5.5.4)))(typescript@5.5.4) '@workleap/typescript-configs': specifier: 3.0.2 version: 3.0.2(typescript@5.5.4) browserslist: - specifier: 4.24.2 - version: 4.24.2 + specifier: 4.24.3 + version: 4.24.3 copyfiles: specifier: 2.4.1 version: 2.4.1 @@ -1357,41 +2137,32 @@ importers: specifier: 14.1.1 version: 14.1.1 netlify-cli: - specifier: 17.37.2 - version: 17.37.2(@swc/core@1.8.0(@swc/helpers@0.5.13))(@types/express@4.17.21)(@types/node@22.9.0)(picomatch@4.0.2) + specifier: 17.38.0 + version: 17.38.0(@swc/core@1.10.1)(@types/express@4.17.21)(@types/node@22.10.2)(picomatch@4.0.2) nodemon: - specifier: 3.1.7 - version: 3.1.7 + specifier: 3.1.9 + version: 3.1.9 typescript: specifier: 5.5.4 version: 5.5.4 - webpack: - specifier: 5.96.1 - version: 5.96.1(@swc/core@1.8.0(@swc/helpers@0.5.13))(webpack-cli@5.1.4) - webpack-cli: - specifier: 5.1.4 - version: 5.1.4(webpack-dev-server@5.1.0)(webpack@5.96.1) - webpack-dev-server: - specifier: 5.1.0 - version: 5.1.0(webpack-cli@5.1.4)(webpack@5.96.1) samples/endpoints/i18next: dependencies: i18next: specifier: '*' - version: 23.16.4 + version: 24.1.0(typescript@5.5.4) i18next-browser-languagedetector: specifier: '*' - version: 8.0.0 + version: 8.0.2 react: specifier: '*' - version: 18.3.1 + version: 19.0.0 react-dom: specifier: '*' - version: 18.3.1(react@18.3.1) + version: 19.0.0(react@19.0.0) react-i18next: specifier: '*' - version: 15.1.0(i18next@23.16.4)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + version: 15.2.0(i18next@24.1.0(typescript@5.5.4))(react-dom@19.0.0(react@19.0.0))(react@19.0.0) devDependencies: '@endpoints/shared': specifier: workspace:* @@ -1402,24 +2173,18 @@ importers: '@squide/i18next': specifier: workspace:* version: link:../../../packages/i18next + '@typescript-eslint/parser': + specifier: 8.18.0 + version: 8.18.0(eslint@8.57.0)(typescript@5.5.4) '@workleap/eslint-plugin': - specifier: 3.2.3 - version: 3.2.3(@typescript-eslint/parser@8.13.0(eslint@8.57.0)(typescript@5.5.4))(eslint@8.57.0)(jest@29.7.0(@types/node@22.9.0)(ts-node@10.9.2(@swc/core@1.8.0)(@types/node@22.9.0)(typescript@5.5.4)))(typescript@5.5.4) - '@workleap/tsup-configs': - specifier: 3.0.6 - version: 3.0.6(tsup@8.3.5(@swc/core@1.8.0)(jiti@2.4.0)(postcss@8.4.49)(tsx@4.19.2)(typescript@5.5.4)(yaml@2.6.0))(typescript@5.5.4) + specifier: 3.2.5 + version: 3.2.5(@typescript-eslint/parser@8.18.0(eslint@8.57.0)(typescript@5.5.4))(eslint@8.57.0)(jest@29.7.0(@types/node@22.10.2)(ts-node@10.9.2(@swc/core@1.10.1(@swc/helpers@0.5.15))(@types/node@22.10.2)(typescript@5.5.4)))(typescript@5.5.4) '@workleap/typescript-configs': specifier: 3.0.2 version: 3.0.2(typescript@5.5.4) eslint: specifier: 8.57.0 version: 8.57.0 - nodemon: - specifier: 3.1.7 - version: 3.1.7 - tsup: - specifier: 8.3.5 - version: 8.3.5(@swc/core@1.8.0)(jiti@2.4.0)(postcss@8.4.49)(tsx@4.19.2)(typescript@5.5.4)(yaml@2.6.0) typescript: specifier: 5.5.4 version: 5.5.4 @@ -1428,25 +2193,25 @@ importers: dependencies: i18next: specifier: '*' - version: 23.16.4 + version: 24.1.0(typescript@5.5.4) i18next-browser-languagedetector: specifier: '*' - version: 8.0.0 + version: 8.0.2 react: specifier: '*' - version: 18.3.1 + version: 19.0.0 react-dom: specifier: '*' - version: 18.3.1(react@18.3.1) + version: 19.0.0(react@19.0.0) react-error-boundary: specifier: '*' - version: 4.1.2(react@18.3.1) + version: 4.1.2(react@19.0.0) react-i18next: specifier: '*' - version: 15.1.0(i18next@23.16.4)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + version: 15.2.0(i18next@24.1.0(typescript@5.5.4))(react-dom@19.0.0(react@19.0.0))(react@19.0.0) react-router-dom: specifier: '*' - version: 6.27.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + version: 6.27.0(react-dom@19.0.0(react@19.0.0))(react@19.0.0) devDependencies: '@endpoints/i18next': specifier: workspace:* @@ -1461,29 +2226,23 @@ importers: specifier: workspace:* version: link:../../../packages/i18next '@types/react': - specifier: 18.3.12 - version: 18.3.12 + specifier: 19.0.1 + version: 19.0.1 '@types/react-dom': - specifier: 18.3.1 - version: 18.3.1 + specifier: 19.0.2 + version: 19.0.2(@types/react@19.0.1) + '@typescript-eslint/parser': + specifier: 8.18.0 + version: 8.18.0(eslint@8.57.0)(typescript@5.5.4) '@workleap/eslint-plugin': - specifier: 3.2.3 - version: 3.2.3(@typescript-eslint/parser@8.13.0(eslint@8.57.0)(typescript@5.5.4))(eslint@8.57.0)(jest@29.7.0(@types/node@22.9.0)(ts-node@10.9.2(@swc/core@1.8.0)(@types/node@22.9.0)(typescript@5.5.4)))(typescript@5.5.4) - '@workleap/tsup-configs': - specifier: 3.0.6 - version: 3.0.6(tsup@8.3.5(@swc/core@1.8.0)(jiti@2.4.0)(postcss@8.4.49)(tsx@4.19.2)(typescript@5.5.4)(yaml@2.6.0))(typescript@5.5.4) + specifier: 3.2.5 + version: 3.2.5(@typescript-eslint/parser@8.18.0(eslint@8.57.0)(typescript@5.5.4))(eslint@8.57.0)(jest@29.7.0(@types/node@22.10.2)(ts-node@10.9.2(@swc/core@1.10.1(@swc/helpers@0.5.15))(@types/node@22.10.2)(typescript@5.5.4)))(typescript@5.5.4) '@workleap/typescript-configs': specifier: 3.0.2 version: 3.0.2(typescript@5.5.4) eslint: specifier: 8.57.0 version: 8.57.0 - nodemon: - specifier: 3.1.7 - version: 3.1.7 - tsup: - specifier: 8.3.5 - version: 8.3.5(@swc/core@1.8.0)(jiti@2.4.0)(postcss@8.4.49)(tsx@4.19.2)(typescript@5.5.4)(yaml@2.6.0) typescript: specifier: 5.5.4 version: 5.5.4 @@ -1515,69 +2274,63 @@ importers: specifier: workspace:* version: link:../../../packages/i18next '@tanstack/react-query': - specifier: 5.59.19 - version: 5.59.19(react@18.3.1) + specifier: 5.62.7 + version: 5.62.7(react@19.0.0) i18next: - specifier: 23.16.4 - version: 23.16.4 + specifier: 24.1.0 + version: 24.1.0(typescript@5.5.4) i18next-browser-languagedetector: - specifier: 8.0.0 - version: 8.0.0 + specifier: 8.0.2 + version: 8.0.2 msw: - specifier: 2.6.1 - version: 2.6.1(@types/node@22.9.0)(typescript@5.5.4) + specifier: 2.6.9 + version: 2.6.9(@types/node@22.10.2)(typescript@5.5.4) react: - specifier: 18.3.1 - version: 18.3.1 + specifier: 19.0.0 + version: 19.0.0 react-dom: - specifier: 18.3.1 - version: 18.3.1(react@18.3.1) + specifier: 19.0.0 + version: 19.0.0(react@19.0.0) react-error-boundary: specifier: 4.1.2 - version: 4.1.2(react@18.3.1) + version: 4.1.2(react@19.0.0) react-i18next: - specifier: 15.1.0 - version: 15.1.0(i18next@23.16.4)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + specifier: 15.2.0 + version: 15.2.0(i18next@24.1.0(typescript@5.5.4))(react-dom@19.0.0(react@19.0.0))(react@19.0.0) react-router-dom: specifier: 6.27.0 - version: 6.27.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + version: 6.27.0(react-dom@19.0.0(react@19.0.0))(react@19.0.0) devDependencies: - '@squide/firefly-webpack-configs': + '@rsbuild/core': + specifier: 1.1.10 + version: 1.1.10 + '@squide/firefly-rsbuild-configs': specifier: workspace:* - version: link:../../../packages/firefly-webpack-configs - '@swc/core': - specifier: 1.8.0 - version: 1.8.0(@swc/helpers@0.5.13) - '@swc/helpers': - specifier: 0.5.13 - version: 0.5.13 + version: link:../../../packages/firefly-rsbuild-configs '@tanstack/react-query-devtools': - specifier: 5.59.19 - version: 5.59.19(@tanstack/react-query@5.59.19(react@18.3.1))(react@18.3.1) + specifier: 5.62.7 + version: 5.62.7(@tanstack/react-query@5.62.7(react@19.0.0))(react@19.0.0) '@types/react': - specifier: 18.3.12 - version: 18.3.12 + specifier: 19.0.1 + version: 19.0.1 '@types/react-dom': - specifier: 18.3.1 - version: 18.3.1 + specifier: 19.0.2 + version: 19.0.2(@types/react@19.0.1) + '@typescript-eslint/parser': + specifier: 8.18.0 + version: 8.18.0(eslint@8.57.0)(typescript@5.5.4) '@workleap/browserslist-config': specifier: 2.0.1 version: 2.0.1 '@workleap/eslint-plugin': - specifier: 3.2.3 - version: 3.2.3(@typescript-eslint/parser@8.13.0(eslint@8.57.0)(typescript@5.5.4))(eslint@8.57.0)(jest@29.7.0(@types/node@22.9.0)(ts-node@10.9.2(@swc/core@1.8.0)(@types/node@22.9.0)(typescript@5.5.4)))(typescript@5.5.4) - '@workleap/swc-configs': - specifier: 2.2.3 - version: 2.2.3(@swc/core@1.8.0(@swc/helpers@0.5.13))(@swc/helpers@0.5.13)(@swc/jest@0.2.37(@swc/core@1.8.0(@swc/helpers@0.5.13)))(browserslist@4.24.2) - '@workleap/tsup-configs': - specifier: 3.0.6 - version: 3.0.6(tsup@8.3.5(@swc/core@1.8.0)(jiti@2.4.0)(postcss@8.4.49)(tsx@4.19.2)(typescript@5.5.4)(yaml@2.6.0))(typescript@5.5.4) + specifier: 3.2.5 + version: 3.2.5(@typescript-eslint/parser@8.18.0(eslint@8.57.0)(typescript@5.5.4))(eslint@8.57.0)(jest@29.7.0(@types/node@22.10.2)(ts-node@10.9.2(@swc/core@1.10.1(@swc/helpers@0.5.15))(@types/node@22.10.2)(typescript@5.5.4)))(typescript@5.5.4) '@workleap/typescript-configs': specifier: 3.0.2 version: 3.0.2(typescript@5.5.4) browserslist: - specifier: 4.24.2 - version: 4.24.2 + specifier: 4.24.3 + version: 4.24.3 cross-env: specifier: 7.0.3 version: 7.0.3 @@ -1588,23 +2341,11 @@ importers: specifier: 14.1.1 version: 14.1.1 nodemon: - specifier: 3.1.7 - version: 3.1.7 - tsup: - specifier: 8.3.5 - version: 8.3.5(@swc/core@1.8.0)(jiti@2.4.0)(postcss@8.4.49)(tsx@4.19.2)(typescript@5.5.4)(yaml@2.6.0) + specifier: 3.1.9 + version: 3.1.9 typescript: specifier: 5.5.4 version: 5.5.4 - webpack: - specifier: 5.96.1 - version: 5.96.1(@swc/core@1.8.0(@swc/helpers@0.5.13))(webpack-cli@5.1.4) - webpack-cli: - specifier: 5.1.4 - version: 5.1.4(webpack-dev-server@5.1.0)(webpack@5.96.1) - webpack-dev-server: - specifier: 5.1.0 - version: 5.1.0(webpack-cli@5.1.4)(webpack@5.96.1) samples/endpoints/remote-module: dependencies: @@ -1633,66 +2374,63 @@ importers: specifier: workspace:* version: link:../../../packages/i18next '@tanstack/react-query': - specifier: 5.59.19 - version: 5.59.19(react@18.3.1) + specifier: 5.62.7 + version: 5.62.7(react@19.0.0) i18next: - specifier: 23.16.4 - version: 23.16.4 + specifier: 24.1.0 + version: 24.1.0(typescript@5.5.4) i18next-browser-languagedetector: - specifier: 8.0.0 - version: 8.0.0 + specifier: 8.0.2 + version: 8.0.2 msw: - specifier: 2.6.1 - version: 2.6.1(@types/node@22.9.0)(typescript@5.5.4) + specifier: 2.6.9 + version: 2.6.9(@types/node@22.10.2)(typescript@5.5.4) react: - specifier: 18.3.1 - version: 18.3.1 + specifier: 19.0.0 + version: 19.0.0 react-dom: - specifier: 18.3.1 - version: 18.3.1(react@18.3.1) + specifier: 19.0.0 + version: 19.0.0(react@19.0.0) react-error-boundary: specifier: 4.1.2 - version: 4.1.2(react@18.3.1) + version: 4.1.2(react@19.0.0) react-i18next: - specifier: 15.1.0 - version: 15.1.0(i18next@23.16.4)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + specifier: 15.2.0 + version: 15.2.0(i18next@24.1.0(typescript@5.5.4))(react-dom@19.0.0(react@19.0.0))(react@19.0.0) react-router-dom: specifier: 6.27.0 - version: 6.27.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + version: 6.27.0(react-dom@19.0.0(react@19.0.0))(react@19.0.0) devDependencies: - '@squide/firefly-webpack-configs': + '@rsbuild/core': + specifier: 1.1.10 + version: 1.1.10 + '@squide/firefly-rsbuild-configs': specifier: workspace:* - version: link:../../../packages/firefly-webpack-configs - '@swc/core': - specifier: 1.8.0 - version: 1.8.0(@swc/helpers@0.5.13) - '@swc/helpers': - specifier: 0.5.13 - version: 0.5.13 + version: link:../../../packages/firefly-rsbuild-configs '@tanstack/react-query-devtools': - specifier: 5.59.19 - version: 5.59.19(@tanstack/react-query@5.59.19(react@18.3.1))(react@18.3.1) + specifier: 5.62.7 + version: 5.62.7(@tanstack/react-query@5.62.7(react@19.0.0))(react@19.0.0) '@types/react': - specifier: 18.3.12 - version: 18.3.12 + specifier: 19.0.1 + version: 19.0.1 '@types/react-dom': - specifier: 18.3.1 - version: 18.3.1 + specifier: 19.0.2 + version: 19.0.2(@types/react@19.0.1) + '@typescript-eslint/parser': + specifier: 8.18.0 + version: 8.18.0(eslint@8.57.0)(typescript@5.5.4) '@workleap/browserslist-config': specifier: 2.0.1 version: 2.0.1 '@workleap/eslint-plugin': - specifier: 3.2.3 - version: 3.2.3(@typescript-eslint/parser@8.13.0(eslint@8.57.0)(typescript@5.5.4))(eslint@8.57.0)(jest@29.7.0(@types/node@22.9.0)(ts-node@10.9.2(@swc/core@1.8.0)(@types/node@22.9.0)(typescript@5.5.4)))(typescript@5.5.4) - '@workleap/swc-configs': - specifier: 2.2.3 - version: 2.2.3(@swc/core@1.8.0(@swc/helpers@0.5.13))(@swc/helpers@0.5.13)(@swc/jest@0.2.37(@swc/core@1.8.0(@swc/helpers@0.5.13)))(browserslist@4.24.2) + specifier: 3.2.5 + version: 3.2.5(@typescript-eslint/parser@8.18.0(eslint@8.57.0)(typescript@5.5.4))(eslint@8.57.0)(jest@29.7.0(@types/node@22.10.2)(ts-node@10.9.2(@swc/core@1.10.1(@swc/helpers@0.5.15))(@types/node@22.10.2)(typescript@5.5.4)))(typescript@5.5.4) '@workleap/typescript-configs': specifier: 3.0.2 version: 3.0.2(typescript@5.5.4) browserslist: - specifier: 4.24.2 - version: 4.24.2 + specifier: 4.24.3 + version: 4.24.3 copyfiles: specifier: 2.4.1 version: 2.4.1 @@ -1706,35 +2444,26 @@ importers: specifier: 14.1.1 version: 14.1.1 netlify-cli: - specifier: 17.37.2 - version: 17.37.2(@swc/core@1.8.0(@swc/helpers@0.5.13))(@types/express@4.17.21)(@types/node@22.9.0)(picomatch@4.0.2) + specifier: 17.38.0 + version: 17.38.0(@swc/core@1.10.1)(@types/express@4.17.21)(@types/node@22.10.2)(picomatch@4.0.2) nodemon: - specifier: 3.1.7 - version: 3.1.7 + specifier: 3.1.9 + version: 3.1.9 typescript: specifier: 5.5.4 - version: 5.5.4 - webpack: - specifier: 5.96.1 - version: 5.96.1(@swc/core@1.8.0(@swc/helpers@0.5.13))(webpack-cli@5.1.4) - webpack-cli: - specifier: 5.1.4 - version: 5.1.4(webpack-dev-server@5.1.0)(webpack@5.96.1) - webpack-dev-server: - specifier: 5.1.0 - version: 5.1.0(webpack-cli@5.1.4)(webpack@5.96.1) + version: 5.5.4 samples/endpoints/shared: dependencies: react: specifier: '*' - version: 18.3.1 + version: 19.0.0 react-dom: specifier: '*' - version: 18.3.1(react@18.3.1) + version: 19.0.0(react@19.0.0) uuid: - specifier: 11.0.2 - version: 11.0.2 + specifier: 11.0.3 + version: 11.0.3 devDependencies: '@squide/fakes': specifier: workspace:* @@ -1743,32 +2472,26 @@ importers: specifier: workspace:* version: link:../../../packages/firefly '@types/react': - specifier: 18.3.12 - version: 18.3.12 + specifier: 19.0.1 + version: 19.0.1 '@types/react-dom': - specifier: 18.3.1 - version: 18.3.1 + specifier: 19.0.2 + version: 19.0.2(@types/react@19.0.1) '@types/uuid': specifier: 10.0.0 version: 10.0.0 + '@typescript-eslint/parser': + specifier: 8.18.0 + version: 8.18.0(eslint@8.57.0)(typescript@5.5.4) '@workleap/eslint-plugin': - specifier: 3.2.3 - version: 3.2.3(@typescript-eslint/parser@8.13.0(eslint@8.57.0)(typescript@5.5.4))(eslint@8.57.0)(jest@29.7.0(@types/node@22.9.0)(ts-node@10.9.2(@swc/core@1.8.0)(@types/node@22.9.0)(typescript@5.5.4)))(typescript@5.5.4) - '@workleap/tsup-configs': - specifier: 3.0.6 - version: 3.0.6(tsup@8.3.5(@swc/core@1.8.0)(jiti@2.4.0)(postcss@8.4.49)(tsx@4.19.2)(typescript@5.5.4)(yaml@2.6.0))(typescript@5.5.4) + specifier: 3.2.5 + version: 3.2.5(@typescript-eslint/parser@8.18.0(eslint@8.57.0)(typescript@5.5.4))(eslint@8.57.0)(jest@29.7.0(@types/node@22.10.2)(ts-node@10.9.2(@swc/core@1.10.1(@swc/helpers@0.5.15))(@types/node@22.10.2)(typescript@5.5.4)))(typescript@5.5.4) '@workleap/typescript-configs': specifier: 3.0.2 version: 3.0.2(typescript@5.5.4) eslint: specifier: 8.57.0 version: 8.57.0 - nodemon: - specifier: 3.1.7 - version: 3.1.7 - tsup: - specifier: 8.3.5 - version: 8.3.5(@swc/core@1.8.0)(jiti@2.4.0)(postcss@8.4.49)(tsx@4.19.2)(typescript@5.5.4)(yaml@2.6.0) typescript: specifier: 5.5.4 version: 5.5.4 @@ -1777,31 +2500,31 @@ importers: dependencies: '@tanstack/react-query': specifier: '*' - version: 5.59.19(react@18.3.1) + version: 5.62.7(react@19.0.0) i18next: specifier: '*' - version: 23.16.4 + version: 24.1.0(typescript@5.5.4) i18next-browser-languagedetector: specifier: '*' - version: 8.0.0 + version: 8.0.2 msw: specifier: '*' - version: 2.6.1(@types/node@22.9.0)(typescript@5.5.4) + version: 2.6.9(@types/node@22.10.2)(typescript@5.5.4) react: specifier: '*' - version: 18.3.1 + version: 19.0.0 react-dom: specifier: '*' - version: 18.3.1(react@18.3.1) + version: 19.0.0(react@19.0.0) react-error-boundary: specifier: '*' - version: 4.1.2(react@18.3.1) + version: 4.1.2(react@19.0.0) react-i18next: specifier: '*' - version: 15.1.0(i18next@23.16.4)(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + version: 15.2.0(i18next@24.1.0(typescript@5.5.4))(react-dom@19.0.0(react@19.0.0))(react@19.0.0) react-router-dom: specifier: '*' - version: 6.27.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1) + version: 6.27.0(react-dom@19.0.0(react@19.0.0))(react@19.0.0) devDependencies: '@endpoints/i18next': specifier: workspace:* @@ -1828,32 +2551,26 @@ importers: specifier: workspace:* version: link:../../../packages/i18next '@types/node': - specifier: 22.9.0 - version: 22.9.0 + specifier: 22.10.2 + version: 22.10.2 '@types/react': - specifier: 18.3.12 - version: 18.3.12 + specifier: 19.0.1 + version: 19.0.1 '@types/react-dom': - specifier: 18.3.1 - version: 18.3.1 + specifier: 19.0.2 + version: 19.0.2(@types/react@19.0.1) + '@typescript-eslint/parser': + specifier: 8.18.0 + version: 8.18.0(eslint@8.57.0)(typescript@5.5.4) '@workleap/eslint-plugin': - specifier: 3.2.3 - version: 3.2.3(@typescript-eslint/parser@8.13.0(eslint@8.57.0)(typescript@5.5.4))(eslint@8.57.0)(jest@29.7.0(@types/node@22.9.0)(ts-node@10.9.2(@swc/core@1.8.0)(@types/node@22.9.0)(typescript@5.5.4)))(typescript@5.5.4) - '@workleap/tsup-configs': - specifier: 3.0.6 - version: 3.0.6(tsup@8.3.5(@swc/core@1.8.0)(jiti@2.4.0)(postcss@8.4.49)(tsx@4.19.2)(typescript@5.5.4)(yaml@2.6.0))(typescript@5.5.4) + specifier: 3.2.5 + version: 3.2.5(@typescript-eslint/parser@8.18.0(eslint@8.57.0)(typescript@5.5.4))(eslint@8.57.0)(jest@29.7.0(@types/node@22.10.2)(ts-node@10.9.2(@swc/core@1.10.1(@swc/helpers@0.5.15))(@types/node@22.10.2)(typescript@5.5.4)))(typescript@5.5.4) '@workleap/typescript-configs': specifier: 3.0.2 version: 3.0.2(typescript@5.5.4) eslint: specifier: 8.57.0 version: 8.57.0 - nodemon: - specifier: 3.1.7 - version: 3.1.7 - tsup: - specifier: 8.3.5 - version: 8.3.5(@swc/core@1.8.0)(jiti@2.4.0)(postcss@8.4.49)(tsx@4.19.2)(typescript@5.5.4)(yaml@2.6.0) typescript: specifier: 5.5.4 version: 5.5.4 @@ -1863,6 +2580,9 @@ packages: '@adobe/css-tools@4.4.1': resolution: {integrity: sha512-12WGKBQzjUAI4ayyF4IAtfw2QR/IDoqk6jTddXDhtYTJF9ASmoE1zst7cVtP0aL/F1jUJL5r+JxKXKEgHNbEUQ==} + '@altano/repository-tools@0.1.1': + resolution: {integrity: sha512-5vbUs2A98CC3g1AlOBdkBE0BMukkLjLIsMHAtuxg6Pt9dQXxYWdLKOf66v6c/vIqtNcgTMv0oGtddLdMuH9X6w==} + '@ampproject/remapping@2.3.0': resolution: {integrity: sha512-30iZtAPgz+LTIYoeivqYo853f02jBYSd5uGnGpkFV0M3xOt9aN73erkgYAmZU43x4VfqcnLxW9Kpg3R5LC4YYw==} engines: {node: '>=6.0.0'} @@ -1871,26 +2591,22 @@ packages: resolution: {integrity: sha512-RJlIHRueQgwWitWgF8OdFYGZX328Ax5BCemNGlqHfplnRT9ESi8JkFlvaVYbS+UubVY6dpv87Fs2u5M29iNFVQ==} engines: {node: '>=6.9.0'} - '@babel/compat-data@7.26.2': - resolution: {integrity: sha512-Z0WgzSEa+aUcdiJuCIqgujCshpMWgUpgOxXotrYPSA53hA3qopNaqcJpyr0hVb1FeWdnqFA35/fUtXgBK8srQg==} + '@babel/compat-data@7.26.3': + resolution: {integrity: sha512-nHIxvKPniQXpmQLb0vhY3VaFb3S0YrTAwpOWJZh1wn3oJPjJk9Asva204PsBdmAE8vpzfHudT8DB0scYvy9q0g==} engines: {node: '>=6.9.0'} '@babel/core@7.26.0': resolution: {integrity: sha512-i1SLeK+DzNnQ3LL/CswPCa/E5u4lh1k6IAEphON8F+cXt0t9euTshDru0q7/IqMa1PMPz5RnHuHscF8/ZJsStg==} engines: {node: '>=6.9.0'} - '@babel/generator@7.26.2': - resolution: {integrity: sha512-zevQbhbau95nkoxSq3f/DC/SC+EEOUZd3DYqfSkMhY2/wfSeaHV1Ew4vk8e+x8lja31IbyuUa2uQ3JONqKbysw==} + '@babel/generator@7.26.3': + resolution: {integrity: sha512-6FF/urZvD0sTeO7k6/B15pMLC4CHUv1426lzr3N01aHJTl046uCAh9LXW/fzeXXjPNCJ6iABW5XaWOsIZB93aQ==} engines: {node: '>=6.9.0'} '@babel/helper-annotate-as-pure@7.25.9': resolution: {integrity: sha512-gv7320KBUFJz1RnylIg5WWYPRXKZ884AGkYpgpWW02TH66Dl+HaC1t1CKd0z3R4b6hdYEcmrNZHUmfCP+1u3/g==} engines: {node: '>=6.9.0'} - '@babel/helper-builder-binary-assignment-operator-visitor@7.25.9': - resolution: {integrity: sha512-C47lC7LIDCnz0h4vai/tpNOI95tCd5ZT3iBt/DBH5lXKHZsyNQv18yf1wIIg2ntiQNgmAvA+DgZ82iW8Qdym8g==} - engines: {node: '>=6.9.0'} - '@babel/helper-compilation-targets@7.25.9': resolution: {integrity: sha512-j9Db8Suy6yV/VHa4qzrj9yZfZxhLWQdVnRlXxmKLYlhWUVB1sB2G5sxuWYXk/whHD9iW76PmNzxZ4UCnTQTVEQ==} engines: {node: '>=6.9.0'} @@ -1901,8 +2617,8 @@ packages: peerDependencies: '@babel/core': ^7.0.0 - '@babel/helper-create-regexp-features-plugin@7.25.9': - resolution: {integrity: sha512-ORPNZ3h6ZRkOyAa/SaHU+XsLZr0UQzRwuDQ0cczIA17nAzZ+85G5cVkOJIj7QavLZGSe8QXUmNFxSZzjcZF9bw==} + '@babel/helper-create-regexp-features-plugin@7.26.3': + resolution: {integrity: sha512-G7ZRb40uUgdKOQqPLjfD12ZmGA54PzqDFUv2BKImnC9QIfGhIHKvVML0oN8IUiDq4iRqpq74ABpvOaerfWdong==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0 @@ -1946,10 +2662,6 @@ packages: peerDependencies: '@babel/core': ^7.0.0 - '@babel/helper-simple-access@7.25.9': - resolution: {integrity: sha512-c6WHXuiaRsJTyHYLJV75t9IqsmTbItYfdj99PnzYGQZkYKvan5/2jKJ7gu31J3/BJ/A18grImSPModuyG/Eo0Q==} - engines: {node: '>=6.9.0'} - '@babel/helper-skip-transparent-expression-wrappers@7.25.9': resolution: {integrity: sha512-K4Du3BFa3gvyhzgPcntrkDgZzQaq6uozzcpGbOO1OEJaI+EJdqWIMTLgFgQf6lrfiDFo5FU+BxKepI9RmZqahA==} engines: {node: '>=6.9.0'} @@ -1974,8 +2686,8 @@ packages: resolution: {integrity: sha512-tbhNuIxNcVb21pInl3ZSjksLCvgdZy9KwJ8brv993QtIVKJBBkYXz4q4ZbAv31GdnC+R90np23L5FbEBlthAEw==} engines: {node: '>=6.9.0'} - '@babel/parser@7.26.2': - resolution: {integrity: sha512-DWMCZH9WA4Maitz2q21SRKHo9QXZxkDsbNZoVD62gusNtNBBqDg9i7uOhASfTfIGNzW+O+r7+jAlM8dwphcJKQ==} + '@babel/parser@7.26.3': + resolution: {integrity: sha512-WJ/CvmY8Mea8iDXo6a7RK2wbmJITT5fN3BEkRuFlxVyNx8jOKIIhmC4fSkTcPcf8JyavbBwIe6OpiCOBXt/IcA==} engines: {node: '>=6.0.0'} hasBin: true @@ -2202,8 +2914,8 @@ packages: peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-exponentiation-operator@7.25.9': - resolution: {integrity: sha512-KRhdhlVk2nObA5AYa7QMgTMTVJdfHprfpAk4DjZVtllqRg9qarilstTKEhpVjyt+Npi8ThRyiV8176Am3CodPA==} + '@babel/plugin-transform-exponentiation-operator@7.26.3': + resolution: {integrity: sha512-7CAHcQ58z2chuXPWblnn1K6rLDnDWieghSOEmqQsrBenH0P9InCUtOJYD89pvngljmZlJcz3fcmgYsXFNGa1ZQ==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 @@ -2256,8 +2968,8 @@ packages: peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-modules-commonjs@7.25.9': - resolution: {integrity: sha512-dwh2Ol1jWwL2MgkCzUSOvfmKElqQcuswAZypBSUsScMXvgdT8Ekq5YA6TtqpTVWH+4903NmboMuH1o9i8Rxlyg==} + '@babel/plugin-transform-modules-commonjs@7.26.3': + resolution: {integrity: sha512-MgR55l4q9KddUDITEzEFYn5ZsGDXMSsU9E+kh7fjRXTIC3RHqfCo8RPRbyReYJh44HQ/yomFkqbOFohXvDCiIQ==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 @@ -2424,8 +3136,8 @@ packages: peerDependencies: '@babel/core': ^7.0.0-0 - '@babel/plugin-transform-typescript@7.25.9': - resolution: {integrity: sha512-7PbZQZP50tzv2KGGnhh82GSyMB01yKY9scIjf1a+GfZCtInOWqUH5+1EBU4t9fyR5Oykkkc9vFTs4OHrhHXljQ==} + '@babel/plugin-transform-typescript@7.26.3': + resolution: {integrity: sha512-6+5hpdr6mETwSKjmJUdYw0EIkATiQhnELWlE3kJFBwSg/BGIVwVaVbX+gOXBCdc7Ln1RXZxyWGecIXhUfnl7oA==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 @@ -2465,8 +3177,8 @@ packages: peerDependencies: '@babel/core': ^7.0.0-0 || ^8.0.0-0 <8.0.0 - '@babel/preset-react@7.25.9': - resolution: {integrity: sha512-D3to0uSPiWE7rBrdIICCd0tJSIGpLaaGptna2+w7Pft5xMqLpA1sz99DK5TZ1TjGbdQ/VI1eCSZ06dv3lT4JOw==} + '@babel/preset-react@7.26.3': + resolution: {integrity: sha512-Nl03d6T9ky516DGK2YMxrTqvnpUW63TnJMOMonj+Zae0JiPC5BC9xPMSL6L8fiSpA5vP88qfygavVQvnLp+6Cw==} engines: {node: '>=6.9.0'} peerDependencies: '@babel/core': ^7.0.0-0 @@ -2485,16 +3197,16 @@ packages: resolution: {integrity: sha512-9DGttpmPvIxBb/2uwpVo3dqJ+O6RooAFOS+lB+xDqoE2PVCE8nfoHMdZLpfCQRLwvohzXISPZcgxt80xLfsuwg==} engines: {node: '>=6.9.0'} - '@babel/traverse@7.25.9': - resolution: {integrity: sha512-ZCuvfwOwlz/bawvAuvcj8rrithP2/N55Tzz342AkTvq4qaWbGfmCk/tKhNaV2cthijKrPAA8SRJV5WWe7IBMJw==} + '@babel/traverse@7.26.4': + resolution: {integrity: sha512-fH+b7Y4p3yqvApJALCPJcwb0/XaOSgtK4pzV6WVjPR5GLFQBRI7pfoX2V2iM48NXvX07NUxxm1Vw98YjqTcU5w==} engines: {node: '>=6.9.0'} '@babel/types@7.25.6': resolution: {integrity: sha512-/l42B1qxpG6RdfYf343Uw1vmDjeNhneUXtzhojE7pDgfpEypmRhI6j1kr17XCVv4Cgl9HdAiQY2x0GwKm7rWCw==} engines: {node: '>=6.9.0'} - '@babel/types@7.26.0': - resolution: {integrity: sha512-Z/yiTPj+lDVnF7lWeKCIJzaIkI0vYO87dMpZ4bg4TDrFe4XXLFWL1TbXU27gBP3QccxV9mZICCrnjnYlJjXHOA==} + '@babel/types@7.26.3': + resolution: {integrity: sha512-vN5p+1kl59GVKMvTHt55NzzmYVxprfJD+ql7U9NFIfKCBkYE55LYtS+WtPlaYOyzydrKI8Nezd+aZextrd+FMA==} engines: {node: '>=6.9.0'} '@bcoe/v8-coverage@0.2.3': @@ -2527,11 +3239,11 @@ packages: '@bundled-es-modules/tough-cookie@0.1.6': resolution: {integrity: sha512-dvMHbL464C0zI+Yqxbz6kZ5TOEp7GLW+pry/RWndAR8MJQAXZ2rPmIs8tziTZjeIyhSNZgZbCePtfSbdWqStJw==} - '@changesets/apply-release-plan@7.0.5': - resolution: {integrity: sha512-1cWCk+ZshEkSVEZrm2fSj1Gz8sYvxgUL4Q78+1ZZqeqfuevPTPk033/yUZ3df8BKMohkqqHfzj0HOOrG0KtXTw==} + '@changesets/apply-release-plan@7.0.6': + resolution: {integrity: sha512-TKhVLtiwtQOgMAC0fCJfmv93faiViKSDqr8oMEqrnNs99gtSC1sZh/aEMS9a+dseU1ESZRCK+ofLgGY7o0fw/Q==} - '@changesets/assemble-release-plan@6.0.4': - resolution: {integrity: sha512-nqICnvmrwWj4w2x0fOhVj2QEGdlUuwVAwESrUo5HLzWMI1rE5SWfsr9ln+rDqWB6RQ2ZyaMZHUcU7/IRaUJS+Q==} + '@changesets/assemble-release-plan@6.0.5': + resolution: {integrity: sha512-IgvBWLNKZd6k4t72MBTBK3nkygi0j3t3zdC1zrfusYo0KpdsvnDjrMM9vPnTCLCMlfNs55jRL4gIMybxa64FCQ==} '@changesets/changelog-git@0.2.0': resolution: {integrity: sha512-bHOx97iFI4OClIT35Lok3sJAwM31VbUM++gnMBV16fdbtBhgYu4dxsphBF/0AZZsyAHMrnM0yFcj5gZM1py6uQ==} @@ -2539,12 +3251,12 @@ packages: '@changesets/changelog-github@0.5.0': resolution: {integrity: sha512-zoeq2LJJVcPJcIotHRJEEA2qCqX0AQIeFE+L21L8sRLPVqDhSXY8ZWAt2sohtBpFZkBwu+LUwMSKRr2lMy3LJA==} - '@changesets/cli@2.27.9': - resolution: {integrity: sha512-q42a/ZbDnxPpCb5Wkm6tMVIxgeI9C/bexntzTeCFBrQEdpisQqk8kCHllYZMDjYtEc1ZzumbMJAG8H0Z4rdvjg==} + '@changesets/cli@2.27.10': + resolution: {integrity: sha512-PfeXjvs9OfQJV8QSFFHjwHX3QnUL9elPEQ47SgkiwzLgtKGyuikWjrdM+lO9MXzOE22FO9jEGkcs4b+B6D6X0Q==} hasBin: true - '@changesets/config@3.0.3': - resolution: {integrity: sha512-vqgQZMyIcuIpw9nqFIpTSNyc/wgm/Lu1zKN5vECy74u95Qx/Wa9g27HdgO4NkVAaq+BGA8wUc/qvbvVNs93n6A==} + '@changesets/config@3.0.4': + resolution: {integrity: sha512-+DiIwtEBpvvv1z30f8bbOsUQGuccnZl9KRKMM/LxUHuDu5oEjmN+bJQ1RIBKNJjfYMQn8RZzoPiX0UgPaLQyXw==} '@changesets/errors@0.2.0': resolution: {integrity: sha512-6BLOQUscTpZeGljvyQXlWOItQyU71kCdGz7Pi8H8zdw6BI0g3m43iL4xKUVPWtG+qrrL9DTjpdn8eYuCQSRpow==} @@ -2555,14 +3267,14 @@ packages: '@changesets/get-github-info@0.6.0': resolution: {integrity: sha512-v/TSnFVXI8vzX9/w3DU2Ol+UlTZcu3m0kXTjTT4KlAdwSvwutcByYwyYn9hwerPWfPkT2JfpoX0KgvCEi8Q/SA==} - '@changesets/get-release-plan@4.0.4': - resolution: {integrity: sha512-SicG/S67JmPTrdcc9Vpu0wSQt7IiuN0dc8iR5VScnnTVPfIaLvKmEGRvIaF0kcn8u5ZqLbormZNTO77bCEvyWw==} + '@changesets/get-release-plan@4.0.5': + resolution: {integrity: sha512-E6wW7JoSMcctdVakut0UB76FrrN3KIeJSXvB+DHMFo99CnC3ZVnNYDCVNClMlqAhYGmLmAj77QfApaI3ca4Fkw==} '@changesets/get-version-range-type@0.4.0': resolution: {integrity: sha512-hwawtob9DryoGTpixy1D3ZXbGgJu1Rhr+ySH2PvTLHvkZuQ7sRT4oQwMh0hbqZH1weAooedEjRsbrWcGLCeyVQ==} - '@changesets/git@3.0.1': - resolution: {integrity: sha512-pdgHcYBLCPcLd82aRcuO0kxCDbw/yISlOtkmwmE8Odo1L6hSiZrBOsRl84eYG7DRCab/iHnOkWqExqc4wxk2LQ==} + '@changesets/git@3.0.2': + resolution: {integrity: sha512-r1/Kju9Y8OxRRdvna+nxpQIsMsRQn9dhhAZt94FLDeu0Hij2hnOozW8iqnHBgvu+KdnJppCveQwK4odwfw/aWQ==} '@changesets/logger@0.1.1': resolution: {integrity: sha512-OQtR36ZlnuTxKqoW4Sv6x5YIhOmClRd5pWsjZsddYxpWs517R0HkyiefQPIytCVh4ZcC5x9XaG8KTdd5iRQUfg==} @@ -2573,8 +3285,8 @@ packages: '@changesets/pre@2.0.1': resolution: {integrity: sha512-vvBJ/If4jKM4tPz9JdY2kGOgWmCowUYOi5Ycv8dyLnEE8FgpYYUo1mgJZxcdtGGP3aG8rAQulGLyyXGSLkIMTQ==} - '@changesets/read@0.6.1': - resolution: {integrity: sha512-jYMbyXQk3nwP25nRzQQGa1nKLY0KfoOV7VLgwucI0bUO8t8ZLCr6LZmgjXsiKuRDc+5A6doKPr9w2d+FEJ55zQ==} + '@changesets/read@0.6.2': + resolution: {integrity: sha512-wjfQpJvryY3zD61p8jR87mJdyx2FIhEcdXhKUqkja87toMrP/3jtg/Yg29upN+N4Ckf525/uvV7a4tzBlpk6gg==} '@changesets/should-skip-package@0.1.1': resolution: {integrity: sha512-H9LjLbF6mMHLtJIc/eHR9Na+MifJ3VxtgP/Y+XLn4BF7tDTEN1HNYtH6QMcjP1uxp9sjaFYmW8xqloaCi/ckTg==} @@ -2607,6 +3319,20 @@ packages: resolution: {integrity: sha512-dBVuXR082gk3jsFp7Rd/JI4kytwGHecnCoTtXFb7DB6CNHp4rg5k1bhg0nWdLGLnOV71lmDzGQaLMy8iPLY0pw==} engines: {node: '>=10.0.0'} + '@effect/schema@0.71.1': + resolution: {integrity: sha512-XvFttkuBUL3s4ofZ+OVE4Pagb4wsPG8laSS8iO5lVI9Yt1zIM49uxlYIA2BJ45jjS3MdplUepC0NilotKnjU2A==} + peerDependencies: + effect: ^3.6.5 + + '@emnapi/core@1.3.1': + resolution: {integrity: sha512-pVGjBIt1Y6gg3EJN8jTcfpP/+uuRksIo055oE/OBkDNcjZqVbfkWCksG1Jp4yZnj3iKWyWX8fdG/j6UDYPbFog==} + + '@emnapi/runtime@1.3.1': + resolution: {integrity: sha512-kEBmG8KyqtxJZv+ygbEim+KCGtIq1fC22Ms3S4ziXmYKm8uyoLX0MHONVKwp+9opg390VaKRNt4a7A9NwmpNhw==} + + '@emnapi/wasi-threads@1.0.1': + resolution: {integrity: sha512-iIBu7mwkq4UQGeMEM8bLwNK962nXdhodeScX4slfQnRhEMMzvYivHhutCIk8uojvmASXXPC2WNEjwxFWk72Oqw==} + '@esbuild/aix-ppc64@0.19.11': resolution: {integrity: sha512-FnzU0LyE3ySQk7UntJO4+qIiQgI7KoODnZg5xzXIrFJlKd2P2gwHsHY4927xj9y5PJmJSzULiUCWmv7iWnNa7g==} engines: {node: '>=12'} @@ -2625,12 +3351,6 @@ packages: cpu: [ppc64] os: [aix] - '@esbuild/aix-ppc64@0.24.0': - resolution: {integrity: sha512-WtKdFM7ls47zkKHFVzMz8opM7LkcsIp9amDUBIAWirg70RM71WRSjdILPsY5Uv1D42ZpUfaPILDlfactHgsRkw==} - engines: {node: '>=18'} - cpu: [ppc64] - os: [aix] - '@esbuild/android-arm64@0.19.11': resolution: {integrity: sha512-aiu7K/5JnLj//KOnOfEZ0D90obUkRzDMyqd/wNAUQ34m4YUPVhRZpnqKV9uqDGxT7cToSDnIHsGooyIczu9T+Q==} engines: {node: '>=12'} @@ -2649,12 +3369,6 @@ packages: cpu: [arm64] os: [android] - '@esbuild/android-arm64@0.24.0': - resolution: {integrity: sha512-Vsm497xFM7tTIPYK9bNTYJyF/lsP590Qc1WxJdlB6ljCbdZKU9SY8i7+Iin4kyhV/KV5J2rOKsBQbB77Ab7L/w==} - engines: {node: '>=18'} - cpu: [arm64] - os: [android] - '@esbuild/android-arm@0.19.11': resolution: {integrity: sha512-5OVapq0ClabvKvQ58Bws8+wkLCV+Rxg7tUVbo9xu034Nm536QTII4YzhaFriQ7rMrorfnFKUsArD2lqKbFY4vw==} engines: {node: '>=12'} @@ -2673,12 +3387,6 @@ packages: cpu: [arm] os: [android] - '@esbuild/android-arm@0.24.0': - resolution: {integrity: sha512-arAtTPo76fJ/ICkXWetLCc9EwEHKaeya4vMrReVlEIUCAUncH7M4bhMQ+M9Vf+FFOZJdTNMXNBrWwW+OXWpSew==} - engines: {node: '>=18'} - cpu: [arm] - os: [android] - '@esbuild/android-x64@0.19.11': resolution: {integrity: sha512-eccxjlfGw43WYoY9QgB82SgGgDbibcqyDTlk3l3C0jOVHKxrjdc9CTwDUQd0vkvYg5um0OH+GpxYvp39r+IPOg==} engines: {node: '>=12'} @@ -2697,12 +3405,6 @@ packages: cpu: [x64] os: [android] - '@esbuild/android-x64@0.24.0': - resolution: {integrity: sha512-t8GrvnFkiIY7pa7mMgJd7p8p8qqYIz1NYiAoKc75Zyv73L3DZW++oYMSHPRarcotTKuSs6m3hTOa5CKHaS02TQ==} - engines: {node: '>=18'} - cpu: [x64] - os: [android] - '@esbuild/darwin-arm64@0.19.11': resolution: {integrity: sha512-ETp87DRWuSt9KdDVkqSoKoLFHYTrkyz2+65fj9nfXsaV3bMhTCjtQfw3y+um88vGRKRiF7erPrh/ZuIdLUIVxQ==} engines: {node: '>=12'} @@ -2721,12 +3423,6 @@ packages: cpu: [arm64] os: [darwin] - '@esbuild/darwin-arm64@0.24.0': - resolution: {integrity: sha512-CKyDpRbK1hXwv79soeTJNHb5EiG6ct3efd/FTPdzOWdbZZfGhpbcqIpiD0+vwmpu0wTIL97ZRPZu8vUt46nBSw==} - engines: {node: '>=18'} - cpu: [arm64] - os: [darwin] - '@esbuild/darwin-x64@0.19.11': resolution: {integrity: sha512-fkFUiS6IUK9WYUO/+22omwetaSNl5/A8giXvQlcinLIjVkxwTLSktbF5f/kJMftM2MJp9+fXqZ5ezS7+SALp4g==} engines: {node: '>=12'} @@ -2745,12 +3441,6 @@ packages: cpu: [x64] os: [darwin] - '@esbuild/darwin-x64@0.24.0': - resolution: {integrity: sha512-rgtz6flkVkh58od4PwTRqxbKH9cOjaXCMZgWD905JOzjFKW+7EiUObfd/Kav+A6Gyud6WZk9w+xu6QLytdi2OA==} - engines: {node: '>=18'} - cpu: [x64] - os: [darwin] - '@esbuild/freebsd-arm64@0.19.11': resolution: {integrity: sha512-lhoSp5K6bxKRNdXUtHoNc5HhbXVCS8V0iZmDvyWvYq9S5WSfTIHU2UGjcGt7UeS6iEYp9eeymIl5mJBn0yiuxA==} engines: {node: '>=12'} @@ -2769,12 +3459,6 @@ packages: cpu: [arm64] os: [freebsd] - '@esbuild/freebsd-arm64@0.24.0': - resolution: {integrity: sha512-6Mtdq5nHggwfDNLAHkPlyLBpE5L6hwsuXZX8XNmHno9JuL2+bg2BX5tRkwjyfn6sKbxZTq68suOjgWqCicvPXA==} - engines: {node: '>=18'} - cpu: [arm64] - os: [freebsd] - '@esbuild/freebsd-x64@0.19.11': resolution: {integrity: sha512-JkUqn44AffGXitVI6/AbQdoYAq0TEullFdqcMY/PCUZ36xJ9ZJRtQabzMA+Vi7r78+25ZIBosLTOKnUXBSi1Kw==} engines: {node: '>=12'} @@ -2793,12 +3477,6 @@ packages: cpu: [x64] os: [freebsd] - '@esbuild/freebsd-x64@0.24.0': - resolution: {integrity: sha512-D3H+xh3/zphoX8ck4S2RxKR6gHlHDXXzOf6f/9dbFt/NRBDIE33+cVa49Kil4WUjxMGW0ZIYBYtaGCa2+OsQwQ==} - engines: {node: '>=18'} - cpu: [x64] - os: [freebsd] - '@esbuild/linux-arm64@0.19.11': resolution: {integrity: sha512-LneLg3ypEeveBSMuoa0kwMpCGmpu8XQUh+mL8XXwoYZ6Be2qBnVtcDI5azSvh7vioMDhoJFZzp9GWp9IWpYoUg==} engines: {node: '>=12'} @@ -2817,12 +3495,6 @@ packages: cpu: [arm64] os: [linux] - '@esbuild/linux-arm64@0.24.0': - resolution: {integrity: sha512-TDijPXTOeE3eaMkRYpcy3LarIg13dS9wWHRdwYRnzlwlA370rNdZqbcp0WTyyV/k2zSxfko52+C7jU5F9Tfj1g==} - engines: {node: '>=18'} - cpu: [arm64] - os: [linux] - '@esbuild/linux-arm@0.19.11': resolution: {integrity: sha512-3CRkr9+vCV2XJbjwgzjPtO8T0SZUmRZla+UL1jw+XqHZPkPgZiyWvbDvl9rqAN8Zl7qJF0O/9ycMtjU67HN9/Q==} engines: {node: '>=12'} @@ -2841,12 +3513,6 @@ packages: cpu: [arm] os: [linux] - '@esbuild/linux-arm@0.24.0': - resolution: {integrity: sha512-gJKIi2IjRo5G6Glxb8d3DzYXlxdEj2NlkixPsqePSZMhLudqPhtZ4BUrpIuTjJYXxvF9njql+vRjB2oaC9XpBw==} - engines: {node: '>=18'} - cpu: [arm] - os: [linux] - '@esbuild/linux-ia32@0.19.11': resolution: {integrity: sha512-caHy++CsD8Bgq2V5CodbJjFPEiDPq8JJmBdeyZ8GWVQMjRD0sU548nNdwPNvKjVpamYYVL40AORekgfIubwHoA==} engines: {node: '>=12'} @@ -2865,12 +3531,6 @@ packages: cpu: [ia32] os: [linux] - '@esbuild/linux-ia32@0.24.0': - resolution: {integrity: sha512-K40ip1LAcA0byL05TbCQ4yJ4swvnbzHscRmUilrmP9Am7//0UjPreh4lpYzvThT2Quw66MhjG//20mrufm40mA==} - engines: {node: '>=18'} - cpu: [ia32] - os: [linux] - '@esbuild/linux-loong64@0.19.11': resolution: {integrity: sha512-ppZSSLVpPrwHccvC6nQVZaSHlFsvCQyjnvirnVjbKSHuE5N24Yl8F3UwYUUR1UEPaFObGD2tSvVKbvR+uT1Nrg==} engines: {node: '>=12'} @@ -2889,12 +3549,6 @@ packages: cpu: [loong64] os: [linux] - '@esbuild/linux-loong64@0.24.0': - resolution: {integrity: sha512-0mswrYP/9ai+CU0BzBfPMZ8RVm3RGAN/lmOMgW4aFUSOQBjA31UP8Mr6DDhWSuMwj7jaWOT0p0WoZ6jeHhrD7g==} - engines: {node: '>=18'} - cpu: [loong64] - os: [linux] - '@esbuild/linux-mips64el@0.19.11': resolution: {integrity: sha512-B5x9j0OgjG+v1dF2DkH34lr+7Gmv0kzX6/V0afF41FkPMMqaQ77pH7CrhWeR22aEeHKaeZVtZ6yFwlxOKPVFyg==} engines: {node: '>=12'} @@ -2913,12 +3567,6 @@ packages: cpu: [mips64el] os: [linux] - '@esbuild/linux-mips64el@0.24.0': - resolution: {integrity: sha512-hIKvXm0/3w/5+RDtCJeXqMZGkI2s4oMUGj3/jM0QzhgIASWrGO5/RlzAzm5nNh/awHE0A19h/CvHQe6FaBNrRA==} - engines: {node: '>=18'} - cpu: [mips64el] - os: [linux] - '@esbuild/linux-ppc64@0.19.11': resolution: {integrity: sha512-MHrZYLeCG8vXblMetWyttkdVRjQlQUb/oMgBNurVEnhj4YWOr4G5lmBfZjHYQHHN0g6yDmCAQRR8MUHldvvRDA==} engines: {node: '>=12'} @@ -2937,12 +3585,6 @@ packages: cpu: [ppc64] os: [linux] - '@esbuild/linux-ppc64@0.24.0': - resolution: {integrity: sha512-HcZh5BNq0aC52UoocJxaKORfFODWXZxtBaaZNuN3PUX3MoDsChsZqopzi5UupRhPHSEHotoiptqikjN/B77mYQ==} - engines: {node: '>=18'} - cpu: [ppc64] - os: [linux] - '@esbuild/linux-riscv64@0.19.11': resolution: {integrity: sha512-f3DY++t94uVg141dozDu4CCUkYW+09rWtaWfnb3bqe4w5NqmZd6nPVBm+qbz7WaHZCoqXqHz5p6CM6qv3qnSSQ==} engines: {node: '>=12'} @@ -2961,12 +3603,6 @@ packages: cpu: [riscv64] os: [linux] - '@esbuild/linux-riscv64@0.24.0': - resolution: {integrity: sha512-bEh7dMn/h3QxeR2KTy1DUszQjUrIHPZKyO6aN1X4BCnhfYhuQqedHaa5MxSQA/06j3GpiIlFGSsy1c7Gf9padw==} - engines: {node: '>=18'} - cpu: [riscv64] - os: [linux] - '@esbuild/linux-s390x@0.19.11': resolution: {integrity: sha512-A5xdUoyWJHMMlcSMcPGVLzYzpcY8QP1RtYzX5/bS4dvjBGVxdhuiYyFwp7z74ocV7WDc0n1harxmpq2ePOjI0Q==} engines: {node: '>=12'} @@ -2985,12 +3621,6 @@ packages: cpu: [s390x] os: [linux] - '@esbuild/linux-s390x@0.24.0': - resolution: {integrity: sha512-ZcQ6+qRkw1UcZGPyrCiHHkmBaj9SiCD8Oqd556HldP+QlpUIe2Wgn3ehQGVoPOvZvtHm8HPx+bH20c9pvbkX3g==} - engines: {node: '>=18'} - cpu: [s390x] - os: [linux] - '@esbuild/linux-x64@0.19.11': resolution: {integrity: sha512-grbyMlVCvJSfxFQUndw5mCtWs5LO1gUlwP4CDi4iJBbVpZcqLVT29FxgGuBJGSzyOxotFG4LoO5X+M1350zmPA==} engines: {node: '>=12'} @@ -3009,12 +3639,6 @@ packages: cpu: [x64] os: [linux] - '@esbuild/linux-x64@0.24.0': - resolution: {integrity: sha512-vbutsFqQ+foy3wSSbmjBXXIJ6PL3scghJoM8zCL142cGaZKAdCZHyf+Bpu/MmX9zT9Q0zFBVKb36Ma5Fzfa8xA==} - engines: {node: '>=18'} - cpu: [x64] - os: [linux] - '@esbuild/netbsd-x64@0.19.11': resolution: {integrity: sha512-13jvrQZJc3P230OhU8xgwUnDeuC/9egsjTkXN49b3GcS5BKvJqZn86aGM8W9pd14Kd+u7HuFBMVtrNGhh6fHEQ==} engines: {node: '>=12'} @@ -3033,24 +3657,12 @@ packages: cpu: [x64] os: [netbsd] - '@esbuild/netbsd-x64@0.24.0': - resolution: {integrity: sha512-hjQ0R/ulkO8fCYFsG0FZoH+pWgTTDreqpqY7UnQntnaKv95uP5iW3+dChxnx7C3trQQU40S+OgWhUVwCjVFLvg==} - engines: {node: '>=18'} - cpu: [x64] - os: [netbsd] - '@esbuild/openbsd-arm64@0.23.1': resolution: {integrity: sha512-3x37szhLexNA4bXhLrCC/LImN/YtWis6WXr1VESlfVtVeoFJBRINPJ3f0a/6LV8zpikqoUg4hyXw0sFBt5Cr+Q==} engines: {node: '>=18'} cpu: [arm64] os: [openbsd] - '@esbuild/openbsd-arm64@0.24.0': - resolution: {integrity: sha512-MD9uzzkPQbYehwcN583yx3Tu5M8EIoTD+tUgKF982WYL9Pf5rKy9ltgD0eUgs8pvKnmizxjXZyLt0z6DC3rRXg==} - engines: {node: '>=18'} - cpu: [arm64] - os: [openbsd] - '@esbuild/openbsd-x64@0.19.11': resolution: {integrity: sha512-ysyOGZuTp6SNKPE11INDUeFVVQFrhcNDVUgSQVDzqsqX38DjhPEPATpid04LCoUr2WXhQTEZ8ct/EgJCUDpyNw==} engines: {node: '>=12'} @@ -3069,12 +3681,6 @@ packages: cpu: [x64] os: [openbsd] - '@esbuild/openbsd-x64@0.24.0': - resolution: {integrity: sha512-4ir0aY1NGUhIC1hdoCzr1+5b43mw99uNwVzhIq1OY3QcEwPDO3B7WNXBzaKY5Nsf1+N11i1eOfFcq+D/gOS15Q==} - engines: {node: '>=18'} - cpu: [x64] - os: [openbsd] - '@esbuild/sunos-x64@0.19.11': resolution: {integrity: sha512-Hf+Sad9nVwvtxy4DXCZQqLpgmRTQqyFyhT3bZ4F2XlJCjxGmRFF0Shwn9rzhOYRB61w9VMXUkxlBy56dk9JJiQ==} engines: {node: '>=12'} @@ -3093,12 +3699,6 @@ packages: cpu: [x64] os: [sunos] - '@esbuild/sunos-x64@0.24.0': - resolution: {integrity: sha512-jVzdzsbM5xrotH+W5f1s+JtUy1UWgjU0Cf4wMvffTB8m6wP5/kx0KiaLHlbJO+dMgtxKV8RQ/JvtlFcdZ1zCPA==} - engines: {node: '>=18'} - cpu: [x64] - os: [sunos] - '@esbuild/win32-arm64@0.19.11': resolution: {integrity: sha512-0P58Sbi0LctOMOQbpEOvOL44Ne0sqbS0XWHMvvrg6NE5jQ1xguCSSw9jQeUk2lfrXYsKDdOe6K+oZiwKPilYPQ==} engines: {node: '>=12'} @@ -3117,12 +3717,6 @@ packages: cpu: [arm64] os: [win32] - '@esbuild/win32-arm64@0.24.0': - resolution: {integrity: sha512-iKc8GAslzRpBytO2/aN3d2yb2z8XTVfNV0PjGlCxKo5SgWmNXx82I/Q3aG1tFfS+A2igVCY97TJ8tnYwpUWLCA==} - engines: {node: '>=18'} - cpu: [arm64] - os: [win32] - '@esbuild/win32-ia32@0.19.11': resolution: {integrity: sha512-6YOrWS+sDJDmshdBIQU+Uoyh7pQKrdykdefC1avn76ss5c+RN6gut3LZA4E2cH5xUEp5/cA0+YxRaVtRAb0xBg==} engines: {node: '>=12'} @@ -3141,12 +3735,6 @@ packages: cpu: [ia32] os: [win32] - '@esbuild/win32-ia32@0.24.0': - resolution: {integrity: sha512-vQW36KZolfIudCcTnaTpmLQ24Ha1RjygBo39/aLkM2kmjkWmZGEJ5Gn9l5/7tzXA42QGIoWbICfg6KLLkIw6yw==} - engines: {node: '>=18'} - cpu: [ia32] - os: [win32] - '@esbuild/win32-x64@0.19.11': resolution: {integrity: sha512-vfkhltrjCAb603XaFhqhAF4LGDi2M4OrCRrFusyQ+iTLQ/o60QQXxc9cZC/FFpihBI9N1Grn6SMKVJ4KP7Fuiw==} engines: {node: '>=12'} @@ -3165,12 +3753,6 @@ packages: cpu: [x64] os: [win32] - '@esbuild/win32-x64@0.24.0': - resolution: {integrity: sha512-7IAFPrjSQIJrGsK6flwg7NFmwBoSTyF3rl7If0hNUFQU4ilTsEPL6GuMuU9BfIWVVGuRnuIidkSMC+c0Otu8IA==} - engines: {node: '>=18'} - cpu: [x64] - os: [win32] - '@eslint-community/eslint-utils@4.4.1': resolution: {integrity: sha512-s3O3waFUrMV8P/XaF/+ZTp1X9XBZW1a4B97ZnjQF2KYWaFD2A8KyFBsrsfSjEmjn3RGWAIuvlneuZm3CUK3jbA==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} @@ -3211,26 +3793,23 @@ packages: '@fastify/static@7.0.4': resolution: {integrity: sha512-p2uKtaf8BMOZWLs6wu+Ihg7bWNBdjNgCwDza4MJtTqg+5ovKmcbgbR9Xs5/smZ1YISfzKOCNYmZV8LaCj+eJ1Q==} - '@formatjs/ecma402-abstract@2.2.4': - resolution: {integrity: sha512-lFyiQDVvSbQOpU+WFd//ILolGj4UgA/qXrKeZxdV14uKiAUiPAtX6XAn7WBCRi7Mx6I7EybM9E5yYn4BIpZWYg==} - - '@formatjs/fast-memoize@2.2.3': - resolution: {integrity: sha512-3jeJ+HyOfu8osl3GNSL4vVHUuWFXR03Iz9jjgI7RwjG6ysu/Ymdr0JRCPHfF5yGbTE6JCrd63EpvX1/WybYRbA==} + '@formatjs/ecma402-abstract@2.3.1': + resolution: {integrity: sha512-Ip9uV+/MpLXWRk03U/GzeJMuPeOXpJBSB5V1tjA6kJhvqssye5J5LoYLc7Z5IAHb7nR62sRoguzrFiVCP/hnzw==} - '@formatjs/icu-messageformat-parser@2.9.4': - resolution: {integrity: sha512-Tbvp5a9IWuxUcpWNIW6GlMQYEc4rwNHR259uUFoKWNN1jM9obf9Ul0e+7r7MvFOBNcN+13K7NuKCKqQiAn1QEg==} + '@formatjs/fast-memoize@2.2.5': + resolution: {integrity: sha512-6PoewUMrrcqxSoBXAOJDiW1m+AmkrAj0RiXnOMD59GRaswjXhm3MDhgepXPBgonc09oSirAJTsAggzAGQf6A6g==} - '@formatjs/icu-skeleton-parser@1.8.8': - resolution: {integrity: sha512-vHwK3piXwamFcx5YQdCdJxUQ1WdTl6ANclt5xba5zLGDv5Bsur7qz8AD7BevaKxITwpgDeU0u8My3AIibW9ywA==} + '@formatjs/icu-messageformat-parser@2.9.7': + resolution: {integrity: sha512-cuEHyRM5VqLQobANOjtjlgU7+qmk9Q3fDQuBiRRJ3+Wp3ZoZhpUPtUfuimZXsir6SaI2TaAJ+SLo9vLnV5QcbA==} - '@formatjs/intl-localematcher@0.5.7': - resolution: {integrity: sha512-GGFtfHGQVFe/niOZp24Kal5b2i36eE2bNL0xi9Sg/yd0TR8aLjcteApZdHmismP5QQax1cMnZM9yWySUUjJteA==} + '@formatjs/icu-skeleton-parser@1.8.11': + resolution: {integrity: sha512-8LlHHE/yL/zVJZHAX3pbKaCjZKmBIO6aJY1mkVh4RMSEu/2WRZ4Ysvv3kKXJ9M8RJLBHdnk1/dUQFdod1Dt7Dw==} - '@formatjs/intl-localematcher@0.5.8': - resolution: {integrity: sha512-I+WDNWWJFZie+jkfkiK5Mp4hEDyRSEvmyfYadflOno/mmKJKcB17fEpEH0oJu/OWhhCJ8kJBDz2YMd/6cDl7Mg==} + '@formatjs/intl-localematcher@0.5.9': + resolution: {integrity: sha512-8zkGu/sv5euxbjfZ/xmklqLyDGQSxsLqg8XOq88JW3cmJtzhCP8EtSJXlaKZnVO4beEaoiT9wj4eIoCQ9smwxA==} - '@grpc/grpc-js@1.12.2': - resolution: {integrity: sha512-bgxdZmgTrJZX50OjyVwz3+mNEnCTNkh3cIqGPWVNeW9jX6bn1ZkU80uPd+67/ZpIJIjRQ9qaHCjhavyoWYxumg==} + '@grpc/grpc-js@1.12.4': + resolution: {integrity: sha512-NBhrxEWnFh0FxeA0d//YP95lRFsSx2TNLEUQg4/W+5f/BMxcCjgOOIT24iD+ZB/tZw057j44DaIxja7w4XMrhg==} engines: {node: '>=12.10.0'} '@grpc/proto-loader@0.7.13': @@ -3238,8 +3817,8 @@ packages: engines: {node: '>=6'} hasBin: true - '@honeycombio/opentelemetry-web@0.8.1': - resolution: {integrity: sha512-yvPBL6LgnfF2VLZ1a2CBtxeB6JoHhMYzcr12/C0m2bAuFNWmXOPD0oNcJkfdB1+LjnFr9E79/E2dZYShPV5WSQ==} + '@honeycombio/opentelemetry-web@0.10.0': + resolution: {integrity: sha512-mx9Y8oVFcctTjQoXJ2SGeCQ4MS19sKKy3Vub2Ds9jsrRYVfTElE5Q73al1JqgWMDFMEG25c01ki/gx8FLeH35Q==} '@humanwhocodes/config-array@0.11.14': resolution: {integrity: sha512-3T8LkOmg45BV5FICb15QQMsyUSWrQ8AygVfC7ZG32zOalnqrilm018ZVCw0eapXux8FtA33q8PSRSstjee3jSg==} @@ -3264,14 +3843,14 @@ packages: '@import-maps/resolve@1.0.1': resolution: {integrity: sha512-tWZNBIS1CoekcwlMuyG2mr0a1Wo5lb5lEHwwWvZo+5GLgr3e9LLDTtmgtCWEwBpXMkxn9D+2W9j2FY6eZQq0tA==} - '@inquirer/confirm@5.0.2': - resolution: {integrity: sha512-KJLUHOaKnNCYzwVbryj3TNBxyZIrr56fR5N45v6K9IPrbT6B7DcudBMfylkV1A8PUdJE15mybkEQyp2/ZUpxUA==} + '@inquirer/confirm@5.1.0': + resolution: {integrity: sha512-osaBbIMEqVFjTX5exoqPXs6PilWQdjaLhGtMDXMXg/yxkHXNq43GlxGyTA35lK2HpzUgDN+Cjh/2AmqCN0QJpw==} engines: {node: '>=18'} peerDependencies: '@types/node': '>=18' - '@inquirer/core@10.1.0': - resolution: {integrity: sha512-I+ETk2AL+yAVbvuKx5AJpQmoaWhpiTFOg/UJb7ZkMAK4blmtG8ATh5ct+T/8xNld0CZG/2UhtkdMwpgvld92XQ==} + '@inquirer/core@10.1.1': + resolution: {integrity: sha512-rmZVXy9iZvO3ZStEe/ayuuwIJ23LSF13aPMlLMTQARX6lGUBDHGV8UB5i9MRrfy0+mZwt5/9bdy8llszSD3NQA==} engines: {node: '>=18'} '@inquirer/figures@1.0.8': @@ -3284,22 +3863,26 @@ packages: peerDependencies: '@types/node': '>=18' - '@internationalized/date@3.5.6': - resolution: {integrity: sha512-jLxQjefH9VI5P9UQuqB6qNKnvFt1Ky1TPIzHGsIlCi7sZZoMR8SdYbBGRvM0y+Jtb+ez4ieBzmiAUcpmPYpyOw==} + '@internationalized/date@3.6.0': + resolution: {integrity: sha512-+z6ti+CcJnRlLHok/emGEsWQhe7kfSmEW+/6qCzvKY67YPh7YOBfvc7+/+NXq+zJlbArg30tYpqLjNgcAYv2YQ==} - '@internationalized/message@3.1.5': - resolution: {integrity: sha512-hjEpLKFlYA3m5apldLqzHqw531qqfOEq0HlTWdfyZmcloWiUbWsYXD6YTiUmQmOtarthzhdjCAwMVrB8a4E7uA==} + '@internationalized/message@3.1.6': + resolution: {integrity: sha512-JxbK3iAcTIeNr1p0WIFg/wQJjIzJt9l/2KNY/48vXV7GRGZSv3zMxJsce008fZclk2cDC8y0Ig3odceHO7EfNQ==} - '@internationalized/number@3.5.4': - resolution: {integrity: sha512-h9huwWjNqYyE2FXZZewWqmCdkw1HeFds5q4Siuoms3hUQC5iPJK3aBmkFZoDSLN4UD0Bl8G22L/NdHpeOr+/7A==} + '@internationalized/number@3.6.0': + resolution: {integrity: sha512-PtrRcJVy7nw++wn4W2OuePQQfTqDzfusSuY1QTtui4wa7r+rGVtR75pO8CyKvHvzyQYi3Q1uO5sY0AsB4e65Bw==} - '@internationalized/string@3.2.4': - resolution: {integrity: sha512-BcyadXPn89Ae190QGZGDUZPqxLj/xsP4U1Br1oSy8yfIjmpJ8cJtGYleaodqW/EmzFjwELtwDojLkf3FhV6SjA==} + '@internationalized/string@3.2.5': + resolution: {integrity: sha512-rKs71Zvl2OKOHM+mzAFMIyqR5hI1d1O6BBkMK2/lkfg3fkmVh9Eeg0awcA8W2WqYqDOv6a86DIOlFpggwLtbuw==} '@isaacs/cliui@8.0.2': resolution: {integrity: sha512-O8jcjabXaleOG9DQ0+ARXWZBTfnP4WNAqzuiJK7ll44AmxGKv/J2M4TPjxjY3znBCfvBXFzucm1twdyFybFqEA==} engines: {node: '>=12'} + '@isaacs/fs-minipass@4.0.1': + resolution: {integrity: sha512-wgm9Ehl2jpeqP3zw/7mo3kRHFp5MEDhqAdwy1fTGkHAwnkGOVsgpvQhL8B5n1qlb01jV3n/bI0ZfZp5lWA1k4w==} + engines: {node: '>=18.0.0'} + '@istanbuljs/load-nyc-config@1.1.0': resolution: {integrity: sha512-VjeHSlIzpv/NyD3N0YuHfXOPDIixcA1q2ZV98wsMqcYlPmv2n3Yb2lYP9XMElnaFVXg5A7YLTeLu6V84uQDjmQ==} engines: {node: '>=8'} @@ -3382,8 +3965,8 @@ packages: resolution: {integrity: sha512-u3UPsIilWKOM3F9CXtrG8LEJmNxwoCQC/XVj4IKYXvvpx7QIi/Kg1LI5uDmDpKlac62NUtX7eLjRh+jVZcLOzw==} engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} - '@jridgewell/gen-mapping@0.3.5': - resolution: {integrity: sha512-IzL8ZoEDIBRWEzlCcRhOaCupYyN5gdIK+Q6fbFdPDg6HqX6jpkItn7DFIpW9LQzXG6Df9sA7+OKnq0qlz/GaQg==} + '@jridgewell/gen-mapping@0.3.8': + resolution: {integrity: sha512-imAbBGkb+ebQyxKgzv5Hu2nmROxoDOXHh80evxdoXNOrvAnVx7zimzc1Oo5h9RlfV4vPXaE2iM5pOFbvOCClWA==} engines: {node: '>=6.0.0'} '@jridgewell/resolve-uri@3.1.2': @@ -3409,14 +3992,18 @@ packages: '@js-sdsl/ordered-map@4.4.2': resolution: {integrity: sha512-iUKgm52T8HOE/makSxjqoWhe95ZJA1/G1sYsGev2JDKUSS14KAgg1LHb+Ba+IPow0xflbnSkOsZcO08C7w1gYw==} + '@jsdevtools/ez-spawn@3.0.4': + resolution: {integrity: sha512-f5DRIOZf7wxogefH03RjMPMdBF7ADTWUMoOs9kaJo06EfwF+aFhMZMDZxHg/Xe12hptN9xoZjGso2fdjapBRIA==} + engines: {node: '>=10'} + '@jsonjoy.com/base64@1.1.2': resolution: {integrity: sha512-q6XAnWQDIMA3+FTiOYajoYqySkO+JSat0ytXGSuRdq9uXE7o92gzuQwQM14xaCRlBLGq3v5miDGC4vkVTn54xA==} engines: {node: '>=10.0'} peerDependencies: tslib: '2' - '@jsonjoy.com/json-pack@1.1.0': - resolution: {integrity: sha512-zlQONA+msXPPwHWZMKFVS78ewFczIll5lXiVPwFPCZUsrOKdxc2AvxU1HoNBmMRhqDZUR9HkC3UOm+6pME6Xsg==} + '@jsonjoy.com/json-pack@1.1.1': + resolution: {integrity: sha512-osjeBqMJ2lb/j/M8NCPjs1ylqWIcTRTycIhVB5pt6LgzgeRSb0YRZ7j9RfA8wIUrsr/medIuhVyonXRZWLyfdw==} engines: {node: '>=10.0'} peerDependencies: tslib: '2' @@ -3444,17 +4031,22 @@ packages: resolution: {integrity: sha512-Yhlar6v9WQgUp/He7BdgzOz8lqMQ8sU+jkCq7Wx8Myc5YFJLbEe7lgui/V7G1qB1DJykHSGwreceSaD60Y0PUQ==} hasBin: true - '@module-federation/bridge-react-webpack-plugin@0.6.16': - resolution: {integrity: sha512-AQj20lUL5fmdz4un56W3VF8naZaRDmztczl+/j4Qa69JAaUbbZK6zZJ3NEjx0cNzpiq/mGmG9Vik3V4rI/4BUA==} + '@mapbox/node-pre-gyp@2.0.0-rc.0': + resolution: {integrity: sha512-nhSMNprz3WmeRvd8iUs5JqkKr0Ncx46JtPxM3AhXes84XpSJfmIwKeWXRpsr53S7kqPkQfPhzrMFUxSNb23qSA==} + engines: {node: '>=18'} + hasBin: true - '@module-federation/data-prefetch@0.6.16': - resolution: {integrity: sha512-m5SNKlAkB2FFCs2cl6LWqo6s2NZ7HuCrp6QrrMzuKjB6EddvKojVQxOzrWdcMLs1vESy6fyU4M4U7PxSojw6Ww==} + '@module-federation/bridge-react-webpack-plugin@0.8.4': + resolution: {integrity: sha512-iQZFtMAa87ehKw/XWTaHy6qE0W09of562i7AI8znKIDIYozwZZavM9G1veUT8pu99I8YiGMNvmPHM+nRCJX9Fw==} + + '@module-federation/data-prefetch@0.8.4': + resolution: {integrity: sha512-eDmHs3bz+bf1mKYxFQHP+4EgJy84iDc6LMI92qz43JsQ9HsRmuxDr5G85gRY353Ay1Omqgj9/7svz4YreZ4HAw==} peerDependencies: react: '>=16.9.0' react-dom: '>=16.9.0' - '@module-federation/dts-plugin@0.6.16': - resolution: {integrity: sha512-XM6+EYVrS2Q/ZW0u9cH0sJT5t5SQHRjzmW7JWdPv0+wKGCA15WtRMc55boM4Wan7jXJZf+JeD5QLXWiSjaJdnw==} + '@module-federation/dts-plugin@0.8.4': + resolution: {integrity: sha512-YXnejzhQwQzrbxhq54ex8zrlyOloMuDOeAfQ7wRr6gEFTMzSLP/gZ8ecHN3bwLGNFnqzophIojPKwST5EkMVgQ==} peerDependencies: typescript: ^4.9.0 || ^5.0.0 vue-tsc: '>=1.0.24' @@ -3462,8 +4054,8 @@ packages: vue-tsc: optional: true - '@module-federation/enhanced@0.6.16': - resolution: {integrity: sha512-5MqA35WGvPmCScT/xNnheR4RBa2oYHkLpeVjOA0xg0PeUTC7aSfGRLsntzFeyzLITSjbVTupK2YwmjiZr3Z0LQ==} + '@module-federation/enhanced@0.8.4': + resolution: {integrity: sha512-fA3wCtKTyH1AZ6OxtTjIDYIAm++oPTX9DkNa6HLuybudUeDxQcbhaEzA4EaPz81AX2AyHMNaRGVlL7NgLghFOw==} peerDependencies: typescript: ^4.9.0 || ^5.0.0 vue-tsc: '>=1.0.24' @@ -3476,18 +4068,26 @@ packages: webpack: optional: true - '@module-federation/error-codes@0.6.14': - resolution: {integrity: sha512-ik+ezloFkxmE5atqTUG9lRr9xV5EcKDjH+MZba2IJQT5cZIM6o2ThTC45E013N4SCleaGxBtIGoPLZJzT4xa0Q==} + '@module-federation/error-codes@0.8.4': + resolution: {integrity: sha512-55LYmrDdKb4jt+qr8qE8U3al62ZANp3FhfVaNPOaAmdTh0jHdD8M3yf5HKFlr5xVkVO4eV/F/J2NCfpbh+pEXQ==} + + '@module-federation/managers@0.8.4': + resolution: {integrity: sha512-kAd4R1cntKArqv4NIvliYBIuOQdVUKGUMALGfbykYMLt+RZsHdvp4dG5lbUV1WuxmF7dWL3LggHo69ca8ap1bw==} - '@module-federation/managers@0.6.16': - resolution: {integrity: sha512-9oqJT0F61GhaFE4EFgJjVyQlD8ohXxMJBS9UGCKC6nHd3+PI4NBWGN2D+alBOwvwtt3LhtssbVH8H8HZEM1GnQ==} + '@module-federation/manifest@0.8.4': + resolution: {integrity: sha512-wxkSiXMiOKbPtNXpMlu9OBx7sk81/YDA1MzRSoL2aFkAV9c6WZW83roNEbTnX2vodEDpBYLgvqHXnR4jrhV9Tw==} - '@module-federation/manifest@0.6.16': - resolution: {integrity: sha512-YjOk+1uR6E5qIEWiy35IrMyEy+rDGI5nJd+6MQobkXG40DK94mdPxJ7TSCozj/bpZ9SadCxXRCkMiE/gTkryAQ==} + '@module-federation/rsbuild-plugin@0.8.4': + resolution: {integrity: sha512-vn/829njQ7xQfqAFBztYZJcyZmVgwP36Fy0oG+oNH8RIjtrA4tfStLJltXxzg+8Tk0ZaA0cD4Ap54gZzlSulKQ==} + engines: {node: '>=16.0.0'} + peerDependencies: + '@module-federation/enhanced': 0.8.4 + '@rsbuild/core': 1.x - '@module-federation/rspack@0.6.16': - resolution: {integrity: sha512-9nQAyw7QvgXJYPTQseyQ31qQtSlo0VsppQOyFLstLITzgWWugN7cN8cGAriUKYBI78THuX+lp1mdgsNTBvxJPA==} + '@module-federation/rspack@0.8.4': + resolution: {integrity: sha512-fx5u+xTdVQ4EMD6yPZwdt85eORwZtkBPJtr00qvl45LDDxbF9JiII3Ii9afyYtnwAlVSPgeKx4nSICoNuHXP1A==} peerDependencies: + '@rspack/core': '>=0.7' typescript: ^4.9.0 || ^5.0.0 vue-tsc: '>=1.0.24' peerDependenciesMeta: @@ -3496,25 +4096,115 @@ packages: vue-tsc: optional: true - '@module-federation/runtime-tools@0.6.16': - resolution: {integrity: sha512-AIaxnx99tVYppYCgdJQz43mrGZ2pPJtC7YEIjuQV+UnSORj+d/GOIqF88MDx3i7siFcQ4zrT5BVtEWhXcJdv0g==} + '@module-federation/runtime-tools@0.5.1': + resolution: {integrity: sha512-nfBedkoZ3/SWyO0hnmaxuz0R0iGPSikHZOAZ0N/dVSQaIzlffUo35B5nlC2wgWIc0JdMZfkwkjZRrnuuDIJbzg==} + + '@module-federation/runtime-tools@0.8.4': + resolution: {integrity: sha512-fjVOsItJ1u5YY6E9FnS56UDwZgqEQUrWFnouRiPtK123LUuqUI9FH4redZoKWlE1PB0ir1Z3tnqy8eFYzPO38Q==} + + '@module-federation/runtime@0.5.1': + resolution: {integrity: sha512-xgiMUWwGLWDrvZc9JibuEbXIbhXg6z2oUkemogSvQ4LKvrl/n0kbqP1Blk669mXzyWbqtSp6PpvNdwaE1aN5xQ==} + + '@module-federation/runtime@0.8.4': + resolution: {integrity: sha512-yZeZ7z2Rx4gv/0E97oLTF3V6N25vglmwXGgoeju/W2YjsFvWzVtCDI7zRRb0mJhU6+jmSM8jP1DeQGbea/AiZQ==} - '@module-federation/runtime@0.6.16': - resolution: {integrity: sha512-3oFDRkolGwiXuQz+wzX3YzBWI9so0+K05YRf0TEdJguj3W/v/AMrBCz7W4c4O/wSK45Kuqd4lHKhCyKWRPyhOw==} + '@module-federation/sdk@0.5.1': + resolution: {integrity: sha512-exvchtjNURJJkpqjQ3/opdbfeT2wPKvrbnGnyRkrwW5o3FH1LaST1tkiNviT6OXTexGaVc2DahbdniQHVtQ7pA==} - '@module-federation/sdk@0.6.16': - resolution: {integrity: sha512-rzQH/v9bVc032lzV4j1IGYRc5gszwzBevYBBDJf3oNLwkY2kIDUJ99OWvq3aaPJoE0jEWPVe3K5iNc+dZe4tMQ==} + '@module-federation/sdk@0.8.4': + resolution: {integrity: sha512-waABomIjg/5m1rPDBWYG4KUhS5r7OUUY7S+avpaVIY/tkPWB3ibRDKy2dNLLAMaLKq0u+B1qIdEp4NIWkqhqpg==} - '@module-federation/third-party-dts-extractor@0.6.16': - resolution: {integrity: sha512-F4W8QBlPLNY22TGjUWA+FyFYN6wVgGKhefd170A8BOqv2gB1yhm6OIEmDnO6TwfDfQQebVCcAu23AzLzgS5eCg==} + '@module-federation/third-party-dts-extractor@0.8.4': + resolution: {integrity: sha512-sP7m7iMCiCmTyy6/6yyIaQ01aqizq7vpr9TBTilfKycwzlKKlBqj74thCr71NwXadmXKjKbBa9MwGtVnWLT3uA==} - '@module-federation/webpack-bundler-runtime@0.6.16': - resolution: {integrity: sha512-Tpi251DApEaQ62KCaJCh1RU1SZTUcVh8lx2zotn/YOMZdw83IzYu3PYYA1V0Eg5jVe6I2GmGH52pJPCtwbgjqA==} + '@module-federation/webpack-bundler-runtime@0.5.1': + resolution: {integrity: sha512-mMhRFH0k2VjwHt3Jol9JkUsmI/4XlrAoBG3E0o7HoyoPYv1UFOWyqAflfANcUPgbYpvqmyLzDcO+3IT36LXnrA==} - '@mswjs/interceptors@0.36.10': - resolution: {integrity: sha512-GXrJgakgJW3DWKueebkvtYgGKkxA7s0u5B0P5syJM5rvQUnrpLPigvci8Hukl7yEM+sU06l+er2Fgvx/gmiRgg==} + '@module-federation/webpack-bundler-runtime@0.8.4': + resolution: {integrity: sha512-HggROJhvHPUX7uqBD/XlajGygMNM1DG0+4OAkk8MBQe4a18QzrRNzZt6XQbRTSG4OaEoyRWhQHvYD3Yps405tQ==} + + '@mswjs/interceptors@0.37.3': + resolution: {integrity: sha512-USvgCL/uOGFtVa6SVyRrC8kIAedzRohxIXN5LISlg5C5vLZCn7dgMFVSNhSF9cuBEFrm/O2spDWEZeMnw4ZXYg==} engines: {node: '>=18'} + '@napi-rs/image-android-arm64@1.9.2': + resolution: {integrity: sha512-DQNI06ukKqpF4eogz9zyxfU+GYp11TfDqSNWKmk/IRU2oiB0DEgskuj7ZzaKMPJWFRZjI86V233UrrNRh76h2Q==} + engines: {node: '>= 10'} + cpu: [arm64] + os: [android] + + '@napi-rs/image-darwin-arm64@1.9.2': + resolution: {integrity: sha512-w+0X87sORbC2uDpH7NAdELOnvzhu3dB19h2oMaD+YIv/+CVXV5eK2PS3zkRgMLCinVtFOZFZK3dFbHU3kncCRw==} + engines: {node: '>= 10'} + cpu: [arm64] + os: [darwin] + + '@napi-rs/image-darwin-x64@1.9.2': + resolution: {integrity: sha512-8SnFDcgUSoL6Y38lstXi5FYECD1f4dJqQe2UCTwciED8gZnpC8Pju7JYJWcYgHHXn1JnKP9T1lPlSaX+L56EgA==} + engines: {node: '>= 10'} + cpu: [x64] + os: [darwin] + + '@napi-rs/image-freebsd-x64@1.9.2': + resolution: {integrity: sha512-oS0+iSb8AekjaHgTZdARKceqTPxSokByLzNQ9vGf2lZlTwlRFmXGq4XYutyzqzRuLT3BATLwtGMXiguMEYMuUw==} + engines: {node: '>= 10'} + cpu: [x64] + os: [freebsd] + + '@napi-rs/image-linux-arm-gnueabihf@1.9.2': + resolution: {integrity: sha512-bsbZSvw3wa7yaLVvz4M5VhJaB9LmgjAL3W7rnmXaX5BgpaQImNDm9MrxPG8ennr9Pbn6qDtCSioOz53ZgWUtgg==} + engines: {node: '>= 10'} + cpu: [arm] + os: [linux] + + '@napi-rs/image-linux-arm64-gnu@1.9.2': + resolution: {integrity: sha512-tiN9RMwEIcA8TodvmxdeJqsRdUGKAmxQ2aa0FkYjshdkmChG/sqUtUoL9LdmDf1tw1IACrSuT2Wj4LevxBdIJA==} + engines: {node: '>= 10'} + cpu: [arm64] + os: [linux] + + '@napi-rs/image-linux-arm64-musl@1.9.2': + resolution: {integrity: sha512-w6Sx1j9PtqO2bP3Jl6nuMryzxA3zsoc1U8u1H7AZketyhxXIxqVm0oGomZGs5Bgshzau45bcWinp6GWrlSwt6A==} + engines: {node: '>= 10'} + cpu: [arm64] + os: [linux] + + '@napi-rs/image-linux-x64-gnu@1.9.2': + resolution: {integrity: sha512-yB/s9wNB/9YHpQ4TwN8NWMA1tEK1gPLQwtysa68yMdHczb+7BTCKCIYIHD9rUulyT1Q/VgLIJCUMoxve0pIoeg==} + engines: {node: '>= 10'} + cpu: [x64] + os: [linux] + + '@napi-rs/image-linux-x64-musl@1.9.2': + resolution: {integrity: sha512-x9dRlo27xYXonh+gZZTqQL4lAfi/lhi8K8LE2hczbZffqmXvWU7NuHSgPVVeU/nvcMMqw1Cjzn81h7ny44SLbQ==} + engines: {node: '>= 10'} + cpu: [x64] + os: [linux] + + '@napi-rs/image-wasm32-wasi@1.9.2': + resolution: {integrity: sha512-BeA1wzzIG4+tdAwXWaAjObBOC6SzIbq0IhykSQ1xCGvYwd8stsn7ktPRz5b55PDo+Doj65PCT4H/xUgFcSiLCw==} + engines: {node: '>=14.0.0'} + cpu: [wasm32] + + '@napi-rs/image-win32-ia32-msvc@1.9.2': + resolution: {integrity: sha512-JDJP04Hg9Qru5Pth4gfBkXz9hZd/otx6ymi2VTuSKDFjpJIjk4tyUr9+BIE1ghFCHDzeJGVe7CDGdF/NTA1xrg==} + engines: {node: '>= 10'} + cpu: [ia32] + os: [win32] + + '@napi-rs/image-win32-x64-msvc@1.9.2': + resolution: {integrity: sha512-baRyTED6FkTsPliSOH7x8TV/cyAST9y6L1ClSgSCVEx7+W8MKKig90fF302kEa2PwMAyrXM3Ytq9KuIC7xJ+eA==} + engines: {node: '>= 10'} + cpu: [x64] + os: [win32] + + '@napi-rs/image@1.9.2': + resolution: {integrity: sha512-CvTC3XL5/BzHaVkJOZy31xOJLNSY3rBuUIQixaE/LwEQNSUdaxWa9gUyUkC9lUekkUp26CzaLLj2w7l7bxB1ag==} + engines: {node: '>= 10'} + + '@napi-rs/wasm-runtime@0.2.5': + resolution: {integrity: sha512-kwUxR7J9WLutBbulqg1dfOrMTwhMdXLdcGUhcbCcGwnPLt3gz19uHVdwH1syKVDbE022ZS2vZxOWflFLS0YTjw==} + '@netlify/binary-info@1.0.0': resolution: {integrity: sha512-4wMPu9iN3/HL97QblBsBay3E1etIciR84izI3U+4iALY+JHCrI+a2jO0qbAZ/nxKoegypYEaiiqWXylm+/zfrw==} @@ -3531,8 +4221,8 @@ packages: engines: {node: ^14.16.0 || >=16.0.0} hasBin: true - '@netlify/build@29.56.0': - resolution: {integrity: sha512-x2DUxBt1MigjAX+2xpDmWKp4BlTvg4GofaR2SWSz80D+zkfWRJp01de1O5mKH9QK3saQBQUVJyi+mrK64YNf4w==} + '@netlify/build@29.56.1': + resolution: {integrity: sha512-0/4GiVTL69AXeIly6ZXIi5g4qU2Oi9djCUcJO6xCZCDgft6TD90JXlsCQ5P/+oh0CFcNPpsy9DBvY8mm0fSFVw==} engines: {node: ^14.16.0 || >=16.0.0} hasBin: true peerDependencies: @@ -3542,12 +4232,12 @@ packages: '@netlify/opentelemetry-sdk-setup': optional: true - '@netlify/cache-utils@5.1.6': - resolution: {integrity: sha512-0K1+5umxENy9H3CC+v5qGQbeTmKv/PBAhOxPKK6GPykOVa7OxT26KGMU7Jozo6pVNeLPJUvCCMw48ycwtQ1fvw==} + '@netlify/cache-utils@5.2.0': + resolution: {integrity: sha512-kKzGQ9gKNRUjqFMC1/1goeTe1WfzL6KhphwXac7tialowg10Dtmr2X+eDzfH9enGvD6vhYR4a0QMTQWkjfPVmg==} engines: {node: ^14.16.0 || >=16.0.0} - '@netlify/config@20.19.0': - resolution: {integrity: sha512-vkqTQ7jaudPSRME6ZzYml6qRWxIJXnUQ8csqOSx5Yv0ysj1zb2l+Ke3c5bc6Cttkg4ay2YLx4M0/7n6nT3KojQ==} + '@netlify/config@20.19.1': + resolution: {integrity: sha512-GkN8IwHilIlusFuAW+DFjhtpghnaelNcHUoZwBDcJou8eyhIZYAj6B4STMyGUggIfMobYGM28kEY3gN4uUVq0g==} engines: {node: ^14.16.0 || >=16.0.0} hasBin: true @@ -3555,19 +4245,19 @@ packages: resolution: {integrity: sha512-o/Od4gvGT2qPSjJ1TSh8KYDJHfzxW4iemA5DiZtXIDgaIvWgvehZKDROp9wJ2FseP2F83y4ZDmt5xFfBSD9IYQ==} engines: {node: ^14.16.0 || >=16.0.0} - '@netlify/edge-functions@2.9.0': - resolution: {integrity: sha512-W1kdwLpvUlhfI2FTOe6SEcoobW7Fw+Vm9WN5Gwb5lTCG6QXBE3gpCZk+NVQ4p/XoOcXYwWAS5pfOTMKUoYNQnA==} + '@netlify/edge-functions@2.11.1': + resolution: {integrity: sha512-pyQOTZ8a+ge5lZlE+H/UAHyuqQqtL5gE0pXrHT9mOykr3YQqnkB2hZMtx12odatZ87gHg4EA+UPyMZUbLfnXvw==} - '@netlify/framework-info@9.8.13': - resolution: {integrity: sha512-ZZXCggokY/y5Sz93XYbl/Lig1UAUSWPMBiQRpkVfbrrkjmW2ZPkYS/BgrM2/MxwXRvYhc/TQpZX6y5JPe3quQg==} + '@netlify/framework-info@9.9.0': + resolution: {integrity: sha512-ucPBnBJVJUjsoCAhFy76zjQgg2hLPaR1jTOjH5W/jglc5DIZ9HJSgHfTp4e9A3ok8GXvQyTrYKE5kTZpwLoYQQ==} engines: {node: ^14.14.0 || >=16.0.0} - '@netlify/functions-utils@5.2.93': - resolution: {integrity: sha512-/b2JtJuB3KNN5AIfiH/tan/uM4i6nLj2QFGUL9oID58cMsd73iouRacKu4ct+gxUU78y+/6fiOeYRXbcthdltA==} + '@netlify/functions-utils@5.3.1': + resolution: {integrity: sha512-Bm1Uro1Uql21/PUKcpGcBv88e5qd3fRHSmO9FM/uE1HxtsuujXer1pRTE/+qZRnPXpeLLtWwda7a3zIfADOEaw==} engines: {node: ^14.16.0 || >=16.0.0} - '@netlify/git-utils@5.1.1': - resolution: {integrity: sha512-oyHieuTZH3rKTmg7EKpGEGa28IFxta2oXuVwpPJI/FJAtBje3UE+yko0eDjNufgm3AyGa8G77trUxgBhInAYuw==} + '@netlify/git-utils@5.2.0': + resolution: {integrity: sha512-maNQyhQ6zTS5Kwl03HXoUa7uTNjmCvZea5Jko2pyDWz0xW1cunnil+4s33wXrMZJNDvyv97O2vkC5N1sAS3fyQ==} engines: {node: ^14.16.0 || >=16.0.0} '@netlify/local-functions-proxy-darwin-arm64@1.1.1': @@ -3649,12 +4339,12 @@ packages: resolution: {integrity: sha512-OAs1xG+FfLX0LoRASpqzVntVV/RpYkgpI0VrUnw2u0Q1qiZUzcPffxRK8HF3gc4GjuhG5ahOEMJ9bswBiZPq0g==} engines: {node: ^14.16.0 || >=16.0.0} - '@netlify/open-api@2.34.0': - resolution: {integrity: sha512-C4v7Od/vnGgZ1P4JK3Fn9uUi9HkTxeUqUtj4OLnGD+rGyaVrl4JY89xMCoVksijDtO8XylYFU59CSTnQNeNw7g==} + '@netlify/open-api@2.35.0': + resolution: {integrity: sha512-c6LpV29CKMgq6/eViItE6L2ova9UldBO9tHRvvwpJfSBgCwWaFhmiepe07E3xIW4GfTCGoWE816mNzXB/2ceZg==} engines: {node: '>=14'} - '@netlify/opentelemetry-utils@1.2.1': - resolution: {integrity: sha512-A6nQBvUn/avHQopLOOjX8rY2eua//jufbx4NZZODACEHtfXAEmOjCoDe2m+cQPRq+jNa98nvCy/sJh2RwuCQog==} + '@netlify/opentelemetry-utils@1.3.0': + resolution: {integrity: sha512-2LpNZpowo7Q4nSNmPYcx4gAAXIhRiSanX7Bux7b0D7ohdaC8NOgmFc7vdVzIsCChLwqbQ4HZpN1fd0W40Cm7bg==} engines: {node: '>=18.0.0'} peerDependencies: '@opentelemetry/api': ~1.8.0 @@ -3663,12 +4353,12 @@ packages: resolution: {integrity: sha512-bCKLI51UZ70ziIWsf2nvgPd4XuG6m8AMCoHiYtl/BSsiaSBfmryZnTTqdRXerH09tBRpbPPwzaEgUJwyU9o8Qw==} engines: {node: ^14.14.0 || >=16.0.0} - '@netlify/run-utils@5.1.1': - resolution: {integrity: sha512-V2B8ZB19heVKa715uOeDkztxLH7uaqZ+9U5fV7BRzbQ2514DO5Vxj9hG0irzuRLfZXZZjp/chPUesv4VVsce/A==} + '@netlify/run-utils@5.2.0': + resolution: {integrity: sha512-bsrv7Sjge5g71VMgZ65Ioc5q4lHXdLQCmpUU6sY06Aeol1psi1iDOGVMx/7ExJjbCtQgxye35wZjAz60i6X22Q==} engines: {node: ^14.16.0 || >=16.0.0} - '@netlify/serverless-functions-api@1.31.0': - resolution: {integrity: sha512-/ux3fefmw0yGmzRMOqhGrzbAuALtW8HY08bjE4yCk+y8CzB9r9mPd1ApSJe3KlYD+sqDvbQGrEXdifQ/LzUIDQ==} + '@netlify/serverless-functions-api@1.31.1': + resolution: {integrity: sha512-SkNxzfCwctS5ETnCqJOJfZZ/jB0pTkbWEAsApHoL7HzUQGWoRM6wYf4baJAJVMTfZBQu534SbKuwRs7WDAs43A==} engines: {node: '>=18.0.0'} '@netlify/zip-it-and-ship-it@9.41.1': @@ -3676,6 +4366,11 @@ packages: engines: {node: ^14.18.0 || >=16.0.0} hasBin: true + '@netlify/zip-it-and-ship-it@9.42.1': + resolution: {integrity: sha512-ZCGM2OnLbiFOZO+kpODI6BKjH6X4a6vE/tJd0aqIvKWiygZgxhIw5APZUzgwLGv4BahIBG+tcfKgW7krpZYLwA==} + engines: {node: ^14.18.0 || >=16.0.0} + hasBin: true + '@nodelib/fs.scandir@2.1.5': resolution: {integrity: sha512-vq24Bq3ym5HEQm2NKCr3yXDwjc7vTsEThRDnkp2DK9p1uqLR+DHurm/NOTo0KG7HYHU7eppKZj3MyqYuMBf62g==} engines: {node: '>= 8'} @@ -3712,6 +4407,14 @@ packages: resolution: {integrity: sha512-xhfYPXoV5Dy4UkY0D+v2KkwvnDfiA/8Mt3sWCGI/hM03NsYIH8ZaG6QzS9x7pje5vHZBZJ2v6VRFVTWACnqcmQ==} engines: {node: ^16.14.0 || >=18.0.0} + '@octokit/action@6.1.0': + resolution: {integrity: sha512-lo+nHx8kAV86bxvOVOI3vFjX3gXPd/L7guAUbvs3pUvnR2KC+R7yjBkA1uACt4gYhs4LcWP3AXSGQzsbeN2XXw==} + engines: {node: '>= 18'} + + '@octokit/auth-action@4.1.0': + resolution: {integrity: sha512-m+3t7K46IYyMk7Bl6/lF4Rv09GqDZjYmNg8IWycJ2Fa3YE3DE7vQcV6G2hUPmR9NDqenefNJwVtlisMjzymPiQ==} + engines: {node: '>= 18'} + '@octokit/auth-token@4.0.0': resolution: {integrity: sha512-tY/msAuJo6ARbK6SPIxZrPBms3xPbfwBrulZe0Wtr/DIY9lje2HeV1uoebShn6mx7SjCHif6EjMvoREj+gZ+SA==} engines: {node: '>= 18'} @@ -3728,6 +4431,9 @@ packages: resolution: {integrity: sha512-r+oZUH7aMFui1ypZnAvZmn0KSqAUgE1/tUXIWaqUCa1758ts/Jio84GZuzsvUkme98kv0WFY8//n0J1Z+vsIsQ==} engines: {node: '>= 18'} + '@octokit/openapi-types@20.0.0': + resolution: {integrity: sha512-EtqRBEjp1dL/15V7WiX5LJMIxxkdiGJnabzYx5Apx4FkQIFgAfKumXeYAqqJCj1s+BMX4cPFIFC4OLCR6stlnA==} + '@octokit/openapi-types@22.2.0': resolution: {integrity: sha512-QBhVjcUa9W7Wwhm6DBFu6ZZ+1/t/oYxqc2tp81Pi41YNuJinbFRx8B133qVOrAaBbF7D/m0Et6f9/pZt9Rc+tg==} @@ -3737,12 +4443,24 @@ packages: peerDependencies: '@octokit/core': '5' + '@octokit/plugin-paginate-rest@9.2.1': + resolution: {integrity: sha512-wfGhE/TAkXZRLjksFXuDZdmGnJQHvtU/joFQdweXUgzo1XwvBCD4o4+75NtFfjfLK5IwLf9vHTfSiU3sLRYpRw==} + engines: {node: '>= 18'} + peerDependencies: + '@octokit/core': '5' + '@octokit/plugin-request-log@4.0.1': resolution: {integrity: sha512-GihNqNpGHorUrO7Qa9JbAl0dbLnqJVrV8OXe2Zm5/Y4wFkZQDfTreBzVmiRfJVfE4mClXdihHnbpyyO9FSX4HA==} engines: {node: '>= 18'} peerDependencies: '@octokit/core': '5' + '@octokit/plugin-rest-endpoint-methods@10.4.1': + resolution: {integrity: sha512-xV1b+ceKV9KytQe3zCVqjg+8GTGfDYwaT1ATU5isiUyVtlVAO3HNdzpS4sr4GBx4hxQ46s7ITtZrAsxG22+rVg==} + engines: {node: '>= 18'} + peerDependencies: + '@octokit/core': '5' + '@octokit/plugin-rest-endpoint-methods@13.2.2': resolution: {integrity: sha512-EI7kXWidkt3Xlok5uN43suK99VWqc8OaIMktY9d9+RNKl69juoTyxmLoWPIZgJYzi41qj/9zU7G/ljnNOJ5AFA==} engines: {node: '>= 18'} @@ -3761,8 +4479,11 @@ packages: resolution: {integrity: sha512-MB4AYDsM5jhIHro/dq4ix1iWTLGToIGk6cWF5L6vanFaMble5jTX/UBQyiv05HsWnwUtY8JrfHy2LWfKwihqMw==} engines: {node: '>= 18'} - '@octokit/types@13.6.1': - resolution: {integrity: sha512-PHZE9Z+kWXb23Ndik8MKPirBPziOc0D2/3KH1P+6jK5nGWe96kadZuE4jev2/Jq7FvIfTlT2Ltg8Fv2x1v0a5g==} + '@octokit/types@12.6.0': + resolution: {integrity: sha512-1rhSOfRa6H9w4YwK0yrf5faDaDTb+yLyBUKOCV4xtCDB5VmIPqd/v9yr9o6SAzOAlRxMiRiCic6JVM1/kunVkw==} + + '@octokit/types@13.6.2': + resolution: {integrity: sha512-WpbZfZUcZU77DrSW4wbsSgTPfKcp286q3ItaIgvSbBpZJlu6mnYXAkjZz6LVZPXkEvLIM8McanyZejKTYUHipA==} '@open-draft/deferred-promise@2.2.0': resolution: {integrity: sha512-CecwLWx3rhxVQF6V4bAgPS5t+So2sTbPgAzafKkVizyi7tlwpcFpdFqq+wqF2OwNBmqFuu6tOyouTuxgpMfzmA==} @@ -3773,22 +4494,14 @@ packages: '@open-draft/until@2.1.0': resolution: {integrity: sha512-U69T3ItWHvLwGg5eJ0n3I62nWuE6ilHlmz7zM0npLBRvPRd7e6NYmg54vvRtP5mZG7kZqZCFVdsTWo7BPtBujg==} - '@opentelemetry/api-logs@0.53.0': - resolution: {integrity: sha512-8HArjKx+RaAI8uEIgcORbZIPklyh1YLjPSBus8hjRmvLi6DeFzgOcdZ7KwPabKj8mXF8dX0hyfAyGfycz0DbFw==} - engines: {node: '>=14'} - - '@opentelemetry/api-logs@0.54.0': - resolution: {integrity: sha512-9HhEh5GqFrassUndqJsyW7a0PzfyWr2eV2xwzHLIS+wX3125+9HE9FMRAKmJRwxZhgZGwH3HNQQjoMGZqmOeVA==} - engines: {node: '>=14'} - - '@opentelemetry/api-logs@0.54.2': - resolution: {integrity: sha512-4MTVwwmLgUh5QrJnZpYo6YRO5IBLAggf2h8gWDblwRagDStY13aEvt7gGk3jewrMaPlHiF83fENhIx0HO97/cQ==} - engines: {node: '>=14'} - '@opentelemetry/api-logs@0.55.0': resolution: {integrity: sha512-3cpa+qI45VHYcA5c0bHM6VHo9gicv3p5mlLHNG3rLyjQU8b7e0st1rWtrUn3JbZ3DwwCfhKop4eQ9UuYlC6Pkg==} engines: {node: '>=14'} + '@opentelemetry/api-logs@0.56.0': + resolution: {integrity: sha512-Wr39+94UNNG3Ei9nv3pHd4AJ63gq5nSemMRpCd8fPwDL9rN3vK26lzxfH27mw16XzOSO+TpyQwBAMaLxaPWG0g==} + engines: {node: '>=14'} + '@opentelemetry/api@1.8.0': resolution: {integrity: sha512-I/s6F7yKUDdtMsoBWXJe8Qz40Tui5vsuKCWJEWVL+5q9sSWRzzx6v2KeNsOBEwd94j0eWkpWCH4yB6rZg9Mf0w==} engines: {node: '>=8.0.0'} @@ -3797,468 +4510,438 @@ packages: resolution: {integrity: sha512-3giAOQvZiH5F9bMlMiv8+GSPMeqg0dbaeo58/0SlA9sxSqZhnUtxzX9/2FzyhS9sWQf5S0GJE0AKBrFqjpeYcg==} engines: {node: '>=8.0.0'} - '@opentelemetry/auto-instrumentations-node@0.52.0': - resolution: {integrity: sha512-J9SgX7NOpTvQ7itvlOlHP3lTlsMWtVh5WQSHUSTlg2m3A9HlZBri2DtZ8QgNj8rYWe0EQxQ3TQ3H6vabfun4vw==} + '@opentelemetry/auto-instrumentations-node@0.54.0': + resolution: {integrity: sha512-MJYh3hUN7FupIXGy/cOiMoTIM3lTELXFiu9dFXD6YK9AE/Uez2YfgRnHyotD9h/qJeL7uDcI5DHAGkbb/2EdOQ==} engines: {node: '>=14'} peerDependencies: '@opentelemetry/api': ^1.4.1 - '@opentelemetry/auto-instrumentations-web@0.41.0': - resolution: {integrity: sha512-IuTcKHCvWexAKspy4HgDvS+4aZwTAoZcBmJwyMiRB4K0e7znP89F/nDQNXgMsa20HOpDSQ9WHlylE9bdozpgug==} + '@opentelemetry/auto-instrumentations-web@0.43.0': + resolution: {integrity: sha512-2jyg6FLwLNJuTjm0FWAfYAekskBVcUn0QA0TYflTOeBvk7FoHaJ+IpKTfnMP4k6GbZVkl3Nw7WpphgRjYkj+XQ==} engines: {node: '>=14'} peerDependencies: '@opentelemetry/api': ^1.3.0 zone.js: ^0.11.4 || ^0.13.0 || ^0.14.0 - '@opentelemetry/auto-instrumentations-web@0.42.0': - resolution: {integrity: sha512-THj24jC+6y4Zjw9s6zzOrMqiCgyAkSo06nspIQ3OqLw3F2gj1MnK2naYiUCCnxd6i/2s7bpHJdVIQzAG2EW7gA==} + '@opentelemetry/auto-instrumentations-web@0.44.0': + resolution: {integrity: sha512-iP2VgpOHqxCr363MN/8rOly25Nze1Je1XPdYckc7u087/AD0PIfa8M8cMrVEw8lSvfdI+Z14JTVqanyMZOIqfw==} engines: {node: '>=14'} peerDependencies: '@opentelemetry/api': ^1.3.0 zone.js: ^0.11.4 || ^0.13.0 || ^0.14.0 - '@opentelemetry/context-async-hooks@1.27.0': - resolution: {integrity: sha512-CdZ3qmHCwNhFAzjTgHqrDQ44Qxcpz43cVxZRhOs+Ns/79ug+Mr84Bkb626bkJLkA3+BLimA5YAEVRlJC6pFb7g==} - engines: {node: '>=14'} - peerDependencies: - '@opentelemetry/api': '>=1.0.0 <1.10.0' - - '@opentelemetry/core@1.26.0': - resolution: {integrity: sha512-1iKxXXE8415Cdv0yjG3G6hQnB5eVEsJce3QaawX8SjDn0mAS0ZM8fAbZZJD4ajvhC15cePvosSCut404KrIIvQ==} + '@opentelemetry/context-async-hooks@1.29.0': + resolution: {integrity: sha512-TKT91jcFXgHyIDF1lgJF3BHGIakn6x0Xp7Tq3zoS3TMPzT9IlP0xEavWP8C1zGjU9UmZP2VR1tJhW9Az1A3w8Q==} engines: {node: '>=14'} peerDependencies: '@opentelemetry/api': '>=1.0.0 <1.10.0' - '@opentelemetry/core@1.27.0': - resolution: {integrity: sha512-yQPKnK5e+76XuiqUH/gKyS8wv/7qITd5ln56QkBTf3uggr0VkXOXfcaAuG330UfdYu83wsyoBwqwxigpIG+Jkg==} + '@opentelemetry/core@1.28.0': + resolution: {integrity: sha512-ZLwRMV+fNDpVmF2WYUdBHlq0eOWtEaUJSusrzjGnBt7iSRvfjFE3RXYUZJrqou/wIDWV0DwQ5KIfYe9WXg9Xqw==} engines: {node: '>=14'} peerDependencies: '@opentelemetry/api': '>=1.0.0 <1.10.0' - '@opentelemetry/core@1.28.0': - resolution: {integrity: sha512-ZLwRMV+fNDpVmF2WYUdBHlq0eOWtEaUJSusrzjGnBt7iSRvfjFE3RXYUZJrqou/wIDWV0DwQ5KIfYe9WXg9Xqw==} + '@opentelemetry/core@1.29.0': + resolution: {integrity: sha512-gmT7vAreXl0DTHD2rVZcw3+l2g84+5XiHIqdBUxXbExymPCvSsGOpiwMmn8nkiJur28STV31wnhIDrzWDPzjfA==} engines: {node: '>=14'} peerDependencies: '@opentelemetry/api': '>=1.0.0 <1.10.0' - '@opentelemetry/exporter-logs-otlp-grpc@0.54.0': - resolution: {integrity: sha512-CQC9xl9p8EIvx2KggdM7yffbpmUArKjiqAcjTTTEvqE8kOOf71NSuBU0FXs14FU8vBGTUlsr3oI4vGeWF8FakA==} + '@opentelemetry/exporter-logs-otlp-grpc@0.56.0': + resolution: {integrity: sha512-/ef8wcphVKZ0uI7A1oqQI/gEMiBUlkeBkM9AGx6AviQFIbgPVSdNK3+bHBkyq5qMkyWgkeQCSJ0uhc5vJpf0dw==} engines: {node: '>=14'} peerDependencies: '@opentelemetry/api': ^1.3.0 - '@opentelemetry/exporter-logs-otlp-http@0.54.0': - resolution: {integrity: sha512-EX/5YPtFw5hugURWSmOtJEGsjphkwTRAiv2yay40ADCLEzajhI/tM3v/7hFCj+rm37sGFMNawpi3mGLvfKGexQ==} + '@opentelemetry/exporter-logs-otlp-http@0.56.0': + resolution: {integrity: sha512-gN/itg2B30pa+yAqiuIHBCf3E77sSBlyWVzb+U/MDLzEMOwfnexlMvOWULnIO1l2xR2MNLEuPCQAOrL92JHEJg==} engines: {node: '>=14'} peerDependencies: '@opentelemetry/api': ^1.3.0 - '@opentelemetry/exporter-logs-otlp-proto@0.54.0': - resolution: {integrity: sha512-Q8p1eLP6BGu26VdiR8qBiyufXTZimUl2kv6EwZZPLRU0CJWAFR562UOyUtDxbwQioQFq57DVjCd6mQWBvydAlg==} + '@opentelemetry/exporter-logs-otlp-proto@0.56.0': + resolution: {integrity: sha512-MaO+eGrdksd8MpEbDDLbWegHc3w6ualZV6CENxNOm3wqob0iOx78/YL2NVIKyP/0ktTUIs7xIppUYqfY3ogFLQ==} engines: {node: '>=14'} peerDependencies: '@opentelemetry/api': ^1.3.0 - '@opentelemetry/exporter-trace-otlp-grpc@0.54.0': - resolution: {integrity: sha512-DOoK7yk/L/RHoyuYTxIyGY7PLFSTS7OGNks9htMS7eAFkm4Lsa6EtPlGANCT39NXWP4XIQR1c+Y+YIQ7lJdI+w==} + '@opentelemetry/exporter-trace-otlp-grpc@0.56.0': + resolution: {integrity: sha512-9hRHue78CV2XShAt30HadBK8XEtOBiQmnkYquR1RQyf2RYIdJvhiypEZ+Jh3NGW8Qi14icTII/1oPTQlhuyQdQ==} engines: {node: '>=14'} peerDependencies: '@opentelemetry/api': ^1.3.0 - '@opentelemetry/exporter-trace-otlp-http@0.53.0': - resolution: {integrity: sha512-m7F5ZTq+V9mKGWYpX8EnZ7NjoqAU7VemQ1E2HAG+W/u0wpY1x0OmbxAXfGKFHCspdJk8UKlwPGrpcB8nay3P8A==} + '@opentelemetry/exporter-trace-otlp-http@0.55.0': + resolution: {integrity: sha512-lMiNic63EVHpW+eChmLD2CieDmwQBFi72+LFbh8+5hY0ShrDGrsGP/zuT5MRh7M/vM/UZYO/2A/FYd7CMQGR7A==} engines: {node: '>=14'} peerDependencies: - '@opentelemetry/api': ^1.0.0 + '@opentelemetry/api': ^1.3.0 - '@opentelemetry/exporter-trace-otlp-http@0.54.0': - resolution: {integrity: sha512-00X6rtr6Ew59+MM9pPSH7Ww5ScpWKBLiBA49awbPqQuVL/Bp0qp7O1cTxKHgjWdNkhsELzJxAEYwuRnDGrMXyA==} + '@opentelemetry/exporter-trace-otlp-http@0.56.0': + resolution: {integrity: sha512-vqVuJvcwameA0r0cNrRzrZqPLB0otS+95g0XkZdiKOXUo81wYdY6r4kyrwz4nSChqTBEFm0lqi/H2OWGboOa6g==} engines: {node: '>=14'} peerDependencies: '@opentelemetry/api': ^1.3.0 - '@opentelemetry/exporter-trace-otlp-proto@0.54.0': - resolution: {integrity: sha512-cpDQj5wl7G8pLu3lW94SnMpn0C85A9Ehe7+JBow2IL5DGPWXTkynFngMtCC3PpQzQgzlyOVe0MVZfoBB3M5ECA==} + '@opentelemetry/exporter-trace-otlp-proto@0.56.0': + resolution: {integrity: sha512-UYVtz8Kp1QZpZFg83ZrnwRIxF2wavNyi1XaIKuQNFjlYuGCh8JH4+GOuHUU4G8cIzOkWdjNR559vv0Q+MCz+1w==} engines: {node: '>=14'} peerDependencies: '@opentelemetry/api': ^1.3.0 - '@opentelemetry/exporter-zipkin@1.27.0': - resolution: {integrity: sha512-eGMY3s4QprspFZojqsuQyQpWNFpo+oNVE/aosTbtvAlrJBAlvXcwwsOROOHOd8Y9lkU4i0FpQW482rcXkgwCSw==} + '@opentelemetry/exporter-zipkin@1.29.0': + resolution: {integrity: sha512-9wNUxbl/sju2AvA3UhL2kLF1nfhJ4dVJgvktc3hx80Bg/fWHvF6ik4R3woZ/5gYFqZ97dcuik0dWPQEzLPNBtg==} engines: {node: '>=14'} peerDependencies: '@opentelemetry/api': ^1.0.0 - '@opentelemetry/instrumentation-amqplib@0.43.0': - resolution: {integrity: sha512-ALjfQC+0dnIEcvNYsbZl/VLh7D2P1HhFF4vicRKHhHFIUV3Shpg4kXgiek5PLhmeKSIPiUB25IYH5RIneclL4A==} + '@opentelemetry/instrumentation-amqplib@0.45.0': + resolution: {integrity: sha512-SlKLsOS65NGMIBG1Lh/hLrMDU9WzTUF25apnV6ZmWZB1bBmUwan7qrwwrTu1cL5LzJWCXOdZPuTaxP7pC9qxnQ==} engines: {node: '>=14'} peerDependencies: '@opentelemetry/api': ^1.3.0 - '@opentelemetry/instrumentation-aws-lambda@0.46.0': - resolution: {integrity: sha512-rNmhTC1e1qQD4jw+TZSHlpLYNhrkbKA0P5rlqPpTVHqZXHQctu9+dity2lLBh4DlFKt4p/ibVDLVDoBqjvetKA==} + '@opentelemetry/instrumentation-aws-lambda@0.49.0': + resolution: {integrity: sha512-FIKQSzX/MSzfARqgm7lX9p/QUj7USyicioBYI5BFGuOOoLefxBlJINAcRs3EvCh1taEnJ7/LpbrhlcF7r4Yqvg==} engines: {node: '>=14'} peerDependencies: '@opentelemetry/api': ^1.3.0 - '@opentelemetry/instrumentation-aws-sdk@0.45.0': - resolution: {integrity: sha512-3EGgC0LFZuFfXcOeslhXHhsiInVhhN046YQsYIPflsicAk7v0wN946sZKWuerEfmqx/kFXOsbOeI1SkkTRmqWQ==} + '@opentelemetry/instrumentation-aws-sdk@0.48.0': + resolution: {integrity: sha512-Bl4geb9DS5Zxr5mOsDcDTLjwrfipQ4KDl1ZT5gmoOvVuZPp308reGdtnO1QmqbvMwcgMxD2aBdWUoYgtx1WgWw==} engines: {node: '>=14'} peerDependencies: '@opentelemetry/api': ^1.3.0 - '@opentelemetry/instrumentation-bunyan@0.42.0': - resolution: {integrity: sha512-GBh6ybwKmFZjc86SyHVx72jHg+4pFPaXT3IZgJ4QtnMsMf0/q5m2aHAjid+yakmEkApsnRWX8pJ8nkl1e+6mag==} + '@opentelemetry/instrumentation-bunyan@0.44.0': + resolution: {integrity: sha512-9JHcfUPejOx5ULuxrH5K5qOZ9GJSTisuMSZZFVkDigZJ42pMn26Zgmb1HhuiZXd/ZcFgOeLZcwQNpBmF1whftg==} engines: {node: '>=14'} peerDependencies: '@opentelemetry/api': ^1.3.0 - '@opentelemetry/instrumentation-cassandra-driver@0.42.0': - resolution: {integrity: sha512-35I9Gw4BeSs9NPe7fugu9e/mWKaapc/N1wounHnGt259/Q3ISGMOQRrOwIBw+x/XJygJvn4Ss1c+r5h89TsVAw==} + '@opentelemetry/instrumentation-cassandra-driver@0.44.0': + resolution: {integrity: sha512-HbhNoqAelB1T4QtgKJbOy7wB26R15HToLyMmYwNFICyDtfY7nhRmGRSzPt6akpwXpyCq43/P+L6XYTmqSWTK/Q==} engines: {node: '>=14'} peerDependencies: '@opentelemetry/api': ^1.3.0 - '@opentelemetry/instrumentation-connect@0.40.0': - resolution: {integrity: sha512-3aR/3YBQ160siitwwRLjwqrv2KBT16897+bo6yz8wIfel6nWOxTZBJudcbsK3p42pTC7qrbotJ9t/1wRLpv79Q==} + '@opentelemetry/instrumentation-connect@0.42.0': + resolution: {integrity: sha512-bOoYHBmbnq/jFaLHmXJ55VQ6jrH5fHDMAPjFM0d3JvR0dvIqW7anEoNC33QqYGFYUfVJ50S0d/eoyF61ALqQuA==} engines: {node: '>=14'} peerDependencies: '@opentelemetry/api': ^1.3.0 - '@opentelemetry/instrumentation-cucumber@0.10.0': - resolution: {integrity: sha512-5sT6Ap3W7StEL0Oax/vd1YTEcTPTefx+9myzkKrr72hxzFzSooGRCxlU3sfPwZqWptUV7+QWTMd7SqGEEPnE/w==} + '@opentelemetry/instrumentation-cucumber@0.12.0': + resolution: {integrity: sha512-0sAhKYaxi5/SM+z8nbwmezNVlnJGkcZgMA7ClenVMIoH5xjow/b2gzJOWr3Ch7FPEXBcyoY/sIqfYWRwmRXWiw==} engines: {node: '>=14'} peerDependencies: '@opentelemetry/api': ^1.0.0 - '@opentelemetry/instrumentation-dataloader@0.13.0': - resolution: {integrity: sha512-wbU3WdgUAXljEIY2nfpkqID/VH70ThnES8mZZHKCZlV/Pl5T4+qmrVdT7U9/WUzz8flwsXfER6T6jl48Wbl+LQ==} + '@opentelemetry/instrumentation-dataloader@0.15.0': + resolution: {integrity: sha512-5fP35A2jUPk4SerVcduEkpbRAIoqa2PaP5rWumn01T1uSbavXNccAr3Xvx1N6xFtZxXpLJq4FYqGFnMgDWgVng==} engines: {node: '>=14'} peerDependencies: '@opentelemetry/api': ^1.3.0 - '@opentelemetry/instrumentation-dns@0.40.0': - resolution: {integrity: sha512-tLNR8XLPiYRKKk3/UqifXnPP2TVt1RcwvHU0R1ETL1xkZ1ZHMTmSC4x6TignnHOFtRixtJ05EgMGejnffaBXkQ==} + '@opentelemetry/instrumentation-dns@0.42.0': + resolution: {integrity: sha512-HsKYWwMADJAcdY4UkNNbvcg9cm5Xhz5wxBPyT15z7wigatiEoCXPrbbbRDmCe+eKTc2tRxUPmg49u6MsIGcUmg==} engines: {node: '>=14'} peerDependencies: '@opentelemetry/api': ^1.3.0 - '@opentelemetry/instrumentation-document-load@0.40.0': - resolution: {integrity: sha512-TG7J0gGG7mYGz/PbNSY+I7DfqZj3DznGgpnkCt6zU2OwNmjaW07TSrm1Jx4lRxq8MwV774iwGa1DXqgZC53Okw==} + '@opentelemetry/instrumentation-document-load@0.42.0': + resolution: {integrity: sha512-/YfGcdl3oJBXktuWSpUU+IrF6V0haudEMqJZvpPkbzVgHJ5I3W1+1REGimmsU4e5PvwHKt/jm3pne7PBSb4WyA==} engines: {node: '>=14'} peerDependencies: '@opentelemetry/api': ^1.3.0 - '@opentelemetry/instrumentation-document-load@0.41.0': - resolution: {integrity: sha512-lk9OhE0q6AwkBsmsFxnheH+z31GXYwvS1/PLUucvnLYJO+GzPNrL3zCgEhb3H9Pg9jGA/kkbvTaSXHtLZiBJVw==} + '@opentelemetry/instrumentation-document-load@0.43.0': + resolution: {integrity: sha512-A3FEn5a3ncL/K6bbMd65tpgXHfjqSOkJ+YKlpg1G9r1xLcBBJ3SweRuu93onJ8zZPdFfjRq3iONPH1xue8HNtQ==} engines: {node: '>=14'} peerDependencies: '@opentelemetry/api': ^1.3.0 - '@opentelemetry/instrumentation-express@0.44.0': - resolution: {integrity: sha512-GWgibp6Q0wxyFaaU8ERIgMMYgzcHmGrw3ILUtGchLtLncHNOKk0SNoWGqiylXWWT4HTn5XdV8MGawUgpZh80cA==} + '@opentelemetry/instrumentation-express@0.46.0': + resolution: {integrity: sha512-BCEClDj/HPq/1xYRAlOr6z+OUnbp2eFp18DSrgyQz4IT9pkdYk8eWHnMi9oZSqlC6J5mQzkFmaW5RrKb1GLQhg==} engines: {node: '>=14'} peerDependencies: '@opentelemetry/api': ^1.3.0 - '@opentelemetry/instrumentation-fastify@0.41.0': - resolution: {integrity: sha512-pNRjFvf0mvqfJueaeL/qEkuGJwgtE5pgjIHGYwjc2rMViNCrtY9/Sf+Nu8ww6dDd/Oyk2fwZZP7i0XZfCnETrA==} + '@opentelemetry/instrumentation-fastify@0.43.0': + resolution: {integrity: sha512-Lmdsg7tYiV+K3/NKVAQfnnLNGmakUOFdB0PhoTh2aXuSyCmyNnnDvhn2MsArAPTZ68wnD5Llh5HtmiuTkf+DyQ==} engines: {node: '>=14'} peerDependencies: '@opentelemetry/api': ^1.3.0 - '@opentelemetry/instrumentation-fetch@0.53.0': - resolution: {integrity: sha512-Sayp/Oypr0lyTgOKide/Dz4ovqDWPdmazapCMyfsVpXpV9zrH2kbdO2vAKUMx9vF98vxsqcxXucf4z54WXWZ8A==} - engines: {node: '>=14'} - peerDependencies: - '@opentelemetry/api': ^1.0.0 - - '@opentelemetry/instrumentation-fetch@0.54.2': - resolution: {integrity: sha512-7G2mn0K5BJ41AIarIMGuMDDcdJ13DQdk4go2CIL7QZkY0TgZmmq6wO6fHwdocZlPPkZ47Mflo4DwSQtMLykfyQ==} + '@opentelemetry/instrumentation-fetch@0.55.0': + resolution: {integrity: sha512-wkybQE85HzInYX2csZ4UuMlCIMCyGGHcNqL9TcoZgAZC2EuXFReTsLytoszknhcaX+P7UT9Ee3915t8KC6XP4w==} engines: {node: '>=14'} peerDependencies: '@opentelemetry/api': ^1.3.0 - '@opentelemetry/instrumentation-fetch@0.55.0': - resolution: {integrity: sha512-wkybQE85HzInYX2csZ4UuMlCIMCyGGHcNqL9TcoZgAZC2EuXFReTsLytoszknhcaX+P7UT9Ee3915t8KC6XP4w==} + '@opentelemetry/instrumentation-fetch@0.56.0': + resolution: {integrity: sha512-jKlO8hPwId7I9dNyoBQSzSe5+q4j2cDvDHuM2pJUe6MITRKrATe9IqkJRFZ0+vdFG3gO5NMX4yFqNZ/E4zmLYg==} engines: {node: '>=14'} peerDependencies: '@opentelemetry/api': ^1.3.0 - '@opentelemetry/instrumentation-fs@0.16.0': - resolution: {integrity: sha512-hMDRUxV38ln1R3lNz6osj3YjlO32ykbHqVrzG7gEhGXFQfu7LJUx8t9tEwE4r2h3CD4D0Rw4YGDU4yF4mP3ilg==} + '@opentelemetry/instrumentation-fs@0.18.0': + resolution: {integrity: sha512-kC40y6CEMONm8/MWwoF5GHWIC7gOdF+g3sgsjfwJaUkgD6bdWV+FgG0XApqSbTQndICKzw3RonVk8i7s6mHqhA==} engines: {node: '>=14'} peerDependencies: '@opentelemetry/api': ^1.3.0 - '@opentelemetry/instrumentation-generic-pool@0.40.0': - resolution: {integrity: sha512-k+/JlNDHN3bPi/Cir+Ew6tKHFVCa1ZFeQyGUw5HQkRX/twCRaN3kJFXJW+rDAN90XwK3RtC9AWwBihDGh/oSlQ==} + '@opentelemetry/instrumentation-generic-pool@0.42.0': + resolution: {integrity: sha512-J4QxqiQ1imtB9ogzsOnHra0g3dmmLAx4JCeoK3o0rFes1OirljNHnO8Hsj4s1jAir8WmWvnEEQO1y8yk6j2tog==} engines: {node: '>=14'} peerDependencies: '@opentelemetry/api': ^1.3.0 - '@opentelemetry/instrumentation-graphql@0.44.0': - resolution: {integrity: sha512-FYXTe3Bv96aNpYktqm86BFUTpjglKD0kWI5T5bxYkLUPEPvFn38vWGMJTGrDMVou/i55E4jlWvcm6hFIqLsMbg==} + '@opentelemetry/instrumentation-graphql@0.46.0': + resolution: {integrity: sha512-tplk0YWINSECcK89PGM7IVtOYenXyoOuhOQlN0X0YrcDUfMS4tZMKkVc0vyhNWYYrexnUHwNry2YNBNugSpjlQ==} engines: {node: '>=14'} peerDependencies: '@opentelemetry/api': ^1.3.0 - '@opentelemetry/instrumentation-grpc@0.54.2': - resolution: {integrity: sha512-KhSzerCaaqVH2zfDro7nTunWUZXt1pQISQpE83LuQTOKGk7mN3G60T1wliQ3Qdg0X3UUuhCXEC7u6IAVfDxkUQ==} + '@opentelemetry/instrumentation-grpc@0.56.0': + resolution: {integrity: sha512-cmqCZqyKtyu4oLx3rQmPMeqAo69er7ULnbEBTFCW0++AAimIoAXJptrEvB5X9HYr0NP2TqF8As/vlV3IVmY5OQ==} engines: {node: '>=14'} peerDependencies: '@opentelemetry/api': ^1.3.0 - '@opentelemetry/instrumentation-hapi@0.42.0': - resolution: {integrity: sha512-TQC0BtIWLHrp6nKsYdZ5t5B7aiZ16BwbRqZtYYQxeJVsq/HQTANWpknjtA7KMxv5tAUMCrU/eDo8F3qioUOSZg==} + '@opentelemetry/instrumentation-hapi@0.44.0': + resolution: {integrity: sha512-4HdNIMNXWK1O6nsaQOrACo83QWEVoyNODTdVDbUqtqXiv2peDfD0RAPhSQlSGWLPw3S4d9UoOmrV7s2HYj6T2A==} engines: {node: '>=14'} peerDependencies: '@opentelemetry/api': ^1.3.0 - '@opentelemetry/instrumentation-http@0.54.0': - resolution: {integrity: sha512-ovl0UrL+vGpi0O7fdZ1mHRdiQkuv6NGMRBRKZZygVCUFNXdoqTpvJRRbTYih5U5FC+PHIFssEordmlblRCaGUg==} + '@opentelemetry/instrumentation-http@0.56.0': + resolution: {integrity: sha512-/bWHBUAq8VoATnH9iLk5w8CE9+gj+RgYSUphe7hry472n6fYl7+4PvuScoQMdmSUTprKq/gyr2kOWL6zrC7FkQ==} engines: {node: '>=14'} peerDependencies: '@opentelemetry/api': ^1.3.0 - '@opentelemetry/instrumentation-ioredis@0.44.0': - resolution: {integrity: sha512-312pE2xc0ihX9haTf9WC4OF9in5EfVO1y5I8Ef9aMQKJNhuSe3IgzQAqGoLfaYajC+ig0IZ9SQKU8mRbFwHU+A==} + '@opentelemetry/instrumentation-ioredis@0.46.0': + resolution: {integrity: sha512-sOdsq8oGi29V58p1AkefHvuB3l2ymP1IbxRIX3y4lZesQWKL8fLhBmy8xYjINSQ5gHzWul2yoz7pe7boxhZcqQ==} engines: {node: '>=14'} peerDependencies: '@opentelemetry/api': ^1.3.0 - '@opentelemetry/instrumentation-kafkajs@0.4.0': - resolution: {integrity: sha512-I9VwDG314g7SDL4t8kD/7+1ytaDBRbZQjhVaQaVIDR8K+mlsoBhLsWH79yHxhHQKvwCSZwqXF+TiTOhoQVUt7A==} + '@opentelemetry/instrumentation-kafkajs@0.6.0': + resolution: {integrity: sha512-MGQrzqEUAl0tacKJUFpuNHJesyTi51oUzSVizn7FdvJplkRIdS11FukyZBZJEscofSEdk7Ycmg+kNMLi5QHUFg==} engines: {node: '>=14'} peerDependencies: '@opentelemetry/api': ^1.3.0 - '@opentelemetry/instrumentation-knex@0.41.0': - resolution: {integrity: sha512-OhI1SlLv5qnsnm2dOVrian/x3431P75GngSpnR7c4fcVFv7prXGYu29Z6ILRWJf/NJt6fkbySmwdfUUnFnHCTg==} + '@opentelemetry/instrumentation-knex@0.43.0': + resolution: {integrity: sha512-mOp0TRQNFFSBj5am0WF67fRO7UZMUmsF3/7HSDja9g3H4pnj+4YNvWWyZn4+q0rGrPtywminAXe0rxtgaGYIqg==} engines: {node: '>=14'} peerDependencies: '@opentelemetry/api': ^1.3.0 - '@opentelemetry/instrumentation-koa@0.44.0': - resolution: {integrity: sha512-ryPqGIQ4hpMGd85bAGjRMDAy/ic+Qdh1GtFGJo9KaXdzbcvZoF1ZgXVsKTYDxbD1n5C0BoQy6rcWg8Lu68iCJA==} + '@opentelemetry/instrumentation-koa@0.46.0': + resolution: {integrity: sha512-RcWXMQdJQANnPUaXbHY5G0Fg6gmleZ/ZtZeSsekWPaZmQq12FGk0L1UwodIgs31OlYfviAZ4yTeytoSUkgo5vQ==} engines: {node: '>=14'} peerDependencies: '@opentelemetry/api': ^1.3.0 - '@opentelemetry/instrumentation-lru-memoizer@0.41.0': - resolution: {integrity: sha512-6OePkk4RYCPVsnS0TroEK6UZzxxxjVWaE6EPdOn2qxGHMtm+Qb80tiBQ6BbmC+f7bjc27O85JY8gxeTybhHZXw==} + '@opentelemetry/instrumentation-lru-memoizer@0.43.0': + resolution: {integrity: sha512-fZc+1eJUV+tFxaB3zkbupiA8SL3vhDUq89HbDNg1asweYrEb9OlHIB+Ot14ZiHUc1qCmmWmZHbPTwa56mVVwzg==} engines: {node: '>=14'} peerDependencies: '@opentelemetry/api': ^1.3.0 - '@opentelemetry/instrumentation-memcached@0.40.0': - resolution: {integrity: sha512-VzJUUH6cVz8yrb25RvvjhxCpwu4vUk28I0m5nnnhebULOo8p9lda5PgQeVde2+jQAd977C/vN714fkbYOmwb+A==} + '@opentelemetry/instrumentation-memcached@0.42.0': + resolution: {integrity: sha512-6peg2nImB4JNpK+kW95b12B6tRSwRpc0KCm6Ol41uDYPli800J9vWi+DGoPsmTrgZpkEfCe9Z9Ob9Z6Fth2zwg==} engines: {node: '>=14'} peerDependencies: '@opentelemetry/api': ^1.3.0 - '@opentelemetry/instrumentation-mongodb@0.48.0': - resolution: {integrity: sha512-9YWvaGvrrcrydMsYGLu0w+RgmosLMKe3kv/UNlsPy8RLnCkN2z+bhhbjjjuxtUmvEuKZMCoXFluABVuBr1yhjw==} + '@opentelemetry/instrumentation-mongodb@0.50.0': + resolution: {integrity: sha512-DtwJMjYFXFT5auAvv8aGrBj1h3ciA/dXQom11rxL7B1+Oy3FopSpanvwYxJ+z0qmBrQ1/iMuWELitYqU4LnlkQ==} engines: {node: '>=14'} peerDependencies: '@opentelemetry/api': ^1.3.0 - '@opentelemetry/instrumentation-mongoose@0.43.0': - resolution: {integrity: sha512-y1mWuL/zb6IKi199HkROgmStxF/ybEsnKYgx+/lpLATd57oZHOqrXP9tLmp9qRVI5c6P5XEWfe7ZCvrj07iDMQ==} + '@opentelemetry/instrumentation-mongoose@0.45.0': + resolution: {integrity: sha512-zHgNh+A01C5baI2mb5dAGyMC7DWmUpOfwpV8axtC0Hd5Uzqv+oqKgKbVDIVhOaDkPxjgVJwYF9YQZl2pw2qxIA==} engines: {node: '>=14'} peerDependencies: '@opentelemetry/api': ^1.3.0 - '@opentelemetry/instrumentation-mysql2@0.42.1': - resolution: {integrity: sha512-5hOQbFSpqsgDLaqIeWZNbSWB6XdwN+aBjoCIe60lmGG86zeNXu9I6l1kEckRb+Gy0i7zrt0Tk8S62zsOSZ8l7Q==} + '@opentelemetry/instrumentation-mysql2@0.44.0': + resolution: {integrity: sha512-e9QY4AGsjGFwmfHd6kBa4yPaQZjAq2FuxMb0BbKlXCAjG+jwqw+sr9xWdJGR60jMsTq52hx3mAlE3dUJ9BipxQ==} engines: {node: '>=14'} peerDependencies: '@opentelemetry/api': ^1.3.0 - '@opentelemetry/instrumentation-mysql@0.42.0': - resolution: {integrity: sha512-1GN2EBGVSZABGQ25MSz3faeBW/DwhzmE10aNW1/A2mvQAxF1CvpMk17YmNUzwapVt29iKsiU3SXQG7vjh/019A==} + '@opentelemetry/instrumentation-mysql@0.44.0': + resolution: {integrity: sha512-al7jbXvT/uT1KV8gdNDzaWd5/WXf+mrjrsF0/NtbnqLa0UUFGgQnoK3cyborgny7I+KxWhL8h7YPTf6Zq4nKsg==} engines: {node: '>=14'} peerDependencies: '@opentelemetry/api': ^1.3.0 - '@opentelemetry/instrumentation-nestjs-core@0.41.0': - resolution: {integrity: sha512-XCqtghFktpcJ2BOaJtFfqtTMsHffJADxfYhJl28WT6ygCChS2uZVxMKKLsy+i9VtPaw/i1IumPICL6mbhwq+Vw==} + '@opentelemetry/instrumentation-nestjs-core@0.43.0': + resolution: {integrity: sha512-NEo4RU7HTjiaXk3curqXUvCb9alRiFWxQY//+hvDXwWLlADX2vB6QEmVCeEZrKO+6I/tBrI4vNdAnbCY9ldZVg==} engines: {node: '>=14'} peerDependencies: '@opentelemetry/api': ^1.3.0 - '@opentelemetry/instrumentation-net@0.40.0': - resolution: {integrity: sha512-abErnVRxTmtiF7EvBISW81Se2nj/j3Xtpfy//9++dgvDOXwbcD1Xz1via6ZHOm/VamboGhqPlYiO7ABzluPLwg==} + '@opentelemetry/instrumentation-net@0.42.0': + resolution: {integrity: sha512-RCX1e4aHBxpTdm3xyQWDF6dbfclRY1xXAzZnEwuFj1IO+DAqnu8oO11NRBIfH6TNRBmeBKbpiaGbmzCV9ULwIA==} engines: {node: '>=14'} peerDependencies: '@opentelemetry/api': ^1.3.0 - '@opentelemetry/instrumentation-pg@0.47.1': - resolution: {integrity: sha512-qIcydMBVlKtAyFQWYunjqvFMVqIGvxGMXISrdLuSbcCqico9QKhK7bF5wzsotjGwHcGnc7q5kRqSL7j+LnY1Cw==} + '@opentelemetry/instrumentation-pg@0.49.0': + resolution: {integrity: sha512-3alvNNjPXVdAPdY1G7nGRVINbDxRK02+KAugDiEpzw0jFQfU8IzFkSWA4jyU4/GbMxKvHD+XIOEfSjpieSodKw==} engines: {node: '>=14'} peerDependencies: '@opentelemetry/api': ^1.3.0 - '@opentelemetry/instrumentation-pino@0.43.0': - resolution: {integrity: sha512-jlOOgbODWRRNknWXY1VLgmqgG0SO4kLgU3XnejjO/3De4OisroAsMGk+1cRB5AQ6WZ8WLAMkMyTShaOe6j2Asw==} + '@opentelemetry/instrumentation-pino@0.45.0': + resolution: {integrity: sha512-u7XwRdMDPzB6PHRo1EJNxTmjpHPnLpssYlr5t89aWFXP6fP3M2oRKjyX8EZHTSky/6GOMy860mzmded2VVFvfg==} engines: {node: '>=14'} peerDependencies: '@opentelemetry/api': ^1.3.0 - '@opentelemetry/instrumentation-redis-4@0.43.0': - resolution: {integrity: sha512-6B2+CFRY9xRnkeZrSvlTyY2yB/zAgxjbXS5EwXhE3ZAKR1hWWoUzaTADIKT5xe9/VbDW42U3UoOPCcaCmeAXww==} + '@opentelemetry/instrumentation-redis-4@0.45.0': + resolution: {integrity: sha512-Sjgym1xn3mdxPRH5CNZtoz+bFd3E3NlGIu7FoYr4YrQouCc9PbnmoBcmSkEdDy5LYgzNildPgsjx9l0EKNjKTQ==} engines: {node: '>=14'} peerDependencies: '@opentelemetry/api': ^1.3.0 - '@opentelemetry/instrumentation-redis@0.43.0': - resolution: {integrity: sha512-dufe08W3sCOjutbTJmV6tg2Y3+7IBe59oQrnIW2RCgjRhsW0Jjaenezt490eawO0MdXjUfFyrIUg8WetKhE4xA==} + '@opentelemetry/instrumentation-redis@0.45.0': + resolution: {integrity: sha512-IKooJ9pUwPhL5nGEMi9QXvO6pMhwgJe6BzmZ0BMoZweKasC0Y0GekKjPw86Lhx+X1xoJCOFJhoWE9c5SnBJVcw==} engines: {node: '>=14'} peerDependencies: '@opentelemetry/api': ^1.3.0 - '@opentelemetry/instrumentation-restify@0.42.0': - resolution: {integrity: sha512-ApDD9HNy6de6xrHmISEfkQHwwX1f1JrBj0ADnlk6tVdJ0j/vNmsZNLwaU2IA2K3mHqbp2YLarLgxAZp6rjcfWg==} + '@opentelemetry/instrumentation-restify@0.44.0': + resolution: {integrity: sha512-JUIs6NcSkH+AtUgaUknD+1M4GQA5vOPKqwJqdaJbaEQzHo+QTDn8GY1iiSKXktL68OwRddbyQv6tu2NyCGcKSw==} engines: {node: '>=14'} peerDependencies: '@opentelemetry/api': ^1.3.0 - '@opentelemetry/instrumentation-router@0.41.0': - resolution: {integrity: sha512-IbvzgaoylMqStOOtwucEvSu5CDbfQN+H1ZZ2p6c9Kmvzptqh6G441GFy0FFVVqxOAHNhQm2w6n0Ag8trdBjCfw==} + '@opentelemetry/instrumentation-router@0.43.0': + resolution: {integrity: sha512-IkSBWfzlpwLZSJMj3rDG21bDYqbWvW3D/HEx5yCxjUUWVbcz9tRKXjxwG1LB6ZJfnXwwVIOgbz+7XW0HyAXr9Q==} engines: {node: '>=14'} peerDependencies: '@opentelemetry/api': ^1.3.0 - '@opentelemetry/instrumentation-socket.io@0.43.0': - resolution: {integrity: sha512-HAQoIZ6N/ey1L4jF69gmqo7RyeSv5rc4sZZAd1v6SVaB8ZolTEyWEzGlu1NRZZTnqfWNxDkX6J1/omWpDd9k0w==} + '@opentelemetry/instrumentation-socket.io@0.45.0': + resolution: {integrity: sha512-X/CUjHqX1mZHEqXjD4AgVA5VXW1JHIauj1LDEjUDky/3RCsUTysj031x0Sq+8yBwcPyHF6k9vZ8DNw+CfxscOQ==} engines: {node: '>=14'} peerDependencies: '@opentelemetry/api': ^1.3.0 - '@opentelemetry/instrumentation-tedious@0.15.0': - resolution: {integrity: sha512-Kb7yo8Zsq2TUwBbmwYgTAMPK0VbhoS8ikJ6Bup9KrDtCx2JC01nCb+M0VJWXt7tl0+5jARUbKWh5jRSoImxdCw==} + '@opentelemetry/instrumentation-tedious@0.17.0': + resolution: {integrity: sha512-yRBz2409an03uVd1Q2jWMt3SqwZqRFyKoWYYX3hBAtPDazJ4w5L+1VOij71TKwgZxZZNdDBXImTQjii+VeuzLg==} engines: {node: '>=14'} peerDependencies: '@opentelemetry/api': ^1.3.0 - '@opentelemetry/instrumentation-undici@0.7.1': - resolution: {integrity: sha512-sIl4zrRDP7pR+2Pmdm9XJQULMKiUmvZze2cEW6gUz7TXCEaYmJ+vNMdd7qgeRo8C7AMm+T08mptobFVKPzdz+A==} + '@opentelemetry/instrumentation-undici@0.9.0': + resolution: {integrity: sha512-lxc3cpUZ28CqbrWcUHxGW/ObDpMOYbuxF/ZOzeFZq54P9uJ2Cpa8gcrC9F716mtuiMaekwk8D6n34vg/JtkkxQ==} engines: {node: '>=14'} peerDependencies: '@opentelemetry/api': ^1.7.0 - '@opentelemetry/instrumentation-user-interaction@0.40.0': - resolution: {integrity: sha512-QvVoRVL84gI5KSzXherCsWN8314o0+rdvlPKPbgMUCt3PEhnAtO0MfL5HHs2BAh9DE7QTxVQVthV5A0MdatJaA==} + '@opentelemetry/instrumentation-user-interaction@0.42.0': + resolution: {integrity: sha512-cRlvT5/Dw4xNr0LWQlNsXP3o9NFj4kHz5TJOka0XCgSrHHoL9/zGbPiSQml8SCD7MS4OmeBYUCn7MJ25/h1WMQ==} engines: {node: '>=14'} peerDependencies: '@opentelemetry/api': ^1.3.0 zone.js: ^0.11.4 || ^0.13.0 || ^0.14.0 - '@opentelemetry/instrumentation-user-interaction@0.41.0': - resolution: {integrity: sha512-Vhv/eghMfIaSvkfYTtQhnNBTcYgM83BaXW5dyGaksnVn0PzQuMA5k5kfCcj3Wl1VKIXQRVvOBrWWeJYeCDokRA==} + '@opentelemetry/instrumentation-user-interaction@0.43.0': + resolution: {integrity: sha512-CjOOGpeVm7jCAxhDf5Sch7nHJBx3ca98zBu4ZbYmr4wCiMejnwv3Dc/mrO8RZgUk1bXVFc9MLoz7OMaajJFlEA==} engines: {node: '>=14'} peerDependencies: '@opentelemetry/api': ^1.3.0 zone.js: ^0.11.4 || ^0.13.0 || ^0.14.0 - '@opentelemetry/instrumentation-winston@0.41.0': - resolution: {integrity: sha512-qtqGDx2Plu71s9xaeXut0YgZFG/y68ENG9vvo/SODeEC+4/APiS/htQ5YNJIxxjOuxYowdFYRqV9Kmef2EUzmw==} + '@opentelemetry/instrumentation-winston@0.43.0': + resolution: {integrity: sha512-TVvRwqjmf4+CcjsdkXc+VHiIG0Qzzim5dx8cN5wXRt4+UYIjyZpnhi/WmSjC0fJdkKb6DNjTIw7ktmB/eRj/jQ==} engines: {node: '>=14'} peerDependencies: '@opentelemetry/api': ^1.3.0 - '@opentelemetry/instrumentation-xml-http-request@0.53.0': - resolution: {integrity: sha512-vkALs8zdEUU3GnGvq1rzP0RK3+Fsk2jyzY6X/a+ibbo/miCmmeQNHX+fBRNs/3Offquj19M0qD+olNU9CJloqg==} - engines: {node: '>=14'} - peerDependencies: - '@opentelemetry/api': ^1.0.0 - - '@opentelemetry/instrumentation-xml-http-request@0.54.2': - resolution: {integrity: sha512-Y07iCr4OuXQwiPft2GqXpp7hNpIDa/72wzwfDRP/fh1DZcm2MjXgvcOos45VFoXPW5YxHs/ONobT4UTrS/yovA==} + '@opentelemetry/instrumentation-xml-http-request@0.55.0': + resolution: {integrity: sha512-Wlz4LzDpBFxHpb24RAM6RoiGspJ7J16ux0Xw5KVLtK3zzpQaxMYEVF0XQNC61WJJa3tRNt3XRjiQ8mrXJZxVQg==} engines: {node: '>=14'} peerDependencies: '@opentelemetry/api': ^1.3.0 - '@opentelemetry/instrumentation@0.53.0': - resolution: {integrity: sha512-DMwg0hy4wzf7K73JJtl95m/e0boSoWhH07rfvHvYzQtBD3Bmv0Wc1x733vyZBqmFm8OjJD0/pfiUg1W3JjFX0A==} + '@opentelemetry/instrumentation-xml-http-request@0.56.0': + resolution: {integrity: sha512-YQLMuiSIm4yC/gRTwaLBAMXSXqCDL40DzYQ1wZ5cB3U9FcDTDjC4QZ3CTgf2FWcGkPeuGrgUAeithc5S+cUmkg==} engines: {node: '>=14'} peerDependencies: '@opentelemetry/api': ^1.3.0 - '@opentelemetry/instrumentation@0.54.0': - resolution: {integrity: sha512-B0Ydo9g9ehgNHwtpc97XivEzjz0XBKR6iQ83NTENIxEEf5NHE0otZQuZLgDdey1XNk+bP1cfRpIkSFWM5YlSyg==} + '@opentelemetry/instrumentation@0.55.0': + resolution: {integrity: sha512-YDCMlaQRZkziLL3t6TONRgmmGxDx6MyQDXRD0dknkkgUZtOK5+8MWft1OXzmNu6XfBOdT12MKN5rz+jHUkafKQ==} engines: {node: '>=14'} peerDependencies: '@opentelemetry/api': ^1.3.0 - '@opentelemetry/instrumentation@0.54.2': - resolution: {integrity: sha512-go6zpOVoZVztT9r1aPd79Fr3OWiD4N24bCPJsIKkBses8oyFo12F/Ew3UBTdIu6hsW4HC4MVEJygG6TEyJI/lg==} + '@opentelemetry/instrumentation@0.56.0': + resolution: {integrity: sha512-2KkGBKE+FPXU1F0zKww+stnlUxUTlBvLCiWdP63Z9sqXYeNI/ziNzsxAp4LAdUcTQmXjw1IWgvm5CAb/BHy99w==} engines: {node: '>=14'} peerDependencies: '@opentelemetry/api': ^1.3.0 - '@opentelemetry/instrumentation@0.55.0': - resolution: {integrity: sha512-YDCMlaQRZkziLL3t6TONRgmmGxDx6MyQDXRD0dknkkgUZtOK5+8MWft1OXzmNu6XfBOdT12MKN5rz+jHUkafKQ==} + '@opentelemetry/opentelemetry-browser-detector@0.55.0': + resolution: {integrity: sha512-LBccp9xmJP8R6/qEZXlBhW4XnK76S6gyNiUPVg23P8LDwbnoHcIZnylk00chhC1DfGD9MnbzmNBgR+c6j8EjEA==} engines: {node: '>=14'} peerDependencies: '@opentelemetry/api': ^1.3.0 - '@opentelemetry/opentelemetry-browser-detector@0.53.0': - resolution: {integrity: sha512-SapAybNgJ8Gnxv+QQVHNExh25Zbbq2XGLBBbW1GdRargFhEeRiiJ+M6MtWbSq9atdcbtLiO6nNc9uBJ4MXxZWg==} - engines: {node: '>=14'} - peerDependencies: - '@opentelemetry/api': ^1.0.0 - - '@opentelemetry/otlp-exporter-base@0.53.0': - resolution: {integrity: sha512-UCWPreGQEhD6FjBaeDuXhiMf6kkBODF0ZQzrk/tuQcaVDJ+dDQ/xhJp192H9yWnKxVpEjFrSSLnpqmX4VwX+eA==} + '@opentelemetry/otlp-exporter-base@0.55.0': + resolution: {integrity: sha512-iHQI0Zzq3h1T6xUJTVFwmFl5Dt5y1es+fl4kM+k5T/3YvmVyeYkSiF+wHCg6oKrlUAJfk+t55kaAu3sYmt7ZYA==} engines: {node: '>=14'} peerDependencies: - '@opentelemetry/api': ^1.0.0 + '@opentelemetry/api': ^1.3.0 - '@opentelemetry/otlp-exporter-base@0.54.0': - resolution: {integrity: sha512-g+H7+QleVF/9lz4zhaR9Dt4VwApjqG5WWupy5CTMpWJfHB/nLxBbX73GBZDgdiNfh08nO3rNa6AS7fK8OhgF5g==} + '@opentelemetry/otlp-exporter-base@0.56.0': + resolution: {integrity: sha512-eURvv0fcmBE+KE1McUeRo+u0n18ZnUeSc7lDlW/dzlqFYasEbsztTK4v0Qf8C4vEY+aMTjPKUxBG0NX2Te3Pmw==} engines: {node: '>=14'} peerDependencies: '@opentelemetry/api': ^1.3.0 - '@opentelemetry/otlp-grpc-exporter-base@0.54.0': - resolution: {integrity: sha512-Yl2Dw0jlRWisEia9Hv/N8u2JLITCvzA6gAIKEvxpEu6nwHEftD2WhTJMIclkTtfmSW0rLmEEXymwmboG4xDN0Q==} + '@opentelemetry/otlp-grpc-exporter-base@0.56.0': + resolution: {integrity: sha512-QqM4si8Ew8CW5xVk4mYbfusJzMXyk6tkYA5SI0w/5NBxmiZZaYPwQQ2cu58XUH2IMPAsi71yLJVJQaWBBCta0A==} engines: {node: '>=14'} peerDependencies: '@opentelemetry/api': ^1.3.0 - '@opentelemetry/otlp-transformer@0.53.0': - resolution: {integrity: sha512-rM0sDA9HD8dluwuBxLetUmoqGJKSAbWenwD65KY9iZhUxdBHRLrIdrABfNDP7aiTjcgK8XFyTn5fhDz7N+W6DA==} + '@opentelemetry/otlp-transformer@0.55.0': + resolution: {integrity: sha512-kVqEfxtp6mSN2Dhpy0REo1ghP4PYhC1kMHQJ2qVlO99Pc+aigELjZDfg7/YKmL71gR6wVGIeJfiql/eXL7sQPA==} engines: {node: '>=14'} peerDependencies: '@opentelemetry/api': ^1.3.0 - '@opentelemetry/otlp-transformer@0.54.0': - resolution: {integrity: sha512-jRexIASQQzdK4AjfNIBfn94itAq4Q8EXR9d3b/OVbhd3kKQKvMr7GkxYDjbeTbY7hHCOLcLfJ3dpYQYGOe8qOQ==} + '@opentelemetry/otlp-transformer@0.56.0': + resolution: {integrity: sha512-kVkH/W2W7EpgWWpyU5VnnjIdSD7Y7FljQYObAQSKdRcejiwMj2glypZtUdfq1LTJcv4ht0jyTrw1D3CCxssNtQ==} engines: {node: '>=14'} peerDependencies: '@opentelemetry/api': ^1.3.0 - '@opentelemetry/propagation-utils@0.30.13': - resolution: {integrity: sha512-gE61ANH84XLOU2HwXeWw1b83exxdEaTY98HxTecmuJ1nSrBNaoM/tWt4u4+2MoCZUhdmP088+wbT5oUq1pF79Q==} + '@opentelemetry/propagation-utils@0.30.14': + resolution: {integrity: sha512-RsdKGFd0PYG5Aop9aq8khYbR8Oq+lYTQBX/9/pk7b+8+0WwdFqrvGDmRxpBAH9hgIvtUgETeshlYctwjo2l9SQ==} engines: {node: '>=14'} peerDependencies: '@opentelemetry/api': ^1.0.0 - '@opentelemetry/propagator-aws-xray@1.26.0': - resolution: {integrity: sha512-Sex+JyEZ/xX328TArBqQjh1NZSfNyw5NdASUIi9hnPsnMBMSBaDe7B9JRnXv0swz7niNyAnXa6MY7yOCV76EvA==} - engines: {node: '>=14'} - peerDependencies: - '@opentelemetry/api': '>=1.0.0 <1.10.0' - - '@opentelemetry/propagator-b3@1.27.0': - resolution: {integrity: sha512-pTsko3gnMioe3FeWcwTQR3omo5C35tYsKKwjgTCTVCgd3EOWL9BZrMfgLBmszrwXABDfUrlAEFN/0W0FfQGynQ==} + '@opentelemetry/propagator-b3@1.29.0': + resolution: {integrity: sha512-ktsNDlqhu+/IPGEJRMj81upg2JupUp+SwW3n1ZVZTnrDiYUiMUW41vhaziA7Q6UDhbZvZ58skDpQhe2ZgNIPvg==} engines: {node: '>=14'} peerDependencies: '@opentelemetry/api': '>=1.0.0 <1.10.0' - '@opentelemetry/propagator-jaeger@1.27.0': - resolution: {integrity: sha512-EI1bbK0wn0yIuKlc2Qv2LKBRw6LiUWevrjCF80fn/rlaB+7StAi8Y5s8DBqAYNpY7v1q86+NjU18v7hj2ejU3A==} + '@opentelemetry/propagator-jaeger@1.29.0': + resolution: {integrity: sha512-EXIEYmFgybnFMijVgqx1mq/diWwSQcd0JWVksytAVQEnAiaDvP45WuncEVQkFIAC0gVxa2+Xr8wL5pF5jCVKbg==} engines: {node: '>=14'} peerDependencies: '@opentelemetry/api': '>=1.0.0 <1.10.0' @@ -4267,122 +4950,104 @@ packages: resolution: {integrity: sha512-faYX1N0gpLhej/6nyp6bgRjzAKXn5GOEMYY7YhciSfCoITAktLUtQ36d24QEWNA1/WA1y6qQunCe0OhHRkVl9g==} engines: {node: '>=14'} - '@opentelemetry/resource-detector-alibaba-cloud@0.29.5': - resolution: {integrity: sha512-bCtNnKlx3vcxo/rTdpgat6RiP9hcqahdLN79IRQgSGpD/2iw7cmdaZo4bWQYQsf3jMU8p+08mQkbvDeSqt1TmA==} + '@opentelemetry/resource-detector-alibaba-cloud@0.29.6': + resolution: {integrity: sha512-BrwutS9Koh08jFhwencsc1t60qEUueMxN+YcN78LE+3r6JMkYgrQzk7C8rJe0nww8KpjZ6A2n7PW+C0FAr8oxg==} engines: {node: '>=14'} peerDependencies: '@opentelemetry/api': ^1.0.0 - '@opentelemetry/resource-detector-aws@1.8.0': - resolution: {integrity: sha512-f+tiNoebEvdinXs0pN0XJCNceeXT8I6l2yyKI6C5oRAirhCEcIWcJMxwY4kJyNKmoupcGCXVz7cQaZOhB3keiw==} + '@opentelemetry/resource-detector-aws@1.9.0': + resolution: {integrity: sha512-oah9Gek5rrpohjMhQYESnXMDw79wrfhOp0NhjMSjKY9EvNJuDurk/HU3TJ8r2xd/xpGZlcHRZcsJ+qR+tLiQ4g==} engines: {node: '>=14'} peerDependencies: '@opentelemetry/api': ^1.0.0 - '@opentelemetry/resource-detector-azure@0.2.12': - resolution: {integrity: sha512-iIarQu6MiCjEEp8dOzmBvCSlRITPFTinFB2oNKAjU6xhx8d7eUcjNOKhBGQTvuCriZrxrEvDaEEY9NfrPQ6uYQ==} + '@opentelemetry/resource-detector-azure@0.4.0': + resolution: {integrity: sha512-Ix3DwsbUWyLbBCZ1yqT3hJxc5wFPaJ6dvsIgJA/nmjScwscRCWQqTWXywY4+Q+tytLPnuAKZWbBhxcNvNlcn5Q==} engines: {node: '>=14'} peerDependencies: '@opentelemetry/api': ^1.0.0 - '@opentelemetry/resource-detector-container@0.5.1': - resolution: {integrity: sha512-RMzfpH43IcLFeXM35WIBwwruSwGcWM+K01+CPibQKOZxNVZYRHo7/rdjT+QGCXkcp2LodC6vFFylcZChVao59Q==} + '@opentelemetry/resource-detector-container@0.5.2': + resolution: {integrity: sha512-P06PiIC3kDa/UTLupClJvhLeub84x3eNkDth2yXaMP3UZe/BRGv+R6eeUbMN/MvZhARkpSFnoWpXBHpnq/JiYQ==} engines: {node: '>=14'} peerDependencies: '@opentelemetry/api': ^1.0.0 - '@opentelemetry/resource-detector-gcp@0.29.13': - resolution: {integrity: sha512-vdotx+l3Q+89PeyXMgKEGnZ/CwzwMtuMi/ddgD9/5tKZ08DfDGB2Npz9m2oXPHRCjc4Ro6ifMqFlRyzIvgOjhg==} + '@opentelemetry/resource-detector-gcp@0.31.0': + resolution: {integrity: sha512-KNd2Ab3hc0PsBVtWMie11AbQ7i1KXNPYlgTsyGPCHBed6KARVfPekfjWbPEbTXwart4la98abxL0sJLsfgyJSA==} engines: {node: '>=14'} peerDependencies: '@opentelemetry/api': ^1.0.0 - '@opentelemetry/resources@1.26.0': - resolution: {integrity: sha512-CPNYchBE7MBecCSVy0HKpUISEeJOniWqcHaAHpmasZ3j9o6V3AyBzhRc90jdmemq0HOxDr6ylhUbDhBqqPpeNw==} - engines: {node: '>=14'} - peerDependencies: - '@opentelemetry/api': '>=1.0.0 <1.10.0' - - '@opentelemetry/resources@1.27.0': - resolution: {integrity: sha512-jOwt2VJ/lUD5BLc+PMNymDrUCpm5PKi1E9oSVYAvz01U/VdndGmrtV3DU1pG4AwlYhJRHbHfOUIlpBeXCPw6QQ==} + '@opentelemetry/resources@1.28.0': + resolution: {integrity: sha512-cIyXSVJjGeTICENN40YSvLDAq4Y2502hGK3iN7tfdynQLKWb3XWZQEkPc+eSx47kiy11YeFAlYkEfXwR1w8kfw==} engines: {node: '>=14'} peerDependencies: '@opentelemetry/api': '>=1.0.0 <1.10.0' - '@opentelemetry/resources@1.28.0': - resolution: {integrity: sha512-cIyXSVJjGeTICENN40YSvLDAq4Y2502hGK3iN7tfdynQLKWb3XWZQEkPc+eSx47kiy11YeFAlYkEfXwR1w8kfw==} + '@opentelemetry/resources@1.29.0': + resolution: {integrity: sha512-s7mLXuHZE7RQr1wwweGcaRp3Q4UJJ0wazeGlc/N5/XSe6UyXfsh1UQGMADYeg7YwD+cEdMtU1yJAUXdnFzYzyQ==} engines: {node: '>=14'} peerDependencies: '@opentelemetry/api': '>=1.0.0 <1.10.0' - '@opentelemetry/sdk-logs@0.53.0': - resolution: {integrity: sha512-dhSisnEgIj/vJZXZV6f6KcTnyLDx/VuQ6l3ejuZpMpPlh9S1qMHiZU9NMmOkVkwwHkMy3G6mEBwdP23vUZVr4g==} + '@opentelemetry/sdk-logs@0.55.0': + resolution: {integrity: sha512-TSx+Yg/d48uWW6HtjS1AD5x6WPfLhDWLl/WxC7I2fMevaiBuKCuraxTB8MDXieCNnBI24bw9ytyXrDCswFfWgA==} engines: {node: '>=14'} peerDependencies: '@opentelemetry/api': '>=1.4.0 <1.10.0' - '@opentelemetry/sdk-logs@0.54.0': - resolution: {integrity: sha512-HeWvOPiWhEw6lWvg+lCIi1WhJnIPbI4/OFZgHq9tKfpwF3LX6/kk3+GR8sGUGAEZfbjPElkkngzvd2s03zbD7Q==} + '@opentelemetry/sdk-logs@0.56.0': + resolution: {integrity: sha512-OS0WPBJF++R/cSl+terUjQH5PebloidB1Jbbecgg2rnCmQbTST9xsRes23bLfDQVRvmegmHqDh884h0aRdJyLw==} engines: {node: '>=14'} peerDependencies: '@opentelemetry/api': '>=1.4.0 <1.10.0' - '@opentelemetry/sdk-metrics@1.26.0': - resolution: {integrity: sha512-0SvDXmou/JjzSDOjUmetAAvcKQW6ZrvosU0rkbDGpXvvZN+pQF6JbK/Kd4hNdK4q/22yeruqvukXEJyySTzyTQ==} + '@opentelemetry/sdk-metrics@1.28.0': + resolution: {integrity: sha512-43tqMK/0BcKTyOvm15/WQ3HLr0Vu/ucAl/D84NO7iSlv6O4eOprxSHa3sUtmYkaZWHqdDJV0AHVz/R6u4JALVQ==} engines: {node: '>=14'} peerDependencies: '@opentelemetry/api': '>=1.3.0 <1.10.0' - '@opentelemetry/sdk-metrics@1.27.0': - resolution: {integrity: sha512-JzWgzlutoXCydhHWIbLg+r76m+m3ncqvkCcsswXAQ4gqKS+LOHKhq+t6fx1zNytvLuaOUBur7EvWxECc4jPQKg==} + '@opentelemetry/sdk-metrics@1.29.0': + resolution: {integrity: sha512-MkVtuzDjXZaUJSuJlHn6BSXjcQlMvHcsDV7LjY4P6AJeffMa4+kIGDjzsCf6DkAh6Vqlwag5EWEam3KZOX5Drw==} engines: {node: '>=14'} peerDependencies: '@opentelemetry/api': '>=1.3.0 <1.10.0' - '@opentelemetry/sdk-node@0.54.0': - resolution: {integrity: sha512-F0mdwb4WPFJNypcmkxQnj3sIfh/73zkBgYePXMK8ghsBwYw4+PgM3/85WT6NzNUeOvWtiXacx5CFft2o7rGW3w==} + '@opentelemetry/sdk-node@0.56.0': + resolution: {integrity: sha512-FOY7tWboBBxqftLNHPJFmDXo9fRoPd2PlzfEvSd6058BJM9gY4pWCg8lbVlu03aBrQjcfCTAhXk/tz1Yqd/m6g==} engines: {node: '>=14'} peerDependencies: '@opentelemetry/api': '>=1.3.0 <1.10.0' - '@opentelemetry/sdk-trace-base@1.26.0': - resolution: {integrity: sha512-olWQldtvbK4v22ymrKLbIcBi9L2SpMO84sCPY54IVsJhP9fRsxJT194C/AVaAuJzLE30EdhhM1VmvVYR7az+cw==} - engines: {node: '>=14'} - peerDependencies: - '@opentelemetry/api': '>=1.0.0 <1.10.0' - - '@opentelemetry/sdk-trace-base@1.27.0': - resolution: {integrity: sha512-btz6XTQzwsyJjombpeqCX6LhiMQYpzt2pIYNPnw0IPO/3AhT6yjnf8Mnv3ZC2A4eRYOjqrg+bfaXg9XHDRJDWQ==} - engines: {node: '>=14'} - peerDependencies: - '@opentelemetry/api': '>=1.0.0 <1.10.0' - '@opentelemetry/sdk-trace-base@1.28.0': resolution: {integrity: sha512-ceUVWuCpIao7Y5xE02Xs3nQi0tOGmMea17ecBdwtCvdo9ekmO+ijc9RFDgfifMl7XCBf41zne/1POM3LqSTZDA==} engines: {node: '>=14'} peerDependencies: '@opentelemetry/api': '>=1.0.0 <1.10.0' - '@opentelemetry/sdk-trace-node@1.27.0': - resolution: {integrity: sha512-dWZp/dVGdUEfRBjBq2BgNuBlFqHCxyyMc8FsN0NX15X07mxSUO0SZRLyK/fdAVrde8nqFI/FEdMH4rgU9fqJfQ==} + '@opentelemetry/sdk-trace-base@1.29.0': + resolution: {integrity: sha512-hEOpAYLKXF3wGJpXOtWsxEtqBgde0SCv+w+jvr3/UusR4ll3QrENEGnSl1WDCyRrpqOQ5NCNOvZch9UFVa7MnQ==} engines: {node: '>=14'} peerDependencies: '@opentelemetry/api': '>=1.0.0 <1.10.0' - '@opentelemetry/sdk-trace-web@1.26.0': - resolution: {integrity: sha512-sxeKPcG/gUyxZ8iB8X1MI8/grfSCGgo1n2kxOE73zjVaO9yW/7JuVC3gqUaWRjtZ6VD/V3lo2/ZSwMlm6n2mdg==} + '@opentelemetry/sdk-trace-node@1.29.0': + resolution: {integrity: sha512-ZpGYt+VnMu6O0SRKzhuIivr7qJm3GpWnTCMuJspu4kt3QWIpIenwixo5Vvjuu3R4h2Onl/8dtqAiPIs92xd5ww==} engines: {node: '>=14'} peerDependencies: '@opentelemetry/api': '>=1.0.0 <1.10.0' - '@opentelemetry/sdk-trace-web@1.27.0': - resolution: {integrity: sha512-ORZfG8Sm5IkJeI+P8MyW8v4m5OcmjEtD7VsjBghv5sDKH3f5p2mQpEEoJWlCr5GiW50Y1MaI2R4uFGIsxmDE9A==} + '@opentelemetry/sdk-trace-web@1.28.0': + resolution: {integrity: sha512-/QOIrJc/A/caKbA9voLua4isf///cjQKB6gomEzX2fL18TBqZhIkm9k2DpjlbtrQoYCJDZ9x7Phrec22aQGpQw==} engines: {node: '>=14'} peerDependencies: '@opentelemetry/api': '>=1.0.0 <1.10.0' - - '@opentelemetry/sdk-trace-web@1.28.0': - resolution: {integrity: sha512-/QOIrJc/A/caKbA9voLua4isf///cjQKB6gomEzX2fL18TBqZhIkm9k2DpjlbtrQoYCJDZ9x7Phrec22aQGpQw==} + + '@opentelemetry/sdk-trace-web@1.29.0': + resolution: {integrity: sha512-PQVtJ76dsZ7HYBSlgZGIuxFtnKXxNbyHzMnRUxww7V2/6V/qtQN+cvNkqwPVffrUfbvClOnejo08NezAE1y+6g==} engines: {node: '>=14'} peerDependencies: '@opentelemetry/api': '>=1.0.0 <1.10.0' @@ -4391,6 +5056,10 @@ packages: resolution: {integrity: sha512-sAay1RrB+ONOem0OZanAR1ZI/k7yDpnOQSQmTMuGImUQb2y8EbSaCJ94FQluM74xoU03vlb2d2U90hZluL6nQg==} engines: {node: '>=14'} + '@opentelemetry/semantic-conventions@1.28.0': + resolution: {integrity: sha512-lp4qAiMTD4sNWW4DbKLBkfiMZ4jbAboJIGOQr5DvciMRI494OapieI9qiODpOt0XBr1LjIDy1xAGAnVs5supTA==} + engines: {node: '>=14'} + '@opentelemetry/sql-common@0.40.1': resolution: {integrity: sha512-nSDlnHSqzC3pXn/wZEZVLuAuJ1MYMXPBwtv2qAbCa3847SaHItdE7SzUq/Jtb0KZmh1zfAbNi3AAMjztTT4Ugg==} engines: {node: '>=14'} @@ -4523,12 +5192,12 @@ packages: resolution: {integrity: sha512-htyl8TWnKL7K/ESFa1oW2UB5lVDxuF5DpM7tBi6Hu2LNL3mWkIzNLG6N4zoCUP1lCKNxWy/3iu8mS8MvToGd6w==} engines: {node: '>=12.22.0'} - '@pnpm/constants@9.0.0': - resolution: {integrity: sha512-cyZ12A7j1BzeQ9nr5HBdlSLxN1VWnCG/1xjdgDUL/WDlgmVa3k6TI2CktTHjR5w/rWbKudpIaMAmJJk9w+cTRQ==} + '@pnpm/constants@10.0.0': + resolution: {integrity: sha512-dxIXcW1F1dxIGfye2JXE7Q8WVwYB0axVzdBOkvE1WKIVR4xjB8e6k/Dkjo7DpbyfW5Vu2k21p6dyM32YLSAWoQ==} engines: {node: '>=18.12'} - '@pnpm/error@6.0.2': - resolution: {integrity: sha512-3/wWJYjUyO9ToLaZpBASYIBg87C4DBZ8yfzrt0cSCTbRFDBUNdH0dzwfVKEqhR7A9tpRMyeoRIzPUVxWc+U+RQ==} + '@pnpm/error@6.0.3': + resolution: {integrity: sha512-OIYhG7HQh4zUFh2s8/6bp7glVRjNxms7bpzXVOLV7pyRa+rSYFmqJ8zDsBC64k58nuaxS85Ip+SCDjFxsFGeOg==} engines: {node: '>=18.12'} '@pnpm/network.ca-file@1.0.2': @@ -4539,8 +5208,8 @@ packages: resolution: {integrity: sha512-c83qWb22rNRuB0UaVCI0uRPNRr8Z0FWnEIvT47jiHAmOIUHbBOg5XvV7pM5x+rKn9HRpjxquDbXYSXr3fAKFcw==} engines: {node: '>=12'} - '@pnpm/workspace.read-manifest@2.2.1': - resolution: {integrity: sha512-HdS8Q0nhOO5kBqDYbUFFRv6Zp2TMlaf7Zne8nmrp7xL3k2gi2UU16kmmV+cY5dmINsKslulHDHJIC59J7I+xZg==} + '@pnpm/workspace.read-manifest@2.2.2': + resolution: {integrity: sha512-ryiFUKQfu5sYAtX/jsYRHsTHoB6p6rNBZQkXODlmMczcGeIE78cuz1xf5+xS6Dq2CayiqImuSmCiWbT5uT90Nw==} engines: {node: '>=18.12'} '@protobufjs/aspromise@1.1.2': @@ -4573,155 +5242,183 @@ packages: '@protobufjs/utf8@1.1.0': resolution: {integrity: sha512-Vvn3zZrhQZkkBE8LSuW3em98c0FwgO4nxzv6OdSxPKJIEKY2bGbHn+mhGIPerzI4twdxaP8/0+06HBpwf345Lw==} - '@react-aria/i18n@3.12.3': - resolution: {integrity: sha512-0Tp/4JwnCVNKDfuknPF+/xf3/woOc8gUjTU2nCjO3mCVb4FU7KFtjxQ2rrx+6hpIVG6g+N9qfMjRa/ggVH0CJg==} + '@react-aria/i18n@3.12.4': + resolution: {integrity: sha512-j9+UL3q0Ls8MhXV9gtnKlyozq4aM95YywXqnmJtzT1rYeBx7w28hooqrWkCYLfqr4OIryv1KUnPiCSLwC2OC7w==} peerDependencies: - react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0 + react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 - '@react-aria/interactions@3.22.4': - resolution: {integrity: sha512-E0vsgtpItmknq/MJELqYJwib+YN18Qag8nroqwjk1qOnBa9ROIkUhWJerLi1qs5diXq9LHKehZDXRlwPvdEFww==} + '@react-aria/interactions@3.22.5': + resolution: {integrity: sha512-kMwiAD9E0TQp+XNnOs13yVJghiy8ET8L0cbkeuTgNI96sOAp/63EJ1FSrDf17iD8sdjt41LafwX/dKXW9nCcLQ==} peerDependencies: - react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0 + react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 - '@react-aria/landmark@3.0.0-beta.16': - resolution: {integrity: sha512-qr6jAu5KyI0R5IdAvRd2DBaXO1+7A148gO9pZutdhm2uvC8nV+fXrQu73C7dXcpvMyp5IFJOTwcRCHnsG1Fk9w==} + '@react-aria/landmark@3.0.0-beta.17': + resolution: {integrity: sha512-wXP5X4T00i55MFpFmOvS+hQYoktrdD1tgGCEImNxFACqliE68sg5l5/cLZ4rwTl1ek/rzZpq16rrUJPxCiqJxw==} peerDependencies: - react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0 + react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 - '@react-aria/ssr@3.9.6': - resolution: {integrity: sha512-iLo82l82ilMiVGy342SELjshuWottlb5+VefO3jOQqQRNYnJBFpUSadswDPbRimSgJUZuFwIEYs6AabkP038fA==} + '@react-aria/ssr@3.9.7': + resolution: {integrity: sha512-GQygZaGlmYjmYM+tiNBA5C6acmiDWF52Nqd40bBp0Znk4M4hP+LTmI0lpI1BuKMw45T8RIhrAsICIfKwZvi2Gg==} engines: {node: '>= 12'} peerDependencies: - react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0 + react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 - '@react-aria/toast@3.0.0-beta.17': - resolution: {integrity: sha512-we/Bm/OuKSteZNQGmXpWzclfhZPFnfm9xXLDlRwKQhOGg9Yn2aAsvk8yj0HDRzYZ/jNevqwl/RJeBiVB22wSWg==} + '@react-aria/toast@3.0.0-beta.18': + resolution: {integrity: sha512-zJp0txv7y3gaGwSaBxTaOByivYcz55G7O+JBOUs7fJbhzLiGg5jDHaUAzEkqVx6/KTcr2ojVDZIuRSkSaUDAwg==} peerDependencies: - react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0 + react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 - '@react-aria/utils@3.25.3': - resolution: {integrity: sha512-PR5H/2vaD8fSq0H/UB9inNbc8KDcVmW6fYAfSWkkn+OAdhTTMVKqXXrZuZBWyFfSD5Ze7VN6acr4hrOQm2bmrA==} + '@react-aria/utils@3.26.0': + resolution: {integrity: sha512-LkZouGSjjQ0rEqo4XJosS4L3YC/zzQkfRM3KoqK6fUOmUJ9t0jQ09WjiF+uOoG9u+p30AVg3TrZRUWmoTS+koQ==} peerDependencies: - react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0 + react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 - '@react-stately/toast@3.0.0-beta.6': - resolution: {integrity: sha512-ffvWaigbyNd7QfubTs2cKNRsFywBcbYA/WaSerKM2iw0ek9F+C7zb+9F7Ms3mdM4BGTh0JqmuMQTRXTI0sAxBw==} + '@react-stately/toast@3.0.0-beta.7': + resolution: {integrity: sha512-+KDkaOS5Y4ApOfiP0HHij4ySwAd1VM9/pI4rVTyHrzkp0R2Q0eBxZ74MpWMpVfJa2lSjb/qEm60tqJ3A+4R/cQ==} peerDependencies: - react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0 + react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 - '@react-stately/utils@3.10.4': - resolution: {integrity: sha512-gBEQEIMRh5f60KCm7QKQ2WfvhB2gLUr9b72sqUdIZ2EG+xuPgaIlCBeSicvjmjBvYZwOjoOEnmIkcx2GHp/HWw==} + '@react-stately/utils@3.10.5': + resolution: {integrity: sha512-iMQSGcpaecghDIh3mZEpZfoFH3ExBwTtuBEcvZ2XnGzCgQjeYXcMdIUwAfVQLXFTdHUHGF6Gu6/dFrYsCzySBQ==} peerDependencies: - react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0 + react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 - '@react-types/button@3.10.0': - resolution: {integrity: sha512-rAyU+N9VaHLBdZop4zasn8IDwf9I5Q1EzHUKMtzIFf5aUlMUW+K460zI/l8UESWRSWAXK9/WPSXGxfcoCEjvAA==} + '@react-types/button@3.10.1': + resolution: {integrity: sha512-XTtap8o04+4QjPNAshFWOOAusUTxQlBjU2ai0BTVLShQEjHhRVDBIWsI2B2FKJ4KXT6AZ25llaxhNrreWGonmA==} peerDependencies: - react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0 + react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 - '@react-types/shared@3.25.0': - resolution: {integrity: sha512-OZSyhzU6vTdW3eV/mz5i6hQwQUhkRs7xwY2d1aqPvTdMe0+2cY7Fwp45PAiwYLEj73i9ro2FxF9qC4DvHGSCgQ==} + '@react-types/shared@3.26.0': + resolution: {integrity: sha512-6FuPqvhmjjlpEDLTiYx29IJCbCNWPlsyO+ZUmCUXzhUv2ttShOXfw8CmeHWHftT/b2KweAWuzqSlfeXPR76jpw==} peerDependencies: - react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0 + react: ^16.8.0 || ^17.0.0-rc.1 || ^18.0.0 || ^19.0.0-rc.1 '@remix-run/router@1.20.0': resolution: {integrity: sha512-mUnk8rPJBI9loFDZ+YzPGdeniYK+FTmRD1TMCz7ev2SNIozyKKpnGgsxO34u6Z4z/t0ITuu7voi/AshfsGsgFg==} engines: {node: '>=14.0.0'} - '@rollup/pluginutils@4.2.1': - resolution: {integrity: sha512-iKnFXr7NkdZAIHiIWE+BX5ULi/ucVFYWD6TbAV+rZctiRTY2PL6tsIKhoIOaoskiWAkgu+VsbXgUVDNLHf+InQ==} - engines: {node: '>= 8.0.0'} + '@rollup/pluginutils@5.1.4': + resolution: {integrity: sha512-USm05zrsFxYLPdWWq+K3STlWiT/3ELn3RcV5hJMghpeAIhxfsUIg6mt12CBJBInWMV4VneoV7SfGv8xIwo2qNQ==} + engines: {node: '>=14.0.0'} + peerDependencies: + rollup: ^1.20.0||^2.0.0||^3.0.0||^4.0.0 + peerDependenciesMeta: + rollup: + optional: true - '@rollup/rollup-android-arm-eabi@4.27.3': - resolution: {integrity: sha512-EzxVSkIvCFxUd4Mgm4xR9YXrcp976qVaHnqom/Tgm+vU79k4vV4eYTjmRvGfeoW8m9LVcsAy/lGjcgVegKEhLQ==} - cpu: [arm] - os: [android] + '@rsbuild/core@1.1.10': + resolution: {integrity: sha512-G0aVnoMSIZ4PNcW07tKtsOSoID9M03EAnCThRmUWMj1RXDqhbGje6AFBwGun9uz63bdxYEbEp9C8wH7dGi8aYQ==} + engines: {node: '>=16.7.0'} + hasBin: true - '@rollup/rollup-android-arm64@4.27.3': - resolution: {integrity: sha512-LJc5pDf1wjlt9o/Giaw9Ofl+k/vLUaYsE2zeQGH85giX2F+wn/Cg8b3c5CDP3qmVmeO5NzwVUzQQxwZvC2eQKw==} - cpu: [arm64] - os: [android] + '@rsbuild/plugin-basic-ssl@1.1.1': + resolution: {integrity: sha512-q4u7H8yh/S/DHwxG85bWbGXFiVV9RMDJDupOBHJVPtevU9mLCB4n5Qbrxu/l8CCdmZcBlvfWGjkDA/YoY61dig==} + peerDependencies: + '@rsbuild/core': 0.x || 1.x || ^1.0.1-beta.0 + peerDependenciesMeta: + '@rsbuild/core': + optional: true - '@rollup/rollup-darwin-arm64@4.27.3': - resolution: {integrity: sha512-OuRysZ1Mt7wpWJ+aYKblVbJWtVn3Cy52h8nLuNSzTqSesYw1EuN6wKp5NW/4eSre3mp12gqFRXOKTcN3AI3LqA==} - cpu: [arm64] - os: [darwin] + '@rsbuild/plugin-image-compress@1.1.0': + resolution: {integrity: sha512-ZyK3QlcuQmqd8h3vGCX0+iEo1lBCDJEbJjcbZkRR6bs4IR2YNPP/rRo8eCPWwRS5/GBkTkwZhznfyjraDRtJpw==} + peerDependencies: + '@rsbuild/core': 1.x + peerDependenciesMeta: + '@rsbuild/core': + optional: true - '@rollup/rollup-darwin-x64@4.27.3': - resolution: {integrity: sha512-xW//zjJMlJs2sOrCmXdB4d0uiilZsOdlGQIC/jjmMWT47lkLLoB1nsNhPUcnoqyi5YR6I4h+FjBpILxbEy8JRg==} - cpu: [x64] - os: [darwin] + '@rsbuild/plugin-react@1.1.0': + resolution: {integrity: sha512-uqdRoV2V91G1XIA14dAmxqYTlTDVf0ktpE7TgwG29oQ2j+DerF1kh29WPHK9HvGE34JTfaBrsme2Zmb6bGD0cw==} + peerDependencies: + '@rsbuild/core': 1.x - '@rollup/rollup-freebsd-arm64@4.27.3': - resolution: {integrity: sha512-58E0tIcwZ+12nK1WiLzHOD8I0d0kdrY/+o7yFVPRHuVGY3twBwzwDdTIBGRxLmyjciMYl1B/U515GJy+yn46qw==} - cpu: [arm64] - os: [freebsd] + '@rsbuild/plugin-svgr@1.0.6': + resolution: {integrity: sha512-znLFk2fumNObMntkjrpZhO3guXmaQZbqv0JjhqBVng63bNdsJAmfZGXX5He8Avp4VDlv6EJI6BC5SIEs8XspTg==} + peerDependencies: + '@rsbuild/core': 1.x - '@rollup/rollup-freebsd-x64@4.27.3': - resolution: {integrity: sha512-78fohrpcVwTLxg1ZzBMlwEimoAJmY6B+5TsyAZ3Vok7YabRBUvjYTsRXPTjGEvv/mfgVBepbW28OlMEz4w8wGA==} - cpu: [x64] - os: [freebsd] + '@rslib/core@0.1.4': + resolution: {integrity: sha512-JyjSDxLTQmYg7UCASPOdjIY8VzNLsV2XR/liwdVf81nhendm2BuGB30wn76WEK0wxTkBZ1mPufwRCal0NMsjZw==} + engines: {node: '>=16.0.0'} + hasBin: true + peerDependencies: + '@microsoft/api-extractor': ^7 + typescript: ^5 + peerDependenciesMeta: + '@microsoft/api-extractor': + optional: true + typescript: + optional: true - '@rollup/rollup-linux-arm-gnueabihf@4.27.3': - resolution: {integrity: sha512-h2Ay79YFXyQi+QZKo3ISZDyKaVD7uUvukEHTOft7kh00WF9mxAaxZsNs3o/eukbeKuH35jBvQqrT61fzKfAB/Q==} - cpu: [arm] - os: [linux] + '@rspack/binding-darwin-arm64@1.1.6': + resolution: {integrity: sha512-x9dxm2yyiMuL1FBwvWNNMs2/mEUJmRoSRgYb8pblR7HDaTRORrjBFCqhaYlGyAqtQaeUy7o2VAQlE0BavIiFYA==} + cpu: [arm64] + os: [darwin] - '@rollup/rollup-linux-arm-musleabihf@4.27.3': - resolution: {integrity: sha512-Sv2GWmrJfRY57urktVLQ0VKZjNZGogVtASAgosDZ1aUB+ykPxSi3X1nWORL5Jk0sTIIwQiPH7iE3BMi9zGWfkg==} - cpu: [arm] - os: [linux] + '@rspack/binding-darwin-x64@1.1.6': + resolution: {integrity: sha512-o0seilveftGiDjy3VPxug20HmAgYyQbNEuagR3i93/t/PT/eWXHnik+C1jjwqcivZL1Zllqvy4tbZw393aROEQ==} + cpu: [x64] + os: [darwin] - '@rollup/rollup-linux-arm64-gnu@4.27.3': - resolution: {integrity: sha512-FPoJBLsPW2bDNWjSrwNuTPUt30VnfM8GPGRoLCYKZpPx0xiIEdFip3dH6CqgoT0RnoGXptaNziM0WlKgBc+OWQ==} + '@rspack/binding-linux-arm64-gnu@1.1.6': + resolution: {integrity: sha512-4atnoknJx/c3KaQElsMIxHMpPf2jcRRdWsH/SdqJIRSrkWWakMK9Yv4TFwH680I4HDTMf1XLboMVScHzW8e+Mg==} cpu: [arm64] os: [linux] - '@rollup/rollup-linux-arm64-musl@4.27.3': - resolution: {integrity: sha512-TKxiOvBorYq4sUpA0JT+Fkh+l+G9DScnG5Dqx7wiiqVMiRSkzTclP35pE6eQQYjP4Gc8yEkJGea6rz4qyWhp3g==} + '@rspack/binding-linux-arm64-musl@1.1.6': + resolution: {integrity: sha512-7QMtwUtgFpt3/Y3/X18fSyN+kk4H8ZnZ8tDzQskVWc/j2AQYShZq56XQYqrhClzwujcCVAHauIQ2eiuJ2ASGag==} cpu: [arm64] os: [linux] - '@rollup/rollup-linux-powerpc64le-gnu@4.27.3': - resolution: {integrity: sha512-v2M/mPvVUKVOKITa0oCFksnQQ/TqGrT+yD0184/cWHIu0LoIuYHwox0Pm3ccXEz8cEQDLk6FPKd1CCm+PlsISw==} - cpu: [ppc64] - os: [linux] - - '@rollup/rollup-linux-riscv64-gnu@4.27.3': - resolution: {integrity: sha512-LdrI4Yocb1a/tFVkzmOE5WyYRgEBOyEhWYJe4gsDWDiwnjYKjNs7PS6SGlTDB7maOHF4kxevsuNBl2iOcj3b4A==} - cpu: [riscv64] - os: [linux] - - '@rollup/rollup-linux-s390x-gnu@4.27.3': - resolution: {integrity: sha512-d4wVu6SXij/jyiwPvI6C4KxdGzuZOvJ6y9VfrcleHTwo68fl8vZC5ZYHsCVPUi4tndCfMlFniWgwonQ5CUpQcA==} - cpu: [s390x] - os: [linux] - - '@rollup/rollup-linux-x64-gnu@4.27.3': - resolution: {integrity: sha512-/6bn6pp1fsCGEY5n3yajmzZQAh+mW4QPItbiWxs69zskBzJuheb3tNynEjL+mKOsUSFK11X4LYF2BwwXnzWleA==} + '@rspack/binding-linux-x64-gnu@1.1.6': + resolution: {integrity: sha512-MTjDEfPn4TwHoqs5d5Fck06kmXiTHZctGIcRVfrpg0RK0r1NLEHN+oosavRZ9c9H70f34+NmcHk+/qvV4c8lWg==} cpu: [x64] os: [linux] - '@rollup/rollup-linux-x64-musl@4.27.3': - resolution: {integrity: sha512-nBXOfJds8OzUT1qUreT/en3eyOXd2EH5b0wr2bVB5999qHdGKkzGzIyKYaKj02lXk6wpN71ltLIaQpu58YFBoQ==} + '@rspack/binding-linux-x64-musl@1.1.6': + resolution: {integrity: sha512-LqDw7PTVr/4ZuGA0izgDQfamfr72USFHltR1Qhy2YVC3JmDmhG/pQi13LHcOLVaGH1xoeyCmEPNJpVizzDxSjg==} cpu: [x64] os: [linux] - '@rollup/rollup-win32-arm64-msvc@4.27.3': - resolution: {integrity: sha512-ogfbEVQgIZOz5WPWXF2HVb6En+kWzScuxJo/WdQTqEgeyGkaa2ui5sQav9Zkr7bnNCLK48uxmmK0TySm22eiuw==} + '@rspack/binding-win32-arm64-msvc@1.1.6': + resolution: {integrity: sha512-RHApLM93YN0WdHpS35u2cm7VCqZ8Yg3CrNRL16VJtyT9e6MBqeScoe4XIgIWKPm7edFyedYAjLX0wQOApwfjkg==} cpu: [arm64] os: [win32] - '@rollup/rollup-win32-ia32-msvc@4.27.3': - resolution: {integrity: sha512-ecE36ZBMLINqiTtSNQ1vzWc5pXLQHlf/oqGp/bSbi7iedcjcNb6QbCBNG73Euyy2C+l/fn8qKWEwxr+0SSfs3w==} + '@rspack/binding-win32-ia32-msvc@1.1.6': + resolution: {integrity: sha512-Y6lx4q0eJawRfMPBo/AclTJAPTZ325DSPFBQJB3TnWh9Z2X7P7pQcYc8PHDmfDuYRIdg5WRsQRvVxihSvF7v8w==} cpu: [ia32] os: [win32] - '@rollup/rollup-win32-x64-msvc@4.27.3': - resolution: {integrity: sha512-vliZLrDmYKyaUoMzEbMTg2JkerfBjn03KmAw9CykO0Zzkzoyd7o3iZNam/TpyWNjNT+Cz2iO3P9Smv2wgrR+Eg==} + '@rspack/binding-win32-x64-msvc@1.1.6': + resolution: {integrity: sha512-UuCsfhC/yNuU7xLASOxNXcmsXi2ZvBX14GkxvcdChw6q7IIGNYUKXo1zgR8C1PE/6qDSxmLxbRMS+71d0H3HQg==} cpu: [x64] os: [win32] + '@rspack/binding@1.1.6': + resolution: {integrity: sha512-vfeBEgGOYVwqj5cQjGyvdfrr/BEihAHlyIsobL98FZjTF0uig+bj2yJUH5Ib5F0BpIUKVG3Pw0IjlUBqcVpZsQ==} + + '@rspack/core@1.1.6': + resolution: {integrity: sha512-q0VLphOF5VW2FEG7Vbdq3Ke4I74FbELE/8xmKghSalFtULLZ44SoSz8lyotfMim9GXIRFhDokAaH8WICmPxG+g==} + engines: {node: '>=16.0.0'} + peerDependencies: + '@swc/helpers': '>=0.5.1' + peerDependenciesMeta: + '@swc/helpers': + optional: true + + '@rspack/lite-tapable@1.0.1': + resolution: {integrity: sha512-VynGOEsVw2s8TAlLf/uESfrgfrq2+rcXB1muPJYBWbsm1Oa6r5qVQhjA5ggM6z/coYPrsVMgovl3Ff7Q7OCp1w==} + engines: {node: '>=16.0.0'} + + '@rspack/plugin-react-refresh@1.0.1': + resolution: {integrity: sha512-KSBc3bsr3mrAPViv7w9MpE9KEWm6q87EyRXyHlRfJ9PpQ56NbX9KZ7AXo7jPeECb0q5sfpM2PSEf+syBiMgLSw==} + peerDependencies: + react-refresh: '>=0.10.0 <1.0.0' + peerDependenciesMeta: + react-refresh: + optional: true + '@rtsao/scc@1.1.0': resolution: {integrity: sha512-zt6OdqaDoOnJ1ZYsCYGt9YmWzDXl4vQdKTyJev62gFhRGKdx7mcT54V9KIjg+d2wi9EXsPvAPKe7i7WjfVWB8g==} @@ -4732,6 +5429,10 @@ packages: resolution: {integrity: sha512-TV7t8GKYaJWsn00tFDqBw8+Uqmr8A0fRU1tvTQhyZzGv0sJCGRQL3JGMI3ucuKo3XIZdUP+Lx7/gh2t3lewy7g==} engines: {node: '>=14.16'} + '@sindresorhus/merge-streams@2.3.0': + resolution: {integrity: sha512-LtoMMhxAlorcGhmFYI+LhPgbPZCkgP6ra1YL604EeF6U98pLlQ3iWIGMdWSC+vWmPBWBNgmDBAhnAobLROJmwg==} + engines: {node: '>=18'} + '@sindresorhus/slugify@2.2.1': resolution: {integrity: sha512-MkngSCRZ8JdSOCHRaYd+D01XhvU3Hjy6MGl06zhOk614hp9EOAp5gIkBeQg7wtmxpitU6eAL4kdiRMcJa2dlrw==} engines: {node: '>=12'} @@ -4751,8 +5452,14 @@ packages: engines: {node: '>=8.10'} hasBin: true - '@storybook/csf@0.0.1': - resolution: {integrity: sha512-USTLkZze5gkel8MYCujSRBVIrUQ3YPBrLOx7GNk/0wttvVtlzWXAq9eLbQ4p/NicGxP+3T7KPEMVV//g+yubpw==} + '@storybook/csf@0.1.12': + resolution: {integrity: sha512-9/exVhabisyIVL0VxTCxo01Tdm8wefIXKXfltAPTSr8cbLn5JAxGQ6QV3mjdecLGEOucfoVhAKtJfVHxEK1iqw==} + + '@stylistic/eslint-plugin-ts@2.12.1': + resolution: {integrity: sha512-Xx1NIioeW6LLlOfq5L/dLSrUXvi6q80UXDNbn/rXjKCzFT4a8wKwtp1q25kssdr1JEXI9a6tOHwFsh4Em+MoGg==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + peerDependencies: + eslint: '>=8.40.0' '@svgr/babel-plugin-add-jsx-attribute@8.0.0': resolution: {integrity: sha512-b9MIk7yhdS1pMCZM8VeNfUlSKVRhsHZNMl5O9SfaX0l0t5wjdgu4IDzGB8bpnGBBOjGST3rRFVsaaEtI4W6f7g==} @@ -4832,68 +5539,68 @@ packages: resolution: {integrity: sha512-LnhVjMWyMQV9ZmeEy26maJk+8HTIbd59cH4F2MJ439k9DqejRisfFNGAPvRYlKETuh9LrImlS8aKsBgKjMA8WA==} engines: {node: '>=14'} - '@swc/core-darwin-arm64@1.8.0': - resolution: {integrity: sha512-TIus1/SE/Ud4g84hCnchcagu+LfyndSDy5r5qf64nflojejDidPU9Fp1InzQhQpEgIpntnZID/KFCP5rQnvsIw==} + '@swc/core-darwin-arm64@1.10.1': + resolution: {integrity: sha512-NyELPp8EsVZtxH/mEqvzSyWpfPJ1lugpTQcSlMduZLj1EASLO4sC8wt8hmL1aizRlsbjCX+r0PyL+l0xQ64/6Q==} engines: {node: '>=10'} cpu: [arm64] os: [darwin] - '@swc/core-darwin-x64@1.8.0': - resolution: {integrity: sha512-yCb1FHCX/HUmNRGB1X3CFJ1WPKXMosZVUe3K2TrosCGvytwgaLoW5FS0bZg5Qv6cEUERQBg75cJnOUPwLLRCVg==} + '@swc/core-darwin-x64@1.10.1': + resolution: {integrity: sha512-L4BNt1fdQ5ZZhAk5qoDfUnXRabDOXKnXBxMDJ+PWLSxOGBbWE6aJTnu4zbGjJvtot0KM46m2LPAPY8ttknqaZA==} engines: {node: '>=10'} cpu: [x64] os: [darwin] - '@swc/core-linux-arm-gnueabihf@1.8.0': - resolution: {integrity: sha512-6TdjVdiLaSW+eGiHKEojMDlx673nowrPHa6nM6toWgRzy8tIZgjPOguVKJDoMnoHuvO7SkOLCUiMRw0rTskypA==} + '@swc/core-linux-arm-gnueabihf@1.10.1': + resolution: {integrity: sha512-Y1u9OqCHgvVp2tYQAJ7hcU9qO5brDMIrA5R31rwWQIAKDkJKtv3IlTHF0hrbWk1wPR0ZdngkQSJZple7G+Grvw==} engines: {node: '>=10'} cpu: [arm] os: [linux] - '@swc/core-linux-arm64-gnu@1.8.0': - resolution: {integrity: sha512-TU2YcTornnyZiJUabRuk7Xtvzaep11FwK77IkFomjN9/Os5s25B8ea652c2fAQMe9RsM84FPVmX303ohxavjKQ==} + '@swc/core-linux-arm64-gnu@1.10.1': + resolution: {integrity: sha512-tNQHO/UKdtnqjc7o04iRXng1wTUXPgVd8Y6LI4qIbHVoVPwksZydISjMcilKNLKIwOoUQAkxyJ16SlOAeADzhQ==} engines: {node: '>=10'} cpu: [arm64] os: [linux] - '@swc/core-linux-arm64-musl@1.8.0': - resolution: {integrity: sha512-2CdPTEKxx2hJIj/B0fn8L8k2coo/FDS95smzXyi2bov5FcrP6Ohboq8roFBYgj38fkHusXjY8qt+cCH7yXWAdg==} + '@swc/core-linux-arm64-musl@1.10.1': + resolution: {integrity: sha512-x0L2Pd9weQ6n8dI1z1Isq00VHFvpBClwQJvrt3NHzmR+1wCT/gcYl1tp9P5xHh3ldM8Cn4UjWCw+7PaUgg8FcQ==} engines: {node: '>=10'} cpu: [arm64] os: [linux] - '@swc/core-linux-x64-gnu@1.8.0': - resolution: {integrity: sha512-14StQBifCs/AMsySdU95OmwNJr9LOVqo6rcTFt2b7XaWpe/AyeuMJFxcndLgUewksJHpfepzCTwNdbcYmuNo6A==} + '@swc/core-linux-x64-gnu@1.10.1': + resolution: {integrity: sha512-yyYEwQcObV3AUsC79rSzN9z6kiWxKAVJ6Ntwq2N9YoZqSPYph+4/Am5fM1xEQYf/kb99csj0FgOelomJSobxQA==} engines: {node: '>=10'} cpu: [x64] os: [linux] - '@swc/core-linux-x64-musl@1.8.0': - resolution: {integrity: sha512-qemJnAQlYqKCfWNqVv5SG8uGvw8JotwU86cuFUkq35oTB+dsSFM3b83+B1giGTKKFOh2nfWT7bvPXTKk+aUjew==} + '@swc/core-linux-x64-musl@1.10.1': + resolution: {integrity: sha512-tcaS43Ydd7Fk7sW5ROpaf2Kq1zR+sI5K0RM+0qYLYYurvsJruj3GhBCaiN3gkzd8m/8wkqNqtVklWaQYSDsyqA==} engines: {node: '>=10'} cpu: [x64] os: [linux] - '@swc/core-win32-arm64-msvc@1.8.0': - resolution: {integrity: sha512-fXt5vZbnrVdXZzGj2qRnZtY3uh+NtLCaFjS2uD9w8ssdbjhbDZYlJCj2JINOjv35ttEfAD2goiYmVa5P/Ypl+g==} + '@swc/core-win32-arm64-msvc@1.10.1': + resolution: {integrity: sha512-D3Qo1voA7AkbOzQ2UGuKNHfYGKL6eejN8VWOoQYtGHHQi1p5KK/Q7V1ku55oxXBsj79Ny5FRMqiRJpVGad7bjQ==} engines: {node: '>=10'} cpu: [arm64] os: [win32] - '@swc/core-win32-ia32-msvc@1.8.0': - resolution: {integrity: sha512-W4FA2vSJ+bGYiTj6gspxghSdKQNLfLMo65AH07u797x7I+YJj8amnFY/fQRlroDv5Dez/FHTv14oPlTlNFUpIw==} + '@swc/core-win32-ia32-msvc@1.10.1': + resolution: {integrity: sha512-WalYdFoU3454Og+sDKHM1MrjvxUGwA2oralknXkXL8S0I/8RkWZOB++p3pLaGbTvOO++T+6znFbQdR8KRaa7DA==} engines: {node: '>=10'} cpu: [ia32] os: [win32] - '@swc/core-win32-x64-msvc@1.8.0': - resolution: {integrity: sha512-Il4y8XwKDV0Bnk0IpA00kGcSQC6I9XOIinW5egTutnwIDfDE+qsD0j+0isW5H76GetY3/Ze0lVxeOXLAUgpegA==} + '@swc/core-win32-x64-msvc@1.10.1': + resolution: {integrity: sha512-JWobfQDbTnoqaIwPKQ3DVSywihVXlQMbDuwik/dDWlj33A8oEHcjPOGs4OqcA3RHv24i+lfCQpM3Mn4FAMfacA==} engines: {node: '>=10'} cpu: [x64] os: [win32] - '@swc/core@1.8.0': - resolution: {integrity: sha512-EF8C5lp1RKMp3426tAKwQyVbg4Zcn/2FDax3cz8EcOXYQJM/ctB687IvBm9Ciej1wMcQ/dMRg+OB4Xl8BGLBoA==} + '@swc/core@1.10.1': + resolution: {integrity: sha512-rQ4dS6GAdmtzKiCRt3LFVxl37FaY1cgL9kSUTnhQ2xc3fmHOd7jdJK/V4pSZMG1ruGTd0bsi34O2R0Olg9Zo/w==} engines: {node: '>=10'} peerDependencies: '@swc/helpers': '*' @@ -4904,8 +5611,8 @@ packages: '@swc/counter@0.1.3': resolution: {integrity: sha512-e2BR4lsJkkRlKZ/qCHPw9ZaSxc0MVUd7gtbtaB7aMvHeJVYe8sOB8DBZkP2DtISHGSku9sCK6T6cnY0CtXrOCQ==} - '@swc/helpers@0.5.13': - resolution: {integrity: sha512-UoKGxQ3r5kYI9dALKJapMmuK+1zWM/H17Z1+iwnNmzcJRnfFuevZs375TA5rW31pu4BS4NoSy1fRsexDXfWn5w==} + '@swc/helpers@0.5.15': + resolution: {integrity: sha512-JQ5TuMi45Owi4/BIMAJBoSQoOJu12oOk/gADqlcUL9JEdHB8vyjUSsxqeNXnmXHjYKMi2WcYtezGEEhqUI/E2g==} '@swc/jest@0.2.37': resolution: {integrity: sha512-CR2BHhmXKGxTiFr21DYPRHQunLkX3mNIFGFkxBGji6r9uyIR5zftTOVYj1e0sFNMV2H7mf/+vpaglqaryBtqfQ==} @@ -4913,27 +5620,27 @@ packages: peerDependencies: '@swc/core': '*' - '@swc/types@0.1.15': - resolution: {integrity: sha512-XKaZ+dzDIQ9Ot9o89oJQ/aluI17+VvUnIpYJTcZtvv1iYX6MzHh3Ik2CSR7MdPKpPwfZXHBeCingb2b4PoDVdw==} + '@swc/types@0.1.17': + resolution: {integrity: sha512-V5gRru+aD8YVyCOMAjMpWR1Ui577DD5KSJsHP8RAxopAH22jFz6GZd/qxqjO6MJHQhcsjvjOFXyDhyLQUnMveQ==} '@szmarczak/http-timer@5.0.1': resolution: {integrity: sha512-+PmQX0PiAYPMeVYe237LJAYvOMYW1j2rH5YROyS3b4CTVJum34HfRvKvAzozHAQG0TnHNdUfY9nCeUyRAs//cw==} engines: {node: '>=14.16'} - '@tanstack/query-core@5.59.17': - resolution: {integrity: sha512-jWdDiif8kaqnRGHNXAa9CnudtxY5v9DUxXhodgqX2Rwzj+1UwStDHEbBd9IA5C7VYAaJ2s+BxFR6PUBs8ERorA==} + '@tanstack/query-core@5.62.7': + resolution: {integrity: sha512-fgpfmwatsrUal6V+8EC2cxZIQVl9xvL7qYa03gsdsCy985UTUlS4N+/3hCzwR0PclYDqisca2AqR1BVgJGpUDA==} - '@tanstack/query-devtools@5.59.19': - resolution: {integrity: sha512-Gw+3zsADpqiYgx/6MMr9bP1+x2LR8vOuGjo5Un/89qwwP3z7WAHPWFagLFDYkLq68NX7ekUpW/EOYlUMugMXGA==} + '@tanstack/query-devtools@5.61.4': + resolution: {integrity: sha512-21Tw+u8E3IJJj4A/Bct4H0uBaDTEu7zBrR79FeSyY+mS2gx5/m316oDtJiKkILc819VSTYt+sFzODoJNcpPqZQ==} - '@tanstack/react-query-devtools@5.59.19': - resolution: {integrity: sha512-mYFWTHLtJr2HdyYPZPzzvQ2ksCsSL6L04fCtusPFD3waskXrtmvWvyuDIGeEGdVAYS0Urwxw/0sYvcTVQZH+zQ==} + '@tanstack/react-query-devtools@5.62.7': + resolution: {integrity: sha512-wxXsdTZJRs//hMtJMU5aNlUaTclRFPqLvDNeWbRj8YpGD3aoo4zyu53W55W2DY16+ycg3fti21uCW4N9oyj91w==} peerDependencies: - '@tanstack/react-query': ^5.59.19 + '@tanstack/react-query': ^5.62.7 react: ^18 || ^19 - '@tanstack/react-query@5.59.19': - resolution: {integrity: sha512-xLRfyFyQOFcLltKCds0LijfC6/HQJrrTTnZB8ciyn74LIkVAm++vZJ6eUVG20RmJtdP8REdy7vSOYW4M3//XLA==} + '@tanstack/react-query@5.62.7': + resolution: {integrity: sha512-+xCtP4UAFDTlRTYyEjLx0sRtWyr5GIk7TZjZwBu4YaNahi3Rt2oMyRqfpfVrtwsqY2sayP4iXVCwmC+ZqqFmuw==} peerDependencies: react: ^18 || ^19 @@ -4945,15 +5652,15 @@ packages: resolution: {integrity: sha512-IteBhl4XqYNkM54f4ejhLRJiZNqcSCoXUOG2CPK7qbD322KjQozM4kHQOfkG2oln9b9HTYqs+Sae8vBATubxxA==} engines: {node: '>=14', npm: '>=6', yarn: '>=1'} - '@testing-library/react@16.0.1': - resolution: {integrity: sha512-dSmwJVtJXmku+iocRhWOUFbrERC76TX2Mnf0ATODz8brzAZrMBbzLwQixlBSanZxR6LddK3eiwpSFZgDET1URg==} + '@testing-library/react@16.1.0': + resolution: {integrity: sha512-Q2ToPvg0KsVL0ohND9A3zLJWcOXXcO8IDu3fj11KhNt0UlCWyFyvnCIBkd12tidB2lkiVRG8VFqdhcqhqnAQtg==} engines: {node: '>=18'} peerDependencies: '@testing-library/dom': ^10.0.0 - '@types/react': ^18.0.0 - '@types/react-dom': ^18.0.0 - react: ^18.0.0 - react-dom: ^18.0.0 + '@types/react': ^18.0.0 || ^19.0.0 + '@types/react-dom': ^18.0.0 || ^19.0.0 + react: ^18.0.0 || ^19.0.0 + react-dom: ^18.0.0 || ^19.0.0 peerDependenciesMeta: '@types/react': optional: true @@ -4983,6 +5690,9 @@ packages: '@tsconfig/node16@1.0.4': resolution: {integrity: sha512-vxhUy4J8lyeyinH7Azl1pdd43GJhZH/tP2weN8TntQblOY+A0XbT8DJk1/oCPuOOyg/Ja757rG0CgHcWC8OfMA==} + '@tybys/wasm-util@0.9.0': + resolution: {integrity: sha512-6+7nlbMVX/PVDCwaIQ8nTOPveOcFLSt8GcXdx8hD0bt39uWxYT88uXzqTd4fTvqta7oeUJqudepapKNt2DYJFw==} + '@types/acorn@4.0.6': resolution: {integrity: sha512-veQTnWP+1D/xbxVrPC3zHnCZRjSrKfhbMUlEA43iMZLu7EsnTtkJklIuwrCPbOi8YkvDQAiW05VQQFvvz9oieQ==} @@ -5049,8 +5759,8 @@ packages: '@types/express-serve-static-core@4.19.6': resolution: {integrity: sha512-N4LZ2xG7DatVqhCZzOGb1Yi5lMbXSZcmdLDe9EzSndPV2HpWYWzRbaerl2n27irrm94EPpprqa8KpskPT085+A==} - '@types/express-serve-static-core@5.0.1': - resolution: {integrity: sha512-CRICJIl0N5cXDONAdlTv5ShATZ4HEwk6kDDIW2/w9qOWKg+NU/5F8wYRWCrONad0/UKkloNSmmyN/wX4rtpbVA==} + '@types/express-serve-static-core@5.0.2': + resolution: {integrity: sha512-vluaspfvWEtE4vcSDlKRNer52DvOGrB2xv6diXy6UKyKW0lqZiWHGNApSyxOv+8DE5Z27IzVvE7hNkxg7EXIcg==} '@types/express@4.17.21': resolution: {integrity: sha512-ejlPM315qwLpaQlQDTjPdsUFSc6ZsP4AN6AlWnogPjQ7CVi7PYF3YVz+CY3jE2pwYf7E/7HlDAN0rV2GxTG0HQ==} @@ -5058,9 +5768,6 @@ packages: '@types/express@5.0.0': resolution: {integrity: sha512-DvZriSMehGHL1ZNLzi6MidnsDhUZM/x2pRdDIKdwbUNqqwHxMlRdkxtn6/EPKyqKpHqTl/4nRZsRNLpZxZRpPQ==} - '@types/glob@7.2.0': - resolution: {integrity: sha512-ZUxbzKl0IfJILTS6t7ip5fQQM/J3TJYubDm3nMbgubNNYS62eXeUpoLUC8/7fJNiFYHTrGPQn7hspDUzIHX3UA==} - '@types/graceful-fs@4.1.9': resolution: {integrity: sha512-olP3sd1qOEe5dXTSaFvQG+02VdRXcdytWLAZsAq1PecU8uqQAhkrnbli7DagjtXKW/Bl7YJbUsa8MPcuc8LHEQ==} @@ -5115,9 +5822,6 @@ packages: '@types/mime@1.3.5': resolution: {integrity: sha512-/pyBZWSLD2n0dcHE3hq8s8ZvcETHtEuF+3E7XVt0Ig2nvsVQXdghHVcEkIWjy9A0wKfTn97a/PSDYohKIlnP/w==} - '@types/minimatch@5.1.2': - resolution: {integrity: sha512-K0VQKziLUWkVKiRVrx4a40iPaxTUefQmjtkQofBkYRcoaaL/8rhwDWww9qWbrgicNOgnpIsMxyNIUM4+n6dUIA==} - '@types/ms@0.7.34': resolution: {integrity: sha512-nG96G3Wp6acyAgJqGasjODb+acrI7KltPiRxzHPXnP3NgI28bpQDRv53olbqGXbfcgF5aiiHmO3xpwEpS5Ld9g==} @@ -5130,8 +5834,8 @@ packages: '@types/node@12.20.55': resolution: {integrity: sha512-J8xLz7q2OFulZ2cyGTLE1TbbZcjpno7FaN6zdJNrgAdrJ+DZzh/uFR6YrTb4C+nXakvud8Q4+rbhoIWlYQbUFQ==} - '@types/node@22.9.0': - resolution: {integrity: sha512-vuyHg81vvWA1Z1ELfvLko2c8f34gyA0zaic0+Rllc5lbCnbSyuvb2Oxpm6TAUAC/2xZN3QGqxBNggD1nNR2AfQ==} + '@types/node@22.10.2': + resolution: {integrity: sha512-Xxr6BBRCAOQixvonOye19wnzyDiUtTeqldOOmj3CkeblonbccA12PFwlufvRdrpjXxqnmUaeiU5EOA+7s5diUQ==} '@types/normalize-package-data@2.4.4': resolution: {integrity: sha512-37i+OaWTh9qeK4LSHPsyRC7NahnGotNuZvjLSgcPzblpHB3rrCJxAOgI5gCdKm7coonsaX1Of0ILiTcnZjbfxA==} @@ -5142,23 +5846,19 @@ packages: '@types/pg@8.6.1': resolution: {integrity: sha512-1Kc4oAGzAl7uqUStZCDvaLFqZrW9qWSjXOmBfdgyBP5La7Us6Mg4GBvRlSoaZMhQF/zSj1C8CtKMBkoiT8eL8w==} - '@types/prop-types@15.7.13': - resolution: {integrity: sha512-hCZTSvwbzWGvhqxp/RqVqwU999pBf2vp7hzIjiYOsl8wqOmUxkQ6ddw1cV3l8811+kdUFus/q4d1Y3E3SyEifA==} - '@types/qs@6.9.17': resolution: {integrity: sha512-rX4/bPcfmvxHDv0XjfJELTTr+iB+tn032nPILqHm5wbthUUUuVtNGGqzhya9XUxjTP8Fpr0qYgSZZKxGY++svQ==} '@types/range-parser@1.2.7': resolution: {integrity: sha512-hKormJbkJqzQGhziax5PItDUTMAM9uE2XXQmM37dyd4hVM+5aVl7oVxMVUiVQn2oCQFN/LKCZdvSM0pFRqbSmQ==} - '@types/react-dom@18.3.1': - resolution: {integrity: sha512-qW1Mfv8taImTthu4KoXgDfLuk4bydU6Q/TkADnDWWHwi4NX4BR+LWfTp2sVmTqRrsHvyDDTelgelxJ+SsejKKQ==} - - '@types/react-test-renderer@18.3.0': - resolution: {integrity: sha512-HW4MuEYxfDbOHQsVlY/XtOvNHftCVEPhJF2pQXXwcUiUF+Oyb0usgp48HSgpK5rt8m9KZb22yqOeZm+rrVG8gw==} + '@types/react-dom@19.0.2': + resolution: {integrity: sha512-c1s+7TKFaDRRxr1TxccIX2u7sfCnc3RxkVyBIUA2lCpyqCF+QoAwQ/CBg7bsMdVwP120HEH143VQezKtef5nCg==} + peerDependencies: + '@types/react': ^19.0.0 - '@types/react@18.3.12': - resolution: {integrity: sha512-D2wOSq/d6Agt28q7rSI3jhU7G6aiuzljDGZ2hTZHIkrTLUI+AF3WMeKkEZ9nN2fkBAlcktT6vcZjDFiIhMYEQw==} + '@types/react@19.0.1': + resolution: {integrity: sha512-YW6614BDhqbpR5KtUYzTA+zlA7nayzJRA9ljz9CQoxthR0sDisYZLuvSMsil36t4EH/uAt8T52Xb4sVw17G+SQ==} '@types/retry@0.12.1': resolution: {integrity: sha512-xoDlM2S4ortawSWORYqsdU+2rxdh4LRW9ytc3zmT37RIKQh6IHyKwwtKhKis9ah8ol07DCkZxPt8BBvPjC6v4g==} @@ -5226,67 +5926,38 @@ packages: '@types/yauzl@2.10.3': resolution: {integrity: sha512-oJoftv0LSuaDZE3Le4DbKX+KS9G36NzOeSap90UIK0yMA/NhKJhqlSGtNDORNRaIbQfzjXDrQa0ytJ6mNRGz/Q==} - '@typescript-eslint/eslint-plugin@7.18.0': - resolution: {integrity: sha512-94EQTWZ40mzBc42ATNIBimBEDltSJ9RQHCC8vc/PDbxi4k8dVwUAv4o98dk50M1zB+JGFxp43FP7f8+FP8R6Sw==} - engines: {node: ^18.18.0 || >=20.0.0} + '@typescript-eslint/eslint-plugin@8.18.0': + resolution: {integrity: sha512-NR2yS7qUqCL7AIxdJUQf2MKKNDVNaig/dEB0GBLU7D+ZdHgK1NoH/3wsgO3OnPVipn51tG3MAwaODEGil70WEw==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: - '@typescript-eslint/parser': ^7.0.0 - eslint: ^8.56.0 - typescript: '*' - peerDependenciesMeta: - typescript: - optional: true + '@typescript-eslint/parser': ^8.0.0 || ^8.0.0-alpha.0 + eslint: ^8.57.0 || ^9.0.0 + typescript: '>=4.8.4 <5.8.0' - '@typescript-eslint/parser@8.13.0': - resolution: {integrity: sha512-w0xp+xGg8u/nONcGw1UXAr6cjCPU1w0XVyBs6Zqaj5eLmxkKQAByTdV/uGgNN5tVvN/kKpoQlP2cL7R+ajZZIQ==} + '@typescript-eslint/parser@8.18.0': + resolution: {integrity: sha512-hgUZ3kTEpVzKaK3uNibExUYm6SKKOmTU2BOxBSvOYwtJEPdVQ70kZJpPjstlnhCHcuc2WGfSbpKlb/69ttyN5Q==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: eslint: ^8.57.0 || ^9.0.0 - typescript: '*' - peerDependenciesMeta: - typescript: - optional: true - - '@typescript-eslint/scope-manager@5.62.0': - resolution: {integrity: sha512-VXuvVvZeQCQb5Zgf4HAxc04q5j+WrNAtNh9OwCsCgpKqESMTu3tF/jhZ3xG6T4NZwWl65Bg8KuS2uEvhSfLl0w==} - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} - - '@typescript-eslint/scope-manager@7.18.0': - resolution: {integrity: sha512-jjhdIE/FPF2B7Z1uzc6i3oWKbGcHb87Qw7AWj6jmEqNOfDFbJWtjt/XfwCpvNkpGWlcJaog5vTR+VV8+w9JflA==} - engines: {node: ^18.18.0 || >=20.0.0} + typescript: '>=4.8.4 <5.8.0' - '@typescript-eslint/scope-manager@8.13.0': - resolution: {integrity: sha512-XsGWww0odcUT0gJoBZ1DeulY1+jkaHUciUq4jKNv4cpInbvvrtDoyBH9rE/n2V29wQJPk8iCH1wipra9BhmiMA==} + '@typescript-eslint/scope-manager@8.18.0': + resolution: {integrity: sha512-PNGcHop0jkK2WVYGotk/hxj+UFLhXtGPiGtiaWgVBVP1jhMoMCHlTyJA+hEj4rszoSdLTK3fN4oOatrL0Cp+Xw==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} - '@typescript-eslint/scope-manager@8.15.0': - resolution: {integrity: sha512-QRGy8ADi4J7ii95xz4UoiymmmMd/zuy9azCaamnZ3FM8T5fZcex8UfJcjkiEZjJSztKfEBe3dZ5T/5RHAmw2mA==} + '@typescript-eslint/type-utils@8.18.0': + resolution: {integrity: sha512-er224jRepVAVLnMF2Q7MZJCq5CsdH2oqjP4dT7K6ij09Kyd+R21r7UVJrF0buMVdZS5QRhDzpvzAxHxabQadow==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} - - '@typescript-eslint/type-utils@7.18.0': - resolution: {integrity: sha512-XL0FJXuCLaDuX2sYqZUUSOJ2sG5/i1AAze+axqmLnSkNEVMVYLF+cbwlB2w8D1tinFuSikHmFta+P+HOofrLeA==} - engines: {node: ^18.18.0 || >=20.0.0} peerDependencies: - eslint: ^8.56.0 - typescript: '*' - peerDependenciesMeta: - typescript: - optional: true + eslint: ^8.57.0 || ^9.0.0 + typescript: '>=4.8.4 <5.8.0' '@typescript-eslint/types@5.62.0': resolution: {integrity: sha512-87NVngcbVXUahrRTqIK27gD2t5Cu1yuCXxbLcFtCzZGlfyVWWh8mLHkoxzjsB6DDNnvdL+fW8MiwPEJyGJQDgQ==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} - '@typescript-eslint/types@7.18.0': - resolution: {integrity: sha512-iZqi+Ds1y4EDYUtlOOC+aUmxnE9xS/yCigkjA7XpTKV6nCBd3Hp/PRGGmdwnfkV2ThMyYldP1wRpm/id99spTQ==} - engines: {node: ^18.18.0 || >=20.0.0} - - '@typescript-eslint/types@8.13.0': - resolution: {integrity: sha512-4cyFErJetFLckcThRUFdReWJjVsPCqyBlJTi6IDEpc1GWCIIZRFxVppjWLIMcQhNGhdWJJRYFHpHoDWvMlDzng==} - engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} - - '@typescript-eslint/types@8.15.0': - resolution: {integrity: sha512-n3Gt8Y/KyJNe0S3yDCD2RVKrHBC4gTUcLTebVBXacPy091E6tNspFLKRXlk3hwT4G55nfr1n2AdFqi/XMxzmPQ==} + '@typescript-eslint/types@8.18.0': + resolution: {integrity: sha512-FNYxgyTCAnFwTrzpBGq+zrnoTO4x0c1CKYY5MuUTzpScqmY5fmsh2o3+57lqdI3NZucBDCzDgdEbIaNfAjAHQA==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} '@typescript-eslint/typescript-estree@5.62.0': @@ -5298,76 +5969,37 @@ packages: typescript: optional: true - '@typescript-eslint/typescript-estree@7.18.0': - resolution: {integrity: sha512-aP1v/BSPnnyhMHts8cf1qQ6Q1IFwwRvAQGRvBFkWlo3/lH29OXA3Pts+c10nxRxIBrDnoMqzhgdwVe5f2D6OzA==} - engines: {node: ^18.18.0 || >=20.0.0} - peerDependencies: - typescript: '*' - peerDependenciesMeta: - typescript: - optional: true - - '@typescript-eslint/typescript-estree@8.13.0': - resolution: {integrity: sha512-v7SCIGmVsRK2Cy/LTLGN22uea6SaUIlpBcO/gnMGT/7zPtxp90bphcGf4fyrCQl3ZtiBKqVTG32hb668oIYy1g==} - engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} - peerDependencies: - typescript: '*' - peerDependenciesMeta: - typescript: - optional: true - - '@typescript-eslint/typescript-estree@8.15.0': - resolution: {integrity: sha512-1eMp2JgNec/niZsR7ioFBlsh/Fk0oJbhaqO0jRyQBMgkz7RrFfkqF9lYYmBoGBaSiLnu8TAPQTwoTUiSTUW9dg==} + '@typescript-eslint/typescript-estree@8.18.0': + resolution: {integrity: sha512-rqQgFRu6yPkauz+ms3nQpohwejS8bvgbPyIDq13cgEDbkXt4LH4OkDMT0/fN1RUtzG8e8AKJyDBoocuQh8qNeg==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: - typescript: '*' - peerDependenciesMeta: - typescript: - optional: true - - '@typescript-eslint/utils@5.62.0': - resolution: {integrity: sha512-n8oxjeb5aIbPFEtmQxQYOLI0i9n5ySBEY/ZEHHZqKQSFnxio1rv6dthascc9dLuwrL0RC5mPCxB7vnAVGAYWAQ==} - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} - peerDependencies: - eslint: ^6.0.0 || ^7.0.0 || ^8.0.0 - - '@typescript-eslint/utils@7.18.0': - resolution: {integrity: sha512-kK0/rNa2j74XuHVcoCZxdFBMF+aq/vH83CXAOHieC+2Gis4mF8jJXT5eAfyD3K0sAxtPuwxaIOIOvhwzVDt/kw==} - engines: {node: ^18.18.0 || >=20.0.0} - peerDependencies: - eslint: ^8.56.0 + typescript: '>=4.8.4 <5.8.0' - '@typescript-eslint/utils@8.15.0': - resolution: {integrity: sha512-k82RI9yGhr0QM3Dnq+egEpz9qB6Un+WLYhmoNcvl8ltMEededhh7otBVVIDDsEEttauwdY/hQoSsOv13lxrFzQ==} + '@typescript-eslint/utils@8.18.0': + resolution: {integrity: sha512-p6GLdY383i7h5b0Qrfbix3Vc3+J2k6QWw6UMUeY5JGfm3C5LbZ4QIZzJNoNOfgyRe0uuYKjvVOsO/jD4SJO+xg==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: eslint: ^8.57.0 || ^9.0.0 - typescript: '*' - peerDependenciesMeta: - typescript: - optional: true + typescript: '>=4.8.4 <5.8.0' '@typescript-eslint/visitor-keys@5.62.0': resolution: {integrity: sha512-07ny+LHRzQXepkGg6w0mFY41fVUNBrL2Roj/++7V1txKugfjm/Ci/qSND03r2RhlJhJYMcTn9AhhSSqQp0Ysyw==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} - '@typescript-eslint/visitor-keys@7.18.0': - resolution: {integrity: sha512-cDF0/Gf81QpY3xYyJKDV14Zwdmid5+uuENhjH2EqFaF0ni+yAyq/LzMaIJdhNJXZI7uLzwIlA+V7oWoyn6Curg==} - engines: {node: ^18.18.0 || >=20.0.0} - - '@typescript-eslint/visitor-keys@8.13.0': - resolution: {integrity: sha512-7N/+lztJqH4Mrf0lb10R/CbI1EaAMMGyF5y0oJvFoAhafwgiRA7TXyd8TFn8FC8k5y2dTsYogg238qavRGNnlw==} + '@typescript-eslint/visitor-keys@8.18.0': + resolution: {integrity: sha512-pCh/qEA8Lb1wVIqNvBke8UaRjJ6wrAWkJO5yyIbs8Yx6TNGYyfNjOo61tLv+WwLvoLPp4BQ8B7AHKijl8NGUfw==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} - '@typescript-eslint/visitor-keys@8.15.0': - resolution: {integrity: sha512-h8vYOulWec9LhpwfAdZf2bjr8xIp0KNKnpgqSz0qqYYKAW/QZKw3ktRndbiAtUz4acH4QLQavwZBYCc0wulA/Q==} - engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + '@ungap/structured-clone@1.2.1': + resolution: {integrity: sha512-fEzPV3hSkSMltkw152tJKNARhOupqbH96MZWyRjNaYZOMIzbrTeQDG+MTc6Mr2pgzFQzFxAfmhGDNP5QK++2ZA==} - '@ungap/structured-clone@1.2.0': - resolution: {integrity: sha512-zuVdFrMJiuCDQUMCzQaD6KL28MjnqqN8XnAqiEq9PNm/hCPTSGfrXCOfwj1ow4LFb/tNymJPwsNbVePc1xFqrQ==} + '@vercel/nft@0.27.7': + resolution: {integrity: sha512-FG6H5YkP4bdw9Ll1qhmbxuE8KwW2E/g8fJpM183fWQLeVDGqzeywMIeJ9h2txdWZ03psgWMn6QymTxaDLmdwUg==} + engines: {node: '>=16'} + hasBin: true - '@vercel/nft@0.27.6': - resolution: {integrity: sha512-mwuyUxskdcV8dd7N7JnxBgvFEz1D9UOePI/WyLLzktv6HSCwgPNQGit/UJ2IykAWGlypKw4pBQjOKWvIbXITSg==} + '@vercel/nft@0.27.9': + resolution: {integrity: sha512-pTs7OchHQmSYJPR0puVQCWw/NqzuvAtnAhBurz21lq4Y4KqWoMpYKqmikkETG5r1bHNCM/hQMZ5JiRr9mhOkyg==} engines: {node: '>=16'} hasBin: true @@ -5456,8 +6088,8 @@ packages: '@workleap/browserslist-config@2.0.1': resolution: {integrity: sha512-9WEv0G4vRgFh2Wc7+PC+4pM1LCwdEKob5OD/7k708lYklLGwxGfu/S7UQZJzlAX5EepJyK/Xmm3VSkTR/Ue0Lg==} - '@workleap/eslint-plugin@3.2.3': - resolution: {integrity: sha512-uSGuK/THu2+cuVJ03c5N+kKcWRJDluBe7SkH/aVmBVKvWbULkltRLuO+7UfgpmdwCwkRZEk9MQDde+T/IlaPDw==} + '@workleap/eslint-plugin@3.2.5': + resolution: {integrity: sha512-qE0yjNwBqvN+0Wd2xaHztN7wHHOt8DJYzpIJqf2cxGUgvsf3Bz574Q1D9A8xlYpewsVvOf58N+fN7yLEO6WCDw==} peerDependencies: '@typescript-eslint/parser': '*' eslint: '*' @@ -5478,6 +6110,12 @@ packages: '@opentelemetry/api': '*' '@opentelemetry/auto-instrumentations-web': '*' + '@workleap/rsbuild-configs@1.0.1': + resolution: {integrity: sha512-eYhVbMkd7Xjhd3N2I6s76uClSo35TNuySC8rlqFdITzQhX5AtA/woDpcgNey2t6JQPBfGr+4/YnOVAmSwOKBHA==} + peerDependencies: + '@rsbuild/core': '*' + '@rspack/core': '*' + '@workleap/swc-configs@2.2.3': resolution: {integrity: sha512-zrDsorHKxZY4/DlahkWucNm7kH9xAWxsq0WAWAKcCeFiYUX2TqZT+FNKn3Rl2a//MJgEQJlcYD0VaUIZP3J17A==} peerDependencies: @@ -5491,19 +6129,13 @@ packages: browserslist: optional: true - '@workleap/tsup-configs@3.0.6': - resolution: {integrity: sha512-ltp2igkUwTZL3LDPydgCSIzjZeyby+lL+i/q7LwMwy0HeEPxLCiGpxwSsEYMf84pgGHrLIfADs4qEEsDxKY/mA==} - peerDependencies: - tsup: '*' - typescript: '*' - '@workleap/typescript-configs@3.0.2': resolution: {integrity: sha512-H2FE1RoOcjYUhzMjpMm48qE7xf015nJBBYTwGH+t7VXzDcJBFcwU2jXztLG6ibMW+wIe0nI06MFOdjMLE099+Q==} peerDependencies: typescript: '*' - '@workleap/webpack-configs@1.5.1': - resolution: {integrity: sha512-o7jRK3O5yAFGtp2qgT96B/XuWY58P5AG8EKZy533I13dXN9ibS3eoQOV57v04y8TyYzQJe1nC6mJofToJ1s57g==} + '@workleap/webpack-configs@1.5.2': + resolution: {integrity: sha512-C4S49R82E1BhRMltnbwCyqbvxLfumrTHi9wb5ZA0LLLlygR9UE0XiU38Gg9lBxM3Hq4gsXkkqsaIKn0HHEVWGA==} peerDependencies: '@swc/core': '*' '@swc/helpers': '*' @@ -5601,8 +6233,8 @@ packages: resolution: {integrity: sha512-RZNwNclF7+MS/8bDg70amg32dyeZGZxiDuQmZxKLAlQjr3jGyLx+4Kkk58UO7D2QdgFIQCovuSuZESne6RG6XQ==} engines: {node: '>= 6.0.0'} - agent-base@7.1.1: - resolution: {integrity: sha512-H0TSyFNDMomMNJQBn8wFV5YC/2eJ+VXECwOadZJT554xP6cODZHPX3H9QMQECxvrgiSOP1pHjy1sMWQVYJOUOA==} + agent-base@7.1.3: + resolution: {integrity: sha512-jRR5wdylq8CkOe6hei19GGZnxM6rBGwFl3Bg0YItGDimvjGtAvdZk4Pu6Cl4u4Igsws4a1fd1Vq3ezrhn4KmFw==} engines: {node: '>= 14'} aggregate-error@3.1.0: @@ -5728,9 +6360,6 @@ packages: engines: {node: '>=8.0.0'} hasBin: true - any-promise@1.3.0: - resolution: {integrity: sha512-7UvmKalWRt1wgjL1RrGxoSJW/0QZFIegpeGvZG9kjp8vrRu55XTHbwnqq2GpXm9uLbcuhxm3IqX9OB4MZR1b2A==} - anymatch@3.1.3: resolution: {integrity: sha512-KMReFUr0B4t+D+OBkjR3KYqvocp2XaSzO55UcB6mgQMd3KbcE+mWTyvVV7D/zsdEbNnV6acZUutkiHQXvTr1Rw==} engines: {node: '>= 8'} @@ -5793,20 +6422,20 @@ packages: resolution: {integrity: sha512-zfETvRFA8o7EiNn++N5f/kaCw221hrpGsDmcpndVupkPzEc1Wuf3VgC0qby1BbHs7f5DVYjgtEU2LLh5bqeGfQ==} engines: {node: '>= 0.4'} - array.prototype.flat@1.3.2: - resolution: {integrity: sha512-djYB+Zx2vLewY8RWlNCUdHjDXs2XOgm602S9E7P/UpHgfeHL00cRiIF+IN/G/aUJ7kGPb6yO/ErDI5V2s8iycA==} + array.prototype.flat@1.3.3: + resolution: {integrity: sha512-rwG/ja1neyLqCuGZ5YYrznA62D4mZXg0i1cIskIUKSiqF3Cje9/wXAls9B9s1Wa2fomMsIv8czB8jZcPmxCXFg==} engines: {node: '>= 0.4'} - array.prototype.flatmap@1.3.2: - resolution: {integrity: sha512-Ewyx0c9PmpcsByhSW4r+9zDU7sGjFc86qf/kKtuSCRdhfbk0SNLLkaT5qvcHnRGgc5NP/ly/y+qkXkqONX54CQ==} + array.prototype.flatmap@1.3.3: + resolution: {integrity: sha512-Y7Wt51eKJSyi80hFrJCePGGNo5ktJCslFuboqJsbf57CCPcm5zztluPlc4/aD8sWsKvlwatezpV4U1efk8kpjg==} engines: {node: '>= 0.4'} array.prototype.tosorted@1.1.4: resolution: {integrity: sha512-p6Fx8B7b7ZhL/gmUsAy0D15WhvDccw3mnGNbZpi3pmeJdxtWsj2jEaI4Y6oo3XiHfzuSgPwKc04MYt6KgvC/wA==} engines: {node: '>= 0.4'} - arraybuffer.prototype.slice@1.0.3: - resolution: {integrity: sha512-bMxMKAjg13EBSVscxTaYA4mRc5t1UAXa2kXiGTNfZ079HIWXEkKmkgFrh/nJqamaLSrXO5H4WFFkPEaLJWbs3A==} + arraybuffer.prototype.slice@1.0.4: + resolution: {integrity: sha512-BNoCY6SXXPQ7gF2opIP4GBE+Xw7U+pHMYKuzjgCN3GwiaIR09UUeKfheyIry77QtrCBlC0KK0q5/TER/tYh3PQ==} engines: {node: '>= 0.4'} arrify@3.0.0: @@ -5860,8 +6489,8 @@ packages: resolution: {integrity: sha512-RE3mdQ7P3FRSe7eqCWoeQ/Z9QXrtniSjp1wUjt5nRC3WIpz5rSCve6o3fsZ2aCpJtrZjSZgjwXAoTO5k4tEI0w==} engines: {node: '>=4'} - axios@1.7.7: - resolution: {integrity: sha512-S4kL7XrjgBmvdGut0sN3yJxqYzrDOnivkBiN0OFs6hLiUam3UPvswUo0kqGyhqUZGEOytHyumEdXsAkgCOUf3Q==} + axios@1.7.9: + resolution: {integrity: sha512-LhLcE7Hbiryz8oMDdDptSrWowmB4Bl6RCt6sIJKpRB4XtVf0iEgewX3au/pJqm+Py1kCASkb/FFKjxQaLtxJvw==} axobject-query@4.1.0: resolution: {integrity: sha512-qIj0G9wZbMGNLjLmg1PT6v2mE9AH2zlnADJD/2tC6E00hgmhUOfEB6greHPAfLRSufHqROIUTkw6E+M3lH0PTQ==} @@ -5932,8 +6561,8 @@ packages: bare-path@2.1.3: resolution: {integrity: sha512-lh/eITfU8hrj9Ru5quUp0Io1kJWIk1bTjzo7JH1P5dWmQ2EL4hFUlfI8FonAhSlgIfhn63p84CDY/x+PisgcXA==} - bare-stream@2.3.2: - resolution: {integrity: sha512-EFZHSIBkDgSHIwj2l2QZfP4U5OcD4xFAOwhSb/vlr9PIqyGJGvB/nfClJbcnh3EY4jtPE4zsb5ztae96bVF79A==} + bare-stream@2.6.1: + resolution: {integrity: sha512-eVZbtKM+4uehzrsj49KtCy3Pbg7kO1pJ3SKZ1SFrIH/0pnj9scuGGgUlNDf/7qS8WKtGdiJY5Kyhs/ivYPTB/g==} base64-js@1.5.1: resolution: {integrity: sha512-AKpaYlHn8t4SVbOHCy+b5+KKgvR4vrsD8vbvrbiQJps7fKDTkjkDry6ji0rUJjC0kzbNePLwzxq8iypo41qeWA==} @@ -6009,15 +6638,11 @@ packages: resolution: {integrity: sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==} engines: {node: '>=8'} - browserslist@4.24.2: - resolution: {integrity: sha512-ZIc+Q62revdMcqC6aChtW4jz3My3klmCO1fEmINZY/8J3EpBg5/A/D0AKmBveUh6pgoeycoMkVMko84tuYS+Gg==} + browserslist@4.24.3: + resolution: {integrity: sha512-1CPmv8iobE2fyRMV97dAcMVegvvWKxmq94hkLiAkUGwKVTyDLw33K+ZxiFrREKmmps4rIw6grcCFCnTMSZ/YiA==} engines: {node: ^6 || ^7 || ^8 || ^9 || ^10 || ^11 || ^12 || >=13.7} hasBin: true - bs-logger@0.2.6: - resolution: {integrity: sha512-pd8DCoxmbgc7hyPKOvxtqNcjYoOsABPQdcCUjGp3d42VR2CX1ORhk2A87oqqu5R1kk+76nsxZupkmyd+MVtCog==} - engines: {node: '>= 6'} - bser@2.1.1: resolution: {integrity: sha512-gQxTNE/GAfIIrmHLUE3oJyp5FO6HRBfhjnw4/wMmA63ZGDJnWBmgY/lyQBpnDUkGmAhbSe39tx2d/iTOAfglwQ==} @@ -6060,12 +6685,6 @@ packages: resolution: {integrity: sha512-tjwM5exMg6BGRI+kNmTntNsvdZS1X8BFYS6tnJ2hdH0kVxM6/eVZ2xy+FqStSWvYmtfFMDLIxurorHwDKfDz5Q==} engines: {node: '>=18'} - bundle-require@5.0.0: - resolution: {integrity: sha512-GuziW3fSSmopcx4KRymQEJVbZUfqlCqcq7dvs6TYwKRZiegK/2buMxQTPs6MGlNv50wms1699qYO54R8XfRX4w==} - engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} - peerDependencies: - esbuild: '>=0.18' - byline@5.0.0: resolution: {integrity: sha512-s6webAy+R4SR8XVuJWt2V2rGvhnrhxN+9S15GNuTK3wKPOXFF6RNc+8ug2XhH+2s4f+uudG4kUVYmYOQWL2g0Q==} engines: {node: '>=0.10.0'} @@ -6074,10 +6693,6 @@ packages: resolution: {integrity: sha512-/Nf7TyzTx6S3yRJObOAV7956r8cr2+Oj8AC5dt8wSP3BQAoeX58NoHyCU8P8zGkNXStjTSi6fzO6F0pBdcYbEg==} engines: {node: '>= 0.8'} - cac@6.7.14: - resolution: {integrity: sha512-b6Ilus+c3RrdDk+JhLKUAQfzzgLEPy6wcXqS7f/xe1EETvsDP6GORG7SFuOs6cID5YkqchW/LXZbX5bc8j7ZcQ==} - engines: {node: '>=8'} - cache-content-type@1.0.1: resolution: {integrity: sha512-IKufZ1o4Ut42YUrZSo8+qnMTrFuKkvyoLXUywKz9GJ5BrhOFGhLdkx9sG4KAnVvbY6kEcSFjLQul+DVmBm2bgA==} engines: {node: '>= 6.0.0'} @@ -6094,10 +6709,21 @@ packages: resolution: {integrity: sha512-9EtFOZR8g22CL7BWjJ9BUx1+A/djkofnyW3aOXZORNW2kxoUpx2h+uN2cOqwPmFhnpVmxg+KW2OjOSgChTEvsQ==} engines: {node: '>=6'} - call-bind@1.0.7: - resolution: {integrity: sha512-GHTSNSYICQ7scH7sZ+M2rFopRoLh8t2bLSW6BbgrtLsahOIB5iyAVJf9GjWK3cYTDaMj4XdBpM1cA6pIS0Kv2w==} + call-bind-apply-helpers@1.0.1: + resolution: {integrity: sha512-BhYE+WDaywFg2TBWYNXAE+8B1ATnThNBqXHP5nQu0jWJdVvY2hvkpyB3qOmtmDePiS5/BDQ8wASEWGMWRG148g==} + engines: {node: '>= 0.4'} + + call-bind@1.0.8: + resolution: {integrity: sha512-oKlSFMcMwpUg2ednkhQ454wfWiU/ul3CkJe/PEHcTKuiX6RpbehUiFMXu13HalGZxfUwCQzZG747YXBn1im9ww==} + engines: {node: '>= 0.4'} + + call-bound@1.0.3: + resolution: {integrity: sha512-YTd+6wGlNlPxSuri7Y6X8tY2dmm12UMH66RpKMhiX6rsk5wXXnYgbUcOt8kiS31/AjfoTOvCsE+w8nZQLQnzHA==} engines: {node: '>= 0.4'} + call-me-maybe@1.0.2: + resolution: {integrity: sha512-HpX65o1Hnr9HH25ojC1YGs7HCQLq0GCOibSaWER0eNpgJ/Z1MZv2mTc7+xh6WOPxbRVcmgbv4hGU+uSQ/2xFZQ==} + callsite@1.0.0: resolution: {integrity: sha512-0vdNRFXn5q+dtOqjfFtmtlI9N2eVZ7LMyEV2iKC5mEEFvSg/69Ml6b/WU2qF8W1nLRa0wiSrDT3Y5jOHZCwKPQ==} @@ -6124,12 +6750,16 @@ packages: resolution: {integrity: sha512-8WB3Jcas3swSvjIeA2yvCJ+Miyz5l1ZmB6HFb9R1317dt9LCQoswg/BGrmAmkWVEszSrrg4RwmO46qIm2OEnSA==} engines: {node: '>=16'} - caniuse-lite@1.0.30001680: - resolution: {integrity: sha512-rPQy70G6AGUMnbwS1z6Xg+RkHYPAi18ihs47GH0jcxIG7wArmPgY3XbS2sRdBbxJljp3thdT8BIqv9ccCypiPA==} + caniuse-lite@1.0.30001688: + resolution: {integrity: sha512-Nmqpru91cuABu/DTCXbM2NSRHzM2uVHfPnhJ/1zEAJx/ILBRVmz3pzH4N7DZqbdG0gWClsCC05Oj0mJ/1AWMbA==} ccount@2.0.1: resolution: {integrity: sha512-eyrF0jiFpY+3drT6383f1qhkbGsLSifNAjA61IUjZjmLCWjItY6LB9ft9YhoDgwfmclB2zhu51Lc7+95b8NRAg==} + chalk-template@1.1.0: + resolution: {integrity: sha512-T2VJbcDuZQ0Tb2EWwSotMPJjgpy1/tGee1BTpUNsGZ/qgNjV2t7Mvu+d4600U564nbLesN1x2dPL+xii174Ekg==} + engines: {node: '>=14.16'} + chalk@2.4.2: resolution: {integrity: sha512-Mti+f9lpJNcwF4tWV8/OrTTtF1gZi+f8FqlyAdouralcFWFQWF2+NgCHShjkCb+IFBLq9buZwE1xckQU4peSuQ==} engines: {node: '>=4'} @@ -6178,10 +6808,6 @@ packages: resolution: {integrity: sha512-7VT13fmjotKpGipCW9JEQAusEPE+Ei8nl6/g4FBAmIm0GOOLMua9NDDo/DWp0ZAxCr3cPq5ZpBqmPAQgDda2Pw==} engines: {node: '>= 8.10.0'} - chokidar@4.0.1: - resolution: {integrity: sha512-n8enUVCED/KVRQlab1hr3MVpcVMvxtZjmEa956u+4YijlmQED223XMSYj2tLuKvr4jcCTzNNMpQDUer72MMmzA==} - engines: {node: '>= 14.16.0'} - chownr@1.1.4: resolution: {integrity: sha512-jJ0bqzaylmJtVnNgzTeSOs8DPavpbYgEr/b0YL8/2GO3xJEhInFmhKMUnEJQjZumK7KXGFhUy89PrsJWlakBVg==} @@ -6189,6 +6815,10 @@ packages: resolution: {integrity: sha512-bIomtDF5KGpdogkLd9VspvFzk9KfpyyGlS8YFVZl7TGPBHL5snIOnxeshwVgPteQ9b4Eydl+pVbIyE1DcvCWgQ==} engines: {node: '>=10'} + chownr@3.0.0: + resolution: {integrity: sha512-+IxzY9BZOQd/XuYPRmrvEVjF/nqj5kgT4kEq7VofrDoM1MxoRjEWkrCC3EtLi59TVawxTAn+orJwFQcrqEN1+g==} + engines: {node: '>=18'} + chrome-trace-event@1.0.4: resolution: {integrity: sha512-rNjApaLzuwaOTjCiT8lSDdGN1APCiqkChLMJxJPWLunPAt5fy8xgU9/jNOchV84wfIxrA0lRQB7oCT8jrn/wrQ==} engines: {node: '>=6.0'} @@ -6197,10 +6827,6 @@ packages: resolution: {integrity: sha512-NIxF55hv4nSqQswkAeiOi1r83xy8JldOFDTWiug55KBu9Jnblncd2U6ViHmYgHf01TPZS77NJBhBMKdWj9HQMQ==} engines: {node: '>=8'} - ci-info@4.0.0: - resolution: {integrity: sha512-TdHqgGf9odd8SXNuxtUBVx8Nv+qZOejE6qyqiy5NtbYYQOeFa6zmHkxlPzmaLxWWHsU6nJmB7AETdVPi+2NBUg==} - engines: {node: '>=8'} - ci-info@4.1.0: resolution: {integrity: sha512-HutrvTNsF48wnxkzERIXOe5/mlcfFcbfCmwcg6CJnizbSue78AbDt+1cgl26zwn61WFxhcPykPfZrbqjGmBb4A==} engines: {node: '>=8'} @@ -6235,6 +6861,10 @@ packages: resolution: {integrity: sha512-8lgKz8LmCRYZZQDpRyT2m5rKJ08TnU4tR9FFFW2rxpxR1FzWi4PQ/NfyODchAatHaUgnSPVcx/R5w6NuTBzFiw==} engines: {node: '>=4'} + cli-cursor@4.0.0: + resolution: {integrity: sha512-VGtlMu3x/4DOtIUwEkRezxUZ2lBacNJCHash0N0WeZDBS+7Ux1dm3XWAgWYxLJFMMdOeXMHXorshEFhbMSGelg==} + engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} + cli-cursor@5.0.0: resolution: {integrity: sha512-aCj4O5wKyszjMmDT4tZj93kxyydN/K5zPWSCe6/0AV/AA1pqe5ZBIw0a2ZfPQV7lL5/yb5HsUreJ6UFAF1tEQw==} engines: {node: '>=18'} @@ -6341,6 +6971,10 @@ packages: resolution: {integrity: sha512-y4Mg2tXshplEbSGzx7amzPwKKOCGuoSRP/CjEdwwk0FOGlUbq6lKuoyDZTNZkmxHdJtp54hdfY/JUrdL7Xfdug==} engines: {node: '>=14'} + commander@12.1.0: + resolution: {integrity: sha512-Vw8qHK3bZM9y/P10u3Vib8o/DdkvA2OtPtZvD871QKjy74Wj1WSKFILMPRPSdUSx5RFK1arlJzEtA4PkFgnbuA==} + engines: {node: '>=18'} + commander@2.20.3: resolution: {integrity: sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==} @@ -6454,6 +7088,9 @@ packages: core-js-pure@3.39.0: resolution: {integrity: sha512-7fEcWwKI4rJinnK+wLTezeg2smbFFdSBP6E2kQZNbnzM2s1rpKQ6aaRteZSSg7FLU3P0HGGVo/gbpfanU36urg==} + core-js@3.39.0: + resolution: {integrity: sha512-raM0ew0/jJUqkJ0E6e8UDtl+y/7ktFivgWvqw8dNSQeNWoSDLvQ1H/RN3aPXB9tBd4/FhyR4RDPGhsNIMsAn7g==} + core-util-is@1.0.3: resolution: {integrity: sha512-ZQBvi1DcpJ4GDqanjucZ2Hj3wEO5pZDS89BWbkcrvdxksJorwUDDZamX9ldFkp9aw2lmBDLgkObEA4DWNJ9FYQ==} @@ -6521,9 +7158,6 @@ packages: engines: {node: '>=10.14', npm: '>=6', yarn: '>=1'} hasBin: true - cross-spawn@5.1.0: - resolution: {integrity: sha512-pTgQJ5KC0d2hcY8eyL1IzlBPYjTkyH72XRZPnLyKus2mBfNjQs3klqbJU2VILqZryAZUt9JOb3h/mWMy23/f5A==} - cross-spawn@7.0.6: resolution: {integrity: sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA==} engines: {node: '>= 8'} @@ -6535,12 +7169,12 @@ packages: resolution: {integrity: sha512-x8dy3RnvYdlUcPOjkEHqozhiwzKNSq7GcPuXFbnyMOCHxX8V3OgIg/pYuabl2sbUPfIJaeAQB7PMOK8DFIdoRA==} engines: {node: '>=12'} - css-loader@6.11.0: - resolution: {integrity: sha512-CTJ+AEQJjq5NzLga5pE39qdiSV56F8ywCIsqNIRF0r7BDgWsN25aazToqAFg7ZrtA/U016xudB3ffgweORxX7g==} - engines: {node: '>= 12.13.0'} + css-loader@7.1.2: + resolution: {integrity: sha512-6WvYYn7l/XEGN8Xu2vWFt9nVzrCn39vKyTEFf/ExEyoksJjjSZV/0/35XPlMbpnr6VGhZIUg5yJrL8tGfes/FA==} + engines: {node: '>= 18.12.0'} peerDependencies: '@rspack/core': 0.x || 1.x - webpack: ^5.0.0 + webpack: ^5.27.0 peerDependenciesMeta: '@rspack/core': optional: true @@ -6655,6 +7289,15 @@ packages: supports-color: optional: true + debug@4.4.0: + resolution: {integrity: sha512-6WTZ/IxCY/T6BALoZHaE4ctp9xm+Z5kY/pzYaCHRFeyVhojxlrm+46y68HA6hr0TcwEssoxNiDEUJQjfPZ/RYA==} + engines: {node: '>=6.0'} + peerDependencies: + supports-color: '*' + peerDependenciesMeta: + supports-color: + optional: true + decache@4.6.2: resolution: {integrity: sha512-2LPqkLeu8XWHU8qNCS3kcF6sCcb5zIzvWaAHYSvPfwhdd7mHuah29NssMzrTYyHN4F5oFy2ko9OBYxegtU0FEw==} @@ -6664,6 +7307,10 @@ packages: decode-named-character-reference@1.0.2: resolution: {integrity: sha512-O8x12RzrUF8xyVcY0KJowWsmaJxQbmy0/EtnNtHRpsOcT7dFk5W598coHqBVpmWo1oQQfsCqfCmkZN5DJrZVdg==} + decode-uri-component@0.4.1: + resolution: {integrity: sha512-+8VxcR21HhTy8nOt6jf20w0c9CADrw1O8d+VZ/YzzCt4bJ3uBjw+D1q2osAB8RnpwwaeYBxy0HyKQxD5JBMuuQ==} + engines: {node: '>=14.16'} + decompress-response@6.0.0: resolution: {integrity: sha512-aW35yZM6Bb/4oJlZncMH2LCoZtJXTRxES17vE3hoRiowU2kWHaJKFkSBDnDR+cm9J+9QhXmREyIfv0pji9ejCQ==} engines: {node: '>=10'} @@ -6757,6 +7404,10 @@ packages: resolution: {integrity: sha512-reYkTUJAZb9gUuZ2RvVCNhVHdg62RHnJ7WJl8ftMi4diZ6NWlciOzQN88pUhSELEwflJht4oQDv0F0BMlwaYtA==} engines: {node: '>=8'} + detect-indent@7.0.1: + resolution: {integrity: sha512-Mc7QhQ8s+cLrnUfU/Ji94vG/r8M26m8f++vyres4ZoojaRDpZ1eSIh/EpzLNwlWuvzSZ3UbDFspjFvTDXe6e/g==} + engines: {node: '>=12.20'} + detect-libc@1.0.3: resolution: {integrity: sha512-pGjwhsmsp4kL2RTz08wcOlGN83otlqHeD/Z5T8GXZB+/YcpQ/dgo+lbU8ZsGxV0HIvqqxo9l7mqYwyYMD9bKDg==} engines: {node: '>=0.10'} @@ -6770,6 +7421,10 @@ packages: resolution: {integrity: sha512-TLz+x/vEXm/Y7P7wn1EJFNLxYpUD4TgMosxY6fAVJUnJMbupHBOncxyWUG9OpTaH9EBD7uFI5LfEgmMOc54DsA==} engines: {node: '>=8'} + detect-newline@4.0.1: + resolution: {integrity: sha512-qE3Veg1YXzGHQhlA6jzebZN2qVf6NX+A7m7qlhCGG30dJixrAQhYOsJjsnBjJkCSmuOPpCk30145fr8FV0bzog==} + engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} + detect-node@2.1.0: resolution: {integrity: sha512-T0NIuQpnTvFDATNuHN5roPwSBG83rFsuO+MXXH9/3N1eFbn4wcPjttvjMLEPWJ0RGUYgQE7cGgS3tNxbqCGM7g==} @@ -6897,6 +7552,10 @@ packages: resolution: {integrity: sha512-IrPdXQsk2BbzvCBGBOTmmSH5SodmqZNt4ERAZDmW4CT+tL8VtvinqywuANaFu4bOMWki16nqf0e4oC0QIaDr/g==} engines: {node: '>=10'} + dunder-proto@1.0.0: + resolution: {integrity: sha512-9+Sj30DIu+4KvHqMfLUGLFYL2PkURSYMVXJyXe92nFRvlYq5hBjLEhblKB+vkd/WVlUYMWigiY07T91Fkk0+4A==} + engines: {node: '>= 0.4'} + eastasianwidth@0.2.0: resolution: {integrity: sha512-I88TYZWc9XiYHRQ4/3c5rjjfgkjhLyW2luGIheGERbNQ6OY7yTybanSpDXZa8y7VUP9YmDcYa+eyq4ca7iLqWA==} @@ -6909,13 +7568,11 @@ packages: ee-first@1.1.1: resolution: {integrity: sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow==} - ejs@3.1.10: - resolution: {integrity: sha512-UeJmFfOrAQS8OJWPZ4qtgHyWExa088/MtK5UEyoJGFH67cDEXkZSviOiKRCZ4Xij0zxI3JECgYs3oKx+AizQBA==} - engines: {node: '>=0.10.0'} - hasBin: true + effect@3.6.5: + resolution: {integrity: sha512-NhopZTAKljaAlR0CEroOAJJngdqg7bzlnWcDrCwh4d2WNVohVbBtUS4SGqLt8tUy7IFsTWATYiUtmhDG+YELjA==} - electron-to-chromium@1.5.62: - resolution: {integrity: sha512-t8c+zLmJHa9dJy96yBZRXGQYoiCEnHYgFwn1asvSPZSUdVxnB62A4RASd7k41ytG3ErFBA0TpHlKg9D9SQBmLg==} + electron-to-chromium@1.5.73: + resolution: {integrity: sha512-8wGNxG9tAG5KhGd3eeA0o6ixhiNdgr0DcHWm85XPCphwZgD1lIEoi6t3VERayWao7SF7AAZTw6oARGJeVjH8Kg==} emittery@0.13.1: resolution: {integrity: sha512-DeWwawk6r5yR9jFgnDKYt4sLS0LmHJJi3ZOnb5/JdbYwj3nW+FxQnHIjhBKz8YLC7oRNPVM9NQ47I3CVx34eqQ==} @@ -6993,8 +7650,8 @@ packages: resolution: {integrity: sha512-vlmniQ0WNPwXqA0BnmwV3Ng7HxiGlh6r5U6JcTMNx8OilcAGqVJBHJcPjqOMaczU9fRuRK5Px2BdVyPRnKMMVQ==} engines: {node: '>= 0.4'} - es-define-property@1.0.0: - resolution: {integrity: sha512-jxayLKShrEqqzJ0eumQbVhTYQM27CfT1T35+gCgDFoL82JLsXqTJ76zv6A0YLOgEnLUMvLzsDsGIrl8NFpT2gQ==} + es-define-property@1.0.1: + resolution: {integrity: sha512-e3nRfgfUZ4rNGL232gUgX06QNyyez04KdjFrF+LTRoOXmrOgFKDg4BCdsjW8EnT69eqdYGmRpJwiPVYNrCaW3g==} engines: {node: '>= 0.4'} es-errors@1.3.0: @@ -7019,8 +7676,8 @@ packages: es-shim-unscopables@1.0.2: resolution: {integrity: sha512-J3yBRXCzDu4ULnQwxyToo/OjdMx6akgVC7K6few0a7F/0wLtmKKN7I73AH5T2836UuXRqN7Qg+IIUw/+YJksRw==} - es-to-primitive@1.2.1: - resolution: {integrity: sha512-QCOllgZJtaUo9miYBcLChTUaHNjJF3PYs1VidD7AwiEj1kYxKeQTctLAezAOH5ZKRH0g2IgPn6KwB4IT8iRpvA==} + es-to-primitive@1.3.0: + resolution: {integrity: sha512-w+5mJ3GuFL+NjVtJlvydShqE1eN3h3PbI7/5LAsYJP/2qtuMXjfL2LpHSRqo4b4eSF5K/DH1JXKUAHSB2UW50g==} engines: {node: '>= 0.4'} es6-promisify@6.1.1: @@ -7041,11 +7698,6 @@ packages: engines: {node: '>=18'} hasBin: true - esbuild@0.24.0: - resolution: {integrity: sha512-FuLPevChGDshgSicjisSooU0cemp/sGXR841D5LHMB7mTVOmsEHcAxaH3irL53+8YDIeVNQEySh4DaYU/iuPqQ==} - engines: {node: '>=18'} - hasBin: true - escalade@3.2.0: resolution: {integrity: sha512-WUj2qlxaQtO4g6Pq5c29GTcWGDyd8itL8zTlipgECz3JesAiiOKotd8JU6otB3PACgG6xkJUyVhboMS+bje/jA==} engines: {node: '>=6'} @@ -7078,8 +7730,8 @@ packages: engines: {node: '>=6.0'} hasBin: true - eslint-compat-utils@0.5.1: - resolution: {integrity: sha512-3z3vFexKIEnjHE3zCMRo6fn/e44U7T1khUjg+Hp0ZQMCigh28rALD0nPFBcGZuiLC5rLZa2ubQHDRln09JfU2Q==} + eslint-compat-utils@0.6.4: + resolution: {integrity: sha512-/u+GQt8NMfXO8w17QendT4gvO5acfxQsAKirAt0LVxDnr2N8YLCVbregaNc/Yhp7NM128DwCaRvr8PLDfeNkQw==} engines: {node: '>=12'} peerDependencies: eslint: '>=6.0.0' @@ -7155,18 +7807,18 @@ packages: peerDependencies: eslint: '>=8.0.0' - eslint-plugin-package-json@0.12.2: - resolution: {integrity: sha512-saWJz3wcAUg9sHmKycKaut/dmTLtiq56VNh4yQlW6EQd1GhKi1MQ5lCf/aXWCHRCXbWozFhG1Q6FDce7Q5T9bw==} + eslint-plugin-package-json@0.18.0: + resolution: {integrity: sha512-ZyDaHm3c+vDMNoOVyO+KcJxlBnNNFeRML8Ui/WATrQ+F/dyAIR6aIyu50691gll3dCBT26llL2DXMre30x23ug==} engines: {node: '>=18'} peerDependencies: eslint: '>=8.0.0' jsonc-eslint-parser: ^2.0.0 - eslint-plugin-react-hooks@4.6.2: - resolution: {integrity: sha512-QzliNJq4GinDBcD8gPB5v0wh6g8q3SUi6EFF0x8N/BL9PoVs0atuGc47ozMRyOWAKdwaZ5OnbOEa3WR+dSGKuQ==} + eslint-plugin-react-hooks@5.1.0: + resolution: {integrity: sha512-mpJRtPgHN2tNAvZ35AMfqeB3Xqeo273QxrHJsbBEPWODRM4r0yB6jfoROqKEYrOn27UtRPpcpHc2UqyBSuUNTw==} engines: {node: '>=10'} peerDependencies: - eslint: ^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0-0 + eslint: ^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0-0 || ^9.0.0 eslint-plugin-react@7.37.2: resolution: {integrity: sha512-EsTAnj9fLVr/GZleBLFbj/sSuXeWmp1eXIN60ceYnZveqEaUCyW4X+Vh4WTdUhCkW4xutXYqTXCUSyqD4rB75w==} @@ -7174,20 +7826,20 @@ packages: peerDependencies: eslint: ^3 || ^4 || ^5 || ^6 || ^7 || ^8 || ^9.7 - eslint-plugin-storybook@0.8.0: - resolution: {integrity: sha512-CZeVO5EzmPY7qghO2t64oaFM+8FTaD4uzOEjHKp516exyTKo+skKAL9GI3QALS2BXhyALJjNtwbmr1XinGE8bA==} + eslint-plugin-storybook@0.11.1: + resolution: {integrity: sha512-yGKpAYkBm/Q2hZg476vRUAvd9lAccjjSvzU5nYy3BSQbKTPy7uopx7JEpwk2vSuw4weTMZzWF64z9/gp/K5RCg==} engines: {node: '>= 18'} peerDependencies: eslint: '>=6' - eslint-plugin-testing-library@6.4.0: - resolution: {integrity: sha512-yeWF+YgCgvNyPNI9UKnG0FjeE2sk93N/3lsKqcmR8dSfeXJwFT5irnWo7NjLf152HkRzfoFjh3LsBUrhvFz4eA==} - engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0, npm: '>=6'} + eslint-plugin-testing-library@7.1.1: + resolution: {integrity: sha512-nszC833aZPwB6tik1nMkbFqmtgIXTT0sfJEYs0zMBKMlkQ4to2079yUV96SvmLh00ovSBJI4pgcBC1TiIP8mXg==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0, pnpm: ^9.14.0} peerDependencies: - eslint: ^7.5.0 || ^8.0.0 || ^9.0.0 + eslint: ^8.57.0 || ^9.0.0 - eslint-plugin-yml@1.15.0: - resolution: {integrity: sha512-leC8APYVOsKyWUlvRwVhewytK5wS70BfMqIaUplFstRfzCoVp0YoEroV4cUEvQrBj93tQ3M9LcjO/ewr6D4kjA==} + eslint-plugin-yml@1.16.0: + resolution: {integrity: sha512-t4MNCetPjTn18/fUDlQ/wKkcYjnuLYKChBrZ0qUaNqRigVqChHWzTP8SrfFi5s4keX3vdlkWRSu8zHJMdKwxWQ==} engines: {node: ^14.17.0 || >=16.0.0} peerDependencies: eslint: '>=6.0.0' @@ -7214,6 +7866,10 @@ packages: deprecated: This version is no longer supported. Please see https://eslint.org/version-support for other options. hasBin: true + espree@10.3.0: + resolution: {integrity: sha512-0QYC8b24HWY8zjRnDTL6RiHfDbAWn63qb4LMj1Z4b076A4une81+z03Kg7l7mn/48PUTqoLptSXez8oknU8Clg==} + engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} + espree@9.6.1: resolution: {integrity: sha512-oruZaFkjorTpF32kDSI5/75ViwGeZginGGy2NoOSg3Q9bnwlnmDm4HLnkl0RE3n+njDXR037aY1+x58Z/zFdwQ==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} @@ -7306,6 +7962,10 @@ packages: resolution: {integrity: sha512-YSFlK1Ee0/GC8QaO91tHcDxJiE/X4FbpAyQWkxAvG6AXCuR65YzK8ua6D9hvi/TzUfZMpc+BwuM1IPw8fmQBiQ==} engines: {node: '>= 0.10.0'} + express@4.21.2: + resolution: {integrity: sha512-28HqgMZAmih1Czt9ny7qr6ek2qddF4FclbMzwhCREB6OFfH+rXAnuNCwo1/wFvrtbgsQDb4kSbX9de9lFbrXnA==} + engines: {node: '>= 0.10.0'} + ext-list@2.2.2: resolution: {integrity: sha512-u+SQgsubraE6zItfVA0tBuCBhfU9ogSRnsvygI7wht9TS510oLkBRXBsqopeUG/GBOIQyKZO9wjTqIu/sf5zFA==} engines: {node: '>=0.10.0'} @@ -7329,6 +7989,10 @@ packages: engines: {node: '>= 10.17.0'} hasBin: true + fast-check@3.21.0: + resolution: {integrity: sha512-QpmbiqRFRZ+SIlBJh6xi5d/PgXciUc/xWKc4Vi2RWEHHIRx6oM3f0fWNna++zP9VB5HUBTObUK9gTKQP3vVcrQ==} + engines: {node: '>=8.0.0'} + fast-content-type-parse@1.1.0: resolution: {integrity: sha512-fBHHqSTFLVnR61C+gltJuE5GkVQMV0S2nqUO8TJ+5Z3qAKG8vAx4FKai1s5jq/inV1+sREynIWSuQ6HgoSXpDQ==} @@ -7445,9 +8109,6 @@ packages: file-uri-to-path@1.0.0: resolution: {integrity: sha512-0Zt+s3L7Vf1biwWZ29aARiVYLx7iMGnEUl9x33fbB/j3jR81u/O2LbqK+Bm1CDSNDKVtJ/YjwY7TUd5SkeLQLw==} - filelist@1.0.4: - resolution: {integrity: sha512-w1cEuf3S+DrLCQL7ET6kz+gmlJdbq9J7yXCSjK/OZCPA+qEN1WyF4ZAf0YYJa4/shHJra2t/d/r8SV4Ji+x+8Q==} - filename-reserved-regex@3.0.0: resolution: {integrity: sha512-hn4cQfU6GOT/7cFHXBqeBg2TbrMBgdD0kcjLhvSQYYwm3s4B6cjvBfb7nBALJLAXqmU5xajSa7X2NnUud/VCdw==} engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} @@ -7599,8 +8260,8 @@ packages: function-bind@1.1.2: resolution: {integrity: sha512-7XHNxH7qX9xG5mIwxkhumTox/MIRNcOgDrxWsMt2pAr23WHp6MrRlN7FBSFpCpr+oVO0F744iUgR82nJMfG2SA==} - function.prototype.name@1.1.6: - resolution: {integrity: sha512-Z5kx79swU5P27WEayXM1tBi5Ze/lbIyiNgU3qyXUOf9b2rgXYyF9Dy9Cx+IQv/Lc8WCG6L82zwUPpSS9hGehIg==} + function.prototype.name@1.1.7: + resolution: {integrity: sha512-2g4x+HqTJKM9zcJqBSpjoRmdcPFtJM60J3xJisTQSXBWka5XqyBN/2tNUgma1mztTXyDuUsEtYe5qcs7xYzYQA==} engines: {node: '>= 0.4'} functions-have-names@1.2.3: @@ -7639,8 +8300,8 @@ packages: resolution: {integrity: sha512-vpeMIQKxczTD/0s2CdEWHcb0eeJe6TFjxb+J5xgX7hScxqrGuyjmv4c1D4A/gelKfyox0gJJwIHF+fLjeaM8kQ==} engines: {node: '>=18'} - get-intrinsic@1.2.4: - resolution: {integrity: sha512-5uYhsJH8VJBTv7oslg4BznJYhDoRI6waYCxMmCdnTrcCrHA/fCFKoTFz2JKKE0HdDFUF7/oQuhzumXJK7paBRQ==} + get-intrinsic@1.2.6: + resolution: {integrity: sha512-qxsEs+9A+u85HhllWJJFicJfPDhRmjzoYdl64aMWW9yRIJmSyxdn8IEkuIM530/7T+lv0TIHd8L6Q/ra0tEoeA==} engines: {node: '>= 0.4'} get-package-name@2.2.0: @@ -7662,6 +8323,10 @@ packages: resolution: {integrity: sha512-BrGGraKm2uPqurfGVj/z97/zv8dPleC6x9JBNRTrDNtCkkRF4rPwrQXFgL7+I+q8QSdU4ntLQX2D7KIxSy8nGw==} engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} + get-stdin@9.0.0: + resolution: {integrity: sha512-dVKBjfWisLAicarI2Sf+JuBE/DghV4UzNAVe9yhEJuzeREd3JhOTE9cUaJTeSa77fsbQUK3pcOpJfM59+VKZaA==} + engines: {node: '>=12'} + get-stream@5.2.0: resolution: {integrity: sha512-nBF+F1rAZVCu/p7rjzgA+Yb4lfYXrpl7a6VmJrU8wF9I1CKvP/QwPNZHnOlwbTkY6dvtFIzFMSyQXbLoTQPRpA==} engines: {node: '>=8'} @@ -7685,8 +8350,8 @@ packages: resolution: {integrity: sha512-TOiP1nwLsH5shG85Yt6v6Kjq5JU/44jXyEpbcfPgmj3C829yeXIlx9nAEwQRaxtRF3SJinn2lz7XUkfG9W/U4g==} engines: {node: ^14.18.0 || ^16.13.0 || >=18.0.0} - git-hooks-list@1.0.3: - resolution: {integrity: sha512-Y7wLWcrLUXwk2noSka166byGCvhMtDRpgHdzCno1UQv/n/Hegp++a2xBWJL1lJarnKD3SWaljD+0z1ztqxuKyQ==} + git-hooks-list@3.1.0: + resolution: {integrity: sha512-LF8VeHeR7v+wAbXqfgRlTSX/1BJR9Q1vEMR8JAz1cEg6GX07+zyj3sAdDvYjj/xnlIfVuGgj4qBei1K3hKH+PA==} git-repo-info@2.1.1: resolution: {integrity: sha512-8aCohiDo4jwjOwma4FmYFd3i97urZulL8XL24nIPxuE+GZnfsAyy/g2Shqx6OjUiFKUXZM+Yy+KHnOmmA3FVcg==} @@ -7750,10 +8415,6 @@ packages: resolution: {integrity: sha512-DpLKbNU4WylpxJykQujfCcwYWiV/Jhm50Goo0wrVILAv5jOr9d+H+UR3PhSCD2rCCEIg0uc+G+muBTwD54JhDQ==} engines: {node: '>= 0.4'} - globby@10.0.0: - resolution: {integrity: sha512-3LifW9M4joGZasyYPz2A1U74zbC/45fvpXUvO/9KbSa+VV0aGZarWkfdgKyR9sExNP0t0x0ss/UMJpNpcaTspw==} - engines: {node: '>=8'} - globby@11.1.0: resolution: {integrity: sha512-jhIXaOzy1sb8IyocaruWSn1TjmnBVs8Ayhcy83rmxNJ8q2uWKCAj3CnJY+KpGSXCueAPc0i05kVvVKtP1t9S3g==} engines: {node: '>=10'} @@ -7762,13 +8423,18 @@ packages: resolution: {integrity: sha512-Y1zNGV+pzQdh7H39l9zgB4PJqjRNqydvdYCDG4HFXM4XuvSaQQlEc91IU1yALL8gUTDomgBAfz3XJdmUS+oo0w==} engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} + globby@14.0.2: + resolution: {integrity: sha512-s3Fq41ZVh7vbbe2PN3nrW7yC7U7MFVc5c98/iTl9c2GawNMKx/J648KQRW6WKkuU8GIbbh2IXfIRQjOZnXcTnw==} + engines: {node: '>=18'} + gonzales-pe@4.3.0: resolution: {integrity: sha512-otgSPpUmdWJ43VXyiNgEYE4luzHCL2pz4wQ0OnDluC6Eg4Ko3Vexy/SrSynglw/eR+OhkzmqFCZa/OFa/RgAOQ==} engines: {node: '>=0.6.0'} hasBin: true - gopd@1.0.1: - resolution: {integrity: sha512-d65bNlIadxvpb/A2abVdlqKqV563juRnZ1Wtk6s1sIR8uNsXR70xqIzVqxVf1eTqDunwT2MkczEeaezCKTZhwA==} + gopd@1.2.0: + resolution: {integrity: sha512-ZUKRh6/kUFoAiTAtTYPZJ3hw9wNxx+BIBOijnlG9PnrJsCcSjs1wyyD6vJpaYtgnzDrKYRSqf3OO6Rfa93xsRg==} + engines: {node: '>= 0.4'} got@12.6.1: resolution: {integrity: sha512-mThBblvlAF1d4O5oqyvN+ZxLAYwIJK7bpMxgYqPD9okW0C3qm5FFn7k811QrcuEBwaogR3ngOFoCfs6mRv7teQ==} @@ -7783,8 +8449,8 @@ packages: graphemer@1.4.0: resolution: {integrity: sha512-EtKwoO6kxCL9WO5xipiHTZlSzBm7WLT627TqC/uVRd0HKmq8NXyebnNYxDoBi7wt8eTWrUrKXCOVaFq9x1kgag==} - graphql@16.9.0: - resolution: {integrity: sha512-GGTKBX4SD7Wdb8mqeDLni2oaRGYQWjWHGKPQ24ZMnUtKfcsVoiv4uX8+LJr1K6U5VW2Lu1BwJnj7uiori0YtRw==} + graphql@16.10.0: + resolution: {integrity: sha512-AjqGKbDGUFRKIRCP9tCKiIGHyriz2oHEbPIbEtcSLSs4YjReZOIPQQWek4+6hjw62H9QShXHyaGivGiYVLeYFQ==} engines: {node: ^12.22.0 || ^14.16.0 || ^16.0.0 || >=17.0.0} h3@1.13.0: @@ -7811,12 +8477,12 @@ packages: has-property-descriptors@1.0.2: resolution: {integrity: sha512-55JNKuIW+vq4Ke1BjOTjM2YctQIvCT7GFzHwmfZPGo5wnrgkid0YQtnAleFSqumZm4az3n2BS+erby5ipJdgrg==} - has-proto@1.0.3: - resolution: {integrity: sha512-SJ1amZAJUiZS+PhsVLf5tGydlaVB8EdFpaSO4gmiUKUOxk8qzn5AIy4ZeJUmh22znIdk/uMAUT2pl3FxzVUH+Q==} + has-proto@1.2.0: + resolution: {integrity: sha512-KIL7eQPfHQRC8+XluaIw7BHUwwqL19bQn4hzNgdr+1wXoU0KKj6rufu47lhY7KbJR2C6T6+PfyN0Ea7wkSS+qQ==} engines: {node: '>= 0.4'} - has-symbols@1.0.3: - resolution: {integrity: sha512-l3LCuF6MgDNwTDKkdYGEihYjt5pRPbEg46rtlmnSPlUbgmB8LOIrKJbYYFBSbnPaJexMKtiPO8hmeRjRz2Td+A==} + has-symbols@1.1.0: + resolution: {integrity: sha512-1cDNdwJ2Jaohmb3sg4OmKaMBwuC48sYni5HUw2DvsC8LjGTLK9h+eb1X6RyuOHe4hT0ULCW68iomhjUoKUqlPQ==} engines: {node: '>= 0.4'} has-tostringtag@1.0.2: @@ -7857,8 +8523,8 @@ packages: resolution: {integrity: sha512-puUZAUKT5m8Zzvs72XWy3HtvVbTWljRE66cP60bxJzAqf2DgICo7lYTY2IHUmLnNpjYvw5bvmoHvPc0QO2a62w==} engines: {node: ^16.14.0 || >=18.0.0} - hot-shots@10.1.1: - resolution: {integrity: sha512-KTsH9hb+YZHH0IIRf22y0X8mPw8j521W5xRAUeaUlGNBDsf44ixE7ZeyXbUHd/nQ1n04UEhi2ja05/QVOS/CgQ==} + hot-shots@10.2.1: + resolution: {integrity: sha512-tmjcyZkG/qADhcdC7UjAp8D7v7W2DOYFgaZ48fYMuayMQmVVUg8fntKmrjes/b40ef6yZ+qt1lB8kuEDfLC4zw==} engines: {node: '>=10.0.0'} hpack.js@2.1.6: @@ -7960,6 +8626,10 @@ packages: resolution: {integrity: sha512-1e4Wqeblerz+tMKPIq2EMGiiWW1dIjZOksyHWSUm1rmuvw/how9hBHZ38lAGj5ID4Ik6EdkOw7NmWPy6LAwalw==} engines: {node: '>= 14'} + https-proxy-agent@7.0.6: + resolution: {integrity: sha512-vK9P5/iUfdl95AI+JVyUuIcVtd4ofvtrOr3HNtM2yxC9bnMbEdp3x01OhQNnjb8IJYi38VlTE3mBXwcfvywuSw==} + engines: {node: '>= 14'} + human-id@1.0.2: resolution: {integrity: sha512-UNopramDEhHJD+VR+ehk8rOslwSfByxPIZyJRfV739NDhN5LF1fa1MqnzKm2lGTQRjNrjK19Q5fhkgIfjlVUKw==} @@ -7979,11 +8649,16 @@ packages: resolution: {integrity: sha512-Y93lCzHYgGWdrJ66yIktxiaGULYc6oGiABxhcO5AufBeOyoIdZF7bIfLaOrbM0iGIOXQQgxxRrFEnb+Y6w1n4A==} engines: {node: '>=10.18'} - i18next-browser-languagedetector@8.0.0: - resolution: {integrity: sha512-zhXdJXTTCoG39QsrOCiOabnWj2jecouOqbchu3EfhtSHxIB5Uugnm9JaizenOy39h7ne3+fLikIjeW88+rgszw==} + i18next-browser-languagedetector@8.0.2: + resolution: {integrity: sha512-shBvPmnIyZeD2VU5jVGIOWP7u9qNG3Lj7mpaiPFpbJ3LVfHZJvVzKR4v1Cb91wAOFpNw442N+LGPzHOHsten2g==} - i18next@23.16.4: - resolution: {integrity: sha512-9NIYBVy9cs4wIqzurf7nLXPyf3R78xYbxExVqHLK9od3038rjpyOEzW+XB130kZ1N4PZ9inTtJ471CRJ4Ituyg==} + i18next@24.1.0: + resolution: {integrity: sha512-suKlX82AlptkMUO5YRfaAeH4FQyyKvR66jNaubTMiyPPMx7INU6PXAiy3PGULc0q6K+t9nxmDf/TRj9KjAivmw==} + peerDependencies: + typescript: ^5 + peerDependenciesMeta: + typescript: + optional: true iconv-lite@0.4.24: resolution: {integrity: sha512-v3MXnZAcvnywkTUEZomIActle7RXXeedOR31wwl7VlyoXO4Qi9arvSenNQWne1TcRwhCL1HwLI21bEqdpj8/rA==} @@ -8020,8 +8695,8 @@ packages: resolution: {integrity: sha512-veYYhQa+D1QBKznvhUHxb8faxlrwUnxseDAbAp457E0wLNio2bOSKnjYDhMj+YiAq61xrMGhQk9iXVk5FzgQMw==} engines: {node: '>=6'} - import-in-the-middle@1.11.2: - resolution: {integrity: sha512-gK6Rr6EykBcc6cVWRSBR5TWf8nn6hZMYSRYqCcHa0l0d1fPK7JSYo6+Mlmck76jIX9aL/IZ71c06U2VpFwl1zA==} + import-in-the-middle@1.11.3: + resolution: {integrity: sha512-tNpKEb4AjZrCyrxi+Eyu43h5ig0O8ZRFSXPHh/00/o+4P4pKzVEW/m5lsVtsAT7fCIgmQOAPjdqecGDsBXRxsw==} import-local@3.2.0: resolution: {integrity: sha512-2SPlun1JUPWoM6t3F0dw0FkCF/jWY8kttcY4f599GLTSjh2OCuuhdTkJQsEcZzBqbXZGKMK2OqW1oZsjtf/gQA==} @@ -8090,16 +8765,16 @@ packages: engines: {node: '>=18.6.0'} hasBin: true - internal-slot@1.0.7: - resolution: {integrity: sha512-NGnrKwXzSms2qUUih/ILZ5JBqNTSa1+ZmP6flaIp6KmSElgE9qdndzS3cqjrDovwFdmwsGsLdeFgB6suw+1e9g==} + internal-slot@1.1.0: + resolution: {integrity: sha512-4gd7VpWNQNB4UKKCFFVcp1AVv+FMOgs9NKzjHKusc8jTMhd5eL1NqQqOpE0KzMds804/yHlglp3uxgluOqAPLw==} engines: {node: '>= 0.4'} interpret@3.1.1: resolution: {integrity: sha512-6xwYfHbajpoF0xLW+iwLkhwgvLoZDfjYfoFNu8ftMoXINzwuymNLd9u/KmwtdT2GbR+/Cz66otEGEVVUHX9QLQ==} engines: {node: '>=10.13.0'} - intl-messageformat@10.7.7: - resolution: {integrity: sha512-F134jIoeYMro/3I0h08D0Yt4N9o9pjddU/4IIxMMURqbAtI2wu70X8hvG1V48W49zXHXv3RKSF/po+0fDfsGjA==} + intl-messageformat@10.7.10: + resolution: {integrity: sha512-hp7iejCBiJdW3zmOe18FdlJu8U/JsADSDiBPQhfdSeI8B9POtvPRvPh3nMlvhYayGMKLv6maldhR7y3Pf1vkpw==} ipaddr.js@1.9.1: resolution: {integrity: sha512-0KI/607xoxSToH7GjN1FfSbLoU0+btTicjsQSWQlh/hZykN8KpmMf7uYwPW3R+akZ6R/w18ZlXSHBYXiYUPO3g==} @@ -8142,15 +8817,16 @@ packages: resolution: {integrity: sha512-Y1JXKrfykRJGdlDwdKlLpLyMIiWqWvuSd17TvZk68PLAOGOoF4Xyav1z0Xhoi+gCYjZVeC5SI+hYFOfvXmGRCA==} engines: {node: '>= 0.4'} - is-bigint@1.0.4: - resolution: {integrity: sha512-zB9CruMamjym81i2JZ3UMn54PKGsQzsJeo6xvN3HJJ4CAsQNB6iRutp2To77OfCNuoxspsIhzaPoO1zyCEhFOg==} + is-bigint@1.1.0: + resolution: {integrity: sha512-n4ZT37wG78iz03xPRKJrHTdZbe3IicyucEtdRsV5yglwc3GyUfbAfpSeD0FJ41NbUNSt5wbhqfp1fS+BgnvDFQ==} + engines: {node: '>= 0.4'} is-binary-path@2.1.0: resolution: {integrity: sha512-ZMERYes6pDydyuGidse7OsHxtbI7WVeUEozgR/g7rd0xUimYNlvZRE/K2MgZTjWy725IfelLeVcEM97mmtRGXw==} engines: {node: '>=8'} - is-boolean-object@1.1.2: - resolution: {integrity: sha512-gDYaKHJmnj4aWxyj6YHyXVpdQawtVLHU5cb+eztPGczf6cjuTdwve5ZIEfgXqH4e57An1D1AKf8CZ3kYrQRqYA==} + is-boolean-object@1.2.1: + resolution: {integrity: sha512-l9qO6eFlUETHtuihLcYOaLKByJ1f+N4kthcU9YjHy3N+B3hWv0y/2Nd0mu/7lTFnRQHTrSdXF50HQ3bl5fEnng==} engines: {node: '>= 0.4'} is-builtin-module@3.2.1: @@ -8161,16 +8837,16 @@ packages: resolution: {integrity: sha512-1BC0BVFhS/p0qtw6enp8e+8OD0UrK0oFLztSjNzhcKA3WDuJxxAPXzPuPtKkjEY9UUoEWlX/8fgKeu2S8i9JTA==} engines: {node: '>= 0.4'} - is-core-module@2.15.1: - resolution: {integrity: sha512-z0vtXSwucUJtANQWldhbtbt7BnL0vxiFjIdDLAatwhDYty2bad6s+rijD6Ri4YuYJubLzIJLUidCh09e1djEVQ==} + is-core-module@2.16.0: + resolution: {integrity: sha512-urTSINYfAYgcbLb0yDQ6egFm6h3Mo1DcF9EkyXSRjjzdHbsulg01qhwWuXdOoUBuTkbQ80KDboXa0vFJ+BDH+g==} engines: {node: '>= 0.4'} - is-data-view@1.0.1: - resolution: {integrity: sha512-AHkaJrsUVW6wq6JS8y3JnM/GJF/9cf+k20+iDzlSaJrinEo5+7vRiteOSwBhHRiAyQATN1AmY4hwzxJKPmYf+w==} + is-data-view@1.0.2: + resolution: {integrity: sha512-RKtWF8pGmS87i2D6gqQu/l7EYRlVdfzemCJN/P3UOs//x1QE7mfhvzHIApBTRf7axvT6DMGwSwBXYCT0nfB9xw==} engines: {node: '>= 0.4'} - is-date-object@1.0.5: - resolution: {integrity: sha512-9YQaSxsAiSwcvS33MBk3wTCVnWK+HhF8VZR2jRxehM16QcVOdHqPn4VPHmRK4lSr38n9JriurInLcP90xsYNfQ==} + is-date-object@1.1.0: + resolution: {integrity: sha512-PwwhEakHVKTdRNVOw+/Gyh0+MzlCl4R6qKvkhuvLtPMggI1WAHt9sOwZxQLSGpUaDnrdyDsomoRgNnCfKNSXXg==} engines: {node: '>= 0.4'} is-decimal@1.0.4: @@ -8196,8 +8872,9 @@ packages: resolution: {integrity: sha512-SbKbANkN603Vi4jEZv49LeVJMn4yGwsbzZworEoyEiutsN3nJYdbO36zfhGJ6QEDpOZIFkDtnq5JRxmvl3jsoQ==} engines: {node: '>=0.10.0'} - is-finalizationregistry@1.0.2: - resolution: {integrity: sha512-0by5vtUJs8iFQb5TYUHHPudOR+qXYIMKtiUzvLIZITZUjknFmziyBJuLhVRc+Ds0dREFlskDNJKYIdIzu/9pfw==} + is-finalizationregistry@1.1.0: + resolution: {integrity: sha512-qfMdqbAQEwBw78ZyReKnlA8ezmPdb9BemzIIip/JkjaZUhitfXDkkr+3QTboW0JrSXT1QWyYShpvnNHGZ4c4yA==} + engines: {node: '>= 0.4'} is-fullwidth-code-point@2.0.0: resolution: {integrity: sha512-VHskAKYM8RfSFXwee5t5cbN5PZeq1Wrh6qd5bkyiXIf6UQcN6w/A0eXM9r6t8d+GYOh+o6ZhiEnb88LN/Y8m2w==} @@ -8270,8 +8947,8 @@ packages: resolution: {integrity: sha512-JEjxbSmtPSt1c8XTkVrlujcXdKV1/tvuQ7GwKcAlyiVLeYFQ2VHat8xfrDJsIkhCdF/tZ7CiIR3sy141c6+gPQ==} engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} - is-number-object@1.0.7: - resolution: {integrity: sha512-k1U0IRzLMo7ZlYIfzRu23Oh6MiIFasgpb9X76eqfFZAqwH44UI4KTBvBYIZ1dSL9ZzChTB9ShHfLkR4pdW5krQ==} + is-number-object@1.1.1: + resolution: {integrity: sha512-lZhclumE1G6VYD8VHe35wFaIif+CTy5SJIi5+3y4psDgWu4wPDoBhF8NxUOinEc7pHgiTsT6MaBb92rKhhD+Xw==} engines: {node: '>= 0.4'} is-number@7.0.0: @@ -8313,8 +8990,8 @@ packages: is-potential-custom-element-name@1.0.1: resolution: {integrity: sha512-bCYeRA2rVibKZd+s2625gGnGF/t7DSqDs4dP7CrLA1m7jKWz6pps0LpYLJN8Q64HtmPKJ1hrN3nzPNKFEKOUiQ==} - is-regex@1.1.4: - resolution: {integrity: sha512-kvRdxDsxZjhzUX07ZnLydzS1TU/TJlTUHHY4YLL87e37oUA49DfkLqgy+VjFocowy29cKvcSiu+kIv728jTTVg==} + is-regex@1.2.1: + resolution: {integrity: sha512-MjYsKHO5O7mCsmRGxWcLWheFqN9DJ/2TmngvjKXihe6efViPqc274+Fx/4fYj/r03+ESvBdTXK0V6tA3rgez1g==} engines: {node: '>= 0.4'} is-set@2.0.3: @@ -8337,16 +9014,16 @@ packages: resolution: {integrity: sha512-Dnz92NInDqYckGEUJv689RbRiTSEHCQ7wOVeALbkOz999YpqT46yMRIGtSNl2iCL1waAZSx40+h59NV/EwzV/A==} engines: {node: '>=18'} - is-string@1.0.7: - resolution: {integrity: sha512-tE2UXzivje6ofPW7l23cjDOMa09gb7xlAqG6jG5ej6uPV32TlWP3NKPigtaGeHNu9fohccRYvIiZMfOOnOYUtg==} + is-string@1.1.1: + resolution: {integrity: sha512-BtEeSsoaQjlSPBemMQIrY1MY0uM6vnS1g5fmufYOtnxLGUZM2178PKbhsk7Ffv58IX+ZtcvoGwccYsh0PglkAA==} engines: {node: '>= 0.4'} is-subdir@1.2.0: resolution: {integrity: sha512-2AT6j+gXe/1ueqbW6fLZJiIw3F8iXGJtt0yDrZaBhAZEG1raiTxKWU+IPqMCzQAXOUCKdA4UDMgacKH25XG2Cw==} engines: {node: '>=4'} - is-symbol@1.0.4: - resolution: {integrity: sha512-C/CPBqKWnvdcxqIARxyOh4v1UUEOCHpgDa0WYgpKDFMszcrPcffg5uhwSgPCLD2WWxmq6isisz87tzT01tuGhg==} + is-symbol@1.1.1: + resolution: {integrity: sha512-9gGx6GTtCQM73BgmHQXfDmLtfjjTUDSyoxTCbp5WtoixAhfgsDirWIcVQ/IHpvI5Vgd5i/J5F7B9cN/WlVbC/w==} engines: {node: '>= 0.4'} is-typed-array@1.1.13: @@ -8375,8 +9052,9 @@ packages: resolution: {integrity: sha512-K5pXYOm9wqY1RgjpL3YTkF39tni1XajUIkawTLUo9EZEVUFga5gSQJF8nNS7ZwJQ02y+1YCNYcMh+HIf1ZqE+w==} engines: {node: '>= 0.4'} - is-weakref@1.0.2: - resolution: {integrity: sha512-qctsuLZmIQ0+vSSMfoVvyFe2+GSEvnmZ2ezTup1SBse9+twCCeial6EEi3Nc2KFcf6+qz2FBPnjXsk8xhKSaPQ==} + is-weakref@1.1.0: + resolution: {integrity: sha512-SXM8Nwyys6nT5WP6pltOwKytLV7FqQ4UiibxVmW+EIosHcmCqkkjViTb5SNssDlkCiEYRP1/pdWUKVvZBmsR2Q==} + engines: {node: '>= 0.4'} is-weakset@2.0.3: resolution: {integrity: sha512-LvIm3/KWzS9oRFHugab7d+M/GcBXuXX5xZkzPmN+NxihdQlZUQ4dWuSV1xR/sq6upL1TJEDrfBgRepHFdBtSNQ==} @@ -8407,6 +9085,10 @@ packages: isarray@2.0.5: resolution: {integrity: sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==} + isbinaryfile@5.0.4: + resolution: {integrity: sha512-YKBKVkKhty7s8rxddb40oOkuP0NbaeXrQvLin6QMHL7Ypiy2RW9LwOVrVgZRyOrhQlayMd9t+D8yDy8MKFTSDQ==} + engines: {node: '>= 18.0.0'} + iserror@0.0.2: resolution: {integrity: sha512-oKGGrFVaWwETimP3SiWwjDeY27ovZoyZPHtxblC4hCq9fXxed/jasx+ATWFFjCVSRZng8VTMsN1nDnGo6zMBSw==} @@ -8421,8 +9103,8 @@ packages: resolution: {integrity: sha512-WhB9zCku7EGTj/HQQRz5aUQEUeoQZH2bWcltRErOpymJ4boYE6wL9Tbr23krRPSZ+C5zqNSrSw+Cc7sZZ4b7vg==} engines: {node: '>=0.10.0'} - isomorphic-rslog@0.0.5: - resolution: {integrity: sha512-pkU3vvajRJ0LKLaMFy8Cj7ElbFUdkQKVhUk+DQsVCYsLW4uulU65C2s3l+Sm5OtiOwprzkYYcAIJa/COwCYHWA==} + isomorphic-rslog@0.0.6: + resolution: {integrity: sha512-HM0q6XqQ93psDlqvuViNs/Ea3hAyGDkIdVAHlrEocjjAwGrs1fZ+EdQjS9eUPacnYB7Y8SoDdSY3H8p3ce205A==} engines: {node: '>=14.17.6'} isomorphic-ws@5.0.0: @@ -8454,18 +9136,13 @@ packages: resolution: {integrity: sha512-BewmUXImeuRk2YY0PVbxgKAysvhRPUQE0h5QRM++nVWyubKGV0l8qQ5op8+B2DOmwSe63Jivj0BjkPQVf8fP5g==} engines: {node: '>=8'} - iterator.prototype@1.1.3: - resolution: {integrity: sha512-FW5iMbeQ6rBGm/oKgzq2aW4KvAGpxPzYES8N4g4xNXUKpL1mclMvOe+76AcLDTvD+Ze+sOpVhgdAQEKF4L9iGQ==} + iterator.prototype@1.1.4: + resolution: {integrity: sha512-x4WH0BWmrMmg4oHHl+duwubhrvczGlyuGAZu3nvrf0UXOfPu8IhZObFEr7DE/iv01YgVZrsOiRcqw2srkKEDIA==} engines: {node: '>= 0.4'} jackspeak@3.4.3: resolution: {integrity: sha512-OGlZQpz2yfahA/Rd1Y8Cd9SIEsqvXkLVoSw/cgwhnhFMDbsQFeZYoJJ7bIZBS9BcamUW96asq/npPWugM+RQBw==} - jake@10.9.2: - resolution: {integrity: sha512-2P4SQ0HrLQ+fw6llpLnOaGAvN2Zu6778SJMrCUwns4fOoG9ayrTiZk3VV8sCPkVZF8ab0zksVpS8FDY5pRCNBA==} - engines: {node: '>=10'} - hasBin: true - jest-changed-files@29.7.0: resolution: {integrity: sha512-fEArFiwf1BpQ+4bXSprcDc3/x4HSzL4al2tozwVpDFpsxALjLYdyiIK4e5Vz66GQJIbXJ82+35PtysofptNX2w==} engines: {node: ^14.15.0 || ^16.10.0 || >=18.0.0} @@ -8620,14 +9297,10 @@ packages: resolution: {integrity: sha512-2yTgeWTWzMWkHu6Jp9NKgePDaYHbntiwvYuuJLbbN9vl7DC9DvXKOB2BC3ZZ92D3cvV/aflH0osDfwpHepQ53w==} hasBin: true - jiti@2.4.0: - resolution: {integrity: sha512-H5UpaUI+aHOqZXlYOaFP/8AzKsg+guWu+Pr3Y8i7+Y3zr1aXAvCvTAQ1RxSc6oVD8R8c7brgNtTVP91E7upH/g==} + jiti@2.4.1: + resolution: {integrity: sha512-yPBThwecp1wS9DmoA4x4KR2h3QoslacnDR8ypuFM962kI4/456Iy1oHx2RAgh4jfZNdn0bctsdadceiBUgpU1g==} hasBin: true - joycon@3.1.1: - resolution: {integrity: sha512-34wB/Y7MW7bzjKRjUKTa46I2Z7eV62Rkhva+KkopW7Qvv/OSWBqvkSY7vusOPrNuZcUG3tApvdVgNB8POj3SPw==} - engines: {node: '>=10'} - js-string-escape@1.0.1: resolution: {integrity: sha512-Smw4xcfIQ5LVjAOuJCvN/zIodzA/BBSsluuoSykP+lUvScIi4U6RJLfwHet5cxFnCswUjISV8oAXaqaJDY3chg==} engines: {node: '>= 0.8'} @@ -8657,6 +9330,11 @@ packages: engines: {node: '>=6'} hasBin: true + jsesc@3.1.0: + resolution: {integrity: sha512-/sM3dO2FOzXjKQhJuo0Q173wf2KOo8t4I8vHy6lF9poUp7bKT0/NHE8fPX23PwfhnykfqnC2xRxOnVw5XuGIaA==} + engines: {node: '>=6'} + hasBin: true + json-bigint@1.0.0: resolution: {integrity: sha512-SiPv/8VpZuWbvLSMtTDU8hEfrZWg/mH/nV/b4o0CYbSxu1UIQPLdwKOCIyLQX+VIPO5vrLX3i8qtqFyhdPSUSQ==} @@ -8753,8 +9431,8 @@ packages: resolution: {integrity: sha512-o+NO+8WrRiQEE4/7nwRJhN1HWpVmJm511pBHUxPLtp0BUISzlBplORYSmTclCnJvQq2tKu/sgl3xVpkc7ZWuQQ==} engines: {node: '>=6'} - knip@5.36.2: - resolution: {integrity: sha512-MudNTKBSqThAFAV29GuRPSKSebByZeQCFeNgXVRVSd+sXcubehTgQHTGqqiwlXGCt4WBP7vuVekp0ZehfZtHuw==} + knip@5.40.0: + resolution: {integrity: sha512-EzBfQDz4YBzYnMLueWnaaVr15mneqZs1c3RanttciuVuRcodlNjzAmR2nch/khlRdVABAxAdMGFxfSvhvcH1NA==} engines: {node: '>=18.6.0'} hasBin: true peerDependencies: @@ -8775,8 +9453,8 @@ packages: kuler@2.0.0: resolution: {integrity: sha512-Xq9nH7KlWZmXAtodXDDRE7vs6DU1gTU8zYDHDiWLSip45Egwq3plLHzPn27NgvzL2r1LMPC1vdqh98sQxtqj4A==} - ky@1.7.2: - resolution: {integrity: sha512-OzIvbHKKDpi60TnF9t7UUVAF1B4mcqc02z5PIvrm08Wyb+yOcz63GRvEuVxNT18a9E1SrNouhB4W2NNLeD7Ykg==} + ky@1.7.3: + resolution: {integrity: sha512-Sz49ZWR/BjNOq+2UK1k9ONZUVq8eyuCj30Zgc8VrRNtFlTBZduzuvehUd5kjQF6/Fms3Ir3EYqzJryw9tRvsSw==} engines: {node: '>=18'} lambda-local@2.2.0: @@ -8813,10 +9491,6 @@ packages: light-my-request@5.14.0: resolution: {integrity: sha512-aORPWntbpH5esaYpGOOmri0OHDOe3wC5M2MQxZ9dvMLZm6DnaAn0kJlcbU9hwsQgLzmZyReKwFwwPkR+nHu5kA==} - lilconfig@3.1.2: - resolution: {integrity: sha512-eop+wDAvpItUys0FWkHIKeC9ybYrTGbU41U5K7+bttZZeohvnY7M9dZ5kB21GNWiFT2q1OoPTvncPCgSOVO5ow==} - engines: {node: '>=14'} - lines-and-columns@1.2.4: resolution: {integrity: sha512-7ylylesZQ/PV29jhEDl3Ufjo6ZX7gCqJr5F7PKrqc93v7fzSymt1BpwEU8nAUXs8qzzvqhbjhK5QZg6Mt/HkBg==} @@ -8839,10 +9513,6 @@ packages: load-plugin@6.0.3: resolution: {integrity: sha512-kc0X2FEUZr145odl68frm+lMJuQ23+rTXYmR6TImqPtbpmXC4vVXbWKDQ9IzndA0HfyQamWfKLhzsqGSTxE63w==} - load-tsconfig@0.2.5: - resolution: {integrity: sha512-IXO6OCs9yg8tMKzfPZ1YmheJbZCiEsnBdcB03l0OcfK9prKnJb96siuHCr5Fl37/yo9DnKU+TLpxzTUspw9shg==} - engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} - loader-runner@4.3.0: resolution: {integrity: sha512-3R/1M+yS3j5ou80Me59j7F9IMs4PXs3VqRrm0TU3AbKPxlmpoY1TNscJV/oGJXo8qCatFGTfDbY6W6ipGOYXfg==} engines: {node: '>=6.11.5'} @@ -8896,18 +9566,12 @@ packages: lodash.isstring@4.0.1: resolution: {integrity: sha512-0wJxfxH1wgO3GrbuP+dTTk7op+6L41QCXbGINEmD+ny/G/eCqGzxyCsh7159S+mgDDcoarnBw6PC1PS5+wUGgw==} - lodash.memoize@4.1.2: - resolution: {integrity: sha512-t7j+NzmgnQzTAYXcsHYLgimltOV1MXHtlOWf6GjL9Kj8GK5FInw5JotxvbOs+IvV1/Dzo04/fCGfLVs7aXb4Ag==} - lodash.merge@4.6.2: resolution: {integrity: sha512-0KpjqXRVvrYyCsX1swR/XTK0va6VQkQM6MNo7PqW77ByjAhoARA8EfrP1N4+KlKj8YS0ZUCtRT/YUuhyYDujIQ==} lodash.once@4.1.1: resolution: {integrity: sha512-Sb487aTOCr9drQVL8pIxOzVhafOjZN9UU54hiN8PU3uAiSV7lx1yYNpbNmex2PK6dSJoNTSJUUswT651yww3Mg==} - lodash.sortby@4.7.0: - resolution: {integrity: sha512-HDWXG8isMntAyRF5vZ7xKuEvOhT4AhlRt/3czTSjvGUxjYCBVRQY48ViDHyfYz9VIoBkW4TMGQNapx+l3RUwdA==} - lodash.startcase@4.4.0: resolution: {integrity: sha512-+WKqsK294HMSc2jEbNgpHpd0JfIBhp7rEV4aqXWqFr6AlXov+SlcgB1Fv01y2kGe3Gc8nMW7VA0SrGuSkRfIEg==} @@ -8960,9 +9624,6 @@ packages: lru-cache@10.4.3: resolution: {integrity: sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ==} - lru-cache@4.1.5: - resolution: {integrity: sha512-sWZlbEP2OsHNkXrMl5GYk/jKk70MBng6UU4YI/qGDYbgf6YbP4EvmqISbXCoJiRKs+1bSpFHVgQxvJ17F2li5g==} - lru-cache@5.1.1: resolution: {integrity: sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==} @@ -8982,6 +9643,9 @@ packages: resolution: {integrity: sha512-tPJQ1HeyiU2vRruNGhZ+VleWuMQRro8iFtJxYgnS4NQe+EukKF6aGiIT+7flZhISAt2iaXBCfFGvAyif7/f8nQ==} engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} + magic-string@0.30.15: + resolution: {integrity: sha512-zXeaYRgZ6ldS1RJJUrMrYgNJ4fdwnyI6tVqoiIhyCyv5IVTK9BU8Ic2l253GGETQHxI4HNUwhJ3fjDhKqEoaAw==} + make-dir@3.1.0: resolution: {integrity: sha512-g3FeP20LNwhALb/6Cz6Dd4F2ngze0jz7tbzrD2wAV+o9FeNHe4rL+yK2md0J/fiSf1sa1ADhXqi5+oVwOM/eGw==} engines: {node: '>=8'} @@ -9000,6 +9664,10 @@ packages: resolution: {integrity: sha512-K6K2NgKnTXimT3779/4KxSvobxOtMmx1LBZ3NwRxT/MDIR3Br/fQ4Q+WCX5QxjyUR8zg5+RV9Tbf2c5pAWTD2A==} engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} + math-intrinsics@1.0.0: + resolution: {integrity: sha512-4MqMiKP90ybymYvsut0CH2g4XWbfLtmlCkXmtmdcDCxNB+mQcu1w/1+L/VD7vi/PSv7X2JYV7SCcR+jiPXnQtA==} + engines: {node: '>= 0.4'} + maxstache-stream@1.0.4: resolution: {integrity: sha512-v8qlfPN0pSp7bdSoLo1NTjG43GXGqk5W2NWFnOCq2GlmFFqebGzPCjLKSbShuqIOVorOtZSAy7O/S1OCCRONUw==} @@ -9050,8 +9718,8 @@ packages: resolution: {integrity: sha512-dq+qelQ9akHpcOl/gUVRTxVIOkAJ1wR3QAvb4RsVjS8oVoFjDGTc679wJYmUmknUF5HwMLOgb5O+a3KxfWapPQ==} engines: {node: '>= 0.6'} - memfs@4.14.0: - resolution: {integrity: sha512-JUeY0F/fQZgIod31Ja1eJgiSxLn7BfQlCnqhwXFBzFHEw63OdLK7VJUJ7bnzNsWgCyoUP5tEp1VRY8rDaYzqOA==} + memfs@4.15.0: + resolution: {integrity: sha512-q9MmZXd2rRWHS6GU3WEm3HyiXZyyoA1DqdOhEq0lxPBmKb5S7IAOwX0RgUCwJfqjelDCySa5h8ujOy24LqsWcw==} engines: {node: '>= 4.0.0'} memoize-one@6.0.0: @@ -9161,8 +9829,8 @@ packages: micromark-util-sanitize-uri@2.0.1: resolution: {integrity: sha512-9N9IomZ/YuGGZZmQec1MbgxtlgougxTodVwDzzEouPKo3qFWvymFHWcnDi2vzV1ff6kas9ucW+o3yzJK9YB1AQ==} - micromark-util-subtokenize@2.0.2: - resolution: {integrity: sha512-xKxhkB62vwHUuuxHe9Xqty3UaAsizV2YKq5OV344u3hFBbf8zIYrhYOWhAQb94MtMPkjTOzzjJ/hid9/dR5vFA==} + micromark-util-subtokenize@2.0.3: + resolution: {integrity: sha512-VXJJuNxYWSoYL6AJ6OQECCFGhIU2GGHMw8tahogePBrjkG8aCCas3ibkp7RnVOSTClg2is05/R7maAhF1XyQMg==} micromark-util-symbol@2.0.1: resolution: {integrity: sha512-vs5t8Apaud9N28kgCrRUdEed4UJ+wWNvicHLPxCa9ENlYuAY31M0ETy5y1vA33YoNPDFTghEbnh6efaE8h4x0Q==} @@ -9250,9 +9918,6 @@ packages: resolution: {integrity: sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==} engines: {node: '>=16 || 14 >=14.17'} - minimist@0.0.10: - resolution: {integrity: sha512-iotkTvxc+TwOm5Ieim8VnSNvCDjCK9S8G3scJ50ZthspSxa7jx50jkhYduuAtAjvfDUwSgOwf8+If99AlOEhyw==} - minimist@1.2.8: resolution: {integrity: sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==} @@ -9272,6 +9937,10 @@ packages: resolution: {integrity: sha512-bAxsR8BVfj60DWXHE3u30oHzfl4G7khkSuPW+qvpd7jFRHm7dLxOjUk1EHACJ/hxLY8phGJ0YhYHZo7jil7Qdg==} engines: {node: '>= 8'} + minizlib@3.0.1: + resolution: {integrity: sha512-umcy022ILvb5/3Djuu8LWeqUa8D68JaBzlttKeMWen48SjabqS3iY5w/vzeMzMUNhLDifyhbOwKDSznB1vvrwg==} + engines: {node: '>= 18'} + mkdirp-classic@0.5.3: resolution: {integrity: sha512-gKLcREMhtuZRwRAfqP3RFW+TK4JqApVBtOIftVgjuABpAtpxhPGaDcfvbhNvD0B8iD1oUr/txX35NjcaY6Ns/A==} @@ -9284,6 +9953,11 @@ packages: engines: {node: '>=10'} hasBin: true + mkdirp@3.0.1: + resolution: {integrity: sha512-+NsyUUAZDmo6YVHzL/stxSu3t9YS1iljliy3BSDrXJ/dkn1KYdmtZODGGjLcc9XLgVVpH4KshHB8XmZgMhaBXg==} + engines: {node: '>=10'} + hasBin: true + mlly@1.7.3: resolution: {integrity: sha512-xUsx5n/mN0uQf4V548PKQ+YShA4/IW0KI1dZhrNrPCLG+xizETbHTkOa1f8/xut9JRPp8kQuMnz0oqwkTiLo/A==} @@ -9312,8 +9986,8 @@ packages: ms@2.1.3: resolution: {integrity: sha512-6FlzubTLZG3J2a/NVCAleEhjzq5oxgHyaCU9yYXvcLsvoVaHJq/s5xXI6/XXP6tz7R9xAOtHnSO/tXtF3WRTlA==} - msw@2.6.1: - resolution: {integrity: sha512-1MfqQlKLRWfhnzvPYwsCNE30pNrtoSBb65I/sB99eyRB0RONw//v9vjntygmbG7F5Ni/m9tOPv+flghGKCgy6Q==} + msw@2.6.9: + resolution: {integrity: sha512-b2z9MvsEOYG5G7jtJasXO3ucHDcqCjf046e9wELIixBbYCRZCEmB4gqcb+C7ASyXBafNBR0D2u31YtG01OdX3A==} engines: {node: '>=18'} hasBin: true peerDependencies: @@ -9337,14 +10011,11 @@ packages: resolution: {integrity: sha512-WWdIxpyjEn+FhQJQQv9aQAYlHoNVdzIzUySNV1gHUPDSdZJ3yZn7pAAbQcV7B56Mvu881q9FZV+0Vx2xC44VWA==} engines: {node: ^18.17.0 || >=20.5.0} - mz@2.7.0: - resolution: {integrity: sha512-z81GNO7nnYMEhrGh9LeymoE4+Yr0Wn5McHIZMK5cfQCl+NDX08sCZgUc9/6MHni9IWuFLm1Z3HTCXu2z9fN62Q==} - nan@2.22.0: resolution: {integrity: sha512-nbajikzWTMwsW+eSsNm3QwlOs7het9gGJU5dDZzRTQGk03vyBOauxgI4VakDzE0PtsGTmXPsXTbbjVhRwR5mpw==} - nanoid@3.3.7: - resolution: {integrity: sha512-eSRppjcPIatRIMC1U6UngP8XFcz8MQWGQdt1MTBQ7NaAmvXDfvNxbvWV3x2y6CdEUciCSsDHDQZbhYaB8QEo2g==} + nanoid@3.3.8: + resolution: {integrity: sha512-WNLf5Sd8oZxOm+TzppcYk8gVOgP+l58xNy58D0nbUnOxOWRWvlcCV4kUF7ltmI6PsrLl/BgKEyS4mqsGChFN0w==} engines: {node: ^10 || ^12 || ^13.7 || ^14 || >=15.0.1} hasBin: true @@ -9368,8 +10039,8 @@ packages: nested-error-stacks@2.1.1: resolution: {integrity: sha512-9iN1ka/9zmX1ZvLV9ewJYEk9h7RyRRtqdK0woXcqohu8EWIerfPUjYJPg0ULy0UqP7cslmdGc8xKDJcojlKiaw==} - netlify-cli@17.37.2: - resolution: {integrity: sha512-jA3wijrcr4Y8NF44sTQmR/4k6QPQwoK9Vf6vKimTJ1xyGASt+Mg+iWXyg1NsmKxWs5EUnS7yuWFZJ2eb/FWyMQ==} + netlify-cli@17.38.0: + resolution: {integrity: sha512-y34vEexev5P4piJgbO8O/cBfLJkyce37Ks4yrOYx2YJk+j94G4ROAUQ7bE9GiZN/wZ/YRi+QNPsm6KbwF/yOcA==} engines: {node: '>=18.14.0'} hasBin: true @@ -9425,15 +10096,15 @@ packages: resolution: {integrity: sha512-dPEtOeMvF9VMcYV/1Wb8CPoVAXtp6MKMlcbAt4ddqmGqUJ6fQZFXkNZNkNlfevtNkGtaSoXf/vNNNSvgrdXwtA==} engines: {node: '>= 6.13.0'} - node-gyp-build@4.8.3: - resolution: {integrity: sha512-EMS95CMJzdoSKoIiXo8pxKoL8DYxwIZXYlLmgPb8KUv794abpnLK6ynsCAWNliOjREKruYKdzbh76HHYUHX7nw==} + node-gyp-build@4.8.4: + resolution: {integrity: sha512-LA4ZjwlnUblHVgq0oBF3Jl/6h/Nvs5fzBLwdEF4nuxnFdsfajde4WfxtJr3CaiH+F6ewcIB/q4jQ4UzPyid+CQ==} hasBin: true node-int64@0.4.0: resolution: {integrity: sha512-O5lz91xSOeoXP6DulyHfllpq+Eg00MWitZIbtPfoSEvqIHdl5gfcY6hYzDWnj0qD5tz52PI08u9qUvSVeUBeHw==} - node-releases@2.0.18: - resolution: {integrity: sha512-d9VeXT4SJ7ZeOqGX6R5EM022wpL+eWPooLI+5UpWn2jCT1aosUQEhQP214x33Wkwx3JQMvIm+tIoVOdodFS40g==} + node-releases@2.0.19: + resolution: {integrity: sha512-xxOWJsBKtzAq7DY0J+DTzuz58K8e7sJbdgwkbMWQe8UYB6ekmsQ45q0M/tJDsGaZmbC+l7n57UV8Hl5tHxO9uw==} node-schedule@2.1.1: resolution: {integrity: sha512-OXdegQq03OmXEjt2hZP33W2YPs/E5BcFQks46+G2gAxs4gHOIVD1u7EqlYLYSKsaIpyKCK9Gbk0ta1/gjRSMRQ==} @@ -9451,8 +10122,8 @@ packages: resolution: {integrity: sha512-Kf3L9spAL6lEHMPyqpwHSTNG3LPkOXBfSUnBMG/YE2TdoC8Qoqf0+qg01nr6K9MFQEcXtWUyTQzLJByRixSBsA==} engines: {node: '>=14.18.0'} - nodemon@3.1.7: - resolution: {integrity: sha512-hLj7fuMow6f0lbB0cD14Lz2xNjwsyruH251Pk4t/yIitCFJbmY1myuLlHm/q06aST4jg6EgAh74PIBBrRqpVAQ==} + nodemon@3.1.9: + resolution: {integrity: sha512-hdr1oIb2p6ZSxu3PB2JWWYS7ZQ0qvaZsc3hK8DR8f02kRzc8rjYmxAIvdz+aYC+8F2IjNaB7HMcSDg8nQpJxyg==} engines: {node: '>=10'} hasBin: true @@ -9469,6 +10140,11 @@ packages: engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} hasBin: true + nopt@8.0.0: + resolution: {integrity: sha512-1L/fTJ4UmV/lUxT2Uf006pfZKTvAgCF+chz+0OgBHO8u2Z67pE7AaAUUj7CJy0lXqHmymUvGFt6NE9R3HER0yw==} + engines: {node: ^18.17.0 || >=20.5.0} + hasBin: true + normalize-node-version@12.4.0: resolution: {integrity: sha512-0oLZN5xcyKVrSHMk8/9RuNblEe7HEsXAt5Te2xmMiZD9VX7bqWYe0HMyfqSYFD3xv0949lZuXaEwjTqle1uWWQ==} engines: {node: '>=14.18.0'} @@ -9524,8 +10200,8 @@ packages: nth-check@2.1.1: resolution: {integrity: sha512-lqjrjmaOoAnWfMmBPL+XNnynZh2+swxiX3WUE0s4yEHI6m+AwrK2UZOimIRl3X/4QctVqS8AiZjFqyOGrMXb/w==} - nwsapi@2.2.13: - resolution: {integrity: sha512-cTGB9ptp9dY9A5VbMSe7fQBcl/tt22Vcqdq8+eN93rblOuE0aCFu4aZ2vMwct/2t+lFnosm8RkQW1I0Omb1UtQ==} + nwsapi@2.2.16: + resolution: {integrity: sha512-F1I/bimDpj3ncaNDhfyMWuFqmQDBwDB0Fogc2qpL3BWvkQteFD/8BzWuIRl83rq0DXfm8SGt/HFhLXZyljTXcQ==} object-assign@4.1.1: resolution: {integrity: sha512-rJgTQnkUnH1sFw8yT6VSU3zD3sWmu6sZhIseY8VX+GRu3P6F7Fu+JNDoXfklElbLJSnc3FUQHVe4cU5hj+BcUg==} @@ -9620,15 +10296,16 @@ packages: resolution: {integrity: sha512-ur5UIdyw5Y7yEj9wLzhqXiy6GZ3Mwx0yGI+5sMn2r0N0v3cKJvUmFH5yPP+WXh9e0xfyzyJX95D8l088DNFj7A==} hasBin: true - optimist@0.6.1: - resolution: {integrity: sha512-snN4O4TkigujZphWLN0E//nQmm7790RYaE53DdL7ZYwee2D8DDo9/EyYiKUfN3rneWUjhJnueija3G9I2i0h3g==} - optionator@0.9.4: resolution: {integrity: sha512-6IpQ7mKUxRcZNLIObR0hz7lxsapSSIYNZJwXPGeF0mTVqGKFIXj1DQcMoT22S3ROcLyY/rz0PWaWZ9ayWmad9g==} engines: {node: '>= 0.8.0'} - ora@8.1.0: - resolution: {integrity: sha512-GQEkNkH/GHOhPFXcqZs3IDahXEQcQxsSjEkK4KvEEST4t7eNzoMjxTzef+EZ+JluDEV+Raoi3WQ2CflnRdSVnQ==} + ora@8.0.1: + resolution: {integrity: sha512-ANIvzobt1rls2BDny5fWZ3ZVKyD6nscLvfFRpQgfWsythlcsVUC9kL0zq6j2Z5z9wwp1kd7wpsD/T9qNPVLCaQ==} + engines: {node: '>=18'} + + ora@8.1.1: + resolution: {integrity: sha512-YWielGi1XzG1UTvOaCFaNgEnuhZVMSHYkW/FQ7UX8O26PtlpdM84c0f7wLPlkvx2RfiQmnzd61d/MGxmpQeJPw==} engines: {node: '>=18'} os-name@5.1.0: @@ -9760,16 +10437,16 @@ packages: package-json-from-dist@1.0.1: resolution: {integrity: sha512-UEZIS3/by4OC8vL3P2dTXRETpebLI2NiI5vIrjaD/5UtrkFX/tNbwjTSRAGC/+7CAo2pIcBaRgWmcBBHcsaCIw==} - package-json-validator@0.6.8: - resolution: {integrity: sha512-fW+v2yRdvb0bfi+wE/rKxbTy2J8dTt4USDL+626+acJJf1ZKMkxb9qptKNjXEDJtNdE0pHl2SzBllWBDpSUFig==} + package-json-validator@0.7.0: + resolution: {integrity: sha512-ufEJ03cPLVxZCHuypSJjmUC2t0xDy0Eru4AfPFe2MfPw14BqedavayQqd49H2/VCrcWONmXsJ47Tp7kzaElX2w==} engines: {node: '>=18'} package-json@10.0.1: resolution: {integrity: sha512-ua1L4OgXSBdsu1FPb7F3tYH0F48a6kxvod4pLUlGY9COeJAJQNX/sNH2IiEmsxw7lqYiAwrdHMjz1FctOsyDQg==} engines: {node: '>=18'} - package-manager-detector@0.2.4: - resolution: {integrity: sha512-H/OUu9/zUfP89z1APcBf2X8Us0tt8dUK4lUmKqz12QNXif3DxAs1/YqjGtcutZi1zQqeNQRWr9C+EbQnnvSSFA==} + package-manager-detector@0.2.7: + resolution: {integrity: sha512-g4+387DXDKlZzHkP+9FLt8yKj8+/3tOkPv7DVTJGGRm00RkEWgqbFstX1mXJ4M0VDYhUqsTOiISqNOJnhAu3PQ==} parallel-transform@1.2.0: resolution: {integrity: sha512-P2vSmIu38uIlvdcU7fDkyrxj33gTUy/ABO5ZUbGowxNCopBq/OoD42bP4UmMrJoPyk4Uqf0mu3mtWBhHCZD8yg==} @@ -9784,8 +10461,8 @@ packages: parse-entities@2.0.0: resolution: {integrity: sha512-kkywGpCcRYhqQIchaWqZ875wzpS/bMKhz5HnN3p7wveJTkTtyAB/AlnS0f8DFSqYW1T82t6yEAkEcB+A1I3MbQ==} - parse-entities@4.0.1: - resolution: {integrity: sha512-SWzvYcSJh4d/SGLIOQfZ/CoNv6BTlI6YEQ7Nj82oDVnRpwe/Z/F1EMx42x3JAOwGBlCjeCH0BRJQbQ/opHL17w==} + parse-entities@4.0.2: + resolution: {integrity: sha512-GG2AQYWoLgL877gQIKeRPGO1xF9+eG1ujIb5soS5gPvLQ1y2o8FL90w2QWNdf9I361Mpp7726c+lj3U0qK1uGw==} parse-github-url@1.0.3: resolution: {integrity: sha512-tfalY5/4SqGaV/GIGzWyHnFjlpTPTNpENR9Ea2lLldSJ8EWXMsvacWucqY3m3I4YPtas15IxTLQVQ5NSYXPrww==} @@ -9860,6 +10537,9 @@ packages: path-to-regexp@0.1.10: resolution: {integrity: sha512-7lf7qcQidTku0Gu3YDPc8DJ1q7OOucfa/BSsIwjuh56VU7katFvuM8hULfkwB3Fns/rsVF7PwPKVw1sl5KQS9w==} + path-to-regexp@0.1.12: + resolution: {integrity: sha512-RA1GjUVMnvYFxuqovrEqZoxxW5NUZqbwKtYz/Tt7nXerk0LbLblQmrsgdeOxV5SFHf0UDggjS/bSeOZwt1pmEQ==} + path-to-regexp@6.3.0: resolution: {integrity: sha512-Yhpw4T9C6hPpgPeA28us07OJeqZ5EzQTkbfwuhsUg0c237RomFoETJgmp2sa3F/41gfLE6G5cqcYwznmeEeOlQ==} @@ -9929,6 +10609,10 @@ packages: resolution: {integrity: sha512-Ie9z/WINcxxLp27BKOCHGde4ITq9UklYKDzVo1nhk5sqGEXU3FpkwP5GM2voTGJkGd9B3Otl+Q4uwSOeSUtOBA==} engines: {node: '>=14.16'} + pkg-pr-new@0.0.37: + resolution: {integrity: sha512-KgWePLIiPp2gRY9RRgU+gne2I0ozTKiVonz3WMmTy4cDZEU0mE8+mQZe3vYVTlVAjCZoAHJDV3zJOSCqiqb3lg==} + hasBin: true + pkg-types@1.2.1: resolution: {integrity: sha512-sQoqa8alT3nHjGuTjuKgOnvjo4cljkufdtLMnO2LBP/wRwuDlo1tkaEdMxCRhyGRPacv/ztlZgDPm2b7FAmEvw==} @@ -9938,29 +10622,11 @@ packages: portfinder@1.0.32: resolution: {integrity: sha512-on2ZJVVDXRADWE6jnQaX0ioEylzgBpQk8r55NE4wjXW1ZxO+BgDlY6DXwj20i0V8eB4SenDQ00WEaxfiIQPcxg==} - engines: {node: '>= 0.12.0'} - - possible-typed-array-names@1.0.0: - resolution: {integrity: sha512-d7Uw+eZoloe0EHDIYoe+bQ5WXnGMOpmiZFTuMWCwpjzzkL2nTjcKiAk4hh8TjnGye2TwWOk3UXucZ+3rbmBa8Q==} - engines: {node: '>= 0.4'} - - postcss-load-config@6.0.1: - resolution: {integrity: sha512-oPtTM4oerL+UXmx+93ytZVN82RrlY/wPUV8IeDxFrzIjXOLF1pN+EmKPLbubvKHT2HC20xXsCAH2Z+CKV6Oz/g==} - engines: {node: '>= 18'} - peerDependencies: - jiti: '>=1.21.0' - postcss: '>=8.0.9' - tsx: ^4.8.1 - yaml: ^2.4.2 - peerDependenciesMeta: - jiti: - optional: true - postcss: - optional: true - tsx: - optional: true - yaml: - optional: true + engines: {node: '>= 0.12.0'} + + possible-typed-array-names@1.0.0: + resolution: {integrity: sha512-d7Uw+eZoloe0EHDIYoe+bQ5WXnGMOpmiZFTuMWCwpjzzkL2nTjcKiAk4hh8TjnGye2TwWOk3UXucZ+3rbmBa8Q==} + engines: {node: '>= 0.4'} postcss-loader@8.1.1: resolution: {integrity: sha512-0IeqyAsG6tYiDRCYKQJLAmgQr47DX6N7sFSWvQxt6AcupX8DIdmykuk/o/tx0Lze3ErGHJEp5OSRxrelC6+NdQ==} @@ -9981,8 +10647,8 @@ packages: peerDependencies: postcss: ^8.1.0 - postcss-modules-local-by-default@4.1.0: - resolution: {integrity: sha512-rm0bdSv4jC3BDma3s9H19ZddW0aHX6EoqwDYU2IfZhRN+53QrufTRo2IdkAbRqLx4R2IYbZnbjKKxg4VN5oU9Q==} + postcss-modules-local-by-default@4.2.0: + resolution: {integrity: sha512-5kcJm/zk+GJDSfw+V/42fJ5fhjL5YbFDl8nVdXkJPLLW+Vf9mTD5Xe0wqIaDnLuL2U6cDNpTr+UQ+v2HWIBhzw==} engines: {node: ^10 || ^12 || >= 14} peerDependencies: postcss: ^8.1.0 @@ -10132,11 +10798,8 @@ packages: resolution: {integrity: sha512-OPS9kEJYVmiO48u/B9qneqhkMvgCxT+Tm28VCEJpheTpl8cJ0ffZRRNgS5mrQRTrX5yRTpaJ+hRDeefXYmmorQ==} engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} - pseudomap@1.0.2: - resolution: {integrity: sha512-b/YwNhb8lk1Zz2+bXXpS/LK9OisiZZ1SNsSLxN1x2OXVEhW2Ckr/7mWE5vrC1ZTiJlD9g19jWszTmJsB+oEpFQ==} - - psl@1.10.0: - resolution: {integrity: sha512-KSKHEbjAnpUuAUserOq0FxGXCUrzC3WniuSJhvdbs102rL55266ZcHBqLWOsG30spQMlPdpy7icATiAQehg/iA==} + psl@1.15.0: + resolution: {integrity: sha512-JZd3gMVBAVQkSs6HdNZo9Sdo0LNcQeMNP3CozBJb3JYC/QUYZTnKxP+f8oWRX4rHP5EurWxqAHTSwUCjlNKa1w==} pstree.remy@1.1.8: resolution: {integrity: sha512-77DZwxQmxKnu3aR542U+X8FypNzbfJ+C5XQDk3uWjWxn6151aIMGthWYRXTqT1E5oJvg+ljaa2OJi+VfvCOQ8w==} @@ -10166,6 +10829,14 @@ packages: resolution: {integrity: sha512-EJPeIn0CYrGu+hli1xilKAPXODtJ12T0sP63Ijx2/khC2JtuaN3JyNIpvmnkmaEtha9ocbG4A4cMcr+TvqvwQg==} engines: {node: '>=0.6'} + query-registry@3.0.1: + resolution: {integrity: sha512-M9RxRITi2mHMVPU5zysNjctUT8bAPx6ltEXo/ir9+qmiM47Y7f0Ir3+OxUO5OjYAWdicBQRew7RtHtqUXydqlg==} + engines: {node: '>=20'} + + query-string@9.1.1: + resolution: {integrity: sha512-MWkCOVIcJP9QSKU52Ngow6bsAWAPlPK2MludXvcrS2bGZSl+T1qX9MZvRIkqUIkGLJquMJHWfsT6eRqUpp4aWg==} + engines: {node: '>=18'} + querystringify@2.2.0: resolution: {integrity: sha512-FIqgj2EUvTa7R50u0rGsyTftzjYmv/a3hO345bZNrqabNqjtgiDMgmo4mkUjd+nzU5oF3dClKqFIPUKybUyqoQ==} @@ -10182,14 +10853,18 @@ packages: resolution: {integrity: sha512-WuyALRjWPDGtt/wzJiadO5AXY+8hZ80hVpe6MyivgraREW751X3SbhRvG3eLKOYN+8VEvqLcf3wdnt44Z4S4SA==} engines: {node: '>=10'} + quick-lru@7.0.0: + resolution: {integrity: sha512-MX8gB7cVYTrYcFfAnfLlhRd0+Toyl8yX8uBx1MrX7K0jegiz9TumwOK27ldXrgDlHRdVi+MqU9Ssw6dr4BNreg==} + engines: {node: '>=18'} + quote-unquote@1.0.0: resolution: {integrity: sha512-twwRO/ilhlG/FIgYeKGFqyHhoEhqgnKVkcmqMKi2r524gz3ZbDTcyFt38E9xjJI2vT+KbRNHVbnJ/e0I25Azwg==} radix3@1.1.2: resolution: {integrity: sha512-b484I/7b8rDEdSDKckSSBA8knMpcdsXudlE/LNL639wFoHKwLbEkQFZHWEYwDC0wa0FKUcCY+GAF73Z7wxNVFA==} - rambda@9.4.0: - resolution: {integrity: sha512-B7y7goUd+g0hNl5ODGUejNNERQL5gD8uANJ5Y5aHly8v0jKesFlwIe7prPfuJxttDpe3otQzHJ4NXMpTmL9ELA==} + rambda@9.4.1: + resolution: {integrity: sha512-awZe9AzmPI8XqizJz+NlaRbAdjhWKvuIaPikqRH6r41/ui9UTUQY5jTVdgQwnVrv1HnSMB6IBAAnNYs8HoVvZg==} random-bytes@1.0.0: resolution: {integrity: sha512-iv7LhNVO047HzYR3InF6pUcUsPQiHTM1Qal51DcGSuZFBil1aBBWG5eHPNek7bvILMaYJ/8RU1e8w1AMdHmLQQ==} @@ -10210,18 +10885,18 @@ packages: resolution: {integrity: sha512-y3bGgqKj3QBdxLbLkomlohkvsA8gdAiUQlSBJnBhfn+BPxg4bc62d8TcBW15wavDfgexCgccckhcZvywyQYPOw==} hasBin: true - react-dom@18.3.1: - resolution: {integrity: sha512-5m4nQKp+rZRb09LNH59GM4BxTh9251/ylbKIbpe7TpGxfJ+9kv6BLkLBXIjjspbgbnIBNqlI23tRnTWT0snUIw==} + react-dom@19.0.0: + resolution: {integrity: sha512-4GV5sHFG0e/0AD4X+ySy6UJd3jVl1iNsNHdpad0qhABJ11twS3TTBnseqsKurKcsNqCEFeGL3uLpVChpIO3QfQ==} peerDependencies: - react: ^18.3.1 + react: ^19.0.0 react-error-boundary@4.1.2: resolution: {integrity: sha512-GQDxZ5Jd+Aq/qUxbCm1UtzmL/s++V7zKgE8yMktJiCQXCCFZnMZh9ng+6/Ne6PjNSXH0L9CjeOEREfRnq6Duag==} peerDependencies: react: '>=16.13.1' - react-i18next@15.1.0: - resolution: {integrity: sha512-zj3nJynMnZsy2gPZiOTC7XctCY5eQGqT3tcKMmfJWC9FMvgd+960w/adq61j8iPzpwmsXejqID9qC3Mqu1Xu2Q==} + react-i18next@15.2.0: + resolution: {integrity: sha512-iJNc8111EaDtVTVMKigvBtPHyrJV+KblWG73cUxqp+WmJCcwkzhWNFXmkAD5pwP2Z4woeDj/oXDdbjDsb3Gutg==} peerDependencies: i18next: '>= 23.2.3' react: '>= 16.8.0' @@ -10242,8 +10917,8 @@ packages: react-is@18.3.1: resolution: {integrity: sha512-/LLMVyas0ljjAtoYiPqYiL8VWXzUUdThrmU5+n20DZv+a+ClRoevUzw5JxU+Ieh5/c87ytoTBV9G1FiKfNJdmg==} - react-refresh@0.14.2: - resolution: {integrity: sha512-jCvmsr+1IUSMUyzOkRcvnVbX3ZYC6g9TDrDbFuFmRDq7PD4yaGbLKNQL6k2jnArV8hjYxh7hVhAZB6s9HDGpZA==} + react-refresh@0.16.0: + resolution: {integrity: sha512-FPvF2XxTSikpJxcr+bHut2H4gJ17+18Uy20D5/F+SKzFap62R3cM5wH6b8WN3LyGSYeQilLEcJcR1fjBSI2S1A==} engines: {node: '>=0.10.0'} react-router-dom@6.27.0: @@ -10259,18 +10934,8 @@ packages: peerDependencies: react: '>=16.8' - react-shallow-renderer@16.15.0: - resolution: {integrity: sha512-oScf2FqQ9LFVQgA73vr86xl2NaOIX73rh+YFqcOp68CWj56tSfgtGKrEbyhCj0rSijyG9M1CYprTh39fBi5hzA==} - peerDependencies: - react: ^16.0.0 || ^17.0.0 || ^18.0.0 - - react-test-renderer@18.3.1: - resolution: {integrity: sha512-KkAgygexHUkQqtvvx/otwxtuFu5cVjfzTCtjXLH9boS19/Nbtg84zS7wIQn39G8IlrhThBpQsMKkq5ZHZIYFXA==} - peerDependencies: - react: ^18.3.1 - - react@18.3.1: - resolution: {integrity: sha512-wS+hAgJShR0KhEvPJArfuPVN1+Hz1t0Y6n5jLrGQbkb4urgPE/0Rve+1kMB1v/oWgHgm4WIcV+i7F2pTVj+2iQ==} + react@19.0.0: + resolution: {integrity: sha512-V8AVnmPIICiWpGfm6GLzCR/W5FXLchHop40W4nXBmdlEceh16rCN8O8LNWm5bh5XUX91fh7KpA+W0TgMKmgTpQ==} engines: {node: '>=0.10.0'} read-package-json-fast@3.0.2: @@ -10281,10 +10946,6 @@ packages: resolution: {integrity: sha512-MbgfoNPANMdb4oRBNg5eqLbB2t2r+o5Ua1pNt8BqGp4I0FJZhuVSOj3PaBPni4azWuSzEdNn2evevzVmEk1ohQ==} engines: {node: '>=18'} - read-pkg-up@9.1.0: - resolution: {integrity: sha512-vaMRR1AC1nrd5CQM0PhlRsO5oc2AAigqr7cCrZ/MW/Rsaflz4RlgzkpL4qoU/z1F6wrbd85iFv1OQj/y5RdGvg==} - engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} - read-pkg@7.1.0: resolution: {integrity: sha512-5iOehe+WF75IccPc30bWTbpdDQLOCc3Uu8bi3Dte3Eueij81yx1Mrufk8qBx/YAbR4uL1FdUr+7BKXDwEtisXg==} engines: {node: '>=12.20'} @@ -10330,10 +10991,6 @@ packages: resolution: {integrity: sha512-hOS089on8RduqdbhvQ5Z37A0ESjsqz6qnRcffsMU3495FuTdqSm+7bhJ29JvIOsBDEEnan5DPu9t3To9VRlMzA==} engines: {node: '>=8.10.0'} - readdirp@4.0.2: - resolution: {integrity: sha512-yDMz9g+VaZkqBYS/ozoBJwaBhTbZo3UNYQHNRw1D3UFQB8oHB4uS/tAODO+ZLjGWmUbKnIlOWO+aaIiAxrUWHA==} - engines: {node: '>= 14.16.0'} - real-require@0.2.0: resolution: {integrity: sha512-57frrGM/OCTLqLOAh0mhVA9VBMHd+9U7Zb2THMGdBUoZVOtGbJzjxsYGDJ3A9AYYCP4hn6y1TVbaOfzWtm5GFg==} engines: {node: '>= 12.13.0'} @@ -10346,8 +11003,8 @@ packages: resolution: {integrity: sha512-6tDA8g98We0zd0GvVeMT9arEOnTw9qM03L9cJXaCjrip1OO764RDBLBfrB4cwzNGDj5OA5ioymC9GkizgWJDUg==} engines: {node: '>=8'} - reflect.getprototypeof@1.0.6: - resolution: {integrity: sha512-fmfw4XgoDke3kdI6h4xcUz1dG8uaiv5q9gcEwLS4Pnth2kxT+GZ7YehS1JTMGBQmtV7Y4GFGbs2re2NqhdozUg==} + reflect.getprototypeof@1.0.8: + resolution: {integrity: sha512-B5dj6usc5dkk8uFliwjwDHM8To5/QwdKz9JcBZ8Ic4G1f0YmeeJTtE/ZTdgRFPAfxZFiUaPhZ1Jcs4qeagItGQ==} engines: {node: '>= 0.4'} regenerate-unicode-properties@10.2.0: @@ -10367,12 +11024,12 @@ packages: resolution: {integrity: sha512-vqlC04+RQoFalODCbCumG2xIOvapzVMHwsyIGM/SIE8fRhFFsXeH8/QQ+s0T0kDAhKc4k30s73/0ydkHQz6HlQ==} engines: {node: '>= 0.4'} - regexpu-core@6.1.1: - resolution: {integrity: sha512-k67Nb9jvwJcJmVpw0jPttR1/zVfnKf8Km0IPatrU/zJ5XeG3+Slx0xLXs9HByJSzXzrlz5EDvN6yLNMDc2qdnw==} + regexpu-core@6.2.0: + resolution: {integrity: sha512-H66BPQMrv+V16t8xtmq+UC0CBpiTBA60V8ibS1QVReIp8T1z8hwFxqcGzm9K6lgsN7sB5edVH8a+ze6Fqm4weA==} engines: {node: '>=4'} - registry-auth-token@5.0.2: - resolution: {integrity: sha512-o/3ikDxtXaA59BmZuZrJZDJv8NMDGSj+6j6XaeBmHw8eY1i1qd9+6H+LjVvQXx3HN6aRCGa1cUdJ9RaJZUugnQ==} + registry-auth-token@5.0.3: + resolution: {integrity: sha512-1bpc9IyC+e+CNFRaWyn77tk4xGG4PPUyfakSmA6F6cvUDjrm58dfyJ3II+9yb10EDkHoy1LaPSmHaWLOH3m6HA==} engines: {node: '>=14'} registry-url@6.0.1: @@ -10382,8 +11039,8 @@ packages: regjsgen@0.8.0: resolution: {integrity: sha512-RvwtGe3d7LvWiDQXeQw8p5asZUmfU1G/l6WbUXeHta7Y2PEIvBTwH6E2EfmYUK8pxcxEdEmaomqyp0vZZ7C+3Q==} - regjsparser@0.11.2: - resolution: {integrity: sha512-3OGZZ4HoLJkkAZx/48mTXJNlmqTGOzc0o9OWQPuWpkOlXXPbyN6OafCcoXUnBqE2D3f/T5L+pWc1kdEmnfnRsA==} + regjsparser@0.12.0: + resolution: {integrity: sha512-cnE+y8bz4NhMjISKbgeVJtqNbtf5QpjZP+Bslo+UqkIt9QPnX9q095eiRRASJG1/tz6dlNr6Z5NsBiWYokp6EQ==} hasBin: true relateurl@0.2.7: @@ -10424,10 +11081,6 @@ packages: require-package-name@2.0.1: resolution: {integrity: sha512-uuoJ1hU/k6M0779t3VMVIYpb2VMJk05cehCaABFhXaibcbvfgR8wKiozLjVFSzJPmQMRqIcO0HMyTFqfV09V6Q==} - requireindex@1.2.0: - resolution: {integrity: sha512-L9jEkOi3ASd9PYit2cwRfyppc9NoABujTP8/5gFcbERmo5jUoAKovIC3fsF17pkTnGsrByysqX+Kxd2OTNI1ww==} - engines: {node: '>=0.10.5'} - requires-port@1.0.0: resolution: {integrity: sha512-KigOCHcocU3XODJxsu8i/j8T9tzT4adHiecwORRQ0ZZFcp7ahwXuRU1m+yuO90C5ZUyGeGfocHDI14M3L3yDAQ==} @@ -10453,14 +11106,18 @@ packages: resolve-pkg-maps@1.0.0: resolution: {integrity: sha512-seS2Tj26TBVOC2NIc2rOe2y2ZO7efxITtLZcGSOnHHNOQ7CkiUBfw0Iw2ck6xkIhPwLhKNLS8BO+hEpngQlqzw==} - resolve.exports@2.0.2: - resolution: {integrity: sha512-X2UW6Nw3n/aMgDVy+0rSqgHlv39WZAlZrXCdnbyEiKm17DSqHX4MmQMaST3FbeWR5FTuRcUwYAziZajji0Y7mg==} + resolve.exports@2.0.3: + resolution: {integrity: sha512-OcXjMsGdhL4XnbShKpAcSqPMzQoYkYyhbEaeSko47MjRP9NfEQMhZkXL1DoFlt9LWQn4YttrdnV6X2OiyzBi+A==} engines: {node: '>=10'} resolve@1.22.8: resolution: {integrity: sha512-oKWePCxqpd6FlLvGV1VU0x7bkPmmCNolxzjMf4NczoDnQcIWrAF+cPtZn5i6n+RfD2d9i0tzpKnG6Yk168yIyw==} hasBin: true + resolve@1.22.9: + resolution: {integrity: sha512-QxrmX1DzraFIi9PxdG5VkRfRwIgjwyud+z/iBwfRRrVmHc+P9Q7u2lSSpQ6bjr2gy5lrqIiU9vb6iAeGf2400A==} + hasBin: true + resolve@2.0.0-next.5: resolution: {integrity: sha512-U7WjGVG9sH8tvjW5SmGbQuui75FiyjAX72HX15DwBBwF9dNiQZRQAg9nnPhYy+TUnE0+VcrttuvNI8oSxZcocA==} hasBin: true @@ -10473,6 +11130,10 @@ packages: resolution: {integrity: sha512-6IzJLuGi4+R14vwagDHX+JrXmPVtPpn4mffDJ1UdR7/Edm87fl6yi8mMBIVvFtJaNTUvjughmW4hwLhRG7gC1Q==} engines: {node: '>=4'} + restore-cursor@4.0.0: + resolution: {integrity: sha512-I9fPXU9geO9bHOt9pHHOhOkYerIMsmVaWB0rA2AI9ERh/+x/i7MV5HKBNrg+ljO5eoPVgCcnFuRjJ9uH6I/3eg==} + engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} + restore-cursor@5.1.0: resolution: {integrity: sha512-oMA2dcrw6u0YfxJQXm342bFKX/E4sG9rbTzO9ptUcR/e8A33cHuvStiYOwH7fszkZlZ1z/ta9AAoPk2F4qIOHA==} engines: {node: '>=18'} @@ -10505,11 +11166,23 @@ packages: deprecated: Rimraf versions prior to v4 are no longer supported hasBin: true - rollup@4.27.3: - resolution: {integrity: sha512-SLsCOnlmGt9VoZ9Ek8yBK8tAdmPHeppkw+Xa7yDlCEhDTvwYei03JlWo1fdc7YTfLZ4tD8riJCUyAgTbszk1fQ==} - engines: {node: '>=18.0.0', npm: '>=8.0.0'} + rimraf@5.0.10: + resolution: {integrity: sha512-l0OE8wL34P4nJH/H2ffoaniAokM2qSmrtXHmlpvYr5AVVX8msAyW0l8NVJFDxlSK4u3Uh/f41cQheDVdnYijwQ==} hasBin: true + rsbuild-plugin-dts@0.1.4: + resolution: {integrity: sha512-jqhkHGeswhH1Jfc/5zDX01UhrCwImquVjuZZXnAa34Cx0SEB+938WBIpAkyx3UEq7QLQDSII2z3pZ9cD/bpCTg==} + engines: {node: '>=16.0.0'} + peerDependencies: + '@microsoft/api-extractor': ^7 + '@rsbuild/core': 1.x + typescript: ^5 + peerDependenciesMeta: + '@microsoft/api-extractor': + optional: true + typescript: + optional: true + run-applescript@7.0.0: resolution: {integrity: sha512-9by4Ij99JUr/MCFBUkDKLWK3G9HVXmabKz9U5MlIAIuvuzkiOicRYs8XJLxX+xahD+mLiiCYDqF9dKAgtzKP1A==} engines: {node: '>=18'} @@ -10529,8 +11202,8 @@ packages: resolution: {integrity: sha512-xal3CZX1Xlo/k4ApwCFrHVACi9fBqJ7V+mwhBsuf/1IOKbBy098Fex+Wa/5QMubw09pSZ/u8EY8PWgevJsXp1A==} engines: {node: '>=6'} - safe-array-concat@1.1.2: - resolution: {integrity: sha512-vj6RsCsWBCf19jIeHEfkRMw8DPiBb+DMXklQ/1SGDHOMlHdPUkZXFQ2YdplS23zESTijAcurb1aSgJA3AgMu1Q==} + safe-array-concat@1.1.3: + resolution: {integrity: sha512-AURm5f0jYEOydBj7VQlVvDrjeFgthDdEF5H1dP+6mNpoXOMo1quQqJ4wvJDyRZ9+pO3kGWoOdmV08cSv2aJV6Q==} engines: {node: '>=0.4'} safe-buffer@5.1.2: @@ -10542,8 +11215,8 @@ packages: safe-json-stringify@1.2.0: resolution: {integrity: sha512-gH8eh2nZudPQO6TytOvbxnuhYBOvDBBLW52tz5q6X58lJcd/tkmqFR+5Z9adS8aJtURSXWThWy/xJtJwixErvg==} - safe-regex-test@1.0.3: - resolution: {integrity: sha512-CdASjNJPvRa7roO6Ra/gLYBTzYzzPyyBXxIMdGW3USQLyjWEls2RgW5UBTXaQVp+OrpeCK3bLem8smtmheoRuw==} + safe-regex-test@1.1.0: + resolution: {integrity: sha512-x/+Cz4YrimQxQccJf5mKEbIa1NzeCRNI5Ecl/ekmlYaampdNLPalVyIcCZNNH3MvmqBugV5TMYZXv0ljslUlaw==} engines: {node: '>= 0.4'} safe-regex2@3.1.0: @@ -10560,16 +11233,16 @@ packages: resolution: {integrity: sha512-xAg7SOnEhrm5zI3puOOKyy1OMcMlIJZYNJY7xLBwSze0UjhPLnWfj2GF2EpT0jmzaJKIWKHLsaSSajf35bcYnA==} engines: {node: '>=v12.22.7'} - scheduler@0.23.2: - resolution: {integrity: sha512-UOShsPwz7NrMUqhR6t0hWjFduvOzbtv7toDH1/hIrfRNIDBnnBWd0CwJTGvTpngVlmwGCdP9/Zl/tVrDqcuYzQ==} + scheduler@0.25.0: + resolution: {integrity: sha512-xFVuu11jh+xcO7JOAGJNOXld8/TcEHK/4CituBUeUb5hqxJLj9YuemAEuvm9gQ/+pgXYfbQuqAkiYu+u7YEsNA==} schema-utils@3.3.0: resolution: {integrity: sha512-pN/yOAvcC+5rQ5nERGuwrjLlYvLTbCibnZ1I7B1LaiAz9BRBlE9GMgE/eqV30P7aJQUf7Ddimy/RsbYO/GrVGg==} engines: {node: '>= 10.13.0'} - schema-utils@4.2.0: - resolution: {integrity: sha512-L0jRsrPpjdckP3oPug3/VxNKt2trR8TcabrM6FOAAlvC/9Phcmm+cuAgTlxBqdBR1WJx7Naj9WHw+aOmheSVbw==} - engines: {node: '>= 12.13.0'} + schema-utils@4.3.0: + resolution: {integrity: sha512-Gf9qqc58SpCA/xdziiHz35F4GNIWYWZrEshUc/G/r5BnLph6xpKuLeoJoQuj5WfBIx/eQLf+hmVPYHaxJu7V2g==} + engines: {node: '>= 10.13.0'} secure-compare@3.0.1: resolution: {integrity: sha512-AckIIV90rPDcBcglUwXPF3kg0P0qmPsPXAj6BBEENQE1p5yA1xfmDJzfi1Tappj37Pv2mVbKpL3Z1T+Nn7k1Qw==} @@ -10640,30 +11313,35 @@ packages: resolution: {integrity: sha512-KyLTWwgcR9Oe4d9HwCwNM2l7+J0dUQwn/yf7S0EnTtb0eVS4RxO0eUSvxPtzT4F3SY+C4K6fqdv/DO27sJ/v/w==} engines: {node: '>=14.15.0'} - shebang-command@1.2.0: - resolution: {integrity: sha512-EV3L1+UQWGor21OmnvojK36mhg+TyIKDh3iFBKBohr5xeXIhNBcx8oWdgkTEEQ+BEFFYdLRuqMfd5L84N1V5Vg==} - engines: {node: '>=0.10.0'} - shebang-command@2.0.0: resolution: {integrity: sha512-kHxr2zZpYtdmrN1qDjrrX/Z1rR1kG8Dx+gkpK1G4eXmvXswmcE1hTWBWYUzlraYw1/yZp6YuDY77YtvbN0dmDA==} engines: {node: '>=8'} - shebang-regex@1.0.0: - resolution: {integrity: sha512-wpoSFAxys6b2a2wHZ1XpDSgD7N9iVjg29Ph9uV/uaP9Ex/KXlkTZTeddxDPSYQpgvzKLGJke2UU0AzoGCjNIvQ==} - engines: {node: '>=0.10.0'} - shebang-regex@3.0.0: resolution: {integrity: sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==} engines: {node: '>=8'} - shell-quote@1.8.1: - resolution: {integrity: sha512-6j1W9l1iAs/4xYBI1SYOVZyFcCis9b4KCLQ8fgAGG07QvzaRLVVRQvAy85yNmmZSjYjg4MWh4gNvlPujU/5LpA==} + shell-quote@1.8.2: + resolution: {integrity: sha512-AzqKpGKjrj7EM6rKVQEPpB288oCfnrEIuyoT9cyF4nmGa7V8Zk6f7RRqYisX8X9m+Q7bd632aZW4ky7EhbQztA==} + engines: {node: '>= 0.4'} shimmer@1.2.1: resolution: {integrity: sha512-sQTKC1Re/rM6XyFM6fIAGHRPVGvyXfgzIDvzoq608vM+jeyVD0Tu1E6Np0Kc2zAIFWIj963V2800iF/9LPieQw==} - side-channel@1.0.6: - resolution: {integrity: sha512-fDW/EZ6Q9RiO8eFG8Hj+7u/oW+XrPTIChwCOM2+th2A6OblDtYYIpve9m+KvI9Z4C9qSEXlaGR6bTEYHReuglA==} + side-channel-list@1.0.0: + resolution: {integrity: sha512-FCLHtRD/gnpCiCHEiJLOwdmFP+wzCmDEkc9y7NsYxeF4u7Btsn1ZuwgwJGxImImHicJArLP4R0yX4c2KCrMrTA==} + engines: {node: '>= 0.4'} + + side-channel-map@1.0.1: + resolution: {integrity: sha512-VCjCNfgMsby3tTdo02nbjtM/ewra6jPHmpThenkTYh8pG9ucZ/1P8So4u4FGBek/BjpOVsDCMoLA/iuBKIFXRA==} + engines: {node: '>= 0.4'} + + side-channel-weakmap@1.0.2: + resolution: {integrity: sha512-WPS/HvHQTYnHisLo9McqBHOJk2FkHO/tlpvldyrnem4aeQp4hai3gythswg6p01oSoTl58rcpiFAjF2br2Ak2A==} + engines: {node: '>= 0.4'} + + side-channel@1.1.0: + resolution: {integrity: sha512-ZX99e6tRweoUXqR+VBrslhda51Nh5MTQwou5tnUDgbtyM0dBgmhEDtWGP/xbKn6hqfPRHujUNwz5fy/wbbhnpw==} engines: {node: '>= 0.4'} signal-exit@3.0.7: @@ -10697,6 +11375,10 @@ packages: resolution: {integrity: sha512-3dOsAHXXUkQTpOYcoAxLIorMTp4gIQr5IW3iVb7A7lFIp0VHhnynm9izx6TssdrIcVIESAlVjtnO2K8bg+Coew==} engines: {node: '>=12'} + slash@5.1.0: + resolution: {integrity: sha512-ZA6oR3T/pEyuqwMgAKT0/hAv8oAXckzbkmR0UkUosQ+Mc4RxGoJkRmwHgHufaenlyAgE1Mxgpdcrf75y6XcnDg==} + engines: {node: '>=14.16'} + slice-ansi@5.0.0: resolution: {integrity: sha512-FC+lgizVPfie0kkhqUScwRu1O/lF6NOgJmlCgK+/LYxDCTk8sGelYaHDhFcDN+Sn3Cv+3VSa4Byeo+IMCzpMgQ==} engines: {node: '>=12'} @@ -10729,8 +11411,8 @@ packages: sort-object-keys@1.1.3: resolution: {integrity: sha512-855pvK+VkU7PaKYPc+Jjnmt4EzejQHyhhF33q31qG8x7maDzkeFhAAThdCYay11CISO+qAMwjOBP+fPZe0IPyg==} - sort-package-json@1.57.0: - resolution: {integrity: sha512-FYsjYn2dHTRb41wqnv+uEqCUvBpK3jZcTp9rbz2qDTmel7Pmdtf+i2rLaaPMRZeSVM60V3Se31GyWFpmKs4Q5Q==} + sort-package-json@2.12.0: + resolution: {integrity: sha512-/HrPQAeeLaa+vbAH/znjuhwUluuiM/zL5XX9kop8UpDgjtyWKt43hGDk2vd/TBdDpzIyzIHVUgmYofzYrAQjew==} hasBin: true sorted-array-functions@1.3.0: @@ -10754,12 +11436,8 @@ packages: resolution: {integrity: sha512-l3BikUxvPOcn5E74dZiq5BGsTb5yEwhaTSzccU6t4sDOH8NWJCstKO5QT2CvtFoK6F0saL7p9xHAqHOlCPJygA==} engines: {node: '>= 8'} - source-map@0.8.0-beta.0: - resolution: {integrity: sha512-2ymg6oRBpebeZi9UUNsgQ89bhx01TcTkmNTGnNO88imTmbSgy4nfujrgVEFKWpMTEGA11EDkTt7mqObTPdigIA==} - engines: {node: '>= 8'} - - spawndamnit@2.0.0: - resolution: {integrity: sha512-j4JKEcncSjFlqIwU5L/rp2N5SIPsdxaRsIv678+TZxZ0SRDJTm8JrxJMjE/XuiEZNEir3S8l0Fa3Ke339WI4qA==} + spawndamnit@3.0.1: + resolution: {integrity: sha512-MmnduQUuHCoFckZoWnXsTg7JaiLBJrKFj9UI2MbRPGaJeVpsLcVBu6P/IGZovziM/YBsellCmsprgNA+w0CzVg==} spdx-correct@3.2.0: resolution: {integrity: sha512-kN9dJbvnySHULIluDHy32WHRUu3Og7B9sbY7tsFLctQkIqnMh3hErYgdMjTYuqmcXX+lK5T1lnUt3G7zNswmZA==} @@ -10780,6 +11458,10 @@ packages: resolution: {integrity: sha512-r46gZQZQV+Kl9oItvl1JZZqJKGr+oEkB08A6BzkiR7593/7IbtuncXHd2YoYeTsG4157ZssMu9KYvUHLcjcDoA==} engines: {node: '>=6.0.0'} + split-on-first@3.0.0: + resolution: {integrity: sha512-qxQJTx2ryR0Dw0ITYyekNQWpz6f8dGd7vffGNflQQ3Iqj9NJ6qiZ7ELpZsJ/QBhIVAiDfXdag3+Gp8RvWa62AA==} + engines: {node: '>=12'} + split2@1.1.1: resolution: {integrity: sha512-cfurE2q8LamExY+lJ9Ex3ZfBwqAPduzOKVscPDXNCLLMvyaeD3DTz1yk7fVIs6Chco+12XeD0BB6HEoYzPYbXA==} @@ -10822,12 +11504,16 @@ packages: resolution: {integrity: sha512-KFxaM7XT+irxvdqSP1LGLgNWbYN7ay5owZ3r/8t77p+EtSUAfUgtl7be3xtqtOmGUl9K9YPO2ca8133RlTjvKw==} engines: {node: '>=8.0'} - streamx@2.20.2: - resolution: {integrity: sha512-aDGDLU+j9tJcUdPGOaHmVF1u/hhI+CsGkT02V3OKlHDV7IukOI+nTWAGkiZEKCO35rWN1wIr4tS7YFr1f4qSvA==} + streamx@2.21.1: + resolution: {integrity: sha512-PhP9wUnFLa+91CPy3N6tiQsK+gnYyUNuk15S3YG/zjYE7RuPeCjJngqnzpC31ow0lzBHQ+QGO4cNJnd0djYUsw==} strict-event-emitter@0.5.1: resolution: {integrity: sha512-vMgjE/GGEPEFnhFub6pa4FmJBRBVOLpIII2hvCZ8Kzb7K0hlHo7mQv6xYrBvCL2LtAIBwFUK8wvuJgTVSQ5MFQ==} + string-argv@0.3.2: + resolution: {integrity: sha512-aqD2Q0144Z+/RqG52NeHEkZauTAUWJO8c6yTftGJKO3Tja5tUgIfmIl6kExvhtxSDP7fXB6DvzkfMpCd/F3G+Q==} + engines: {node: '>=0.6.19'} + string-length@4.0.2: resolution: {integrity: sha512-+l6rNN5fYHNhZZy41RXsYptCjA2Igmq4EG7kZAYFQI1E1VTXarr6ZPXBg6eq7Y6eK4FEhY6AJlyuFIb/v/S0VQ==} engines: {node: '>=10'} @@ -10863,12 +11549,13 @@ packages: string.prototype.repeat@1.0.0: resolution: {integrity: sha512-0u/TldDbKD8bFCQ/4f5+mNRrXwZ8hg2w7ZR8wa16e8z9XpePWl3eGEcUD0OXpEH/VJH/2G3gjUtR3ZOiBe2S/w==} - string.prototype.trim@1.2.9: - resolution: {integrity: sha512-klHuCNxiMZ8MlsOihJhJEBJAiMVqU3Z2nEXWfWnIqjN0gEFS9J9+IxKozWWtQGcgoa1WUZzLjKPTr4ZHNFTFxw==} + string.prototype.trim@1.2.10: + resolution: {integrity: sha512-Rs66F0P/1kedk5lyYyH9uBzuiI/kNRmwJAR9quK6VOtIpZ2G+hMZd+HQbbv25MgCA6gEffoMZYxlTod4WcdrKA==} engines: {node: '>= 0.4'} - string.prototype.trimend@1.0.8: - resolution: {integrity: sha512-p73uL5VCHCO2BZZ6krwwQE3kCzM7NKmis8S//xEC6fQonchbum4eP6kR4DLEjQFO3Wnj3Fuo8NM0kOSjVdHjZQ==} + string.prototype.trimend@1.0.9: + resolution: {integrity: sha512-G7Ok5C6E/j4SGfyLCloXTrngQIQU3PWtXGst3yM7Bea9FRURf1S42ZHlZZtsNque2FN2PoUhfZXYLNWwEr4dLQ==} + engines: {node: '>= 0.4'} string.prototype.trimstart@1.0.8: resolution: {integrity: sha512-UXSH262CSZY1tfu3G3Secr6uGLCFVPMhIqHjlgCUtCCcgihYc/xKs9djMTMUOb2j1mVSeU8EU6NWc/iQKU6Gfg==} @@ -10951,16 +11638,11 @@ packages: stubborn-fs@1.2.5: resolution: {integrity: sha512-H2N9c26eXjzL/S/K+i/RHHcFanE74dptvvjM8iwzwbVcWY/zjBbgRqF3K0DY4+OD+uTTASTBvDoxPDaPN02D7g==} - style-loader@3.3.4: - resolution: {integrity: sha512-0WqXzrsMTyb8yjZJHDqwmnwRJvhALK9LfRtRc6B4UTWe8AijYLZYZ9thuJTZc2VfQWINADW/j+LiJnfy2RoC1w==} - engines: {node: '>= 12.13.0'} + style-loader@4.0.0: + resolution: {integrity: sha512-1V4WqhhZZgjVAVJyt7TdDPZoPBPNHbekX4fWnCJL1yQukhCeZhJySUL+gL9y6sNdN95uEOS83Y55SqHcP7MzLA==} + engines: {node: '>= 18.12.0'} peerDependencies: - webpack: ^5.0.0 - - sucrase@3.35.0: - resolution: {integrity: sha512-8EbVDiu9iN/nESwxeSxDKe0dunta1GOlHufmSSXxMD2z2/tMZpDMpvXQGsc+ajGo8y2uYUmixaSRUc/QPoQ0GA==} - engines: {node: '>=16 || 14 >=14.17'} - hasBin: true + webpack: ^5.27.0 summary@2.1.0: resolution: {integrity: sha512-nMIjMrd5Z2nuB2RZCKJfFMjgS3fygbeyGk9PxPPaJR1RIcyN9yn4A63Isovzm3ZtQuEkLBVgMdPup8UeLH7aQw==} @@ -11010,6 +11692,11 @@ packages: resolution: {integrity: sha512-vrozgXDQwYO72vHjUb/HnFbQx1exDjoKzqx23aXEg2a9VIg2TSFZ8FmeZpTjUCFMYw7mpX4BE2SFu8wI7asYsw==} engines: {node: ^14.18.0 || >=16.0.0} + syncpack@13.0.0: + resolution: {integrity: sha512-0PIoEWMP2+YkllkcZXw8N9d2sFqpmr8ULBdvms3gc1vG5tnccEMqc6flxHYnF/N+NTTcUnf0J+4xAD5hwH6XGQ==} + engines: {node: '>=18.18.0'} + hasBin: true + system-architecture@0.1.0: resolution: {integrity: sha512-ulAk51I9UVUyJgxlv9M6lFot2WP3e7t8Kz9+IS6D4rVba1tR9kON+Ey69f+1R4Q8cd45Lod6a4IcJIxnzGc/zA==} engines: {node: '>=18'} @@ -11038,6 +11725,10 @@ packages: resolution: {integrity: sha512-DZ4yORTwrbTj/7MZYq2w+/ZFdI6OZ/f9SFHR+71gIVUZhOQPHzVCLpvRnPgyaMpfWxxk/4ONva3GQSyNIKRv6A==} engines: {node: '>=10'} + tar@7.4.3: + resolution: {integrity: sha512-5S7Va8hKfV7W5U6g3aYxXmlPoZVAwUMy9AOKyF2fVuZa2UD3qZjg578OrLRt8PcNN1PleVaL/5/yYATNL0ICUw==} + engines: {node: '>=18'} + temp-dir@3.0.0: resolution: {integrity: sha512-nHc6S/bwIilKHNRgK/3jlhDoIHcp45YgyiwcAk46Tr0LfEqGBVpmiAyuiuxeVE44m3mXnEeVhaipLOEWmH+Njw==} engines: {node: '>=14.16'} @@ -11054,8 +11745,8 @@ packages: resolution: {integrity: sha512-flFL3m4wuixmf6IfhFJd1YPiLiMuxEc8uHRM1buzIeZPm22Au2pDqBJQgdo7n1WfPU1ONFGv7YDwpFBmHGF6lg==} engines: {node: '>=12'} - terser-webpack-plugin@5.3.10: - resolution: {integrity: sha512-BKFPWlPDndPs+NGGCr1U59t0XScL5317Y0UReNrHaw9/FwhPENlq6bfgs+4yPfyP51vqC1bQ4rp1EfXW5ZSH9w==} + terser-webpack-plugin@5.3.11: + resolution: {integrity: sha512-RVCsMfuD0+cTt3EwX8hSl2Ks56EbFHWmhluwcqoPKtBnfjiT6olaq7PRIRfhyU8nnC2MrnDrBLfrD/RGE+cVXQ==} engines: {node: '>= 10.13.0'} peerDependencies: '@swc/core': '*' @@ -11070,8 +11761,8 @@ packages: uglify-js: optional: true - terser@5.36.0: - resolution: {integrity: sha512-IYV9eNMuFAV4THUspIRXkLakHnV6XO7FEdtKjf/mDyrnqUg9LnlOn6/RwRvM9SZjR4GUq8Nk8zj67FzVARr74w==} + terser@5.37.0: + resolution: {integrity: sha512-B8wRRkmre4ERucLM/uXx4MOV5cbnOlVAqUst+1+iLKPI0dOgFO28f84ptoQt9HEI537PMzfYa/d+GEPKTRXmYA==} engines: {node: '>=10'} hasBin: true @@ -11079,8 +11770,8 @@ packages: resolution: {integrity: sha512-cAGWPIyOHU6zlmg88jwm7VRyXnMN7iV68OGAbYDk/Mh/xC/pzVPlQtY6ngoIH/5/tciuhGfvESU8GrHrcxD56w==} engines: {node: '>=8'} - text-decoder@1.2.1: - resolution: {integrity: sha512-x9v3H/lTKIJKQQe7RPQkLfKAnc9lUTkWDypIQgTzPJAq+5/GCDHonmshfvlsNSj58yyshbIJJDLmU15qNERrXQ==} + text-decoder@1.2.3: + resolution: {integrity: sha512-3/o9z3X0X0fTupwsYvR03pJ/DjWuqqrfwBgTQzdWDiQSm9KitAyz/9WqsT2JQW7KV2m+bC2ol/zqpW37NHxLaA==} text-hex@1.0.0: resolution: {integrity: sha512-uuVGNWzgJ4yhRaNSiubPY7OjISw4sw4E5Uv0wbjp+OzcbmVU/rsT8ujgcXJhn9ypzsgr5vlzpPqP+MBBKcGvbg==} @@ -11088,13 +11779,6 @@ packages: text-table@0.2.0: resolution: {integrity: sha512-N+8UisAXDGk8PFXP4HAzVR9nbfmVJ3zYLAWiTIoqC5v5isinhr+r5uaO8+7r3BMfuNIufIsA7RdpVgacC2cSpw==} - thenify-all@1.6.0: - resolution: {integrity: sha512-RNxQH/qI8/t3thXJDwcstUO4zeqo64+Uy/+sNVRBx4Xn2OX+OZ9oP+iJnNFqplFra2ZUVeKCSa2oVWi3T4uVmA==} - engines: {node: '>=0.8'} - - thenify@3.3.1: - resolution: {integrity: sha512-RVZSIV5IG10Hk3enotrhvz0T9em6cyHBLkH/YAZuKqd8hRkKhSfCGIcP2KUY0EPxndzANBmNllzWPwak+bheSw==} - thingies@1.21.0: resolution: {integrity: sha512-hsqsJsFMsV+aD4s3CWKk85ep/3I9XzYV/IXaSouJMYIoDlgyi11cBhsqYe9/geRfB0YIikBQg6raRaM+nIMP9g==} engines: {node: '>=10.18'} @@ -11124,13 +11808,14 @@ packages: thunky@1.1.0: resolution: {integrity: sha512-eHY7nBftgThBqOyHGVN+l8gF0BucP09fMo0oO/Lb0w1OF80dJv+lDVpXG60WMQvkcxAkNybKsrEIE3ZtKGmPrA==} + tightrope@0.2.0: + resolution: {integrity: sha512-Kw36UHxJEELq2VUqdaSGR2/8cAsPgMtvX8uGVU6Jk26O66PhXec0A5ZnRYs47btbtwPDpXXF66+Fo3vimCM9aQ==} + engines: {node: '>=16'} + time-zone@1.0.0: resolution: {integrity: sha512-TIsDdtKo6+XrPtiTm1ssmMngN1sAhyKnTO2kunQWqNPWIVvCm15Wmw4SWInwTVgJ5u/Tr04+8Ei9TNcw4x4ONA==} engines: {node: '>=4'} - tinyexec@0.3.1: - resolution: {integrity: sha512-WiCJLEECkO18gwqIp6+hJg0//p23HXp4S+gGtAKu3mI2F2/sXC4FvHvXvB0zJVVaTPhx1/tOwdbRsa1sOBIKqQ==} - tinyglobby@0.2.10: resolution: {integrity: sha512-Zc+8eJlFMvgatPZTl6A9L/yht8QqdmUNtURHaKZLmKBE12hNPSrqNkUp2cs3M/UKmNVVAMFQYSjYIVHDjW5zew==} engines: {node: '>=12.0.0'} @@ -11186,23 +11871,19 @@ packages: tr46@0.0.3: resolution: {integrity: sha512-N3WMsuqV66lT30CrXNbEjx4GEwlow3v6rr4mCcv6prnfwhS01rkgyFdjPNBYd9br7LpXV1+Emh01fHnq2Gdgrw==} - tr46@1.0.1: - resolution: {integrity: sha512-dTpowEjclQ7Kgx5SdBkqRzVhERQXov8/l9Ft9dVM9fmg0W0KQSVaXX9T4i6twCPNtYiZM53lpSSUAwJbFPOHxA==} - tr46@3.0.0: resolution: {integrity: sha512-l7FvfAHlcmulp8kr+flpQZmVwtu7nfRV7NZujtN0OqES8EL4O4e0qqzL0DC5gAvx/ZC/9lk6rhcUwYvkBnBnYA==} engines: {node: '>=12'} + tracekit@0.4.7: + resolution: {integrity: sha512-d3BLRambfZ0VOYLIh7FRSElugsOMrNgxzT4jXyOXC7lnhoeEJIHNg8VAcpKVVmu9kREGUAVg8Eh3SlRfkU/ksQ==} + tree-dump@1.0.2: resolution: {integrity: sha512-dpev9ABuLWdEubk+cIaI9cHwRNNDjkBBLXTwI4UCUFdQ5xXKqNXoK4FEciw/vxf+NQ7Cb7sGUyeUtORvHIdRXQ==} engines: {node: '>=10.0'} peerDependencies: tslib: '2' - tree-kill@1.2.2: - resolution: {integrity: sha512-L0Orpi8qGpRG//Nd+H90vFB+3iHnue1zSSGmNOOCh1GLJ7rUKVwV2HvijphGQS2UmhUZewS9VgvxYIdgr+fG1A==} - hasBin: true - trim-repeated@2.0.0: resolution: {integrity: sha512-QUHBFTJGdOwmp0tbOG505xAgOp/YliZP/6UgafFXYZ26WT1bvQmSMJUvkeVSASuJJHbqsFbynTvkd5W8RBTipg==} engines: {node: '>=12'} @@ -11214,8 +11895,8 @@ packages: trough@2.2.0: resolution: {integrity: sha512-tmMpK00BjZiUyVyvrBK7knerNgmgvcV/KLVyuma/SC+TQN167GrMRciANTz09+k3zW8L8t60jWO1GpfkZdjTaw==} - ts-api-utils@1.4.0: - resolution: {integrity: sha512-032cPxaEKwM+GT3vA5JXNzIaizx388rhsSW79vGRNGXfRRAdEAn2mvk36PvK5HnOchyWZ7afLEXqYCvPCrzuzQ==} + ts-api-utils@1.4.3: + resolution: {integrity: sha512-i3eMG77UTMD0hZhgRS562pv83RC6ukSAC2GMNWc+9dieh/+jDM5u5YG+NHX6VNDRHQcHwmsTHctP9LhbC3WxVw==} engines: {node: '>=16'} peerDependencies: typescript: '>=4.2.0' @@ -11224,33 +11905,6 @@ packages: resolution: {integrity: sha512-q5W7tVM71e2xjHZTlgfTDoPF/SmqKG5hddq9SzR49CH2hayqRKJtQ4mtRlSxKaJlR/+9rEM+mnBHf7I2/BQcpQ==} engines: {node: '>=6.10'} - ts-interface-checker@0.1.13: - resolution: {integrity: sha512-Y/arvbn+rrz3JCKl9C4kVNfTfSm2/mEp5FSz5EsZSANGPSlQrpRI5M4PKF+mJnE52jOO90PnPSc3Ur3bTQw0gA==} - - ts-jest@29.2.5: - resolution: {integrity: sha512-KD8zB2aAZrcKIdGk4OwpJggeLcH1FgrICqDSROWqlnJXGCXK4Mn6FcdK2B6670Xr73lHMG1kHw8R87A0ecZ+vA==} - engines: {node: ^14.15.0 || ^16.10.0 || ^18.0.0 || >=20.0.0} - hasBin: true - peerDependencies: - '@babel/core': '>=7.0.0-beta.0 <8' - '@jest/transform': ^29.0.0 - '@jest/types': ^29.0.0 - babel-jest: ^29.0.0 - esbuild: '*' - jest: ^29.0.0 - typescript: '>=4.3 <6' - peerDependenciesMeta: - '@babel/core': - optional: true - '@jest/transform': - optional: true - '@jest/types': - optional: true - babel-jest: - optional: true - esbuild: - optional: true - ts-node@10.9.2: resolution: {integrity: sha512-f0FFpIdcHgn8zcPSbf1dRevwt047YMnaiJM3u2w2RewrB+fob/zePZcrOyQoLMMO7aBIddLcQIEK5dYjkLnGrQ==} hasBin: true @@ -11265,6 +11919,9 @@ packages: '@swc/wasm': optional: true + ts-toolbelt@9.6.0: + resolution: {integrity: sha512-nsZd8ZeNUzukXPlJmTBwUAuABDe/9qtVDelJeT/qW0ow3ZS3BsQJtNkan1802aM9Uf68/Y8ljw86Hu0h5IUW3w==} + tsconfig-paths@3.15.0: resolution: {integrity: sha512-2Ac2RgzDe/cn48GvOe3M+o82pEFewD3UPbyoUHHdKasHwJKjds4fLXWf/Ux5kATBKN20oaFGu+jbElp1pos0mg==} @@ -11278,25 +11935,6 @@ packages: resolution: {integrity: sha512-LxhtAkPDTkVCMQjt2h6eBVY28KCjikZqZfMcC15YBeNjkgUpdCfBu5HoiOTDu86v6smE8yOjyEktJ8hlbANHQA==} engines: {node: '>=0.6.x'} - tsup@8.3.5: - resolution: {integrity: sha512-Tunf6r6m6tnZsG9GYWndg0z8dEV7fD733VBFzFJ5Vcm1FtlXB8xBD/rtrBi2a3YKEV7hHtxiZtW5EAVADoe1pA==} - engines: {node: '>=18'} - hasBin: true - peerDependencies: - '@microsoft/api-extractor': ^7.36.0 - '@swc/core': ^1 - postcss: ^8.4.12 - typescript: '>=4.5.0' - peerDependenciesMeta: - '@microsoft/api-extractor': - optional: true - '@swc/core': - optional: true - postcss: - optional: true - typescript: - optional: true - tsutils@3.21.0: resolution: {integrity: sha512-mHKK3iUXL+3UF6xL5k0PEhKRUBKPBCv/+RkEOpjRWxxx27KKRBmmA60A9pgOUvMi8GKhRMPEmjBRPzs2W7O1OA==} engines: {node: '>= 6'} @@ -11311,38 +11949,38 @@ packages: tunnel-agent@0.6.0: resolution: {integrity: sha512-McnNiV1l8RYeY8tBgEpuodCC1mLUdbSN+CYBL7kJsJNInOP8UjDDEwdk6Mw60vdLLrr5NHKZhMAOSrR2NZuQ+w==} - turbo-darwin-64@1.13.3: - resolution: {integrity: sha512-glup8Qx1qEFB5jerAnXbS8WrL92OKyMmg5Hnd4PleLljAeYmx+cmmnsmLT7tpaVZIN58EAAwu8wHC6kIIqhbWA==} + turbo-darwin-64@2.3.3: + resolution: {integrity: sha512-bxX82xe6du/3rPmm4aCC5RdEilIN99VUld4HkFQuw+mvFg6darNBuQxyWSHZTtc25XgYjQrjsV05888w1grpaA==} cpu: [x64] os: [darwin] - turbo-darwin-arm64@1.13.3: - resolution: {integrity: sha512-/np2xD+f/+9qY8BVtuOQXRq5f9LehCFxamiQnwdqWm5iZmdjygC5T3uVSYuagVFsZKMvX3ycySwh8dylGTl6lg==} + turbo-darwin-arm64@2.3.3: + resolution: {integrity: sha512-DYbQwa3NsAuWkCUYVzfOUBbSUBVQzH5HWUFy2Kgi3fGjIWVZOFk86ss+xsWu//rlEAfYwEmopigsPYSmW4X15A==} cpu: [arm64] os: [darwin] - turbo-linux-64@1.13.3: - resolution: {integrity: sha512-G+HGrau54iAnbXLfl+N/PynqpDwi/uDzb6iM9hXEDG+yJnSJxaHMShhOkXYJPk9offm9prH33Khx2scXrYVW1g==} + turbo-linux-64@2.3.3: + resolution: {integrity: sha512-eHj9OIB0dFaP6BxB88jSuaCLsOQSYWBgmhy2ErCu6D2GG6xW3b6e2UWHl/1Ho9FsTg4uVgo4DB9wGsKa5erjUA==} cpu: [x64] os: [linux] - turbo-linux-arm64@1.13.3: - resolution: {integrity: sha512-qWwEl5VR02NqRyl68/3pwp3c/olZuSp+vwlwrunuoNTm6JXGLG5pTeme4zoHNnk0qn4cCX7DFrOboArlYxv0wQ==} + turbo-linux-arm64@2.3.3: + resolution: {integrity: sha512-NmDE/NjZoDj1UWBhMtOPmqFLEBKhzGS61KObfrDEbXvU3lekwHeoPvAMfcovzswzch+kN2DrtbNIlz+/rp8OCg==} cpu: [arm64] os: [linux] - turbo-windows-64@1.13.3: - resolution: {integrity: sha512-Nudr4bRChfJzBPzEmpVV85VwUYRCGKecwkBFpbp2a4NtrJ3+UP1VZES653ckqCu2FRyRuS0n03v9euMbAvzH+Q==} + turbo-windows-64@2.3.3: + resolution: {integrity: sha512-O2+BS4QqjK3dOERscXqv7N2GXNcqHr9hXumkMxDj/oGx9oCatIwnnwx34UmzodloSnJpgSqjl8iRWiY65SmYoQ==} cpu: [x64] os: [win32] - turbo-windows-arm64@1.13.3: - resolution: {integrity: sha512-ouJCgsVLd3icjRLmRvHQDDZnmGzT64GBupM1Y+TjtYn2LVaEBoV6hicFy8x5DUpnqdLy+YpCzRMkWlwhmkX7sQ==} + turbo-windows-arm64@2.3.3: + resolution: {integrity: sha512-dW4ZK1r6XLPNYLIKjC4o87HxYidtRRcBeo/hZ9Wng2XM/MqqYkAyzJXJGgRMsc0MMEN9z4+ZIfnSNBrA0b08ag==} cpu: [arm64] os: [win32] - turbo@1.13.3: - resolution: {integrity: sha512-n17HJv4F4CpsYTvKzUJhLbyewbXjq1oLCi90i5tW1TiWDz16ML1eDG7wi5dHaKxzh5efIM56SITnuVbMq5dk4g==} + turbo@2.3.3: + resolution: {integrity: sha512-DUHWQAcC8BTiUZDRzAYGvpSpGLiaOQPfYXlCieQbwUvmml/LRGIe3raKdrOPOoiX0DYlzxs2nH6BoWJoZrj8hA==} hasBin: true type-check@0.4.0: @@ -11353,6 +11991,10 @@ packages: resolution: {integrity: sha512-0fr/mIH1dlO+x7TlcMy+bIDqKPsw/70tVyeHW787goQjhmqaZe10uwLujubK9q9Lg6Fiho1KUKDYz0Z7k7g5/g==} engines: {node: '>=4'} + type-detect@4.1.0: + resolution: {integrity: sha512-Acylog8/luQ8L7il+geoSxhEkazvkslg7PSNKOX59mbB9cOveP5aq9h74Y7YU8yDpJwetzQQrfIwtf4Wp4LKcw==} + engines: {node: '>=4'} + type-fest@0.20.2: resolution: {integrity: sha512-Ne+eE4r0/iWnpAxD852z3A+N0Bt5RN//NjJwRd2VFHEmrywxf5vsZlh4R6lixl6B+wz/8d+maTSAkN1FIkI3LQ==} engines: {node: '>=10'} @@ -11377,8 +12019,8 @@ packages: resolution: {integrity: sha512-tLq3bSNx+xSpwvAJnzrK0Ep5CLNWjvFTOp71URMaAEWBfRb9nnJiBoUe0tF8bI4ZFO3omgBR6NvnbzVUT3Ly4g==} engines: {node: '>=14.16'} - type-fest@4.27.0: - resolution: {integrity: sha512-3IMSWgP7C5KSQqmo1wjhKrwsvXAtF33jO3QY+Uy++ia7hqvgSK6iXbbg5PbDBc1P2ZbNEDgejOrN4YooXvhwCw==} + type-fest@4.30.1: + resolution: {integrity: sha512-ojFL7eDMX2NF0xMbDwPZJ8sb7ckqtlAi1GsmgsFXvErT9kFTk1r0DuQKvrCh73M6D4nngeHJmvogF9OluXs7Hw==} engines: {node: '>=16'} type-is@1.6.18: @@ -11393,12 +12035,12 @@ packages: resolution: {integrity: sha512-3iMJ9q0ao7WE9tWcaYKIptkNBuOIcZCCT0d4MRvuuH88fEoEH62IuQe0OtraD3ebQEoTRk8XCBoknUNc1Y67pw==} engines: {node: '>= 0.4'} - typed-array-byte-offset@1.0.2: - resolution: {integrity: sha512-Ous0vodHa56FviZucS2E63zkgtgrACj7omjwd/8lTEMEPFFyjfixMZ1ZXenpgCFBBt4EC1J2XsyVS2gkG0eTFA==} + typed-array-byte-offset@1.0.3: + resolution: {integrity: sha512-GsvTyUHTriq6o/bHcTd0vM7OQ9JEdlvluu9YISaA7+KzDzPaIzEeDFNkTfhdE3MYcNhNi0vq/LlegYgIs5yPAw==} engines: {node: '>= 0.4'} - typed-array-length@1.0.6: - resolution: {integrity: sha512-/OxDN6OtAk5KBpGb28T+HZc2M+ADtvRxXrKKbUwtsLgdoxgX13hyy7ek6bFRl5+aBs2yZzB0c4CnQfAtVypW/g==} + typed-array-length@1.0.7: + resolution: {integrity: sha512-3KS2b+kL7fsuk/eJZ7EQdnEmQoaho/r6KUef7hxvltNA5DR8NAUM+8wJMbJyZ4G9/7i3v5zPBIMN5aybAh2/Jg==} engines: {node: '>= 0.4'} typedarray-to-buffer@3.1.5: @@ -11439,8 +12081,12 @@ packages: undefsafe@2.0.5: resolution: {integrity: sha512-WxONCrssBM8TSPRqN5EmsjVrsv4A8X12J4ArBiiayv3DyyG3ZlIg6yysuuSYdZsVz3TKcTg2fd//Ujd4CHV1iA==} - undici-types@6.19.8: - resolution: {integrity: sha512-ve2KP6f/JnbPBFyobGHuerC9g1FYGn/F8n1LWTwNxCEzd6IfqTwUQcNXgEtmmQ6DlRrC1hrSrBnCZPokRrDHjw==} + undici-types@6.20.0: + resolution: {integrity: sha512-Ny6QZ2Nju20vw1SRHe3d9jVu6gJ+4e3+MMpqu7pqE5HT6WsTSlce++GQmK5UXS8mzV8DSYHrQH+Xrf2jVcuKNg==} + + undici@6.21.0: + resolution: {integrity: sha512-BUgJXc752Kou3oOIuU1i+yZZypyZRqNPW0vqoMPl8VaoalSfeR0D8/t4iAS3yirs79SSMTxTag+ZC86uswv+Cw==} + engines: {node: '>=18.17'} unenv@1.10.0: resolution: {integrity: sha512-wY5bskBQFL9n3Eca5XnhH6KbUo/tfvkwm9OpcdCvLaeA7piBNbavbOKJySEwQ1V0RH6HvNlSAFRTpvTqgKRQXQ==} @@ -11606,16 +12252,20 @@ packages: url-join@4.0.1: resolution: {integrity: sha512-jk1+QP6ZJqyOiuEI9AEWQfju/nB2Pw466kbA0LEZljHwKeMgd9WrAEgEGxjPDD2+TNbbb37rTyhEfrCXfuKXnA==} + url-join@5.0.0: + resolution: {integrity: sha512-n2huDr9h9yzd6exQVnH/jU5mr+Pfx08LRXXZhkLLetAMESRj+anQsTAh940iMrIetKAmry9coFuZQ2jY8/p3WA==} + engines: {node: ^12.20.0 || ^14.13.1 || >=16.0.0} + url-parse@1.5.10: resolution: {integrity: sha512-WypcfiRhfeUP9vvF0j6rw0J3hrWrw6iZv3+22h6iRMJ/8z1Tj6XfLP4DsUix5MhMPnXpiHDoKyoZ/bdCkwBCiQ==} urlpattern-polyfill@8.0.2: resolution: {integrity: sha512-Qp95D4TPJl1kC9SKigDcqgyM2VDVO4RiJc2d4qe5GrYm+zbIQCWWKAFaJNQ4BhdFeDGwBmAxqJBwWSJDb9T3BQ==} - use-sync-external-store@1.2.2: - resolution: {integrity: sha512-PElTlVMwpblvbNqQ82d2n6RjStvdSoNe9FG28kNfz3WiXilJm4DdNkEzRhCZuIDwY8U08WVihhGR5iRqAwfDiw==} + use-sync-external-store@1.4.0: + resolution: {integrity: sha512-9WXSPC5fMv61vaupRkCKCxsPxBocVnwakBEkMIHHpkTTg6icbJtg6jzgtLDm4bl3cSHAca52rYWih0k4K3PfHw==} peerDependencies: - react: ^16.8.0 || ^17.0.0 || ^18.0.0 + react: ^16.8.0 || ^17.0.0 || ^18.0.0 || ^19.0.0 useless-lib@2.1.0: resolution: {integrity: sha512-HxMJ/lOLgSDcQNkI0niuCKzft4IfFy/jyF0ovmEpZvI35zSu+cytwUvj5yRfEM94ABFcpIk96BGojv0QwXFm6A==} @@ -11633,8 +12283,8 @@ packages: resolution: {integrity: sha512-pMZTvIkT1d+TFGvDOqodOclx0QWkkgi6Tdoa8gC8ffGAAqz9pzPTZWAybbsHHoED/ztMtkv/VoYTYyShUn81hA==} engines: {node: '>= 0.4.0'} - uuid@11.0.2: - resolution: {integrity: sha512-14FfcOJmqdjbBPdDjFQyk/SdT4NySW4eM0zcG+HqbHP5jzuH56xO3J1DGhgs/cEMCfwYi3HQI1gnTO62iaG+tQ==} + uuid@11.0.3: + resolution: {integrity: sha512-d0z310fCWv5dJwnX1Y/MncBAqGMKEzlBb1AOf7z9K8ALnd0utBX/msg/fA0+sbyN1ihbMsLhrBlnl1ak7Wa0rg==} hasBin: true uuid@8.3.2: @@ -11668,6 +12318,10 @@ packages: resolution: {integrity: sha512-OljLrQ9SQdOUqTaQxqL5dEfZWrXExyyWsozYlAWFawPVNuD83igl7uJD2RTkNMbniIYgt8l81eCJGIdQF7avLQ==} engines: {node: ^14.17.0 || ^16.13.0 || >=18.0.0} + validate-npm-package-name@6.0.0: + resolution: {integrity: sha512-d7KLgL1LD3U3fgnvWEY1cQXoO/q6EQ1BSz48Sa149V/5zVTAbgmZIpyI8TRi6U9/JNyeYLlTKsEMPtLC27RFUg==} + engines: {node: ^18.17.0 || >=20.5.0} + vary@1.1.2: resolution: {integrity: sha512-BNGbWLfd0eUPabhkXUVm0j8uuvREyTh5ovRa/dyow/BqAbZJyC+5fU+IzQOzmAKzYqYRAISoRhdQr3eIZ/PXqg==} engines: {node: '>= 0.8'} @@ -11730,9 +12384,6 @@ packages: webidl-conversions@3.0.1: resolution: {integrity: sha512-2JAn3z8AR6rjK8Sm8orRC0h/bcl/DqL7tRPdGZ4I1CjdF+EaMLmYxBHyXuKL849eucPFhvBoxMsflfOb8kxaeQ==} - webidl-conversions@4.0.2: - resolution: {integrity: sha512-YQ+BmxuTgd6UXZW3+ICGfyqRyHXVlD5GtQr5+qjiNW7bF0cqrzX500HVXPBOvgXb5YnzDd+h0zqyv61KUD7+Sg==} - webidl-conversions@7.0.0: resolution: {integrity: sha512-VwddBukDzu71offAQR975unBIGqfKZpM+8ZX6ySk8nYhVoo5CYaZyzt3YBvYtRtO+aoGlqxPg/B87NGVZ/fu6g==} engines: {node: '>=12'} @@ -11763,8 +12414,8 @@ packages: webpack: optional: true - webpack-dev-server@5.1.0: - resolution: {integrity: sha512-aQpaN81X6tXie1FoOB7xlMfCsN19pSvRAeYUHOdFWOlhpQ/LlbfTqYwwmEDFV0h8GGuqmCmKmT+pxcUV/Nt2gQ==} + webpack-dev-server@5.2.0: + resolution: {integrity: sha512-90SqqYXA2SK36KcT6o1bvwvZfJFcmoamqeJY7+boioffX9g9C0wjjJRGUrQIuh43pb0ttX7+ssavmj/WN2RHtA==} engines: {node: '>= 18.12.0'} hasBin: true peerDependencies: @@ -11784,8 +12435,8 @@ packages: resolution: {integrity: sha512-/DyMEOrDgLKKIG0fmvtz+4dUX/3Ghozwgm6iPp8KRhvn+eQf9+Q7GWxVNMk3+uCPWfdXYC4ExGBckIXdFEfH1w==} engines: {node: '>=10.13.0'} - webpack@5.96.1: - resolution: {integrity: sha512-l2LlBSvVZGhL4ZrPwyr8+37AunkcYj5qh8o6u2/2rzoPc8gxFJkLj1WxNgooi9pnoc06jh0BjuXnamM4qlujZA==} + webpack@5.97.1: + resolution: {integrity: sha512-EksG6gFY3L1eFMROS/7Wzgrii5mBAFe4rIr3r2BTfo7bcc+DWwFZ4OJ/miOuHJO/A85HwyI4eQ0F6IKXesO7Fg==} engines: {node: '>=10.13.0'} hasBin: true peerDependencies: @@ -11821,25 +12472,23 @@ packages: whatwg-url@5.0.0: resolution: {integrity: sha512-saE57nupxk6v3HY35+jzBwYa0rKSy0XR8JSxZPwgLr7ys0IBzhGviA1/TUGJLmSVqs8pb9AnvICXEuOHLprYTw==} - whatwg-url@7.1.0: - resolution: {integrity: sha512-WUu7Rg1DroM7oQvGWfOiAK21n74Gg+T4elXEQYkOhtyLeWiJFoOGLXPKI/9gzIie9CtwVLm8wtw6YJdKyxSjeg==} - when-exit@2.1.3: resolution: {integrity: sha512-uVieSTccFIr/SFQdFWN/fFaQYmV37OKtuaGphMAzi4DmmUlrvRBJW5WSLkHyjNQY/ePJMz3LoiX9R3yy1Su6Hw==} - which-boxed-primitive@1.0.2: - resolution: {integrity: sha512-bwZdv0AKLpplFY2KZRX6TvyuN7ojjr7lwkg6ml0roIy9YeuSr7JS372qlNW18UQYzgYK9ziGcerWqZOmEn9VNg==} + which-boxed-primitive@1.1.0: + resolution: {integrity: sha512-Ei7Miu/AXe2JJ4iNF5j/UphAgRoma4trE6PtisM09bPygb3egMH3YLW/befsWb1A1AxvNSFidOFTB18XtnIIng==} + engines: {node: '>= 0.4'} - which-builtin-type@1.1.4: - resolution: {integrity: sha512-bppkmBSsHFmIMSl8BO9TbsyzsvGjVoppt8xUiGzwiu/bhDCGxnpOKCxgqj6GuyHE0mINMDecBFPlOm2hzY084w==} + which-builtin-type@1.2.1: + resolution: {integrity: sha512-6iBczoX+kDQ7a3+YJBnh3T+KZRxM/iYNPXicqk66/Qfm1b93iu+yOImkg0zHbj5LNOcNv1TEADiZ0xa34B4q6Q==} engines: {node: '>= 0.4'} which-collection@1.0.2: resolution: {integrity: sha512-K4jVyjnBdgvc86Y6BkaLZEN933SwYOuBFkdmBu9ZfkcAbdVbpITnDmjvZ/aQjRXQrv5EPkTnD1s39GiiqbngCw==} engines: {node: '>= 0.4'} - which-typed-array@1.1.15: - resolution: {integrity: sha512-oV0jmFtUky6CXfkqehVvBP/LSWJ2sy4vWMioiENyJLePrBO/yKyV9OyJySfAKosh+RYkIl5zJCNZ8/4JncrpdA==} + which-typed-array@1.1.16: + resolution: {integrity: sha512-g+N+GAWiRj66DngFwHvISJd+ITsyphZvD1vChfVg6cEdnzy53GzB3oy0fUNlvhz7H7+MiqhYr26qxQShCpKTTQ==} engines: {node: '>= 0.4'} which@1.3.1: @@ -11886,10 +12535,6 @@ packages: resolution: {integrity: sha512-BN22B5eaMMI9UMtjrGd5g5eCYPpCPDUy0FJXbYsaT5zYxjFOckS53SQDE3pWkVoWpHXVb3BrYcEN4Twa55B5cA==} engines: {node: '>=0.10.0'} - wordwrap@0.0.3: - resolution: {integrity: sha512-1tMA907+V4QmxV7dbRvb4/8MaRALK6q9Abid3ndMYnbyo8piisCmeONVqVSXqQA3KaP4SLt5b7ud6E2sqP8TFw==} - engines: {node: '>=0.4.0'} - wrap-ansi@6.2.0: resolution: {integrity: sha512-r6lPcBGxZXlIcymEu7InxDMhdW0KDxpLgoFLcguasxCaJ/SOIZwINatK9KY/tf+ZrlywOKU0UDj3ATXUBfxJXA==} engines: {node: '>=8'} @@ -11956,21 +12601,22 @@ packages: resolution: {integrity: sha512-0pfFzegeDWJHJIAmTLRP2DwHjdF5s7jo9tuztdQxAhINCdvS+3nGINqPd00AphqJR/0LhANUS6/+7SCb98YOfA==} engines: {node: '>=10'} - yallist@2.1.2: - resolution: {integrity: sha512-ncTzHV7NvsQZkYe1DW7cbDLm0YpzHmZF5r/iyP3ZnQtMiJ+pjzisCiMNI+Sj+xQF5pXhSHxSB3uDbsBTzY/c2A==} - yallist@3.1.1: resolution: {integrity: sha512-a4UGQaWPH59mOXUYnAG2ewncQS4i4F43Tv3JoAM+s2VDAmS9NsK8GpDMLrCHPksFT7h3K6TOoUNn2pb7RoXx4g==} yallist@4.0.0: resolution: {integrity: sha512-3wdGidZyq5PB084XLES5TpOSRA3wjXAlIWMhum2kRcv/41Sn2emQ0dycQW4uZXLejwKvg6EsvbdlVL+FYEct7A==} + yallist@5.0.0: + resolution: {integrity: sha512-YgvUTfwqyc7UXVMrB+SImsVYSmTS8X/tSrtdNZMImM+n7+QTriRXyXim0mBrTXNeqzVF0KWGgHPeiyViFFrNDw==} + engines: {node: '>=18'} + yaml-eslint-parser@1.2.3: resolution: {integrity: sha512-4wZWvE398hCP7O8n3nXKu/vdq1HcH01ixYlCREaJL5NUMwQ0g3MaGFUBNSlmBtKmhbtVG/Cm6lyYmSVTEVil8A==} engines: {node: ^14.17.0 || >=16.0.0} - yaml@2.6.0: - resolution: {integrity: sha512-a6ae//JvKDEra2kdi1qzCyrJW/WZCgFi8ydDV+eXExl95t+5R+ijnqHJbz9tmMh8FUjx3iv2fCQ4dclAQlO2UQ==} + yaml@2.6.1: + resolution: {integrity: sha512-7r0XPzioN/Q9kXBro/XPnA6kznR73DHq+GXh5ON7ZozRO6aMjbmiBuKste2wslTFkC5d1dw0GooOCepZXJ2SAg==} engines: {node: '>= 14'} hasBin: true @@ -12017,6 +12663,10 @@ packages: resolution: {integrity: sha512-zK7YHHz4ZXpW89AHXUPbQVGKI7uvkd3hzusTdotCg1UxyaVtg0zFJSTfW/Dq5f7OBBVnq6cZIaC8Ti4hb6dtCA==} engines: {node: '>= 14'} + zod-package-json@1.0.3: + resolution: {integrity: sha512-Mb6GzuRyUEl8X+6V6xzHbd4XV0au/4gOYrYP+CAfHL32uPmGswES+v2YqonZiW1NZWVA3jkssCKSU2knonm/aQ==} + engines: {node: '>=20'} + zod-validation-error@3.4.0: resolution: {integrity: sha512-ZOPR9SVY6Pb2qqO5XHt+MkkTRxGXb4EVtnjc9JpXUOtUB1T9Ru7mZOT361AN3MsetVe7R0a1KZshJDZdgp9miQ==} engines: {node: '>=18.0.0'} @@ -12026,6 +12676,9 @@ packages: zod@3.23.8: resolution: {integrity: sha512-XBx9AXhXktjUqnepgTiE5flcKIYWi/rme0Eaj+5Y0lftuGBq+jyRu/md4WnuxqgP1ubdpNCsYEYPxrzVHD8d6g==} + zod@3.24.1: + resolution: {integrity: sha512-muH7gBL9sI1nciMZV67X5fTKKBLtwpZ5VBp1vsOQzj1MhrBZ4wlVCm3gedKZWLp0Oyel8sIGfeiz54Su+OVT+A==} + zone.js@0.14.10: resolution: {integrity: sha512-YGAhaO7J5ywOXW6InXNlLmfU194F8lVgu7bRntUF3TiG8Y3nBK0x1UJJuHUP/e8IyihkjCYqhCScpSwnlaSRkQ==} @@ -12036,9 +12689,11 @@ snapshots: '@adobe/css-tools@4.4.1': {} + '@altano/repository-tools@0.1.1': {} + '@ampproject/remapping@2.3.0': dependencies: - '@jridgewell/gen-mapping': 0.3.5 + '@jridgewell/gen-mapping': 0.3.8 '@jridgewell/trace-mapping': 0.3.25 '@babel/code-frame@7.26.2': @@ -12047,52 +12702,45 @@ snapshots: js-tokens: 4.0.0 picocolors: 1.1.1 - '@babel/compat-data@7.26.2': {} + '@babel/compat-data@7.26.3': {} '@babel/core@7.26.0': dependencies: '@ampproject/remapping': 2.3.0 '@babel/code-frame': 7.26.2 - '@babel/generator': 7.26.2 + '@babel/generator': 7.26.3 '@babel/helper-compilation-targets': 7.25.9 '@babel/helper-module-transforms': 7.26.0(@babel/core@7.26.0) '@babel/helpers': 7.26.0 - '@babel/parser': 7.26.2 + '@babel/parser': 7.26.3 '@babel/template': 7.25.9 - '@babel/traverse': 7.25.9 - '@babel/types': 7.26.0 + '@babel/traverse': 7.26.4 + '@babel/types': 7.26.3 convert-source-map: 2.0.0 - debug: 4.3.7(supports-color@5.5.0) + debug: 4.4.0(supports-color@9.4.0) gensync: 1.0.0-beta.2 json5: 2.2.3 semver: 6.3.1 transitivePeerDependencies: - supports-color - '@babel/generator@7.26.2': + '@babel/generator@7.26.3': dependencies: - '@babel/parser': 7.26.2 - '@babel/types': 7.26.0 - '@jridgewell/gen-mapping': 0.3.5 + '@babel/parser': 7.26.3 + '@babel/types': 7.26.3 + '@jridgewell/gen-mapping': 0.3.8 '@jridgewell/trace-mapping': 0.3.25 - jsesc: 3.0.2 + jsesc: 3.1.0 '@babel/helper-annotate-as-pure@7.25.9': dependencies: - '@babel/types': 7.26.0 - - '@babel/helper-builder-binary-assignment-operator-visitor@7.25.9': - dependencies: - '@babel/traverse': 7.25.9 - '@babel/types': 7.26.0 - transitivePeerDependencies: - - supports-color + '@babel/types': 7.26.3 '@babel/helper-compilation-targets@7.25.9': dependencies: - '@babel/compat-data': 7.26.2 + '@babel/compat-data': 7.26.3 '@babel/helper-validator-option': 7.25.9 - browserslist: 4.24.2 + browserslist: 4.24.3 lru-cache: 5.1.1 semver: 6.3.1 @@ -12104,16 +12752,16 @@ snapshots: '@babel/helper-optimise-call-expression': 7.25.9 '@babel/helper-replace-supers': 7.25.9(@babel/core@7.26.0) '@babel/helper-skip-transparent-expression-wrappers': 7.25.9 - '@babel/traverse': 7.25.9 + '@babel/traverse': 7.26.4 semver: 6.3.1 transitivePeerDependencies: - supports-color - '@babel/helper-create-regexp-features-plugin@7.25.9(@babel/core@7.26.0)': + '@babel/helper-create-regexp-features-plugin@7.26.3(@babel/core@7.26.0)': dependencies: '@babel/core': 7.26.0 '@babel/helper-annotate-as-pure': 7.25.9 - regexpu-core: 6.1.1 + regexpu-core: 6.2.0 semver: 6.3.1 '@babel/helper-define-polyfill-provider@0.6.3(@babel/core@7.26.0)': @@ -12121,23 +12769,23 @@ snapshots: '@babel/core': 7.26.0 '@babel/helper-compilation-targets': 7.25.9 '@babel/helper-plugin-utils': 7.25.9 - debug: 4.3.7(supports-color@5.5.0) + debug: 4.4.0(supports-color@9.4.0) lodash.debounce: 4.0.8 - resolve: 1.22.8 + resolve: 1.22.9 transitivePeerDependencies: - supports-color '@babel/helper-member-expression-to-functions@7.25.9': dependencies: - '@babel/traverse': 7.25.9 - '@babel/types': 7.26.0 + '@babel/traverse': 7.26.4 + '@babel/types': 7.26.3 transitivePeerDependencies: - supports-color '@babel/helper-module-imports@7.25.9': dependencies: - '@babel/traverse': 7.25.9 - '@babel/types': 7.26.0 + '@babel/traverse': 7.26.4 + '@babel/types': 7.26.3 transitivePeerDependencies: - supports-color @@ -12146,13 +12794,13 @@ snapshots: '@babel/core': 7.26.0 '@babel/helper-module-imports': 7.25.9 '@babel/helper-validator-identifier': 7.25.9 - '@babel/traverse': 7.25.9 + '@babel/traverse': 7.26.4 transitivePeerDependencies: - supports-color '@babel/helper-optimise-call-expression@7.25.9': dependencies: - '@babel/types': 7.26.0 + '@babel/types': 7.26.3 '@babel/helper-plugin-utils@7.25.9': {} @@ -12161,7 +12809,7 @@ snapshots: '@babel/core': 7.26.0 '@babel/helper-annotate-as-pure': 7.25.9 '@babel/helper-wrap-function': 7.25.9 - '@babel/traverse': 7.25.9 + '@babel/traverse': 7.26.4 transitivePeerDependencies: - supports-color @@ -12170,21 +12818,14 @@ snapshots: '@babel/core': 7.26.0 '@babel/helper-member-expression-to-functions': 7.25.9 '@babel/helper-optimise-call-expression': 7.25.9 - '@babel/traverse': 7.25.9 - transitivePeerDependencies: - - supports-color - - '@babel/helper-simple-access@7.25.9': - dependencies: - '@babel/traverse': 7.25.9 - '@babel/types': 7.26.0 + '@babel/traverse': 7.26.4 transitivePeerDependencies: - supports-color '@babel/helper-skip-transparent-expression-wrappers@7.25.9': dependencies: - '@babel/traverse': 7.25.9 - '@babel/types': 7.26.0 + '@babel/traverse': 7.26.4 + '@babel/types': 7.26.3 transitivePeerDependencies: - supports-color @@ -12197,25 +12838,25 @@ snapshots: '@babel/helper-wrap-function@7.25.9': dependencies: '@babel/template': 7.25.9 - '@babel/traverse': 7.25.9 - '@babel/types': 7.26.0 + '@babel/traverse': 7.26.4 + '@babel/types': 7.26.3 transitivePeerDependencies: - supports-color '@babel/helpers@7.26.0': dependencies: '@babel/template': 7.25.9 - '@babel/types': 7.26.0 + '@babel/types': 7.26.3 - '@babel/parser@7.26.2': + '@babel/parser@7.26.3': dependencies: - '@babel/types': 7.26.0 + '@babel/types': 7.26.3 '@babel/plugin-bugfix-firefox-class-in-computed-class-key@7.25.9(@babel/core@7.26.0)': dependencies: '@babel/core': 7.26.0 '@babel/helper-plugin-utils': 7.25.9 - '@babel/traverse': 7.25.9 + '@babel/traverse': 7.26.4 transitivePeerDependencies: - supports-color @@ -12242,7 +12883,7 @@ snapshots: dependencies: '@babel/core': 7.26.0 '@babel/helper-plugin-utils': 7.25.9 - '@babel/traverse': 7.25.9 + '@babel/traverse': 7.26.4 transitivePeerDependencies: - supports-color @@ -12343,7 +12984,7 @@ snapshots: '@babel/plugin-syntax-unicode-sets-regex@7.18.6(@babel/core@7.26.0)': dependencies: '@babel/core': 7.26.0 - '@babel/helper-create-regexp-features-plugin': 7.25.9(@babel/core@7.26.0) + '@babel/helper-create-regexp-features-plugin': 7.26.3(@babel/core@7.26.0) '@babel/helper-plugin-utils': 7.25.9 '@babel/plugin-transform-arrow-functions@7.25.9(@babel/core@7.26.0)': @@ -12356,7 +12997,7 @@ snapshots: '@babel/core': 7.26.0 '@babel/helper-plugin-utils': 7.25.9 '@babel/helper-remap-async-to-generator': 7.25.9(@babel/core@7.26.0) - '@babel/traverse': 7.25.9 + '@babel/traverse': 7.26.4 transitivePeerDependencies: - supports-color @@ -12402,7 +13043,7 @@ snapshots: '@babel/helper-compilation-targets': 7.25.9 '@babel/helper-plugin-utils': 7.25.9 '@babel/helper-replace-supers': 7.25.9(@babel/core@7.26.0) - '@babel/traverse': 7.25.9 + '@babel/traverse': 7.26.4 globals: 11.12.0 transitivePeerDependencies: - supports-color @@ -12421,7 +13062,7 @@ snapshots: '@babel/plugin-transform-dotall-regex@7.25.9(@babel/core@7.26.0)': dependencies: '@babel/core': 7.26.0 - '@babel/helper-create-regexp-features-plugin': 7.25.9(@babel/core@7.26.0) + '@babel/helper-create-regexp-features-plugin': 7.26.3(@babel/core@7.26.0) '@babel/helper-plugin-utils': 7.25.9 '@babel/plugin-transform-duplicate-keys@7.25.9(@babel/core@7.26.0)': @@ -12432,7 +13073,7 @@ snapshots: '@babel/plugin-transform-duplicate-named-capturing-groups-regex@7.25.9(@babel/core@7.26.0)': dependencies: '@babel/core': 7.26.0 - '@babel/helper-create-regexp-features-plugin': 7.25.9(@babel/core@7.26.0) + '@babel/helper-create-regexp-features-plugin': 7.26.3(@babel/core@7.26.0) '@babel/helper-plugin-utils': 7.25.9 '@babel/plugin-transform-dynamic-import@7.25.9(@babel/core@7.26.0)': @@ -12440,13 +13081,10 @@ snapshots: '@babel/core': 7.26.0 '@babel/helper-plugin-utils': 7.25.9 - '@babel/plugin-transform-exponentiation-operator@7.25.9(@babel/core@7.26.0)': + '@babel/plugin-transform-exponentiation-operator@7.26.3(@babel/core@7.26.0)': dependencies: '@babel/core': 7.26.0 - '@babel/helper-builder-binary-assignment-operator-visitor': 7.25.9 '@babel/helper-plugin-utils': 7.25.9 - transitivePeerDependencies: - - supports-color '@babel/plugin-transform-export-namespace-from@7.25.9(@babel/core@7.26.0)': dependencies: @@ -12466,7 +13104,7 @@ snapshots: '@babel/core': 7.26.0 '@babel/helper-compilation-targets': 7.25.9 '@babel/helper-plugin-utils': 7.25.9 - '@babel/traverse': 7.25.9 + '@babel/traverse': 7.26.4 transitivePeerDependencies: - supports-color @@ -12498,12 +13136,11 @@ snapshots: transitivePeerDependencies: - supports-color - '@babel/plugin-transform-modules-commonjs@7.25.9(@babel/core@7.26.0)': + '@babel/plugin-transform-modules-commonjs@7.26.3(@babel/core@7.26.0)': dependencies: '@babel/core': 7.26.0 '@babel/helper-module-transforms': 7.26.0(@babel/core@7.26.0) '@babel/helper-plugin-utils': 7.25.9 - '@babel/helper-simple-access': 7.25.9 transitivePeerDependencies: - supports-color @@ -12513,7 +13150,7 @@ snapshots: '@babel/helper-module-transforms': 7.26.0(@babel/core@7.26.0) '@babel/helper-plugin-utils': 7.25.9 '@babel/helper-validator-identifier': 7.25.9 - '@babel/traverse': 7.25.9 + '@babel/traverse': 7.26.4 transitivePeerDependencies: - supports-color @@ -12528,7 +13165,7 @@ snapshots: '@babel/plugin-transform-named-capturing-groups-regex@7.25.9(@babel/core@7.26.0)': dependencies: '@babel/core': 7.26.0 - '@babel/helper-create-regexp-features-plugin': 7.25.9(@babel/core@7.26.0) + '@babel/helper-create-regexp-features-plugin': 7.26.3(@babel/core@7.26.0) '@babel/helper-plugin-utils': 7.25.9 '@babel/plugin-transform-new-target@7.25.9(@babel/core@7.26.0)': @@ -12625,7 +13262,7 @@ snapshots: '@babel/helper-module-imports': 7.25.9 '@babel/helper-plugin-utils': 7.25.9 '@babel/plugin-syntax-jsx': 7.25.9(@babel/core@7.26.0) - '@babel/types': 7.26.0 + '@babel/types': 7.26.3 transitivePeerDependencies: - supports-color @@ -12644,7 +13281,7 @@ snapshots: '@babel/plugin-transform-regexp-modifiers@7.26.0(@babel/core@7.26.0)': dependencies: '@babel/core': 7.26.0 - '@babel/helper-create-regexp-features-plugin': 7.25.9(@babel/core@7.26.0) + '@babel/helper-create-regexp-features-plugin': 7.26.3(@babel/core@7.26.0) '@babel/helper-plugin-utils': 7.25.9 '@babel/plugin-transform-reserved-words@7.25.9(@babel/core@7.26.0)': @@ -12680,7 +13317,7 @@ snapshots: '@babel/core': 7.26.0 '@babel/helper-plugin-utils': 7.25.9 - '@babel/plugin-transform-typescript@7.25.9(@babel/core@7.26.0)': + '@babel/plugin-transform-typescript@7.26.3(@babel/core@7.26.0)': dependencies: '@babel/core': 7.26.0 '@babel/helper-annotate-as-pure': 7.25.9 @@ -12699,24 +13336,24 @@ snapshots: '@babel/plugin-transform-unicode-property-regex@7.25.9(@babel/core@7.26.0)': dependencies: '@babel/core': 7.26.0 - '@babel/helper-create-regexp-features-plugin': 7.25.9(@babel/core@7.26.0) + '@babel/helper-create-regexp-features-plugin': 7.26.3(@babel/core@7.26.0) '@babel/helper-plugin-utils': 7.25.9 '@babel/plugin-transform-unicode-regex@7.25.9(@babel/core@7.26.0)': dependencies: '@babel/core': 7.26.0 - '@babel/helper-create-regexp-features-plugin': 7.25.9(@babel/core@7.26.0) + '@babel/helper-create-regexp-features-plugin': 7.26.3(@babel/core@7.26.0) '@babel/helper-plugin-utils': 7.25.9 '@babel/plugin-transform-unicode-sets-regex@7.25.9(@babel/core@7.26.0)': dependencies: '@babel/core': 7.26.0 - '@babel/helper-create-regexp-features-plugin': 7.25.9(@babel/core@7.26.0) + '@babel/helper-create-regexp-features-plugin': 7.26.3(@babel/core@7.26.0) '@babel/helper-plugin-utils': 7.25.9 '@babel/preset-env@7.26.0(@babel/core@7.26.0)': dependencies: - '@babel/compat-data': 7.26.2 + '@babel/compat-data': 7.26.3 '@babel/core': 7.26.0 '@babel/helper-compilation-targets': 7.25.9 '@babel/helper-plugin-utils': 7.25.9 @@ -12744,7 +13381,7 @@ snapshots: '@babel/plugin-transform-duplicate-keys': 7.25.9(@babel/core@7.26.0) '@babel/plugin-transform-duplicate-named-capturing-groups-regex': 7.25.9(@babel/core@7.26.0) '@babel/plugin-transform-dynamic-import': 7.25.9(@babel/core@7.26.0) - '@babel/plugin-transform-exponentiation-operator': 7.25.9(@babel/core@7.26.0) + '@babel/plugin-transform-exponentiation-operator': 7.26.3(@babel/core@7.26.0) '@babel/plugin-transform-export-namespace-from': 7.25.9(@babel/core@7.26.0) '@babel/plugin-transform-for-of': 7.25.9(@babel/core@7.26.0) '@babel/plugin-transform-function-name': 7.25.9(@babel/core@7.26.0) @@ -12753,7 +13390,7 @@ snapshots: '@babel/plugin-transform-logical-assignment-operators': 7.25.9(@babel/core@7.26.0) '@babel/plugin-transform-member-expression-literals': 7.25.9(@babel/core@7.26.0) '@babel/plugin-transform-modules-amd': 7.25.9(@babel/core@7.26.0) - '@babel/plugin-transform-modules-commonjs': 7.25.9(@babel/core@7.26.0) + '@babel/plugin-transform-modules-commonjs': 7.26.3(@babel/core@7.26.0) '@babel/plugin-transform-modules-systemjs': 7.25.9(@babel/core@7.26.0) '@babel/plugin-transform-modules-umd': 7.25.9(@babel/core@7.26.0) '@babel/plugin-transform-named-capturing-groups-regex': 7.25.9(@babel/core@7.26.0) @@ -12793,10 +13430,10 @@ snapshots: dependencies: '@babel/core': 7.26.0 '@babel/helper-plugin-utils': 7.25.9 - '@babel/types': 7.26.0 + '@babel/types': 7.26.3 esutils: 2.0.3 - '@babel/preset-react@7.25.9(@babel/core@7.26.0)': + '@babel/preset-react@7.26.3(@babel/core@7.26.0)': dependencies: '@babel/core': 7.26.0 '@babel/helper-plugin-utils': 7.25.9 @@ -12814,8 +13451,8 @@ snapshots: '@babel/helper-plugin-utils': 7.25.9 '@babel/helper-validator-option': 7.25.9 '@babel/plugin-syntax-jsx': 7.25.9(@babel/core@7.26.0) - '@babel/plugin-transform-modules-commonjs': 7.25.9(@babel/core@7.26.0) - '@babel/plugin-transform-typescript': 7.25.9(@babel/core@7.26.0) + '@babel/plugin-transform-modules-commonjs': 7.26.3(@babel/core@7.26.0) + '@babel/plugin-transform-typescript': 7.26.3(@babel/core@7.26.0) transitivePeerDependencies: - supports-color @@ -12826,17 +13463,17 @@ snapshots: '@babel/template@7.25.9': dependencies: '@babel/code-frame': 7.26.2 - '@babel/parser': 7.26.2 - '@babel/types': 7.26.0 + '@babel/parser': 7.26.3 + '@babel/types': 7.26.3 - '@babel/traverse@7.25.9': + '@babel/traverse@7.26.4': dependencies: '@babel/code-frame': 7.26.2 - '@babel/generator': 7.26.2 - '@babel/parser': 7.26.2 + '@babel/generator': 7.26.3 + '@babel/parser': 7.26.3 '@babel/template': 7.25.9 - '@babel/types': 7.26.0 - debug: 4.3.7(supports-color@5.5.0) + '@babel/types': 7.26.3 + debug: 4.4.0(supports-color@9.4.0) globals: 11.12.0 transitivePeerDependencies: - supports-color @@ -12847,7 +13484,7 @@ snapshots: '@babel/helper-validator-identifier': 7.25.9 to-fast-properties: 2.0.0 - '@babel/types@7.26.0': + '@babel/types@7.26.3': dependencies: '@babel/helper-string-parser': 7.25.9 '@babel/helper-validator-identifier': 7.25.9 @@ -12897,11 +13534,11 @@ snapshots: '@types/tough-cookie': 4.0.5 tough-cookie: 4.1.4 - '@changesets/apply-release-plan@7.0.5': + '@changesets/apply-release-plan@7.0.6': dependencies: - '@changesets/config': 3.0.3 + '@changesets/config': 3.0.4 '@changesets/get-version-range-type': 0.4.0 - '@changesets/git': 3.0.1 + '@changesets/git': 3.0.2 '@changesets/should-skip-package': 0.1.1 '@changesets/types': 6.0.0 '@manypkg/get-packages': 1.1.3 @@ -12913,7 +13550,7 @@ snapshots: resolve-from: 5.0.0 semver: 7.6.3 - '@changesets/assemble-release-plan@6.0.4': + '@changesets/assemble-release-plan@6.0.5': dependencies: '@changesets/errors': 0.2.0 '@changesets/get-dependents-graph': 2.1.2 @@ -12934,19 +13571,19 @@ snapshots: transitivePeerDependencies: - encoding - '@changesets/cli@2.27.9': + '@changesets/cli@2.27.10': dependencies: - '@changesets/apply-release-plan': 7.0.5 - '@changesets/assemble-release-plan': 6.0.4 + '@changesets/apply-release-plan': 7.0.6 + '@changesets/assemble-release-plan': 6.0.5 '@changesets/changelog-git': 0.2.0 - '@changesets/config': 3.0.3 + '@changesets/config': 3.0.4 '@changesets/errors': 0.2.0 '@changesets/get-dependents-graph': 2.1.2 - '@changesets/get-release-plan': 4.0.4 - '@changesets/git': 3.0.1 + '@changesets/get-release-plan': 4.0.5 + '@changesets/git': 3.0.2 '@changesets/logger': 0.1.1 '@changesets/pre': 2.0.1 - '@changesets/read': 0.6.1 + '@changesets/read': 0.6.2 '@changesets/should-skip-package': 0.1.1 '@changesets/types': 6.0.0 '@changesets/write': 0.3.2 @@ -12958,14 +13595,14 @@ snapshots: fs-extra: 7.0.1 mri: 1.2.0 p-limit: 2.3.0 - package-manager-detector: 0.2.4 + package-manager-detector: 0.2.7 picocolors: 1.1.1 resolve-from: 5.0.0 semver: 7.6.3 - spawndamnit: 2.0.0 + spawndamnit: 3.0.1 term-size: 2.2.1 - '@changesets/config@3.0.3': + '@changesets/config@3.0.4': dependencies: '@changesets/errors': 0.2.0 '@changesets/get-dependents-graph': 2.1.2 @@ -12993,24 +13630,24 @@ snapshots: transitivePeerDependencies: - encoding - '@changesets/get-release-plan@4.0.4': + '@changesets/get-release-plan@4.0.5': dependencies: - '@changesets/assemble-release-plan': 6.0.4 - '@changesets/config': 3.0.3 + '@changesets/assemble-release-plan': 6.0.5 + '@changesets/config': 3.0.4 '@changesets/pre': 2.0.1 - '@changesets/read': 0.6.1 + '@changesets/read': 0.6.2 '@changesets/types': 6.0.0 '@manypkg/get-packages': 1.1.3 '@changesets/get-version-range-type@0.4.0': {} - '@changesets/git@3.0.1': + '@changesets/git@3.0.2': dependencies: '@changesets/errors': 0.2.0 '@manypkg/get-packages': 1.1.3 is-subdir: 1.2.0 micromatch: 4.0.8 - spawndamnit: 2.0.0 + spawndamnit: 3.0.1 '@changesets/logger@0.1.1': dependencies: @@ -13028,9 +13665,9 @@ snapshots: '@manypkg/get-packages': 1.1.3 fs-extra: 7.0.1 - '@changesets/read@0.6.1': + '@changesets/read@0.6.2': dependencies: - '@changesets/git': 3.0.1 + '@changesets/git': 3.0.2 '@changesets/logger': 0.1.1 '@changesets/parse': 0.4.0 '@changesets/types': 6.0.0 @@ -13073,6 +13710,27 @@ snapshots: '@discoveryjs/json-ext@0.5.7': {} + '@effect/schema@0.71.1(effect@3.6.5)': + dependencies: + effect: 3.6.5 + fast-check: 3.21.0 + + '@emnapi/core@1.3.1': + dependencies: + '@emnapi/wasi-threads': 1.0.1 + tslib: 2.8.1 + optional: true + + '@emnapi/runtime@1.3.1': + dependencies: + tslib: 2.8.1 + optional: true + + '@emnapi/wasi-threads@1.0.1': + dependencies: + tslib: 2.8.1 + optional: true + '@esbuild/aix-ppc64@0.19.11': optional: true @@ -13082,9 +13740,6 @@ snapshots: '@esbuild/aix-ppc64@0.23.1': optional: true - '@esbuild/aix-ppc64@0.24.0': - optional: true - '@esbuild/android-arm64@0.19.11': optional: true @@ -13094,9 +13749,6 @@ snapshots: '@esbuild/android-arm64@0.23.1': optional: true - '@esbuild/android-arm64@0.24.0': - optional: true - '@esbuild/android-arm@0.19.11': optional: true @@ -13106,9 +13758,6 @@ snapshots: '@esbuild/android-arm@0.23.1': optional: true - '@esbuild/android-arm@0.24.0': - optional: true - '@esbuild/android-x64@0.19.11': optional: true @@ -13118,9 +13767,6 @@ snapshots: '@esbuild/android-x64@0.23.1': optional: true - '@esbuild/android-x64@0.24.0': - optional: true - '@esbuild/darwin-arm64@0.19.11': optional: true @@ -13130,9 +13776,6 @@ snapshots: '@esbuild/darwin-arm64@0.23.1': optional: true - '@esbuild/darwin-arm64@0.24.0': - optional: true - '@esbuild/darwin-x64@0.19.11': optional: true @@ -13142,9 +13785,6 @@ snapshots: '@esbuild/darwin-x64@0.23.1': optional: true - '@esbuild/darwin-x64@0.24.0': - optional: true - '@esbuild/freebsd-arm64@0.19.11': optional: true @@ -13154,9 +13794,6 @@ snapshots: '@esbuild/freebsd-arm64@0.23.1': optional: true - '@esbuild/freebsd-arm64@0.24.0': - optional: true - '@esbuild/freebsd-x64@0.19.11': optional: true @@ -13166,9 +13803,6 @@ snapshots: '@esbuild/freebsd-x64@0.23.1': optional: true - '@esbuild/freebsd-x64@0.24.0': - optional: true - '@esbuild/linux-arm64@0.19.11': optional: true @@ -13178,9 +13812,6 @@ snapshots: '@esbuild/linux-arm64@0.23.1': optional: true - '@esbuild/linux-arm64@0.24.0': - optional: true - '@esbuild/linux-arm@0.19.11': optional: true @@ -13190,9 +13821,6 @@ snapshots: '@esbuild/linux-arm@0.23.1': optional: true - '@esbuild/linux-arm@0.24.0': - optional: true - '@esbuild/linux-ia32@0.19.11': optional: true @@ -13202,9 +13830,6 @@ snapshots: '@esbuild/linux-ia32@0.23.1': optional: true - '@esbuild/linux-ia32@0.24.0': - optional: true - '@esbuild/linux-loong64@0.19.11': optional: true @@ -13214,9 +13839,6 @@ snapshots: '@esbuild/linux-loong64@0.23.1': optional: true - '@esbuild/linux-loong64@0.24.0': - optional: true - '@esbuild/linux-mips64el@0.19.11': optional: true @@ -13226,9 +13848,6 @@ snapshots: '@esbuild/linux-mips64el@0.23.1': optional: true - '@esbuild/linux-mips64el@0.24.0': - optional: true - '@esbuild/linux-ppc64@0.19.11': optional: true @@ -13238,9 +13857,6 @@ snapshots: '@esbuild/linux-ppc64@0.23.1': optional: true - '@esbuild/linux-ppc64@0.24.0': - optional: true - '@esbuild/linux-riscv64@0.19.11': optional: true @@ -13250,9 +13866,6 @@ snapshots: '@esbuild/linux-riscv64@0.23.1': optional: true - '@esbuild/linux-riscv64@0.24.0': - optional: true - '@esbuild/linux-s390x@0.19.11': optional: true @@ -13262,9 +13875,6 @@ snapshots: '@esbuild/linux-s390x@0.23.1': optional: true - '@esbuild/linux-s390x@0.24.0': - optional: true - '@esbuild/linux-x64@0.19.11': optional: true @@ -13274,9 +13884,6 @@ snapshots: '@esbuild/linux-x64@0.23.1': optional: true - '@esbuild/linux-x64@0.24.0': - optional: true - '@esbuild/netbsd-x64@0.19.11': optional: true @@ -13286,15 +13893,9 @@ snapshots: '@esbuild/netbsd-x64@0.23.1': optional: true - '@esbuild/netbsd-x64@0.24.0': - optional: true - '@esbuild/openbsd-arm64@0.23.1': optional: true - '@esbuild/openbsd-arm64@0.24.0': - optional: true - '@esbuild/openbsd-x64@0.19.11': optional: true @@ -13304,9 +13905,6 @@ snapshots: '@esbuild/openbsd-x64@0.23.1': optional: true - '@esbuild/openbsd-x64@0.24.0': - optional: true - '@esbuild/sunos-x64@0.19.11': optional: true @@ -13316,9 +13914,6 @@ snapshots: '@esbuild/sunos-x64@0.23.1': optional: true - '@esbuild/sunos-x64@0.24.0': - optional: true - '@esbuild/win32-arm64@0.19.11': optional: true @@ -13328,9 +13923,6 @@ snapshots: '@esbuild/win32-arm64@0.23.1': optional: true - '@esbuild/win32-arm64@0.24.0': - optional: true - '@esbuild/win32-ia32@0.19.11': optional: true @@ -13340,9 +13932,6 @@ snapshots: '@esbuild/win32-ia32@0.23.1': optional: true - '@esbuild/win32-ia32@0.24.0': - optional: true - '@esbuild/win32-x64@0.19.11': optional: true @@ -13352,9 +13941,6 @@ snapshots: '@esbuild/win32-x64@0.23.1': optional: true - '@esbuild/win32-x64@0.24.0': - optional: true - '@eslint-community/eslint-utils@4.4.1(eslint@8.57.0)': dependencies: eslint: 8.57.0 @@ -13365,7 +13951,7 @@ snapshots: '@eslint/eslintrc@2.1.4': dependencies: ajv: 6.12.6 - debug: 4.3.7(supports-color@5.5.0) + debug: 4.4.0(supports-color@9.4.0) espree: 9.6.1 globals: 13.24.0 ignore: 5.3.2 @@ -13413,36 +13999,33 @@ snapshots: fastq: 1.17.1 glob: 10.4.5 - '@formatjs/ecma402-abstract@2.2.4': - dependencies: - '@formatjs/fast-memoize': 2.2.3 - '@formatjs/intl-localematcher': 0.5.8 - tslib: 2.8.1 - - '@formatjs/fast-memoize@2.2.3': + '@formatjs/ecma402-abstract@2.3.1': dependencies: + '@formatjs/fast-memoize': 2.2.5 + '@formatjs/intl-localematcher': 0.5.9 + decimal.js: 10.4.3 tslib: 2.8.1 - '@formatjs/icu-messageformat-parser@2.9.4': + '@formatjs/fast-memoize@2.2.5': dependencies: - '@formatjs/ecma402-abstract': 2.2.4 - '@formatjs/icu-skeleton-parser': 1.8.8 tslib: 2.8.1 - '@formatjs/icu-skeleton-parser@1.8.8': + '@formatjs/icu-messageformat-parser@2.9.7': dependencies: - '@formatjs/ecma402-abstract': 2.2.4 + '@formatjs/ecma402-abstract': 2.3.1 + '@formatjs/icu-skeleton-parser': 1.8.11 tslib: 2.8.1 - '@formatjs/intl-localematcher@0.5.7': + '@formatjs/icu-skeleton-parser@1.8.11': dependencies: + '@formatjs/ecma402-abstract': 2.3.1 tslib: 2.8.1 - '@formatjs/intl-localematcher@0.5.8': + '@formatjs/intl-localematcher@0.5.9': dependencies: tslib: 2.8.1 - '@grpc/grpc-js@1.12.2': + '@grpc/grpc-js@1.12.4': dependencies: '@grpc/proto-loader': 0.7.13 '@js-sdsl/ordered-map': 4.4.2 @@ -13454,24 +14037,23 @@ snapshots: protobufjs: 7.4.0 yargs: 17.7.2 - '@honeycombio/opentelemetry-web@0.8.1(zone.js@0.14.10)': + '@honeycombio/opentelemetry-web@0.10.0(zone.js@0.14.10)': dependencies: '@babel/runtime': 7.26.0 '@opentelemetry/api': 1.9.0 - '@opentelemetry/auto-instrumentations-web': 0.41.0(@opentelemetry/api@1.9.0)(zone.js@0.14.10) - '@opentelemetry/core': 1.26.0(@opentelemetry/api@1.9.0) - '@opentelemetry/exporter-trace-otlp-http': 0.53.0(@opentelemetry/api@1.9.0) - '@opentelemetry/instrumentation': 0.53.0(@opentelemetry/api@1.9.0) - '@opentelemetry/opentelemetry-browser-detector': 0.53.0(@opentelemetry/api@1.9.0) - '@opentelemetry/resources': 1.26.0(@opentelemetry/api@1.9.0) - '@opentelemetry/sdk-trace-base': 1.26.0(@opentelemetry/api@1.9.0) - '@opentelemetry/sdk-trace-web': 1.26.0(@opentelemetry/api@1.9.0) - '@opentelemetry/semantic-conventions': 1.27.0 + '@opentelemetry/auto-instrumentations-web': 0.43.0(@opentelemetry/api@1.9.0)(zone.js@0.14.10) + '@opentelemetry/core': 1.28.0(@opentelemetry/api@1.9.0) + '@opentelemetry/exporter-trace-otlp-http': 0.55.0(@opentelemetry/api@1.9.0) + '@opentelemetry/instrumentation': 0.55.0(@opentelemetry/api@1.9.0) + '@opentelemetry/opentelemetry-browser-detector': 0.55.0(@opentelemetry/api@1.9.0) + '@opentelemetry/resources': 1.28.0(@opentelemetry/api@1.9.0) + '@opentelemetry/sdk-trace-base': 1.28.0(@opentelemetry/api@1.9.0) + '@opentelemetry/sdk-trace-web': 1.28.0(@opentelemetry/api@1.9.0) + '@opentelemetry/semantic-conventions': 1.28.0 shimmer: 1.2.1 + tracekit: 0.4.7 ua-parser-js: 1.0.39 web-vitals: 4.2.4 - optionalDependencies: - '@rollup/rollup-linux-x64-gnu': 4.27.3 transitivePeerDependencies: - supports-color - zone.js @@ -13479,7 +14061,7 @@ snapshots: '@humanwhocodes/config-array@0.11.14': dependencies: '@humanwhocodes/object-schema': 2.0.3 - debug: 4.3.7(supports-color@5.5.0) + debug: 4.4.0(supports-color@9.4.0) minimatch: 3.1.2 transitivePeerDependencies: - supports-color @@ -13494,16 +14076,16 @@ snapshots: '@import-maps/resolve@1.0.1': {} - '@inquirer/confirm@5.0.2(@types/node@22.9.0)': + '@inquirer/confirm@5.1.0(@types/node@22.10.2)': dependencies: - '@inquirer/core': 10.1.0(@types/node@22.9.0) - '@inquirer/type': 3.0.1(@types/node@22.9.0) - '@types/node': 22.9.0 + '@inquirer/core': 10.1.1(@types/node@22.10.2) + '@inquirer/type': 3.0.1(@types/node@22.10.2) + '@types/node': 22.10.2 - '@inquirer/core@10.1.0(@types/node@22.9.0)': + '@inquirer/core@10.1.1(@types/node@22.10.2)': dependencies: '@inquirer/figures': 1.0.8 - '@inquirer/type': 3.0.1(@types/node@22.9.0) + '@inquirer/type': 3.0.1(@types/node@22.10.2) ansi-escapes: 4.3.2 cli-width: 4.1.0 mute-stream: 2.0.0 @@ -13516,26 +14098,26 @@ snapshots: '@inquirer/figures@1.0.8': {} - '@inquirer/type@3.0.1(@types/node@22.9.0)': + '@inquirer/type@3.0.1(@types/node@22.10.2)': dependencies: - '@types/node': 22.9.0 + '@types/node': 22.10.2 - '@internationalized/date@3.5.6': + '@internationalized/date@3.6.0': dependencies: - '@swc/helpers': 0.5.13 + '@swc/helpers': 0.5.15 - '@internationalized/message@3.1.5': + '@internationalized/message@3.1.6': dependencies: - '@swc/helpers': 0.5.13 - intl-messageformat: 10.7.7 + '@swc/helpers': 0.5.15 + intl-messageformat: 10.7.10 - '@internationalized/number@3.5.4': + '@internationalized/number@3.6.0': dependencies: - '@swc/helpers': 0.5.13 + '@swc/helpers': 0.5.15 - '@internationalized/string@3.2.4': + '@internationalized/string@3.2.5': dependencies: - '@swc/helpers': 0.5.13 + '@swc/helpers': 0.5.15 '@isaacs/cliui@8.0.2': dependencies: @@ -13546,6 +14128,10 @@ snapshots: wrap-ansi: 8.1.0 wrap-ansi-cjs: wrap-ansi@7.0.0 + '@isaacs/fs-minipass@4.0.1': + dependencies: + minipass: 7.1.2 + '@istanbuljs/load-nyc-config@1.1.0': dependencies: camelcase: 5.3.1 @@ -13559,27 +14145,27 @@ snapshots: '@jest/console@29.7.0': dependencies: '@jest/types': 29.6.3 - '@types/node': 22.9.0 + '@types/node': 22.10.2 chalk: 4.1.2 jest-message-util: 29.7.0 jest-util: 29.7.0 slash: 3.0.0 - '@jest/core@29.7.0(ts-node@10.9.2(@swc/core@1.8.0)(@types/node@22.9.0)(typescript@5.5.4))': + '@jest/core@29.7.0(ts-node@10.9.2(@swc/core@1.10.1(@swc/helpers@0.5.15))(@types/node@22.10.2)(typescript@5.5.4))': dependencies: '@jest/console': 29.7.0 '@jest/reporters': 29.7.0 '@jest/test-result': 29.7.0 '@jest/transform': 29.7.0 '@jest/types': 29.6.3 - '@types/node': 22.9.0 + '@types/node': 22.10.2 ansi-escapes: 4.3.2 chalk: 4.1.2 ci-info: 3.9.0 exit: 0.1.2 graceful-fs: 4.2.11 jest-changed-files: 29.7.0 - jest-config: 29.7.0(@types/node@22.9.0)(ts-node@10.9.2(@swc/core@1.8.0)(@types/node@22.9.0)(typescript@5.5.4)) + jest-config: 29.7.0(@types/node@22.10.2)(ts-node@10.9.2(@swc/core@1.10.1(@swc/helpers@0.5.15))(@types/node@22.10.2)(typescript@5.5.4)) jest-haste-map: 29.7.0 jest-message-util: 29.7.0 jest-regex-util: 29.6.3 @@ -13608,7 +14194,7 @@ snapshots: dependencies: '@jest/fake-timers': 29.7.0 '@jest/types': 29.6.3 - '@types/node': 22.9.0 + '@types/node': 22.10.2 jest-mock: 29.7.0 '@jest/expect-utils@29.7.0': @@ -13626,7 +14212,7 @@ snapshots: dependencies: '@jest/types': 29.6.3 '@sinonjs/fake-timers': 10.3.0 - '@types/node': 22.9.0 + '@types/node': 22.10.2 jest-message-util: 29.7.0 jest-mock: 29.7.0 jest-util: 29.7.0 @@ -13648,7 +14234,7 @@ snapshots: '@jest/transform': 29.7.0 '@jest/types': 29.6.3 '@jridgewell/trace-mapping': 0.3.25 - '@types/node': 22.9.0 + '@types/node': 22.10.2 chalk: 4.1.2 collect-v8-coverage: 1.0.2 exit: 0.1.2 @@ -13717,7 +14303,7 @@ snapshots: dependencies: '@types/istanbul-lib-coverage': 2.0.6 '@types/istanbul-reports': 3.0.4 - '@types/node': 22.9.0 + '@types/node': 22.10.2 '@types/yargs': 16.0.9 chalk: 4.1.2 @@ -13726,11 +14312,11 @@ snapshots: '@jest/schemas': 29.6.3 '@types/istanbul-lib-coverage': 2.0.6 '@types/istanbul-reports': 3.0.4 - '@types/node': 22.9.0 + '@types/node': 22.10.2 '@types/yargs': 17.0.33 chalk: 4.1.2 - '@jridgewell/gen-mapping@0.3.5': + '@jridgewell/gen-mapping@0.3.8': dependencies: '@jridgewell/set-array': 1.2.1 '@jridgewell/sourcemap-codec': 1.5.0 @@ -13742,7 +14328,7 @@ snapshots: '@jridgewell/source-map@0.3.6': dependencies: - '@jridgewell/gen-mapping': 0.3.5 + '@jridgewell/gen-mapping': 0.3.8 '@jridgewell/trace-mapping': 0.3.25 '@jridgewell/sourcemap-codec@1.5.0': {} @@ -13759,11 +14345,18 @@ snapshots: '@js-sdsl/ordered-map@4.4.2': {} + '@jsdevtools/ez-spawn@3.0.4': + dependencies: + call-me-maybe: 1.0.2 + cross-spawn: 7.0.6 + string-argv: 0.3.2 + type-detect: 4.1.0 + '@jsonjoy.com/base64@1.1.2(tslib@2.8.1)': dependencies: tslib: 2.8.1 - '@jsonjoy.com/json-pack@1.1.0(tslib@2.8.1)': + '@jsonjoy.com/json-pack@1.1.1(tslib@2.8.1)': dependencies: '@jsonjoy.com/base64': 1.1.2(tslib@2.8.1) '@jsonjoy.com/util': 1.5.0(tslib@2.8.1) @@ -13795,10 +14388,10 @@ snapshots: globby: 11.1.0 read-yaml-file: 1.1.0 - '@mapbox/node-pre-gyp@1.0.11': + '@mapbox/node-pre-gyp@1.0.11(supports-color@9.4.0)': dependencies: detect-libc: 2.0.3 - https-proxy-agent: 5.0.1 + https-proxy-agent: 5.0.1(supports-color@9.4.0) make-dir: 3.1.0 node-fetch: 2.7.0 nopt: 5.0.0 @@ -13810,44 +14403,42 @@ snapshots: - encoding - supports-color - '@mapbox/node-pre-gyp@1.0.11(supports-color@9.4.0)': + '@mapbox/node-pre-gyp@2.0.0-rc.0(supports-color@9.4.0)': dependencies: + consola: 3.2.3 detect-libc: 2.0.3 - https-proxy-agent: 5.0.1(supports-color@9.4.0) - make-dir: 3.1.0 + https-proxy-agent: 7.0.5(supports-color@9.4.0) node-fetch: 2.7.0 - nopt: 5.0.0 - npmlog: 5.0.1 - rimraf: 3.0.2 + nopt: 8.0.0 semver: 7.6.3 - tar: 6.2.1 + tar: 7.4.3 transitivePeerDependencies: - encoding - supports-color - '@module-federation/bridge-react-webpack-plugin@0.6.16': + '@module-federation/bridge-react-webpack-plugin@0.8.4': dependencies: - '@module-federation/sdk': 0.6.16 + '@module-federation/sdk': 0.8.4 '@types/semver': 7.5.8 semver: 7.6.3 - '@module-federation/data-prefetch@0.6.16(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@module-federation/data-prefetch@0.8.4(react-dom@19.0.0(react@19.0.0))(react@19.0.0)': dependencies: - '@module-federation/runtime': 0.6.16 - '@module-federation/sdk': 0.6.16 + '@module-federation/runtime': 0.8.4 + '@module-federation/sdk': 0.8.4 fs-extra: 9.1.0 - react: 18.3.1 - react-dom: 18.3.1(react@18.3.1) + react: 19.0.0 + react-dom: 19.0.0(react@19.0.0) - '@module-federation/dts-plugin@0.6.16(typescript@5.5.4)': + '@module-federation/dts-plugin@0.8.4(typescript@5.5.4)': dependencies: - '@module-federation/error-codes': 0.6.14 - '@module-federation/managers': 0.6.16 - '@module-federation/sdk': 0.6.16 - '@module-federation/third-party-dts-extractor': 0.6.16 + '@module-federation/error-codes': 0.8.4 + '@module-federation/managers': 0.8.4 + '@module-federation/sdk': 0.8.4 + '@module-federation/third-party-dts-extractor': 0.8.4 adm-zip: 0.5.16 ansi-colors: 4.1.3 - axios: 1.7.7 + axios: 1.7.9 chalk: 3.0.0 fs-extra: 9.1.0 isomorphic-ws: 5.0.0(ws@8.18.0) @@ -13855,7 +14446,7 @@ snapshots: lodash.clonedeepwith: 4.5.0 log4js: 6.9.1 node-schedule: 2.1.1 - rambda: 9.4.0 + rambda: 9.4.1 typescript: 5.5.4 ws: 8.18.0 transitivePeerDependencies: @@ -13864,22 +14455,23 @@ snapshots: - supports-color - utf-8-validate - '@module-federation/enhanced@0.6.16(react-dom@18.3.1(react@18.3.1))(react@18.3.1)(typescript@5.5.4)(webpack@5.96.1(@swc/core@1.8.0(@swc/helpers@0.5.13)))': + '@module-federation/enhanced@0.8.4(@rspack/core@1.1.6(@swc/helpers@0.5.15))(react-dom@19.0.0(react@19.0.0))(react@19.0.0)(typescript@5.5.4)(webpack@5.97.1(@swc/core@1.10.1(@swc/helpers@0.5.15)))': dependencies: - '@module-federation/bridge-react-webpack-plugin': 0.6.16 - '@module-federation/data-prefetch': 0.6.16(react-dom@18.3.1(react@18.3.1))(react@18.3.1) - '@module-federation/dts-plugin': 0.6.16(typescript@5.5.4) - '@module-federation/managers': 0.6.16 - '@module-federation/manifest': 0.6.16(typescript@5.5.4) - '@module-federation/rspack': 0.6.16(typescript@5.5.4) - '@module-federation/runtime-tools': 0.6.16 - '@module-federation/sdk': 0.6.16 + '@module-federation/bridge-react-webpack-plugin': 0.8.4 + '@module-federation/data-prefetch': 0.8.4(react-dom@19.0.0(react@19.0.0))(react@19.0.0) + '@module-federation/dts-plugin': 0.8.4(typescript@5.5.4) + '@module-federation/managers': 0.8.4 + '@module-federation/manifest': 0.8.4(typescript@5.5.4) + '@module-federation/rspack': 0.8.4(@rspack/core@1.1.6(@swc/helpers@0.5.15))(typescript@5.5.4) + '@module-federation/runtime-tools': 0.8.4 + '@module-federation/sdk': 0.8.4 btoa: 1.2.1 upath: 2.0.1 optionalDependencies: typescript: 5.5.4 - webpack: 5.96.1(@swc/core@1.8.0(@swc/helpers@0.5.13)) + webpack: 5.97.1(@swc/core@1.10.1(@swc/helpers@0.5.15)) transitivePeerDependencies: + - '@rspack/core' - bufferutil - debug - react @@ -13887,19 +14479,19 @@ snapshots: - supports-color - utf-8-validate - '@module-federation/error-codes@0.6.14': {} + '@module-federation/error-codes@0.8.4': {} - '@module-federation/managers@0.6.16': + '@module-federation/managers@0.8.4': dependencies: - '@module-federation/sdk': 0.6.16 + '@module-federation/sdk': 0.8.4 find-pkg: 2.0.0 fs-extra: 9.1.0 - '@module-federation/manifest@0.6.16(typescript@5.5.4)': + '@module-federation/manifest@0.8.4(typescript@5.5.4)': dependencies: - '@module-federation/dts-plugin': 0.6.16(typescript@5.5.4) - '@module-federation/managers': 0.6.16 - '@module-federation/sdk': 0.6.16 + '@module-federation/dts-plugin': 0.8.4(typescript@5.5.4) + '@module-federation/managers': 0.8.4 + '@module-federation/sdk': 0.8.4 chalk: 3.0.0 find-pkg: 2.0.0 transitivePeerDependencies: @@ -13910,14 +14502,21 @@ snapshots: - utf-8-validate - vue-tsc - '@module-federation/rspack@0.6.16(typescript@5.5.4)': + '@module-federation/rsbuild-plugin@0.8.4(@module-federation/enhanced@0.8.4(@rspack/core@1.1.6(@swc/helpers@0.5.15))(react-dom@19.0.0(react@19.0.0))(react@19.0.0)(typescript@5.5.4)(webpack@5.97.1(@swc/core@1.10.1(@swc/helpers@0.5.15))))(@rsbuild/core@1.1.10)': + dependencies: + '@module-federation/enhanced': 0.8.4(@rspack/core@1.1.6(@swc/helpers@0.5.15))(react-dom@19.0.0(react@19.0.0))(react@19.0.0)(typescript@5.5.4)(webpack@5.97.1(@swc/core@1.10.1(@swc/helpers@0.5.15))) + '@module-federation/sdk': 0.8.4 + '@rsbuild/core': 1.1.10 + + '@module-federation/rspack@0.8.4(@rspack/core@1.1.6(@swc/helpers@0.5.15))(typescript@5.5.4)': dependencies: - '@module-federation/bridge-react-webpack-plugin': 0.6.16 - '@module-federation/dts-plugin': 0.6.16(typescript@5.5.4) - '@module-federation/managers': 0.6.16 - '@module-federation/manifest': 0.6.16(typescript@5.5.4) - '@module-federation/runtime-tools': 0.6.16 - '@module-federation/sdk': 0.6.16 + '@module-federation/bridge-react-webpack-plugin': 0.8.4 + '@module-federation/dts-plugin': 0.8.4(typescript@5.5.4) + '@module-federation/managers': 0.8.4 + '@module-federation/manifest': 0.8.4(typescript@5.5.4) + '@module-federation/runtime-tools': 0.8.4 + '@module-federation/sdk': 0.8.4 + '@rspack/core': 1.1.6(@swc/helpers@0.5.15) optionalDependencies: typescript: 5.5.4 transitivePeerDependencies: @@ -13926,39 +14525,115 @@ snapshots: - supports-color - utf-8-validate - '@module-federation/runtime-tools@0.6.16': - dependencies: - '@module-federation/runtime': 0.6.16 - '@module-federation/webpack-bundler-runtime': 0.6.16 + '@module-federation/runtime-tools@0.5.1': + dependencies: + '@module-federation/runtime': 0.5.1 + '@module-federation/webpack-bundler-runtime': 0.5.1 + + '@module-federation/runtime-tools@0.8.4': + dependencies: + '@module-federation/runtime': 0.8.4 + '@module-federation/webpack-bundler-runtime': 0.8.4 + + '@module-federation/runtime@0.5.1': + dependencies: + '@module-federation/sdk': 0.5.1 + + '@module-federation/runtime@0.8.4': + dependencies: + '@module-federation/error-codes': 0.8.4 + '@module-federation/sdk': 0.8.4 + + '@module-federation/sdk@0.5.1': {} + + '@module-federation/sdk@0.8.4': + dependencies: + isomorphic-rslog: 0.0.6 + + '@module-federation/third-party-dts-extractor@0.8.4': + dependencies: + find-pkg: 2.0.0 + fs-extra: 9.1.0 + resolve: 1.22.8 + + '@module-federation/webpack-bundler-runtime@0.5.1': + dependencies: + '@module-federation/runtime': 0.5.1 + '@module-federation/sdk': 0.5.1 + + '@module-federation/webpack-bundler-runtime@0.8.4': + dependencies: + '@module-federation/runtime': 0.8.4 + '@module-federation/sdk': 0.8.4 + + '@mswjs/interceptors@0.37.3': + dependencies: + '@open-draft/deferred-promise': 2.2.0 + '@open-draft/logger': 0.3.0 + '@open-draft/until': 2.1.0 + is-node-process: 1.2.0 + outvariant: 1.4.3 + strict-event-emitter: 0.5.1 + + '@napi-rs/image-android-arm64@1.9.2': + optional: true + + '@napi-rs/image-darwin-arm64@1.9.2': + optional: true + + '@napi-rs/image-darwin-x64@1.9.2': + optional: true + + '@napi-rs/image-freebsd-x64@1.9.2': + optional: true + + '@napi-rs/image-linux-arm-gnueabihf@1.9.2': + optional: true - '@module-federation/runtime@0.6.16': - dependencies: - '@module-federation/error-codes': 0.6.14 - '@module-federation/sdk': 0.6.16 + '@napi-rs/image-linux-arm64-gnu@1.9.2': + optional: true - '@module-federation/sdk@0.6.16': - dependencies: - isomorphic-rslog: 0.0.5 + '@napi-rs/image-linux-arm64-musl@1.9.2': + optional: true - '@module-federation/third-party-dts-extractor@0.6.16': - dependencies: - find-pkg: 2.0.0 - fs-extra: 9.1.0 - resolve: 1.22.8 + '@napi-rs/image-linux-x64-gnu@1.9.2': + optional: true - '@module-federation/webpack-bundler-runtime@0.6.16': - dependencies: - '@module-federation/runtime': 0.6.16 - '@module-federation/sdk': 0.6.16 + '@napi-rs/image-linux-x64-musl@1.9.2': + optional: true - '@mswjs/interceptors@0.36.10': + '@napi-rs/image-wasm32-wasi@1.9.2': dependencies: - '@open-draft/deferred-promise': 2.2.0 - '@open-draft/logger': 0.3.0 - '@open-draft/until': 2.1.0 - is-node-process: 1.2.0 - outvariant: 1.4.3 - strict-event-emitter: 0.5.1 + '@napi-rs/wasm-runtime': 0.2.5 + optional: true + + '@napi-rs/image-win32-ia32-msvc@1.9.2': + optional: true + + '@napi-rs/image-win32-x64-msvc@1.9.2': + optional: true + + '@napi-rs/image@1.9.2': + optionalDependencies: + '@napi-rs/image-android-arm64': 1.9.2 + '@napi-rs/image-darwin-arm64': 1.9.2 + '@napi-rs/image-darwin-x64': 1.9.2 + '@napi-rs/image-freebsd-x64': 1.9.2 + '@napi-rs/image-linux-arm-gnueabihf': 1.9.2 + '@napi-rs/image-linux-arm64-gnu': 1.9.2 + '@napi-rs/image-linux-arm64-musl': 1.9.2 + '@napi-rs/image-linux-x64-gnu': 1.9.2 + '@napi-rs/image-linux-x64-musl': 1.9.2 + '@napi-rs/image-wasm32-wasi': 1.9.2 + '@napi-rs/image-win32-ia32-msvc': 1.9.2 + '@napi-rs/image-win32-x64-msvc': 1.9.2 + + '@napi-rs/wasm-runtime@0.2.5': + dependencies: + '@emnapi/core': 1.3.1 + '@emnapi/runtime': 1.3.1 + '@tybys/wasm-util': 0.9.0 + optional: true '@netlify/binary-info@1.0.0': {} @@ -13975,22 +14650,22 @@ snapshots: minimatch: 9.0.5 read-pkg: 7.1.0 semver: 7.6.3 - yaml: 2.6.0 + yaml: 2.6.1 yargs: 17.7.2 - '@netlify/build@29.56.0(@opentelemetry/api@1.8.0)(@swc/core@1.8.0(@swc/helpers@0.5.13))(@types/node@22.9.0)(picomatch@4.0.2)': + '@netlify/build@29.56.1(@opentelemetry/api@1.8.0)(@swc/core@1.10.1)(@types/node@22.10.2)(picomatch@4.0.2)': dependencies: '@bugsnag/js': 7.25.0 '@netlify/blobs': 7.4.0 - '@netlify/cache-utils': 5.1.6 - '@netlify/config': 20.19.0 + '@netlify/cache-utils': 5.2.0 + '@netlify/config': 20.19.1 '@netlify/edge-bundler': 12.2.3(supports-color@9.4.0) - '@netlify/framework-info': 9.8.13 - '@netlify/functions-utils': 5.2.93(supports-color@9.4.0) - '@netlify/git-utils': 5.1.1 - '@netlify/opentelemetry-utils': 1.2.1(@opentelemetry/api@1.8.0) + '@netlify/framework-info': 9.9.0 + '@netlify/functions-utils': 5.3.1(supports-color@9.4.0) + '@netlify/git-utils': 5.2.0 + '@netlify/opentelemetry-utils': 1.3.0(@opentelemetry/api@1.8.0) '@netlify/plugins-list': 6.80.0 - '@netlify/run-utils': 5.1.1 + '@netlify/run-utils': 5.2.0 '@netlify/zip-it-and-ship-it': 9.41.1(supports-color@9.4.0) '@opentelemetry/api': 1.8.0 '@sindresorhus/slugify': 2.2.1 @@ -14002,7 +14677,7 @@ snapshots: figures: 5.0.0 filter-obj: 5.1.0 got: 12.6.1 - hot-shots: 10.1.1 + hot-shots: 10.2.1 indent-string: 5.0.0 is-plain-obj: 4.1.0 js-yaml: 4.1.0 @@ -14035,7 +14710,7 @@ snapshots: strip-ansi: 7.1.0 supports-color: 9.4.0 terminal-link: 3.0.0 - ts-node: 10.9.2(@swc/core@1.8.0(@swc/helpers@0.5.13))(@types/node@22.9.0)(typescript@5.5.4) + ts-node: 10.9.2(@swc/core@1.10.1)(@types/node@22.10.2)(typescript@5.5.4) typescript: 5.5.4 uuid: 9.0.1 yargs: 17.7.2 @@ -14045,8 +14720,9 @@ snapshots: - '@types/node' - encoding - picomatch + - rollup - '@netlify/cache-utils@5.1.6': + '@netlify/cache-utils@5.2.0': dependencies: cpy: 9.0.1 get-stream: 6.0.1 @@ -14057,7 +14733,7 @@ snapshots: path-exists: 5.0.0 readdirp: 3.6.0 - '@netlify/config@20.19.0': + '@netlify/config@20.19.1': dependencies: '@iarna/toml': 2.2.5 chalk: 5.3.0 @@ -14084,39 +14760,10 @@ snapshots: validate-npm-package-name: 4.0.0 yargs: 17.7.2 - '@netlify/edge-bundler@12.2.3': - dependencies: - '@import-maps/resolve': 1.0.1 - '@vercel/nft': 0.27.6 - ajv: 8.17.1 - ajv-errors: 3.0.0(ajv@8.17.1) - better-ajv-errors: 1.2.0(ajv@8.17.1) - common-path-prefix: 3.0.0 - env-paths: 3.0.0 - esbuild: 0.21.2 - execa: 6.1.0 - find-up: 6.3.0 - get-package-name: 2.2.0 - get-port: 6.1.2 - is-path-inside: 4.0.0 - jsonc-parser: 3.3.1 - node-fetch: 3.3.2 - node-stream-zip: 1.15.0 - p-retry: 5.1.2 - p-wait-for: 4.1.0 - path-key: 4.0.0 - semver: 7.6.3 - tmp-promise: 3.0.3 - urlpattern-polyfill: 8.0.2 - uuid: 9.0.1 - transitivePeerDependencies: - - encoding - - supports-color - '@netlify/edge-bundler@12.2.3(supports-color@9.4.0)': dependencies: '@import-maps/resolve': 1.0.1 - '@vercel/nft': 0.27.6(supports-color@9.4.0) + '@vercel/nft': 0.27.9(supports-color@9.4.0) ajv: 8.17.1 ajv-errors: 3.0.0(ajv@8.17.1) better-ajv-errors: 1.2.0(ajv@8.17.1) @@ -14140,11 +14787,12 @@ snapshots: uuid: 9.0.1 transitivePeerDependencies: - encoding + - rollup - supports-color - '@netlify/edge-functions@2.9.0': {} + '@netlify/edge-functions@2.11.1': {} - '@netlify/framework-info@9.8.13': + '@netlify/framework-info@9.9.0': dependencies: ajv: 8.17.1 filter-obj: 5.1.0 @@ -14154,19 +14802,20 @@ snapshots: p-filter: 3.0.0 p-locate: 6.0.0 process: 0.11.10 - read-pkg-up: 9.1.0 + read-package-up: 11.0.0 semver: 7.6.3 - '@netlify/functions-utils@5.2.93(supports-color@9.4.0)': + '@netlify/functions-utils@5.3.1(supports-color@9.4.0)': dependencies: - '@netlify/zip-it-and-ship-it': 9.41.1(supports-color@9.4.0) + '@netlify/zip-it-and-ship-it': 9.42.1(supports-color@9.4.0) cpy: 9.0.1 path-exists: 5.0.0 transitivePeerDependencies: - encoding + - rollup - supports-color - '@netlify/git-utils@5.1.1': + '@netlify/git-utils@5.2.0': dependencies: execa: 6.1.0 map-obj: 5.0.2 @@ -14227,30 +14876,30 @@ snapshots: '@netlify/node-cookies@0.1.0': {} - '@netlify/open-api@2.34.0': {} + '@netlify/open-api@2.35.0': {} - '@netlify/opentelemetry-utils@1.2.1(@opentelemetry/api@1.8.0)': + '@netlify/opentelemetry-utils@1.3.0(@opentelemetry/api@1.8.0)': dependencies: '@opentelemetry/api': 1.8.0 '@netlify/plugins-list@6.80.0': {} - '@netlify/run-utils@5.1.1': + '@netlify/run-utils@5.2.0': dependencies: execa: 6.1.0 - '@netlify/serverless-functions-api@1.31.0': + '@netlify/serverless-functions-api@1.31.1': dependencies: '@netlify/node-cookies': 0.1.0 urlpattern-polyfill: 8.0.2 - '@netlify/zip-it-and-ship-it@9.41.1': + '@netlify/zip-it-and-ship-it@9.41.1(supports-color@9.4.0)': dependencies: - '@babel/parser': 7.26.2 + '@babel/parser': 7.26.3 '@babel/types': 7.25.6 '@netlify/binary-info': 1.0.0 - '@netlify/serverless-functions-api': 1.31.0 - '@vercel/nft': 0.27.6 + '@netlify/serverless-functions-api': 1.31.1 + '@vercel/nft': 0.27.9(supports-color@9.4.0) archiver: 7.0.1 common-path-prefix: 3.0.0 cp-file: 10.0.0 @@ -14270,7 +14919,7 @@ snapshots: normalize-path: 3.0.0 p-map: 5.5.0 path-exists: 5.0.0 - precinct: 11.0.5 + precinct: 11.0.5(supports-color@9.4.0) require-package-name: 2.0.1 resolve: 2.0.0-next.5 semver: 7.6.3 @@ -14282,15 +14931,16 @@ snapshots: zod: 3.23.8 transitivePeerDependencies: - encoding + - rollup - supports-color - '@netlify/zip-it-and-ship-it@9.41.1(supports-color@9.4.0)': + '@netlify/zip-it-and-ship-it@9.42.1(supports-color@9.4.0)': dependencies: - '@babel/parser': 7.26.2 - '@babel/types': 7.25.6 + '@babel/parser': 7.26.3 + '@babel/types': 7.26.3 '@netlify/binary-info': 1.0.0 - '@netlify/serverless-functions-api': 1.31.0 - '@vercel/nft': 0.27.6(supports-color@9.4.0) + '@netlify/serverless-functions-api': 1.31.1 + '@vercel/nft': 0.27.7(supports-color@9.4.0) archiver: 7.0.1 common-path-prefix: 3.0.0 cp-file: 10.0.0 @@ -14322,6 +14972,7 @@ snapshots: zod: 3.23.8 transitivePeerDependencies: - encoding + - rollup - supports-color '@nodelib/fs.scandir@2.1.5': @@ -14388,6 +15039,20 @@ snapshots: dependencies: which: 4.0.0 + '@octokit/action@6.1.0': + dependencies: + '@octokit/auth-action': 4.1.0 + '@octokit/core': 5.2.0 + '@octokit/plugin-paginate-rest': 9.2.1(@octokit/core@5.2.0) + '@octokit/plugin-rest-endpoint-methods': 10.4.1(@octokit/core@5.2.0) + '@octokit/types': 12.6.0 + undici: 6.21.0 + + '@octokit/auth-action@4.1.0': + dependencies: + '@octokit/auth-token': 4.0.0 + '@octokit/types': 13.6.2 + '@octokit/auth-token@4.0.0': {} '@octokit/core@5.2.0': @@ -14396,40 +15061,52 @@ snapshots: '@octokit/graphql': 7.1.0 '@octokit/request': 8.4.0 '@octokit/request-error': 5.1.0 - '@octokit/types': 13.6.1 + '@octokit/types': 13.6.2 before-after-hook: 2.2.3 universal-user-agent: 6.0.1 '@octokit/endpoint@9.0.5': dependencies: - '@octokit/types': 13.6.1 + '@octokit/types': 13.6.2 universal-user-agent: 6.0.1 '@octokit/graphql@7.1.0': dependencies: '@octokit/request': 8.4.0 - '@octokit/types': 13.6.1 + '@octokit/types': 13.6.2 universal-user-agent: 6.0.1 + '@octokit/openapi-types@20.0.0': {} + '@octokit/openapi-types@22.2.0': {} '@octokit/plugin-paginate-rest@11.3.1(@octokit/core@5.2.0)': dependencies: '@octokit/core': 5.2.0 - '@octokit/types': 13.6.1 + '@octokit/types': 13.6.2 + + '@octokit/plugin-paginate-rest@9.2.1(@octokit/core@5.2.0)': + dependencies: + '@octokit/core': 5.2.0 + '@octokit/types': 12.6.0 '@octokit/plugin-request-log@4.0.1(@octokit/core@5.2.0)': dependencies: '@octokit/core': 5.2.0 + '@octokit/plugin-rest-endpoint-methods@10.4.1(@octokit/core@5.2.0)': + dependencies: + '@octokit/core': 5.2.0 + '@octokit/types': 12.6.0 + '@octokit/plugin-rest-endpoint-methods@13.2.2(@octokit/core@5.2.0)': dependencies: '@octokit/core': 5.2.0 - '@octokit/types': 13.6.1 + '@octokit/types': 13.6.2 '@octokit/request-error@5.1.0': dependencies: - '@octokit/types': 13.6.1 + '@octokit/types': 13.6.2 deprecation: 2.3.1 once: 1.4.0 @@ -14437,7 +15114,7 @@ snapshots: dependencies: '@octokit/endpoint': 9.0.5 '@octokit/request-error': 5.1.0 - '@octokit/types': 13.6.1 + '@octokit/types': 13.6.2 universal-user-agent: 6.0.1 '@octokit/rest@20.1.1': @@ -14447,7 +15124,11 @@ snapshots: '@octokit/plugin-request-log': 4.0.1(@octokit/core@5.2.0) '@octokit/plugin-rest-endpoint-methods': 13.2.2(@octokit/core@5.2.0) - '@octokit/types@13.6.1': + '@octokit/types@12.6.0': + dependencies: + '@octokit/openapi-types': 20.0.0 + + '@octokit/types@13.6.2': dependencies: '@octokit/openapi-types': 22.2.0 @@ -14460,19 +15141,11 @@ snapshots: '@open-draft/until@2.1.0': {} - '@opentelemetry/api-logs@0.53.0': - dependencies: - '@opentelemetry/api': 1.9.0 - - '@opentelemetry/api-logs@0.54.0': - dependencies: - '@opentelemetry/api': 1.9.0 - - '@opentelemetry/api-logs@0.54.2': + '@opentelemetry/api-logs@0.55.0': dependencies: '@opentelemetry/api': 1.9.0 - '@opentelemetry/api-logs@0.55.0': + '@opentelemetry/api-logs@0.56.0': dependencies: '@opentelemetry/api': 1.9.0 @@ -14480,480 +15153,463 @@ snapshots: '@opentelemetry/api@1.9.0': {} - '@opentelemetry/auto-instrumentations-node@0.52.0(@opentelemetry/api@1.9.0)': + '@opentelemetry/auto-instrumentations-node@0.54.0(@opentelemetry/api@1.9.0)': dependencies: '@opentelemetry/api': 1.9.0 - '@opentelemetry/instrumentation': 0.54.2(@opentelemetry/api@1.9.0) - '@opentelemetry/instrumentation-amqplib': 0.43.0(@opentelemetry/api@1.9.0) - '@opentelemetry/instrumentation-aws-lambda': 0.46.0(@opentelemetry/api@1.9.0) - '@opentelemetry/instrumentation-aws-sdk': 0.45.0(@opentelemetry/api@1.9.0) - '@opentelemetry/instrumentation-bunyan': 0.42.0(@opentelemetry/api@1.9.0) - '@opentelemetry/instrumentation-cassandra-driver': 0.42.0(@opentelemetry/api@1.9.0) - '@opentelemetry/instrumentation-connect': 0.40.0(@opentelemetry/api@1.9.0) - '@opentelemetry/instrumentation-cucumber': 0.10.0(@opentelemetry/api@1.9.0) - '@opentelemetry/instrumentation-dataloader': 0.13.0(@opentelemetry/api@1.9.0) - '@opentelemetry/instrumentation-dns': 0.40.0(@opentelemetry/api@1.9.0) - '@opentelemetry/instrumentation-express': 0.44.0(@opentelemetry/api@1.9.0) - '@opentelemetry/instrumentation-fastify': 0.41.0(@opentelemetry/api@1.9.0) - '@opentelemetry/instrumentation-fs': 0.16.0(@opentelemetry/api@1.9.0) - '@opentelemetry/instrumentation-generic-pool': 0.40.0(@opentelemetry/api@1.9.0) - '@opentelemetry/instrumentation-graphql': 0.44.0(@opentelemetry/api@1.9.0) - '@opentelemetry/instrumentation-grpc': 0.54.2(@opentelemetry/api@1.9.0) - '@opentelemetry/instrumentation-hapi': 0.42.0(@opentelemetry/api@1.9.0) - '@opentelemetry/instrumentation-http': 0.54.0(@opentelemetry/api@1.9.0) - '@opentelemetry/instrumentation-ioredis': 0.44.0(@opentelemetry/api@1.9.0) - '@opentelemetry/instrumentation-kafkajs': 0.4.0(@opentelemetry/api@1.9.0) - '@opentelemetry/instrumentation-knex': 0.41.0(@opentelemetry/api@1.9.0) - '@opentelemetry/instrumentation-koa': 0.44.0(@opentelemetry/api@1.9.0) - '@opentelemetry/instrumentation-lru-memoizer': 0.41.0(@opentelemetry/api@1.9.0) - '@opentelemetry/instrumentation-memcached': 0.40.0(@opentelemetry/api@1.9.0) - '@opentelemetry/instrumentation-mongodb': 0.48.0(@opentelemetry/api@1.9.0) - '@opentelemetry/instrumentation-mongoose': 0.43.0(@opentelemetry/api@1.9.0) - '@opentelemetry/instrumentation-mysql': 0.42.0(@opentelemetry/api@1.9.0) - '@opentelemetry/instrumentation-mysql2': 0.42.1(@opentelemetry/api@1.9.0) - '@opentelemetry/instrumentation-nestjs-core': 0.41.0(@opentelemetry/api@1.9.0) - '@opentelemetry/instrumentation-net': 0.40.0(@opentelemetry/api@1.9.0) - '@opentelemetry/instrumentation-pg': 0.47.1(@opentelemetry/api@1.9.0) - '@opentelemetry/instrumentation-pino': 0.43.0(@opentelemetry/api@1.9.0) - '@opentelemetry/instrumentation-redis': 0.43.0(@opentelemetry/api@1.9.0) - '@opentelemetry/instrumentation-redis-4': 0.43.0(@opentelemetry/api@1.9.0) - '@opentelemetry/instrumentation-restify': 0.42.0(@opentelemetry/api@1.9.0) - '@opentelemetry/instrumentation-router': 0.41.0(@opentelemetry/api@1.9.0) - '@opentelemetry/instrumentation-socket.io': 0.43.0(@opentelemetry/api@1.9.0) - '@opentelemetry/instrumentation-tedious': 0.15.0(@opentelemetry/api@1.9.0) - '@opentelemetry/instrumentation-undici': 0.7.1(@opentelemetry/api@1.9.0) - '@opentelemetry/instrumentation-winston': 0.41.0(@opentelemetry/api@1.9.0) - '@opentelemetry/resource-detector-alibaba-cloud': 0.29.5(@opentelemetry/api@1.9.0) - '@opentelemetry/resource-detector-aws': 1.8.0(@opentelemetry/api@1.9.0) - '@opentelemetry/resource-detector-azure': 0.2.12(@opentelemetry/api@1.9.0) - '@opentelemetry/resource-detector-container': 0.5.1(@opentelemetry/api@1.9.0) - '@opentelemetry/resource-detector-gcp': 0.29.13(@opentelemetry/api@1.9.0) - '@opentelemetry/resources': 1.28.0(@opentelemetry/api@1.9.0) - '@opentelemetry/sdk-node': 0.54.0(@opentelemetry/api@1.9.0) + '@opentelemetry/instrumentation': 0.56.0(@opentelemetry/api@1.9.0) + '@opentelemetry/instrumentation-amqplib': 0.45.0(@opentelemetry/api@1.9.0) + '@opentelemetry/instrumentation-aws-lambda': 0.49.0(@opentelemetry/api@1.9.0) + '@opentelemetry/instrumentation-aws-sdk': 0.48.0(@opentelemetry/api@1.9.0) + '@opentelemetry/instrumentation-bunyan': 0.44.0(@opentelemetry/api@1.9.0) + '@opentelemetry/instrumentation-cassandra-driver': 0.44.0(@opentelemetry/api@1.9.0) + '@opentelemetry/instrumentation-connect': 0.42.0(@opentelemetry/api@1.9.0) + '@opentelemetry/instrumentation-cucumber': 0.12.0(@opentelemetry/api@1.9.0) + '@opentelemetry/instrumentation-dataloader': 0.15.0(@opentelemetry/api@1.9.0) + '@opentelemetry/instrumentation-dns': 0.42.0(@opentelemetry/api@1.9.0) + '@opentelemetry/instrumentation-express': 0.46.0(@opentelemetry/api@1.9.0) + '@opentelemetry/instrumentation-fastify': 0.43.0(@opentelemetry/api@1.9.0) + '@opentelemetry/instrumentation-fs': 0.18.0(@opentelemetry/api@1.9.0) + '@opentelemetry/instrumentation-generic-pool': 0.42.0(@opentelemetry/api@1.9.0) + '@opentelemetry/instrumentation-graphql': 0.46.0(@opentelemetry/api@1.9.0) + '@opentelemetry/instrumentation-grpc': 0.56.0(@opentelemetry/api@1.9.0) + '@opentelemetry/instrumentation-hapi': 0.44.0(@opentelemetry/api@1.9.0) + '@opentelemetry/instrumentation-http': 0.56.0(@opentelemetry/api@1.9.0) + '@opentelemetry/instrumentation-ioredis': 0.46.0(@opentelemetry/api@1.9.0) + '@opentelemetry/instrumentation-kafkajs': 0.6.0(@opentelemetry/api@1.9.0) + '@opentelemetry/instrumentation-knex': 0.43.0(@opentelemetry/api@1.9.0) + '@opentelemetry/instrumentation-koa': 0.46.0(@opentelemetry/api@1.9.0) + '@opentelemetry/instrumentation-lru-memoizer': 0.43.0(@opentelemetry/api@1.9.0) + '@opentelemetry/instrumentation-memcached': 0.42.0(@opentelemetry/api@1.9.0) + '@opentelemetry/instrumentation-mongodb': 0.50.0(@opentelemetry/api@1.9.0) + '@opentelemetry/instrumentation-mongoose': 0.45.0(@opentelemetry/api@1.9.0) + '@opentelemetry/instrumentation-mysql': 0.44.0(@opentelemetry/api@1.9.0) + '@opentelemetry/instrumentation-mysql2': 0.44.0(@opentelemetry/api@1.9.0) + '@opentelemetry/instrumentation-nestjs-core': 0.43.0(@opentelemetry/api@1.9.0) + '@opentelemetry/instrumentation-net': 0.42.0(@opentelemetry/api@1.9.0) + '@opentelemetry/instrumentation-pg': 0.49.0(@opentelemetry/api@1.9.0) + '@opentelemetry/instrumentation-pino': 0.45.0(@opentelemetry/api@1.9.0) + '@opentelemetry/instrumentation-redis': 0.45.0(@opentelemetry/api@1.9.0) + '@opentelemetry/instrumentation-redis-4': 0.45.0(@opentelemetry/api@1.9.0) + '@opentelemetry/instrumentation-restify': 0.44.0(@opentelemetry/api@1.9.0) + '@opentelemetry/instrumentation-router': 0.43.0(@opentelemetry/api@1.9.0) + '@opentelemetry/instrumentation-socket.io': 0.45.0(@opentelemetry/api@1.9.0) + '@opentelemetry/instrumentation-tedious': 0.17.0(@opentelemetry/api@1.9.0) + '@opentelemetry/instrumentation-undici': 0.9.0(@opentelemetry/api@1.9.0) + '@opentelemetry/instrumentation-winston': 0.43.0(@opentelemetry/api@1.9.0) + '@opentelemetry/resource-detector-alibaba-cloud': 0.29.6(@opentelemetry/api@1.9.0) + '@opentelemetry/resource-detector-aws': 1.9.0(@opentelemetry/api@1.9.0) + '@opentelemetry/resource-detector-azure': 0.4.0(@opentelemetry/api@1.9.0) + '@opentelemetry/resource-detector-container': 0.5.2(@opentelemetry/api@1.9.0) + '@opentelemetry/resource-detector-gcp': 0.31.0(@opentelemetry/api@1.9.0) + '@opentelemetry/resources': 1.29.0(@opentelemetry/api@1.9.0) + '@opentelemetry/sdk-node': 0.56.0(@opentelemetry/api@1.9.0) transitivePeerDependencies: - encoding - supports-color - '@opentelemetry/auto-instrumentations-web@0.41.0(@opentelemetry/api@1.9.0)(zone.js@0.14.10)': + '@opentelemetry/auto-instrumentations-web@0.43.0(@opentelemetry/api@1.9.0)(zone.js@0.14.10)': dependencies: '@opentelemetry/api': 1.9.0 - '@opentelemetry/instrumentation': 0.53.0(@opentelemetry/api@1.9.0) - '@opentelemetry/instrumentation-document-load': 0.40.0(@opentelemetry/api@1.9.0) - '@opentelemetry/instrumentation-fetch': 0.53.0(@opentelemetry/api@1.9.0) - '@opentelemetry/instrumentation-user-interaction': 0.40.0(@opentelemetry/api@1.9.0)(zone.js@0.14.10) - '@opentelemetry/instrumentation-xml-http-request': 0.53.0(@opentelemetry/api@1.9.0) + '@opentelemetry/instrumentation': 0.55.0(@opentelemetry/api@1.9.0) + '@opentelemetry/instrumentation-document-load': 0.42.0(@opentelemetry/api@1.9.0) + '@opentelemetry/instrumentation-fetch': 0.55.0(@opentelemetry/api@1.9.0) + '@opentelemetry/instrumentation-user-interaction': 0.42.0(@opentelemetry/api@1.9.0)(zone.js@0.14.10) + '@opentelemetry/instrumentation-xml-http-request': 0.55.0(@opentelemetry/api@1.9.0) zone.js: 0.14.10 transitivePeerDependencies: - supports-color - '@opentelemetry/auto-instrumentations-web@0.42.0(@opentelemetry/api@1.9.0)(zone.js@0.14.10)': + '@opentelemetry/auto-instrumentations-web@0.44.0(@opentelemetry/api@1.9.0)(zone.js@0.14.10)': dependencies: '@opentelemetry/api': 1.9.0 - '@opentelemetry/instrumentation': 0.54.2(@opentelemetry/api@1.9.0) - '@opentelemetry/instrumentation-document-load': 0.41.0(@opentelemetry/api@1.9.0) - '@opentelemetry/instrumentation-fetch': 0.54.2(@opentelemetry/api@1.9.0) - '@opentelemetry/instrumentation-user-interaction': 0.41.0(@opentelemetry/api@1.9.0)(zone.js@0.14.10) - '@opentelemetry/instrumentation-xml-http-request': 0.54.2(@opentelemetry/api@1.9.0) + '@opentelemetry/instrumentation': 0.56.0(@opentelemetry/api@1.9.0) + '@opentelemetry/instrumentation-document-load': 0.43.0(@opentelemetry/api@1.9.0) + '@opentelemetry/instrumentation-fetch': 0.56.0(@opentelemetry/api@1.9.0) + '@opentelemetry/instrumentation-user-interaction': 0.43.0(@opentelemetry/api@1.9.0)(zone.js@0.14.10) + '@opentelemetry/instrumentation-xml-http-request': 0.56.0(@opentelemetry/api@1.9.0) zone.js: 0.14.10 transitivePeerDependencies: - supports-color - '@opentelemetry/context-async-hooks@1.27.0(@opentelemetry/api@1.9.0)': - dependencies: - '@opentelemetry/api': 1.9.0 - - '@opentelemetry/core@1.26.0(@opentelemetry/api@1.9.0)': + '@opentelemetry/context-async-hooks@1.29.0(@opentelemetry/api@1.9.0)': dependencies: '@opentelemetry/api': 1.9.0 - '@opentelemetry/semantic-conventions': 1.27.0 - '@opentelemetry/core@1.27.0(@opentelemetry/api@1.9.0)': + '@opentelemetry/core@1.28.0(@opentelemetry/api@1.9.0)': dependencies: '@opentelemetry/api': 1.9.0 '@opentelemetry/semantic-conventions': 1.27.0 - '@opentelemetry/core@1.28.0(@opentelemetry/api@1.9.0)': + '@opentelemetry/core@1.29.0(@opentelemetry/api@1.9.0)': dependencies: '@opentelemetry/api': 1.9.0 - '@opentelemetry/semantic-conventions': 1.27.0 + '@opentelemetry/semantic-conventions': 1.28.0 - '@opentelemetry/exporter-logs-otlp-grpc@0.54.0(@opentelemetry/api@1.9.0)': + '@opentelemetry/exporter-logs-otlp-grpc@0.56.0(@opentelemetry/api@1.9.0)': dependencies: - '@grpc/grpc-js': 1.12.2 + '@grpc/grpc-js': 1.12.4 '@opentelemetry/api': 1.9.0 - '@opentelemetry/core': 1.27.0(@opentelemetry/api@1.9.0) - '@opentelemetry/otlp-grpc-exporter-base': 0.54.0(@opentelemetry/api@1.9.0) - '@opentelemetry/otlp-transformer': 0.54.0(@opentelemetry/api@1.9.0) - '@opentelemetry/sdk-logs': 0.54.0(@opentelemetry/api@1.9.0) + '@opentelemetry/core': 1.29.0(@opentelemetry/api@1.9.0) + '@opentelemetry/otlp-grpc-exporter-base': 0.56.0(@opentelemetry/api@1.9.0) + '@opentelemetry/otlp-transformer': 0.56.0(@opentelemetry/api@1.9.0) + '@opentelemetry/sdk-logs': 0.56.0(@opentelemetry/api@1.9.0) - '@opentelemetry/exporter-logs-otlp-http@0.54.0(@opentelemetry/api@1.9.0)': + '@opentelemetry/exporter-logs-otlp-http@0.56.0(@opentelemetry/api@1.9.0)': dependencies: '@opentelemetry/api': 1.9.0 - '@opentelemetry/api-logs': 0.54.0 - '@opentelemetry/core': 1.27.0(@opentelemetry/api@1.9.0) - '@opentelemetry/otlp-exporter-base': 0.54.0(@opentelemetry/api@1.9.0) - '@opentelemetry/otlp-transformer': 0.54.0(@opentelemetry/api@1.9.0) - '@opentelemetry/sdk-logs': 0.54.0(@opentelemetry/api@1.9.0) + '@opentelemetry/api-logs': 0.56.0 + '@opentelemetry/core': 1.29.0(@opentelemetry/api@1.9.0) + '@opentelemetry/otlp-exporter-base': 0.56.0(@opentelemetry/api@1.9.0) + '@opentelemetry/otlp-transformer': 0.56.0(@opentelemetry/api@1.9.0) + '@opentelemetry/sdk-logs': 0.56.0(@opentelemetry/api@1.9.0) - '@opentelemetry/exporter-logs-otlp-proto@0.54.0(@opentelemetry/api@1.9.0)': + '@opentelemetry/exporter-logs-otlp-proto@0.56.0(@opentelemetry/api@1.9.0)': dependencies: '@opentelemetry/api': 1.9.0 - '@opentelemetry/api-logs': 0.54.0 - '@opentelemetry/core': 1.27.0(@opentelemetry/api@1.9.0) - '@opentelemetry/otlp-exporter-base': 0.54.0(@opentelemetry/api@1.9.0) - '@opentelemetry/otlp-transformer': 0.54.0(@opentelemetry/api@1.9.0) - '@opentelemetry/resources': 1.27.0(@opentelemetry/api@1.9.0) - '@opentelemetry/sdk-logs': 0.54.0(@opentelemetry/api@1.9.0) - '@opentelemetry/sdk-trace-base': 1.27.0(@opentelemetry/api@1.9.0) + '@opentelemetry/api-logs': 0.56.0 + '@opentelemetry/core': 1.29.0(@opentelemetry/api@1.9.0) + '@opentelemetry/otlp-exporter-base': 0.56.0(@opentelemetry/api@1.9.0) + '@opentelemetry/otlp-transformer': 0.56.0(@opentelemetry/api@1.9.0) + '@opentelemetry/resources': 1.29.0(@opentelemetry/api@1.9.0) + '@opentelemetry/sdk-logs': 0.56.0(@opentelemetry/api@1.9.0) + '@opentelemetry/sdk-trace-base': 1.29.0(@opentelemetry/api@1.9.0) - '@opentelemetry/exporter-trace-otlp-grpc@0.54.0(@opentelemetry/api@1.9.0)': + '@opentelemetry/exporter-trace-otlp-grpc@0.56.0(@opentelemetry/api@1.9.0)': dependencies: - '@grpc/grpc-js': 1.12.2 + '@grpc/grpc-js': 1.12.4 '@opentelemetry/api': 1.9.0 - '@opentelemetry/core': 1.27.0(@opentelemetry/api@1.9.0) - '@opentelemetry/otlp-grpc-exporter-base': 0.54.0(@opentelemetry/api@1.9.0) - '@opentelemetry/otlp-transformer': 0.54.0(@opentelemetry/api@1.9.0) - '@opentelemetry/resources': 1.27.0(@opentelemetry/api@1.9.0) - '@opentelemetry/sdk-trace-base': 1.27.0(@opentelemetry/api@1.9.0) + '@opentelemetry/core': 1.29.0(@opentelemetry/api@1.9.0) + '@opentelemetry/otlp-grpc-exporter-base': 0.56.0(@opentelemetry/api@1.9.0) + '@opentelemetry/otlp-transformer': 0.56.0(@opentelemetry/api@1.9.0) + '@opentelemetry/resources': 1.29.0(@opentelemetry/api@1.9.0) + '@opentelemetry/sdk-trace-base': 1.29.0(@opentelemetry/api@1.9.0) - '@opentelemetry/exporter-trace-otlp-http@0.53.0(@opentelemetry/api@1.9.0)': + '@opentelemetry/exporter-trace-otlp-http@0.55.0(@opentelemetry/api@1.9.0)': dependencies: '@opentelemetry/api': 1.9.0 - '@opentelemetry/core': 1.26.0(@opentelemetry/api@1.9.0) - '@opentelemetry/otlp-exporter-base': 0.53.0(@opentelemetry/api@1.9.0) - '@opentelemetry/otlp-transformer': 0.53.0(@opentelemetry/api@1.9.0) - '@opentelemetry/resources': 1.26.0(@opentelemetry/api@1.9.0) - '@opentelemetry/sdk-trace-base': 1.26.0(@opentelemetry/api@1.9.0) + '@opentelemetry/core': 1.28.0(@opentelemetry/api@1.9.0) + '@opentelemetry/otlp-exporter-base': 0.55.0(@opentelemetry/api@1.9.0) + '@opentelemetry/otlp-transformer': 0.55.0(@opentelemetry/api@1.9.0) + '@opentelemetry/resources': 1.28.0(@opentelemetry/api@1.9.0) + '@opentelemetry/sdk-trace-base': 1.28.0(@opentelemetry/api@1.9.0) - '@opentelemetry/exporter-trace-otlp-http@0.54.0(@opentelemetry/api@1.9.0)': + '@opentelemetry/exporter-trace-otlp-http@0.56.0(@opentelemetry/api@1.9.0)': dependencies: '@opentelemetry/api': 1.9.0 - '@opentelemetry/core': 1.27.0(@opentelemetry/api@1.9.0) - '@opentelemetry/otlp-exporter-base': 0.54.0(@opentelemetry/api@1.9.0) - '@opentelemetry/otlp-transformer': 0.54.0(@opentelemetry/api@1.9.0) - '@opentelemetry/resources': 1.27.0(@opentelemetry/api@1.9.0) - '@opentelemetry/sdk-trace-base': 1.27.0(@opentelemetry/api@1.9.0) + '@opentelemetry/core': 1.29.0(@opentelemetry/api@1.9.0) + '@opentelemetry/otlp-exporter-base': 0.56.0(@opentelemetry/api@1.9.0) + '@opentelemetry/otlp-transformer': 0.56.0(@opentelemetry/api@1.9.0) + '@opentelemetry/resources': 1.29.0(@opentelemetry/api@1.9.0) + '@opentelemetry/sdk-trace-base': 1.29.0(@opentelemetry/api@1.9.0) - '@opentelemetry/exporter-trace-otlp-proto@0.54.0(@opentelemetry/api@1.9.0)': + '@opentelemetry/exporter-trace-otlp-proto@0.56.0(@opentelemetry/api@1.9.0)': dependencies: '@opentelemetry/api': 1.9.0 - '@opentelemetry/core': 1.27.0(@opentelemetry/api@1.9.0) - '@opentelemetry/otlp-exporter-base': 0.54.0(@opentelemetry/api@1.9.0) - '@opentelemetry/otlp-transformer': 0.54.0(@opentelemetry/api@1.9.0) - '@opentelemetry/resources': 1.27.0(@opentelemetry/api@1.9.0) - '@opentelemetry/sdk-trace-base': 1.27.0(@opentelemetry/api@1.9.0) + '@opentelemetry/core': 1.29.0(@opentelemetry/api@1.9.0) + '@opentelemetry/otlp-exporter-base': 0.56.0(@opentelemetry/api@1.9.0) + '@opentelemetry/otlp-transformer': 0.56.0(@opentelemetry/api@1.9.0) + '@opentelemetry/resources': 1.29.0(@opentelemetry/api@1.9.0) + '@opentelemetry/sdk-trace-base': 1.29.0(@opentelemetry/api@1.9.0) - '@opentelemetry/exporter-zipkin@1.27.0(@opentelemetry/api@1.9.0)': + '@opentelemetry/exporter-zipkin@1.29.0(@opentelemetry/api@1.9.0)': dependencies: '@opentelemetry/api': 1.9.0 - '@opentelemetry/core': 1.27.0(@opentelemetry/api@1.9.0) - '@opentelemetry/resources': 1.27.0(@opentelemetry/api@1.9.0) - '@opentelemetry/sdk-trace-base': 1.27.0(@opentelemetry/api@1.9.0) - '@opentelemetry/semantic-conventions': 1.27.0 + '@opentelemetry/core': 1.29.0(@opentelemetry/api@1.9.0) + '@opentelemetry/resources': 1.29.0(@opentelemetry/api@1.9.0) + '@opentelemetry/sdk-trace-base': 1.29.0(@opentelemetry/api@1.9.0) + '@opentelemetry/semantic-conventions': 1.28.0 - '@opentelemetry/instrumentation-amqplib@0.43.0(@opentelemetry/api@1.9.0)': + '@opentelemetry/instrumentation-amqplib@0.45.0(@opentelemetry/api@1.9.0)': dependencies: '@opentelemetry/api': 1.9.0 - '@opentelemetry/core': 1.28.0(@opentelemetry/api@1.9.0) - '@opentelemetry/instrumentation': 0.54.2(@opentelemetry/api@1.9.0) - '@opentelemetry/semantic-conventions': 1.27.0 + '@opentelemetry/core': 1.29.0(@opentelemetry/api@1.9.0) + '@opentelemetry/instrumentation': 0.56.0(@opentelemetry/api@1.9.0) + '@opentelemetry/semantic-conventions': 1.28.0 transitivePeerDependencies: - supports-color - '@opentelemetry/instrumentation-aws-lambda@0.46.0(@opentelemetry/api@1.9.0)': + '@opentelemetry/instrumentation-aws-lambda@0.49.0(@opentelemetry/api@1.9.0)': dependencies: '@opentelemetry/api': 1.9.0 - '@opentelemetry/instrumentation': 0.54.2(@opentelemetry/api@1.9.0) - '@opentelemetry/propagator-aws-xray': 1.26.0(@opentelemetry/api@1.9.0) - '@opentelemetry/semantic-conventions': 1.27.0 + '@opentelemetry/instrumentation': 0.56.0(@opentelemetry/api@1.9.0) + '@opentelemetry/semantic-conventions': 1.28.0 '@types/aws-lambda': 8.10.143 transitivePeerDependencies: - supports-color - '@opentelemetry/instrumentation-aws-sdk@0.45.0(@opentelemetry/api@1.9.0)': + '@opentelemetry/instrumentation-aws-sdk@0.48.0(@opentelemetry/api@1.9.0)': dependencies: '@opentelemetry/api': 1.9.0 - '@opentelemetry/core': 1.28.0(@opentelemetry/api@1.9.0) - '@opentelemetry/instrumentation': 0.54.2(@opentelemetry/api@1.9.0) - '@opentelemetry/propagation-utils': 0.30.13(@opentelemetry/api@1.9.0) - '@opentelemetry/semantic-conventions': 1.27.0 + '@opentelemetry/core': 1.29.0(@opentelemetry/api@1.9.0) + '@opentelemetry/instrumentation': 0.56.0(@opentelemetry/api@1.9.0) + '@opentelemetry/propagation-utils': 0.30.14(@opentelemetry/api@1.9.0) + '@opentelemetry/semantic-conventions': 1.28.0 transitivePeerDependencies: - supports-color - '@opentelemetry/instrumentation-bunyan@0.42.0(@opentelemetry/api@1.9.0)': + '@opentelemetry/instrumentation-bunyan@0.44.0(@opentelemetry/api@1.9.0)': dependencies: '@opentelemetry/api': 1.9.0 - '@opentelemetry/api-logs': 0.54.2 - '@opentelemetry/instrumentation': 0.54.2(@opentelemetry/api@1.9.0) + '@opentelemetry/api-logs': 0.56.0 + '@opentelemetry/instrumentation': 0.56.0(@opentelemetry/api@1.9.0) '@types/bunyan': 1.8.9 transitivePeerDependencies: - supports-color - '@opentelemetry/instrumentation-cassandra-driver@0.42.0(@opentelemetry/api@1.9.0)': + '@opentelemetry/instrumentation-cassandra-driver@0.44.0(@opentelemetry/api@1.9.0)': dependencies: '@opentelemetry/api': 1.9.0 - '@opentelemetry/instrumentation': 0.54.2(@opentelemetry/api@1.9.0) - '@opentelemetry/semantic-conventions': 1.27.0 + '@opentelemetry/instrumentation': 0.56.0(@opentelemetry/api@1.9.0) + '@opentelemetry/semantic-conventions': 1.28.0 transitivePeerDependencies: - supports-color - '@opentelemetry/instrumentation-connect@0.40.0(@opentelemetry/api@1.9.0)': + '@opentelemetry/instrumentation-connect@0.42.0(@opentelemetry/api@1.9.0)': dependencies: '@opentelemetry/api': 1.9.0 - '@opentelemetry/core': 1.28.0(@opentelemetry/api@1.9.0) - '@opentelemetry/instrumentation': 0.54.2(@opentelemetry/api@1.9.0) - '@opentelemetry/semantic-conventions': 1.27.0 + '@opentelemetry/core': 1.29.0(@opentelemetry/api@1.9.0) + '@opentelemetry/instrumentation': 0.56.0(@opentelemetry/api@1.9.0) + '@opentelemetry/semantic-conventions': 1.28.0 '@types/connect': 3.4.36 transitivePeerDependencies: - supports-color - '@opentelemetry/instrumentation-cucumber@0.10.0(@opentelemetry/api@1.9.0)': - dependencies: - '@opentelemetry/api': 1.9.0 - '@opentelemetry/instrumentation': 0.54.2(@opentelemetry/api@1.9.0) - '@opentelemetry/semantic-conventions': 1.27.0 - transitivePeerDependencies: - - supports-color - - '@opentelemetry/instrumentation-dataloader@0.13.0(@opentelemetry/api@1.9.0)': + '@opentelemetry/instrumentation-cucumber@0.12.0(@opentelemetry/api@1.9.0)': dependencies: '@opentelemetry/api': 1.9.0 - '@opentelemetry/instrumentation': 0.54.2(@opentelemetry/api@1.9.0) + '@opentelemetry/instrumentation': 0.56.0(@opentelemetry/api@1.9.0) + '@opentelemetry/semantic-conventions': 1.28.0 transitivePeerDependencies: - supports-color - '@opentelemetry/instrumentation-dns@0.40.0(@opentelemetry/api@1.9.0)': + '@opentelemetry/instrumentation-dataloader@0.15.0(@opentelemetry/api@1.9.0)': dependencies: '@opentelemetry/api': 1.9.0 - '@opentelemetry/instrumentation': 0.54.2(@opentelemetry/api@1.9.0) + '@opentelemetry/instrumentation': 0.56.0(@opentelemetry/api@1.9.0) transitivePeerDependencies: - supports-color - '@opentelemetry/instrumentation-document-load@0.40.0(@opentelemetry/api@1.9.0)': + '@opentelemetry/instrumentation-dns@0.42.0(@opentelemetry/api@1.9.0)': dependencies: '@opentelemetry/api': 1.9.0 - '@opentelemetry/core': 1.26.0(@opentelemetry/api@1.9.0) - '@opentelemetry/instrumentation': 0.53.0(@opentelemetry/api@1.9.0) - '@opentelemetry/sdk-trace-base': 1.26.0(@opentelemetry/api@1.9.0) - '@opentelemetry/sdk-trace-web': 1.26.0(@opentelemetry/api@1.9.0) - '@opentelemetry/semantic-conventions': 1.27.0 + '@opentelemetry/instrumentation': 0.56.0(@opentelemetry/api@1.9.0) transitivePeerDependencies: - supports-color - '@opentelemetry/instrumentation-document-load@0.41.0(@opentelemetry/api@1.9.0)': + '@opentelemetry/instrumentation-document-load@0.42.0(@opentelemetry/api@1.9.0)': dependencies: '@opentelemetry/api': 1.9.0 - '@opentelemetry/core': 1.28.0(@opentelemetry/api@1.9.0) - '@opentelemetry/instrumentation': 0.54.2(@opentelemetry/api@1.9.0) - '@opentelemetry/sdk-trace-web': 1.26.0(@opentelemetry/api@1.9.0) - '@opentelemetry/semantic-conventions': 1.27.0 + '@opentelemetry/core': 1.29.0(@opentelemetry/api@1.9.0) + '@opentelemetry/instrumentation': 0.55.0(@opentelemetry/api@1.9.0) + '@opentelemetry/sdk-trace-web': 1.29.0(@opentelemetry/api@1.9.0) + '@opentelemetry/semantic-conventions': 1.28.0 transitivePeerDependencies: - supports-color - '@opentelemetry/instrumentation-express@0.44.0(@opentelemetry/api@1.9.0)': + '@opentelemetry/instrumentation-document-load@0.43.0(@opentelemetry/api@1.9.0)': dependencies: '@opentelemetry/api': 1.9.0 - '@opentelemetry/core': 1.28.0(@opentelemetry/api@1.9.0) - '@opentelemetry/instrumentation': 0.54.2(@opentelemetry/api@1.9.0) - '@opentelemetry/semantic-conventions': 1.27.0 + '@opentelemetry/core': 1.29.0(@opentelemetry/api@1.9.0) + '@opentelemetry/instrumentation': 0.56.0(@opentelemetry/api@1.9.0) + '@opentelemetry/sdk-trace-web': 1.29.0(@opentelemetry/api@1.9.0) + '@opentelemetry/semantic-conventions': 1.28.0 transitivePeerDependencies: - supports-color - '@opentelemetry/instrumentation-fastify@0.41.0(@opentelemetry/api@1.9.0)': + '@opentelemetry/instrumentation-express@0.46.0(@opentelemetry/api@1.9.0)': dependencies: '@opentelemetry/api': 1.9.0 - '@opentelemetry/core': 1.28.0(@opentelemetry/api@1.9.0) - '@opentelemetry/instrumentation': 0.54.2(@opentelemetry/api@1.9.0) - '@opentelemetry/semantic-conventions': 1.27.0 + '@opentelemetry/core': 1.29.0(@opentelemetry/api@1.9.0) + '@opentelemetry/instrumentation': 0.56.0(@opentelemetry/api@1.9.0) + '@opentelemetry/semantic-conventions': 1.28.0 transitivePeerDependencies: - supports-color - '@opentelemetry/instrumentation-fetch@0.53.0(@opentelemetry/api@1.9.0)': + '@opentelemetry/instrumentation-fastify@0.43.0(@opentelemetry/api@1.9.0)': dependencies: '@opentelemetry/api': 1.9.0 - '@opentelemetry/core': 1.26.0(@opentelemetry/api@1.9.0) - '@opentelemetry/instrumentation': 0.53.0(@opentelemetry/api@1.9.0) - '@opentelemetry/sdk-trace-web': 1.26.0(@opentelemetry/api@1.9.0) - '@opentelemetry/semantic-conventions': 1.27.0 + '@opentelemetry/core': 1.29.0(@opentelemetry/api@1.9.0) + '@opentelemetry/instrumentation': 0.56.0(@opentelemetry/api@1.9.0) + '@opentelemetry/semantic-conventions': 1.28.0 transitivePeerDependencies: - supports-color - '@opentelemetry/instrumentation-fetch@0.54.2(@opentelemetry/api@1.9.0)': + '@opentelemetry/instrumentation-fetch@0.55.0(@opentelemetry/api@1.9.0)': dependencies: '@opentelemetry/api': 1.9.0 - '@opentelemetry/core': 1.27.0(@opentelemetry/api@1.9.0) - '@opentelemetry/instrumentation': 0.54.2(@opentelemetry/api@1.9.0) - '@opentelemetry/sdk-trace-web': 1.27.0(@opentelemetry/api@1.9.0) + '@opentelemetry/core': 1.28.0(@opentelemetry/api@1.9.0) + '@opentelemetry/instrumentation': 0.55.0(@opentelemetry/api@1.9.0) + '@opentelemetry/sdk-trace-web': 1.28.0(@opentelemetry/api@1.9.0) '@opentelemetry/semantic-conventions': 1.27.0 transitivePeerDependencies: - supports-color - '@opentelemetry/instrumentation-fetch@0.55.0(@opentelemetry/api@1.9.0)': + '@opentelemetry/instrumentation-fetch@0.56.0(@opentelemetry/api@1.9.0)': dependencies: '@opentelemetry/api': 1.9.0 - '@opentelemetry/core': 1.28.0(@opentelemetry/api@1.9.0) - '@opentelemetry/instrumentation': 0.55.0(@opentelemetry/api@1.9.0) - '@opentelemetry/sdk-trace-web': 1.28.0(@opentelemetry/api@1.9.0) - '@opentelemetry/semantic-conventions': 1.27.0 + '@opentelemetry/core': 1.29.0(@opentelemetry/api@1.9.0) + '@opentelemetry/instrumentation': 0.56.0(@opentelemetry/api@1.9.0) + '@opentelemetry/sdk-trace-web': 1.29.0(@opentelemetry/api@1.9.0) + '@opentelemetry/semantic-conventions': 1.28.0 transitivePeerDependencies: - supports-color - '@opentelemetry/instrumentation-fs@0.16.0(@opentelemetry/api@1.9.0)': + '@opentelemetry/instrumentation-fs@0.18.0(@opentelemetry/api@1.9.0)': dependencies: '@opentelemetry/api': 1.9.0 - '@opentelemetry/core': 1.28.0(@opentelemetry/api@1.9.0) - '@opentelemetry/instrumentation': 0.54.2(@opentelemetry/api@1.9.0) + '@opentelemetry/core': 1.29.0(@opentelemetry/api@1.9.0) + '@opentelemetry/instrumentation': 0.56.0(@opentelemetry/api@1.9.0) transitivePeerDependencies: - supports-color - '@opentelemetry/instrumentation-generic-pool@0.40.0(@opentelemetry/api@1.9.0)': + '@opentelemetry/instrumentation-generic-pool@0.42.0(@opentelemetry/api@1.9.0)': dependencies: '@opentelemetry/api': 1.9.0 - '@opentelemetry/instrumentation': 0.54.2(@opentelemetry/api@1.9.0) + '@opentelemetry/instrumentation': 0.56.0(@opentelemetry/api@1.9.0) transitivePeerDependencies: - supports-color - '@opentelemetry/instrumentation-graphql@0.44.0(@opentelemetry/api@1.9.0)': + '@opentelemetry/instrumentation-graphql@0.46.0(@opentelemetry/api@1.9.0)': dependencies: '@opentelemetry/api': 1.9.0 - '@opentelemetry/instrumentation': 0.54.2(@opentelemetry/api@1.9.0) + '@opentelemetry/instrumentation': 0.56.0(@opentelemetry/api@1.9.0) transitivePeerDependencies: - supports-color - '@opentelemetry/instrumentation-grpc@0.54.2(@opentelemetry/api@1.9.0)': + '@opentelemetry/instrumentation-grpc@0.56.0(@opentelemetry/api@1.9.0)': dependencies: '@opentelemetry/api': 1.9.0 - '@opentelemetry/instrumentation': 0.54.2(@opentelemetry/api@1.9.0) - '@opentelemetry/semantic-conventions': 1.27.0 + '@opentelemetry/instrumentation': 0.56.0(@opentelemetry/api@1.9.0) + '@opentelemetry/semantic-conventions': 1.28.0 transitivePeerDependencies: - supports-color - '@opentelemetry/instrumentation-hapi@0.42.0(@opentelemetry/api@1.9.0)': + '@opentelemetry/instrumentation-hapi@0.44.0(@opentelemetry/api@1.9.0)': dependencies: '@opentelemetry/api': 1.9.0 - '@opentelemetry/core': 1.28.0(@opentelemetry/api@1.9.0) - '@opentelemetry/instrumentation': 0.54.2(@opentelemetry/api@1.9.0) - '@opentelemetry/semantic-conventions': 1.27.0 + '@opentelemetry/core': 1.29.0(@opentelemetry/api@1.9.0) + '@opentelemetry/instrumentation': 0.56.0(@opentelemetry/api@1.9.0) + '@opentelemetry/semantic-conventions': 1.28.0 transitivePeerDependencies: - supports-color - '@opentelemetry/instrumentation-http@0.54.0(@opentelemetry/api@1.9.0)': + '@opentelemetry/instrumentation-http@0.56.0(@opentelemetry/api@1.9.0)': dependencies: '@opentelemetry/api': 1.9.0 - '@opentelemetry/core': 1.27.0(@opentelemetry/api@1.9.0) - '@opentelemetry/instrumentation': 0.54.0(@opentelemetry/api@1.9.0) - '@opentelemetry/semantic-conventions': 1.27.0 + '@opentelemetry/core': 1.29.0(@opentelemetry/api@1.9.0) + '@opentelemetry/instrumentation': 0.56.0(@opentelemetry/api@1.9.0) + '@opentelemetry/semantic-conventions': 1.28.0 forwarded-parse: 2.1.2 semver: 7.6.3 transitivePeerDependencies: - supports-color - '@opentelemetry/instrumentation-ioredis@0.44.0(@opentelemetry/api@1.9.0)': + '@opentelemetry/instrumentation-ioredis@0.46.0(@opentelemetry/api@1.9.0)': dependencies: '@opentelemetry/api': 1.9.0 - '@opentelemetry/instrumentation': 0.54.2(@opentelemetry/api@1.9.0) + '@opentelemetry/instrumentation': 0.56.0(@opentelemetry/api@1.9.0) '@opentelemetry/redis-common': 0.36.2 - '@opentelemetry/semantic-conventions': 1.27.0 + '@opentelemetry/semantic-conventions': 1.28.0 transitivePeerDependencies: - supports-color - '@opentelemetry/instrumentation-kafkajs@0.4.0(@opentelemetry/api@1.9.0)': + '@opentelemetry/instrumentation-kafkajs@0.6.0(@opentelemetry/api@1.9.0)': dependencies: '@opentelemetry/api': 1.9.0 - '@opentelemetry/instrumentation': 0.54.2(@opentelemetry/api@1.9.0) - '@opentelemetry/semantic-conventions': 1.27.0 + '@opentelemetry/instrumentation': 0.56.0(@opentelemetry/api@1.9.0) + '@opentelemetry/semantic-conventions': 1.28.0 transitivePeerDependencies: - supports-color - '@opentelemetry/instrumentation-knex@0.41.0(@opentelemetry/api@1.9.0)': + '@opentelemetry/instrumentation-knex@0.43.0(@opentelemetry/api@1.9.0)': dependencies: '@opentelemetry/api': 1.9.0 - '@opentelemetry/instrumentation': 0.54.2(@opentelemetry/api@1.9.0) - '@opentelemetry/semantic-conventions': 1.27.0 + '@opentelemetry/instrumentation': 0.56.0(@opentelemetry/api@1.9.0) + '@opentelemetry/semantic-conventions': 1.28.0 transitivePeerDependencies: - supports-color - '@opentelemetry/instrumentation-koa@0.44.0(@opentelemetry/api@1.9.0)': + '@opentelemetry/instrumentation-koa@0.46.0(@opentelemetry/api@1.9.0)': dependencies: '@opentelemetry/api': 1.9.0 - '@opentelemetry/core': 1.28.0(@opentelemetry/api@1.9.0) - '@opentelemetry/instrumentation': 0.54.2(@opentelemetry/api@1.9.0) - '@opentelemetry/semantic-conventions': 1.27.0 + '@opentelemetry/core': 1.29.0(@opentelemetry/api@1.9.0) + '@opentelemetry/instrumentation': 0.56.0(@opentelemetry/api@1.9.0) + '@opentelemetry/semantic-conventions': 1.28.0 transitivePeerDependencies: - supports-color - '@opentelemetry/instrumentation-lru-memoizer@0.41.0(@opentelemetry/api@1.9.0)': + '@opentelemetry/instrumentation-lru-memoizer@0.43.0(@opentelemetry/api@1.9.0)': dependencies: '@opentelemetry/api': 1.9.0 - '@opentelemetry/instrumentation': 0.54.2(@opentelemetry/api@1.9.0) + '@opentelemetry/instrumentation': 0.56.0(@opentelemetry/api@1.9.0) transitivePeerDependencies: - supports-color - '@opentelemetry/instrumentation-memcached@0.40.0(@opentelemetry/api@1.9.0)': + '@opentelemetry/instrumentation-memcached@0.42.0(@opentelemetry/api@1.9.0)': dependencies: '@opentelemetry/api': 1.9.0 - '@opentelemetry/instrumentation': 0.54.2(@opentelemetry/api@1.9.0) - '@opentelemetry/semantic-conventions': 1.27.0 + '@opentelemetry/instrumentation': 0.56.0(@opentelemetry/api@1.9.0) + '@opentelemetry/semantic-conventions': 1.28.0 '@types/memcached': 2.2.10 transitivePeerDependencies: - supports-color - '@opentelemetry/instrumentation-mongodb@0.48.0(@opentelemetry/api@1.9.0)': + '@opentelemetry/instrumentation-mongodb@0.50.0(@opentelemetry/api@1.9.0)': dependencies: '@opentelemetry/api': 1.9.0 - '@opentelemetry/instrumentation': 0.54.2(@opentelemetry/api@1.9.0) - '@opentelemetry/semantic-conventions': 1.27.0 + '@opentelemetry/instrumentation': 0.56.0(@opentelemetry/api@1.9.0) + '@opentelemetry/semantic-conventions': 1.28.0 transitivePeerDependencies: - supports-color - '@opentelemetry/instrumentation-mongoose@0.43.0(@opentelemetry/api@1.9.0)': + '@opentelemetry/instrumentation-mongoose@0.45.0(@opentelemetry/api@1.9.0)': dependencies: '@opentelemetry/api': 1.9.0 - '@opentelemetry/core': 1.28.0(@opentelemetry/api@1.9.0) - '@opentelemetry/instrumentation': 0.54.2(@opentelemetry/api@1.9.0) - '@opentelemetry/semantic-conventions': 1.27.0 + '@opentelemetry/core': 1.29.0(@opentelemetry/api@1.9.0) + '@opentelemetry/instrumentation': 0.56.0(@opentelemetry/api@1.9.0) + '@opentelemetry/semantic-conventions': 1.28.0 transitivePeerDependencies: - supports-color - '@opentelemetry/instrumentation-mysql2@0.42.1(@opentelemetry/api@1.9.0)': + '@opentelemetry/instrumentation-mysql2@0.44.0(@opentelemetry/api@1.9.0)': dependencies: '@opentelemetry/api': 1.9.0 - '@opentelemetry/instrumentation': 0.54.2(@opentelemetry/api@1.9.0) - '@opentelemetry/semantic-conventions': 1.27.0 + '@opentelemetry/instrumentation': 0.56.0(@opentelemetry/api@1.9.0) + '@opentelemetry/semantic-conventions': 1.28.0 '@opentelemetry/sql-common': 0.40.1(@opentelemetry/api@1.9.0) transitivePeerDependencies: - supports-color - '@opentelemetry/instrumentation-mysql@0.42.0(@opentelemetry/api@1.9.0)': + '@opentelemetry/instrumentation-mysql@0.44.0(@opentelemetry/api@1.9.0)': dependencies: '@opentelemetry/api': 1.9.0 - '@opentelemetry/instrumentation': 0.54.2(@opentelemetry/api@1.9.0) - '@opentelemetry/semantic-conventions': 1.27.0 + '@opentelemetry/instrumentation': 0.56.0(@opentelemetry/api@1.9.0) + '@opentelemetry/semantic-conventions': 1.28.0 '@types/mysql': 2.15.26 transitivePeerDependencies: - supports-color - '@opentelemetry/instrumentation-nestjs-core@0.41.0(@opentelemetry/api@1.9.0)': + '@opentelemetry/instrumentation-nestjs-core@0.43.0(@opentelemetry/api@1.9.0)': dependencies: '@opentelemetry/api': 1.9.0 - '@opentelemetry/instrumentation': 0.54.2(@opentelemetry/api@1.9.0) - '@opentelemetry/semantic-conventions': 1.27.0 + '@opentelemetry/instrumentation': 0.56.0(@opentelemetry/api@1.9.0) + '@opentelemetry/semantic-conventions': 1.28.0 transitivePeerDependencies: - supports-color - '@opentelemetry/instrumentation-net@0.40.0(@opentelemetry/api@1.9.0)': + '@opentelemetry/instrumentation-net@0.42.0(@opentelemetry/api@1.9.0)': dependencies: '@opentelemetry/api': 1.9.0 - '@opentelemetry/instrumentation': 0.54.2(@opentelemetry/api@1.9.0) - '@opentelemetry/semantic-conventions': 1.27.0 + '@opentelemetry/instrumentation': 0.56.0(@opentelemetry/api@1.9.0) + '@opentelemetry/semantic-conventions': 1.28.0 transitivePeerDependencies: - supports-color - '@opentelemetry/instrumentation-pg@0.47.1(@opentelemetry/api@1.9.0)': + '@opentelemetry/instrumentation-pg@0.49.0(@opentelemetry/api@1.9.0)': dependencies: '@opentelemetry/api': 1.9.0 - '@opentelemetry/core': 1.28.0(@opentelemetry/api@1.9.0) - '@opentelemetry/instrumentation': 0.54.2(@opentelemetry/api@1.9.0) + '@opentelemetry/core': 1.29.0(@opentelemetry/api@1.9.0) + '@opentelemetry/instrumentation': 0.56.0(@opentelemetry/api@1.9.0) '@opentelemetry/semantic-conventions': 1.27.0 '@opentelemetry/sql-common': 0.40.1(@opentelemetry/api@1.9.0) '@types/pg': 8.6.1 @@ -14961,358 +15617,309 @@ snapshots: transitivePeerDependencies: - supports-color - '@opentelemetry/instrumentation-pino@0.43.0(@opentelemetry/api@1.9.0)': + '@opentelemetry/instrumentation-pino@0.45.0(@opentelemetry/api@1.9.0)': dependencies: '@opentelemetry/api': 1.9.0 - '@opentelemetry/api-logs': 0.54.2 - '@opentelemetry/core': 1.28.0(@opentelemetry/api@1.9.0) - '@opentelemetry/instrumentation': 0.54.2(@opentelemetry/api@1.9.0) + '@opentelemetry/api-logs': 0.56.0 + '@opentelemetry/core': 1.29.0(@opentelemetry/api@1.9.0) + '@opentelemetry/instrumentation': 0.56.0(@opentelemetry/api@1.9.0) transitivePeerDependencies: - supports-color - '@opentelemetry/instrumentation-redis-4@0.43.0(@opentelemetry/api@1.9.0)': + '@opentelemetry/instrumentation-redis-4@0.45.0(@opentelemetry/api@1.9.0)': dependencies: '@opentelemetry/api': 1.9.0 - '@opentelemetry/instrumentation': 0.54.2(@opentelemetry/api@1.9.0) + '@opentelemetry/instrumentation': 0.56.0(@opentelemetry/api@1.9.0) '@opentelemetry/redis-common': 0.36.2 - '@opentelemetry/semantic-conventions': 1.27.0 + '@opentelemetry/semantic-conventions': 1.28.0 transitivePeerDependencies: - supports-color - '@opentelemetry/instrumentation-redis@0.43.0(@opentelemetry/api@1.9.0)': + '@opentelemetry/instrumentation-redis@0.45.0(@opentelemetry/api@1.9.0)': dependencies: '@opentelemetry/api': 1.9.0 - '@opentelemetry/instrumentation': 0.54.2(@opentelemetry/api@1.9.0) + '@opentelemetry/instrumentation': 0.56.0(@opentelemetry/api@1.9.0) '@opentelemetry/redis-common': 0.36.2 - '@opentelemetry/semantic-conventions': 1.27.0 + '@opentelemetry/semantic-conventions': 1.28.0 transitivePeerDependencies: - supports-color - '@opentelemetry/instrumentation-restify@0.42.0(@opentelemetry/api@1.9.0)': + '@opentelemetry/instrumentation-restify@0.44.0(@opentelemetry/api@1.9.0)': dependencies: '@opentelemetry/api': 1.9.0 - '@opentelemetry/core': 1.28.0(@opentelemetry/api@1.9.0) - '@opentelemetry/instrumentation': 0.54.2(@opentelemetry/api@1.9.0) - '@opentelemetry/semantic-conventions': 1.27.0 + '@opentelemetry/core': 1.29.0(@opentelemetry/api@1.9.0) + '@opentelemetry/instrumentation': 0.56.0(@opentelemetry/api@1.9.0) + '@opentelemetry/semantic-conventions': 1.28.0 transitivePeerDependencies: - supports-color - '@opentelemetry/instrumentation-router@0.41.0(@opentelemetry/api@1.9.0)': + '@opentelemetry/instrumentation-router@0.43.0(@opentelemetry/api@1.9.0)': dependencies: '@opentelemetry/api': 1.9.0 - '@opentelemetry/instrumentation': 0.54.2(@opentelemetry/api@1.9.0) - '@opentelemetry/semantic-conventions': 1.27.0 + '@opentelemetry/instrumentation': 0.56.0(@opentelemetry/api@1.9.0) + '@opentelemetry/semantic-conventions': 1.28.0 transitivePeerDependencies: - supports-color - '@opentelemetry/instrumentation-socket.io@0.43.0(@opentelemetry/api@1.9.0)': + '@opentelemetry/instrumentation-socket.io@0.45.0(@opentelemetry/api@1.9.0)': dependencies: '@opentelemetry/api': 1.9.0 - '@opentelemetry/instrumentation': 0.54.2(@opentelemetry/api@1.9.0) - '@opentelemetry/semantic-conventions': 1.27.0 + '@opentelemetry/instrumentation': 0.56.0(@opentelemetry/api@1.9.0) + '@opentelemetry/semantic-conventions': 1.28.0 transitivePeerDependencies: - supports-color - '@opentelemetry/instrumentation-tedious@0.15.0(@opentelemetry/api@1.9.0)': + '@opentelemetry/instrumentation-tedious@0.17.0(@opentelemetry/api@1.9.0)': dependencies: '@opentelemetry/api': 1.9.0 - '@opentelemetry/instrumentation': 0.54.2(@opentelemetry/api@1.9.0) - '@opentelemetry/semantic-conventions': 1.27.0 + '@opentelemetry/instrumentation': 0.56.0(@opentelemetry/api@1.9.0) + '@opentelemetry/semantic-conventions': 1.28.0 '@types/tedious': 4.0.14 transitivePeerDependencies: - supports-color - '@opentelemetry/instrumentation-undici@0.7.1(@opentelemetry/api@1.9.0)': + '@opentelemetry/instrumentation-undici@0.9.0(@opentelemetry/api@1.9.0)': dependencies: '@opentelemetry/api': 1.9.0 - '@opentelemetry/core': 1.28.0(@opentelemetry/api@1.9.0) - '@opentelemetry/instrumentation': 0.54.2(@opentelemetry/api@1.9.0) + '@opentelemetry/core': 1.29.0(@opentelemetry/api@1.9.0) + '@opentelemetry/instrumentation': 0.56.0(@opentelemetry/api@1.9.0) transitivePeerDependencies: - supports-color - '@opentelemetry/instrumentation-user-interaction@0.40.0(@opentelemetry/api@1.9.0)(zone.js@0.14.10)': + '@opentelemetry/instrumentation-user-interaction@0.42.0(@opentelemetry/api@1.9.0)(zone.js@0.14.10)': dependencies: '@opentelemetry/api': 1.9.0 - '@opentelemetry/core': 1.26.0(@opentelemetry/api@1.9.0) - '@opentelemetry/instrumentation': 0.53.0(@opentelemetry/api@1.9.0) - '@opentelemetry/sdk-trace-web': 1.26.0(@opentelemetry/api@1.9.0) + '@opentelemetry/core': 1.29.0(@opentelemetry/api@1.9.0) + '@opentelemetry/instrumentation': 0.55.0(@opentelemetry/api@1.9.0) + '@opentelemetry/sdk-trace-web': 1.29.0(@opentelemetry/api@1.9.0) zone.js: 0.14.10 transitivePeerDependencies: - supports-color - '@opentelemetry/instrumentation-user-interaction@0.41.0(@opentelemetry/api@1.9.0)(zone.js@0.14.10)': + '@opentelemetry/instrumentation-user-interaction@0.43.0(@opentelemetry/api@1.9.0)(zone.js@0.14.10)': dependencies: '@opentelemetry/api': 1.9.0 - '@opentelemetry/core': 1.28.0(@opentelemetry/api@1.9.0) - '@opentelemetry/instrumentation': 0.54.2(@opentelemetry/api@1.9.0) - '@opentelemetry/sdk-trace-web': 1.26.0(@opentelemetry/api@1.9.0) + '@opentelemetry/core': 1.29.0(@opentelemetry/api@1.9.0) + '@opentelemetry/instrumentation': 0.56.0(@opentelemetry/api@1.9.0) + '@opentelemetry/sdk-trace-web': 1.29.0(@opentelemetry/api@1.9.0) zone.js: 0.14.10 transitivePeerDependencies: - supports-color - '@opentelemetry/instrumentation-winston@0.41.0(@opentelemetry/api@1.9.0)': + '@opentelemetry/instrumentation-winston@0.43.0(@opentelemetry/api@1.9.0)': dependencies: '@opentelemetry/api': 1.9.0 - '@opentelemetry/api-logs': 0.54.2 - '@opentelemetry/instrumentation': 0.54.2(@opentelemetry/api@1.9.0) + '@opentelemetry/api-logs': 0.56.0 + '@opentelemetry/instrumentation': 0.56.0(@opentelemetry/api@1.9.0) transitivePeerDependencies: - supports-color - '@opentelemetry/instrumentation-xml-http-request@0.53.0(@opentelemetry/api@1.9.0)': + '@opentelemetry/instrumentation-xml-http-request@0.55.0(@opentelemetry/api@1.9.0)': dependencies: '@opentelemetry/api': 1.9.0 - '@opentelemetry/core': 1.26.0(@opentelemetry/api@1.9.0) - '@opentelemetry/instrumentation': 0.53.0(@opentelemetry/api@1.9.0) - '@opentelemetry/sdk-trace-web': 1.26.0(@opentelemetry/api@1.9.0) - '@opentelemetry/semantic-conventions': 1.27.0 - transitivePeerDependencies: - - supports-color - - '@opentelemetry/instrumentation-xml-http-request@0.54.2(@opentelemetry/api@1.9.0)': - dependencies: - '@opentelemetry/api': 1.9.0 - '@opentelemetry/core': 1.27.0(@opentelemetry/api@1.9.0) - '@opentelemetry/instrumentation': 0.54.2(@opentelemetry/api@1.9.0) - '@opentelemetry/sdk-trace-web': 1.27.0(@opentelemetry/api@1.9.0) + '@opentelemetry/core': 1.28.0(@opentelemetry/api@1.9.0) + '@opentelemetry/instrumentation': 0.55.0(@opentelemetry/api@1.9.0) + '@opentelemetry/sdk-trace-web': 1.28.0(@opentelemetry/api@1.9.0) '@opentelemetry/semantic-conventions': 1.27.0 transitivePeerDependencies: - supports-color - '@opentelemetry/instrumentation@0.53.0(@opentelemetry/api@1.9.0)': - dependencies: - '@opentelemetry/api': 1.9.0 - '@opentelemetry/api-logs': 0.53.0 - '@types/shimmer': 1.2.0 - import-in-the-middle: 1.11.2 - require-in-the-middle: 7.4.0 - semver: 7.6.3 - shimmer: 1.2.1 - transitivePeerDependencies: - - supports-color - - '@opentelemetry/instrumentation@0.54.0(@opentelemetry/api@1.9.0)': + '@opentelemetry/instrumentation-xml-http-request@0.56.0(@opentelemetry/api@1.9.0)': dependencies: '@opentelemetry/api': 1.9.0 - '@opentelemetry/api-logs': 0.54.0 - '@types/shimmer': 1.2.0 - import-in-the-middle: 1.11.2 - require-in-the-middle: 7.4.0 - semver: 7.6.3 - shimmer: 1.2.1 + '@opentelemetry/core': 1.29.0(@opentelemetry/api@1.9.0) + '@opentelemetry/instrumentation': 0.56.0(@opentelemetry/api@1.9.0) + '@opentelemetry/sdk-trace-web': 1.29.0(@opentelemetry/api@1.9.0) + '@opentelemetry/semantic-conventions': 1.28.0 transitivePeerDependencies: - supports-color - '@opentelemetry/instrumentation@0.54.2(@opentelemetry/api@1.9.0)': + '@opentelemetry/instrumentation@0.55.0(@opentelemetry/api@1.9.0)': dependencies: '@opentelemetry/api': 1.9.0 - '@opentelemetry/api-logs': 0.54.2 + '@opentelemetry/api-logs': 0.55.0 '@types/shimmer': 1.2.0 - import-in-the-middle: 1.11.2 + import-in-the-middle: 1.11.3 require-in-the-middle: 7.4.0 semver: 7.6.3 shimmer: 1.2.1 transitivePeerDependencies: - supports-color - '@opentelemetry/instrumentation@0.55.0(@opentelemetry/api@1.9.0)': + '@opentelemetry/instrumentation@0.56.0(@opentelemetry/api@1.9.0)': dependencies: '@opentelemetry/api': 1.9.0 - '@opentelemetry/api-logs': 0.55.0 + '@opentelemetry/api-logs': 0.56.0 '@types/shimmer': 1.2.0 - import-in-the-middle: 1.11.2 + import-in-the-middle: 1.11.3 require-in-the-middle: 7.4.0 semver: 7.6.3 shimmer: 1.2.1 transitivePeerDependencies: - supports-color - '@opentelemetry/opentelemetry-browser-detector@0.53.0(@opentelemetry/api@1.9.0)': + '@opentelemetry/opentelemetry-browser-detector@0.55.0(@opentelemetry/api@1.9.0)': dependencies: '@opentelemetry/api': 1.9.0 - '@opentelemetry/resources': 1.26.0(@opentelemetry/api@1.9.0) + '@opentelemetry/resources': 1.28.0(@opentelemetry/api@1.9.0) - '@opentelemetry/otlp-exporter-base@0.53.0(@opentelemetry/api@1.9.0)': + '@opentelemetry/otlp-exporter-base@0.55.0(@opentelemetry/api@1.9.0)': dependencies: '@opentelemetry/api': 1.9.0 - '@opentelemetry/core': 1.26.0(@opentelemetry/api@1.9.0) - '@opentelemetry/otlp-transformer': 0.53.0(@opentelemetry/api@1.9.0) + '@opentelemetry/core': 1.28.0(@opentelemetry/api@1.9.0) + '@opentelemetry/otlp-transformer': 0.55.0(@opentelemetry/api@1.9.0) - '@opentelemetry/otlp-exporter-base@0.54.0(@opentelemetry/api@1.9.0)': + '@opentelemetry/otlp-exporter-base@0.56.0(@opentelemetry/api@1.9.0)': dependencies: '@opentelemetry/api': 1.9.0 - '@opentelemetry/core': 1.27.0(@opentelemetry/api@1.9.0) - '@opentelemetry/otlp-transformer': 0.54.0(@opentelemetry/api@1.9.0) + '@opentelemetry/core': 1.29.0(@opentelemetry/api@1.9.0) + '@opentelemetry/otlp-transformer': 0.56.0(@opentelemetry/api@1.9.0) - '@opentelemetry/otlp-grpc-exporter-base@0.54.0(@opentelemetry/api@1.9.0)': + '@opentelemetry/otlp-grpc-exporter-base@0.56.0(@opentelemetry/api@1.9.0)': dependencies: - '@grpc/grpc-js': 1.12.2 + '@grpc/grpc-js': 1.12.4 '@opentelemetry/api': 1.9.0 - '@opentelemetry/core': 1.27.0(@opentelemetry/api@1.9.0) - '@opentelemetry/otlp-exporter-base': 0.54.0(@opentelemetry/api@1.9.0) - '@opentelemetry/otlp-transformer': 0.54.0(@opentelemetry/api@1.9.0) + '@opentelemetry/core': 1.29.0(@opentelemetry/api@1.9.0) + '@opentelemetry/otlp-exporter-base': 0.56.0(@opentelemetry/api@1.9.0) + '@opentelemetry/otlp-transformer': 0.56.0(@opentelemetry/api@1.9.0) - '@opentelemetry/otlp-transformer@0.53.0(@opentelemetry/api@1.9.0)': + '@opentelemetry/otlp-transformer@0.55.0(@opentelemetry/api@1.9.0)': dependencies: '@opentelemetry/api': 1.9.0 - '@opentelemetry/api-logs': 0.53.0 - '@opentelemetry/core': 1.26.0(@opentelemetry/api@1.9.0) - '@opentelemetry/resources': 1.26.0(@opentelemetry/api@1.9.0) - '@opentelemetry/sdk-logs': 0.53.0(@opentelemetry/api@1.9.0) - '@opentelemetry/sdk-metrics': 1.26.0(@opentelemetry/api@1.9.0) - '@opentelemetry/sdk-trace-base': 1.26.0(@opentelemetry/api@1.9.0) + '@opentelemetry/api-logs': 0.55.0 + '@opentelemetry/core': 1.28.0(@opentelemetry/api@1.9.0) + '@opentelemetry/resources': 1.28.0(@opentelemetry/api@1.9.0) + '@opentelemetry/sdk-logs': 0.55.0(@opentelemetry/api@1.9.0) + '@opentelemetry/sdk-metrics': 1.28.0(@opentelemetry/api@1.9.0) + '@opentelemetry/sdk-trace-base': 1.28.0(@opentelemetry/api@1.9.0) protobufjs: 7.4.0 - '@opentelemetry/otlp-transformer@0.54.0(@opentelemetry/api@1.9.0)': + '@opentelemetry/otlp-transformer@0.56.0(@opentelemetry/api@1.9.0)': dependencies: '@opentelemetry/api': 1.9.0 - '@opentelemetry/api-logs': 0.54.0 - '@opentelemetry/core': 1.27.0(@opentelemetry/api@1.9.0) - '@opentelemetry/resources': 1.27.0(@opentelemetry/api@1.9.0) - '@opentelemetry/sdk-logs': 0.54.0(@opentelemetry/api@1.9.0) - '@opentelemetry/sdk-metrics': 1.27.0(@opentelemetry/api@1.9.0) - '@opentelemetry/sdk-trace-base': 1.27.0(@opentelemetry/api@1.9.0) + '@opentelemetry/api-logs': 0.56.0 + '@opentelemetry/core': 1.29.0(@opentelemetry/api@1.9.0) + '@opentelemetry/resources': 1.29.0(@opentelemetry/api@1.9.0) + '@opentelemetry/sdk-logs': 0.56.0(@opentelemetry/api@1.9.0) + '@opentelemetry/sdk-metrics': 1.29.0(@opentelemetry/api@1.9.0) + '@opentelemetry/sdk-trace-base': 1.29.0(@opentelemetry/api@1.9.0) protobufjs: 7.4.0 - '@opentelemetry/propagation-utils@0.30.13(@opentelemetry/api@1.9.0)': + '@opentelemetry/propagation-utils@0.30.14(@opentelemetry/api@1.9.0)': dependencies: '@opentelemetry/api': 1.9.0 - '@opentelemetry/propagator-aws-xray@1.26.0(@opentelemetry/api@1.9.0)': + '@opentelemetry/propagator-b3@1.29.0(@opentelemetry/api@1.9.0)': dependencies: '@opentelemetry/api': 1.9.0 - '@opentelemetry/core': 1.26.0(@opentelemetry/api@1.9.0) + '@opentelemetry/core': 1.29.0(@opentelemetry/api@1.9.0) - '@opentelemetry/propagator-b3@1.27.0(@opentelemetry/api@1.9.0)': + '@opentelemetry/propagator-jaeger@1.29.0(@opentelemetry/api@1.9.0)': dependencies: '@opentelemetry/api': 1.9.0 - '@opentelemetry/core': 1.27.0(@opentelemetry/api@1.9.0) - - '@opentelemetry/propagator-jaeger@1.27.0(@opentelemetry/api@1.9.0)': - dependencies: - '@opentelemetry/api': 1.9.0 - '@opentelemetry/core': 1.27.0(@opentelemetry/api@1.9.0) + '@opentelemetry/core': 1.29.0(@opentelemetry/api@1.9.0) '@opentelemetry/redis-common@0.36.2': {} - '@opentelemetry/resource-detector-alibaba-cloud@0.29.5(@opentelemetry/api@1.9.0)': + '@opentelemetry/resource-detector-alibaba-cloud@0.29.6(@opentelemetry/api@1.9.0)': dependencies: '@opentelemetry/api': 1.9.0 - '@opentelemetry/core': 1.28.0(@opentelemetry/api@1.9.0) - '@opentelemetry/resources': 1.28.0(@opentelemetry/api@1.9.0) - '@opentelemetry/semantic-conventions': 1.27.0 + '@opentelemetry/core': 1.29.0(@opentelemetry/api@1.9.0) + '@opentelemetry/resources': 1.29.0(@opentelemetry/api@1.9.0) + '@opentelemetry/semantic-conventions': 1.28.0 - '@opentelemetry/resource-detector-aws@1.8.0(@opentelemetry/api@1.9.0)': + '@opentelemetry/resource-detector-aws@1.9.0(@opentelemetry/api@1.9.0)': dependencies: '@opentelemetry/api': 1.9.0 - '@opentelemetry/core': 1.28.0(@opentelemetry/api@1.9.0) - '@opentelemetry/resources': 1.28.0(@opentelemetry/api@1.9.0) - '@opentelemetry/semantic-conventions': 1.27.0 + '@opentelemetry/core': 1.29.0(@opentelemetry/api@1.9.0) + '@opentelemetry/resources': 1.29.0(@opentelemetry/api@1.9.0) + '@opentelemetry/semantic-conventions': 1.28.0 - '@opentelemetry/resource-detector-azure@0.2.12(@opentelemetry/api@1.9.0)': + '@opentelemetry/resource-detector-azure@0.4.0(@opentelemetry/api@1.9.0)': dependencies: '@opentelemetry/api': 1.9.0 - '@opentelemetry/core': 1.28.0(@opentelemetry/api@1.9.0) - '@opentelemetry/resources': 1.28.0(@opentelemetry/api@1.9.0) - '@opentelemetry/semantic-conventions': 1.27.0 + '@opentelemetry/core': 1.29.0(@opentelemetry/api@1.9.0) + '@opentelemetry/resources': 1.29.0(@opentelemetry/api@1.9.0) + '@opentelemetry/semantic-conventions': 1.28.0 - '@opentelemetry/resource-detector-container@0.5.1(@opentelemetry/api@1.9.0)': + '@opentelemetry/resource-detector-container@0.5.2(@opentelemetry/api@1.9.0)': dependencies: '@opentelemetry/api': 1.9.0 - '@opentelemetry/core': 1.28.0(@opentelemetry/api@1.9.0) - '@opentelemetry/resources': 1.28.0(@opentelemetry/api@1.9.0) - '@opentelemetry/semantic-conventions': 1.27.0 + '@opentelemetry/core': 1.29.0(@opentelemetry/api@1.9.0) + '@opentelemetry/resources': 1.29.0(@opentelemetry/api@1.9.0) + '@opentelemetry/semantic-conventions': 1.28.0 - '@opentelemetry/resource-detector-gcp@0.29.13(@opentelemetry/api@1.9.0)': + '@opentelemetry/resource-detector-gcp@0.31.0(@opentelemetry/api@1.9.0)': dependencies: '@opentelemetry/api': 1.9.0 - '@opentelemetry/core': 1.28.0(@opentelemetry/api@1.9.0) - '@opentelemetry/resources': 1.28.0(@opentelemetry/api@1.9.0) - '@opentelemetry/semantic-conventions': 1.27.0 + '@opentelemetry/core': 1.29.0(@opentelemetry/api@1.9.0) + '@opentelemetry/resources': 1.29.0(@opentelemetry/api@1.9.0) + '@opentelemetry/semantic-conventions': 1.28.0 gcp-metadata: 6.1.0 transitivePeerDependencies: - encoding - supports-color - '@opentelemetry/resources@1.26.0(@opentelemetry/api@1.9.0)': + '@opentelemetry/resources@1.28.0(@opentelemetry/api@1.9.0)': dependencies: '@opentelemetry/api': 1.9.0 - '@opentelemetry/core': 1.26.0(@opentelemetry/api@1.9.0) + '@opentelemetry/core': 1.28.0(@opentelemetry/api@1.9.0) '@opentelemetry/semantic-conventions': 1.27.0 - '@opentelemetry/resources@1.27.0(@opentelemetry/api@1.9.0)': + '@opentelemetry/resources@1.29.0(@opentelemetry/api@1.9.0)': dependencies: '@opentelemetry/api': 1.9.0 - '@opentelemetry/core': 1.27.0(@opentelemetry/api@1.9.0) - '@opentelemetry/semantic-conventions': 1.27.0 + '@opentelemetry/core': 1.29.0(@opentelemetry/api@1.9.0) + '@opentelemetry/semantic-conventions': 1.28.0 - '@opentelemetry/resources@1.28.0(@opentelemetry/api@1.9.0)': + '@opentelemetry/sdk-logs@0.55.0(@opentelemetry/api@1.9.0)': dependencies: '@opentelemetry/api': 1.9.0 + '@opentelemetry/api-logs': 0.55.0 '@opentelemetry/core': 1.28.0(@opentelemetry/api@1.9.0) - '@opentelemetry/semantic-conventions': 1.27.0 - - '@opentelemetry/sdk-logs@0.53.0(@opentelemetry/api@1.9.0)': - dependencies: - '@opentelemetry/api': 1.9.0 - '@opentelemetry/api-logs': 0.53.0 - '@opentelemetry/core': 1.26.0(@opentelemetry/api@1.9.0) - '@opentelemetry/resources': 1.26.0(@opentelemetry/api@1.9.0) + '@opentelemetry/resources': 1.28.0(@opentelemetry/api@1.9.0) - '@opentelemetry/sdk-logs@0.54.0(@opentelemetry/api@1.9.0)': + '@opentelemetry/sdk-logs@0.56.0(@opentelemetry/api@1.9.0)': dependencies: '@opentelemetry/api': 1.9.0 - '@opentelemetry/api-logs': 0.54.0 - '@opentelemetry/core': 1.27.0(@opentelemetry/api@1.9.0) - '@opentelemetry/resources': 1.27.0(@opentelemetry/api@1.9.0) + '@opentelemetry/api-logs': 0.56.0 + '@opentelemetry/core': 1.29.0(@opentelemetry/api@1.9.0) + '@opentelemetry/resources': 1.29.0(@opentelemetry/api@1.9.0) - '@opentelemetry/sdk-metrics@1.26.0(@opentelemetry/api@1.9.0)': + '@opentelemetry/sdk-metrics@1.28.0(@opentelemetry/api@1.9.0)': dependencies: '@opentelemetry/api': 1.9.0 - '@opentelemetry/core': 1.26.0(@opentelemetry/api@1.9.0) - '@opentelemetry/resources': 1.26.0(@opentelemetry/api@1.9.0) + '@opentelemetry/core': 1.28.0(@opentelemetry/api@1.9.0) + '@opentelemetry/resources': 1.28.0(@opentelemetry/api@1.9.0) - '@opentelemetry/sdk-metrics@1.27.0(@opentelemetry/api@1.9.0)': + '@opentelemetry/sdk-metrics@1.29.0(@opentelemetry/api@1.9.0)': dependencies: '@opentelemetry/api': 1.9.0 - '@opentelemetry/core': 1.27.0(@opentelemetry/api@1.9.0) - '@opentelemetry/resources': 1.27.0(@opentelemetry/api@1.9.0) + '@opentelemetry/core': 1.29.0(@opentelemetry/api@1.9.0) + '@opentelemetry/resources': 1.29.0(@opentelemetry/api@1.9.0) - '@opentelemetry/sdk-node@0.54.0(@opentelemetry/api@1.9.0)': + '@opentelemetry/sdk-node@0.56.0(@opentelemetry/api@1.9.0)': dependencies: '@opentelemetry/api': 1.9.0 - '@opentelemetry/api-logs': 0.54.0 - '@opentelemetry/core': 1.27.0(@opentelemetry/api@1.9.0) - '@opentelemetry/exporter-logs-otlp-grpc': 0.54.0(@opentelemetry/api@1.9.0) - '@opentelemetry/exporter-logs-otlp-http': 0.54.0(@opentelemetry/api@1.9.0) - '@opentelemetry/exporter-logs-otlp-proto': 0.54.0(@opentelemetry/api@1.9.0) - '@opentelemetry/exporter-trace-otlp-grpc': 0.54.0(@opentelemetry/api@1.9.0) - '@opentelemetry/exporter-trace-otlp-http': 0.54.0(@opentelemetry/api@1.9.0) - '@opentelemetry/exporter-trace-otlp-proto': 0.54.0(@opentelemetry/api@1.9.0) - '@opentelemetry/exporter-zipkin': 1.27.0(@opentelemetry/api@1.9.0) - '@opentelemetry/instrumentation': 0.54.0(@opentelemetry/api@1.9.0) - '@opentelemetry/resources': 1.27.0(@opentelemetry/api@1.9.0) - '@opentelemetry/sdk-logs': 0.54.0(@opentelemetry/api@1.9.0) - '@opentelemetry/sdk-metrics': 1.27.0(@opentelemetry/api@1.9.0) - '@opentelemetry/sdk-trace-base': 1.27.0(@opentelemetry/api@1.9.0) - '@opentelemetry/sdk-trace-node': 1.27.0(@opentelemetry/api@1.9.0) - '@opentelemetry/semantic-conventions': 1.27.0 + '@opentelemetry/api-logs': 0.56.0 + '@opentelemetry/core': 1.29.0(@opentelemetry/api@1.9.0) + '@opentelemetry/exporter-logs-otlp-grpc': 0.56.0(@opentelemetry/api@1.9.0) + '@opentelemetry/exporter-logs-otlp-http': 0.56.0(@opentelemetry/api@1.9.0) + '@opentelemetry/exporter-logs-otlp-proto': 0.56.0(@opentelemetry/api@1.9.0) + '@opentelemetry/exporter-trace-otlp-grpc': 0.56.0(@opentelemetry/api@1.9.0) + '@opentelemetry/exporter-trace-otlp-http': 0.56.0(@opentelemetry/api@1.9.0) + '@opentelemetry/exporter-trace-otlp-proto': 0.56.0(@opentelemetry/api@1.9.0) + '@opentelemetry/exporter-zipkin': 1.29.0(@opentelemetry/api@1.9.0) + '@opentelemetry/instrumentation': 0.56.0(@opentelemetry/api@1.9.0) + '@opentelemetry/resources': 1.29.0(@opentelemetry/api@1.9.0) + '@opentelemetry/sdk-logs': 0.56.0(@opentelemetry/api@1.9.0) + '@opentelemetry/sdk-metrics': 1.29.0(@opentelemetry/api@1.9.0) + '@opentelemetry/sdk-trace-base': 1.29.0(@opentelemetry/api@1.9.0) + '@opentelemetry/sdk-trace-node': 1.29.0(@opentelemetry/api@1.9.0) + '@opentelemetry/semantic-conventions': 1.28.0 transitivePeerDependencies: - supports-color - '@opentelemetry/sdk-trace-base@1.26.0(@opentelemetry/api@1.9.0)': - dependencies: - '@opentelemetry/api': 1.9.0 - '@opentelemetry/core': 1.26.0(@opentelemetry/api@1.9.0) - '@opentelemetry/resources': 1.26.0(@opentelemetry/api@1.9.0) - '@opentelemetry/semantic-conventions': 1.27.0 - - '@opentelemetry/sdk-trace-base@1.27.0(@opentelemetry/api@1.9.0)': - dependencies: - '@opentelemetry/api': 1.9.0 - '@opentelemetry/core': 1.27.0(@opentelemetry/api@1.9.0) - '@opentelemetry/resources': 1.27.0(@opentelemetry/api@1.9.0) - '@opentelemetry/semantic-conventions': 1.27.0 - '@opentelemetry/sdk-trace-base@1.28.0(@opentelemetry/api@1.9.0)': dependencies: '@opentelemetry/api': 1.9.0 @@ -15320,29 +15927,22 @@ snapshots: '@opentelemetry/resources': 1.28.0(@opentelemetry/api@1.9.0) '@opentelemetry/semantic-conventions': 1.27.0 - '@opentelemetry/sdk-trace-node@1.27.0(@opentelemetry/api@1.9.0)': - dependencies: - '@opentelemetry/api': 1.9.0 - '@opentelemetry/context-async-hooks': 1.27.0(@opentelemetry/api@1.9.0) - '@opentelemetry/core': 1.27.0(@opentelemetry/api@1.9.0) - '@opentelemetry/propagator-b3': 1.27.0(@opentelemetry/api@1.9.0) - '@opentelemetry/propagator-jaeger': 1.27.0(@opentelemetry/api@1.9.0) - '@opentelemetry/sdk-trace-base': 1.27.0(@opentelemetry/api@1.9.0) - semver: 7.6.3 - - '@opentelemetry/sdk-trace-web@1.26.0(@opentelemetry/api@1.9.0)': + '@opentelemetry/sdk-trace-base@1.29.0(@opentelemetry/api@1.9.0)': dependencies: '@opentelemetry/api': 1.9.0 - '@opentelemetry/core': 1.26.0(@opentelemetry/api@1.9.0) - '@opentelemetry/sdk-trace-base': 1.26.0(@opentelemetry/api@1.9.0) - '@opentelemetry/semantic-conventions': 1.27.0 + '@opentelemetry/core': 1.29.0(@opentelemetry/api@1.9.0) + '@opentelemetry/resources': 1.29.0(@opentelemetry/api@1.9.0) + '@opentelemetry/semantic-conventions': 1.28.0 - '@opentelemetry/sdk-trace-web@1.27.0(@opentelemetry/api@1.9.0)': + '@opentelemetry/sdk-trace-node@1.29.0(@opentelemetry/api@1.9.0)': dependencies: '@opentelemetry/api': 1.9.0 - '@opentelemetry/core': 1.27.0(@opentelemetry/api@1.9.0) - '@opentelemetry/sdk-trace-base': 1.27.0(@opentelemetry/api@1.9.0) - '@opentelemetry/semantic-conventions': 1.27.0 + '@opentelemetry/context-async-hooks': 1.29.0(@opentelemetry/api@1.9.0) + '@opentelemetry/core': 1.29.0(@opentelemetry/api@1.9.0) + '@opentelemetry/propagator-b3': 1.29.0(@opentelemetry/api@1.9.0) + '@opentelemetry/propagator-jaeger': 1.29.0(@opentelemetry/api@1.9.0) + '@opentelemetry/sdk-trace-base': 1.29.0(@opentelemetry/api@1.9.0) + semver: 7.6.3 '@opentelemetry/sdk-trace-web@1.28.0(@opentelemetry/api@1.9.0)': dependencies: @@ -15351,12 +15951,21 @@ snapshots: '@opentelemetry/sdk-trace-base': 1.28.0(@opentelemetry/api@1.9.0) '@opentelemetry/semantic-conventions': 1.27.0 + '@opentelemetry/sdk-trace-web@1.29.0(@opentelemetry/api@1.9.0)': + dependencies: + '@opentelemetry/api': 1.9.0 + '@opentelemetry/core': 1.29.0(@opentelemetry/api@1.9.0) + '@opentelemetry/sdk-trace-base': 1.29.0(@opentelemetry/api@1.9.0) + '@opentelemetry/semantic-conventions': 1.28.0 + '@opentelemetry/semantic-conventions@1.27.0': {} + '@opentelemetry/semantic-conventions@1.28.0': {} + '@opentelemetry/sql-common@0.40.1(@opentelemetry/api@1.9.0)': dependencies: '@opentelemetry/api': 1.9.0 - '@opentelemetry/core': 1.28.0(@opentelemetry/api@1.9.0) + '@opentelemetry/core': 1.29.0(@opentelemetry/api@1.9.0) '@parcel/watcher-android-arm64@2.5.0': optional: true @@ -15428,28 +16037,28 @@ snapshots: '@pkgr/core@0.1.1': {} - '@pmmmwh/react-refresh-webpack-plugin@0.5.15(react-refresh@0.14.2)(type-fest@4.27.0)(webpack-dev-server@5.1.0(webpack@5.96.1(@swc/core@1.8.0(@swc/helpers@0.5.13))))(webpack@5.96.1(@swc/core@1.8.0(@swc/helpers@0.5.13)))': + '@pmmmwh/react-refresh-webpack-plugin@0.5.15(react-refresh@0.16.0)(type-fest@4.30.1)(webpack-dev-server@5.2.0(webpack@5.97.1(@swc/core@1.10.1(@swc/helpers@0.5.15))))(webpack@5.97.1(@swc/core@1.10.1(@swc/helpers@0.5.15)))': dependencies: ansi-html: 0.0.9 core-js-pure: 3.39.0 error-stack-parser: 2.1.4 html-entities: 2.5.2 loader-utils: 2.0.4 - react-refresh: 0.14.2 - schema-utils: 4.2.0 + react-refresh: 0.16.0 + schema-utils: 4.3.0 source-map: 0.7.4 - webpack: 5.96.1(@swc/core@1.8.0(@swc/helpers@0.5.13)) + webpack: 5.97.1(@swc/core@1.10.1(@swc/helpers@0.5.15)) optionalDependencies: - type-fest: 4.27.0 - webpack-dev-server: 5.1.0(webpack@5.96.1(@swc/core@1.8.0(@swc/helpers@0.5.13))) + type-fest: 4.30.1 + webpack-dev-server: 5.2.0(webpack@5.97.1(@swc/core@1.10.1(@swc/helpers@0.5.15))) '@pnpm/config.env-replace@1.1.0': {} - '@pnpm/constants@9.0.0': {} + '@pnpm/constants@10.0.0': {} - '@pnpm/error@6.0.2': + '@pnpm/error@6.0.3': dependencies: - '@pnpm/constants': 9.0.0 + '@pnpm/constants': 10.0.0 '@pnpm/network.ca-file@1.0.2': dependencies: @@ -15461,10 +16070,10 @@ snapshots: '@pnpm/network.ca-file': 1.0.2 config-chain: 1.1.13 - '@pnpm/workspace.read-manifest@2.2.1': + '@pnpm/workspace.read-manifest@2.2.2': dependencies: - '@pnpm/constants': 9.0.0 - '@pnpm/error': 6.0.2 + '@pnpm/constants': 10.0.0 + '@pnpm/error': 6.0.3 read-yaml-file: 2.1.0 '@protobufjs/aspromise@1.1.2': {} @@ -15490,140 +16099,191 @@ snapshots: '@protobufjs/utf8@1.1.0': {} - '@react-aria/i18n@3.12.3(react@18.3.1)': - dependencies: - '@internationalized/date': 3.5.6 - '@internationalized/message': 3.1.5 - '@internationalized/number': 3.5.4 - '@internationalized/string': 3.2.4 - '@react-aria/ssr': 3.9.6(react@18.3.1) - '@react-aria/utils': 3.25.3(react@18.3.1) - '@react-types/shared': 3.25.0(react@18.3.1) - '@swc/helpers': 0.5.13 - react: 18.3.1 - - '@react-aria/interactions@3.22.4(react@18.3.1)': - dependencies: - '@react-aria/ssr': 3.9.6(react@18.3.1) - '@react-aria/utils': 3.25.3(react@18.3.1) - '@react-types/shared': 3.25.0(react@18.3.1) - '@swc/helpers': 0.5.13 - react: 18.3.1 - - '@react-aria/landmark@3.0.0-beta.16(react@18.3.1)': - dependencies: - '@react-aria/utils': 3.25.3(react@18.3.1) - '@react-types/shared': 3.25.0(react@18.3.1) - '@swc/helpers': 0.5.13 - react: 18.3.1 - use-sync-external-store: 1.2.2(react@18.3.1) - - '@react-aria/ssr@3.9.6(react@18.3.1)': - dependencies: - '@swc/helpers': 0.5.13 - react: 18.3.1 - - '@react-aria/toast@3.0.0-beta.17(react@18.3.1)': - dependencies: - '@react-aria/i18n': 3.12.3(react@18.3.1) - '@react-aria/interactions': 3.22.4(react@18.3.1) - '@react-aria/landmark': 3.0.0-beta.16(react@18.3.1) - '@react-aria/utils': 3.25.3(react@18.3.1) - '@react-stately/toast': 3.0.0-beta.6(react@18.3.1) - '@react-types/button': 3.10.0(react@18.3.1) - '@react-types/shared': 3.25.0(react@18.3.1) - '@swc/helpers': 0.5.13 - react: 18.3.1 - - '@react-aria/utils@3.25.3(react@18.3.1)': - dependencies: - '@react-aria/ssr': 3.9.6(react@18.3.1) - '@react-stately/utils': 3.10.4(react@18.3.1) - '@react-types/shared': 3.25.0(react@18.3.1) - '@swc/helpers': 0.5.13 + '@react-aria/i18n@3.12.4(react@19.0.0)': + dependencies: + '@internationalized/date': 3.6.0 + '@internationalized/message': 3.1.6 + '@internationalized/number': 3.6.0 + '@internationalized/string': 3.2.5 + '@react-aria/ssr': 3.9.7(react@19.0.0) + '@react-aria/utils': 3.26.0(react@19.0.0) + '@react-types/shared': 3.26.0(react@19.0.0) + '@swc/helpers': 0.5.15 + react: 19.0.0 + + '@react-aria/interactions@3.22.5(react@19.0.0)': + dependencies: + '@react-aria/ssr': 3.9.7(react@19.0.0) + '@react-aria/utils': 3.26.0(react@19.0.0) + '@react-types/shared': 3.26.0(react@19.0.0) + '@swc/helpers': 0.5.15 + react: 19.0.0 + + '@react-aria/landmark@3.0.0-beta.17(react@19.0.0)': + dependencies: + '@react-aria/utils': 3.26.0(react@19.0.0) + '@react-types/shared': 3.26.0(react@19.0.0) + '@swc/helpers': 0.5.15 + react: 19.0.0 + use-sync-external-store: 1.4.0(react@19.0.0) + + '@react-aria/ssr@3.9.7(react@19.0.0)': + dependencies: + '@swc/helpers': 0.5.15 + react: 19.0.0 + + '@react-aria/toast@3.0.0-beta.18(react@19.0.0)': + dependencies: + '@react-aria/i18n': 3.12.4(react@19.0.0) + '@react-aria/interactions': 3.22.5(react@19.0.0) + '@react-aria/landmark': 3.0.0-beta.17(react@19.0.0) + '@react-aria/utils': 3.26.0(react@19.0.0) + '@react-stately/toast': 3.0.0-beta.7(react@19.0.0) + '@react-types/button': 3.10.1(react@19.0.0) + '@react-types/shared': 3.26.0(react@19.0.0) + '@swc/helpers': 0.5.15 + react: 19.0.0 + + '@react-aria/utils@3.26.0(react@19.0.0)': + dependencies: + '@react-aria/ssr': 3.9.7(react@19.0.0) + '@react-stately/utils': 3.10.5(react@19.0.0) + '@react-types/shared': 3.26.0(react@19.0.0) + '@swc/helpers': 0.5.15 clsx: 2.1.1 - react: 18.3.1 + react: 19.0.0 - '@react-stately/toast@3.0.0-beta.6(react@18.3.1)': + '@react-stately/toast@3.0.0-beta.7(react@19.0.0)': dependencies: - '@swc/helpers': 0.5.13 - react: 18.3.1 - use-sync-external-store: 1.2.2(react@18.3.1) + '@swc/helpers': 0.5.15 + react: 19.0.0 + use-sync-external-store: 1.4.0(react@19.0.0) - '@react-stately/utils@3.10.4(react@18.3.1)': + '@react-stately/utils@3.10.5(react@19.0.0)': dependencies: - '@swc/helpers': 0.5.13 - react: 18.3.1 + '@swc/helpers': 0.5.15 + react: 19.0.0 - '@react-types/button@3.10.0(react@18.3.1)': + '@react-types/button@3.10.1(react@19.0.0)': dependencies: - '@react-types/shared': 3.25.0(react@18.3.1) - react: 18.3.1 + '@react-types/shared': 3.26.0(react@19.0.0) + react: 19.0.0 - '@react-types/shared@3.25.0(react@18.3.1)': + '@react-types/shared@3.26.0(react@19.0.0)': dependencies: - react: 18.3.1 + react: 19.0.0 '@remix-run/router@1.20.0': {} - '@rollup/pluginutils@4.2.1': + '@rollup/pluginutils@5.1.4': dependencies: + '@types/estree': 1.0.6 estree-walker: 2.0.2 - picomatch: 2.3.1 + picomatch: 4.0.2 - '@rollup/rollup-android-arm-eabi@4.27.3': - optional: true + '@rsbuild/core@1.1.10': + dependencies: + '@rspack/core': 1.1.6(@swc/helpers@0.5.15) + '@rspack/lite-tapable': 1.0.1 + '@swc/helpers': 0.5.15 + core-js: 3.39.0 - '@rollup/rollup-android-arm64@4.27.3': - optional: true + '@rsbuild/plugin-basic-ssl@1.1.1(@rsbuild/core@1.1.10)': + dependencies: + selfsigned: 2.4.1 + optionalDependencies: + '@rsbuild/core': 1.1.10 - '@rollup/rollup-darwin-arm64@4.27.3': - optional: true + '@rsbuild/plugin-image-compress@1.1.0(@rsbuild/core@1.1.10)': + dependencies: + '@napi-rs/image': 1.9.2 + svgo: 3.3.2 + optionalDependencies: + '@rsbuild/core': 1.1.10 - '@rollup/rollup-darwin-x64@4.27.3': - optional: true + '@rsbuild/plugin-react@1.1.0(@rsbuild/core@1.1.10)': + dependencies: + '@rsbuild/core': 1.1.10 + '@rspack/plugin-react-refresh': 1.0.1(react-refresh@0.16.0) + react-refresh: 0.16.0 - '@rollup/rollup-freebsd-arm64@4.27.3': - optional: true + '@rsbuild/plugin-svgr@1.0.6(@rsbuild/core@1.1.10)(typescript@5.5.4)': + dependencies: + '@rsbuild/core': 1.1.10 + '@rsbuild/plugin-react': 1.1.0(@rsbuild/core@1.1.10) + '@svgr/core': 8.1.0(typescript@5.5.4) + '@svgr/plugin-jsx': 8.1.0(@svgr/core@8.1.0(typescript@5.5.4)) + '@svgr/plugin-svgo': 8.1.0(@svgr/core@8.1.0(typescript@5.5.4))(typescript@5.5.4) + deepmerge: 4.3.1 + loader-utils: 2.0.4 + transitivePeerDependencies: + - supports-color + - typescript - '@rollup/rollup-freebsd-x64@4.27.3': - optional: true + '@rslib/core@0.1.4(typescript@5.5.4)': + dependencies: + '@rsbuild/core': 1.1.10 + rsbuild-plugin-dts: 0.1.4(@rsbuild/core@1.1.10)(typescript@5.5.4) + tinyglobby: 0.2.10 + optionalDependencies: + typescript: 5.5.4 - '@rollup/rollup-linux-arm-gnueabihf@4.27.3': + '@rspack/binding-darwin-arm64@1.1.6': optional: true - '@rollup/rollup-linux-arm-musleabihf@4.27.3': + '@rspack/binding-darwin-x64@1.1.6': optional: true - '@rollup/rollup-linux-arm64-gnu@4.27.3': + '@rspack/binding-linux-arm64-gnu@1.1.6': optional: true - '@rollup/rollup-linux-arm64-musl@4.27.3': + '@rspack/binding-linux-arm64-musl@1.1.6': optional: true - '@rollup/rollup-linux-powerpc64le-gnu@4.27.3': + '@rspack/binding-linux-x64-gnu@1.1.6': optional: true - '@rollup/rollup-linux-riscv64-gnu@4.27.3': + '@rspack/binding-linux-x64-musl@1.1.6': optional: true - '@rollup/rollup-linux-s390x-gnu@4.27.3': + '@rspack/binding-win32-arm64-msvc@1.1.6': optional: true - '@rollup/rollup-linux-x64-gnu@4.27.3': + '@rspack/binding-win32-ia32-msvc@1.1.6': optional: true - '@rollup/rollup-linux-x64-musl@4.27.3': + '@rspack/binding-win32-x64-msvc@1.1.6': optional: true - '@rollup/rollup-win32-arm64-msvc@4.27.3': - optional: true + '@rspack/binding@1.1.6': + optionalDependencies: + '@rspack/binding-darwin-arm64': 1.1.6 + '@rspack/binding-darwin-x64': 1.1.6 + '@rspack/binding-linux-arm64-gnu': 1.1.6 + '@rspack/binding-linux-arm64-musl': 1.1.6 + '@rspack/binding-linux-x64-gnu': 1.1.6 + '@rspack/binding-linux-x64-musl': 1.1.6 + '@rspack/binding-win32-arm64-msvc': 1.1.6 + '@rspack/binding-win32-ia32-msvc': 1.1.6 + '@rspack/binding-win32-x64-msvc': 1.1.6 + + '@rspack/core@1.1.6(@swc/helpers@0.5.15)': + dependencies: + '@module-federation/runtime-tools': 0.5.1 + '@rspack/binding': 1.1.6 + '@rspack/lite-tapable': 1.0.1 + caniuse-lite: 1.0.30001688 + optionalDependencies: + '@swc/helpers': 0.5.15 - '@rollup/rollup-win32-ia32-msvc@4.27.3': - optional: true + '@rspack/lite-tapable@1.0.1': {} - '@rollup/rollup-win32-x64-msvc@4.27.3': - optional: true + '@rspack/plugin-react-refresh@1.0.1(react-refresh@0.16.0)': + dependencies: + error-stack-parser: 2.1.4 + html-entities: 2.5.2 + optionalDependencies: + react-refresh: 0.16.0 '@rtsao/scc@1.1.0': {} @@ -15631,6 +16291,8 @@ snapshots: '@sindresorhus/is@5.6.0': {} + '@sindresorhus/merge-streams@2.3.0': {} + '@sindresorhus/slugify@2.2.1': dependencies: '@sindresorhus/transliterate': 1.6.0 @@ -15654,9 +16316,19 @@ snapshots: ignore: 5.3.2 p-map: 4.0.0 - '@storybook/csf@0.0.1': + '@storybook/csf@0.1.12': dependencies: - lodash: 4.17.21 + type-fest: 2.19.0 + + '@stylistic/eslint-plugin-ts@2.12.1(eslint@8.57.0)(typescript@5.5.4)': + dependencies: + '@typescript-eslint/utils': 8.18.0(eslint@8.57.0)(typescript@5.5.4) + eslint: 8.57.0 + eslint-visitor-keys: 4.2.0 + espree: 10.3.0 + transitivePeerDependencies: + - supports-color + - typescript '@svgr/babel-plugin-add-jsx-attribute@8.0.0(@babel/core@7.26.0)': dependencies: @@ -15715,7 +16387,7 @@ snapshots: '@svgr/hast-util-to-babel-ast@8.0.0': dependencies: - '@babel/types': 7.26.0 + '@babel/types': 7.26.3 entities: 4.5.0 '@svgr/plugin-jsx@8.1.0(@svgr/core@8.1.0(typescript@5.5.4))': @@ -15742,7 +16414,7 @@ snapshots: '@babel/core': 7.26.0 '@babel/plugin-transform-react-constant-elements': 7.25.9(@babel/core@7.26.0) '@babel/preset-env': 7.26.0(@babel/core@7.26.0) - '@babel/preset-react': 7.25.9(@babel/core@7.26.0) + '@babel/preset-react': 7.26.3(@babel/core@7.26.0) '@babel/preset-typescript': 7.26.0(@babel/core@7.26.0) '@svgr/core': 8.1.0(typescript@5.5.4) '@svgr/plugin-jsx': 8.1.0(@svgr/core@8.1.0(typescript@5.5.4)) @@ -15751,67 +16423,67 @@ snapshots: - supports-color - typescript - '@swc/core-darwin-arm64@1.8.0': + '@swc/core-darwin-arm64@1.10.1': optional: true - '@swc/core-darwin-x64@1.8.0': + '@swc/core-darwin-x64@1.10.1': optional: true - '@swc/core-linux-arm-gnueabihf@1.8.0': + '@swc/core-linux-arm-gnueabihf@1.10.1': optional: true - '@swc/core-linux-arm64-gnu@1.8.0': + '@swc/core-linux-arm64-gnu@1.10.1': optional: true - '@swc/core-linux-arm64-musl@1.8.0': + '@swc/core-linux-arm64-musl@1.10.1': optional: true - '@swc/core-linux-x64-gnu@1.8.0': + '@swc/core-linux-x64-gnu@1.10.1': optional: true - '@swc/core-linux-x64-musl@1.8.0': + '@swc/core-linux-x64-musl@1.10.1': optional: true - '@swc/core-win32-arm64-msvc@1.8.0': + '@swc/core-win32-arm64-msvc@1.10.1': optional: true - '@swc/core-win32-ia32-msvc@1.8.0': + '@swc/core-win32-ia32-msvc@1.10.1': optional: true - '@swc/core-win32-x64-msvc@1.8.0': + '@swc/core-win32-x64-msvc@1.10.1': optional: true - '@swc/core@1.8.0(@swc/helpers@0.5.13)': + '@swc/core@1.10.1(@swc/helpers@0.5.15)': dependencies: '@swc/counter': 0.1.3 - '@swc/types': 0.1.15 + '@swc/types': 0.1.17 optionalDependencies: - '@swc/core-darwin-arm64': 1.8.0 - '@swc/core-darwin-x64': 1.8.0 - '@swc/core-linux-arm-gnueabihf': 1.8.0 - '@swc/core-linux-arm64-gnu': 1.8.0 - '@swc/core-linux-arm64-musl': 1.8.0 - '@swc/core-linux-x64-gnu': 1.8.0 - '@swc/core-linux-x64-musl': 1.8.0 - '@swc/core-win32-arm64-msvc': 1.8.0 - '@swc/core-win32-ia32-msvc': 1.8.0 - '@swc/core-win32-x64-msvc': 1.8.0 - '@swc/helpers': 0.5.13 + '@swc/core-darwin-arm64': 1.10.1 + '@swc/core-darwin-x64': 1.10.1 + '@swc/core-linux-arm-gnueabihf': 1.10.1 + '@swc/core-linux-arm64-gnu': 1.10.1 + '@swc/core-linux-arm64-musl': 1.10.1 + '@swc/core-linux-x64-gnu': 1.10.1 + '@swc/core-linux-x64-musl': 1.10.1 + '@swc/core-win32-arm64-msvc': 1.10.1 + '@swc/core-win32-ia32-msvc': 1.10.1 + '@swc/core-win32-x64-msvc': 1.10.1 + '@swc/helpers': 0.5.15 '@swc/counter@0.1.3': {} - '@swc/helpers@0.5.13': + '@swc/helpers@0.5.15': dependencies: tslib: 2.8.1 - '@swc/jest@0.2.37(@swc/core@1.8.0(@swc/helpers@0.5.13))': + '@swc/jest@0.2.37(@swc/core@1.10.1(@swc/helpers@0.5.15))': dependencies: '@jest/create-cache-key-function': 29.7.0 - '@swc/core': 1.8.0(@swc/helpers@0.5.13) + '@swc/core': 1.10.1(@swc/helpers@0.5.15) '@swc/counter': 0.1.3 jsonc-parser: 3.3.1 - '@swc/types@0.1.15': + '@swc/types@0.1.17': dependencies: '@swc/counter': 0.1.3 @@ -15819,20 +16491,20 @@ snapshots: dependencies: defer-to-connect: 2.0.1 - '@tanstack/query-core@5.59.17': {} + '@tanstack/query-core@5.62.7': {} - '@tanstack/query-devtools@5.59.19': {} + '@tanstack/query-devtools@5.61.4': {} - '@tanstack/react-query-devtools@5.59.19(@tanstack/react-query@5.59.19(react@18.3.1))(react@18.3.1)': + '@tanstack/react-query-devtools@5.62.7(@tanstack/react-query@5.62.7(react@19.0.0))(react@19.0.0)': dependencies: - '@tanstack/query-devtools': 5.59.19 - '@tanstack/react-query': 5.59.19(react@18.3.1) - react: 18.3.1 + '@tanstack/query-devtools': 5.61.4 + '@tanstack/react-query': 5.62.7(react@19.0.0) + react: 19.0.0 - '@tanstack/react-query@5.59.19(react@18.3.1)': + '@tanstack/react-query@5.62.7(react@19.0.0)': dependencies: - '@tanstack/query-core': 5.59.17 - react: 18.3.1 + '@tanstack/query-core': 5.62.7 + react: 19.0.0 '@testing-library/dom@10.4.0': dependencies: @@ -15855,15 +16527,15 @@ snapshots: lodash: 4.17.21 redent: 3.0.0 - '@testing-library/react@16.0.1(@testing-library/dom@10.4.0)(@types/react-dom@18.3.1)(@types/react@18.3.12)(react-dom@18.3.1(react@18.3.1))(react@18.3.1)': + '@testing-library/react@16.1.0(@testing-library/dom@10.4.0)(@types/react-dom@19.0.2(@types/react@19.0.1))(@types/react@19.0.1)(react-dom@19.0.0(react@19.0.0))(react@19.0.0)': dependencies: '@babel/runtime': 7.26.0 '@testing-library/dom': 10.4.0 - react: 18.3.1 - react-dom: 18.3.1(react@18.3.1) + react: 19.0.0 + react-dom: 19.0.0(react@19.0.0) optionalDependencies: - '@types/react': 18.3.12 - '@types/react-dom': 18.3.1 + '@types/react': 19.0.1 + '@types/react-dom': 19.0.2(@types/react@19.0.1) '@tokenizer/token@0.3.0': {} @@ -15879,6 +16551,11 @@ snapshots: '@tsconfig/node16@1.0.4': {} + '@tybys/wasm-util@0.9.0': + dependencies: + tslib: 2.8.1 + optional: true + '@types/acorn@4.0.6': dependencies: '@types/estree': 1.0.6 @@ -15889,60 +16566,60 @@ snapshots: '@types/babel__core@7.20.5': dependencies: - '@babel/parser': 7.26.2 - '@babel/types': 7.26.0 + '@babel/parser': 7.26.3 + '@babel/types': 7.26.3 '@types/babel__generator': 7.6.8 '@types/babel__template': 7.4.4 '@types/babel__traverse': 7.20.6 '@types/babel__generator@7.6.8': dependencies: - '@babel/types': 7.26.0 + '@babel/types': 7.26.3 '@types/babel__template@7.4.4': dependencies: - '@babel/parser': 7.26.2 - '@babel/types': 7.26.0 + '@babel/parser': 7.26.3 + '@babel/types': 7.26.3 '@types/babel__traverse@7.20.6': dependencies: - '@babel/types': 7.26.0 + '@babel/types': 7.26.3 '@types/body-parser@1.19.5': dependencies: '@types/connect': 3.4.38 - '@types/node': 22.9.0 + '@types/node': 22.10.2 '@types/bonjour@3.5.13': dependencies: - '@types/node': 22.9.0 + '@types/node': 22.10.2 '@types/bunyan@1.8.9': dependencies: - '@types/node': 22.9.0 + '@types/node': 22.10.2 '@types/concat-stream@2.0.3': dependencies: - '@types/node': 22.9.0 + '@types/node': 22.10.2 '@types/connect-history-api-fallback@1.5.4': dependencies: - '@types/express-serve-static-core': 5.0.1 - '@types/node': 22.9.0 + '@types/express-serve-static-core': 5.0.2 + '@types/node': 22.10.2 '@types/connect@3.4.36': dependencies: - '@types/node': 22.9.0 + '@types/node': 22.10.2 '@types/connect@3.4.38': dependencies: - '@types/node': 22.9.0 + '@types/node': 22.10.2 '@types/cookie@0.6.0': {} '@types/cors@2.8.17': dependencies: - '@types/node': 22.9.0 + '@types/node': 22.10.2 '@types/debug@4.1.12': dependencies: @@ -15966,14 +16643,14 @@ snapshots: '@types/express-serve-static-core@4.19.6': dependencies: - '@types/node': 22.9.0 + '@types/node': 22.10.2 '@types/qs': 6.9.17 '@types/range-parser': 1.2.7 '@types/send': 0.17.4 - '@types/express-serve-static-core@5.0.1': + '@types/express-serve-static-core@5.0.2': dependencies: - '@types/node': 22.9.0 + '@types/node': 22.10.2 '@types/qs': 6.9.17 '@types/range-parser': 1.2.7 '@types/send': 0.17.4 @@ -15988,18 +16665,13 @@ snapshots: '@types/express@5.0.0': dependencies: '@types/body-parser': 1.19.5 - '@types/express-serve-static-core': 5.0.1 + '@types/express-serve-static-core': 5.0.2 '@types/qs': 6.9.17 '@types/serve-static': 1.15.7 - '@types/glob@7.2.0': - dependencies: - '@types/minimatch': 5.1.2 - '@types/node': 22.9.0 - '@types/graceful-fs@4.1.9': dependencies: - '@types/node': 22.9.0 + '@types/node': 22.10.2 '@types/hast@3.0.4': dependencies: @@ -16013,7 +16685,7 @@ snapshots: '@types/http-proxy@1.17.15': dependencies: - '@types/node': 22.9.0 + '@types/node': 22.10.2 '@types/is-empty@1.2.3': {} @@ -16034,7 +16706,7 @@ snapshots: '@types/jsdom@20.0.1': dependencies: - '@types/node': 22.9.0 + '@types/node': 22.10.2 '@types/tough-cookie': 4.0.5 parse5: 7.2.1 @@ -16052,27 +16724,25 @@ snapshots: '@types/memcached@2.2.10': dependencies: - '@types/node': 22.9.0 + '@types/node': 22.10.2 '@types/mime@1.3.5': {} - '@types/minimatch@5.1.2': {} - '@types/ms@0.7.34': {} '@types/mysql@2.15.26': dependencies: - '@types/node': 22.9.0 + '@types/node': 22.10.2 '@types/node-forge@1.3.11': dependencies: - '@types/node': 22.9.0 + '@types/node': 22.10.2 '@types/node@12.20.55': {} - '@types/node@22.9.0': + '@types/node@22.10.2': dependencies: - undici-types: 6.19.8 + undici-types: 6.20.0 '@types/normalize-package-data@2.4.4': {} @@ -16082,27 +16752,20 @@ snapshots: '@types/pg@8.6.1': dependencies: - '@types/node': 22.9.0 + '@types/node': 22.10.2 pg-protocol: 1.7.0 pg-types: 2.2.0 - '@types/prop-types@15.7.13': {} - '@types/qs@6.9.17': {} '@types/range-parser@1.2.7': {} - '@types/react-dom@18.3.1': + '@types/react-dom@19.0.2(@types/react@19.0.1)': dependencies: - '@types/react': 18.3.12 + '@types/react': 19.0.1 - '@types/react-test-renderer@18.3.0': + '@types/react@19.0.1': dependencies: - '@types/react': 18.3.12 - - '@types/react@18.3.12': - dependencies: - '@types/prop-types': 15.7.13 csstype: 3.1.3 '@types/retry@0.12.1': {} @@ -16114,7 +16777,7 @@ snapshots: '@types/send@0.17.4': dependencies: '@types/mime': 1.3.5 - '@types/node': 22.9.0 + '@types/node': 22.10.2 '@types/serve-index@1.9.4': dependencies: @@ -16123,14 +16786,14 @@ snapshots: '@types/serve-static@1.15.7': dependencies: '@types/http-errors': 2.0.4 - '@types/node': 22.9.0 + '@types/node': 22.10.2 '@types/send': 0.17.4 '@types/shimmer@1.2.0': {} '@types/sockjs@0.3.36': dependencies: - '@types/node': 22.9.0 + '@types/node': 22.10.2 '@types/stack-utils@2.0.3': {} @@ -16140,7 +16803,7 @@ snapshots: '@types/tedious@4.0.14': dependencies: - '@types/node': 22.9.0 + '@types/node': 22.10.2 '@types/tough-cookie@4.0.5': {} @@ -16154,7 +16817,7 @@ snapshots: '@types/ws@8.5.13': dependencies: - '@types/node': 22.9.0 + '@types/node': 22.10.2 '@types/yargs-parser@21.0.3': {} @@ -16168,99 +16831,63 @@ snapshots: '@types/yauzl@2.10.3': dependencies: - '@types/node': 22.9.0 + '@types/node': 22.10.2 optional: true - '@typescript-eslint/eslint-plugin@7.18.0(@typescript-eslint/parser@8.13.0(eslint@8.57.0)(typescript@5.5.4))(eslint@8.57.0)(typescript@5.5.4)': + '@typescript-eslint/eslint-plugin@8.18.0(@typescript-eslint/parser@8.18.0(eslint@8.57.0)(typescript@5.5.4))(eslint@8.57.0)(typescript@5.5.4)': dependencies: '@eslint-community/regexpp': 4.12.1 - '@typescript-eslint/parser': 8.13.0(eslint@8.57.0)(typescript@5.5.4) - '@typescript-eslint/scope-manager': 7.18.0 - '@typescript-eslint/type-utils': 7.18.0(eslint@8.57.0)(typescript@5.5.4) - '@typescript-eslint/utils': 7.18.0(eslint@8.57.0)(typescript@5.5.4) - '@typescript-eslint/visitor-keys': 7.18.0 + '@typescript-eslint/parser': 8.18.0(eslint@8.57.0)(typescript@5.5.4) + '@typescript-eslint/scope-manager': 8.18.0 + '@typescript-eslint/type-utils': 8.18.0(eslint@8.57.0)(typescript@5.5.4) + '@typescript-eslint/utils': 8.18.0(eslint@8.57.0)(typescript@5.5.4) + '@typescript-eslint/visitor-keys': 8.18.0 eslint: 8.57.0 graphemer: 1.4.0 ignore: 5.3.2 natural-compare: 1.4.0 - ts-api-utils: 1.4.0(typescript@5.5.4) - optionalDependencies: + ts-api-utils: 1.4.3(typescript@5.5.4) typescript: 5.5.4 transitivePeerDependencies: - supports-color - '@typescript-eslint/parser@8.13.0(eslint@8.57.0)(typescript@5.5.4)': + '@typescript-eslint/parser@8.18.0(eslint@8.57.0)(typescript@5.5.4)': dependencies: - '@typescript-eslint/scope-manager': 8.13.0 - '@typescript-eslint/types': 8.13.0 - '@typescript-eslint/typescript-estree': 8.13.0(typescript@5.5.4) - '@typescript-eslint/visitor-keys': 8.13.0 - debug: 4.3.7(supports-color@5.5.0) + '@typescript-eslint/scope-manager': 8.18.0 + '@typescript-eslint/types': 8.18.0 + '@typescript-eslint/typescript-estree': 8.18.0(typescript@5.5.4) + '@typescript-eslint/visitor-keys': 8.18.0 + debug: 4.4.0(supports-color@9.4.0) eslint: 8.57.0 - optionalDependencies: typescript: 5.5.4 transitivePeerDependencies: - supports-color - '@typescript-eslint/scope-manager@5.62.0': + '@typescript-eslint/scope-manager@8.18.0': dependencies: - '@typescript-eslint/types': 5.62.0 - '@typescript-eslint/visitor-keys': 5.62.0 - - '@typescript-eslint/scope-manager@7.18.0': - dependencies: - '@typescript-eslint/types': 7.18.0 - '@typescript-eslint/visitor-keys': 7.18.0 - - '@typescript-eslint/scope-manager@8.13.0': - dependencies: - '@typescript-eslint/types': 8.13.0 - '@typescript-eslint/visitor-keys': 8.13.0 - - '@typescript-eslint/scope-manager@8.15.0': - dependencies: - '@typescript-eslint/types': 8.15.0 - '@typescript-eslint/visitor-keys': 8.15.0 + '@typescript-eslint/types': 8.18.0 + '@typescript-eslint/visitor-keys': 8.18.0 - '@typescript-eslint/type-utils@7.18.0(eslint@8.57.0)(typescript@5.5.4)': + '@typescript-eslint/type-utils@8.18.0(eslint@8.57.0)(typescript@5.5.4)': dependencies: - '@typescript-eslint/typescript-estree': 7.18.0(typescript@5.5.4) - '@typescript-eslint/utils': 7.18.0(eslint@8.57.0)(typescript@5.5.4) - debug: 4.3.7(supports-color@5.5.0) + '@typescript-eslint/typescript-estree': 8.18.0(typescript@5.5.4) + '@typescript-eslint/utils': 8.18.0(eslint@8.57.0)(typescript@5.5.4) + debug: 4.4.0(supports-color@9.4.0) eslint: 8.57.0 - ts-api-utils: 1.4.0(typescript@5.5.4) - optionalDependencies: + ts-api-utils: 1.4.3(typescript@5.5.4) typescript: 5.5.4 transitivePeerDependencies: - supports-color '@typescript-eslint/types@5.62.0': {} - '@typescript-eslint/types@7.18.0': {} - - '@typescript-eslint/types@8.13.0': {} - - '@typescript-eslint/types@8.15.0': {} + '@typescript-eslint/types@8.18.0': {} '@typescript-eslint/typescript-estree@5.62.0(supports-color@9.4.0)(typescript@5.5.4)': dependencies: '@typescript-eslint/types': 5.62.0 '@typescript-eslint/visitor-keys': 5.62.0 - debug: 4.3.7(supports-color@9.4.0) - globby: 11.1.0 - is-glob: 4.0.3 - semver: 7.6.3 - tsutils: 3.21.0(typescript@5.5.4) - optionalDependencies: - typescript: 5.5.4 - transitivePeerDependencies: - - supports-color - - '@typescript-eslint/typescript-estree@5.62.0(typescript@5.5.4)': - dependencies: - '@typescript-eslint/types': 5.62.0 - '@typescript-eslint/visitor-keys': 5.62.0 - debug: 4.3.7(supports-color@5.5.0) + debug: 4.4.0(supports-color@9.4.0) globby: 11.1.0 is-glob: 4.0.3 semver: 7.6.3 @@ -16270,85 +16897,27 @@ snapshots: transitivePeerDependencies: - supports-color - '@typescript-eslint/typescript-estree@7.18.0(typescript@5.5.4)': - dependencies: - '@typescript-eslint/types': 7.18.0 - '@typescript-eslint/visitor-keys': 7.18.0 - debug: 4.3.7(supports-color@5.5.0) - globby: 11.1.0 - is-glob: 4.0.3 - minimatch: 9.0.5 - semver: 7.6.3 - ts-api-utils: 1.4.0(typescript@5.5.4) - optionalDependencies: - typescript: 5.5.4 - transitivePeerDependencies: - - supports-color - - '@typescript-eslint/typescript-estree@8.13.0(typescript@5.5.4)': - dependencies: - '@typescript-eslint/types': 8.13.0 - '@typescript-eslint/visitor-keys': 8.13.0 - debug: 4.3.7(supports-color@5.5.0) - fast-glob: 3.3.2 - is-glob: 4.0.3 - minimatch: 9.0.5 - semver: 7.6.3 - ts-api-utils: 1.4.0(typescript@5.5.4) - optionalDependencies: - typescript: 5.5.4 - transitivePeerDependencies: - - supports-color - - '@typescript-eslint/typescript-estree@8.15.0(typescript@5.5.4)': + '@typescript-eslint/typescript-estree@8.18.0(typescript@5.5.4)': dependencies: - '@typescript-eslint/types': 8.15.0 - '@typescript-eslint/visitor-keys': 8.15.0 - debug: 4.3.7(supports-color@5.5.0) + '@typescript-eslint/types': 8.18.0 + '@typescript-eslint/visitor-keys': 8.18.0 + debug: 4.4.0(supports-color@9.4.0) fast-glob: 3.3.2 is-glob: 4.0.3 minimatch: 9.0.5 semver: 7.6.3 - ts-api-utils: 1.4.0(typescript@5.5.4) - optionalDependencies: + ts-api-utils: 1.4.3(typescript@5.5.4) typescript: 5.5.4 transitivePeerDependencies: - supports-color - '@typescript-eslint/utils@5.62.0(eslint@8.57.0)(typescript@5.5.4)': - dependencies: - '@eslint-community/eslint-utils': 4.4.1(eslint@8.57.0) - '@types/json-schema': 7.0.15 - '@types/semver': 7.5.8 - '@typescript-eslint/scope-manager': 5.62.0 - '@typescript-eslint/types': 5.62.0 - '@typescript-eslint/typescript-estree': 5.62.0(typescript@5.5.4) - eslint: 8.57.0 - eslint-scope: 5.1.1 - semver: 7.6.3 - transitivePeerDependencies: - - supports-color - - typescript - - '@typescript-eslint/utils@7.18.0(eslint@8.57.0)(typescript@5.5.4)': - dependencies: - '@eslint-community/eslint-utils': 4.4.1(eslint@8.57.0) - '@typescript-eslint/scope-manager': 7.18.0 - '@typescript-eslint/types': 7.18.0 - '@typescript-eslint/typescript-estree': 7.18.0(typescript@5.5.4) - eslint: 8.57.0 - transitivePeerDependencies: - - supports-color - - typescript - - '@typescript-eslint/utils@8.15.0(eslint@8.57.0)(typescript@5.5.4)': + '@typescript-eslint/utils@8.18.0(eslint@8.57.0)(typescript@5.5.4)': dependencies: '@eslint-community/eslint-utils': 4.4.1(eslint@8.57.0) - '@typescript-eslint/scope-manager': 8.15.0 - '@typescript-eslint/types': 8.15.0 - '@typescript-eslint/typescript-estree': 8.15.0(typescript@5.5.4) + '@typescript-eslint/scope-manager': 8.18.0 + '@typescript-eslint/types': 8.18.0 + '@typescript-eslint/typescript-estree': 8.18.0(typescript@5.5.4) eslint: 8.57.0 - optionalDependencies: typescript: 5.5.4 transitivePeerDependencies: - supports-color @@ -16358,27 +16927,17 @@ snapshots: '@typescript-eslint/types': 5.62.0 eslint-visitor-keys: 3.4.3 - '@typescript-eslint/visitor-keys@7.18.0': - dependencies: - '@typescript-eslint/types': 7.18.0 - eslint-visitor-keys: 3.4.3 - - '@typescript-eslint/visitor-keys@8.13.0': + '@typescript-eslint/visitor-keys@8.18.0': dependencies: - '@typescript-eslint/types': 8.13.0 - eslint-visitor-keys: 3.4.3 - - '@typescript-eslint/visitor-keys@8.15.0': - dependencies: - '@typescript-eslint/types': 8.15.0 + '@typescript-eslint/types': 8.18.0 eslint-visitor-keys: 4.2.0 - '@ungap/structured-clone@1.2.0': {} + '@ungap/structured-clone@1.2.1': {} - '@vercel/nft@0.27.6': + '@vercel/nft@0.27.7(supports-color@9.4.0)': dependencies: - '@mapbox/node-pre-gyp': 1.0.11 - '@rollup/pluginutils': 4.2.1 + '@mapbox/node-pre-gyp': 1.0.11(supports-color@9.4.0) + '@rollup/pluginutils': 5.1.4 acorn: 8.14.0 acorn-import-attributes: 1.9.5(acorn@8.14.0) async-sema: 3.1.1 @@ -16387,16 +16946,17 @@ snapshots: glob: 7.2.3 graceful-fs: 4.2.11 micromatch: 4.0.8 - node-gyp-build: 4.8.3 + node-gyp-build: 4.8.4 resolve-from: 5.0.0 transitivePeerDependencies: - encoding + - rollup - supports-color - '@vercel/nft@0.27.6(supports-color@9.4.0)': + '@vercel/nft@0.27.9(supports-color@9.4.0)': dependencies: - '@mapbox/node-pre-gyp': 1.0.11(supports-color@9.4.0) - '@rollup/pluginutils': 4.2.1 + '@mapbox/node-pre-gyp': 2.0.0-rc.0(supports-color@9.4.0) + '@rollup/pluginutils': 5.1.4 acorn: 8.14.0 acorn-import-attributes: 1.9.5(acorn@8.14.0) async-sema: 3.1.1 @@ -16404,11 +16964,12 @@ snapshots: estree-walker: 2.0.2 glob: 7.2.3 graceful-fs: 4.2.11 - micromatch: 4.0.8 - node-gyp-build: 4.8.3 + node-gyp-build: 4.8.4 + picomatch: 4.0.2 resolve-from: 5.0.0 transitivePeerDependencies: - encoding + - rollup - supports-color '@voxpelli/semver-set@6.0.0': @@ -16497,42 +17058,43 @@ snapshots: '@webassemblyjs/ast': 1.14.1 '@xtuc/long': 4.2.2 - '@webpack-cli/configtest@2.1.1(webpack-cli@5.1.4(webpack-dev-server@5.1.0)(webpack@5.96.1))(webpack@5.96.1(@swc/core@1.8.0(@swc/helpers@0.5.13))(webpack-cli@5.1.4))': + '@webpack-cli/configtest@2.1.1(webpack-cli@5.1.4(webpack-dev-server@5.2.0)(webpack@5.97.1))(webpack@5.97.1(@swc/core@1.10.1(@swc/helpers@0.5.15))(webpack-cli@5.1.4))': dependencies: - webpack: 5.96.1(@swc/core@1.8.0(@swc/helpers@0.5.13))(webpack-cli@5.1.4) - webpack-cli: 5.1.4(webpack-dev-server@5.1.0)(webpack@5.96.1) + webpack: 5.97.1(@swc/core@1.10.1(@swc/helpers@0.5.15))(webpack-cli@5.1.4) + webpack-cli: 5.1.4(webpack-dev-server@5.2.0)(webpack@5.97.1) - '@webpack-cli/info@2.0.2(webpack-cli@5.1.4(webpack-dev-server@5.1.0)(webpack@5.96.1))(webpack@5.96.1(@swc/core@1.8.0(@swc/helpers@0.5.13))(webpack-cli@5.1.4))': + '@webpack-cli/info@2.0.2(webpack-cli@5.1.4(webpack-dev-server@5.2.0)(webpack@5.97.1))(webpack@5.97.1(@swc/core@1.10.1(@swc/helpers@0.5.15))(webpack-cli@5.1.4))': dependencies: - webpack: 5.96.1(@swc/core@1.8.0(@swc/helpers@0.5.13))(webpack-cli@5.1.4) - webpack-cli: 5.1.4(webpack-dev-server@5.1.0)(webpack@5.96.1) + webpack: 5.97.1(@swc/core@1.10.1(@swc/helpers@0.5.15))(webpack-cli@5.1.4) + webpack-cli: 5.1.4(webpack-dev-server@5.2.0)(webpack@5.97.1) - '@webpack-cli/serve@2.0.5(webpack-cli@5.1.4(webpack-dev-server@5.1.0)(webpack@5.96.1))(webpack-dev-server@5.1.0(webpack-cli@5.1.4)(webpack@5.96.1))(webpack@5.96.1(@swc/core@1.8.0(@swc/helpers@0.5.13))(webpack-cli@5.1.4))': + '@webpack-cli/serve@2.0.5(webpack-cli@5.1.4(webpack-dev-server@5.2.0)(webpack@5.97.1))(webpack-dev-server@5.2.0(webpack-cli@5.1.4)(webpack@5.97.1))(webpack@5.97.1(@swc/core@1.10.1(@swc/helpers@0.5.15))(webpack-cli@5.1.4))': dependencies: - webpack: 5.96.1(@swc/core@1.8.0(@swc/helpers@0.5.13))(webpack-cli@5.1.4) - webpack-cli: 5.1.4(webpack-dev-server@5.1.0)(webpack@5.96.1) + webpack: 5.97.1(@swc/core@1.10.1(@swc/helpers@0.5.15))(webpack-cli@5.1.4) + webpack-cli: 5.1.4(webpack-dev-server@5.2.0)(webpack@5.97.1) optionalDependencies: - webpack-dev-server: 5.1.0(webpack-cli@5.1.4)(webpack@5.96.1) + webpack-dev-server: 5.2.0(webpack-cli@5.1.4)(webpack@5.97.1) '@workleap/browserslist-config@2.0.1': {} - '@workleap/eslint-plugin@3.2.3(@typescript-eslint/parser@8.13.0(eslint@8.57.0)(typescript@5.5.4))(eslint@8.57.0)(jest@29.7.0(@types/node@22.9.0)(ts-node@10.9.2(@swc/core@1.8.0)(@types/node@22.9.0)(typescript@5.5.4)))(typescript@5.5.4)': + '@workleap/eslint-plugin@3.2.5(@typescript-eslint/parser@8.18.0(eslint@8.57.0)(typescript@5.5.4))(eslint@8.57.0)(jest@29.7.0(@types/node@22.10.2)(ts-node@10.9.2(@swc/core@1.10.1(@swc/helpers@0.5.15))(@types/node@22.10.2)(typescript@5.5.4)))(typescript@5.5.4)': dependencies: - '@typescript-eslint/eslint-plugin': 7.18.0(@typescript-eslint/parser@8.13.0(eslint@8.57.0)(typescript@5.5.4))(eslint@8.57.0)(typescript@5.5.4) - eslint-plugin-import: 2.31.0(@typescript-eslint/parser@8.13.0(eslint@8.57.0)(typescript@5.5.4))(eslint@8.57.0) - eslint-plugin-jest: 28.9.0(@typescript-eslint/eslint-plugin@7.18.0(@typescript-eslint/parser@8.13.0(eslint@8.57.0)(typescript@5.5.4))(eslint@8.57.0)(typescript@5.5.4))(eslint@8.57.0)(jest@29.7.0(@types/node@22.9.0)(ts-node@10.9.2(@swc/core@1.8.0)(@types/node@22.9.0)(typescript@5.5.4)))(typescript@5.5.4) + '@stylistic/eslint-plugin-ts': 2.12.1(eslint@8.57.0)(typescript@5.5.4) + '@typescript-eslint/eslint-plugin': 8.18.0(@typescript-eslint/parser@8.18.0(eslint@8.57.0)(typescript@5.5.4))(eslint@8.57.0)(typescript@5.5.4) + eslint-plugin-import: 2.31.0(@typescript-eslint/parser@8.18.0(eslint@8.57.0)(typescript@5.5.4))(eslint@8.57.0) + eslint-plugin-jest: 28.9.0(@typescript-eslint/eslint-plugin@8.18.0(@typescript-eslint/parser@8.18.0(eslint@8.57.0)(typescript@5.5.4))(eslint@8.57.0)(typescript@5.5.4))(eslint@8.57.0)(jest@29.7.0(@types/node@22.10.2)(ts-node@10.9.2(@swc/core@1.10.1(@swc/helpers@0.5.15))(@types/node@22.10.2)(typescript@5.5.4)))(typescript@5.5.4) eslint-plugin-jsx-a11y: 6.10.2(eslint@8.57.0) eslint-plugin-mdx: 3.1.5(eslint@8.57.0) - eslint-plugin-package-json: 0.12.2(eslint@8.57.0)(jsonc-eslint-parser@2.4.0) + eslint-plugin-package-json: 0.18.0(eslint@8.57.0)(jsonc-eslint-parser@2.4.0) eslint-plugin-react: 7.37.2(eslint@8.57.0) - eslint-plugin-react-hooks: 4.6.2(eslint@8.57.0) - eslint-plugin-storybook: 0.8.0(eslint@8.57.0)(typescript@5.5.4) - eslint-plugin-testing-library: 6.4.0(eslint@8.57.0)(typescript@5.5.4) - eslint-plugin-yml: 1.15.0(eslint@8.57.0) + eslint-plugin-react-hooks: 5.1.0(eslint@8.57.0) + eslint-plugin-storybook: 0.11.1(eslint@8.57.0)(typescript@5.5.4) + eslint-plugin-testing-library: 7.1.1(eslint@8.57.0)(typescript@5.5.4) + eslint-plugin-yml: 1.16.0(eslint@8.57.0) jsonc-eslint-parser: 2.4.0 yaml-eslint-parser: 1.2.3 optionalDependencies: - '@typescript-eslint/parser': 8.13.0(eslint@8.57.0)(typescript@5.5.4) + '@typescript-eslint/parser': 8.18.0(eslint@8.57.0)(typescript@5.5.4) eslint: 8.57.0 typescript: 5.5.4 transitivePeerDependencies: @@ -16542,48 +17104,55 @@ snapshots: - jest - supports-color - '@workleap/honeycomb@1.0.0(@honeycombio/opentelemetry-web@0.8.1(zone.js@0.14.10))(@opentelemetry/api@1.9.0)(@opentelemetry/auto-instrumentations-web@0.42.0(@opentelemetry/api@1.9.0)(zone.js@0.14.10))': + '@workleap/honeycomb@1.0.0(@honeycombio/opentelemetry-web@0.10.0(zone.js@0.14.10))(@opentelemetry/api@1.9.0)(@opentelemetry/auto-instrumentations-web@0.44.0(@opentelemetry/api@1.9.0)(zone.js@0.14.10))': dependencies: - '@honeycombio/opentelemetry-web': 0.8.1(zone.js@0.14.10) + '@honeycombio/opentelemetry-web': 0.10.0(zone.js@0.14.10) '@opentelemetry/api': 1.9.0 - '@opentelemetry/auto-instrumentations-web': 0.42.0(@opentelemetry/api@1.9.0)(zone.js@0.14.10) + '@opentelemetry/auto-instrumentations-web': 0.44.0(@opentelemetry/api@1.9.0)(zone.js@0.14.10) - '@workleap/swc-configs@2.2.3(@swc/core@1.8.0(@swc/helpers@0.5.13))(@swc/helpers@0.5.13)(@swc/jest@0.2.37(@swc/core@1.8.0(@swc/helpers@0.5.13)))(browserslist@4.24.2)': + '@workleap/rsbuild-configs@1.0.1(@rsbuild/core@1.1.10)(@rspack/core@1.1.6(@swc/helpers@0.5.15))(typescript@5.5.4)': dependencies: - '@swc/core': 1.8.0(@swc/helpers@0.5.13) - '@swc/helpers': 0.5.13 - optionalDependencies: - '@swc/jest': 0.2.37(@swc/core@1.8.0(@swc/helpers@0.5.13)) - browserslist: 4.24.2 + '@rsbuild/core': 1.1.10 + '@rsbuild/plugin-basic-ssl': 1.1.1(@rsbuild/core@1.1.10) + '@rsbuild/plugin-image-compress': 1.1.0(@rsbuild/core@1.1.10) + '@rsbuild/plugin-react': 1.1.0(@rsbuild/core@1.1.10) + '@rsbuild/plugin-svgr': 1.0.6(@rsbuild/core@1.1.10)(typescript@5.5.4) + '@rspack/core': 1.1.6(@swc/helpers@0.5.15) + transitivePeerDependencies: + - supports-color + - typescript - '@workleap/tsup-configs@3.0.6(tsup@8.3.5(@swc/core@1.8.0)(jiti@2.4.0)(postcss@8.4.49)(tsx@4.19.2)(typescript@5.5.4)(yaml@2.6.0))(typescript@5.5.4)': + '@workleap/swc-configs@2.2.3(@swc/core@1.10.1(@swc/helpers@0.5.15))(@swc/helpers@0.5.15)(@swc/jest@0.2.37(@swc/core@1.10.1(@swc/helpers@0.5.15)))(browserslist@4.24.3)': dependencies: - tsup: 8.3.5(@swc/core@1.8.0)(jiti@2.4.0)(postcss@8.4.49)(tsx@4.19.2)(typescript@5.5.4)(yaml@2.6.0) - typescript: 5.5.4 + '@swc/core': 1.10.1(@swc/helpers@0.5.15) + '@swc/helpers': 0.5.15 + optionalDependencies: + '@swc/jest': 0.2.37(@swc/core@1.10.1(@swc/helpers@0.5.15)) + browserslist: 4.24.3 '@workleap/typescript-configs@3.0.2(typescript@5.5.4)': dependencies: typescript: 5.5.4 - '@workleap/webpack-configs@1.5.1(@swc/core@1.8.0(@swc/helpers@0.5.13))(@swc/helpers@0.5.13)(browserslist@4.24.2)(postcss@8.4.49)(type-fest@4.27.0)(typescript@5.5.4)(webpack-dev-server@5.1.0(webpack@5.96.1(@swc/core@1.8.0(@swc/helpers@0.5.13))))(webpack@5.96.1(@swc/core@1.8.0(@swc/helpers@0.5.13)))': + '@workleap/webpack-configs@1.5.2(@rspack/core@1.1.6(@swc/helpers@0.5.15))(@swc/core@1.10.1(@swc/helpers@0.5.15))(@swc/helpers@0.5.15)(browserslist@4.24.3)(postcss@8.4.49)(type-fest@4.30.1)(typescript@5.5.4)(webpack-dev-server@5.2.0(webpack@5.97.1(@swc/core@1.10.1(@swc/helpers@0.5.15))))(webpack@5.97.1(@swc/core@1.10.1(@swc/helpers@0.5.15)))': dependencies: - '@pmmmwh/react-refresh-webpack-plugin': 0.5.15(react-refresh@0.14.2)(type-fest@4.27.0)(webpack-dev-server@5.1.0(webpack@5.96.1(@swc/core@1.8.0(@swc/helpers@0.5.13))))(webpack@5.96.1(@swc/core@1.8.0(@swc/helpers@0.5.13))) + '@pmmmwh/react-refresh-webpack-plugin': 0.5.15(react-refresh@0.16.0)(type-fest@4.30.1)(webpack-dev-server@5.2.0(webpack@5.97.1(@swc/core@1.10.1(@swc/helpers@0.5.15))))(webpack@5.97.1(@swc/core@1.10.1(@swc/helpers@0.5.15))) '@svgr/webpack': 8.1.0(typescript@5.5.4) - '@swc/core': 1.8.0(@swc/helpers@0.5.13) - '@swc/helpers': 0.5.13 - browserslist: 4.24.2 - css-loader: 6.11.0(webpack@5.96.1(@swc/core@1.8.0(@swc/helpers@0.5.13))) - html-webpack-plugin: 5.6.3(webpack@5.96.1(@swc/core@1.8.0(@swc/helpers@0.5.13))) - mini-css-extract-plugin: 2.9.2(webpack@5.96.1(@swc/core@1.8.0(@swc/helpers@0.5.13))) + '@swc/core': 1.10.1(@swc/helpers@0.5.15) + '@swc/helpers': 0.5.15 + browserslist: 4.24.3 + css-loader: 7.1.2(@rspack/core@1.1.6(@swc/helpers@0.5.15))(webpack@5.97.1(@swc/core@1.10.1(@swc/helpers@0.5.15))) + html-webpack-plugin: 5.6.3(@rspack/core@1.1.6(@swc/helpers@0.5.15))(webpack@5.97.1(@swc/core@1.10.1(@swc/helpers@0.5.15))) + mini-css-extract-plugin: 2.9.2(webpack@5.97.1(@swc/core@1.10.1(@swc/helpers@0.5.15))) postcss: 8.4.49 - postcss-loader: 8.1.1(postcss@8.4.49)(typescript@5.5.4)(webpack@5.96.1(@swc/core@1.8.0(@swc/helpers@0.5.13))) - react-refresh: 0.14.2 - style-loader: 3.3.4(webpack@5.96.1(@swc/core@1.8.0(@swc/helpers@0.5.13))) - swc-loader: 0.2.6(@swc/core@1.8.0(@swc/helpers@0.5.13))(webpack@5.96.1(@swc/core@1.8.0(@swc/helpers@0.5.13))) - terser-webpack-plugin: 5.3.10(@swc/core@1.8.0(@swc/helpers@0.5.13))(webpack@5.96.1(@swc/core@1.8.0(@swc/helpers@0.5.13))) - webpack: 5.96.1(@swc/core@1.8.0(@swc/helpers@0.5.13)) + postcss-loader: 8.1.1(@rspack/core@1.1.6(@swc/helpers@0.5.15))(postcss@8.4.49)(typescript@5.5.4)(webpack@5.97.1(@swc/core@1.10.1(@swc/helpers@0.5.15))) + react-refresh: 0.16.0 + style-loader: 4.0.0(webpack@5.97.1(@swc/core@1.10.1(@swc/helpers@0.5.15))) + swc-loader: 0.2.6(@swc/core@1.10.1(@swc/helpers@0.5.15))(webpack@5.97.1(@swc/core@1.10.1(@swc/helpers@0.5.15))) + terser-webpack-plugin: 5.3.11(@swc/core@1.10.1(@swc/helpers@0.5.15))(webpack@5.97.1(@swc/core@1.10.1(@swc/helpers@0.5.15))) + webpack: 5.97.1(@swc/core@1.10.1(@swc/helpers@0.5.15)) optionalDependencies: - webpack-dev-server: 5.1.0(webpack@5.96.1(@swc/core@1.8.0(@swc/helpers@0.5.13))) + webpack-dev-server: 5.2.0(webpack@5.97.1(@swc/core@1.10.1(@swc/helpers@0.5.15))) transitivePeerDependencies: - '@rspack/core' - '@types/webpack' @@ -16691,23 +17260,13 @@ snapshots: adm-zip@0.5.16: {} - agent-base@6.0.2: - dependencies: - debug: 4.3.7(supports-color@5.5.0) - transitivePeerDependencies: - - supports-color - agent-base@6.0.2(supports-color@9.4.0): dependencies: - debug: 4.3.7(supports-color@9.4.0) + debug: 4.4.0(supports-color@9.4.0) transitivePeerDependencies: - supports-color - agent-base@7.1.1: - dependencies: - debug: 4.3.7(supports-color@5.5.0) - transitivePeerDependencies: - - supports-color + agent-base@7.1.3: {} aggregate-error@3.1.0: dependencies: @@ -16815,8 +17374,6 @@ snapshots: dependencies: entities: 2.2.0 - any-promise@1.3.0: {} - anymatch@3.1.3: dependencies: normalize-path: 3.0.0 @@ -16865,19 +17422,19 @@ snapshots: array-buffer-byte-length@1.0.1: dependencies: - call-bind: 1.0.7 + call-bind: 1.0.8 is-array-buffer: 3.0.4 array-flatten@1.1.1: {} array-includes@3.1.8: dependencies: - call-bind: 1.0.7 + call-bind: 1.0.8 define-properties: 1.2.1 es-abstract: 1.23.5 es-object-atoms: 1.0.0 - get-intrinsic: 1.2.4 - is-string: 1.0.7 + get-intrinsic: 1.2.6 + is-string: 1.1.1 array-timsort@1.0.3: {} @@ -16885,7 +17442,7 @@ snapshots: array.prototype.findlast@1.2.5: dependencies: - call-bind: 1.0.7 + call-bind: 1.0.8 define-properties: 1.2.1 es-abstract: 1.23.5 es-errors: 1.3.0 @@ -16894,45 +17451,44 @@ snapshots: array.prototype.findlastindex@1.2.5: dependencies: - call-bind: 1.0.7 + call-bind: 1.0.8 define-properties: 1.2.1 es-abstract: 1.23.5 es-errors: 1.3.0 es-object-atoms: 1.0.0 es-shim-unscopables: 1.0.2 - array.prototype.flat@1.3.2: + array.prototype.flat@1.3.3: dependencies: - call-bind: 1.0.7 + call-bind: 1.0.8 define-properties: 1.2.1 es-abstract: 1.23.5 es-shim-unscopables: 1.0.2 - array.prototype.flatmap@1.3.2: + array.prototype.flatmap@1.3.3: dependencies: - call-bind: 1.0.7 + call-bind: 1.0.8 define-properties: 1.2.1 es-abstract: 1.23.5 es-shim-unscopables: 1.0.2 array.prototype.tosorted@1.1.4: dependencies: - call-bind: 1.0.7 + call-bind: 1.0.8 define-properties: 1.2.1 es-abstract: 1.23.5 es-errors: 1.3.0 es-shim-unscopables: 1.0.2 - arraybuffer.prototype.slice@1.0.3: + arraybuffer.prototype.slice@1.0.4: dependencies: array-buffer-byte-length: 1.0.1 - call-bind: 1.0.7 + call-bind: 1.0.8 define-properties: 1.2.1 es-abstract: 1.23.5 es-errors: 1.3.0 - get-intrinsic: 1.2.4 + get-intrinsic: 1.2.6 is-array-buffer: 3.0.4 - is-shared-array-buffer: 1.0.3 arrify@3.0.0: {} @@ -16974,7 +17530,7 @@ snapshots: axe-core@4.10.2: {} - axios@1.7.7: + axios@1.7.9: dependencies: follow-redirects: 1.15.9(debug@4.3.7) form-data: 4.0.1 @@ -17012,13 +17568,13 @@ snapshots: babel-plugin-jest-hoist@29.6.3: dependencies: '@babel/template': 7.25.9 - '@babel/types': 7.26.0 + '@babel/types': 7.26.3 '@types/babel__core': 7.20.5 '@types/babel__traverse': 7.20.6 babel-plugin-polyfill-corejs2@0.4.12(@babel/core@7.26.0): dependencies: - '@babel/compat-data': 7.26.2 + '@babel/compat-data': 7.26.3 '@babel/core': 7.26.0 '@babel/helper-define-polyfill-provider': 0.6.3(@babel/core@7.26.0) semver: 6.3.1 @@ -17080,7 +17636,7 @@ snapshots: dependencies: bare-events: 2.5.0 bare-path: 2.1.3 - bare-stream: 2.3.2 + bare-stream: 2.6.1 optional: true bare-os@2.4.4: @@ -17091,9 +17647,9 @@ snapshots: bare-os: 2.4.4 optional: true - bare-stream@2.3.2: + bare-stream@2.6.1: dependencies: - streamx: 2.20.2 + streamx: 2.21.1 optional: true base64-js@1.5.1: {} @@ -17183,7 +17739,7 @@ snapshots: chalk: 5.3.0 cli-boxes: 3.0.0 string-width: 7.2.0 - type-fest: 4.27.0 + type-fest: 4.30.1 widest-line: 5.0.0 wrap-ansi: 9.0.0 @@ -17200,16 +17756,12 @@ snapshots: dependencies: fill-range: 7.1.1 - browserslist@4.24.2: + browserslist@4.24.3: dependencies: - caniuse-lite: 1.0.30001680 - electron-to-chromium: 1.5.62 - node-releases: 2.0.18 - update-browserslist-db: 1.1.1(browserslist@4.24.2) - - bs-logger@0.2.6: - dependencies: - fast-json-stable-stringify: 2.1.0 + caniuse-lite: 1.0.30001688 + electron-to-chromium: 1.5.73 + node-releases: 2.0.19 + update-browserslist-db: 1.1.1(browserslist@4.24.3) bser@2.1.1: dependencies: @@ -17247,17 +17799,10 @@ snapshots: dependencies: run-applescript: 7.0.0 - bundle-require@5.0.0(esbuild@0.24.0): - dependencies: - esbuild: 0.24.0 - load-tsconfig: 0.2.5 - byline@5.0.0: {} bytes@3.1.2: {} - cac@6.7.14: {} - cache-content-type@1.0.1: dependencies: mime-types: 2.1.35 @@ -17277,14 +17822,25 @@ snapshots: cachedir@2.4.0: {} - call-bind@1.0.7: + call-bind-apply-helpers@1.0.1: dependencies: - es-define-property: 1.0.0 es-errors: 1.3.0 function-bind: 1.1.2 - get-intrinsic: 1.2.4 + + call-bind@1.0.8: + dependencies: + call-bind-apply-helpers: 1.0.1 + es-define-property: 1.0.1 + get-intrinsic: 1.2.6 set-function-length: 1.2.2 + call-bound@1.0.3: + dependencies: + call-bind-apply-helpers: 1.0.1 + get-intrinsic: 1.2.6 + + call-me-maybe@1.0.2: {} + callsite@1.0.0: {} callsites@3.1.0: {} @@ -17302,10 +17858,14 @@ snapshots: camelcase@8.0.0: {} - caniuse-lite@1.0.30001680: {} + caniuse-lite@1.0.30001688: {} ccount@2.0.1: {} + chalk-template@1.1.0: + dependencies: + chalk: 5.3.0 + chalk@2.4.2: dependencies: ansi-styles: 3.2.1 @@ -17354,20 +17914,16 @@ snapshots: optionalDependencies: fsevents: 2.3.3 - chokidar@4.0.1: - dependencies: - readdirp: 4.0.2 - chownr@1.1.4: {} chownr@2.0.0: {} + chownr@3.0.0: {} + chrome-trace-event@1.0.4: {} ci-info@3.9.0: {} - ci-info@4.0.0: {} - ci-info@4.1.0: {} citty@0.1.6: @@ -17398,6 +17954,10 @@ snapshots: dependencies: restore-cursor: 2.0.0 + cli-cursor@4.0.0: + dependencies: + restore-cursor: 4.0.0 + cli-cursor@5.0.0: dependencies: restore-cursor: 5.1.0 @@ -17506,6 +18066,8 @@ snapshots: commander@10.0.1: {} + commander@12.1.0: {} + commander@2.20.3: {} commander@4.1.1: {} @@ -17631,10 +18193,12 @@ snapshots: core-js-compat@3.39.0: dependencies: - browserslist: 4.24.2 + browserslist: 4.24.3 core-js-pure@3.39.0: {} + core-js@3.39.0: {} + core-util-is@1.0.3: {} cors@2.8.5: @@ -17693,13 +18257,13 @@ snapshots: crc-32: 1.2.2 readable-stream: 4.5.2 - create-jest@29.7.0(@types/node@22.9.0)(ts-node@10.9.2(@swc/core@1.8.0)(@types/node@22.9.0)(typescript@5.5.4)): + create-jest@29.7.0(@types/node@22.10.2)(ts-node@10.9.2(@swc/core@1.10.1(@swc/helpers@0.5.15))(@types/node@22.10.2)(typescript@5.5.4)): dependencies: '@jest/types': 29.6.3 chalk: 4.1.2 exit: 0.1.2 graceful-fs: 4.2.11 - jest-config: 29.7.0(@types/node@22.9.0)(ts-node@10.9.2(@swc/core@1.8.0)(@types/node@22.9.0)(typescript@5.5.4)) + jest-config: 29.7.0(@types/node@22.10.2)(ts-node@10.9.2(@swc/core@1.10.1(@swc/helpers@0.5.15))(@types/node@22.10.2)(typescript@5.5.4)) jest-util: 29.7.0 prompts: 2.4.2 transitivePeerDependencies: @@ -17718,12 +18282,6 @@ snapshots: dependencies: cross-spawn: 7.0.6 - cross-spawn@5.1.0: - dependencies: - lru-cache: 4.1.5 - shebang-command: 1.2.0 - which: 1.3.1 - cross-spawn@7.0.6: dependencies: path-key: 3.1.1 @@ -17738,18 +18296,19 @@ snapshots: dependencies: type-fest: 1.4.0 - css-loader@6.11.0(webpack@5.96.1(@swc/core@1.8.0(@swc/helpers@0.5.13))): + css-loader@7.1.2(@rspack/core@1.1.6(@swc/helpers@0.5.15))(webpack@5.97.1(@swc/core@1.10.1(@swc/helpers@0.5.15))): dependencies: icss-utils: 5.1.0(postcss@8.4.49) postcss: 8.4.49 postcss-modules-extract-imports: 3.1.0(postcss@8.4.49) - postcss-modules-local-by-default: 4.1.0(postcss@8.4.49) + postcss-modules-local-by-default: 4.2.0(postcss@8.4.49) postcss-modules-scope: 3.2.1(postcss@8.4.49) postcss-modules-values: 4.0.0(postcss@8.4.49) postcss-value-parser: 4.2.0 semver: 7.6.3 optionalDependencies: - webpack: 5.96.1(@swc/core@1.8.0(@swc/helpers@0.5.13)) + '@rspack/core': 1.1.6(@swc/helpers@0.5.15) + webpack: 5.97.1(@swc/core@1.10.1(@swc/helpers@0.5.15)) css-select@4.3.0: dependencies: @@ -17813,21 +18372,21 @@ snapshots: data-view-buffer@1.0.1: dependencies: - call-bind: 1.0.7 + call-bind: 1.0.8 es-errors: 1.3.0 - is-data-view: 1.0.1 + is-data-view: 1.0.2 data-view-byte-length@1.0.1: dependencies: - call-bind: 1.0.7 + call-bind: 1.0.8 es-errors: 1.3.0 - is-data-view: 1.0.1 + is-data-view: 1.0.2 data-view-byte-offset@1.0.0: dependencies: - call-bind: 1.0.7 + call-bind: 1.0.8 es-errors: 1.3.0 - is-data-view: 1.0.1 + is-data-view: 1.0.2 dataloader@1.4.0: {} @@ -17845,13 +18404,19 @@ snapshots: dependencies: ms: 2.1.3 - debug@4.3.7(supports-color@5.5.0): + debug@4.3.7(supports-color@9.4.0): + dependencies: + ms: 2.1.3 + optionalDependencies: + supports-color: 9.4.0 + + debug@4.4.0(supports-color@5.5.0): dependencies: ms: 2.1.3 optionalDependencies: supports-color: 5.5.0 - debug@4.3.7(supports-color@9.4.0): + debug@4.4.0(supports-color@9.4.0): dependencies: ms: 2.1.3 optionalDependencies: @@ -17867,6 +18432,8 @@ snapshots: dependencies: character-entities: 2.0.2 + decode-uri-component@0.4.1: {} + decompress-response@6.0.0: dependencies: mimic-response: 3.1.0 @@ -17897,9 +18464,9 @@ snapshots: define-data-property@1.1.4: dependencies: - es-define-property: 1.0.0 + es-define-property: 1.0.1 es-errors: 1.3.0 - gopd: 1.0.1 + gopd: 1.2.0 define-lazy-prop@2.0.0: {} @@ -17931,12 +18498,16 @@ snapshots: detect-indent@6.1.0: {} + detect-indent@7.0.1: {} + detect-libc@1.0.3: {} detect-libc@2.0.3: {} detect-newline@3.1.0: {} + detect-newline@4.0.1: {} + detect-node@2.1.0: {} detective-amd@5.0.2: @@ -17973,15 +18544,6 @@ snapshots: detective-stylus@4.0.0: {} - detective-typescript@11.2.0: - dependencies: - '@typescript-eslint/typescript-estree': 5.62.0(typescript@5.5.4) - ast-module-types: 5.0.0 - node-source-walk: 6.0.2 - typescript: 5.5.4 - transitivePeerDependencies: - - supports-color - detective-typescript@11.2.0(supports-color@9.4.0): dependencies: '@typescript-eslint/typescript-estree': 5.62.0(supports-color@9.4.0)(typescript@5.5.4) @@ -18078,12 +18640,18 @@ snapshots: dot-prop@9.0.0: dependencies: - type-fest: 4.27.0 + type-fest: 4.30.1 dotenv@16.4.5: {} dotenv@8.6.0: {} + dunder-proto@1.0.0: + dependencies: + call-bind-apply-helpers: 1.0.1 + es-errors: 1.3.0 + gopd: 1.2.0 + eastasianwidth@0.2.0: {} easy-table@1.2.0: @@ -18098,11 +18666,9 @@ snapshots: ee-first@1.1.1: {} - ejs@3.1.10: - dependencies: - jake: 10.9.2 + effect@3.6.5: {} - electron-to-chromium@1.5.62: {} + electron-to-chromium@1.5.73: {} emittery@0.13.1: {} @@ -18159,75 +18725,73 @@ snapshots: es-abstract@1.23.5: dependencies: array-buffer-byte-length: 1.0.1 - arraybuffer.prototype.slice: 1.0.3 + arraybuffer.prototype.slice: 1.0.4 available-typed-arrays: 1.0.7 - call-bind: 1.0.7 + call-bind: 1.0.8 data-view-buffer: 1.0.1 data-view-byte-length: 1.0.1 data-view-byte-offset: 1.0.0 - es-define-property: 1.0.0 + es-define-property: 1.0.1 es-errors: 1.3.0 es-object-atoms: 1.0.0 es-set-tostringtag: 2.0.3 - es-to-primitive: 1.2.1 - function.prototype.name: 1.1.6 - get-intrinsic: 1.2.4 + es-to-primitive: 1.3.0 + function.prototype.name: 1.1.7 + get-intrinsic: 1.2.6 get-symbol-description: 1.0.2 globalthis: 1.0.4 - gopd: 1.0.1 + gopd: 1.2.0 has-property-descriptors: 1.0.2 - has-proto: 1.0.3 - has-symbols: 1.0.3 + has-proto: 1.2.0 + has-symbols: 1.1.0 hasown: 2.0.2 - internal-slot: 1.0.7 + internal-slot: 1.1.0 is-array-buffer: 3.0.4 is-callable: 1.2.7 - is-data-view: 1.0.1 + is-data-view: 1.0.2 is-negative-zero: 2.0.3 - is-regex: 1.1.4 + is-regex: 1.2.1 is-shared-array-buffer: 1.0.3 - is-string: 1.0.7 + is-string: 1.1.1 is-typed-array: 1.1.13 - is-weakref: 1.0.2 + is-weakref: 1.1.0 object-inspect: 1.13.3 object-keys: 1.1.1 object.assign: 4.1.5 regexp.prototype.flags: 1.5.3 - safe-array-concat: 1.1.2 - safe-regex-test: 1.0.3 - string.prototype.trim: 1.2.9 - string.prototype.trimend: 1.0.8 + safe-array-concat: 1.1.3 + safe-regex-test: 1.1.0 + string.prototype.trim: 1.2.10 + string.prototype.trimend: 1.0.9 string.prototype.trimstart: 1.0.8 typed-array-buffer: 1.0.2 typed-array-byte-length: 1.0.1 - typed-array-byte-offset: 1.0.2 - typed-array-length: 1.0.6 + typed-array-byte-offset: 1.0.3 + typed-array-length: 1.0.7 unbox-primitive: 1.0.2 - which-typed-array: 1.1.15 + which-typed-array: 1.1.16 - es-define-property@1.0.0: - dependencies: - get-intrinsic: 1.2.4 + es-define-property@1.0.1: {} es-errors@1.3.0: {} es-iterator-helpers@1.2.0: dependencies: - call-bind: 1.0.7 + call-bind: 1.0.8 define-properties: 1.2.1 es-abstract: 1.23.5 es-errors: 1.3.0 es-set-tostringtag: 2.0.3 function-bind: 1.1.2 - get-intrinsic: 1.2.4 + get-intrinsic: 1.2.6 globalthis: 1.0.4 - gopd: 1.0.1 + gopd: 1.2.0 has-property-descriptors: 1.0.2 - has-proto: 1.0.3 - has-symbols: 1.0.3 - internal-slot: 1.0.7 - iterator.prototype: 1.1.3 - safe-array-concat: 1.1.2 + has-proto: 1.2.0 + has-symbols: 1.1.0 + internal-slot: 1.1.0 + iterator.prototype: 1.1.4 + safe-array-concat: 1.1.3 es-module-lexer@1.5.4: {} @@ -18237,7 +18801,7 @@ snapshots: es-set-tostringtag@2.0.3: dependencies: - get-intrinsic: 1.2.4 + get-intrinsic: 1.2.6 has-tostringtag: 1.0.2 hasown: 2.0.2 @@ -18245,11 +18809,11 @@ snapshots: dependencies: hasown: 2.0.2 - es-to-primitive@1.2.1: + es-to-primitive@1.3.0: dependencies: is-callable: 1.2.7 - is-date-object: 1.0.5 - is-symbol: 1.0.4 + is-date-object: 1.1.0 + is-symbol: 1.1.1 es6-promisify@6.1.1: {} @@ -18332,33 +18896,6 @@ snapshots: '@esbuild/win32-ia32': 0.23.1 '@esbuild/win32-x64': 0.23.1 - esbuild@0.24.0: - optionalDependencies: - '@esbuild/aix-ppc64': 0.24.0 - '@esbuild/android-arm': 0.24.0 - '@esbuild/android-arm64': 0.24.0 - '@esbuild/android-x64': 0.24.0 - '@esbuild/darwin-arm64': 0.24.0 - '@esbuild/darwin-x64': 0.24.0 - '@esbuild/freebsd-arm64': 0.24.0 - '@esbuild/freebsd-x64': 0.24.0 - '@esbuild/linux-arm': 0.24.0 - '@esbuild/linux-arm64': 0.24.0 - '@esbuild/linux-ia32': 0.24.0 - '@esbuild/linux-loong64': 0.24.0 - '@esbuild/linux-mips64el': 0.24.0 - '@esbuild/linux-ppc64': 0.24.0 - '@esbuild/linux-riscv64': 0.24.0 - '@esbuild/linux-s390x': 0.24.0 - '@esbuild/linux-x64': 0.24.0 - '@esbuild/netbsd-x64': 0.24.0 - '@esbuild/openbsd-arm64': 0.24.0 - '@esbuild/openbsd-x64': 0.24.0 - '@esbuild/sunos-x64': 0.24.0 - '@esbuild/win32-arm64': 0.24.0 - '@esbuild/win32-ia32': 0.24.0 - '@esbuild/win32-x64': 0.24.0 - escalade@3.2.0: {} escape-goat@4.0.0: {} @@ -18381,7 +18918,7 @@ snapshots: optionalDependencies: source-map: 0.6.1 - eslint-compat-utils@0.5.1(eslint@8.57.0): + eslint-compat-utils@0.6.4(eslint@8.57.0): dependencies: eslint: 8.57.0 semver: 7.6.3 @@ -18389,8 +18926,8 @@ snapshots: eslint-import-resolver-node@0.3.9: dependencies: debug: 3.2.7 - is-core-module: 2.15.1 - resolve: 1.22.8 + is-core-module: 2.16.0 + resolve: 1.22.9 transitivePeerDependencies: - supports-color @@ -18415,52 +18952,52 @@ snapshots: - bluebird - supports-color - eslint-module-utils@2.12.0(@typescript-eslint/parser@8.13.0(eslint@8.57.0)(typescript@5.5.4))(eslint-import-resolver-node@0.3.9)(eslint@8.57.0): + eslint-module-utils@2.12.0(@typescript-eslint/parser@8.18.0(eslint@8.57.0)(typescript@5.5.4))(eslint-import-resolver-node@0.3.9)(eslint@8.57.0): dependencies: debug: 3.2.7 optionalDependencies: - '@typescript-eslint/parser': 8.13.0(eslint@8.57.0)(typescript@5.5.4) + '@typescript-eslint/parser': 8.18.0(eslint@8.57.0)(typescript@5.5.4) eslint: 8.57.0 eslint-import-resolver-node: 0.3.9 transitivePeerDependencies: - supports-color - eslint-plugin-import@2.31.0(@typescript-eslint/parser@8.13.0(eslint@8.57.0)(typescript@5.5.4))(eslint@8.57.0): + eslint-plugin-import@2.31.0(@typescript-eslint/parser@8.18.0(eslint@8.57.0)(typescript@5.5.4))(eslint@8.57.0): dependencies: '@rtsao/scc': 1.1.0 array-includes: 3.1.8 array.prototype.findlastindex: 1.2.5 - array.prototype.flat: 1.3.2 - array.prototype.flatmap: 1.3.2 + array.prototype.flat: 1.3.3 + array.prototype.flatmap: 1.3.3 debug: 3.2.7 doctrine: 2.1.0 eslint: 8.57.0 eslint-import-resolver-node: 0.3.9 - eslint-module-utils: 2.12.0(@typescript-eslint/parser@8.13.0(eslint@8.57.0)(typescript@5.5.4))(eslint-import-resolver-node@0.3.9)(eslint@8.57.0) + eslint-module-utils: 2.12.0(@typescript-eslint/parser@8.18.0(eslint@8.57.0)(typescript@5.5.4))(eslint-import-resolver-node@0.3.9)(eslint@8.57.0) hasown: 2.0.2 - is-core-module: 2.15.1 + is-core-module: 2.16.0 is-glob: 4.0.3 minimatch: 3.1.2 object.fromentries: 2.0.8 object.groupby: 1.0.3 object.values: 1.2.0 semver: 6.3.1 - string.prototype.trimend: 1.0.8 + string.prototype.trimend: 1.0.9 tsconfig-paths: 3.15.0 optionalDependencies: - '@typescript-eslint/parser': 8.13.0(eslint@8.57.0)(typescript@5.5.4) + '@typescript-eslint/parser': 8.18.0(eslint@8.57.0)(typescript@5.5.4) transitivePeerDependencies: - eslint-import-resolver-typescript - eslint-import-resolver-webpack - supports-color - eslint-plugin-jest@28.9.0(@typescript-eslint/eslint-plugin@7.18.0(@typescript-eslint/parser@8.13.0(eslint@8.57.0)(typescript@5.5.4))(eslint@8.57.0)(typescript@5.5.4))(eslint@8.57.0)(jest@29.7.0(@types/node@22.9.0)(ts-node@10.9.2(@swc/core@1.8.0)(@types/node@22.9.0)(typescript@5.5.4)))(typescript@5.5.4): + eslint-plugin-jest@28.9.0(@typescript-eslint/eslint-plugin@8.18.0(@typescript-eslint/parser@8.18.0(eslint@8.57.0)(typescript@5.5.4))(eslint@8.57.0)(typescript@5.5.4))(eslint@8.57.0)(jest@29.7.0(@types/node@22.10.2)(ts-node@10.9.2(@swc/core@1.10.1(@swc/helpers@0.5.15))(@types/node@22.10.2)(typescript@5.5.4)))(typescript@5.5.4): dependencies: - '@typescript-eslint/utils': 8.15.0(eslint@8.57.0)(typescript@5.5.4) + '@typescript-eslint/utils': 8.18.0(eslint@8.57.0)(typescript@5.5.4) eslint: 8.57.0 optionalDependencies: - '@typescript-eslint/eslint-plugin': 7.18.0(@typescript-eslint/parser@8.13.0(eslint@8.57.0)(typescript@5.5.4))(eslint@8.57.0)(typescript@5.5.4) - jest: 29.7.0(@types/node@22.9.0)(ts-node@10.9.2(@swc/core@1.8.0)(@types/node@22.9.0)(typescript@5.5.4)) + '@typescript-eslint/eslint-plugin': 8.18.0(@typescript-eslint/parser@8.18.0(eslint@8.57.0)(typescript@5.5.4))(eslint@8.57.0)(typescript@5.5.4) + jest: 29.7.0(@types/node@22.10.2)(ts-node@10.9.2(@swc/core@1.10.1(@swc/helpers@0.5.15))(@types/node@22.10.2)(typescript@5.5.4)) transitivePeerDependencies: - supports-color - typescript @@ -18469,7 +19006,7 @@ snapshots: dependencies: aria-query: 5.3.2 array-includes: 3.1.8 - array.prototype.flatmap: 1.3.2 + array.prototype.flatmap: 1.3.3 ast-types-flow: 0.0.8 axe-core: 4.10.2 axobject-query: 4.1.0 @@ -18481,7 +19018,7 @@ snapshots: language-tags: 1.0.9 minimatch: 3.1.2 object.fromentries: 2.0.8 - safe-regex-test: 1.0.3 + safe-regex-test: 1.1.0 string.prototype.includes: 2.0.1 eslint-plugin-markdown@3.0.1(eslint@8.57.0): @@ -18506,16 +19043,20 @@ snapshots: - bluebird - supports-color - eslint-plugin-package-json@0.12.2(eslint@8.57.0)(jsonc-eslint-parser@2.4.0): + eslint-plugin-package-json@0.18.0(eslint@8.57.0)(jsonc-eslint-parser@2.4.0): dependencies: + '@altano/repository-tools': 0.1.1 + detect-indent: 6.1.0 + detect-newline: 3.1.0 eslint: 8.57.0 jsonc-eslint-parser: 2.4.0 - package-json-validator: 0.6.8 + package-json-validator: 0.7.0 semver: 7.6.3 - sort-package-json: 1.57.0 - validate-npm-package-name: 5.0.1 + sort-object-keys: 1.1.3 + sort-package-json: 2.12.0 + validate-npm-package-name: 6.0.0 - eslint-plugin-react-hooks@4.6.2(eslint@8.57.0): + eslint-plugin-react-hooks@5.1.0(eslint@8.57.0): dependencies: eslint: 8.57.0 @@ -18523,7 +19064,7 @@ snapshots: dependencies: array-includes: 3.1.8 array.prototype.findlast: 1.2.5 - array.prototype.flatmap: 1.3.2 + array.prototype.flatmap: 1.3.3 array.prototype.tosorted: 1.1.4 doctrine: 2.1.0 es-iterator-helpers: 1.2.0 @@ -18541,30 +19082,30 @@ snapshots: string.prototype.matchall: 4.0.11 string.prototype.repeat: 1.0.0 - eslint-plugin-storybook@0.8.0(eslint@8.57.0)(typescript@5.5.4): + eslint-plugin-storybook@0.11.1(eslint@8.57.0)(typescript@5.5.4): dependencies: - '@storybook/csf': 0.0.1 - '@typescript-eslint/utils': 5.62.0(eslint@8.57.0)(typescript@5.5.4) + '@storybook/csf': 0.1.12 + '@typescript-eslint/utils': 8.18.0(eslint@8.57.0)(typescript@5.5.4) eslint: 8.57.0 - requireindex: 1.2.0 ts-dedent: 2.2.0 transitivePeerDependencies: - supports-color - typescript - eslint-plugin-testing-library@6.4.0(eslint@8.57.0)(typescript@5.5.4): + eslint-plugin-testing-library@7.1.1(eslint@8.57.0)(typescript@5.5.4): dependencies: - '@typescript-eslint/utils': 5.62.0(eslint@8.57.0)(typescript@5.5.4) + '@typescript-eslint/scope-manager': 8.18.0 + '@typescript-eslint/utils': 8.18.0(eslint@8.57.0)(typescript@5.5.4) eslint: 8.57.0 transitivePeerDependencies: - supports-color - typescript - eslint-plugin-yml@1.15.0(eslint@8.57.0): + eslint-plugin-yml@1.16.0(eslint@8.57.0): dependencies: - debug: 4.3.7(supports-color@5.5.0) + debug: 4.4.0(supports-color@9.4.0) eslint: 8.57.0 - eslint-compat-utils: 0.5.1(eslint@8.57.0) + eslint-compat-utils: 0.6.4(eslint@8.57.0) lodash: 4.17.21 natural-compare: 1.4.0 yaml-eslint-parser: 1.2.3 @@ -18594,11 +19135,11 @@ snapshots: '@humanwhocodes/config-array': 0.11.14 '@humanwhocodes/module-importer': 1.0.1 '@nodelib/fs.walk': 1.2.8 - '@ungap/structured-clone': 1.2.0 + '@ungap/structured-clone': 1.2.1 ajv: 6.12.6 chalk: 4.1.2 cross-spawn: 7.0.6 - debug: 4.3.7(supports-color@5.5.0) + debug: 4.4.0(supports-color@9.4.0) doctrine: 3.0.0 escape-string-regexp: 4.0.0 eslint-scope: 7.2.2 @@ -18628,6 +19169,12 @@ snapshots: transitivePeerDependencies: - supports-color + espree@10.3.0: + dependencies: + acorn: 8.14.0 + acorn-jsx: 5.3.2(acorn@8.14.0) + eslint-visitor-keys: 4.2.0 + espree@9.6.1: dependencies: acorn: 8.14.0 @@ -18761,6 +19308,42 @@ snapshots: transitivePeerDependencies: - supports-color + express@4.21.2: + dependencies: + accepts: 1.3.8 + array-flatten: 1.1.1 + body-parser: 1.20.3 + content-disposition: 0.5.4 + content-type: 1.0.5 + cookie: 0.7.1 + cookie-signature: 1.0.6 + debug: 2.6.9 + depd: 2.0.0 + encodeurl: 2.0.0 + escape-html: 1.0.3 + etag: 1.8.1 + finalhandler: 1.3.1 + fresh: 0.5.2 + http-errors: 2.0.0 + merge-descriptors: 1.0.3 + methods: 1.1.2 + on-finished: 2.4.1 + parseurl: 1.3.3 + path-to-regexp: 0.1.12 + proxy-addr: 2.0.7 + qs: 6.13.0 + range-parser: 1.2.1 + safe-buffer: 5.2.1 + send: 0.19.0 + serve-static: 1.16.2 + setprototypeof: 1.2.0 + statuses: 2.0.1 + type-is: 1.6.18 + utils-merge: 1.0.1 + vary: 1.1.2 + transitivePeerDependencies: + - supports-color + ext-list@2.2.2: dependencies: mime-db: 1.53.0 @@ -18782,7 +19365,7 @@ snapshots: extract-zip@2.0.1: dependencies: - debug: 4.3.7(supports-color@5.5.0) + debug: 4.3.7(supports-color@9.4.0) get-stream: 5.2.0 yauzl: 2.10.0 optionalDependencies: @@ -18790,6 +19373,10 @@ snapshots: transitivePeerDependencies: - supports-color + fast-check@3.21.0: + dependencies: + pure-rand: 6.1.0 + fast-content-type-parse@1.1.0: {} fast-decode-uri-component@1.0.1: {} @@ -18924,10 +19511,6 @@ snapshots: file-uri-to-path@1.0.0: {} - filelist@1.0.4: - dependencies: - minimatch: 5.1.6 - filename-reserved-regex@3.0.0: {} filenamify@5.1.1: @@ -19016,7 +19599,7 @@ snapshots: follow-redirects@1.15.9(debug@4.3.7): optionalDependencies: - debug: 4.3.7(supports-color@5.5.0) + debug: 4.3.7(supports-color@9.4.0) for-each@0.3.3: dependencies: @@ -19086,12 +19669,13 @@ snapshots: function-bind@1.1.2: {} - function.prototype.name@1.1.6: + function.prototype.name@1.1.7: dependencies: - call-bind: 1.0.7 + call-bind: 1.0.8 define-properties: 1.2.1 - es-abstract: 1.23.5 functions-have-names: 1.2.3 + hasown: 2.0.2 + is-callable: 1.2.7 functions-have-names@1.2.3: {} @@ -19112,7 +19696,7 @@ snapshots: gaxios@6.7.1: dependencies: extend: 3.0.2 - https-proxy-agent: 7.0.5 + https-proxy-agent: 7.0.6 is-stream: 2.0.1 node-fetch: 2.7.0 uuid: 9.0.1 @@ -19139,13 +19723,18 @@ snapshots: get-east-asian-width@1.3.0: {} - get-intrinsic@1.2.4: + get-intrinsic@1.2.6: dependencies: + call-bind-apply-helpers: 1.0.1 + dunder-proto: 1.0.0 + es-define-property: 1.0.1 es-errors: 1.3.0 + es-object-atoms: 1.0.0 function-bind: 1.1.2 - has-proto: 1.0.3 - has-symbols: 1.0.3 + gopd: 1.2.0 + has-symbols: 1.1.0 hasown: 2.0.2 + math-intrinsics: 1.0.0 get-package-name@2.2.0: {} @@ -19157,6 +19746,8 @@ snapshots: get-port@6.1.2: {} + get-stdin@9.0.0: {} + get-stream@5.2.0: dependencies: pump: 3.0.2 @@ -19167,9 +19758,9 @@ snapshots: get-symbol-description@1.0.2: dependencies: - call-bind: 1.0.7 + call-bind: 1.0.8 es-errors: 1.3.0 - get-intrinsic: 1.2.4 + get-intrinsic: 1.2.6 get-tsconfig@4.8.1: dependencies: @@ -19181,7 +19772,7 @@ snapshots: node-fetch: 3.3.2 semver: 7.6.3 - git-hooks-list@1.0.3: {} + git-hooks-list@3.1.0: {} git-repo-info@2.1.1: {} @@ -19259,43 +19850,39 @@ snapshots: globalthis@1.0.4: dependencies: define-properties: 1.2.1 - gopd: 1.0.1 + gopd: 1.2.0 - globby@10.0.0: + globby@11.1.0: dependencies: - '@types/glob': 7.2.0 array-union: 2.1.0 dir-glob: 3.0.1 fast-glob: 3.3.2 - glob: 7.2.3 ignore: 5.3.2 merge2: 1.4.1 slash: 3.0.0 - globby@11.1.0: + globby@13.2.2: dependencies: - array-union: 2.1.0 dir-glob: 3.0.1 fast-glob: 3.3.2 ignore: 5.3.2 merge2: 1.4.1 - slash: 3.0.0 + slash: 4.0.0 - globby@13.2.2: + globby@14.0.2: dependencies: - dir-glob: 3.0.1 + '@sindresorhus/merge-streams': 2.3.0 fast-glob: 3.3.2 ignore: 5.3.2 - merge2: 1.4.1 - slash: 4.0.0 + path-type: 5.0.0 + slash: 5.1.0 + unicorn-magic: 0.1.0 gonzales-pe@4.3.0: dependencies: minimist: 1.2.8 - gopd@1.0.1: - dependencies: - get-intrinsic: 1.2.4 + gopd@1.2.0: {} got@12.6.1: dependencies: @@ -19317,7 +19904,7 @@ snapshots: graphemer@1.4.0: {} - graphql@16.9.0: {} + graphql@16.10.0: {} h3@1.13.0: dependencies: @@ -19344,15 +19931,17 @@ snapshots: has-property-descriptors@1.0.2: dependencies: - es-define-property: 1.0.0 + es-define-property: 1.0.1 - has-proto@1.0.3: {} + has-proto@1.2.0: + dependencies: + dunder-proto: 1.0.0 - has-symbols@1.0.3: {} + has-symbols@1.1.0: {} has-tostringtag@1.0.2: dependencies: - has-symbols: 1.0.3 + has-symbols: 1.1.0 has-unicode@2.0.1: {} @@ -19385,7 +19974,7 @@ snapshots: dependencies: lru-cache: 10.4.3 - hot-shots@10.1.1: + hot-shots@10.2.1: optionalDependencies: unix-dgram: 2.0.6 @@ -19412,13 +20001,13 @@ snapshots: he: 1.2.0 param-case: 3.0.4 relateurl: 0.2.7 - terser: 5.36.0 + terser: 5.37.0 html-parse-stringify@3.0.1: dependencies: void-elements: 3.1.0 - html-webpack-plugin@5.6.3(webpack@5.96.1(@swc/core@1.8.0(@swc/helpers@0.5.13))): + html-webpack-plugin@5.6.3(@rspack/core@1.1.6(@swc/helpers@0.5.15))(webpack@5.97.1(@swc/core@1.10.1(@swc/helpers@0.5.15))): dependencies: '@types/html-minifier-terser': 6.1.0 html-minifier-terser: 6.1.0 @@ -19426,7 +20015,8 @@ snapshots: pretty-error: 4.0.0 tapable: 2.2.1 optionalDependencies: - webpack: 5.96.1(@swc/core@1.8.0(@swc/helpers@0.5.13)) + '@rspack/core': 1.1.6(@swc/helpers@0.5.15) + webpack: 5.97.1(@swc/core@1.10.1(@swc/helpers@0.5.15)) htmlparser2@6.1.0: dependencies: @@ -19472,8 +20062,8 @@ snapshots: http-proxy-agent@5.0.0: dependencies: '@tootallnate/once': 2.0.0 - agent-base: 6.0.2 - debug: 4.3.7(supports-color@5.5.0) + agent-base: 6.0.2(supports-color@9.4.0) + debug: 4.4.0(supports-color@9.4.0) transitivePeerDependencies: - supports-color @@ -19523,24 +20113,24 @@ snapshots: quick-lru: 5.1.1 resolve-alpn: 1.2.1 - https-proxy-agent@5.0.1: + https-proxy-agent@5.0.1(supports-color@9.4.0): dependencies: - agent-base: 6.0.2 - debug: 4.3.7(supports-color@5.5.0) + agent-base: 6.0.2(supports-color@9.4.0) + debug: 4.4.0(supports-color@9.4.0) transitivePeerDependencies: - supports-color - https-proxy-agent@5.0.1(supports-color@9.4.0): + https-proxy-agent@7.0.5(supports-color@9.4.0): dependencies: - agent-base: 6.0.2(supports-color@9.4.0) + agent-base: 7.1.3 debug: 4.3.7(supports-color@9.4.0) transitivePeerDependencies: - supports-color - https-proxy-agent@7.0.5: + https-proxy-agent@7.0.6: dependencies: - agent-base: 7.1.1 - debug: 4.3.7(supports-color@5.5.0) + agent-base: 7.1.3 + debug: 4.4.0(supports-color@9.4.0) transitivePeerDependencies: - supports-color @@ -19554,13 +20144,15 @@ snapshots: hyperdyperid@1.2.0: {} - i18next-browser-languagedetector@8.0.0: + i18next-browser-languagedetector@8.0.2: dependencies: '@babel/runtime': 7.26.0 - i18next@23.16.4: + i18next@24.1.0(typescript@5.5.4): dependencies: '@babel/runtime': 7.26.0 + optionalDependencies: + typescript: 5.5.4 iconv-lite@0.4.24: dependencies: @@ -19589,7 +20181,7 @@ snapshots: parent-module: 1.0.1 resolve-from: 4.0.0 - import-in-the-middle@1.11.2: + import-in-the-middle@1.11.3: dependencies: acorn: 8.14.0 acorn-import-attributes: 1.9.5(acorn@8.14.0) @@ -19672,19 +20264,19 @@ snapshots: pony-cause: 2.1.11 version-guard: 1.1.3 - internal-slot@1.0.7: + internal-slot@1.1.0: dependencies: es-errors: 1.3.0 hasown: 2.0.2 - side-channel: 1.0.6 + side-channel: 1.1.0 interpret@3.1.1: {} - intl-messageformat@10.7.7: + intl-messageformat@10.7.10: dependencies: - '@formatjs/ecma402-abstract': 2.2.4 - '@formatjs/fast-memoize': 2.2.3 - '@formatjs/icu-messageformat-parser': 2.9.4 + '@formatjs/ecma402-abstract': 2.3.1 + '@formatjs/fast-memoize': 2.2.5 + '@formatjs/icu-messageformat-parser': 2.9.7 tslib: 2.8.1 ipaddr.js@1.9.1: {} @@ -19742,8 +20334,8 @@ snapshots: is-array-buffer@3.0.4: dependencies: - call-bind: 1.0.7 - get-intrinsic: 1.2.4 + call-bind: 1.0.8 + get-intrinsic: 1.2.6 is-arrayish@0.2.1: {} @@ -19753,7 +20345,7 @@ snapshots: dependencies: has-tostringtag: 1.0.2 - is-bigint@1.0.4: + is-bigint@1.1.0: dependencies: has-bigints: 1.0.2 @@ -19761,9 +20353,9 @@ snapshots: dependencies: binary-extensions: 2.3.0 - is-boolean-object@1.1.2: + is-boolean-object@1.2.1: dependencies: - call-bind: 1.0.7 + call-bound: 1.0.3 has-tostringtag: 1.0.2 is-builtin-module@3.2.1: @@ -19772,16 +20364,19 @@ snapshots: is-callable@1.2.7: {} - is-core-module@2.15.1: + is-core-module@2.16.0: dependencies: hasown: 2.0.2 - is-data-view@1.0.1: + is-data-view@1.0.2: dependencies: + call-bound: 1.0.3 + get-intrinsic: 1.2.6 is-typed-array: 1.1.13 - is-date-object@1.0.5: + is-date-object@1.1.0: dependencies: + call-bound: 1.0.3 has-tostringtag: 1.0.2 is-decimal@1.0.4: {} @@ -19796,9 +20391,9 @@ snapshots: is-extglob@2.1.1: {} - is-finalizationregistry@1.0.2: + is-finalizationregistry@1.1.0: dependencies: - call-bind: 1.0.7 + call-bind: 1.0.8 is-fullwidth-code-point@2.0.0: {} @@ -19847,8 +20442,9 @@ snapshots: is-npm@6.0.0: {} - is-number-object@1.0.7: + is-number-object@1.1.1: dependencies: + call-bound: 1.0.3 has-tostringtag: 1.0.2 is-number@7.0.0: {} @@ -19873,16 +20469,18 @@ snapshots: is-potential-custom-element-name@1.0.1: {} - is-regex@1.1.4: + is-regex@1.2.1: dependencies: - call-bind: 1.0.7 + call-bound: 1.0.3 + gopd: 1.2.0 has-tostringtag: 1.0.2 + hasown: 2.0.2 is-set@2.0.3: {} is-shared-array-buffer@1.0.3: dependencies: - call-bind: 1.0.7 + call-bind: 1.0.8 is-stream@2.0.1: {} @@ -19890,21 +20488,24 @@ snapshots: is-stream@4.0.1: {} - is-string@1.0.7: + is-string@1.1.1: dependencies: + call-bound: 1.0.3 has-tostringtag: 1.0.2 is-subdir@1.2.0: dependencies: better-path-resolve: 1.0.0 - is-symbol@1.0.4: + is-symbol@1.1.1: dependencies: - has-symbols: 1.0.3 + call-bound: 1.0.3 + has-symbols: 1.1.0 + safe-regex-test: 1.1.0 is-typed-array@1.1.13: dependencies: - which-typed-array: 1.1.15 + which-typed-array: 1.1.16 is-typedarray@1.0.0: {} @@ -19918,14 +20519,14 @@ snapshots: is-weakmap@2.0.2: {} - is-weakref@1.0.2: + is-weakref@1.1.0: dependencies: - call-bind: 1.0.7 + call-bound: 1.0.3 is-weakset@2.0.3: dependencies: - call-bind: 1.0.7 - get-intrinsic: 1.2.4 + call-bind: 1.0.8 + get-intrinsic: 1.2.6 is-windows@1.0.2: {} @@ -19947,6 +20548,8 @@ snapshots: isarray@2.0.5: {} + isbinaryfile@5.0.4: {} + iserror@0.0.2: {} isexe@2.0.0: {} @@ -19955,7 +20558,7 @@ snapshots: isobject@3.0.1: {} - isomorphic-rslog@0.0.5: {} + isomorphic-rslog@0.0.6: {} isomorphic-ws@5.0.0(ws@8.18.0): dependencies: @@ -19966,7 +20569,7 @@ snapshots: istanbul-lib-instrument@5.2.1: dependencies: '@babel/core': 7.26.0 - '@babel/parser': 7.26.2 + '@babel/parser': 7.26.3 '@istanbuljs/schema': 0.1.3 istanbul-lib-coverage: 3.2.2 semver: 6.3.1 @@ -19976,7 +20579,7 @@ snapshots: istanbul-lib-instrument@6.0.3: dependencies: '@babel/core': 7.26.0 - '@babel/parser': 7.26.2 + '@babel/parser': 7.26.3 '@istanbuljs/schema': 0.1.3 istanbul-lib-coverage: 3.2.2 semver: 7.6.3 @@ -19991,7 +20594,7 @@ snapshots: istanbul-lib-source-maps@4.0.1: dependencies: - debug: 4.3.7(supports-color@5.5.0) + debug: 4.4.0(supports-color@9.4.0) istanbul-lib-coverage: 3.2.2 source-map: 0.6.1 transitivePeerDependencies: @@ -20002,12 +20605,13 @@ snapshots: html-escaper: 2.0.2 istanbul-lib-report: 3.0.1 - iterator.prototype@1.1.3: + iterator.prototype@1.1.4: dependencies: - define-properties: 1.2.1 - get-intrinsic: 1.2.4 - has-symbols: 1.0.3 - reflect.getprototypeof: 1.0.6 + define-data-property: 1.1.4 + es-object-atoms: 1.0.0 + get-intrinsic: 1.2.6 + has-symbols: 1.1.0 + reflect.getprototypeof: 1.0.8 set-function-name: 2.0.2 jackspeak@3.4.3: @@ -20016,13 +20620,6 @@ snapshots: optionalDependencies: '@pkgjs/parseargs': 0.11.0 - jake@10.9.2: - dependencies: - async: 3.2.6 - chalk: 4.1.2 - filelist: 1.0.4 - minimatch: 3.1.2 - jest-changed-files@29.7.0: dependencies: execa: 5.1.1 @@ -20035,7 +20632,7 @@ snapshots: '@jest/expect': 29.7.0 '@jest/test-result': 29.7.0 '@jest/types': 29.6.3 - '@types/node': 22.9.0 + '@types/node': 22.10.2 chalk: 4.1.2 co: 4.6.0 dedent: 1.5.3 @@ -20055,16 +20652,16 @@ snapshots: - babel-plugin-macros - supports-color - jest-cli@29.7.0(@types/node@22.9.0)(ts-node@10.9.2(@swc/core@1.8.0)(@types/node@22.9.0)(typescript@5.5.4)): + jest-cli@29.7.0(@types/node@22.10.2)(ts-node@10.9.2(@swc/core@1.10.1(@swc/helpers@0.5.15))(@types/node@22.10.2)(typescript@5.5.4)): dependencies: - '@jest/core': 29.7.0(ts-node@10.9.2(@swc/core@1.8.0)(@types/node@22.9.0)(typescript@5.5.4)) + '@jest/core': 29.7.0(ts-node@10.9.2(@swc/core@1.10.1(@swc/helpers@0.5.15))(@types/node@22.10.2)(typescript@5.5.4)) '@jest/test-result': 29.7.0 '@jest/types': 29.6.3 chalk: 4.1.2 - create-jest: 29.7.0(@types/node@22.9.0)(ts-node@10.9.2(@swc/core@1.8.0)(@types/node@22.9.0)(typescript@5.5.4)) + create-jest: 29.7.0(@types/node@22.10.2)(ts-node@10.9.2(@swc/core@1.10.1(@swc/helpers@0.5.15))(@types/node@22.10.2)(typescript@5.5.4)) exit: 0.1.2 import-local: 3.2.0 - jest-config: 29.7.0(@types/node@22.9.0)(ts-node@10.9.2(@swc/core@1.8.0)(@types/node@22.9.0)(typescript@5.5.4)) + jest-config: 29.7.0(@types/node@22.10.2)(ts-node@10.9.2(@swc/core@1.10.1(@swc/helpers@0.5.15))(@types/node@22.10.2)(typescript@5.5.4)) jest-util: 29.7.0 jest-validate: 29.7.0 yargs: 17.7.2 @@ -20074,7 +20671,7 @@ snapshots: - supports-color - ts-node - jest-config@29.7.0(@types/node@22.9.0)(ts-node@10.9.2(@swc/core@1.8.0)(@types/node@22.9.0)(typescript@5.5.4)): + jest-config@29.7.0(@types/node@22.10.2)(ts-node@10.9.2(@swc/core@1.10.1(@swc/helpers@0.5.15))(@types/node@22.10.2)(typescript@5.5.4)): dependencies: '@babel/core': 7.26.0 '@jest/test-sequencer': 29.7.0 @@ -20099,8 +20696,8 @@ snapshots: slash: 3.0.0 strip-json-comments: 3.1.1 optionalDependencies: - '@types/node': 22.9.0 - ts-node: 10.9.2(@swc/core@1.8.0(@swc/helpers@0.5.13))(@types/node@22.9.0)(typescript@5.5.4) + '@types/node': 22.10.2 + ts-node: 10.9.2(@swc/core@1.10.1)(@types/node@22.10.2)(typescript@5.5.4) transitivePeerDependencies: - babel-plugin-macros - supports-color @@ -20130,7 +20727,7 @@ snapshots: '@jest/fake-timers': 29.7.0 '@jest/types': 29.6.3 '@types/jsdom': 20.0.1 - '@types/node': 22.9.0 + '@types/node': 22.10.2 jest-mock: 29.7.0 jest-util: 29.7.0 jsdom: 20.0.3 @@ -20144,7 +20741,7 @@ snapshots: '@jest/environment': 29.7.0 '@jest/fake-timers': 29.7.0 '@jest/types': 29.6.3 - '@types/node': 22.9.0 + '@types/node': 22.10.2 jest-mock: 29.7.0 jest-util: 29.7.0 @@ -20156,7 +20753,7 @@ snapshots: dependencies: '@jest/types': 29.6.3 '@types/graceful-fs': 4.1.9 - '@types/node': 22.9.0 + '@types/node': 22.10.2 anymatch: 3.1.3 fb-watchman: 2.0.2 graceful-fs: 4.2.11 @@ -20195,7 +20792,7 @@ snapshots: jest-mock@29.7.0: dependencies: '@jest/types': 29.6.3 - '@types/node': 22.9.0 + '@types/node': 22.10.2 jest-util: 29.7.0 jest-pnp-resolver@1.2.3(jest-resolve@29.7.0): @@ -20219,8 +20816,8 @@ snapshots: jest-pnp-resolver: 1.2.3(jest-resolve@29.7.0) jest-util: 29.7.0 jest-validate: 29.7.0 - resolve: 1.22.8 - resolve.exports: 2.0.2 + resolve: 1.22.9 + resolve.exports: 2.0.3 slash: 3.0.0 jest-runner@29.7.0: @@ -20230,7 +20827,7 @@ snapshots: '@jest/test-result': 29.7.0 '@jest/transform': 29.7.0 '@jest/types': 29.6.3 - '@types/node': 22.9.0 + '@types/node': 22.10.2 chalk: 4.1.2 emittery: 0.13.1 graceful-fs: 4.2.11 @@ -20258,7 +20855,7 @@ snapshots: '@jest/test-result': 29.7.0 '@jest/transform': 29.7.0 '@jest/types': 29.6.3 - '@types/node': 22.9.0 + '@types/node': 22.10.2 chalk: 4.1.2 cjs-module-lexer: 1.4.1 collect-v8-coverage: 1.0.2 @@ -20279,10 +20876,10 @@ snapshots: jest-snapshot@29.7.0: dependencies: '@babel/core': 7.26.0 - '@babel/generator': 7.26.2 + '@babel/generator': 7.26.3 '@babel/plugin-syntax-jsx': 7.25.9(@babel/core@7.26.0) '@babel/plugin-syntax-typescript': 7.25.9(@babel/core@7.26.0) - '@babel/types': 7.26.0 + '@babel/types': 7.26.3 '@jest/expect-utils': 29.7.0 '@jest/transform': 29.7.0 '@jest/types': 29.6.3 @@ -20304,7 +20901,7 @@ snapshots: jest-util@29.7.0: dependencies: '@jest/types': 29.6.3 - '@types/node': 22.9.0 + '@types/node': 22.10.2 chalk: 4.1.2 ci-info: 3.9.0 graceful-fs: 4.2.11 @@ -20332,7 +20929,7 @@ snapshots: dependencies: '@jest/test-result': 29.7.0 '@jest/types': 29.6.3 - '@types/node': 22.9.0 + '@types/node': 22.10.2 ansi-escapes: 4.3.2 chalk: 4.1.2 emittery: 0.13.1 @@ -20341,23 +20938,23 @@ snapshots: jest-worker@27.5.1: dependencies: - '@types/node': 22.9.0 + '@types/node': 22.10.2 merge-stream: 2.0.0 supports-color: 8.1.1 jest-worker@29.7.0: dependencies: - '@types/node': 22.9.0 + '@types/node': 22.10.2 jest-util: 29.7.0 merge-stream: 2.0.0 supports-color: 8.1.1 - jest@29.7.0(@types/node@22.9.0)(ts-node@10.9.2(@swc/core@1.8.0)(@types/node@22.9.0)(typescript@5.5.4)): + jest@29.7.0(@types/node@22.10.2)(ts-node@10.9.2(@swc/core@1.10.1(@swc/helpers@0.5.15))(@types/node@22.10.2)(typescript@5.5.4)): dependencies: - '@jest/core': 29.7.0(ts-node@10.9.2(@swc/core@1.8.0)(@types/node@22.9.0)(typescript@5.5.4)) + '@jest/core': 29.7.0(ts-node@10.9.2(@swc/core@1.10.1(@swc/helpers@0.5.15))(@types/node@22.10.2)(typescript@5.5.4)) '@jest/types': 29.6.3 import-local: 3.2.0 - jest-cli: 29.7.0(@types/node@22.9.0)(ts-node@10.9.2(@swc/core@1.8.0)(@types/node@22.9.0)(typescript@5.5.4)) + jest-cli: 29.7.0(@types/node@22.10.2)(ts-node@10.9.2(@swc/core@1.10.1(@swc/helpers@0.5.15))(@types/node@22.10.2)(typescript@5.5.4)) transitivePeerDependencies: - '@types/node' - babel-plugin-macros @@ -20366,9 +20963,7 @@ snapshots: jiti@1.21.6: {} - jiti@2.4.0: {} - - joycon@3.1.1: {} + jiti@2.4.1: {} js-string-escape@1.0.1: {} @@ -20397,9 +20992,9 @@ snapshots: form-data: 4.0.1 html-encoding-sniffer: 3.0.0 http-proxy-agent: 5.0.0 - https-proxy-agent: 5.0.1 + https-proxy-agent: 5.0.1(supports-color@9.4.0) is-potential-custom-element-name: 1.0.1 - nwsapi: 2.2.13 + nwsapi: 2.2.16 parse5: 7.2.1 saxes: 6.0.0 symbol-tree: 3.2.4 @@ -20418,6 +21013,8 @@ snapshots: jsesc@3.0.2: {} + jsesc@3.1.0: {} + json-bigint@1.0.0: dependencies: bignumber.js: 9.1.2 @@ -20481,7 +21078,7 @@ snapshots: jsx-ast-utils@3.3.5: dependencies: array-includes: 3.1.8 - array.prototype.flat: 1.3.2 + array.prototype.flat: 1.3.3 object.assign: 4.1.5 object.values: 1.2.0 @@ -20518,15 +21115,15 @@ snapshots: kleur@4.1.5: {} - knip@5.36.2(@types/node@22.9.0)(typescript@5.5.4): + knip@5.40.0(@types/node@22.10.2)(typescript@5.5.4): dependencies: '@nodelib/fs.walk': 1.2.8 '@snyk/github-codeowners': 1.1.0 - '@types/node': 22.9.0 + '@types/node': 22.10.2 easy-table: 1.2.0 enhanced-resolve: 5.17.1 fast-glob: 3.3.2 - jiti: 2.4.0 + jiti: 2.4.1 js-yaml: 4.1.0 minimist: 1.2.8 picocolors: 1.1.1 @@ -20536,8 +21133,8 @@ snapshots: strip-json-comments: 5.0.1 summary: 2.1.0 typescript: 5.5.4 - zod: 3.23.8 - zod-validation-error: 3.4.0(zod@3.23.8) + zod: 3.24.1 + zod-validation-error: 3.4.0(zod@3.24.1) koa-compose@4.1.0: {} @@ -20553,7 +21150,7 @@ snapshots: content-disposition: 0.5.4 content-type: 1.0.5 cookies: 0.9.1 - debug: 4.3.7(supports-color@5.5.0) + debug: 4.4.0(supports-color@9.4.0) delegates: 1.0.0 depd: 2.0.0 destroy: 1.2.0 @@ -20576,7 +21173,7 @@ snapshots: kuler@2.0.0: {} - ky@1.7.2: {} + ky@1.7.3: {} lambda-local@2.2.0: dependencies: @@ -20597,7 +21194,7 @@ snapshots: launch-editor@2.9.1: dependencies: picocolors: 1.1.1 - shell-quote: 1.8.1 + shell-quote: 1.8.2 lazystream@1.0.1: dependencies: @@ -20616,8 +21213,6 @@ snapshots: process-warning: 3.0.0 set-cookie-parser: 2.7.1 - lilconfig@3.1.2: {} - lines-and-columns@1.2.4: {} lines-and-columns@2.0.4: {} @@ -20641,7 +21236,7 @@ snapshots: get-port-please: 3.1.2 h3: 1.13.0 http-shutdown: 1.2.2 - jiti: 2.4.0 + jiti: 2.4.1 mlly: 1.7.3 node-forge: 1.3.1 pathe: 1.1.2 @@ -20666,8 +21261,6 @@ snapshots: transitivePeerDependencies: - bluebird - load-tsconfig@0.2.5: {} - loader-runner@4.3.0: {} loader-utils@2.0.4: @@ -20710,14 +21303,10 @@ snapshots: lodash.isstring@4.0.1: {} - lodash.memoize@4.1.2: {} - lodash.merge@4.6.2: {} lodash.once@4.1.1: {} - lodash.sortby@4.7.0: {} - lodash.startcase@4.4.0: {} lodash.transform@4.6.0: {} @@ -20750,7 +21339,7 @@ snapshots: log4js@6.9.1: dependencies: date-format: 4.0.14 - debug: 4.3.7(supports-color@5.5.0) + debug: 4.4.0(supports-color@9.4.0) flatted: 3.3.2 rfdc: 1.4.1 streamroller: 3.1.5 @@ -20784,11 +21373,6 @@ snapshots: lru-cache@10.4.3: {} - lru-cache@4.1.5: - dependencies: - pseudomap: 1.0.2 - yallist: 2.1.2 - lru-cache@5.1.1: dependencies: yallist: 3.1.1 @@ -20803,6 +21387,10 @@ snapshots: macos-release@3.3.0: {} + magic-string@0.30.15: + dependencies: + '@jridgewell/sourcemap-codec': 1.5.0 + make-dir@3.1.0: dependencies: semver: 6.3.1 @@ -20819,6 +21407,8 @@ snapshots: map-obj@5.0.2: {} + math-intrinsics@1.0.0: {} + maxstache-stream@1.0.4: dependencies: maxstache: 1.0.7 @@ -20880,7 +21470,7 @@ snapshots: devlop: 1.1.0 mdast-util-from-markdown: 2.0.2 mdast-util-to-markdown: 2.1.2 - parse-entities: 4.0.1 + parse-entities: 4.0.2 stringify-entities: 4.0.4 unist-util-stringify-position: 4.0.0 vfile-message: 4.0.2 @@ -20937,9 +21527,9 @@ snapshots: media-typer@0.3.0: {} - memfs@4.14.0: + memfs@4.15.0: dependencies: - '@jsonjoy.com/json-pack': 1.1.0(tslib@2.8.1) + '@jsonjoy.com/json-pack': 1.1.1(tslib@2.8.1) '@jsonjoy.com/util': 1.5.0(tslib@2.8.1) tree-dump: 1.0.2(tslib@2.8.1) tslib: 2.8.1 @@ -20983,7 +21573,7 @@ snapshots: micromark-util-html-tag-name: 2.0.1 micromark-util-normalize-identifier: 2.0.1 micromark-util-resolve-all: 2.0.1 - micromark-util-subtokenize: 2.0.2 + micromark-util-subtokenize: 2.0.3 micromark-util-symbol: 2.0.1 micromark-util-types: 2.0.1 @@ -21143,7 +21733,7 @@ snapshots: micromark-util-encode: 2.0.1 micromark-util-symbol: 2.0.1 - micromark-util-subtokenize@2.0.2: + micromark-util-subtokenize@2.0.3: dependencies: devlop: 1.1.0 micromark-util-chunked: 2.0.1 @@ -21156,7 +21746,7 @@ snapshots: micromark@2.11.4: dependencies: - debug: 4.3.7(supports-color@5.5.0) + debug: 4.4.0(supports-color@9.4.0) parse-entities: 2.0.0 transitivePeerDependencies: - supports-color @@ -21164,7 +21754,7 @@ snapshots: micromark@4.0.1: dependencies: '@types/debug': 4.1.12 - debug: 4.3.7(supports-color@5.5.0) + debug: 4.4.0(supports-color@9.4.0) decode-named-character-reference: 1.0.2 devlop: 1.1.0 micromark-core-commonmark: 2.0.2 @@ -21177,7 +21767,7 @@ snapshots: micromark-util-normalize-identifier: 2.0.1 micromark-util-resolve-all: 2.0.1 micromark-util-sanitize-uri: 2.0.1 - micromark-util-subtokenize: 2.0.2 + micromark-util-subtokenize: 2.0.3 micromark-util-symbol: 2.0.1 micromark-util-types: 2.0.1 transitivePeerDependencies: @@ -21214,11 +21804,11 @@ snapshots: min-indent@1.0.1: {} - mini-css-extract-plugin@2.9.2(webpack@5.96.1(@swc/core@1.8.0(@swc/helpers@0.5.13))): + mini-css-extract-plugin@2.9.2(webpack@5.97.1(@swc/core@1.10.1(@swc/helpers@0.5.15))): dependencies: - schema-utils: 4.2.0 + schema-utils: 4.3.0 tapable: 2.2.1 - webpack: 5.96.1(@swc/core@1.8.0(@swc/helpers@0.5.13)) + webpack: 5.97.1(@swc/core@1.10.1(@swc/helpers@0.5.15)) minimalistic-assert@1.0.1: {} @@ -21234,8 +21824,6 @@ snapshots: dependencies: brace-expansion: 2.0.1 - minimist@0.0.10: {} - minimist@1.2.8: {} minipass@3.3.6: @@ -21251,6 +21839,11 @@ snapshots: minipass: 3.3.6 yallist: 4.0.0 + minizlib@3.0.1: + dependencies: + minipass: 7.1.2 + rimraf: 5.0.10 + mkdirp-classic@0.5.3: {} mkdirp@0.5.6: @@ -21259,6 +21852,8 @@ snapshots: mkdirp@1.0.4: {} + mkdirp@3.0.1: {} + mlly@1.7.3: dependencies: acorn: 8.14.0 @@ -21288,25 +21883,25 @@ snapshots: ms@2.1.3: {} - msw@2.6.1(@types/node@22.9.0)(typescript@5.5.4): + msw@2.6.9(@types/node@22.10.2)(typescript@5.5.4): dependencies: '@bundled-es-modules/cookie': 2.0.1 '@bundled-es-modules/statuses': 1.0.1 '@bundled-es-modules/tough-cookie': 0.1.6 - '@inquirer/confirm': 5.0.2(@types/node@22.9.0) - '@mswjs/interceptors': 0.36.10 + '@inquirer/confirm': 5.1.0(@types/node@22.10.2) + '@mswjs/interceptors': 0.37.3 '@open-draft/deferred-promise': 2.2.0 '@open-draft/until': 2.1.0 '@types/cookie': 0.6.0 '@types/statuses': 2.0.5 chalk: 4.1.2 - graphql: 16.9.0 + graphql: 16.10.0 headers-polyfill: 4.0.3 is-node-process: 1.2.0 outvariant: 1.4.3 path-to-regexp: 6.3.0 strict-event-emitter: 0.5.1 - type-fest: 4.27.0 + type-fest: 4.30.1 yargs: 17.7.2 optionalDependencies: typescript: 5.5.4 @@ -21328,16 +21923,10 @@ snapshots: mute-stream@2.0.0: {} - mz@2.7.0: - dependencies: - any-promise: 1.3.0 - object-assign: 4.1.1 - thenify-all: 1.6.0 - nan@2.22.0: optional: true - nanoid@3.3.7: {} + nanoid@3.3.8: {} napi-build-utils@1.0.2: {} @@ -21351,18 +21940,18 @@ snapshots: nested-error-stacks@2.1.1: {} - netlify-cli@17.37.2(@swc/core@1.8.0(@swc/helpers@0.5.13))(@types/express@4.17.21)(@types/node@22.9.0)(picomatch@4.0.2): + netlify-cli@17.38.0(@swc/core@1.10.1)(@types/express@4.17.21)(@types/node@22.10.2)(picomatch@4.0.2): dependencies: '@bugsnag/js': 7.25.0 '@fastify/static': 7.0.4 '@netlify/blobs': 8.1.0 - '@netlify/build': 29.56.0(@opentelemetry/api@1.8.0)(@swc/core@1.8.0(@swc/helpers@0.5.13))(@types/node@22.9.0)(picomatch@4.0.2) + '@netlify/build': 29.56.1(@opentelemetry/api@1.8.0)(@swc/core@1.10.1)(@types/node@22.10.2)(picomatch@4.0.2) '@netlify/build-info': 7.15.2 - '@netlify/config': 20.19.0 - '@netlify/edge-bundler': 12.2.3 - '@netlify/edge-functions': 2.9.0 + '@netlify/config': 20.19.1 + '@netlify/edge-bundler': 12.2.3(supports-color@9.4.0) + '@netlify/edge-functions': 2.11.1 '@netlify/local-functions-proxy': 1.1.1 - '@netlify/zip-it-and-ship-it': 9.41.1 + '@netlify/zip-it-and-ship-it': 9.41.1(supports-color@9.4.0) '@octokit/rest': 20.1.1 '@opentelemetry/api': 1.8.0 ansi-escapes: 7.0.0 @@ -21374,7 +21963,7 @@ snapshots: boxen: 7.1.1 chalk: 5.3.0 chokidar: 3.6.0 - ci-info: 4.0.0 + ci-info: 4.1.0 clean-deep: 3.4.0 commander: 10.0.1 comment-json: 4.2.5 @@ -21383,7 +21972,7 @@ snapshots: content-type: 1.0.5 cookie: 0.7.2 cron-parser: 4.9.0 - debug: 4.3.7(supports-color@5.5.0) + debug: 4.3.7(supports-color@9.4.0) decache: 4.6.2 dot-prop: 9.0.0 dotenv: 16.4.5 @@ -21409,7 +21998,7 @@ snapshots: hasha: 5.2.2 http-proxy: 1.18.1(debug@4.3.7) http-proxy-middleware: 2.0.7(@types/express@4.17.21)(debug@4.3.7) - https-proxy-agent: 7.0.5 + https-proxy-agent: 7.0.5(supports-color@9.4.0) inquirer: 6.5.2 inquirer-autocomplete-prompt: 1.4.0(inquirer@6.5.2) ipx: 2.1.0(@netlify/blobs@8.1.0) @@ -21435,7 +22024,7 @@ snapshots: netlify-redirector: 0.5.0 node-fetch: 3.3.2 node-version-alias: 3.4.1 - ora: 8.1.0 + ora: 8.1.1 p-filter: 4.1.0 p-map: 7.0.2 p-wait-for: 5.0.2 @@ -21487,6 +22076,7 @@ snapshots: - idb-keyval - ioredis - picomatch + - rollup - supports-color - utf-8-validate @@ -21511,7 +22101,7 @@ snapshots: netlify@13.1.21: dependencies: - '@netlify/open-api': 2.34.0 + '@netlify/open-api': 2.35.0 lodash-es: 4.17.21 micro-api-client: 3.3.0 node-fetch: 3.3.2 @@ -21548,11 +22138,11 @@ snapshots: node-forge@1.3.1: {} - node-gyp-build@4.8.3: {} + node-gyp-build@4.8.4: {} node-int64@0.4.0: {} - node-releases@2.0.18: {} + node-releases@2.0.19: {} node-schedule@2.1.1: dependencies: @@ -21562,7 +22152,7 @@ snapshots: node-source-walk@6.0.2: dependencies: - '@babel/parser': 7.26.2 + '@babel/parser': 7.26.3 node-stream-zip@1.15.0: {} @@ -21575,10 +22165,10 @@ snapshots: path-exists: 5.0.0 semver: 7.6.3 - nodemon@3.1.7: + nodemon@3.1.9: dependencies: chokidar: 3.6.0 - debug: 4.3.7(supports-color@5.5.0) + debug: 4.4.0(supports-color@5.5.0) ignore-by-default: 1.0.1 minimatch: 3.1.2 pstree.remy: 1.1.8 @@ -21601,6 +22191,10 @@ snapshots: dependencies: abbrev: 2.0.0 + nopt@8.0.0: + dependencies: + abbrev: 2.0.0 + normalize-node-version@12.4.0: dependencies: all-node-versions: 11.3.0 @@ -21610,7 +22204,7 @@ snapshots: normalize-package-data@3.0.3: dependencies: hosted-git-info: 4.1.0 - is-core-module: 2.15.1 + is-core-module: 2.16.0 semver: 7.6.3 validate-npm-package-license: 3.0.4 @@ -21667,7 +22261,7 @@ snapshots: dependencies: boolbase: 1.0.0 - nwsapi@2.2.13: {} + nwsapi@2.2.16: {} object-assign@4.1.1: {} @@ -21677,33 +22271,33 @@ snapshots: object.assign@4.1.5: dependencies: - call-bind: 1.0.7 + call-bind: 1.0.8 define-properties: 1.2.1 - has-symbols: 1.0.3 + has-symbols: 1.1.0 object-keys: 1.1.1 object.entries@1.1.8: dependencies: - call-bind: 1.0.7 + call-bind: 1.0.8 define-properties: 1.2.1 es-object-atoms: 1.0.0 object.fromentries@2.0.8: dependencies: - call-bind: 1.0.7 + call-bind: 1.0.8 define-properties: 1.2.1 es-abstract: 1.23.5 es-object-atoms: 1.0.0 object.groupby@1.0.3: dependencies: - call-bind: 1.0.7 + call-bind: 1.0.8 define-properties: 1.2.1 es-abstract: 1.23.5 object.values@1.2.0: dependencies: - call-bind: 1.0.7 + call-bind: 1.0.8 define-properties: 1.2.1 es-object-atoms: 1.0.0 @@ -21768,11 +22362,6 @@ snapshots: opener@1.5.2: {} - optimist@0.6.1: - dependencies: - minimist: 0.0.10 - wordwrap: 0.0.3 - optionator@0.9.4: dependencies: deep-is: 0.1.4 @@ -21782,7 +22371,19 @@ snapshots: type-check: 0.4.0 word-wrap: 1.2.5 - ora@8.1.0: + ora@8.0.1: + dependencies: + chalk: 5.3.0 + cli-cursor: 4.0.0 + cli-spinners: 2.9.2 + is-interactive: 2.0.0 + is-unicode-supported: 2.1.0 + log-symbols: 6.0.0 + stdin-discarder: 0.2.2 + string-width: 7.2.0 + strip-ansi: 7.1.0 + + ora@8.1.1: dependencies: chalk: 5.3.0 cli-cursor: 5.0.0 @@ -21904,18 +22505,18 @@ snapshots: package-json-from-dist@1.0.1: {} - package-json-validator@0.6.8: + package-json-validator@0.7.0: dependencies: - optimist: 0.6.1 + yargs: 17.7.2 package-json@10.0.1: dependencies: - ky: 1.7.2 - registry-auth-token: 5.0.2 + ky: 1.7.3 + registry-auth-token: 5.0.3 registry-url: 6.0.1 semver: 7.6.3 - package-manager-detector@0.2.4: {} + package-manager-detector@0.2.7: {} parallel-transform@1.2.0: dependencies: @@ -21941,10 +22542,9 @@ snapshots: is-decimal: 1.0.4 is-hexadecimal: 1.0.4 - parse-entities@4.0.1: + parse-entities@4.0.2: dependencies: '@types/unist': 2.0.11 - character-entities: 2.0.2 character-entities-legacy: 3.0.0 character-reference-invalid: 2.0.1 decode-named-character-reference: 1.0.2 @@ -21975,7 +22575,7 @@ snapshots: dependencies: '@babel/code-frame': 7.26.2 index-to-position: 0.1.2 - type-fest: 4.27.0 + type-fest: 4.30.1 parse-ms@3.0.0: {} @@ -22013,6 +22613,8 @@ snapshots: path-to-regexp@0.1.10: {} + path-to-regexp@0.1.12: {} + path-to-regexp@6.3.0: {} path-type@4.0.0: {} @@ -22075,6 +22677,16 @@ snapshots: dependencies: find-up: 6.3.0 + pkg-pr-new@0.0.37: + dependencies: + '@jsdevtools/ez-spawn': 3.0.4 + '@octokit/action': 6.1.0 + ignore: 5.3.2 + isbinaryfile: 5.0.4 + pkg-types: 1.2.1 + query-registry: 3.0.1 + tinyglobby: 0.2.10 + pkg-types@1.2.1: dependencies: confbox: 0.1.8 @@ -22093,23 +22705,15 @@ snapshots: possible-typed-array-names@1.0.0: {} - postcss-load-config@6.0.1(jiti@2.4.0)(postcss@8.4.49)(tsx@4.19.2)(yaml@2.6.0): - dependencies: - lilconfig: 3.1.2 - optionalDependencies: - jiti: 2.4.0 - postcss: 8.4.49 - tsx: 4.19.2 - yaml: 2.6.0 - - postcss-loader@8.1.1(postcss@8.4.49)(typescript@5.5.4)(webpack@5.96.1(@swc/core@1.8.0(@swc/helpers@0.5.13))): + postcss-loader@8.1.1(@rspack/core@1.1.6(@swc/helpers@0.5.15))(postcss@8.4.49)(typescript@5.5.4)(webpack@5.97.1(@swc/core@1.10.1(@swc/helpers@0.5.15))): dependencies: cosmiconfig: 9.0.0(typescript@5.5.4) jiti: 1.21.6 postcss: 8.4.49 semver: 7.6.3 optionalDependencies: - webpack: 5.96.1(@swc/core@1.8.0(@swc/helpers@0.5.13)) + '@rspack/core': 1.1.6(@swc/helpers@0.5.15) + webpack: 5.97.1(@swc/core@1.10.1(@swc/helpers@0.5.15)) transitivePeerDependencies: - typescript @@ -22117,7 +22721,7 @@ snapshots: dependencies: postcss: 8.4.49 - postcss-modules-local-by-default@4.1.0(postcss@8.4.49): + postcss-modules-local-by-default@4.2.0(postcss@8.4.49): dependencies: icss-utils: 5.1.0(postcss@8.4.49) postcss: 8.4.49 @@ -22150,7 +22754,7 @@ snapshots: postcss@8.4.49: dependencies: - nanoid: 3.3.7 + nanoid: 3.3.8 picocolors: 1.1.1 source-map-js: 1.2.1 @@ -22179,23 +22783,6 @@ snapshots: tar-fs: 2.1.1 tunnel-agent: 0.6.0 - precinct@11.0.5: - dependencies: - '@dependents/detective-less': 4.1.0 - commander: 10.0.1 - detective-amd: 5.0.2 - detective-cjs: 5.0.1 - detective-es6: 4.0.1 - detective-postcss: 6.1.3 - detective-sass: 5.0.3 - detective-scss: 4.0.3 - detective-stylus: 4.0.0 - detective-typescript: 11.2.0 - module-definition: 5.0.1 - node-source-walk: 6.0.2 - transitivePeerDependencies: - - supports-color - precinct@11.0.5(supports-color@9.4.0): dependencies: '@dependents/detective-less': 4.1.0 @@ -22291,7 +22878,7 @@ snapshots: '@protobufjs/path': 1.1.2 '@protobufjs/pool': 1.1.0 '@protobufjs/utf8': 1.1.0 - '@types/node': 22.9.0 + '@types/node': 22.10.2 long: 5.2.3 proxy-addr@2.0.7: @@ -22303,9 +22890,7 @@ snapshots: ps-list@8.1.1: {} - pseudomap@1.0.2: {} - - psl@1.10.0: + psl@1.15.0: dependencies: punycode: 2.3.1 @@ -22331,11 +22916,26 @@ snapshots: qs@6.13.0: dependencies: - side-channel: 1.0.6 + side-channel: 1.1.0 qs@6.13.1: dependencies: - side-channel: 1.0.6 + side-channel: 1.1.0 + + query-registry@3.0.1: + dependencies: + query-string: 9.1.1 + quick-lru: 7.0.0 + url-join: 5.0.0 + validate-npm-package-name: 5.0.1 + zod: 3.24.1 + zod-package-json: 1.0.3 + + query-string@9.1.1: + dependencies: + decode-uri-component: 0.4.1 + filter-obj: 5.1.0 + split-on-first: 3.0.0 querystringify@2.2.0: {} @@ -22347,11 +22947,13 @@ snapshots: quick-lru@5.1.1: {} + quick-lru@7.0.0: {} + quote-unquote@1.0.0: {} radix3@1.1.2: {} - rambda@9.4.0: {} + rambda@9.4.1: {} random-bytes@1.0.0: {} @@ -22375,25 +22977,24 @@ snapshots: minimist: 1.2.8 strip-json-comments: 2.0.1 - react-dom@18.3.1(react@18.3.1): + react-dom@19.0.0(react@19.0.0): dependencies: - loose-envify: 1.4.0 - react: 18.3.1 - scheduler: 0.23.2 + react: 19.0.0 + scheduler: 0.25.0 - react-error-boundary@4.1.2(react@18.3.1): + react-error-boundary@4.1.2(react@19.0.0): dependencies: '@babel/runtime': 7.26.0 - react: 18.3.1 + react: 19.0.0 - react-i18next@15.1.0(i18next@23.16.4)(react-dom@18.3.1(react@18.3.1))(react@18.3.1): + react-i18next@15.2.0(i18next@24.1.0(typescript@5.5.4))(react-dom@19.0.0(react@19.0.0))(react@19.0.0): dependencies: '@babel/runtime': 7.26.0 html-parse-stringify: 3.0.1 - i18next: 23.16.4 - react: 18.3.1 + i18next: 24.1.0(typescript@5.5.4) + react: 19.0.0 optionalDependencies: - react-dom: 18.3.1(react@18.3.1) + react-dom: 19.0.0(react@19.0.0) react-is@16.13.1: {} @@ -22401,36 +23002,21 @@ snapshots: react-is@18.3.1: {} - react-refresh@0.14.2: {} + react-refresh@0.16.0: {} - react-router-dom@6.27.0(react-dom@18.3.1(react@18.3.1))(react@18.3.1): + react-router-dom@6.27.0(react-dom@19.0.0(react@19.0.0))(react@19.0.0): dependencies: '@remix-run/router': 1.20.0 - react: 18.3.1 - react-dom: 18.3.1(react@18.3.1) - react-router: 6.27.0(react@18.3.1) + react: 19.0.0 + react-dom: 19.0.0(react@19.0.0) + react-router: 6.27.0(react@19.0.0) - react-router@6.27.0(react@18.3.1): + react-router@6.27.0(react@19.0.0): dependencies: '@remix-run/router': 1.20.0 - react: 18.3.1 + react: 19.0.0 - react-shallow-renderer@16.15.0(react@18.3.1): - dependencies: - object-assign: 4.1.1 - react: 18.3.1 - react-is: 18.3.1 - - react-test-renderer@18.3.1(react@18.3.1): - dependencies: - react: 18.3.1 - react-is: 18.3.1 - react-shallow-renderer: 16.15.0(react@18.3.1) - scheduler: 0.23.2 - - react@18.3.1: - dependencies: - loose-envify: 1.4.0 + react@19.0.0: {} read-package-json-fast@3.0.2: dependencies: @@ -22441,13 +23027,7 @@ snapshots: dependencies: find-up-simple: 1.0.0 read-pkg: 9.0.1 - type-fest: 4.27.0 - - read-pkg-up@9.1.0: - dependencies: - find-up: 6.3.0 - read-pkg: 7.1.0 - type-fest: 2.19.0 + type-fest: 4.30.1 read-pkg@7.1.0: dependencies: @@ -22461,13 +23041,13 @@ snapshots: '@types/normalize-package-data': 2.4.4 normalize-package-data: 6.0.2 parse-json: 8.1.0 - type-fest: 4.27.0 + type-fest: 4.30.1 unicorn-magic: 0.1.0 read-workspaces@1.2.2: dependencies: '@npmcli/map-workspaces': 3.0.6 - '@pnpm/workspace.read-manifest': 2.2.1 + '@pnpm/workspace.read-manifest': 2.2.2 read-pkg: 9.0.1 read-yaml-file@1.1.0: @@ -22525,28 +23105,27 @@ snapshots: dependencies: picomatch: 2.3.1 - readdirp@4.0.2: {} - real-require@0.2.0: {} rechoir@0.8.0: dependencies: - resolve: 1.22.8 + resolve: 1.22.9 redent@3.0.0: dependencies: indent-string: 4.0.0 strip-indent: 3.0.0 - reflect.getprototypeof@1.0.6: + reflect.getprototypeof@1.0.8: dependencies: - call-bind: 1.0.7 + call-bind: 1.0.8 define-properties: 1.2.1 + dunder-proto: 1.0.0 es-abstract: 1.23.5 es-errors: 1.3.0 - get-intrinsic: 1.2.4 - globalthis: 1.0.4 - which-builtin-type: 1.1.4 + get-intrinsic: 1.2.6 + gopd: 1.2.0 + which-builtin-type: 1.2.1 regenerate-unicode-properties@10.2.0: dependencies: @@ -22562,21 +23141,21 @@ snapshots: regexp.prototype.flags@1.5.3: dependencies: - call-bind: 1.0.7 + call-bind: 1.0.8 define-properties: 1.2.1 es-errors: 1.3.0 set-function-name: 2.0.2 - regexpu-core@6.1.1: + regexpu-core@6.2.0: dependencies: regenerate: 1.4.2 regenerate-unicode-properties: 10.2.0 regjsgen: 0.8.0 - regjsparser: 0.11.2 + regjsparser: 0.12.0 unicode-match-property-ecmascript: 2.0.0 unicode-match-property-value-ecmascript: 2.2.0 - registry-auth-token@5.0.2: + registry-auth-token@5.0.3: dependencies: '@pnpm/npm-conf': 2.3.1 @@ -22586,7 +23165,7 @@ snapshots: regjsgen@0.8.0: {} - regjsparser@0.11.2: + regjsparser@0.12.0: dependencies: jsesc: 3.0.2 @@ -22632,16 +23211,14 @@ snapshots: require-in-the-middle@7.4.0: dependencies: - debug: 4.3.7(supports-color@5.5.0) + debug: 4.4.0(supports-color@9.4.0) module-details-from-path: 1.0.3 - resolve: 1.22.8 + resolve: 1.22.9 transitivePeerDependencies: - supports-color require-package-name@2.0.1: {} - requireindex@1.2.0: {} - requires-port@1.0.0: {} resolve-alpn@1.2.1: {} @@ -22661,17 +23238,23 @@ snapshots: resolve-pkg-maps@1.0.0: {} - resolve.exports@2.0.2: {} + resolve.exports@2.0.3: {} resolve@1.22.8: dependencies: - is-core-module: 2.15.1 + is-core-module: 2.16.0 + path-parse: 1.0.7 + supports-preserve-symlinks-flag: 1.0.0 + + resolve@1.22.9: + dependencies: + is-core-module: 2.16.0 path-parse: 1.0.7 supports-preserve-symlinks-flag: 1.0.0 resolve@2.0.0-next.5: dependencies: - is-core-module: 2.15.1 + is-core-module: 2.16.0 path-parse: 1.0.7 supports-preserve-symlinks-flag: 1.0.0 @@ -22684,6 +23267,11 @@ snapshots: onetime: 2.0.1 signal-exit: 3.0.7 + restore-cursor@4.0.0: + dependencies: + onetime: 5.1.2 + signal-exit: 3.0.7 + restore-cursor@5.1.0: dependencies: onetime: 7.0.0 @@ -22705,29 +23293,18 @@ snapshots: dependencies: glob: 7.2.3 - rollup@4.27.3: + rimraf@5.0.10: dependencies: - '@types/estree': 1.0.6 + glob: 10.4.5 + + rsbuild-plugin-dts@0.1.4(@rsbuild/core@1.1.10)(typescript@5.5.4): + dependencies: + '@rsbuild/core': 1.1.10 + magic-string: 0.30.15 + picocolors: 1.1.1 + tinyglobby: 0.2.10 optionalDependencies: - '@rollup/rollup-android-arm-eabi': 4.27.3 - '@rollup/rollup-android-arm64': 4.27.3 - '@rollup/rollup-darwin-arm64': 4.27.3 - '@rollup/rollup-darwin-x64': 4.27.3 - '@rollup/rollup-freebsd-arm64': 4.27.3 - '@rollup/rollup-freebsd-x64': 4.27.3 - '@rollup/rollup-linux-arm-gnueabihf': 4.27.3 - '@rollup/rollup-linux-arm-musleabihf': 4.27.3 - '@rollup/rollup-linux-arm64-gnu': 4.27.3 - '@rollup/rollup-linux-arm64-musl': 4.27.3 - '@rollup/rollup-linux-powerpc64le-gnu': 4.27.3 - '@rollup/rollup-linux-riscv64-gnu': 4.27.3 - '@rollup/rollup-linux-s390x-gnu': 4.27.3 - '@rollup/rollup-linux-x64-gnu': 4.27.3 - '@rollup/rollup-linux-x64-musl': 4.27.3 - '@rollup/rollup-win32-arm64-msvc': 4.27.3 - '@rollup/rollup-win32-ia32-msvc': 4.27.3 - '@rollup/rollup-win32-x64-msvc': 4.27.3 - fsevents: 2.3.3 + typescript: 5.5.4 run-applescript@7.0.0: {} @@ -22745,11 +23322,12 @@ snapshots: dependencies: mri: 1.2.0 - safe-array-concat@1.1.2: + safe-array-concat@1.1.3: dependencies: - call-bind: 1.0.7 - get-intrinsic: 1.2.4 - has-symbols: 1.0.3 + call-bind: 1.0.8 + call-bound: 1.0.3 + get-intrinsic: 1.2.6 + has-symbols: 1.1.0 isarray: 2.0.5 safe-buffer@5.1.2: {} @@ -22758,11 +23336,11 @@ snapshots: safe-json-stringify@1.2.0: {} - safe-regex-test@1.0.3: + safe-regex-test@1.1.0: dependencies: - call-bind: 1.0.7 + call-bound: 1.0.3 es-errors: 1.3.0 - is-regex: 1.1.4 + is-regex: 1.2.1 safe-regex2@3.1.0: dependencies: @@ -22776,9 +23354,7 @@ snapshots: dependencies: xmlchars: 2.2.0 - scheduler@0.23.2: - dependencies: - loose-envify: 1.4.0 + scheduler@0.25.0: {} schema-utils@3.3.0: dependencies: @@ -22786,7 +23362,7 @@ snapshots: ajv: 6.12.6 ajv-keywords: 3.5.2(ajv@6.12.6) - schema-utils@4.2.0: + schema-utils@4.3.0: dependencies: '@types/json-schema': 7.0.15 ajv: 8.17.1 @@ -22864,8 +23440,8 @@ snapshots: define-data-property: 1.1.4 es-errors: 1.3.0 function-bind: 1.1.2 - get-intrinsic: 1.2.4 - gopd: 1.0.1 + get-intrinsic: 1.2.6 + gopd: 1.2.0 has-property-descriptors: 1.0.2 set-function-name@2.0.2: @@ -22894,29 +23470,44 @@ snapshots: tar-fs: 3.0.6 tunnel-agent: 0.6.0 - shebang-command@1.2.0: - dependencies: - shebang-regex: 1.0.0 - shebang-command@2.0.0: dependencies: shebang-regex: 3.0.0 - shebang-regex@1.0.0: {} - shebang-regex@3.0.0: {} - shell-quote@1.8.1: {} + shell-quote@1.8.2: {} shimmer@1.2.1: {} - side-channel@1.0.6: + side-channel-list@1.0.0: dependencies: - call-bind: 1.0.7 es-errors: 1.3.0 - get-intrinsic: 1.2.4 object-inspect: 1.13.3 + side-channel-map@1.0.1: + dependencies: + call-bound: 1.0.3 + es-errors: 1.3.0 + get-intrinsic: 1.2.6 + object-inspect: 1.13.3 + + side-channel-weakmap@1.0.2: + dependencies: + call-bound: 1.0.3 + es-errors: 1.3.0 + get-intrinsic: 1.2.6 + object-inspect: 1.13.3 + side-channel-map: 1.0.1 + + side-channel@1.1.0: + dependencies: + es-errors: 1.3.0 + object-inspect: 1.13.3 + side-channel-list: 1.0.0 + side-channel-map: 1.0.1 + side-channel-weakmap: 1.0.2 + signal-exit@3.0.7: {} signal-exit@4.1.0: {} @@ -22943,6 +23534,8 @@ snapshots: slash@4.0.0: {} + slash@5.1.0: {} + slice-ansi@5.0.0: dependencies: ansi-styles: 6.2.1 @@ -22980,14 +23573,16 @@ snapshots: sort-object-keys@1.1.3: {} - sort-package-json@1.57.0: + sort-package-json@2.12.0: dependencies: - detect-indent: 6.1.0 - detect-newline: 3.1.0 - git-hooks-list: 1.0.3 - globby: 10.0.0 - is-plain-obj: 2.1.0 + detect-indent: 7.0.1 + detect-newline: 4.0.1 + get-stdin: 9.0.0 + git-hooks-list: 3.1.0 + is-plain-obj: 4.1.0 + semver: 7.6.3 sort-object-keys: 1.1.3 + tinyglobby: 0.2.10 sorted-array-functions@1.3.0: {} @@ -23007,14 +23602,10 @@ snapshots: source-map@0.7.4: {} - source-map@0.8.0-beta.0: - dependencies: - whatwg-url: 7.1.0 - - spawndamnit@2.0.0: + spawndamnit@3.0.1: dependencies: - cross-spawn: 5.1.0 - signal-exit: 3.0.7 + cross-spawn: 7.0.6 + signal-exit: 4.1.0 spdx-correct@3.2.0: dependencies: @@ -23032,7 +23623,7 @@ snapshots: spdy-transport@3.0.0: dependencies: - debug: 4.3.7(supports-color@5.5.0) + debug: 4.4.0(supports-color@9.4.0) detect-node: 2.1.0 hpack.js: 2.1.6 obuf: 1.1.2 @@ -23043,7 +23634,7 @@ snapshots: spdy@4.0.2: dependencies: - debug: 4.3.7(supports-color@5.5.0) + debug: 4.4.0(supports-color@9.4.0) handle-thing: 2.0.1 http-deceiver: 1.2.7 select-hose: 2.0.0 @@ -23051,6 +23642,8 @@ snapshots: transitivePeerDependencies: - supports-color + split-on-first@3.0.0: {} + split2@1.1.1: dependencies: through2: 2.0.5 @@ -23082,21 +23675,23 @@ snapshots: streamroller@3.1.5: dependencies: date-format: 4.0.14 - debug: 4.3.7(supports-color@5.5.0) + debug: 4.4.0(supports-color@9.4.0) fs-extra: 8.1.0 transitivePeerDependencies: - supports-color - streamx@2.20.2: + streamx@2.21.1: dependencies: fast-fifo: 1.3.2 queue-tick: 1.0.1 - text-decoder: 1.2.1 + text-decoder: 1.2.3 optionalDependencies: bare-events: 2.5.0 strict-event-emitter@0.5.1: {} + string-argv@0.3.2: {} + string-length@4.0.2: dependencies: char-regex: 1.0.2 @@ -23133,46 +23728,50 @@ snapshots: string.prototype.includes@2.0.1: dependencies: - call-bind: 1.0.7 + call-bind: 1.0.8 define-properties: 1.2.1 es-abstract: 1.23.5 string.prototype.matchall@4.0.11: dependencies: - call-bind: 1.0.7 + call-bind: 1.0.8 define-properties: 1.2.1 es-abstract: 1.23.5 es-errors: 1.3.0 es-object-atoms: 1.0.0 - get-intrinsic: 1.2.4 - gopd: 1.0.1 - has-symbols: 1.0.3 - internal-slot: 1.0.7 + get-intrinsic: 1.2.6 + gopd: 1.2.0 + has-symbols: 1.1.0 + internal-slot: 1.1.0 regexp.prototype.flags: 1.5.3 set-function-name: 2.0.2 - side-channel: 1.0.6 + side-channel: 1.1.0 string.prototype.repeat@1.0.0: dependencies: define-properties: 1.2.1 es-abstract: 1.23.5 - string.prototype.trim@1.2.9: + string.prototype.trim@1.2.10: dependencies: - call-bind: 1.0.7 + call-bind: 1.0.8 + call-bound: 1.0.3 + define-data-property: 1.1.4 define-properties: 1.2.1 es-abstract: 1.23.5 es-object-atoms: 1.0.0 + has-property-descriptors: 1.0.2 - string.prototype.trimend@1.0.8: + string.prototype.trimend@1.0.9: dependencies: - call-bind: 1.0.7 + call-bind: 1.0.8 + call-bound: 1.0.3 define-properties: 1.2.1 es-object-atoms: 1.0.0 string.prototype.trimstart@1.0.8: dependencies: - call-bind: 1.0.7 + call-bind: 1.0.8 define-properties: 1.2.1 es-object-atoms: 1.0.0 @@ -23241,19 +23840,9 @@ snapshots: stubborn-fs@1.2.5: {} - style-loader@3.3.4(webpack@5.96.1(@swc/core@1.8.0(@swc/helpers@0.5.13))): + style-loader@4.0.0(webpack@5.97.1(@swc/core@1.10.1(@swc/helpers@0.5.15))): dependencies: - webpack: 5.96.1(@swc/core@1.8.0(@swc/helpers@0.5.13)) - - sucrase@3.35.0: - dependencies: - '@jridgewell/gen-mapping': 0.3.5 - commander: 4.1.1 - glob: 10.4.5 - lines-and-columns: 1.2.4 - mz: 2.7.0 - pirates: 4.0.6 - ts-interface-checker: 0.1.13 + webpack: 5.97.1(@swc/core@1.10.1(@swc/helpers@0.5.15)) summary@2.1.0: {} @@ -23290,11 +23879,11 @@ snapshots: csso: 5.0.5 picocolors: 1.1.1 - swc-loader@0.2.6(@swc/core@1.8.0(@swc/helpers@0.5.13))(webpack@5.96.1(@swc/core@1.8.0(@swc/helpers@0.5.13))): + swc-loader@0.2.6(@swc/core@1.10.1(@swc/helpers@0.5.15))(webpack@5.97.1(@swc/core@1.10.1(@swc/helpers@0.5.15))): dependencies: - '@swc/core': 1.8.0(@swc/helpers@0.5.13) + '@swc/core': 1.10.1(@swc/helpers@0.5.15) '@swc/counter': 0.1.3 - webpack: 5.96.1(@swc/core@1.8.0(@swc/helpers@0.5.13)) + webpack: 5.97.1(@swc/core@1.10.1(@swc/helpers@0.5.15)) symbol-tree@3.2.4: {} @@ -23303,11 +23892,34 @@ snapshots: '@pkgr/core': 0.1.1 tslib: 2.8.1 + syncpack@13.0.0(typescript@5.5.4): + dependencies: + '@effect/schema': 0.71.1(effect@3.6.5) + chalk: 5.3.0 + chalk-template: 1.1.0 + commander: 12.1.0 + cosmiconfig: 9.0.0(typescript@5.5.4) + effect: 3.6.5 + enquirer: 2.4.1 + fast-check: 3.21.0 + globby: 14.0.2 + jsonc-parser: 3.3.1 + minimatch: 9.0.5 + npm-package-arg: 11.0.3 + ora: 8.0.1 + prompts: 2.4.2 + read-yaml-file: 2.1.0 + semver: 7.6.3 + tightrope: 0.2.0 + ts-toolbelt: 9.6.0 + transitivePeerDependencies: + - typescript + system-architecture@0.1.0: {} tabtab@3.0.2: dependencies: - debug: 4.3.7(supports-color@5.5.0) + debug: 4.3.7(supports-color@9.4.0) es6-promisify: 6.1.1 inquirer: 6.5.2 minimist: 1.2.8 @@ -23345,7 +23957,7 @@ snapshots: dependencies: b4a: 1.6.7 fast-fifo: 1.3.2 - streamx: 2.20.2 + streamx: 2.21.1 tar@6.2.1: dependencies: @@ -23356,6 +23968,15 @@ snapshots: mkdirp: 1.0.4 yallist: 4.0.0 + tar@7.4.3: + dependencies: + '@isaacs/fs-minipass': 4.0.1 + chownr: 3.0.0 + minipass: 7.1.2 + minizlib: 3.0.1 + mkdirp: 3.0.1 + yallist: 5.0.0 + temp-dir@3.0.0: {} tempy@3.1.0: @@ -23372,29 +23993,29 @@ snapshots: ansi-escapes: 5.0.0 supports-hyperlinks: 2.3.0 - terser-webpack-plugin@5.3.10(@swc/core@1.8.0(@swc/helpers@0.5.13))(webpack@5.96.1(@swc/core@1.8.0(@swc/helpers@0.5.13))(webpack-cli@5.1.4)): + terser-webpack-plugin@5.3.11(@swc/core@1.10.1(@swc/helpers@0.5.15))(webpack@5.97.1(@swc/core@1.10.1(@swc/helpers@0.5.15))(webpack-cli@5.1.4)): dependencies: '@jridgewell/trace-mapping': 0.3.25 jest-worker: 27.5.1 - schema-utils: 3.3.0 + schema-utils: 4.3.0 serialize-javascript: 6.0.2 - terser: 5.36.0 - webpack: 5.96.1(@swc/core@1.8.0(@swc/helpers@0.5.13))(webpack-cli@5.1.4) + terser: 5.37.0 + webpack: 5.97.1(@swc/core@1.10.1(@swc/helpers@0.5.15))(webpack-cli@5.1.4) optionalDependencies: - '@swc/core': 1.8.0(@swc/helpers@0.5.13) + '@swc/core': 1.10.1(@swc/helpers@0.5.15) - terser-webpack-plugin@5.3.10(@swc/core@1.8.0(@swc/helpers@0.5.13))(webpack@5.96.1(@swc/core@1.8.0(@swc/helpers@0.5.13))): + terser-webpack-plugin@5.3.11(@swc/core@1.10.1(@swc/helpers@0.5.15))(webpack@5.97.1(@swc/core@1.10.1(@swc/helpers@0.5.15))): dependencies: '@jridgewell/trace-mapping': 0.3.25 jest-worker: 27.5.1 - schema-utils: 3.3.0 + schema-utils: 4.3.0 serialize-javascript: 6.0.2 - terser: 5.36.0 - webpack: 5.96.1(@swc/core@1.8.0(@swc/helpers@0.5.13)) + terser: 5.37.0 + webpack: 5.97.1(@swc/core@1.10.1(@swc/helpers@0.5.15)) optionalDependencies: - '@swc/core': 1.8.0(@swc/helpers@0.5.13) + '@swc/core': 1.10.1(@swc/helpers@0.5.15) - terser@5.36.0: + terser@5.37.0: dependencies: '@jridgewell/source-map': 0.3.6 acorn: 8.14.0 @@ -23407,20 +24028,14 @@ snapshots: glob: 7.2.3 minimatch: 3.1.2 - text-decoder@1.2.1: {} + text-decoder@1.2.3: + dependencies: + b4a: 1.6.7 text-hex@1.0.0: {} text-table@0.2.0: {} - thenify-all@1.6.0: - dependencies: - thenify: 3.3.1 - - thenify@3.3.1: - dependencies: - any-promise: 1.3.0 - thingies@1.21.0(tslib@2.8.1): dependencies: tslib: 2.8.1 @@ -23450,9 +24065,9 @@ snapshots: thunky@1.1.0: {} - time-zone@1.0.0: {} + tightrope@0.2.0: {} - tinyexec@0.3.1: {} + time-zone@1.0.0: {} tinyglobby@0.2.10: dependencies: @@ -23494,27 +24109,23 @@ snapshots: tough-cookie@4.1.4: dependencies: - psl: 1.10.0 + psl: 1.15.0 punycode: 2.3.1 universalify: 0.2.0 url-parse: 1.5.10 tr46@0.0.3: {} - tr46@1.0.1: - dependencies: - punycode: 2.3.1 - tr46@3.0.0: dependencies: punycode: 2.3.1 + tracekit@0.4.7: {} + tree-dump@1.0.2(tslib@2.8.1): dependencies: tslib: 2.8.1 - tree-kill@1.2.2: {} - trim-repeated@2.0.0: dependencies: escape-string-regexp: 5.0.0 @@ -23523,42 +24134,20 @@ snapshots: trough@2.2.0: {} - ts-api-utils@1.4.0(typescript@5.5.4): + ts-api-utils@1.4.3(typescript@5.5.4): dependencies: typescript: 5.5.4 ts-dedent@2.2.0: {} - ts-interface-checker@0.1.13: {} - - ts-jest@29.2.5(@babel/core@7.26.0)(@jest/transform@29.7.0)(@jest/types@29.6.3)(babel-jest@29.7.0(@babel/core@7.26.0))(esbuild@0.24.0)(jest@29.7.0(@types/node@22.9.0)(ts-node@10.9.2(@swc/core@1.8.0)(@types/node@22.9.0)(typescript@5.5.4)))(typescript@5.5.4): - dependencies: - bs-logger: 0.2.6 - ejs: 3.1.10 - fast-json-stable-stringify: 2.1.0 - jest: 29.7.0(@types/node@22.9.0)(ts-node@10.9.2(@swc/core@1.8.0)(@types/node@22.9.0)(typescript@5.5.4)) - jest-util: 29.7.0 - json5: 2.2.3 - lodash.memoize: 4.1.2 - make-error: 1.3.6 - semver: 7.6.3 - typescript: 5.5.4 - yargs-parser: 21.1.1 - optionalDependencies: - '@babel/core': 7.26.0 - '@jest/transform': 29.7.0 - '@jest/types': 29.6.3 - babel-jest: 29.7.0(@babel/core@7.26.0) - esbuild: 0.24.0 - - ts-node@10.9.2(@swc/core@1.8.0(@swc/helpers@0.5.13))(@types/node@22.9.0)(typescript@5.5.4): + ts-node@10.9.2(@swc/core@1.10.1)(@types/node@22.10.2)(typescript@5.5.4): dependencies: '@cspotcode/source-map-support': 0.8.1 '@tsconfig/node10': 1.0.11 '@tsconfig/node12': 1.0.11 '@tsconfig/node14': 1.0.3 '@tsconfig/node16': 1.0.4 - '@types/node': 22.9.0 + '@types/node': 22.10.2 acorn: 8.14.0 acorn-walk: 8.3.4 arg: 4.1.3 @@ -23569,7 +24158,9 @@ snapshots: v8-compile-cache-lib: 3.0.1 yn: 3.1.1 optionalDependencies: - '@swc/core': 1.8.0(@swc/helpers@0.5.13) + '@swc/core': 1.10.1(@swc/helpers@0.5.15) + + ts-toolbelt@9.6.0: {} tsconfig-paths@3.15.0: dependencies: @@ -23584,34 +24175,6 @@ snapshots: tsscmp@1.0.6: {} - tsup@8.3.5(@swc/core@1.8.0)(jiti@2.4.0)(postcss@8.4.49)(tsx@4.19.2)(typescript@5.5.4)(yaml@2.6.0): - dependencies: - bundle-require: 5.0.0(esbuild@0.24.0) - cac: 6.7.14 - chokidar: 4.0.1 - consola: 3.2.3 - debug: 4.3.7(supports-color@5.5.0) - esbuild: 0.24.0 - joycon: 3.1.1 - picocolors: 1.1.1 - postcss-load-config: 6.0.1(jiti@2.4.0)(postcss@8.4.49)(tsx@4.19.2)(yaml@2.6.0) - resolve-from: 5.0.0 - rollup: 4.27.3 - source-map: 0.8.0-beta.0 - sucrase: 3.35.0 - tinyexec: 0.3.1 - tinyglobby: 0.2.10 - tree-kill: 1.2.2 - optionalDependencies: - '@swc/core': 1.8.0(@swc/helpers@0.5.13) - postcss: 8.4.49 - typescript: 5.5.4 - transitivePeerDependencies: - - jiti - - supports-color - - tsx - - yaml - tsutils@3.21.0(typescript@5.5.4): dependencies: tslib: 1.14.1 @@ -23628,32 +24191,32 @@ snapshots: dependencies: safe-buffer: 5.2.1 - turbo-darwin-64@1.13.3: + turbo-darwin-64@2.3.3: optional: true - turbo-darwin-arm64@1.13.3: + turbo-darwin-arm64@2.3.3: optional: true - turbo-linux-64@1.13.3: + turbo-linux-64@2.3.3: optional: true - turbo-linux-arm64@1.13.3: + turbo-linux-arm64@2.3.3: optional: true - turbo-windows-64@1.13.3: + turbo-windows-64@2.3.3: optional: true - turbo-windows-arm64@1.13.3: + turbo-windows-arm64@2.3.3: optional: true - turbo@1.13.3: + turbo@2.3.3: optionalDependencies: - turbo-darwin-64: 1.13.3 - turbo-darwin-arm64: 1.13.3 - turbo-linux-64: 1.13.3 - turbo-linux-arm64: 1.13.3 - turbo-windows-64: 1.13.3 - turbo-windows-arm64: 1.13.3 + turbo-darwin-64: 2.3.3 + turbo-darwin-arm64: 2.3.3 + turbo-linux-64: 2.3.3 + turbo-linux-arm64: 2.3.3 + turbo-windows-64: 2.3.3 + turbo-windows-arm64: 2.3.3 type-check@0.4.0: dependencies: @@ -23661,6 +24224,8 @@ snapshots: type-detect@4.0.8: {} + type-detect@4.1.0: {} + type-fest@0.20.2: {} type-fest@0.21.3: {} @@ -23673,7 +24238,7 @@ snapshots: type-fest@3.13.1: {} - type-fest@4.27.0: {} + type-fest@4.30.1: {} type-is@1.6.18: dependencies: @@ -23682,35 +24247,36 @@ snapshots: typed-array-buffer@1.0.2: dependencies: - call-bind: 1.0.7 + call-bind: 1.0.8 es-errors: 1.3.0 is-typed-array: 1.1.13 typed-array-byte-length@1.0.1: dependencies: - call-bind: 1.0.7 + call-bind: 1.0.8 for-each: 0.3.3 - gopd: 1.0.1 - has-proto: 1.0.3 + gopd: 1.2.0 + has-proto: 1.2.0 is-typed-array: 1.1.13 - typed-array-byte-offset@1.0.2: + typed-array-byte-offset@1.0.3: dependencies: available-typed-arrays: 1.0.7 - call-bind: 1.0.7 + call-bind: 1.0.8 for-each: 0.3.3 - gopd: 1.0.1 - has-proto: 1.0.3 + gopd: 1.2.0 + has-proto: 1.2.0 is-typed-array: 1.1.13 + reflect.getprototypeof: 1.0.8 - typed-array-length@1.0.6: + typed-array-length@1.0.7: dependencies: - call-bind: 1.0.7 + call-bind: 1.0.8 for-each: 0.3.3 - gopd: 1.0.1 - has-proto: 1.0.3 + gopd: 1.2.0 is-typed-array: 1.1.13 possible-typed-array-names: 1.0.0 + reflect.getprototypeof: 1.0.8 typedarray-to-buffer@3.1.5: dependencies: @@ -23732,10 +24298,10 @@ snapshots: unbox-primitive@1.0.2: dependencies: - call-bind: 1.0.7 + call-bind: 1.0.8 has-bigints: 1.0.2 - has-symbols: 1.0.3 - which-boxed-primitive: 1.0.2 + has-symbols: 1.1.0 + which-boxed-primitive: 1.1.0 unbzip2-stream@1.4.3: dependencies: @@ -23746,7 +24312,9 @@ snapshots: undefsafe@2.0.5: {} - undici-types@6.19.8: {} + undici-types@6.20.0: {} + + undici@6.21.0: {} unenv@1.10.0: dependencies: @@ -23774,10 +24342,10 @@ snapshots: '@types/concat-stream': 2.0.3 '@types/debug': 4.1.12 '@types/is-empty': 1.2.3 - '@types/node': 22.9.0 + '@types/node': 22.10.2 '@types/unist': 3.0.3 concat-stream: 2.0.0 - debug: 4.3.7(supports-color@5.5.0) + debug: 4.4.0(supports-color@9.4.0) extend: 3.0.2 glob: 10.4.5 ignore: 6.0.2 @@ -23791,7 +24359,7 @@ snapshots: vfile-message: 4.0.2 vfile-reporter: 8.1.1 vfile-statistics: 3.0.0 - yaml: 2.6.0 + yaml: 2.6.1 transitivePeerDependencies: - bluebird - supports-color @@ -23892,9 +24460,9 @@ snapshots: upath@2.0.1: {} - update-browserslist-db@1.1.1(browserslist@4.24.2): + update-browserslist-db@1.1.1(browserslist@4.24.3): dependencies: - browserslist: 4.24.2 + browserslist: 4.24.3 escalade: 3.2.0 picocolors: 1.1.1 @@ -23919,6 +24487,8 @@ snapshots: url-join@4.0.1: {} + url-join@5.0.0: {} + url-parse@1.5.10: dependencies: querystringify: 2.2.0 @@ -23926,9 +24496,9 @@ snapshots: urlpattern-polyfill@8.0.2: {} - use-sync-external-store@1.2.2(react@18.3.1): + use-sync-external-store@1.4.0(react@19.0.0): dependencies: - react: 18.3.1 + react: 19.0.0 useless-lib@2.1.0: {} @@ -23940,7 +24510,7 @@ snapshots: utils-merge@1.0.1: {} - uuid@11.0.2: {} + uuid@11.0.3: {} uuid@8.3.2: {} @@ -23972,6 +24542,8 @@ snapshots: validate-npm-package-name@5.0.1: {} + validate-npm-package-name@6.0.0: {} + vary@1.1.2: {} version-guard@1.1.3: {} @@ -24017,7 +24589,7 @@ snapshots: dependencies: chalk: 4.1.2 commander: 9.5.0 - debug: 4.3.7(supports-color@5.5.0) + debug: 4.3.7(supports-color@9.4.0) transitivePeerDependencies: - supports-color @@ -24047,16 +24619,14 @@ snapshots: webidl-conversions@3.0.1: {} - webidl-conversions@4.0.2: {} - webidl-conversions@7.0.0: {} - webpack-cli@5.1.4(webpack-dev-server@5.1.0)(webpack@5.96.1): + webpack-cli@5.1.4(webpack-dev-server@5.2.0)(webpack@5.97.1): dependencies: '@discoveryjs/json-ext': 0.5.7 - '@webpack-cli/configtest': 2.1.1(webpack-cli@5.1.4(webpack-dev-server@5.1.0)(webpack@5.96.1))(webpack@5.96.1(@swc/core@1.8.0(@swc/helpers@0.5.13))(webpack-cli@5.1.4)) - '@webpack-cli/info': 2.0.2(webpack-cli@5.1.4(webpack-dev-server@5.1.0)(webpack@5.96.1))(webpack@5.96.1(@swc/core@1.8.0(@swc/helpers@0.5.13))(webpack-cli@5.1.4)) - '@webpack-cli/serve': 2.0.5(webpack-cli@5.1.4(webpack-dev-server@5.1.0)(webpack@5.96.1))(webpack-dev-server@5.1.0(webpack-cli@5.1.4)(webpack@5.96.1))(webpack@5.96.1(@swc/core@1.8.0(@swc/helpers@0.5.13))(webpack-cli@5.1.4)) + '@webpack-cli/configtest': 2.1.1(webpack-cli@5.1.4(webpack-dev-server@5.2.0)(webpack@5.97.1))(webpack@5.97.1(@swc/core@1.10.1(@swc/helpers@0.5.15))(webpack-cli@5.1.4)) + '@webpack-cli/info': 2.0.2(webpack-cli@5.1.4(webpack-dev-server@5.2.0)(webpack@5.97.1))(webpack@5.97.1(@swc/core@1.10.1(@swc/helpers@0.5.15))(webpack-cli@5.1.4)) + '@webpack-cli/serve': 2.0.5(webpack-cli@5.1.4(webpack-dev-server@5.2.0)(webpack@5.97.1))(webpack-dev-server@5.2.0(webpack-cli@5.1.4)(webpack@5.97.1))(webpack@5.97.1(@swc/core@1.10.1(@swc/helpers@0.5.15))(webpack-cli@5.1.4)) colorette: 2.0.20 commander: 10.0.1 cross-spawn: 7.0.6 @@ -24065,34 +24635,34 @@ snapshots: import-local: 3.2.0 interpret: 3.1.1 rechoir: 0.8.0 - webpack: 5.96.1(@swc/core@1.8.0(@swc/helpers@0.5.13))(webpack-cli@5.1.4) + webpack: 5.97.1(@swc/core@1.10.1(@swc/helpers@0.5.15))(webpack-cli@5.1.4) webpack-merge: 5.10.0 optionalDependencies: - webpack-dev-server: 5.1.0(webpack-cli@5.1.4)(webpack@5.96.1) + webpack-dev-server: 5.2.0(webpack-cli@5.1.4)(webpack@5.97.1) - webpack-dev-middleware@7.4.2(webpack@5.96.1(@swc/core@1.8.0(@swc/helpers@0.5.13))(webpack-cli@5.1.4)): + webpack-dev-middleware@7.4.2(webpack@5.97.1(@swc/core@1.10.1(@swc/helpers@0.5.15))(webpack-cli@5.1.4)): dependencies: colorette: 2.0.20 - memfs: 4.14.0 + memfs: 4.15.0 mime-types: 2.1.35 on-finished: 2.4.1 range-parser: 1.2.1 - schema-utils: 4.2.0 + schema-utils: 4.3.0 optionalDependencies: - webpack: 5.96.1(@swc/core@1.8.0(@swc/helpers@0.5.13))(webpack-cli@5.1.4) + webpack: 5.97.1(@swc/core@1.10.1(@swc/helpers@0.5.15))(webpack-cli@5.1.4) - webpack-dev-middleware@7.4.2(webpack@5.96.1(@swc/core@1.8.0(@swc/helpers@0.5.13))): + webpack-dev-middleware@7.4.2(webpack@5.97.1(@swc/core@1.10.1(@swc/helpers@0.5.15))): dependencies: colorette: 2.0.20 - memfs: 4.14.0 + memfs: 4.15.0 mime-types: 2.1.35 on-finished: 2.4.1 range-parser: 1.2.1 - schema-utils: 4.2.0 + schema-utils: 4.3.0 optionalDependencies: - webpack: 5.96.1(@swc/core@1.8.0(@swc/helpers@0.5.13)) + webpack: 5.97.1(@swc/core@1.10.1(@swc/helpers@0.5.15)) - webpack-dev-server@5.1.0(webpack-cli@5.1.4)(webpack@5.96.1): + webpack-dev-server@5.2.0(webpack-cli@5.1.4)(webpack@5.97.1): dependencies: '@types/bonjour': 3.5.13 '@types/connect-history-api-fallback': 1.5.4 @@ -24107,31 +24677,30 @@ snapshots: colorette: 2.0.20 compression: 1.7.5 connect-history-api-fallback: 2.0.0 - express: 4.21.1 + express: 4.21.2 graceful-fs: 4.2.11 - html-entities: 2.5.2 http-proxy-middleware: 2.0.7(@types/express@4.17.21)(debug@4.3.7) ipaddr.js: 2.2.0 launch-editor: 2.9.1 open: 10.1.0 p-retry: 6.2.1 - schema-utils: 4.2.0 + schema-utils: 4.3.0 selfsigned: 2.4.1 serve-index: 1.9.1 sockjs: 0.3.24 spdy: 4.0.2 - webpack-dev-middleware: 7.4.2(webpack@5.96.1(@swc/core@1.8.0(@swc/helpers@0.5.13))(webpack-cli@5.1.4)) + webpack-dev-middleware: 7.4.2(webpack@5.97.1(@swc/core@1.10.1(@swc/helpers@0.5.15))(webpack-cli@5.1.4)) ws: 8.18.0 optionalDependencies: - webpack: 5.96.1(@swc/core@1.8.0(@swc/helpers@0.5.13))(webpack-cli@5.1.4) - webpack-cli: 5.1.4(webpack-dev-server@5.1.0)(webpack@5.96.1) + webpack: 5.97.1(@swc/core@1.10.1(@swc/helpers@0.5.15))(webpack-cli@5.1.4) + webpack-cli: 5.1.4(webpack-dev-server@5.2.0)(webpack@5.97.1) transitivePeerDependencies: - bufferutil - debug - supports-color - utf-8-validate - webpack-dev-server@5.1.0(webpack@5.96.1(@swc/core@1.8.0(@swc/helpers@0.5.13))): + webpack-dev-server@5.2.0(webpack@5.97.1(@swc/core@1.10.1(@swc/helpers@0.5.15))): dependencies: '@types/bonjour': 3.5.13 '@types/connect-history-api-fallback': 1.5.4 @@ -24146,23 +24715,22 @@ snapshots: colorette: 2.0.20 compression: 1.7.5 connect-history-api-fallback: 2.0.0 - express: 4.21.1 + express: 4.21.2 graceful-fs: 4.2.11 - html-entities: 2.5.2 http-proxy-middleware: 2.0.7(@types/express@4.17.21)(debug@4.3.7) ipaddr.js: 2.2.0 launch-editor: 2.9.1 open: 10.1.0 p-retry: 6.2.1 - schema-utils: 4.2.0 + schema-utils: 4.3.0 selfsigned: 2.4.1 serve-index: 1.9.1 sockjs: 0.3.24 spdy: 4.0.2 - webpack-dev-middleware: 7.4.2(webpack@5.96.1(@swc/core@1.8.0(@swc/helpers@0.5.13))) + webpack-dev-middleware: 7.4.2(webpack@5.97.1(@swc/core@1.10.1(@swc/helpers@0.5.15))) ws: 8.18.0 optionalDependencies: - webpack: 5.96.1(@swc/core@1.8.0(@swc/helpers@0.5.13)) + webpack: 5.97.1(@swc/core@1.10.1(@swc/helpers@0.5.15)) transitivePeerDependencies: - bufferutil - debug @@ -24177,7 +24745,7 @@ snapshots: webpack-sources@3.2.3: {} - webpack@5.96.1(@swc/core@1.8.0(@swc/helpers@0.5.13)): + webpack@5.97.1(@swc/core@1.10.1(@swc/helpers@0.5.15)): dependencies: '@types/eslint-scope': 3.7.7 '@types/estree': 1.0.6 @@ -24185,7 +24753,7 @@ snapshots: '@webassemblyjs/wasm-edit': 1.14.1 '@webassemblyjs/wasm-parser': 1.14.1 acorn: 8.14.0 - browserslist: 4.24.2 + browserslist: 4.24.3 chrome-trace-event: 1.0.4 enhanced-resolve: 5.17.1 es-module-lexer: 1.5.4 @@ -24199,7 +24767,7 @@ snapshots: neo-async: 2.6.2 schema-utils: 3.3.0 tapable: 2.2.1 - terser-webpack-plugin: 5.3.10(@swc/core@1.8.0(@swc/helpers@0.5.13))(webpack@5.96.1(@swc/core@1.8.0(@swc/helpers@0.5.13))) + terser-webpack-plugin: 5.3.11(@swc/core@1.10.1(@swc/helpers@0.5.15))(webpack@5.97.1(@swc/core@1.10.1(@swc/helpers@0.5.15))) watchpack: 2.4.2 webpack-sources: 3.2.3 transitivePeerDependencies: @@ -24207,7 +24775,7 @@ snapshots: - esbuild - uglify-js - webpack@5.96.1(@swc/core@1.8.0(@swc/helpers@0.5.13))(webpack-cli@5.1.4): + webpack@5.97.1(@swc/core@1.10.1(@swc/helpers@0.5.15))(webpack-cli@5.1.4): dependencies: '@types/eslint-scope': 3.7.7 '@types/estree': 1.0.6 @@ -24215,7 +24783,7 @@ snapshots: '@webassemblyjs/wasm-edit': 1.14.1 '@webassemblyjs/wasm-parser': 1.14.1 acorn: 8.14.0 - browserslist: 4.24.2 + browserslist: 4.24.3 chrome-trace-event: 1.0.4 enhanced-resolve: 5.17.1 es-module-lexer: 1.5.4 @@ -24229,11 +24797,11 @@ snapshots: neo-async: 2.6.2 schema-utils: 3.3.0 tapable: 2.2.1 - terser-webpack-plugin: 5.3.10(@swc/core@1.8.0(@swc/helpers@0.5.13))(webpack@5.96.1(@swc/core@1.8.0(@swc/helpers@0.5.13))(webpack-cli@5.1.4)) + terser-webpack-plugin: 5.3.11(@swc/core@1.10.1(@swc/helpers@0.5.15))(webpack@5.97.1(@swc/core@1.10.1(@swc/helpers@0.5.15))(webpack-cli@5.1.4)) watchpack: 2.4.2 webpack-sources: 3.2.3 optionalDependencies: - webpack-cli: 5.1.4(webpack-dev-server@5.1.0)(webpack@5.96.1) + webpack-cli: 5.1.4(webpack-dev-server@5.2.0)(webpack@5.97.1) transitivePeerDependencies: - '@swc/core' - esbuild @@ -24265,36 +24833,31 @@ snapshots: tr46: 0.0.3 webidl-conversions: 3.0.1 - whatwg-url@7.1.0: - dependencies: - lodash.sortby: 4.7.0 - tr46: 1.0.1 - webidl-conversions: 4.0.2 - when-exit@2.1.3: {} - which-boxed-primitive@1.0.2: + which-boxed-primitive@1.1.0: dependencies: - is-bigint: 1.0.4 - is-boolean-object: 1.1.2 - is-number-object: 1.0.7 - is-string: 1.0.7 - is-symbol: 1.0.4 + is-bigint: 1.1.0 + is-boolean-object: 1.2.1 + is-number-object: 1.1.1 + is-string: 1.1.1 + is-symbol: 1.1.1 - which-builtin-type@1.1.4: + which-builtin-type@1.2.1: dependencies: - function.prototype.name: 1.1.6 + call-bound: 1.0.3 + function.prototype.name: 1.1.7 has-tostringtag: 1.0.2 is-async-function: 2.0.0 - is-date-object: 1.0.5 - is-finalizationregistry: 1.0.2 + is-date-object: 1.1.0 + is-finalizationregistry: 1.1.0 is-generator-function: 1.0.10 - is-regex: 1.1.4 - is-weakref: 1.0.2 + is-regex: 1.2.1 + is-weakref: 1.1.0 isarray: 2.0.5 - which-boxed-primitive: 1.0.2 + which-boxed-primitive: 1.1.0 which-collection: 1.0.2 - which-typed-array: 1.1.15 + which-typed-array: 1.1.16 which-collection@1.0.2: dependencies: @@ -24303,12 +24866,12 @@ snapshots: is-weakmap: 2.0.2 is-weakset: 2.0.3 - which-typed-array@1.1.15: + which-typed-array@1.1.16: dependencies: available-typed-arrays: 1.0.7 - call-bind: 1.0.7 + call-bind: 1.0.8 for-each: 0.3.3 - gopd: 1.0.1 + gopd: 1.2.0 has-tostringtag: 1.0.2 which@1.3.1: @@ -24363,8 +24926,6 @@ snapshots: word-wrap@1.2.5: {} - wordwrap@0.0.3: {} - wrap-ansi@6.2.0: dependencies: ansi-styles: 4.3.0 @@ -24425,19 +24986,19 @@ snapshots: y18n@5.0.8: {} - yallist@2.1.2: {} - yallist@3.1.1: {} yallist@4.0.0: {} + yallist@5.0.0: {} + yaml-eslint-parser@1.2.3: dependencies: eslint-visitor-keys: 3.4.3 lodash: 4.17.21 - yaml: 2.6.0 + yaml: 2.6.1 - yaml@2.6.0: {} + yaml@2.6.1: {} yargs-parser@20.2.9: {} @@ -24484,12 +25045,18 @@ snapshots: compress-commons: 6.0.2 readable-stream: 4.5.2 - zod-validation-error@3.4.0(zod@3.23.8): + zod-package-json@1.0.3: dependencies: - zod: 3.23.8 + zod: 3.24.1 + + zod-validation-error@3.4.0(zod@3.24.1): + dependencies: + zod: 3.24.1 zod@3.23.8: {} + zod@3.24.1: {} + zone.js@0.14.10: {} zwitch@2.0.4: {} diff --git a/samples/basic-mix/another-remote-module/.browserslistrc b/samples/basic-mix/another-remote-module/.browserslistrc new file mode 100644 index 000000000..f8a8f866a --- /dev/null +++ b/samples/basic-mix/another-remote-module/.browserslistrc @@ -0,0 +1 @@ +extends @workleap/browserslist-config diff --git a/samples/basic-mix/another-remote-module/.eslintignore b/samples/basic-mix/another-remote-module/.eslintignore new file mode 100644 index 000000000..de4d1f007 --- /dev/null +++ b/samples/basic-mix/another-remote-module/.eslintignore @@ -0,0 +1,2 @@ +dist +node_modules diff --git a/samples/basic-mix/another-remote-module/.eslintrc.json b/samples/basic-mix/another-remote-module/.eslintrc.json new file mode 100644 index 000000000..ab20e5046 --- /dev/null +++ b/samples/basic-mix/another-remote-module/.eslintrc.json @@ -0,0 +1,5 @@ +{ + "$schema": "https://json.schemastore.org/eslintrc", + "root": true, + "extends": "plugin:@workleap/web-application" +} diff --git a/samples/endpoints/local-module/nodemon.isolated.json b/samples/basic-mix/another-remote-module/nodemon.json similarity index 100% rename from samples/endpoints/local-module/nodemon.isolated.json rename to samples/basic-mix/another-remote-module/nodemon.json diff --git a/samples/basic-mix/another-remote-module/package.json b/samples/basic-mix/another-remote-module/package.json new file mode 100644 index 000000000..da320c66e --- /dev/null +++ b/samples/basic-mix/another-remote-module/package.json @@ -0,0 +1,53 @@ +{ + "name": "@basic-mix/another-remote-module", + "author": "Workleap", + "version": "0.0.0", + "description": "Another remote module to showcase Squide.", + "private": true, + "license": "Apache-2.0", + "type": "module", + "scripts": { + "dev": "nodemon", + "dev-isolated": "cross-env ISOLATED=true pnpm dev", + "build": "webpack --config webpack.build.js", + "serve-build": "pnpm http-server dist -p 8085 -P http://localhost:8085? -c-1", + "eslint": "eslint . --max-warnings=-0 --cache --cache-location node_modules/.cache/eslint", + "typecheck": "tsc" + }, + "dependencies": { + "@basic-mix/shared": "workspace:*", + "@basic-mix/shell": "workspace:*", + "@react-aria/toast": "3.0.0-beta.18", + "@react-stately/toast": "3.0.0-beta.7", + "@squide/fakes": "workspace:*", + "@squide/firefly": "workspace:*", + "react": "19.0.0", + "react-dom": "19.0.0", + "react-router-dom": "6.27.0", + "useless-lib": "3.0.0" + }, + "devDependencies": { + "@squide/firefly-webpack-configs": "workspace:*", + "@swc/core": "1.10.1", + "@swc/helpers": "0.5.15", + "@types/react": "19.0.1", + "@types/react-dom": "19.0.2", + "@typescript-eslint/parser": "8.18.0", + "@workleap/browserslist-config": "2.0.1", + "@workleap/eslint-plugin": "3.2.5", + "@workleap/swc-configs": "2.2.3", + "@workleap/typescript-configs": "3.0.2", + "browserslist": "4.24.3", + "cross-env": "7.0.3", + "eslint": "8.57.0", + "http-server": "14.1.1", + "nodemon": "3.1.9", + "typescript": "5.5.4", + "webpack": "5.97.1", + "webpack-cli": "5.1.4", + "webpack-dev-server": "5.2.0" + }, + "engines": { + "node": ">=21.1.0" + } +} diff --git a/samples/basic-mix/another-remote-module/public/index.html b/samples/basic-mix/another-remote-module/public/index.html new file mode 100644 index 000000000..9b3f674a4 --- /dev/null +++ b/samples/basic-mix/another-remote-module/public/index.html @@ -0,0 +1,8 @@ + + + + + +
+ + diff --git a/samples/basic-mix/another-remote-module/src/OfficevibeTab.tsx b/samples/basic-mix/another-remote-module/src/OfficevibeTab.tsx new file mode 100644 index 000000000..772078dcb --- /dev/null +++ b/samples/basic-mix/another-remote-module/src/OfficevibeTab.tsx @@ -0,0 +1,11 @@ +export function OfficevibeTab() { + return ( + <> +

Officevibe

+

This tab is served by @basic/another-remote-module

+ + ); +} + +/** @alias */ +export const Component = OfficevibeTab; diff --git a/samples/basic-mix/another-remote-module/src/dev/App.tsx b/samples/basic-mix/another-remote-module/src/dev/App.tsx new file mode 100644 index 000000000..1f970f425 --- /dev/null +++ b/samples/basic-mix/another-remote-module/src/dev/App.tsx @@ -0,0 +1,7 @@ +import { AppRouter } from "@basic-mix/shell"; + +export function App() { + return ( + + ); +} diff --git a/samples/basic-mix/another-remote-module/src/dev/DevHomePage.tsx b/samples/basic-mix/another-remote-module/src/dev/DevHomePage.tsx new file mode 100644 index 000000000..d3a4e66a0 --- /dev/null +++ b/samples/basic-mix/another-remote-module/src/dev/DevHomePage.tsx @@ -0,0 +1,8 @@ +export function DevHomePage() { + return ( +
+

Another remote module development home page

+

Hey!

+
+ ); +} diff --git a/samples/basic-mix/another-remote-module/src/dev/index.tsx b/samples/basic-mix/another-remote-module/src/dev/index.tsx new file mode 100644 index 000000000..e21c0ad96 --- /dev/null +++ b/samples/basic-mix/another-remote-module/src/dev/index.tsx @@ -0,0 +1,30 @@ +import { registerLayouts } from "@basic-mix/shared"; +import { registerShell } from "@basic-mix/shell"; +import { ConsoleLogger, FireflyRuntime, RuntimeContext, bootstrap } from "@squide/firefly"; +import { StrictMode } from "react"; +import { createRoot } from "react-dom/client"; +import { register as registerModule } from "../register.tsx"; +import { App } from "./App.tsx"; +import { registerDev } from "./register.tsx"; + +// Create the shell runtime. +// Services and loggers could be reuse through a shared packages or faked when in isolation. +const runtime = new FireflyRuntime({ + loggers: [x => new ConsoleLogger(x)] +}); + +await bootstrap(runtime, { + localModules: [registerShell(), registerLayouts(), registerDev, registerModule] +}); + +const root = createRoot(document.getElementById("root")!); + +root.render( + + + + + +); + + diff --git a/samples/basic-mix/another-remote-module/src/dev/register.tsx b/samples/basic-mix/another-remote-module/src/dev/register.tsx new file mode 100644 index 000000000..d9b9a0266 --- /dev/null +++ b/samples/basic-mix/another-remote-module/src/dev/register.tsx @@ -0,0 +1,9 @@ +import type { FireflyRuntime, ModuleRegisterFunction } from "@squide/firefly"; +import { DevHomePage } from "./DevHomePage.tsx"; + +export const registerDev: ModuleRegisterFunction = runtime => { + runtime.registerRoute({ + index: true, + element: + }); +}; diff --git a/samples/basic-mix/another-remote-module/src/register.tsx b/samples/basic-mix/another-remote-module/src/register.tsx new file mode 100644 index 000000000..afd67c8c6 --- /dev/null +++ b/samples/basic-mix/another-remote-module/src/register.tsx @@ -0,0 +1,36 @@ +import type { FireflyRuntime, ModuleRegisterFunction } from "@squide/firefly"; + +// eslint-disable-next-line @typescript-eslint/ban-ts-comment +// @ts-ignore +import { version } from "useless-lib"; + +console.log("[basic-sample] another-remote-module:", version); + +function registerRoutes(runtime: FireflyRuntime) { + runtime.registerRoute({ + path: "/federated-tabs/officevibe", + lazy: () => import("./OfficevibeTab.tsx") + }, { + parentPath: "/federated-tabs" + }); + + runtime.registerNavigationItem({ + $label: "Officevibe", + to: "/federated-tabs/officevibe" + }, { + menuId: "/federated-tabs" + }); + + // Register nested navigation link + + runtime.registerNavigationItem({ + $label: "Child 3", + to: "#" + }, { + sectionId: "section" + }); +} + +export const register: ModuleRegisterFunction = runtime => { + return registerRoutes(runtime); +}; diff --git a/samples/basic/another-remote-module/swc.build.js b/samples/basic-mix/another-remote-module/swc.build.js similarity index 100% rename from samples/basic/another-remote-module/swc.build.js rename to samples/basic-mix/another-remote-module/swc.build.js diff --git a/samples/basic/another-remote-module/swc.dev.js b/samples/basic-mix/another-remote-module/swc.dev.js similarity index 100% rename from samples/basic/another-remote-module/swc.dev.js rename to samples/basic-mix/another-remote-module/swc.dev.js diff --git a/samples/basic-mix/another-remote-module/tsconfig.json b/samples/basic-mix/another-remote-module/tsconfig.json new file mode 100644 index 000000000..0983bee73 --- /dev/null +++ b/samples/basic-mix/another-remote-module/tsconfig.json @@ -0,0 +1,11 @@ +{ + "extends": "@workleap/typescript-configs/web-application.json", + "compilerOptions": { + "incremental": true, + "tsBuildInfoFile": "node_modules/.cache/tsbuildinfo.json", + "paths": { + "@squide/firefly-webpack-configs": ["../../../packages/firefly-webpack-configs/src/index.ts"] + } + }, + "exclude": ["dist", "node_modules"] +} diff --git a/samples/basic/another-remote-module/webpack.build.js b/samples/basic-mix/another-remote-module/webpack.build.js similarity index 100% rename from samples/basic/another-remote-module/webpack.build.js rename to samples/basic-mix/another-remote-module/webpack.build.js diff --git a/samples/basic/another-remote-module/webpack.common.js b/samples/basic-mix/another-remote-module/webpack.common.js similarity index 100% rename from samples/basic/another-remote-module/webpack.common.js rename to samples/basic-mix/another-remote-module/webpack.common.js diff --git a/samples/basic/another-remote-module/webpack.dev.js b/samples/basic-mix/another-remote-module/webpack.dev.js similarity index 99% rename from samples/basic/another-remote-module/webpack.dev.js rename to samples/basic-mix/another-remote-module/webpack.dev.js index f348fb278..bd04818e3 100644 --- a/samples/basic/another-remote-module/webpack.dev.js +++ b/samples/basic-mix/another-remote-module/webpack.dev.js @@ -8,7 +8,7 @@ import { getSharedDependencies } from "./webpack.common.js"; let config; if (!process.env.ISOLATED) { - config = defineDevRemoteModuleConfig(swcConfig, "remote2", 8082, { + config = defineDevRemoteModuleConfig(swcConfig, "remote2", 8085, { sharedDependencies: getSharedDependencies(false), environmentVariables: { "NETLIFY": process.env.NETLIFY === "true" diff --git a/samples/basic-mix/host/.browserslistrc b/samples/basic-mix/host/.browserslistrc new file mode 100644 index 000000000..f8a8f866a --- /dev/null +++ b/samples/basic-mix/host/.browserslistrc @@ -0,0 +1 @@ +extends @workleap/browserslist-config diff --git a/samples/basic-mix/host/.eslintignore b/samples/basic-mix/host/.eslintignore new file mode 100644 index 000000000..de4d1f007 --- /dev/null +++ b/samples/basic-mix/host/.eslintignore @@ -0,0 +1,2 @@ +dist +node_modules diff --git a/samples/basic-mix/host/.eslintrc.json b/samples/basic-mix/host/.eslintrc.json new file mode 100644 index 000000000..ab20e5046 --- /dev/null +++ b/samples/basic-mix/host/.eslintrc.json @@ -0,0 +1,5 @@ +{ + "$schema": "https://json.schemastore.org/eslintrc", + "root": true, + "extends": "plugin:@workleap/web-application" +} diff --git a/samples/basic-mix/host/_redirects b/samples/basic-mix/host/_redirects new file mode 100644 index 000000000..7797f7c6a --- /dev/null +++ b/samples/basic-mix/host/_redirects @@ -0,0 +1 @@ +/* /index.html 200 diff --git a/samples/basic-mix/host/nodemon.json b/samples/basic-mix/host/nodemon.json new file mode 100644 index 000000000..c97d4b0eb --- /dev/null +++ b/samples/basic-mix/host/nodemon.json @@ -0,0 +1,5 @@ +{ + "watch": ["rsbuild.dev.ts", "rsbuild.common.ts"], + "exec": "rsbuild dev --config rsbuild.dev.ts", + "verbose": true +} diff --git a/samples/basic-mix/host/package.json b/samples/basic-mix/host/package.json new file mode 100644 index 000000000..547c411d7 --- /dev/null +++ b/samples/basic-mix/host/package.json @@ -0,0 +1,53 @@ +{ + "name": "@basic-mix/host", + "author": "Workleap", + "version": "0.0.0", + "description": "Host application to showcase Squide.", + "private": true, + "license": "Apache-2.0", + "type": "module", + "scripts": { + "dev": "nodemon", + "build": "pnpm build:rsbuild && pnpm build:copy-redirects", + "build:rsbuild": "rsbuild build --config rsbuild.build.ts", + "build:copy-redirects": "copyfiles _redirects dist", + "build:copy-public-files": "copyfiles -u 1 public/favicon.png dist", + "serve-build": "pnpm http-server dist -p 8083 -P http://localhost:8083? -c-1", + "eslint": "eslint . --max-warnings=-0 --cache --cache-location node_modules/.cache/eslint", + "typecheck": "tsc" + }, + "dependencies": { + "@basic-mix/local-module": "workspace:*", + "@basic-mix/shared": "workspace:*", + "@basic-mix/shell": "workspace:*", + "@react-aria/toast": "3.0.0-beta.18", + "@react-stately/toast": "3.0.0-beta.7", + "@squide/fakes": "workspace:*", + "@squide/firefly": "workspace:*", + "@tanstack/react-query": "5.62.7", + "react": "19.0.0", + "react-dom": "19.0.0", + "react-router-dom": "6.27.0", + "useless-lib": "^2.0.0" + }, + "devDependencies": { + "@rsbuild/core": "1.1.10", + "@squide/firefly-rsbuild-configs": "workspace:*", + "@types/react": "19.0.1", + "@types/react-dom": "19.0.2", + "@typescript-eslint/parser": "8.18.0", + "@workleap/browserslist-config": "2.0.1", + "@workleap/eslint-plugin": "3.2.5", + "@workleap/typescript-configs": "3.0.2", + "browserslist": "4.24.3", + "copyfiles": "2.4.1", + "eslint": "8.57.0", + "http-server": "14.1.1", + "netlify-cli": "17.38.0", + "nodemon": "3.1.9", + "typescript": "5.5.4" + }, + "engines": { + "node": ">=21.1.0" + } +} diff --git a/samples/basic-mix/host/public/favicon.png b/samples/basic-mix/host/public/favicon.png new file mode 100644 index 000000000..47157f6b0 Binary files /dev/null and b/samples/basic-mix/host/public/favicon.png differ diff --git a/samples/basic-mix/host/public/index.html b/samples/basic-mix/host/public/index.html new file mode 100644 index 000000000..bfdf4c2bf --- /dev/null +++ b/samples/basic-mix/host/public/index.html @@ -0,0 +1,9 @@ + + + + + + +
+ + diff --git a/samples/basic-mix/host/remotes.ts b/samples/basic-mix/host/remotes.ts new file mode 100644 index 000000000..8c22d75ab --- /dev/null +++ b/samples/basic-mix/host/remotes.ts @@ -0,0 +1,12 @@ +import type { RemoteDefinition } from "@squide/firefly-rsbuild-configs"; + +export const Remotes: RemoteDefinition[] = [ + { + name: "remote1", + url: process.env.NETLIFY === "true" ? "https://squide-basic-remote-module.netlify.app" : "http://localhost:8084" + }, + { + name: "remote2", + url: process.env.NETLIFY === "true" ? "https://squide-basic-another-remote-module.netlify.app" : "http://localhost:8085" + } +]; diff --git a/samples/basic-mix/host/rsbuild.build.ts b/samples/basic-mix/host/rsbuild.build.ts new file mode 100644 index 000000000..22ab1f600 --- /dev/null +++ b/samples/basic-mix/host/rsbuild.build.ts @@ -0,0 +1,10 @@ +import { defineBuildHostConfig } from "@squide/firefly-rsbuild-configs"; +import { Remotes } from "./remotes.ts"; +import { getSharedDependencies } from "./rsbuild.common.ts"; + +export default defineBuildHostConfig(Remotes, { + sharedDependencies: getSharedDependencies(), + environmentVariables: { + "NETLIFY": process.env.NETLIFY === "true" + } +}); diff --git a/samples/basic-mix/host/rsbuild.common.ts b/samples/basic-mix/host/rsbuild.common.ts new file mode 100644 index 000000000..5c0a78de4 --- /dev/null +++ b/samples/basic-mix/host/rsbuild.common.ts @@ -0,0 +1,14 @@ +import type { ModuleFederationShared } from "@squide/firefly-rsbuild-configs"; + +export function getSharedDependencies() { + return { + "@basic/shared": { + singleton: true, + eager: true + }, + "useless-lib": { + singleton: true, + eager: true + } + } satisfies ModuleFederationShared; +} diff --git a/samples/basic-mix/host/rsbuild.dev.ts b/samples/basic-mix/host/rsbuild.dev.ts new file mode 100644 index 000000000..edcc8fa63 --- /dev/null +++ b/samples/basic-mix/host/rsbuild.dev.ts @@ -0,0 +1,11 @@ +import { defineDevHostConfig } from "@squide/firefly-rsbuild-configs"; +import { Remotes } from "./remotes.ts"; +import { getSharedDependencies } from "./rsbuild.common.ts"; + +export default defineDevHostConfig(8083, Remotes, { + overlay: false, + sharedDependencies: getSharedDependencies(), + environmentVariables: { + "NETLIFY": process.env.NETLIFY === "true" + } +}); diff --git a/samples/basic-mix/host/src/App.tsx b/samples/basic-mix/host/src/App.tsx new file mode 100644 index 000000000..11ef465dc --- /dev/null +++ b/samples/basic-mix/host/src/App.tsx @@ -0,0 +1,10 @@ +import { BackgroundColorContext } from "@basic-mix/shared"; +import { AppRouter } from "@basic-mix/shell"; + +export function App() { + return ( + + + + ); +} diff --git a/samples/basic-mix/host/src/HomePage.tsx b/samples/basic-mix/host/src/HomePage.tsx new file mode 100644 index 000000000..4954ff752 --- /dev/null +++ b/samples/basic-mix/host/src/HomePage.tsx @@ -0,0 +1,12 @@ +export function HomePage() { + return ( + <> +

Home Page

+

This page is served by @basic/host

+

Hey! Welcome to this basic sample showcasing a few features of Squide.

+ + ); +} + +/** @alias */ +export const Component = HomePage; diff --git a/samples/basic-mix/host/src/index.tsx b/samples/basic-mix/host/src/index.tsx new file mode 100644 index 000000000..364b20457 --- /dev/null +++ b/samples/basic-mix/host/src/index.tsx @@ -0,0 +1,39 @@ +import { registerLocalModule } from "@basic-mix/local-module"; +import { registerLayouts, type AppContext } from "@basic-mix/shared"; +import { registerShell } from "@basic-mix/shell"; +import { ConsoleLogger, FireflyRuntime, RuntimeContext, bootstrap } from "@squide/firefly"; +import { StrictMode } from "react"; +import { createRoot } from "react-dom/client"; +import { Remotes } from "../remotes.ts"; +import { App } from "./App.tsx"; +import { registerHost } from "./register.tsx"; + +// eslint-disable-next-line @typescript-eslint/ban-ts-comment +// @ts-ignore +import { version } from "useless-lib"; + +console.log("[basic-sample] host:", version); + +const runtime = new FireflyRuntime({ + loggers: [x => new ConsoleLogger(x)] +}); + +const context: AppContext = { + name: "Test app" +}; + +await bootstrap(runtime, { + localModules: [registerShell({ host: "@basic/host" }), registerLayouts({ host: "@basic/host" }), registerHost, registerLocalModule], + remotes: Remotes, + context +}); + +const root = createRoot(document.getElementById("root")!); + +root.render( + + + + + +); diff --git a/samples/basic-mix/host/src/register.tsx b/samples/basic-mix/host/src/register.tsx new file mode 100644 index 000000000..42ce03112 --- /dev/null +++ b/samples/basic-mix/host/src/register.tsx @@ -0,0 +1,12 @@ +import type { FireflyRuntime, ModuleRegisterFunction } from "@squide/firefly"; + +function registerRoutes(runtime: FireflyRuntime) { + runtime.registerRoute({ + index: true, + lazy: () => import("./HomePage.tsx") + }); +} + +export const registerHost: ModuleRegisterFunction = runtime => { + return registerRoutes(runtime); +}; diff --git a/samples/basic-mix/host/tsconfig.json b/samples/basic-mix/host/tsconfig.json new file mode 100644 index 000000000..bf7044627 --- /dev/null +++ b/samples/basic-mix/host/tsconfig.json @@ -0,0 +1,11 @@ +{ + "extends": "@workleap/typescript-configs/web-application.json", + "compilerOptions": { + "incremental": true, + "tsBuildInfoFile": "node_modules/.cache/tsbuildinfo.json", + "paths": { + "@squide/firefly-rsbuild-configs": ["../../../packages/firefly-rsbuild-configs/src/index.ts"] + } + }, + "exclude": ["dist", "node_modules"] +} diff --git a/samples/basic-mix/local-module/.browserslistrc b/samples/basic-mix/local-module/.browserslistrc new file mode 100644 index 000000000..f8a8f866a --- /dev/null +++ b/samples/basic-mix/local-module/.browserslistrc @@ -0,0 +1 @@ +extends @workleap/browserslist-config diff --git a/samples/basic-mix/local-module/.eslintignore b/samples/basic-mix/local-module/.eslintignore new file mode 100644 index 000000000..de4d1f007 --- /dev/null +++ b/samples/basic-mix/local-module/.eslintignore @@ -0,0 +1,2 @@ +dist +node_modules diff --git a/samples/basic-mix/local-module/.eslintrc.json b/samples/basic-mix/local-module/.eslintrc.json new file mode 100644 index 000000000..bf0564209 --- /dev/null +++ b/samples/basic-mix/local-module/.eslintrc.json @@ -0,0 +1,5 @@ +{ + "$schema": "https://json.schemastore.org/eslintrc", + "root": true, + "extends": "plugin:@workleap/react-library" +} diff --git a/samples/basic-mix/local-module/nodemon.json b/samples/basic-mix/local-module/nodemon.json new file mode 100644 index 000000000..2855bd577 --- /dev/null +++ b/samples/basic-mix/local-module/nodemon.json @@ -0,0 +1,5 @@ +{ + "watch": ["rsbuild.config.ts"], + "exec": "rsbuild dev --config rsbuild.config.ts", + "verbose": true +} diff --git a/samples/basic-mix/local-module/package.json b/samples/basic-mix/local-module/package.json new file mode 100644 index 000000000..d22218d64 --- /dev/null +++ b/samples/basic-mix/local-module/package.json @@ -0,0 +1,53 @@ +{ + "name": "@basic-mix/local-module", + "author": "Workleap", + "version": "0.0.0", + "description": "Local module to showcase Squide.", + "private": true, + "license": "Apache-2.0", + "type": "module", + "exports": "./src/register.tsx", + "scripts": { + "dev-isolated": "nodemon", + "eslint": "eslint . --max-warnings=-0 --cache --cache-location node_modules/.cache/eslint", + "typecheck": "tsc" + }, + "peerDependencies": { + "@basic-mix/shared": "*", + "@basic-mix/shell": "*", + "@react-aria/toast": "*", + "@react-stately/toast": "*", + "@squide/firefly": "*", + "react": "*", + "react-dom": "*", + "react-router-dom": "*" + }, + "dependencies": { + "@basic-mix/shared": "workspace:*", + "@basic-mix/shell": "workspace:*", + "@squide/fakes": "workspace:*", + "@squide/firefly": "workspace:*", + "@types/react": "19.0.1", + "@types/react-dom": "19.0.2", + "react": "19.0.0", + "react-dom": "19.0.0", + "react-router-dom": "6.27.0" + }, + "devDependencies": { + "@react-aria/toast": "3.0.0-beta.18", + "@react-stately/toast": "3.0.0-beta.7", + "@rsbuild/core": "1.1.10", + "@squide/firefly-rsbuild-configs": "workspace:*", + "@typescript-eslint/parser": "8.18.0", + "@workleap/browserslist-config": "2.0.1", + "@workleap/eslint-plugin": "3.2.5", + "@workleap/typescript-configs": "3.0.2", + "browserslist": "4.24.3", + "eslint": "8.57.0", + "nodemon": "3.1.9", + "typescript": "5.5.4" + }, + "engines": { + "node": ">=21.1.0" + } +} diff --git a/samples/basic-mix/local-module/public/index.html b/samples/basic-mix/local-module/public/index.html new file mode 100644 index 000000000..a667bb440 --- /dev/null +++ b/samples/basic-mix/local-module/public/index.html @@ -0,0 +1,8 @@ + + + + + +
+ + diff --git a/samples/basic-mix/local-module/rsbuild.config.ts b/samples/basic-mix/local-module/rsbuild.config.ts new file mode 100644 index 000000000..44e9101cc --- /dev/null +++ b/samples/basic-mix/local-module/rsbuild.config.ts @@ -0,0 +1,19 @@ +import { defineDevHostConfig } from "@squide/firefly-rsbuild-configs"; +import path from "node:path"; + +export default defineDevHostConfig(8080, [], { + entry: { + index: path.resolve("./src/dev/index.tsx") + }, + overlay: false, + sharedDependencies: { + "@basic/shared": { + singleton: true, + eager: true + } + }, + environmentVariables: { + "NETLIFY": process.env.NETLIFY === "true" + } +}); + diff --git a/samples/basic-mix/local-module/src/MessagePage.tsx b/samples/basic-mix/local-module/src/MessagePage.tsx new file mode 100644 index 000000000..67876c0d0 --- /dev/null +++ b/samples/basic-mix/local-module/src/MessagePage.tsx @@ -0,0 +1,45 @@ +import { useApplicationEventBusDispatcher, useToast } from "@basic-mix/shared"; +import { useCallback, useState, type ChangeEvent } from "react"; +import { Link } from "react-router-dom"; + +export function MessagePage() { + const [message, setMessage] = useState(""); + + const handleTextChange = useCallback((event: ChangeEvent) => { + setMessage(event.target.value); + }, []); + + const dispatch = useApplicationEventBusDispatcher(); + const showToast = useToast(); + + const handleSendMessage = useCallback(() => { + dispatch("write-to-host", message); + showToast(message); + setMessage(""); + }, [dispatch, showToast, setMessage, message]); + + return ( + <> +

Messaging

+

This page is served by @basic/local-module

+
+

There are a few distinctive features that are showcased with this pages:

+
    +
  • The navigation item for this page has a priority of 999, which renders it as the first item of the navbar.
  • +
  • The navigation item for this page use custom additional props to highlight the item in the navbar.
  • +
  • The "Send a message" feature showcase how Squide's event bus works.
  • +
+
+

Send a message

+

Send the following to the host application:

+