diff --git a/.github/workflows/argos.yml b/.github/workflows/argos.yml index 593addfaa1c5..1103faae4ec8 100644 --- a/.github/workflows/argos.yml +++ b/.github/workflows/argos.yml @@ -32,7 +32,8 @@ jobs: (github.event_name != 'pull_request' && github.ref_name == 'main') || (github.event_name == 'pull_request' && contains(github.event.pull_request.labels.*.name, 'Argos')) ) - runs-on: ubuntu-latest + # runs-on: ubuntu-latest + runs-on: 8-core-ubuntu steps: - name: Check out repository code uses: actions/checkout@9c091bb21b7c1c1d1991bb908d89e4e9dddfe3e0 # v7.0.0 @@ -55,5 +56,8 @@ jobs: - name: Build website fast run: pnpm argos:build - - name: Take Argos screenshots + - name: Take and upload Argos screenshots run: pnpm argos:screenshot + + - name: Upload Argos text snapshots + run: pnpm argos:upload-text-snapshots diff --git a/argos/README.md b/argos/README.md index 4386c3e9b5a1..ae6204e0f50a 100644 --- a/argos/README.md +++ b/argos/README.md @@ -4,18 +4,31 @@ We use [Argos CI](https://argos-ci.com) to detect visual regressions on Docusaur This workspace can be run manually, but is generally run through the [Argos GitHub Action](../.github/workflows/argos.yml). +## Workflow overview + The workflow execute those following steps: -- Build the website locally with `pnpm build:website:fast` +- Build the website locally with `pnpm argos:build` (a variant of `pnpm build:website:fast`) - Start the website server with `pnpm serve:website` on [http://localhost:3000](http://localhost:3000) - Take screenshots of all pages found in `sitemap.xml` with Playwright -- Upload all screenshots to [Argos CI](https://argos-ci.com) +- Upload all screenshots to [Argos CI](https://argos-ci.com) using the [Playwright reporter](https://argos-ci.com/docs/reference/playwright) +- Upload [HTML/CSS/JS files to also diff them on Argos](https://argos-ci.com/docs/learn/how-to-guides/visual-coverage/compare-non-image-files) using `pnpm argos:upload-text-snapshots` This workflow runs for `main` and PR branches, and add a commit status to each PR with a visual diff that we can easily inspect. ---- +## Run manually + +To run this manually, use: + +```bash +pnpm argos:build +pnpm argos:screenshot +pnpm argos:upload-text-snapshots +``` + +The Playwright reporter will upload the screenshots to Argos. -Some additional capabilities: +## How to modify - Use [./tests/screenshot.spec.ts](./tests/screenshot.spec.ts) to customize the screenshots we take, eventually filter out some useless sitemap pages like versioned docs - Use [./tests/screenshot.css](./tests/screenshot.css) to hide flaky CSS elements: iframe, video, gif... diff --git a/argos/package.json b/argos/package.json index be60534b07a5..639effa13a57 100644 --- a/argos/package.json +++ b/argos/package.json @@ -6,12 +6,14 @@ "private": true, "scripts": { "screenshot": "playwright test", - "upload": "pnpm dlx @argos-ci/cli upload ./screenshots/chromium", + "upload": "pnpm exec -- argos upload ./screenshots/chromium", + "upload-text-snapshots": "pnpm exec -- argos upload \"../website/build\" --build-name text-snapshots --files styles.css --files \"docs/**/*.html\" --files \"blog/**/*.html\"", "report": "playwright show-report" }, "dependencies": { - "@argos-ci/playwright": "^7.0.6", - "@playwright/test": "^1.60.0", + "@argos-ci/cli": "^6.9.0", + "@argos-ci/playwright": "^7.4.6", + "@playwright/test": "^1.62.1", "cheerio": "^1.2.0" } } diff --git a/argos/playwright.config.ts b/argos/playwright.config.ts index 9fa3904b0289..a9ee197ef6bd 100644 --- a/argos/playwright.config.ts +++ b/argos/playwright.config.ts @@ -5,18 +5,23 @@ * LICENSE file in the root directory of this source tree. */ -import {devices} from '@playwright/test'; -import type {PlaywrightTestConfig} from '@playwright/test'; +import {defineConfig, devices} from '@playwright/test'; +import {createArgosReporterOptions} from '@argos-ci/playwright/reporter'; + +const argosOptions = createArgosReporterOptions({ + uploadToArgos: true, // for now, we always upload even outside of CI + buildName: 'screenshots', +}); /** * See https://playwright.dev/docs/test-configuration. */ -const config: PlaywrightTestConfig = { +export default defineConfig({ testDir: './tests', timeout: 60000, - reporter: [['list'], ['@argos-ci/playwright/reporter']], + reporter: [['list'], ['@argos-ci/playwright/reporter', argosOptions]], // Run website production built // Need to run "pnpm build:website:fast" before @@ -32,9 +37,12 @@ const config: PlaywrightTestConfig = { name: 'chromium', use: { ...devices['Desktop Chrome'], + // Recommended by Argos + // See https://argos-ci.com/docs/learn/reliability-and-flakiness/flaky-tests/stabilize-text-rendering + launchOptions: { + args: ['--disable-lcd-text', '--font-render-hinting=none'], + }, }, }, ], -}; - -export default config; +}); diff --git a/argos/tests/screenshot.spec.ts b/argos/tests/screenshot.spec.ts index 9ceaf5ad8ce3..885c6356f509 100644 --- a/argos/tests/screenshot.spec.ts +++ b/argos/tests/screenshot.spec.ts @@ -169,7 +169,9 @@ function createPathnameTest(pathname: string) { await page.waitForFunction(waitForDocusaurusHydration); await page.addStyleTag({content: stylesheet}); // await expect(page).toHaveScreenshot({ fullPage: true, ...options }); - await argosScreenshot(page, pathnameToArgosName(pathname)); + await argosScreenshot(page, pathnameToArgosName(pathname), { + ariaSnapshot: true, + }); }); } diff --git a/package.json b/package.json index 25c7b24a0c4a..17a8b41ce526 100644 --- a/package.json +++ b/package.json @@ -35,9 +35,10 @@ "crowdin:upload:website": "crowdin upload sources --config ./crowdin-v2.yaml", "crowdin:download": "crowdin download --config ./crowdin-v2.yaml", "crowdin:download:website": "pnpm crowdin:download --language fr --language ko --language pt-BR --language zh-CN --language ja", - "argos": "pnpm argos:build && pnpm argos:screenshot", + "argos": "pnpm argos:build && pnpm argos:screenshot && argos:upload-text-snapshots", "argos:build": "cross-env DOCUSAURUS_ARGOS_BUILD=true pnpm build:website:fast --dev", "argos:screenshot": "pnpm --filter argos screenshot", + "argos:upload-text-snapshots": "pnpm --filter argos upload-text-snapshots", "canary": "pnpm canary:bumpVersion && pnpm canary:publish", "canary:getCoreVersion": "node -p \"require('./packages/docusaurus/package.json').version.split('-')[0]\"", "canary:version": "echo `pnpm --silent canary:getCoreVersion`-canary-`git rev-list --count HEAD`+`git rev-parse --short HEAD`", diff --git a/packages/docusaurus-theme-classic/src/theme/BlogTagsPostsPage/index.tsx b/packages/docusaurus-theme-classic/src/theme/BlogTagsPostsPage/index.tsx index 5895c220b26f..3f54a9ff5f23 100644 --- a/packages/docusaurus-theme-classic/src/theme/BlogTagsPostsPage/index.tsx +++ b/packages/docusaurus-theme-classic/src/theme/BlogTagsPostsPage/index.tsx @@ -7,10 +7,10 @@ import React, {type ReactNode} from 'react'; import clsx from 'clsx'; -import Translate from '@docusaurus/Translate'; import { PageMetadata, HtmlClassNameProvider, + TagsPageLinkLabel, ThemeClassNames, } from '@docusaurus/theme-common'; import {useBlogTagsPostsPageTitle} from '@docusaurus/theme-common/internal'; @@ -47,11 +47,7 @@ function BlogTagsPostsPageContent({ {title} {tag.description &&

{tag.description}

} - - View All Tags - + diff --git a/packages/docusaurus-theme-classic/src/theme/DocTagDocListPage/index.tsx b/packages/docusaurus-theme-classic/src/theme/DocTagDocListPage/index.tsx index 42446de2b075..1431f6a6aaae 100644 --- a/packages/docusaurus-theme-classic/src/theme/DocTagDocListPage/index.tsx +++ b/packages/docusaurus-theme-classic/src/theme/DocTagDocListPage/index.tsx @@ -12,9 +12,10 @@ import { PageMetadata, HtmlClassNameProvider, ThemeClassNames, + TagsPageLinkLabel, usePluralForm, } from '@docusaurus/theme-common'; -import Translate, {translate} from '@docusaurus/Translate'; +import {translate} from '@docusaurus/Translate'; import SearchMetadata from '@theme/SearchMetadata'; import type {Props} from '@theme/DocTagDocListPage'; import Unlisted from '@theme/ContentVisibility/Unlisted'; @@ -88,11 +89,7 @@ function DocTagDocListPageContent({ {title} {tag.description &&

{tag.description}

} - - View all tags - +
diff --git a/packages/docusaurus-theme-common/src/index.ts b/packages/docusaurus-theme-common/src/index.ts index 67583eb5593c..8f93ec617f99 100644 --- a/packages/docusaurus-theme-common/src/index.ts +++ b/packages/docusaurus-theme-common/src/index.ts @@ -66,6 +66,7 @@ export {useWindowSize} from './hooks/useWindowSize'; export { translateTagsPageTitle, + TagsPageLinkLabel, listTagsByLetters, type TagLetterEntry, } from './utils/tagsUtils'; diff --git a/packages/docusaurus-theme-common/src/utils/tagsUtils.ts b/packages/docusaurus-theme-common/src/utils/tagsUtils.tsx similarity index 80% rename from packages/docusaurus-theme-common/src/utils/tagsUtils.ts rename to packages/docusaurus-theme-common/src/utils/tagsUtils.tsx index 23ab3d40df5d..b53d79c67358 100644 --- a/packages/docusaurus-theme-common/src/utils/tagsUtils.ts +++ b/packages/docusaurus-theme-common/src/utils/tagsUtils.tsx @@ -5,7 +5,8 @@ * LICENSE file in the root directory of this source tree. */ -import {translate} from '@docusaurus/Translate'; +import type {ReactNode} from 'react'; +import Translate, {translate} from '@docusaurus/Translate'; import type {TagsListItem} from '@docusaurus/utils'; export const translateTagsPageTitle = (): string => @@ -15,6 +16,16 @@ export const translateTagsPageTitle = (): string => description: 'The title of the tag list page', }); +export function TagsPageLinkLabel(): ReactNode { + return ( + + View all tags + + ); +} + export type TagLetterEntry = {letter: string; tags: TagsListItem[]}; function getTagLetter(tag: string): string { diff --git a/packages/docusaurus-theme-translations/README.md b/packages/docusaurus-theme-translations/README.md index 89edba93db8c..2991e5968aa2 100644 --- a/packages/docusaurus-theme-translations/README.md +++ b/packages/docusaurus-theme-translations/README.md @@ -6,7 +6,7 @@ This package includes default translations for labels (like the pagination "Next Please help us provide exhaustive translations: -- add new translation by running `yarn workspace @docusaurus/theme-translations update %new_lang_code%`, then edit generated JSON files +- add new translation by running `pnpm --filter @docusaurus/theme-translations update %new_lang_code%`, then edit generated JSON files - double-check existent `language.json` file for bad or missing translations ## For maintainers: @@ -14,7 +14,7 @@ Please help us provide exhaustive translations: After updating the theme code, you can "synchronize" the translations by running: ```bash -yarn workspace @docusaurus/theme-translations update +pnpm --filter @docusaurus/theme-translations run update ``` Then, ask contributors to translate the newly added labels on this [issue](https://github.com/facebook/docusaurus/issues/3526) diff --git a/packages/docusaurus-theme-translations/locales/ar/theme-live-codeblock.json b/packages/docusaurus-theme-translations/locales/ar/theme-live-codeblock.json index d431f23b2132..515760908ff5 100644 --- a/packages/docusaurus-theme-translations/locales/ar/theme-live-codeblock.json +++ b/packages/docusaurus-theme-translations/locales/ar/theme-live-codeblock.json @@ -1,5 +1,5 @@ { - "theme.Playground.liveEditor": "مُحـرر مُبـاشر", "theme.Playground.buttons.reset": "Reset", + "theme.Playground.liveEditor": "مُحـرر مُبـاشر", "theme.Playground.result": "النتيجة" } diff --git a/packages/docusaurus-theme-translations/locales/base/theme-live-codeblock.json b/packages/docusaurus-theme-translations/locales/base/theme-live-codeblock.json index c239640f0a41..76b5551de1ed 100644 --- a/packages/docusaurus-theme-translations/locales/base/theme-live-codeblock.json +++ b/packages/docusaurus-theme-translations/locales/base/theme-live-codeblock.json @@ -1,8 +1,8 @@ { - "theme.Playground.liveEditor": "Live Editor", - "theme.Playground.liveEditor___DESCRIPTION": "The live editor label of the live codeblocks", "theme.Playground.buttons.reset": "Reset", "theme.Playground.buttons.reset___DESCRIPTION": "The reset button label for live code blocks", + "theme.Playground.liveEditor": "Live Editor", + "theme.Playground.liveEditor___DESCRIPTION": "The live editor label of the live codeblocks", "theme.Playground.result": "Result", "theme.Playground.result___DESCRIPTION": "The result label of the live codeblocks" } diff --git a/packages/docusaurus-theme-translations/locales/bg/theme-live-codeblock.json b/packages/docusaurus-theme-translations/locales/bg/theme-live-codeblock.json index eb3bac886e11..5d10d32c512c 100644 --- a/packages/docusaurus-theme-translations/locales/bg/theme-live-codeblock.json +++ b/packages/docusaurus-theme-translations/locales/bg/theme-live-codeblock.json @@ -1,5 +1,5 @@ { - "theme.Playground.liveEditor": "Live Editor", "theme.Playground.buttons.reset": "Reset", + "theme.Playground.liveEditor": "Live Editor", "theme.Playground.result": "Result" } diff --git a/packages/docusaurus-theme-translations/locales/bn/theme-live-codeblock.json b/packages/docusaurus-theme-translations/locales/bn/theme-live-codeblock.json index e9c5e1c10d1c..f350190a3260 100644 --- a/packages/docusaurus-theme-translations/locales/bn/theme-live-codeblock.json +++ b/packages/docusaurus-theme-translations/locales/bn/theme-live-codeblock.json @@ -1,5 +1,5 @@ { - "theme.Playground.liveEditor": "লাইভ এডিটর", "theme.Playground.buttons.reset": "Reset", + "theme.Playground.liveEditor": "লাইভ এডিটর", "theme.Playground.result": "ফলাফল" } diff --git a/packages/docusaurus-theme-translations/locales/cs/theme-live-codeblock.json b/packages/docusaurus-theme-translations/locales/cs/theme-live-codeblock.json index 61372e9dad07..477d8dc41c30 100644 --- a/packages/docusaurus-theme-translations/locales/cs/theme-live-codeblock.json +++ b/packages/docusaurus-theme-translations/locales/cs/theme-live-codeblock.json @@ -1,5 +1,5 @@ { - "theme.Playground.liveEditor": "Live Editor", "theme.Playground.buttons.reset": "Reset", + "theme.Playground.liveEditor": "Live Editor", "theme.Playground.result": "Výsledek" } diff --git a/packages/docusaurus-theme-translations/locales/da/theme-live-codeblock.json b/packages/docusaurus-theme-translations/locales/da/theme-live-codeblock.json index 353c8b5e0fd2..177178fbc151 100644 --- a/packages/docusaurus-theme-translations/locales/da/theme-live-codeblock.json +++ b/packages/docusaurus-theme-translations/locales/da/theme-live-codeblock.json @@ -1,5 +1,5 @@ { - "theme.Playground.liveEditor": "Live editor", "theme.Playground.buttons.reset": "Reset", + "theme.Playground.liveEditor": "Live editor", "theme.Playground.result": "Resultat" } diff --git a/packages/docusaurus-theme-translations/locales/de/theme-live-codeblock.json b/packages/docusaurus-theme-translations/locales/de/theme-live-codeblock.json index 9a8dc04513a0..ba629e169343 100644 --- a/packages/docusaurus-theme-translations/locales/de/theme-live-codeblock.json +++ b/packages/docusaurus-theme-translations/locales/de/theme-live-codeblock.json @@ -1,5 +1,5 @@ { - "theme.Playground.liveEditor": "Live Editor", "theme.Playground.buttons.reset": "Reset", + "theme.Playground.liveEditor": "Live Editor", "theme.Playground.result": "Ergebnisse" } diff --git a/packages/docusaurus-theme-translations/locales/es/theme-live-codeblock.json b/packages/docusaurus-theme-translations/locales/es/theme-live-codeblock.json index 22d842fcc94d..db5b1ca56986 100644 --- a/packages/docusaurus-theme-translations/locales/es/theme-live-codeblock.json +++ b/packages/docusaurus-theme-translations/locales/es/theme-live-codeblock.json @@ -1,5 +1,5 @@ { - "theme.Playground.liveEditor": "Editor en vivo", "theme.Playground.buttons.reset": "Restablecer", + "theme.Playground.liveEditor": "Editor en vivo", "theme.Playground.result": "Resultado" } diff --git a/packages/docusaurus-theme-translations/locales/et/theme-live-codeblock.json b/packages/docusaurus-theme-translations/locales/et/theme-live-codeblock.json index 942271905aa4..65d1dffbd8b8 100644 --- a/packages/docusaurus-theme-translations/locales/et/theme-live-codeblock.json +++ b/packages/docusaurus-theme-translations/locales/et/theme-live-codeblock.json @@ -1,5 +1,5 @@ { - "theme.Playground.liveEditor": "Live Redaktor", "theme.Playground.buttons.reset": "Reset", + "theme.Playground.liveEditor": "Live Redaktor", "theme.Playground.result": "Tulemus" } diff --git a/packages/docusaurus-theme-translations/locales/fa/theme-live-codeblock.json b/packages/docusaurus-theme-translations/locales/fa/theme-live-codeblock.json index 6b8da9dbeef7..42f1b2ad3085 100644 --- a/packages/docusaurus-theme-translations/locales/fa/theme-live-codeblock.json +++ b/packages/docusaurus-theme-translations/locales/fa/theme-live-codeblock.json @@ -1,5 +1,5 @@ { - "theme.Playground.liveEditor": "ویرایشگر زنده", "theme.Playground.buttons.reset": "Reset", + "theme.Playground.liveEditor": "ویرایشگر زنده", "theme.Playground.result": "خروجی" } diff --git a/packages/docusaurus-theme-translations/locales/fil/theme-live-codeblock.json b/packages/docusaurus-theme-translations/locales/fil/theme-live-codeblock.json index f2bbc1ba892c..af1fdfd95a53 100644 --- a/packages/docusaurus-theme-translations/locales/fil/theme-live-codeblock.json +++ b/packages/docusaurus-theme-translations/locales/fil/theme-live-codeblock.json @@ -1,5 +1,5 @@ { - "theme.Playground.liveEditor": "Live na Editor", "theme.Playground.buttons.reset": "Reset", + "theme.Playground.liveEditor": "Live na Editor", "theme.Playground.result": "Resulta" } diff --git a/packages/docusaurus-theme-translations/locales/fr/theme-live-codeblock.json b/packages/docusaurus-theme-translations/locales/fr/theme-live-codeblock.json index ffaaab099a00..7571559dde9f 100644 --- a/packages/docusaurus-theme-translations/locales/fr/theme-live-codeblock.json +++ b/packages/docusaurus-theme-translations/locales/fr/theme-live-codeblock.json @@ -1,5 +1,5 @@ { - "theme.Playground.liveEditor": "Éditeur en direct", "theme.Playground.buttons.reset": "Reset", + "theme.Playground.liveEditor": "Éditeur en direct", "theme.Playground.result": "Résultat" } diff --git a/packages/docusaurus-theme-translations/locales/he/theme-live-codeblock.json b/packages/docusaurus-theme-translations/locales/he/theme-live-codeblock.json index f78f27fbe8ba..3927b96b3f48 100644 --- a/packages/docusaurus-theme-translations/locales/he/theme-live-codeblock.json +++ b/packages/docusaurus-theme-translations/locales/he/theme-live-codeblock.json @@ -1,5 +1,5 @@ { - "theme.Playground.liveEditor": "Live Editor", "theme.Playground.buttons.reset": "Reset", + "theme.Playground.liveEditor": "Live Editor", "theme.Playground.result": "תוצאה" } diff --git a/packages/docusaurus-theme-translations/locales/hi/theme-live-codeblock.json b/packages/docusaurus-theme-translations/locales/hi/theme-live-codeblock.json index ec2d72565b82..e6fda0fe74dc 100644 --- a/packages/docusaurus-theme-translations/locales/hi/theme-live-codeblock.json +++ b/packages/docusaurus-theme-translations/locales/hi/theme-live-codeblock.json @@ -1,5 +1,5 @@ { - "theme.Playground.liveEditor": "लाइव एडिटर", "theme.Playground.buttons.reset": "Reset", + "theme.Playground.liveEditor": "लाइव एडिटर", "theme.Playground.result": "परिणाम" } diff --git a/packages/docusaurus-theme-translations/locales/hu/theme-live-codeblock.json b/packages/docusaurus-theme-translations/locales/hu/theme-live-codeblock.json index f44559587330..64bb81bedbaa 100644 --- a/packages/docusaurus-theme-translations/locales/hu/theme-live-codeblock.json +++ b/packages/docusaurus-theme-translations/locales/hu/theme-live-codeblock.json @@ -1,5 +1,5 @@ { - "theme.Playground.liveEditor": "Interaktív szerkesztő", "theme.Playground.buttons.reset": "Reset", + "theme.Playground.liveEditor": "Interaktív szerkesztő", "theme.Playground.result": "Eredmény" } diff --git a/packages/docusaurus-theme-translations/locales/id/theme-live-codeblock.json b/packages/docusaurus-theme-translations/locales/id/theme-live-codeblock.json index de8e2a5b6293..73e95b365f62 100644 --- a/packages/docusaurus-theme-translations/locales/id/theme-live-codeblock.json +++ b/packages/docusaurus-theme-translations/locales/id/theme-live-codeblock.json @@ -1,5 +1,5 @@ { - "theme.Playground.liveEditor": "Penyunting Langung", "theme.Playground.buttons.reset": "Reset", + "theme.Playground.liveEditor": "Penyunting Langung", "theme.Playground.result": "Hasil" } diff --git a/packages/docusaurus-theme-translations/locales/is/theme-live-codeblock.json b/packages/docusaurus-theme-translations/locales/is/theme-live-codeblock.json index ae081a58c8c3..777971d2a52d 100644 --- a/packages/docusaurus-theme-translations/locales/is/theme-live-codeblock.json +++ b/packages/docusaurus-theme-translations/locales/is/theme-live-codeblock.json @@ -1,5 +1,5 @@ { - "theme.Playground.liveEditor": "Lifandi Ritill", "theme.Playground.buttons.reset": "Reset", + "theme.Playground.liveEditor": "Lifandi Ritill", "theme.Playground.result": "Niðurstaða" } diff --git a/packages/docusaurus-theme-translations/locales/it/theme-live-codeblock.json b/packages/docusaurus-theme-translations/locales/it/theme-live-codeblock.json index 3b7040b25559..fdfb1766d3e3 100644 --- a/packages/docusaurus-theme-translations/locales/it/theme-live-codeblock.json +++ b/packages/docusaurus-theme-translations/locales/it/theme-live-codeblock.json @@ -1,5 +1,5 @@ { - "theme.Playground.liveEditor": "Editor dal vivo", "theme.Playground.buttons.reset": "Reset", + "theme.Playground.liveEditor": "Editor dal vivo", "theme.Playground.result": "Risultato" } diff --git a/packages/docusaurus-theme-translations/locales/ja/theme-live-codeblock.json b/packages/docusaurus-theme-translations/locales/ja/theme-live-codeblock.json index 212c4fe48ef1..36a75d1a9c33 100644 --- a/packages/docusaurus-theme-translations/locales/ja/theme-live-codeblock.json +++ b/packages/docusaurus-theme-translations/locales/ja/theme-live-codeblock.json @@ -1,5 +1,5 @@ { - "theme.Playground.liveEditor": "ライブエディター", "theme.Playground.buttons.reset": "Reset", + "theme.Playground.liveEditor": "ライブエディター", "theme.Playground.result": "結果" } diff --git a/packages/docusaurus-theme-translations/locales/ko/theme-live-codeblock.json b/packages/docusaurus-theme-translations/locales/ko/theme-live-codeblock.json index 4fd19639fb30..c753fd0a2662 100644 --- a/packages/docusaurus-theme-translations/locales/ko/theme-live-codeblock.json +++ b/packages/docusaurus-theme-translations/locales/ko/theme-live-codeblock.json @@ -1,5 +1,5 @@ { - "theme.Playground.liveEditor": "라이브 에디터", "theme.Playground.buttons.reset": "Reset", + "theme.Playground.liveEditor": "라이브 에디터", "theme.Playground.result": "결과" } diff --git a/packages/docusaurus-theme-translations/locales/nb/theme-live-codeblock.json b/packages/docusaurus-theme-translations/locales/nb/theme-live-codeblock.json index 51f860ce6287..adf453a5d64b 100644 --- a/packages/docusaurus-theme-translations/locales/nb/theme-live-codeblock.json +++ b/packages/docusaurus-theme-translations/locales/nb/theme-live-codeblock.json @@ -1,5 +1,5 @@ { - "theme.Playground.liveEditor": "Live Editor", "theme.Playground.buttons.reset": "Reset", + "theme.Playground.liveEditor": "Live Editor", "theme.Playground.result": "Resultat" } diff --git a/packages/docusaurus-theme-translations/locales/nl/theme-live-codeblock.json b/packages/docusaurus-theme-translations/locales/nl/theme-live-codeblock.json index c411f8cc7ac2..b7e4e19e0cc1 100644 --- a/packages/docusaurus-theme-translations/locales/nl/theme-live-codeblock.json +++ b/packages/docusaurus-theme-translations/locales/nl/theme-live-codeblock.json @@ -1,5 +1,5 @@ { - "theme.Playground.liveEditor": "Live bewerken", "theme.Playground.buttons.reset": "Reset", + "theme.Playground.liveEditor": "Live bewerken", "theme.Playground.result": "Resultaat" } diff --git a/packages/docusaurus-theme-translations/locales/pl/theme-live-codeblock.json b/packages/docusaurus-theme-translations/locales/pl/theme-live-codeblock.json index c4f7318f2021..9ef9632be55d 100644 --- a/packages/docusaurus-theme-translations/locales/pl/theme-live-codeblock.json +++ b/packages/docusaurus-theme-translations/locales/pl/theme-live-codeblock.json @@ -1,5 +1,5 @@ { - "theme.Playground.liveEditor": "Edytor live", "theme.Playground.buttons.reset": "Resetuj", + "theme.Playground.liveEditor": "Edytor live", "theme.Playground.result": "Rezultat" } diff --git a/packages/docusaurus-theme-translations/locales/pt-BR/theme-live-codeblock.json b/packages/docusaurus-theme-translations/locales/pt-BR/theme-live-codeblock.json index 5154c19c24b9..2c4ec90b0d97 100644 --- a/packages/docusaurus-theme-translations/locales/pt-BR/theme-live-codeblock.json +++ b/packages/docusaurus-theme-translations/locales/pt-BR/theme-live-codeblock.json @@ -1,5 +1,5 @@ { - "theme.Playground.liveEditor": "Editor em tempo real", "theme.Playground.buttons.reset": "Reset", + "theme.Playground.liveEditor": "Editor em tempo real", "theme.Playground.result": "Resultado" } diff --git a/packages/docusaurus-theme-translations/locales/pt-PT/theme-live-codeblock.json b/packages/docusaurus-theme-translations/locales/pt-PT/theme-live-codeblock.json index 5154c19c24b9..2c4ec90b0d97 100644 --- a/packages/docusaurus-theme-translations/locales/pt-PT/theme-live-codeblock.json +++ b/packages/docusaurus-theme-translations/locales/pt-PT/theme-live-codeblock.json @@ -1,5 +1,5 @@ { - "theme.Playground.liveEditor": "Editor em tempo real", "theme.Playground.buttons.reset": "Reset", + "theme.Playground.liveEditor": "Editor em tempo real", "theme.Playground.result": "Resultado" } diff --git a/packages/docusaurus-theme-translations/locales/ru/theme-live-codeblock.json b/packages/docusaurus-theme-translations/locales/ru/theme-live-codeblock.json index 42fac3c23694..fbf70ecc08dd 100644 --- a/packages/docusaurus-theme-translations/locales/ru/theme-live-codeblock.json +++ b/packages/docusaurus-theme-translations/locales/ru/theme-live-codeblock.json @@ -1,5 +1,5 @@ { - "theme.Playground.liveEditor": "Интерактивный редактор", "theme.Playground.buttons.reset": "Reset", + "theme.Playground.liveEditor": "Интерактивный редактор", "theme.Playground.result": "Результат" } diff --git a/packages/docusaurus-theme-translations/locales/sl/theme-live-codeblock.json b/packages/docusaurus-theme-translations/locales/sl/theme-live-codeblock.json index 956f319c97db..2137e38e1697 100644 --- a/packages/docusaurus-theme-translations/locales/sl/theme-live-codeblock.json +++ b/packages/docusaurus-theme-translations/locales/sl/theme-live-codeblock.json @@ -1,5 +1,5 @@ { - "theme.Playground.liveEditor": "Urejanje kode v živo", "theme.Playground.buttons.reset": "Reset", + "theme.Playground.liveEditor": "Urejanje kode v živo", "theme.Playground.result": "Rezultat" } diff --git a/packages/docusaurus-theme-translations/locales/sr/theme-live-codeblock.json b/packages/docusaurus-theme-translations/locales/sr/theme-live-codeblock.json index 077c8ba43d0d..ddf08cff96ac 100644 --- a/packages/docusaurus-theme-translations/locales/sr/theme-live-codeblock.json +++ b/packages/docusaurus-theme-translations/locales/sr/theme-live-codeblock.json @@ -1,5 +1,5 @@ { - "theme.Playground.liveEditor": "Уређивач", "theme.Playground.buttons.reset": "Reset", + "theme.Playground.liveEditor": "Уређивач", "theme.Playground.result": "Резултат" } diff --git a/packages/docusaurus-theme-translations/locales/sv/theme-live-codeblock.json b/packages/docusaurus-theme-translations/locales/sv/theme-live-codeblock.json index b53939be35b3..fdc6a4685c15 100644 --- a/packages/docusaurus-theme-translations/locales/sv/theme-live-codeblock.json +++ b/packages/docusaurus-theme-translations/locales/sv/theme-live-codeblock.json @@ -1,5 +1,5 @@ { - "theme.Playground.liveEditor": "Live-redigerare", "theme.Playground.buttons.reset": "Återställ", + "theme.Playground.liveEditor": "Live-redigerare", "theme.Playground.result": "Resultat" } diff --git a/packages/docusaurus-theme-translations/locales/tk/theme-live-codeblock.json b/packages/docusaurus-theme-translations/locales/tk/theme-live-codeblock.json index 8c01ce116acc..28732135dbcd 100644 --- a/packages/docusaurus-theme-translations/locales/tk/theme-live-codeblock.json +++ b/packages/docusaurus-theme-translations/locales/tk/theme-live-codeblock.json @@ -1,5 +1,5 @@ { - "theme.Playground.liveEditor": "Göni Redaktor", "theme.Playground.buttons.reset": "Reset", + "theme.Playground.liveEditor": "Göni Redaktor", "theme.Playground.result": "Netije" } diff --git a/packages/docusaurus-theme-translations/locales/tr/theme-live-codeblock.json b/packages/docusaurus-theme-translations/locales/tr/theme-live-codeblock.json index a75f8c44d671..a134f4cc32da 100644 --- a/packages/docusaurus-theme-translations/locales/tr/theme-live-codeblock.json +++ b/packages/docusaurus-theme-translations/locales/tr/theme-live-codeblock.json @@ -1,5 +1,5 @@ { - "theme.Playground.liveEditor": "Canlı Düzenleyici", "theme.Playground.buttons.reset": "Reset", + "theme.Playground.liveEditor": "Canlı Düzenleyici", "theme.Playground.result": "Sonuç" } diff --git a/packages/docusaurus-theme-translations/locales/uk/theme-live-codeblock.json b/packages/docusaurus-theme-translations/locales/uk/theme-live-codeblock.json index e595c15a4b9e..17b5cb28d575 100644 --- a/packages/docusaurus-theme-translations/locales/uk/theme-live-codeblock.json +++ b/packages/docusaurus-theme-translations/locales/uk/theme-live-codeblock.json @@ -1,5 +1,5 @@ { - "theme.Playground.liveEditor": "Інтерактивний редактор", "theme.Playground.buttons.reset": "Reset", + "theme.Playground.liveEditor": "Інтерактивний редактор", "theme.Playground.result": "Результат" } diff --git a/packages/docusaurus-theme-translations/locales/ur/theme-live-codeblock.json b/packages/docusaurus-theme-translations/locales/ur/theme-live-codeblock.json index 211df747a4b0..5b0f4fca080f 100644 --- a/packages/docusaurus-theme-translations/locales/ur/theme-live-codeblock.json +++ b/packages/docusaurus-theme-translations/locales/ur/theme-live-codeblock.json @@ -1,5 +1,5 @@ { - "theme.Playground.liveEditor": "لائیو ایڈیٹر", "theme.Playground.buttons.reset": "Reset", + "theme.Playground.liveEditor": "لائیو ایڈیٹر", "theme.Playground.result": "نتیجہ" } diff --git a/packages/docusaurus-theme-translations/locales/vi/theme-live-codeblock.json b/packages/docusaurus-theme-translations/locales/vi/theme-live-codeblock.json index a34fb7b495e1..e5c35b126ac7 100644 --- a/packages/docusaurus-theme-translations/locales/vi/theme-live-codeblock.json +++ b/packages/docusaurus-theme-translations/locales/vi/theme-live-codeblock.json @@ -1,5 +1,5 @@ { - "theme.Playground.liveEditor": "Trình soạn thảo trực tuyến", "theme.Playground.buttons.reset": "Reset", + "theme.Playground.liveEditor": "Trình soạn thảo trực tuyến", "theme.Playground.result": "Kết quả" } diff --git a/packages/docusaurus-theme-translations/locales/zh-Hans/theme-live-codeblock.json b/packages/docusaurus-theme-translations/locales/zh-Hans/theme-live-codeblock.json index f0830ac7c6cf..5f3381f3a50c 100644 --- a/packages/docusaurus-theme-translations/locales/zh-Hans/theme-live-codeblock.json +++ b/packages/docusaurus-theme-translations/locales/zh-Hans/theme-live-codeblock.json @@ -1,5 +1,5 @@ { - "theme.Playground.liveEditor": "实时编辑器", "theme.Playground.buttons.reset": "Reset", + "theme.Playground.liveEditor": "实时编辑器", "theme.Playground.result": "结果" } diff --git a/packages/docusaurus-theme-translations/locales/zh-Hant/theme-live-codeblock.json b/packages/docusaurus-theme-translations/locales/zh-Hant/theme-live-codeblock.json index 9f4fd4cef12d..be9057dca9e2 100644 --- a/packages/docusaurus-theme-translations/locales/zh-Hant/theme-live-codeblock.json +++ b/packages/docusaurus-theme-translations/locales/zh-Hant/theme-live-codeblock.json @@ -1,5 +1,5 @@ { - "theme.Playground.liveEditor": "即時編輯器", "theme.Playground.buttons.reset": "Reset", + "theme.Playground.liveEditor": "即時編輯器", "theme.Playground.result": "結果" } diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index f2d7b6c63bc6..bc3d8940fc64 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -208,12 +208,15 @@ importers: argos: dependencies: + '@argos-ci/cli': + specifier: ^6.9.0 + version: 6.9.0(@types/node@25.9.1) '@argos-ci/playwright': - specifier: ^7.0.6 - version: 7.0.6(supports-color@7.2.0) + specifier: ^7.4.6 + version: 7.4.6(@types/node@25.9.1)(supports-color@7.2.0) '@playwright/test': - specifier: ^1.60.0 - version: 1.60.0 + specifier: ^1.62.1 + version: 1.62.1 cheerio: specifier: ^1.2.0 version: 1.2.0 @@ -2344,24 +2347,29 @@ packages: peerDependencies: ajv: '>=8' - '@argos-ci/api-client@0.22.0': - resolution: {integrity: sha512-CzMDTZXT6+0fvtfdwUwu4NIzyS0zhEJoGd/0m/zSFIK+kXvWIJyIl/eZqyGRr5+B6OPFR1cRtOI9pX5w3u4i8A==} + '@argos-ci/api-client@0.31.0': + resolution: {integrity: sha512-7EdoiHRc4BvuDxp6/8CbkehCMu5bFYEJPjssYFvOR5FqCq50hT9+GxDuQ4pULpbXUZOVl1vhZ4b8ed4fe7rVCQ==} + engines: {node: '>=22.0.0'} + + '@argos-ci/browser@6.4.5': + resolution: {integrity: sha512-8qWtsOXG752VTAI6iPeHZyMKLSqN9jqdAqZZMk0Q4+j5WSPX76K5a3feV8nBlSqpr1O4RP2/GWYVoxkGdzJr3w==} engines: {node: '>=22.0.0'} - '@argos-ci/browser@6.1.0': - resolution: {integrity: sha512-9R508bY/qzZ14ZkddAfRL9Oq5K9gPRlLaUfv3SFGoKGSWlufsHnVvTTeHAAO9kLIXxJ3/bTW0MxLQD93Fs9DqQ==} + '@argos-ci/cli@6.9.0': + resolution: {integrity: sha512-zAVXgOnFmDU36n6fOr6GMI/wnCCqbZ1XMD8vmLGpBOjzeMKbK2dthzbHKcq02015NFmYMz5U9JZbyG5xGJRGXw==} engines: {node: '>=22.0.0'} + hasBin: true - '@argos-ci/core@6.1.1': - resolution: {integrity: sha512-8W8GYhnMAaxr3HKydsCmLN21PSExEMI+iBerzEoFXRlKgFilCg3HssVBxLKCXrhh/IBPYyQnspgRll5n9QsNeQ==} + '@argos-ci/core@6.8.1': + resolution: {integrity: sha512-SY5dU/Rtxux0Biy0gd4zY36fClz3xekrgdaBCZv0+Pnvbuy9STNPaV8JjWfA5fu+vEORCOghcYvQwqwhRWbOSQ==} engines: {node: '>=22.0.0'} - '@argos-ci/playwright@7.0.6': - resolution: {integrity: sha512-meL47krLuWXtxonMqsZ35PQKJnvvSCbtV/lkLJL5j4qMynmZwHRDP6T9vVyF9jmBIZIb3aKvGW/GYiEdV6xv2w==} + '@argos-ci/playwright@7.4.6': + resolution: {integrity: sha512-ocFVdFl/o+M3c/3SuZJ1ChlmVfIKoK0EX6iJbYLqM3wxrHiltB/c9aFRuepjawwvjnMGgwXMaMONhMF2Op+/Sw==} engines: {node: '>=22.0.0'} - '@argos-ci/util@4.0.0': - resolution: {integrity: sha512-2yrJr81OVpa2TkvSjzGZlGv6SVqZcxF62AVk6M79aZ7nXkwWFg3tjA8awbFwn2mODI67gkP5FarAD29bzx3P3w==} + '@argos-ci/util@4.1.0': + resolution: {integrity: sha512-vLCtjTl94IcEjSUaQJSfENjud8fZNsjYS4WugNvGKX0VUZhR+RYRTAyVALWz3n82Kylil0amGnXa7VoG0IJpgA==} engines: {node: '>=22.0.0'} '@asamuzakjp/css-color@3.2.0': @@ -3748,163 +3756,81 @@ packages: resolution: {integrity: sha512-Td76q7j57o/tLVdgS746cYARfSyxk8iEfRxewL9h4OMzYhbW4TAcppl0mT4eyqXddh6L/jwoM75mo7ixa/pCeQ==} engines: {node: '>=18'} - '@img/sharp-darwin-arm64@0.35.1': - resolution: {integrity: sha512-T15JRWOubQ3f5+GxnWeIvo47u5qV0M9HBgJhT+f2gE1e9e6OhR6K73Re52Hm80qWcu1DNb3GweKmpr/MnuP2Ow==} - engines: {node: '>=20.9.0'} - cpu: [arm64] - os: [darwin] - '@img/sharp-darwin-arm64@0.35.3': resolution: {integrity: sha512-RMnFX7YQsMoh7lWfcM4NEHHymBX/rLuKNPVM84XE9ONPcaSCDgE7CHIHpSgPcO2xcRthgBy1HfNO319mwhIAkg==} engines: {node: '>=20.9.0'} cpu: [arm64] os: [darwin] - '@img/sharp-darwin-x64@0.35.1': - resolution: {integrity: sha512-t1CPD0cr7XCHjwUj6tQ5MC0pCi866I+gUW6zbUX4aFPnKd1DFBtk0M+gWcjX8VeEzgfCNiSiNTVFZ6b7kvdbnQ==} - engines: {node: '>=20.9.0'} - cpu: [x64] - os: [darwin] - '@img/sharp-darwin-x64@0.35.3': resolution: {integrity: sha512-Xo+5uFBtLN0BKqieTxiFzFPQAUlBbbH5iBKyRX/z1JrbnYsHTfKJnUfL8+p2TPXr1pXqao4eeL4Rl144uDpK9w==} engines: {node: '>=20.9.0'} cpu: [x64] os: [darwin] - '@img/sharp-freebsd-wasm32@0.35.1': - resolution: {integrity: sha512-MBSQXqNPThW9EcZ905H6N4sEdX5EwZEYzGx5EBq9ncDCGJALMiY1xPFJxNdzuB1iBjLOpIfxajM6YxdvwmQSLA==} - engines: {node: '>=20.9.0'} - os: [freebsd] - '@img/sharp-freebsd-wasm32@0.35.3': resolution: {integrity: sha512-lUxcqWIj2wMQ9BrwNjngcr1gWUr5xgaGThBRqPPalIC2n67Cqj1uPh8NnA/ZhAg8hUbKl+kVHKwgUIwe6ZYPrg==} engines: {node: '>=20.9.0'} os: [freebsd] - '@img/sharp-libvips-darwin-arm64@1.3.0': - resolution: {integrity: sha512-EKbmBKtyTH+GPFDRw2TgK2oV6hyxxlJVIar4hoTYSNmIwipgMFdxPQqR392GmfdsPGWga0mCFN1cCKjRb9cljw==} - cpu: [arm64] - os: [darwin] - '@img/sharp-libvips-darwin-arm64@1.3.2': resolution: {integrity: sha512-9J6ypZFpQBj4YnePGoq/S38w6nz+vqg5WZLrLGY4YuSemdMq47GMLBPO42MzwdGwpg/agZ7xzZcFHa48xlywfg==} cpu: [arm64] os: [darwin] - '@img/sharp-libvips-darwin-x64@1.3.0': - resolution: {integrity: sha512-Pl2OmOvrJ42adUllESxBsG54PfXLo1OYg9i3c5/5Ln/qJ0gZuTM9YMhQJPIbXqwidLRc/c2zuHt4RsrymmNv7A==} - cpu: [x64] - os: [darwin] - '@img/sharp-libvips-darwin-x64@1.3.2': resolution: {integrity: sha512-m2pW1n6cns9VaubNwsZ+c3CRYjxNQWgJ5gPlnL1nbBcpkBvFm6SCFN5o0psFHI8w9n11NKhFkeEDns98tiqbEw==} cpu: [x64] os: [darwin] - '@img/sharp-libvips-linux-arm64@1.3.0': - resolution: {integrity: sha512-C0SqjoFKnszqa44EQ7xoaT48nnO0lOyXEULfXMWi8krrjOPGYkeK30Okzla6ATbBYsyZ0ySinK0FVkpv3DwzfQ==} - cpu: [arm64] - os: [linux] - libc: [glibc] - '@img/sharp-libvips-linux-arm64@1.3.2': resolution: {integrity: sha512-dqVSFynCox4C/J8kT16V7SIFAns0IjgLwkvYT7p8LQVmJ5OS5b6tI9IGflxTeuBS//zXeFIUbwt5dwxyZ17cnA==} cpu: [arm64] os: [linux] libc: [glibc] - '@img/sharp-libvips-linux-arm@1.3.0': - resolution: {integrity: sha512-A8UpHoUDW4DwnXoV6+q3C1s7QLRAHtPDEjWuNZjwHMyoCNZnm0GeNN8ls9f/bsEYTRQRW96C/n34XJQHJ2fT7A==} - cpu: [arm] - os: [linux] - libc: [glibc] - '@img/sharp-libvips-linux-arm@1.3.2': resolution: {integrity: sha512-1eMLzy92I4J6rmi4mAT8yC3HxOtniyGELlzGbNMLLeqe052ahFQ0h6LFq+lh5DsDIdYViIDst08abvSbcEdLXQ==} cpu: [arm] os: [linux] libc: [glibc] - '@img/sharp-libvips-linux-ppc64@1.3.0': - resolution: {integrity: sha512-WOpkVxAjFd369iaIzEgNRreFD+gWdUMIGD5zplhNKNeqS6mm5dac3q2AFyCBmzYoAdouzZvRBgxy4z8QHZb4/A==} - cpu: [ppc64] - os: [linux] - libc: [glibc] - '@img/sharp-libvips-linux-ppc64@1.3.2': resolution: {integrity: sha512-3z0NHDxD6n5I9gc05U1eW1AyRm+Gznzq3naMrthPNqE6oYykcogW0l/jfpJdjYnuNl8R7yI9pNbE1XiUeyq0Aw==} cpu: [ppc64] os: [linux] libc: [glibc] - '@img/sharp-libvips-linux-riscv64@1.3.0': - resolution: {integrity: sha512-DRWw0mOHusrCCuw2rqP87oLg6PGlkomVDFqw2hIwsSfwWpu4k3XLcBPaKKl6ct/GtL/cwNkgwjV/tc0Mqht3VA==} - cpu: [riscv64] - os: [linux] - libc: [glibc] - '@img/sharp-libvips-linux-riscv64@1.3.2': resolution: {integrity: sha512-bsb4rI+NldGOsXuej2r8OdSS8+zXDVaCWxyWrcv6kneTOlgAHtZABRzBBCwdsPiD90J4myNJuHpg6kA20ImW/w==} cpu: [riscv64] os: [linux] libc: [glibc] - '@img/sharp-libvips-linux-s390x@1.3.0': - resolution: {integrity: sha512-9APy+nFWhHS+kzLgWZfLcyrUd7YqnAQVa4BPOo4xkoHpdoktOAPG4cEr9+Jpl0TtqfVmcMJimNL5qNTyyOHZNA==} - cpu: [s390x] - os: [linux] - libc: [glibc] - '@img/sharp-libvips-linux-s390x@1.3.2': resolution: {integrity: sha512-/ABshyj8gCpyIrNXnHn4LorDJ0HHm1VhXPBlxZ8zAtfVPAaSafXPGn+sUSIRiwaSBy0mmFjSjiXI5mkcwdChKQ==} cpu: [s390x] os: [linux] libc: [glibc] - '@img/sharp-libvips-linux-x64@1.3.0': - resolution: {integrity: sha512-y9RNUYDe2A1UAdhLyfeOodGRszQdaEoe4nfOpp/sNVPl2CWIcUyFaDoCh4vPLPxu19803j2naLqZup2WxDXCLA==} - cpu: [x64] - os: [linux] - libc: [glibc] - '@img/sharp-libvips-linux-x64@1.3.2': resolution: {integrity: sha512-ITPEtgffGJ0S6G9dRyw/366tJQqFRcHWPHhC+Stpg3Z8AEMrDrTr2lhdz4f/Y/HMbRh//7Z5mBzEpVdi62Oc3w==} cpu: [x64] os: [linux] libc: [glibc] - '@img/sharp-libvips-linuxmusl-arm64@1.3.0': - resolution: {integrity: sha512-cC1wkC0Mlucd0KSiGrLkJnB/ZqPvZCntc/Lk7ZnYO5ZSbF2euNek4Xvxafojq+wN1q/W0eprdpUIjUr/EV2PBg==} - cpu: [arm64] - os: [linux] - libc: [musl] - '@img/sharp-libvips-linuxmusl-arm64@1.3.2': resolution: {integrity: sha512-zE9EdiUzUmg5mDT5a1rk5fYJ6GWPloTwWBYDS14naqHsL+EaMpDj1AWnpLgh3u0YCORv2Tt50wrcrpYqkP97Kw==} cpu: [arm64] os: [linux] libc: [musl] - '@img/sharp-libvips-linuxmusl-x64@1.3.0': - resolution: {integrity: sha512-LiYMhUZicB1QG//+RvmYZpXJO8fYRENfp+MZUCnG9aw+AKvGAy9gPaCnuwsPcBFs8EV66M0NNxj9VHcNklE8zw==} - cpu: [x64] - os: [linux] - libc: [musl] - '@img/sharp-libvips-linuxmusl-x64@1.3.2': resolution: {integrity: sha512-m0lrLiUt+lBYnCFr8qV/65yMR4E/c7/wf78I5eKTdkEakFAlZ9QlzEM3QIhhAwVeUhLAHLcCq7a7Vszq/oFNZQ==} cpu: [x64] os: [linux] libc: [musl] - '@img/sharp-linux-arm64@0.35.1': - resolution: {integrity: sha512-ErCRyGU7LeoaFBZ0xW8hhLlXzhAg80sc4vxePB86qvtEvW1jEhhmbiNBP4oEzZfPMnu6HwHXfzD2W2kBU+RnCw==} - engines: {node: '>=20.9.0'} - cpu: [arm64] - os: [linux] - libc: [glibc] - '@img/sharp-linux-arm64@0.35.3': resolution: {integrity: sha512-QgKDspHPnrU+GQ55XPhGwyhC8acLVOOSyAvo1oVfFmrIXLkDNmGWzAfDZ4xK8oSA1qBQrALcHX0G5UZni/SuFQ==} engines: {node: '>=20.9.0'} @@ -3912,13 +3838,6 @@ packages: os: [linux] libc: [glibc] - '@img/sharp-linux-arm@0.35.1': - resolution: {integrity: sha512-jygmR02PpCYypt7xB7nst1vqjZp/BpRA/Kf9nK7qRponJ/KrLPaZWEG4G15z1d2FZ6XqI+T0350ha3RSnKx24A==} - engines: {node: '>=20.9.0'} - cpu: [arm] - os: [linux] - libc: [glibc] - '@img/sharp-linux-arm@0.35.3': resolution: {integrity: sha512-affVWCTLooy8TSxbDx2qkzuDeaWLNVBA+P//FNBirHsXpP2fuBhk5AuboYUnrDnzoXes8GFjpTx0SBFOCRg+FA==} engines: {node: '>=20.9.0'} @@ -3926,13 +3845,6 @@ packages: os: [linux] libc: [glibc] - '@img/sharp-linux-ppc64@0.35.1': - resolution: {integrity: sha512-LUWZ2+r2UoLCd8j0RLCwQ4gL6w47+Y7igxtVnPIDXOOEjV86LpBkAHq5VpJeg+GHbw0KN/JWlPJOdZjyZnFqFQ==} - engines: {node: '>=20.9.0'} - cpu: [ppc64] - os: [linux] - libc: [glibc] - '@img/sharp-linux-ppc64@0.35.3': resolution: {integrity: sha512-sMd8rDxmpLOwv/7N44klFjOD5DUO7FLdjiXDI0hoxYaf7Ar262dQIEkosE98bps+5HPLtp/EvNqeqQtOycP/IA==} engines: {node: '>=20.9.0'} @@ -3940,13 +3852,6 @@ packages: os: [linux] libc: [glibc] - '@img/sharp-linux-riscv64@0.35.1': - resolution: {integrity: sha512-i7x6J3mwF4JgT0sM4V4WlAWdJ0bucPtA9rzO1bTji1n5qgBq/W5nn87RvOQPleuuxahNoLdTngByD8/vDDLArw==} - engines: {node: '>=20.9.0'} - cpu: [riscv64] - os: [linux] - libc: [glibc] - '@img/sharp-linux-riscv64@0.35.3': resolution: {integrity: sha512-0Eob78yjlYPfL5vMNWAW55l3R9Y6BQS/gOfe0ZcP9mEz9ohhKSt4im1hayiknXgf8AWrFqMvJcKIdmLmEe7yeQ==} engines: {node: '>=20.9.0'} @@ -3954,13 +3859,6 @@ packages: os: [linux] libc: [glibc] - '@img/sharp-linux-s390x@0.35.1': - resolution: {integrity: sha512-0zSaTUjTF0kIWTSYxD4EG/nvCU4jez53+3RdURtoY3HvbXtIQ98W90JnrGz/oLRFuEnfIy9+7xeq883euc0ZWw==} - engines: {node: '>=20.9.0'} - cpu: [s390x] - os: [linux] - libc: [glibc] - '@img/sharp-linux-s390x@0.35.3': resolution: {integrity: sha512-KgAxQ0DxpNOq1rG2t5cgTgShJFGSuU7XO45cqC+1NVOuZnP6tlgZRuSYOfNupGkHID0o3cJOsw4DVeJpMovcGw==} engines: {node: '>=20.9.0'} @@ -3968,13 +3866,6 @@ packages: os: [linux] libc: [glibc] - '@img/sharp-linux-x64@0.35.1': - resolution: {integrity: sha512-NbJD4mWdeyrNQKluO/tR/wBDOelcowSVGNBWxI0e3ZtlXc6F/UOVKDj1MLD4zl3oHTuvKW3s+MA9N54YTldAYw==} - engines: {node: '>=20.9.0'} - cpu: [x64] - os: [linux] - libc: [glibc] - '@img/sharp-linux-x64@0.35.3': resolution: {integrity: sha512-8pqvxubL2PGdhlPy6GLqzDYMUjyRmKAwKHYKixpdJYBUK7PJ0C029XdsnpFIdgRZG68fZiGdHVWcKPvtiPB4cA==} engines: {node: '>=20.9.0'} @@ -3982,13 +3873,6 @@ packages: os: [linux] libc: [glibc] - '@img/sharp-linuxmusl-arm64@0.35.1': - resolution: {integrity: sha512-VoW2sQCWI+0YIKQEmWJ8vzaQjTg9wIyfkFpvEfAS2h43X6iHu7GTk1hhOgB4IpSzCHe8UwQZIcx7b81VTaOrJA==} - engines: {node: '>=20.9.0'} - cpu: [arm64] - os: [linux] - libc: [musl] - '@img/sharp-linuxmusl-arm64@0.35.3': resolution: {integrity: sha512-Vz0iQjzzcSX3HCbfwFfCSG/9SCIqyO0mH2sXyiHaAYfBk0cRsCWXRyQYX0ovCK/PAQBbTzQ0dsPQHh5MAFL59w==} engines: {node: '>=20.9.0'} @@ -3996,13 +3880,6 @@ packages: os: [linux] libc: [musl] - '@img/sharp-linuxmusl-x64@0.35.1': - resolution: {integrity: sha512-LjBoSd/c5JU0/K5MwzDMlgsSRP2bPn98JQGFFQAOLQ0bU/1z4ekxUdSKY9BmlwSh/cA+OrvpgsWqfZyYfVHBRw==} - engines: {node: '>=20.9.0'} - cpu: [x64] - os: [linux] - libc: [musl] - '@img/sharp-linuxmusl-x64@0.35.3': resolution: {integrity: sha512-6O1NPKcDVj9QEdg7Hx549EX8U0rp6yXQERqru6yRN7fGBn32UvIRJUlWnk+8xDCiG76hXVBbX82NZ/ZKr0euIg==} engines: {node: '>=20.9.0'} @@ -4010,54 +3887,27 @@ packages: os: [linux] libc: [musl] - '@img/sharp-wasm32@0.35.1': - resolution: {integrity: sha512-PCQUoQdZyE8tp3HpbevuihfUmgSP4qWI0FGEPWoeXqaS+cUrFfemabHQiebUmUmlUhCuNnQMxGrQ+CPqK4hnxg==} - engines: {node: '>=20.9.0'} - '@img/sharp-wasm32@0.35.3': resolution: {integrity: sha512-cZ0XkcYGpHZkqW6iCkqTcmUC0CD9DhD5d/qeZlZkfRBn6GnHniZXLUo5+9xw8Iv76YE6LQFN9YNBlKREcCG76w==} engines: {node: '>=20.9.0'} - '@img/sharp-webcontainers-wasm32@0.35.1': - resolution: {integrity: sha512-xU2ml2bU2OPxYVvW2A6ae4M1g5QKyhKG06P4FAt+YEaFQQO0919Qx+XxIZEUuWTMoDViLpMws2/dQwoe/VcA6A==} - engines: {node: '>=20.9.0'} - cpu: [wasm32] - '@img/sharp-webcontainers-wasm32@0.35.3': resolution: {integrity: sha512-2rnq7bX3NzeR2T4YWgz8qiG4h3TSdMe+vN1iQXpJleSJ3SM5zQ8Fy2SyyXAWlbxpEZ2Y+Z4u1BePgJEYbSy80Q==} engines: {node: '>=20.9.0'} cpu: [wasm32] - '@img/sharp-win32-arm64@0.35.1': - resolution: {integrity: sha512-IkmHwuFhYpd3bTsN5SAahjwhiAcyXPooBt8vEUgxY3T0IP70sSJ0nU1xiPzZY8AH/OB1XpV3j8aZSVSOSfTbdA==} - engines: {node: '>=20.9.0'} - cpu: [arm64] - os: [win32] - '@img/sharp-win32-arm64@0.35.3': resolution: {integrity: sha512-4bPwFdMbeC4JQ8L8LOyWp6nsHcboP5fxkp6iPOXz2Vg49R42TuMs2whkJ5OAP4/Ul035qOzy0AecOF9VOscn4w==} engines: {node: '>=20.9.0'} cpu: [arm64] os: [win32] - '@img/sharp-win32-ia32@0.35.1': - resolution: {integrity: sha512-wQahqCi9MD8Yxzg4gVM4fNrZxh+r6vD55PyIg+WJPaM5ZRUyF35iQpwJCuma3r6viU9/8Pxlc+XHV+woVa6nCQ==} - engines: {node: ^20.9.0} - cpu: [ia32] - os: [win32] - '@img/sharp-win32-ia32@0.35.3': resolution: {integrity: sha512-r53mXsBN6lFUDiST764SvgwUdHAqM4rPAiDzAmf4fLoB6X/rkfyTrLCg6+g17wJJiCmB3JYgHuUldCWUIRFSXw==} engines: {node: ^20.9.0} cpu: [ia32] os: [win32] - '@img/sharp-win32-x64@0.35.1': - resolution: {integrity: sha512-WzBtkYtZHATLPe8XRharxZXxQ9cdLrQWHiwxt+BJ5rBsisQrKeeV86ErxPSVhcG6xCEuNhs0SqLpWr7XDa2k6w==} - engines: {node: '>=20.9.0'} - cpu: [x64] - os: [win32] - '@img/sharp-win32-x64@0.35.3': resolution: {integrity: sha512-D4y1vNeZrIIJCN+uHaWVtH86B+aCrdMYYjicy9pXHvbGZeGYLLSd3wdVuC37FxVXlU1ARsk84eKWfWMXGYEqvA==} engines: {node: '>=20.9.0'} @@ -4926,9 +4776,9 @@ packages: resolution: {integrity: sha512-wKTA2DxAGEW+QffRQvOhRQ0VBiYU2h2p8Yc1oBNlqSKws48/8faxqKNIuub0q4iuyTuLwtB8EkwiKwhlfV1PBA==} hasBin: true - '@playwright/test@1.60.0': - resolution: {integrity: sha512-O71yZIbAh/PxDMNGns37GHBIfrVkEVyn+AXyIa5dOTfb4/xNvRWV+Vv/NMbNCtODB/pO7vLlF2OTmMVLhmr7Ag==} - engines: {node: '>=18'} + '@playwright/test@1.62.1': + resolution: {integrity: sha512-DTcUc8qii+cpHvtOwggMtBRMjKZHXYWdw8syRYu2vtzuq4Wxphqq4NfCs5Zt44L6mA8rfDfj+PHnxFc/FeK6mQ==} + engines: {node: '>=20'} hasBin: true '@pnpm/config.env-replace@1.1.0': @@ -6377,6 +6227,10 @@ packages: vue-router: optional: true + '@vercel/detect-agent@1.2.5': + resolution: {integrity: sha512-0krENrjuitlW8s6TJu0MlqCevyCU7K7JK63jZAf7xZ6n17tx+vUEwzHT3sTxawtwZxaW21hu+oFUpoOrm49FsQ==} + engines: {node: '>=14'} + '@vercel/oidc@3.2.0': resolution: {integrity: sha512-UycprH3T6n3jH0k44NHMa7pnFHGu/N05MjojYr+Mc6I7obkoLIJujSWwin1pCvdy/eOxrI/l3uDLQsmcrOb4ug==} engines: {node: '>= 20'} @@ -7060,6 +6914,10 @@ packages: resolution: {integrity: sha512-7NzBL0rN6fMUW+f7A6Io4h40qQlG+xGmtMxfbnH/K7TAtt8JQWVQK+6g0UXKMeVJoyV5EkkNsErQ8pVD3bLHbA==} engines: {node: ^12.17.0 || ^14.13 || >=16.0.0} + chalk@6.0.0: + resolution: {integrity: sha512-2uNTXIuTTxk7ciZgAU1BQcgnchcG0xXnrs6jzkQfj9SsRa9M2s5zE8WT96hS6KmG4MzWHSrvH43DF1m4XRkrFg==} + engines: {node: '>=22'} + char-regex@1.0.2: resolution: {integrity: sha512-kWWXztvZ5SBQV+eRgKFeh8q5sLuZY2+8WUIzlxWVTg+oGwY14qylx1KbKzHd8P6ZYkAg0xyIDU9JMHhyJMZ1jw==} engines: {node: '>=10'} @@ -7151,6 +7009,10 @@ packages: resolution: {integrity: sha512-ywqV+5MmyL4E7ybXgKys4DugZbX0FC6LnwrhjuykIjnK9k8OQacQ7axGKnjDXWNhns0xot3bZI5h55H8yo9cJg==} engines: {node: '>=6'} + cli-spinners@3.4.0: + resolution: {integrity: sha512-bXfOC4QcT1tKXGorxL3wbJm6XJPDqEnij2gQ2m7ESQuE+/z9YFIWnl/5RpTiKWbMq3EVKR4fRLJGn6DVfu0mpw==} + engines: {node: '>=18.20'} + cli-table3@0.6.5: resolution: {integrity: sha512-+W/5efTR7y5HRD7gACw9yQjqMVvEMLBHmboM/kPWam+H+Hmyrgjh6YncVKK122YZkXrLudzTuAukUw9FnMf7IQ==} engines: {node: 10.* || >= 12.*} @@ -7258,6 +7120,10 @@ packages: resolution: {integrity: sha512-H+y0Jo/T1RZ9qPP4Eh1pkcQcLRglraJaSLoyOtHxu6AapkjWVCy2Sit1QQ4x3Dng8qDlSsZEet7g5Pq06MvTgw==} engines: {node: '>=20'} + commander@15.0.0: + resolution: {integrity: sha512-z67u4ZhzCL/Tydu1lJARtEZYWbWaN7oYLHbsuzocr6y4N6WZAagG3RQ4FW61V1/0+jImpj293XfrcYnd1qxtPg==} + engines: {node: '>=22.12.0'} + commander@2.20.3: resolution: {integrity: sha512-GpVkmM8vF2vQUkj2LvZmD35JxeJOLCwJ9cUkugyk2nuhbv3+mJvpLYYt+0+USMxE+oj+ey/lJEnhZw75x/OMcQ==} @@ -9356,6 +9222,10 @@ packages: resolution: {integrity: sha512-2HvIEKRoqS62guEC+qBjpvRubdX910WCMuJTZ+I9yvqKU2/12eSL549HMwtabb4oupdj2sMP50k+XJfB/8JE6w==} engines: {node: '>=8'} + is-interactive@2.0.0: + resolution: {integrity: sha512-qP1vozQRI+BMOPcjFzrjXuQvdak2pHNUMZoeG2eRbiSqyvbEf/wQtEOTOX1guk6E3t36RkaqiSt8A/6YElNxLQ==} + engines: {node: '>=12'} + is-lambda@1.0.1: resolution: {integrity: sha512-z7CMFGNrENq5iFB9Bqo64Xk6Y9sg+epq1myIcdHaGnbMTYOxvzsEtdYqQUylB7LxfkvgrrjP32T6Ywciio9UIQ==} @@ -9478,6 +9348,10 @@ packages: resolution: {integrity: sha512-knxG2q4UC3u8stRGyAVJCOdxFmv5DZiRcdlIaAQXAbSfJya+OhopNotLQrstBhququ4ZpuKbDc/8S6mgXgPFPw==} engines: {node: '>=10'} + is-unicode-supported@2.1.0: + resolution: {integrity: sha512-mE00Gnza5EEB3Ds0HfMyllZzbBrmLOX3vfWoj9A9PEnTfratQ/BcaJOuMhnkhjXvb2+FkY3VuHqtAGpTPmglFQ==} + engines: {node: '>=18'} + is-weakmap@2.0.2: resolution: {integrity: sha512-K5pXYOm9wqY1RgjpL3YTkF39tni1XajUIkawTLUo9EZEVUFga5gSQJF8nNS7ZwJQ02y+1YCNYcMh+HIf1ZqE+w==} engines: {node: '>= 0.4'} @@ -9935,6 +9809,10 @@ packages: resolution: {integrity: sha512-8XPvpAA8uyhfteu8pIvQxpJZ7SYYdpUivZpGy6sFsBuKRY/7rQGavedeB8aK+Zkyq6upMFVL/9AW6vOYzfRyLg==} engines: {node: '>=10'} + log-symbols@7.0.1: + resolution: {integrity: sha512-ja1E3yCr9i/0hmBVaM0bfwDjnGy8I/s6PP4DFp+yP+a+mrHO4Rm7DtmnqROTUkHIkqffC84YY7AeqX6oFk0WFg==} + engines: {node: '>=18'} + log-update@6.1.0: resolution: {integrity: sha512-9ie8ItPR6tjY5uYJh8K/Zrv/RMZ5VOlOWvtZdEHYSTFKZfIBPQa9tOAEeAWhd+AnIneLJ22w5fjOYtoutpWq5w==} engines: {node: '>=18'} @@ -10694,6 +10572,10 @@ packages: resolution: {integrity: sha512-zAKMgGXUim0Jyd6CXK9lraBnD3H5yPGBPPOkC23a2BG6hsm4Zu6OQSjQuEtV0BHDf4aKHcUFvJiGRrFuW3MG8g==} engines: {node: '>=10'} + ora@9.4.1: + resolution: {integrity: sha512-6VlU9MLXbjVQD04AZCMX28hVtA5bUoadvUqO76MUCVA0ilwJbMiHsITRPfyVm6p/BC0Av/BXMujx39WCe1LEqw==} + engines: {node: '>=20'} + os-homedir@1.0.2: resolution: {integrity: sha512-B5JU3cabzk8c67mRRd3ECmROafjYMXbuzlwtqdM8IbS8ktlTix8aFGb2bAGKrSRIlnfKwovGUUr72JUPyOb6kQ==} engines: {node: '>=0.10.0'} @@ -10994,14 +10876,14 @@ packages: resolution: {integrity: sha512-emEcLuomt2j03vxD54giVB4SxTjnsqkU692xZOZXHDVoYyypEm+b3jpiTcc+Cf+myooc+/Ly0z01jqeNHVgJGw==} engines: {node: '>=16.0.0'} - playwright-core@1.60.0: - resolution: {integrity: sha512-9bW6zvX/m0lEbgTKJ6YppOKx8H3VOPBMOCFh2irXFOT4BbHgrx5hPjwJYLT40Lu+4qtD36qKc/Hn56StUW57IA==} - engines: {node: '>=18'} + playwright-core@1.62.1: + resolution: {integrity: sha512-wPYSwEBJY9GHraISXqyqtx0na0LpO3XEX7jNDhntbex7tzUS7kLnZsOlFruFJB4Hi/rhDMjXGqHewDZ68nYZVw==} + engines: {node: '>=20'} hasBin: true - playwright@1.60.0: - resolution: {integrity: sha512-hheHdokM8cdqCb0lcE3s+zT4t4W+vvjpGxsZlDnikarzx8tSzMebh3UiFtgqwFwnTnjYQcsyMF8ei2mCO/tpeA==} - engines: {node: '>=18'} + playwright@1.62.1: + resolution: {integrity: sha512-0M+L3LAD8/nm554LOla9Ayx0j0tmFZ0FBcoQ7F1VuVHpM/XpiC8RcDzBQB8W5+hA8L22THxELzeF+2WcUzvcLg==} + engines: {node: '>=20'} hasBin: true pngjs@6.0.0: @@ -12117,10 +11999,6 @@ packages: shallowequal@1.1.0: resolution: {integrity: sha512-y0m1JoUZSlPAjXVtPPW70aZWfIL/dSP7AFkRnniLCrK/8MDKog3TySTBmckD+RObVxH0v4Tox67+F14PdED2oQ==} - sharp@0.35.1: - resolution: {integrity: sha512-lW979AMi+ESidzMv/Lnv+F9bknzLyxLqFI05Sm433vOeRcltgxQmXpnfOOFIAlKtwXU/ksupm2srQoFCkR214g==} - engines: {node: '>=20.9.0'} - sharp@0.35.3: resolution: {integrity: sha512-ej0zVHuZGHCiABXcNxeYhpRnPNPAcvbG8RMdBAhDAxLKkCRVSpK3Iyu7qbqw3JMzoj0REeM6f3tJLtVwl0023Q==} engines: {node: '>=20.9.0'} @@ -12368,6 +12246,10 @@ packages: std-env@4.1.0: resolution: {integrity: sha512-Rq7ybcX2RuC55r9oaPVEW7/xu3tj8u4GeBYHBWCychFtzMIr86A7e3PPEBPT37sHStKX3+TiX/Fr/ACmJLVlLQ==} + stdin-discarder@0.3.2: + resolution: {integrity: sha512-eCPu1qRxPVkl5605OTWF8Wz40b4Mf45NY5LQmVPQ599knfs5QhASUm9GbJ5BDMDOXgrnh0wyEdvzmL//YMlw0A==} + engines: {node: '>=18'} + stop-iteration-iterator@1.1.0: resolution: {integrity: sha512-eLoXW/DHyl62zxY4SCaIgnRhuMr6ri4juEYARS8E6sCEqzKpOiE521Ucofdx+KnDZl5xmvGYaaKCk5FEOxJCoQ==} engines: {node: '>= 0.4'} @@ -13629,6 +13511,10 @@ packages: resolution: {integrity: sha512-U/PBtDf35ff0D8X8D0jfdzHYEPFxAI7jJlxZXwCSez5M3190m+QobIfh+sWDWSHMCWWJN2AWamkegn6vr6YBTw==} engines: {node: '>=18'} + yoctocolors@2.2.0: + resolution: {integrity: sha512-xYqdZFUK/VYazNl/oCDYN+3WloWQwMfZxBoiNt6qNyk+xfOdi598muWE42rNZFp1kNOiqW936q5RhUdnpqElSg==} + engines: {node: '>=18'} + zod-validation-error@4.0.2: resolution: {integrity: sha512-Q6/nZLe6jxuU80qb/4uJ4t5v2VEZ44lzQjPDhYJNztRQ4wyWc6VF3D3Kb/fAuPetZQnhS3hnajCf9CsWesghLQ==} engines: {node: '>=18.0.0'} @@ -13822,7 +13708,7 @@ snapshots: jsonpointer: 5.0.1 leven: 3.1.0 - '@argos-ci/api-client@0.22.0(supports-color@7.2.0)': + '@argos-ci/api-client@0.31.0': dependencies: debug: 4.4.3(supports-color@7.2.0) openapi-fetch: 0.17.0 @@ -13830,32 +13716,47 @@ snapshots: transitivePeerDependencies: - supports-color - '@argos-ci/browser@6.1.0': {} + '@argos-ci/browser@6.4.5': {} + + '@argos-ci/cli@6.9.0(@types/node@25.9.1)': + dependencies: + '@argos-ci/api-client': 0.31.0 + '@argos-ci/core': 6.8.1(@types/node@25.9.1) + '@vercel/detect-agent': 1.2.5 + commander: 15.0.0 + open: 11.0.0 + ora: 9.4.1 + transitivePeerDependencies: + - '@types/node' + - supports-color - '@argos-ci/core@6.1.1(supports-color@7.2.0)': + '@argos-ci/core@6.8.1(@types/node@25.9.1)': dependencies: - '@argos-ci/api-client': 0.22.0(supports-color@7.2.0) - '@argos-ci/util': 4.0.0 + '@argos-ci/api-client': 0.31.0 + '@argos-ci/util': 4.1.0 convict: 6.2.5 debug: 4.4.3(supports-color@7.2.0) fast-glob: 3.3.3 mime-types: 3.0.2 - sharp: 0.35.1 + p-retry: 8.0.0 + sharp: 0.35.3(@types/node@25.9.1) tmp: 0.2.7 transitivePeerDependencies: + - '@types/node' - supports-color - '@argos-ci/playwright@7.0.6(supports-color@7.2.0)': + '@argos-ci/playwright@7.4.6(@types/node@25.9.1)(supports-color@7.2.0)': dependencies: - '@argos-ci/browser': 6.1.0 - '@argos-ci/core': 6.1.1(supports-color@7.2.0) - '@argos-ci/util': 4.0.0 - chalk: 5.6.2 + '@argos-ci/browser': 6.4.5 + '@argos-ci/core': 6.8.1(@types/node@25.9.1) + '@argos-ci/util': 4.1.0 + chalk: 6.0.0 debug: 4.4.3(supports-color@7.2.0) transitivePeerDependencies: + - '@types/node' - supports-color - '@argos-ci/util@4.0.0': {} + '@argos-ci/util@4.1.0': {} '@asamuzakjp/css-color@3.2.0': dependencies: @@ -15426,211 +15327,107 @@ snapshots: '@img/colour@1.1.0': {} - '@img/sharp-darwin-arm64@0.35.1': - optionalDependencies: - '@img/sharp-libvips-darwin-arm64': 1.3.0 - optional: true - '@img/sharp-darwin-arm64@0.35.3': optionalDependencies: '@img/sharp-libvips-darwin-arm64': 1.3.2 optional: true - '@img/sharp-darwin-x64@0.35.1': - optionalDependencies: - '@img/sharp-libvips-darwin-x64': 1.3.0 - optional: true - '@img/sharp-darwin-x64@0.35.3': optionalDependencies: '@img/sharp-libvips-darwin-x64': 1.3.2 optional: true - '@img/sharp-freebsd-wasm32@0.35.1': - dependencies: - '@img/sharp-wasm32': 0.35.1 - optional: true - '@img/sharp-freebsd-wasm32@0.35.3': dependencies: '@img/sharp-wasm32': 0.35.3 optional: true - '@img/sharp-libvips-darwin-arm64@1.3.0': - optional: true - '@img/sharp-libvips-darwin-arm64@1.3.2': optional: true - '@img/sharp-libvips-darwin-x64@1.3.0': - optional: true - '@img/sharp-libvips-darwin-x64@1.3.2': optional: true - '@img/sharp-libvips-linux-arm64@1.3.0': - optional: true - '@img/sharp-libvips-linux-arm64@1.3.2': optional: true - '@img/sharp-libvips-linux-arm@1.3.0': - optional: true - '@img/sharp-libvips-linux-arm@1.3.2': optional: true - '@img/sharp-libvips-linux-ppc64@1.3.0': - optional: true - '@img/sharp-libvips-linux-ppc64@1.3.2': optional: true - '@img/sharp-libvips-linux-riscv64@1.3.0': - optional: true - '@img/sharp-libvips-linux-riscv64@1.3.2': optional: true - '@img/sharp-libvips-linux-s390x@1.3.0': - optional: true - '@img/sharp-libvips-linux-s390x@1.3.2': optional: true - '@img/sharp-libvips-linux-x64@1.3.0': - optional: true - '@img/sharp-libvips-linux-x64@1.3.2': optional: true - '@img/sharp-libvips-linuxmusl-arm64@1.3.0': - optional: true - '@img/sharp-libvips-linuxmusl-arm64@1.3.2': optional: true - '@img/sharp-libvips-linuxmusl-x64@1.3.0': - optional: true - '@img/sharp-libvips-linuxmusl-x64@1.3.2': optional: true - '@img/sharp-linux-arm64@0.35.1': - optionalDependencies: - '@img/sharp-libvips-linux-arm64': 1.3.0 - optional: true - '@img/sharp-linux-arm64@0.35.3': optionalDependencies: '@img/sharp-libvips-linux-arm64': 1.3.2 optional: true - '@img/sharp-linux-arm@0.35.1': - optionalDependencies: - '@img/sharp-libvips-linux-arm': 1.3.0 - optional: true - '@img/sharp-linux-arm@0.35.3': optionalDependencies: '@img/sharp-libvips-linux-arm': 1.3.2 optional: true - '@img/sharp-linux-ppc64@0.35.1': - optionalDependencies: - '@img/sharp-libvips-linux-ppc64': 1.3.0 - optional: true - '@img/sharp-linux-ppc64@0.35.3': optionalDependencies: '@img/sharp-libvips-linux-ppc64': 1.3.2 optional: true - '@img/sharp-linux-riscv64@0.35.1': - optionalDependencies: - '@img/sharp-libvips-linux-riscv64': 1.3.0 - optional: true - '@img/sharp-linux-riscv64@0.35.3': optionalDependencies: '@img/sharp-libvips-linux-riscv64': 1.3.2 optional: true - '@img/sharp-linux-s390x@0.35.1': - optionalDependencies: - '@img/sharp-libvips-linux-s390x': 1.3.0 - optional: true - '@img/sharp-linux-s390x@0.35.3': optionalDependencies: '@img/sharp-libvips-linux-s390x': 1.3.2 optional: true - '@img/sharp-linux-x64@0.35.1': - optionalDependencies: - '@img/sharp-libvips-linux-x64': 1.3.0 - optional: true - '@img/sharp-linux-x64@0.35.3': optionalDependencies: '@img/sharp-libvips-linux-x64': 1.3.2 optional: true - '@img/sharp-linuxmusl-arm64@0.35.1': - optionalDependencies: - '@img/sharp-libvips-linuxmusl-arm64': 1.3.0 - optional: true - '@img/sharp-linuxmusl-arm64@0.35.3': optionalDependencies: '@img/sharp-libvips-linuxmusl-arm64': 1.3.2 optional: true - '@img/sharp-linuxmusl-x64@0.35.1': - optionalDependencies: - '@img/sharp-libvips-linuxmusl-x64': 1.3.0 - optional: true - '@img/sharp-linuxmusl-x64@0.35.3': optionalDependencies: '@img/sharp-libvips-linuxmusl-x64': 1.3.2 optional: true - '@img/sharp-wasm32@0.35.1': - dependencies: - '@emnapi/runtime': 1.11.1 - optional: true - '@img/sharp-wasm32@0.35.3': dependencies: '@emnapi/runtime': 1.11.1 optional: true - '@img/sharp-webcontainers-wasm32@0.35.1': - dependencies: - '@img/sharp-wasm32': 0.35.1 - optional: true - '@img/sharp-webcontainers-wasm32@0.35.3': dependencies: '@img/sharp-wasm32': 0.35.3 optional: true - '@img/sharp-win32-arm64@0.35.1': - optional: true - '@img/sharp-win32-arm64@0.35.3': optional: true - '@img/sharp-win32-ia32@0.35.1': - optional: true - '@img/sharp-win32-ia32@0.35.3': optional: true - '@img/sharp-win32-x64@0.35.1': - optional: true - '@img/sharp-win32-x64@0.35.3': optional: true @@ -16703,9 +16500,9 @@ snapshots: os-homedir: 1.0.2 regexpu-core: 4.8.0 - '@playwright/test@1.60.0': + '@playwright/test@1.62.1': dependencies: - playwright: 1.60.0 + playwright: 1.62.1 '@pnpm/config.env-replace@1.1.0': {} @@ -18244,6 +18041,8 @@ snapshots: optionalDependencies: react: 19.2.6 + '@vercel/detect-agent@1.2.5': {} + '@vercel/oidc@3.2.0': {} '@vitejs/plugin-react@6.0.2(vite@8.0.14(@types/node@25.9.1)(jiti@2.7.0)(terser@5.48.0)(yaml@2.9.0))': @@ -19028,6 +18827,8 @@ snapshots: chalk@5.6.2: {} + chalk@6.0.0: {} + char-regex@1.0.2: {} character-entities-html4@2.1.0: {} @@ -19121,6 +18922,8 @@ snapshots: cli-spinners@2.9.2: {} + cli-spinners@3.4.0: {} + cli-table3@0.6.5: dependencies: string-width: 4.2.3 @@ -19213,6 +19016,8 @@ snapshots: commander@14.0.3: {} + commander@15.0.0: {} + commander@2.20.3: {} commander@4.1.1: {} @@ -21700,6 +21505,8 @@ snapshots: is-interactive@1.0.0: {} + is-interactive@2.0.0: {} + is-lambda@1.0.1: {} is-map@2.0.3: {} @@ -21789,6 +21596,8 @@ snapshots: is-unicode-supported@0.1.0: {} + is-unicode-supported@2.1.0: {} + is-weakmap@2.0.2: {} is-weakref@1.1.1: @@ -22348,6 +22157,11 @@ snapshots: chalk: 4.1.2 is-unicode-supported: 0.1.0 + log-symbols@7.0.1: + dependencies: + is-unicode-supported: 2.1.0 + yoctocolors: 2.2.0 + log-update@6.1.0: dependencies: ansi-escapes: 7.3.0 @@ -23629,6 +23443,17 @@ snapshots: strip-ansi: 6.0.1 wcwidth: 1.0.1 + ora@9.4.1: + dependencies: + chalk: 5.6.2 + cli-cursor: 5.0.0 + cli-spinners: 3.4.0 + is-interactive: 2.0.0 + is-unicode-supported: 2.1.0 + log-symbols: 7.0.1 + stdin-discarder: 0.3.2 + string-width: 8.2.1 + os-homedir@1.0.2: {} own-keys@1.0.1: @@ -23957,11 +23782,11 @@ snapshots: pvutils: 1.1.5 tslib: 2.8.1 - playwright-core@1.60.0: {} + playwright-core@1.62.1: {} - playwright@1.60.0: + playwright@1.62.1: dependencies: - playwright-core: 1.60.0 + playwright-core: 1.62.1 optionalDependencies: fsevents: 2.3.2 @@ -25283,38 +25108,6 @@ snapshots: shallowequal@1.1.0: {} - sharp@0.35.1: - dependencies: - '@img/colour': 1.1.0 - detect-libc: 2.1.2 - semver: 7.8.5 - optionalDependencies: - '@img/sharp-darwin-arm64': 0.35.1 - '@img/sharp-darwin-x64': 0.35.1 - '@img/sharp-freebsd-wasm32': 0.35.1 - '@img/sharp-libvips-darwin-arm64': 1.3.0 - '@img/sharp-libvips-darwin-x64': 1.3.0 - '@img/sharp-libvips-linux-arm': 1.3.0 - '@img/sharp-libvips-linux-arm64': 1.3.0 - '@img/sharp-libvips-linux-ppc64': 1.3.0 - '@img/sharp-libvips-linux-riscv64': 1.3.0 - '@img/sharp-libvips-linux-s390x': 1.3.0 - '@img/sharp-libvips-linux-x64': 1.3.0 - '@img/sharp-libvips-linuxmusl-arm64': 1.3.0 - '@img/sharp-libvips-linuxmusl-x64': 1.3.0 - '@img/sharp-linux-arm': 0.35.1 - '@img/sharp-linux-arm64': 0.35.1 - '@img/sharp-linux-ppc64': 0.35.1 - '@img/sharp-linux-riscv64': 0.35.1 - '@img/sharp-linux-s390x': 0.35.1 - '@img/sharp-linux-x64': 0.35.1 - '@img/sharp-linuxmusl-arm64': 0.35.1 - '@img/sharp-linuxmusl-x64': 0.35.1 - '@img/sharp-webcontainers-wasm32': 0.35.1 - '@img/sharp-win32-arm64': 0.35.1 - '@img/sharp-win32-ia32': 0.35.1 - '@img/sharp-win32-x64': 0.35.1 - sharp@0.35.3(@types/node@25.9.1): dependencies: '@img/colour': 1.1.0 @@ -25625,6 +25418,8 @@ snapshots: std-env@4.1.0: {} + stdin-discarder@0.3.2: {} + stop-iteration-iterator@1.1.0: dependencies: es-errors: 1.3.0 @@ -27113,6 +26908,8 @@ snapshots: yoctocolors-cjs@2.1.3: {} + yoctocolors@2.2.0: {} + zod-validation-error@4.0.2(zod@4.4.3): dependencies: zod: 4.4.3 diff --git a/pnpm-workspace.yaml b/pnpm-workspace.yaml index 48fe9df1761b..a4413f758974 100644 --- a/pnpm-workspace.yaml +++ b/pnpm-workspace.yaml @@ -36,6 +36,7 @@ trustPolicyExclude: - 'tinyexec@1.2.2' - '@trickfilm400/rollup-plugin-off-main-thread@3.0.0-pre1' - 'browserslist-load-config@1.0.2' + - '@vercel/detect-agent@1.2.5' # See https://github.com/vercel/vercel/issues/17408 trustLockfile: false blockExoticSubdeps: true diff --git a/project-words.txt b/project-words.txt index 8d50bea68f93..569565a8e5dc 100644 --- a/project-words.txt +++ b/project-words.txt @@ -189,8 +189,6 @@ O’Shannessy paas Palenight palenight -Pagefind -pagefind Paletton Palo Paraiso diff --git a/website/_dogfooding/argosBuild.ts b/website/_dogfooding/argosBuild.ts new file mode 100644 index 000000000000..acad72912889 --- /dev/null +++ b/website/_dogfooding/argosBuild.ts @@ -0,0 +1,39 @@ +/** + * Copyright (c) Facebook, Inc. and its affiliates. + * + * This source code is licensed under the MIT license found in the + * LICENSE file in the root directory of this source tree. + */ +import type {PluginConfig} from '@docusaurus/types'; + +export const isArgosBuild = process.env.DOCUSAURUS_ARGOS_BUILD === 'true'; + +if (isArgosBuild) { + console.warn( + `Building site for Argos CI: +- Additional dogfooding pages will be preserved in sitemap +- Bundler output assets will NOT be hashed to make HTML files more stable`, + ); +} + +export const argosBuildPlugin: PluginConfig = function ArgosBuildPlugin() { + return { + name: 'argos-build-plugin', + configureWebpack: (_conf, isServer) => { + if (!isServer && isArgosBuild) { + // For Argos builds, we disable output assets hashing in client builds + // This is because we want to "stabilize" html/css/js files + // This way we can upload them to Argos to diff them + // See https://argos-ci.com/docs/learn/how-to-guides/visual-coverage/compare-non-image-files + return { + output: { + pathinfo: false, + filename: '[name].js', + chunkFilename: '[name].js', + }, + }; + } + return undefined; + }, + }; +}; diff --git a/website/_dogfooding/dogfooding.config.ts b/website/_dogfooding/dogfooding.config.ts index ff24242bdad7..37c11646196b 100644 --- a/website/_dogfooding/dogfooding.config.ts +++ b/website/_dogfooding/dogfooding.config.ts @@ -7,6 +7,7 @@ import path from 'path'; import RecmaMDXDisplayName from 'recma-mdx-displayname'; +import {isArgosBuild} from './argosBuild'; import type {PluginConfig, Plugin} from '@docusaurus/types'; import type {Options as DocsOptions} from '@docusaurus/plugin-content-docs'; import type {Options as BlogOptions} from '@docusaurus/plugin-content-blog'; @@ -18,14 +19,6 @@ import type {Options as PageOptions} from '@docusaurus/plugin-content-pages'; // TODO duplicated :/ export const showLastUpdate = process.env.DOCUSAURUS_CURRENT_LOCALE === 'en'; -export const isArgosBuild = process.env.DOCUSAURUS_ARGOS_BUILD === 'true'; - -if (isArgosBuild) { - console.warn( - 'Building site for Argos CI - additional dogfooding pages will be preserved in sitemap', - ); -} - export function dogfoodingTransformFrontMatter(frontMatter: { [key: string]: unknown; }): {[key: string]: unknown} { diff --git a/website/docusaurus.config.ts b/website/docusaurus.config.ts index 8c00701ef363..0ce0fd21df04 100644 --- a/website/docusaurus.config.ts +++ b/website/docusaurus.config.ts @@ -18,7 +18,6 @@ import { dogfoodingThemeInstances, dogfoodingRedirects, dogfoodingTransformFrontMatter, - isArgosBuild, } from './_dogfooding/dogfooding.config'; import ConfigLocalized from './docusaurus.config.localized.json'; @@ -26,6 +25,7 @@ import ConfigLocalized from './docusaurus.config.localized.json'; import PrismLight from './src/utils/prismLight'; import PrismDark from './src/utils/prismDark'; +import {isArgosBuild, argosBuildPlugin} from './_dogfooding/argosBuild'; import type {Config, DocusaurusConfig, VcsPreset} from '@docusaurus/types'; import type * as Preset from '@docusaurus/preset-classic'; @@ -382,38 +382,39 @@ export default async function createConfigAsync() { showLastUpdateTime: showLastUpdate, } satisfies DocsOptions, ], - !process.env.DOCUSAURUS_SKIP_BUNDLING && [ - 'client-redirects', - { - fromExtensions: ['html'], - createRedirects(routePath) { - // Redirect to /docs from /docs/introduction (now docs root doc) - if (routePath === '/docs' || routePath === '/docs/') { - return [`${routePath}/introduction`]; - } - return []; - }, - redirects: [ - { - from: ['/docs/support', '/docs/next/support'], - to: '/community/support', - }, - { - from: ['/docs/team', '/docs/next/team'], - to: '/community/team', - }, - { - from: ['/docs/resources', '/docs/next/resources'], - to: '/community/resources', - }, - { - from: '/docs/api/misc/docusaurus-init', - to: '/docs/api/misc/create-docusaurus', + !process.env.DOCUSAURUS_SKIP_BUNDLING && + !isArgosBuild && [ + 'client-redirects', + { + fromExtensions: ['html'], + createRedirects(routePath) { + // Redirect to /docs from /docs/introduction (now docs root doc) + if (routePath === '/docs' || routePath === '/docs/') { + return [`${routePath}/introduction`]; + } + return []; }, - ...dogfoodingRedirects, - ], - } satisfies ClientRedirectsOptions, - ], + redirects: [ + { + from: ['/docs/support', '/docs/next/support'], + to: '/community/support', + }, + { + from: ['/docs/team', '/docs/next/team'], + to: '/community/team', + }, + { + from: ['/docs/resources', '/docs/next/resources'], + to: '/community/resources', + }, + { + from: '/docs/api/misc/docusaurus-init', + to: '/docs/api/misc/create-docusaurus', + }, + ...dogfoodingRedirects, + ], + } satisfies ClientRedirectsOptions, + ], [ 'ideal-image', { @@ -489,6 +490,7 @@ export default async function createConfigAsync() { '@docusaurus/theme-mermaid', './src/plugins/featureRequests/FeatureRequestsPlugin.js', ...dogfoodingPluginInstances, + argosBuildPlugin, ], presets: [ [