From 8d2b14972e89588ad4b03371d5f7825f9cbc28f3 Mon Sep 17 00:00:00 2001 From: "translatewiki.net" Date: Thu, 19 Feb 2026 13:03:48 +0100 Subject: [PATCH 001/130] Localisation updates from https://translatewiki.net. --- src/locales/be-tarask.json | 2 +- src/locales/sms.json | 3 ++- 2 files changed, 3 insertions(+), 2 deletions(-) diff --git a/src/locales/be-tarask.json b/src/locales/be-tarask.json index d8806c29440..5b0373987e1 100644 --- a/src/locales/be-tarask.json +++ b/src/locales/be-tarask.json @@ -70,7 +70,7 @@ "pad.toolbar.showusers.title": "Паказаць карыстальнікаў у гэтым дакумэнце", "pad.colorpicker.save": "Захаваць", "pad.colorpicker.cancel": "Скасаваць", - "pad.loading": "Ладаваньне…", + "pad.loading": "Загрузка…", "pad.noCookie": "Кукі ня знойдзеныя. Калі ласка, дазвольце кукі ў вашым браўзэры! Паміж наведваньнямі вашая сэсія і налады ня будуць захаваныя. Гэта можа адбывацца таму, што ў некаторых броўзэрах Etherpad заключаны ўнутры iFrame. Праверце, калі ласка, што Etherpad знаходзіцца ў тым жа паддамэне/дамэне, што і бацькоўскі iFrame", "pad.permissionDenied": "Вы ня маеце дазволу на доступ да гэтага дакумэнта", "pad.settings.padSettings": "Налады дакумэнта", diff --git a/src/locales/sms.json b/src/locales/sms.json index 3ea65a3cbeb..18b8bf13c24 100644 --- a/src/locales/sms.json +++ b/src/locales/sms.json @@ -13,7 +13,8 @@ "admin_settings.current_save.value": "Ruõkk asetõõzzid", "admin_settings.page-title": "Asetõõzz - Etherpad", "index.newPad": "Ođđ mošttʼtõspõʹmmai", - "index.createOpenPad": "leʼbe raaj leʼbe ääʹved mošttʼtõspõʹmmai nõõmin:", + "index.copyLink": "2. Kopiââʹst liiŋk", + "index.createOpenPad": "Ääʹved mošttʼtõspõʹmmai nõõmin", "pad.toolbar.underline.title": "Vuâllacertldâsttmõš (CTRL-U)", "pad.toolbar.undo.title": "Kååʹmet (Ctrl+Z)", "pad.toolbar.savedRevision.title": "Ruõkk muttâz", From ba34a905a81067fe9088349d7d24b572296a686c Mon Sep 17 00:00:00 2001 From: SamTV12345 <40429738+samtv12345@users.noreply.github.com> Date: Sun, 22 Feb 2026 09:28:55 +0100 Subject: [PATCH 002/130] chore: updated lock yaml --- .npmrc | 2 +- pnpm-lock.yaml | 33 +++++++++++++++++++++------------ 2 files changed, 22 insertions(+), 13 deletions(-) diff --git a/.npmrc b/.npmrc index f301fedf982..54638db6759 100644 --- a/.npmrc +++ b/.npmrc @@ -1 +1 @@ -auto-install-peers=false +registry=http://10.0.0.122:4873/ \ No newline at end of file diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index d018ed6f634..59ff85953b7 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -1,7 +1,7 @@ lockfileVersion: '9.0' settings: - autoInstallPeers: false + autoInstallPeers: true excludeLinksFromLockfile: false importers: @@ -96,7 +96,7 @@ importers: version: rolldown-vite@7.2.10(@types/node@25.2.3)(tsx@4.21.0) vite-plugin-babel: specifier: ^1.5.1 - version: 1.5.1(@babel/core@7.29.0)(rolldown-vite@7.2.10(@types/node@25.2.3)(tsx@4.21.0)) + version: 1.5.1(@babel/core@7.28.5)(rolldown-vite@7.2.10(@types/node@25.2.3)(tsx@4.21.0)) vite-plugin-static-copy: specifier: ^3.2.0 version: 3.2.0(rolldown-vite@7.2.10(@types/node@25.2.3)(tsx@4.21.0)) @@ -136,6 +136,10 @@ importers: version: 5.9.3 doc: + dependencies: + search-insights: + specifier: ^2.17.3 + version: 2.17.3 devDependencies: vitepress: specifier: ^2.0.0-alpha.16 @@ -4447,6 +4451,9 @@ packages: scheduler@0.27.0: resolution: {integrity: sha512-eNv+WrVbKu1f3vbYJT/xtiF5syA5HPIMtf9IgY/nKg0sWqzAUEvqY/xm7OcZc/qafLx/iO9FgOmeSAp4v5ti/Q==} + search-insights@2.17.3: + resolution: {integrity: sha512-RQPdCYTa8A68uM2jwxoY842xDhvx3E5LFL1LxvxCNMev4o5mLuokczhzjAgGwUZBAmOKZknArSxLKmXtIi2AxQ==} + security@1.0.0: resolution: {integrity: sha512-5qfoAgfRWS1sUn+fUJtdbbqM1BD/LoQGa+smPTDjf9OqHyuJqi6ewtbYL0+V1S1RaU6OCOCMWGZocIfz2YK4uw==} @@ -7516,10 +7523,10 @@ snapshots: '@rushstack/eslint-patch': 1.11.0 '@typescript-eslint/eslint-plugin': 7.18.0(@typescript-eslint/parser@7.18.0(eslint@10.0.0)(typescript@5.9.3))(eslint@10.0.0)(typescript@5.9.3) '@typescript-eslint/parser': 7.18.0(eslint@10.0.0)(typescript@5.9.3) - eslint-import-resolver-typescript: 3.10.0(eslint-plugin-import@2.31.0)(eslint@10.0.0) + eslint-import-resolver-typescript: 3.10.0(eslint-plugin-import@2.31.0(@typescript-eslint/parser@7.18.0(eslint@10.0.0)(typescript@5.9.3))(eslint@10.0.0))(eslint@10.0.0) eslint-plugin-cypress: 2.15.2(eslint@10.0.0) eslint-plugin-eslint-comments: 3.2.0(eslint@10.0.0) - eslint-plugin-import: 2.31.0(@typescript-eslint/parser@7.18.0(eslint@10.0.0)(typescript@5.9.3))(eslint-import-resolver-typescript@3.10.0)(eslint@10.0.0) + eslint-plugin-import: 2.31.0(@typescript-eslint/parser@7.18.0(eslint@10.0.0)(typescript@5.9.3))(eslint-import-resolver-typescript@3.10.0(eslint-plugin-import@2.31.0(@typescript-eslint/parser@7.18.0(eslint@10.0.0)(typescript@5.9.3))(eslint@10.0.0))(eslint@10.0.0))(eslint@10.0.0) eslint-plugin-mocha: 10.5.0(eslint@10.0.0) eslint-plugin-n: 16.6.2(eslint@10.0.0) eslint-plugin-prefer-arrow: 1.2.3(eslint@10.0.0) @@ -7540,7 +7547,7 @@ snapshots: transitivePeerDependencies: - supports-color - eslint-import-resolver-typescript@3.10.0(eslint-plugin-import@2.31.0)(eslint@10.0.0): + eslint-import-resolver-typescript@3.10.0(eslint-plugin-import@2.31.0(@typescript-eslint/parser@7.18.0(eslint@10.0.0)(typescript@5.9.3))(eslint@10.0.0))(eslint@10.0.0): dependencies: '@nolyfill/is-core-module': 1.0.39 debug: 4.4.3(supports-color@8.1.1) @@ -7551,18 +7558,18 @@ snapshots: tinyglobby: 0.2.15 unrs-resolver: 1.3.3 optionalDependencies: - eslint-plugin-import: 2.31.0(@typescript-eslint/parser@7.18.0(eslint@10.0.0)(typescript@5.9.3))(eslint-import-resolver-typescript@3.10.0)(eslint@10.0.0) + eslint-plugin-import: 2.31.0(@typescript-eslint/parser@7.18.0(eslint@10.0.0)(typescript@5.9.3))(eslint-import-resolver-typescript@3.10.0(eslint-plugin-import@2.31.0(@typescript-eslint/parser@7.18.0(eslint@10.0.0)(typescript@5.9.3))(eslint@10.0.0))(eslint@10.0.0))(eslint@10.0.0) transitivePeerDependencies: - supports-color - eslint-module-utils@2.12.0(@typescript-eslint/parser@7.18.0(eslint@10.0.0)(typescript@5.9.3))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.10.0)(eslint@10.0.0): + eslint-module-utils@2.12.0(@typescript-eslint/parser@7.18.0(eslint@10.0.0)(typescript@5.9.3))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.10.0(eslint-plugin-import@2.31.0(@typescript-eslint/parser@7.18.0(eslint@10.0.0)(typescript@5.9.3))(eslint@10.0.0))(eslint@10.0.0))(eslint@10.0.0): dependencies: debug: 3.2.7 optionalDependencies: '@typescript-eslint/parser': 7.18.0(eslint@10.0.0)(typescript@5.9.3) eslint: 10.0.0 eslint-import-resolver-node: 0.3.9 - eslint-import-resolver-typescript: 3.10.0(eslint-plugin-import@2.31.0)(eslint@10.0.0) + eslint-import-resolver-typescript: 3.10.0(eslint-plugin-import@2.31.0(@typescript-eslint/parser@7.18.0(eslint@10.0.0)(typescript@5.9.3))(eslint@10.0.0))(eslint@10.0.0) transitivePeerDependencies: - supports-color @@ -7584,7 +7591,7 @@ snapshots: eslint: 10.0.0 ignore: 5.3.2 - eslint-plugin-import@2.31.0(@typescript-eslint/parser@7.18.0(eslint@10.0.0)(typescript@5.9.3))(eslint-import-resolver-typescript@3.10.0)(eslint@10.0.0): + eslint-plugin-import@2.31.0(@typescript-eslint/parser@7.18.0(eslint@10.0.0)(typescript@5.9.3))(eslint-import-resolver-typescript@3.10.0(eslint-plugin-import@2.31.0(@typescript-eslint/parser@7.18.0(eslint@10.0.0)(typescript@5.9.3))(eslint@10.0.0))(eslint@10.0.0))(eslint@10.0.0): dependencies: '@rtsao/scc': 1.1.0 array-includes: 3.1.8 @@ -7595,7 +7602,7 @@ snapshots: doctrine: 2.1.0 eslint: 10.0.0 eslint-import-resolver-node: 0.3.9 - eslint-module-utils: 2.12.0(@typescript-eslint/parser@7.18.0(eslint@10.0.0)(typescript@5.9.3))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.10.0)(eslint@10.0.0) + eslint-module-utils: 2.12.0(@typescript-eslint/parser@7.18.0(eslint@10.0.0)(typescript@5.9.3))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.10.0(eslint-plugin-import@2.31.0(@typescript-eslint/parser@7.18.0(eslint@10.0.0)(typescript@5.9.3))(eslint@10.0.0))(eslint@10.0.0))(eslint@10.0.0) hasown: 2.0.2 is-core-module: 2.16.1 is-glob: 4.0.3 @@ -9376,6 +9383,8 @@ snapshots: scheduler@0.27.0: {} + search-insights@2.17.3: {} + security@1.0.0: {} semver@6.3.1: {} @@ -9947,9 +9956,9 @@ snapshots: '@types/unist': 3.0.3 vfile-message: 4.0.2 - vite-plugin-babel@1.5.1(@babel/core@7.29.0)(rolldown-vite@7.2.10(@types/node@25.2.3)(tsx@4.21.0)): + vite-plugin-babel@1.5.1(@babel/core@7.28.5)(rolldown-vite@7.2.10(@types/node@25.2.3)(tsx@4.21.0)): dependencies: - '@babel/core': 7.29.0 + '@babel/core': 7.28.5 vite: rolldown-vite@7.2.10(@types/node@25.2.3)(tsx@4.21.0) vite-plugin-static-copy@3.2.0(rolldown-vite@7.2.10(@types/node@25.2.3)(tsx@4.21.0)): From 5ce0ce77f7aa95786accc8212e6953771b532c38 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Sun, 22 Feb 2026 09:31:13 +0100 Subject: [PATCH 003/130] build(deps): bump jsdom from 28.0.0 to 28.1.0 (#7331) Bumps [jsdom](https://github.com/jsdom/jsdom) from 28.0.0 to 28.1.0. - [Release notes](https://github.com/jsdom/jsdom/releases) - [Changelog](https://github.com/jsdom/jsdom/blob/main/Changelog.md) - [Commits](https://github.com/jsdom/jsdom/compare/28.0.0...28.1.0) --- updated-dependencies: - dependency-name: jsdom dependency-version: 28.1.0 dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- pnpm-lock.yaml | 165 +++++++++++++++++++++++++---------------------- src/package.json | 2 +- 2 files changed, 88 insertions(+), 79 deletions(-) diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 59ff85953b7..c2573c3e539 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -193,8 +193,8 @@ importers: specifier: ^3.0.5 version: 3.0.5 jsdom: - specifier: ^28.0.0 - version: 28.0.0(@noble/hashes@1.8.0) + specifier: ^28.1.0 + version: 28.1.0(@noble/hashes@1.8.0) jsonminify: specifier: 0.4.2 version: 0.4.2 @@ -402,7 +402,7 @@ importers: version: 5.9.3 vitest: specifier: ^4.0.18 - version: 4.0.18(@opentelemetry/api@1.9.0)(@types/node@25.2.3)(jsdom@28.0.0(@noble/hashes@1.8.0))(lightningcss@1.30.2)(tsx@4.21.0) + version: 4.0.18(@opentelemetry/api@1.9.0)(@types/node@25.2.3)(jsdom@28.1.0(@noble/hashes@1.8.0))(lightningcss@1.30.2)(tsx@4.21.0) ui: devDependencies: @@ -425,11 +425,11 @@ packages: resolution: {integrity: sha512-60vepv88RwcJtSHrD6MjIL6Ta3SOYbgfnkHb+ppAVK+o9mXprRtulx7VlRl3lN3bbvysAfCS7WMVfhUYemB0IQ==} engines: {node: '>= 16'} - '@asamuzakjp/css-color@4.1.1': - resolution: {integrity: sha512-B0Hv6G3gWGMn0xKJ0txEi/jM5iFpT3MfDxmhZFb4W047GvytCf1DHQ1D69W3zHI4yWe2aTZAA0JnbMZ7Xc8DuQ==} + '@asamuzakjp/css-color@4.1.2': + resolution: {integrity: sha512-NfBUvBaYgKIuq6E/RBLY1m0IohzNHAYyaJGuTK79Z23uNwmz2jl1mPsC5ZxCCxylinKhT1Amn5oNTlx1wN8cQg==} - '@asamuzakjp/dom-selector@6.7.7': - resolution: {integrity: sha512-8CO/UQ4tzDd7ula+/CVimJIVWez99UJlbMyIgk8xOnhAVPKLnBZmUFYVgugS441v2ZqUq5EnSh6B0Ua0liSFAA==} + '@asamuzakjp/dom-selector@6.8.1': + resolution: {integrity: sha512-MvRz1nCqW0fsy8Qz4dnLIvhOlMzqDVBabZx6lH+YywFDdjXhMY37SmpV1XFX3JzG5GWHn63j6HX6QPr3lZXHvQ==} '@asamuzakjp/nwsapi@2.3.9': resolution: {integrity: sha512-n8GuYSrI9bF7FFZ/SjhwevlHc8xaVlb/7HmHelnc/PZXBD2ZR49NnN9sMMuDdEGPeeRQ5d0hqlSlEpgCX3Wl0Q==} @@ -580,36 +580,40 @@ packages: resolution: {integrity: sha512-LwdZHpScM4Qz8Xw2iKSzS+cfglZzJGvofQICy7W7v4caru4EaAmyUuO6BGrbyQ2mYV11W0U8j5mBhd14dd3B0A==} engines: {node: '>=6.9.0'} - '@csstools/color-helpers@5.1.0': - resolution: {integrity: sha512-S11EXWJyy0Mz5SYvRmY8nJYTFFd1LCNV+7cXyAgQtOOuzb4EsgfqDufL+9esx72/eLhsRdGZwaldu/h+E4t4BA==} - engines: {node: '>=18'} + '@bramus/specificity@2.4.2': + resolution: {integrity: sha512-ctxtJ/eA+t+6q2++vj5j7FYX3nRu311q1wfYH3xjlLOsczhlhxAg2FWNUXhpGvAw3BWo1xBcvOV6/YLc2r5FJw==} + hasBin: true - '@csstools/css-calc@2.1.4': - resolution: {integrity: sha512-3N8oaj+0juUw/1H3YwmDDJXCgTB1gKU6Hc/bB502u9zR0q2vd786XJH9QfrKIEgFlZmhZiq6epXl4rHqhzsIgQ==} - engines: {node: '>=18'} + '@csstools/color-helpers@6.0.1': + resolution: {integrity: sha512-NmXRccUJMk2AWA5A7e5a//3bCIMyOu2hAtdRYrhPPHjDxINuCwX1w6rnIZ4xjLcp0ayv6h8Pc3X0eJUGiAAXHQ==} + engines: {node: '>=20.19.0'} + + '@csstools/css-calc@3.1.1': + resolution: {integrity: sha512-HJ26Z/vmsZQqs/o3a6bgKslXGFAungXGbinULZO3eMsOyNJHeBBZfup5FiZInOghgoM4Hwnmw+OgbJCNg1wwUQ==} + engines: {node: '>=20.19.0'} peerDependencies: - '@csstools/css-parser-algorithms': ^3.0.5 - '@csstools/css-tokenizer': ^3.0.4 + '@csstools/css-parser-algorithms': ^4.0.0 + '@csstools/css-tokenizer': ^4.0.0 - '@csstools/css-color-parser@3.1.0': - resolution: {integrity: sha512-nbtKwh3a6xNVIp/VRuXV64yTKnb1IjTAEEh3irzS+HkKjAOYLTGNb9pmVNntZ8iVBHcWDA2Dof0QtPgFI1BaTA==} - engines: {node: '>=18'} + '@csstools/css-color-parser@4.0.1': + resolution: {integrity: sha512-vYwO15eRBEkeF6xjAno/KQ61HacNhfQuuU/eGwH67DplL0zD5ZixUa563phQvUelA07yDczIXdtmYojCphKJcw==} + engines: {node: '>=20.19.0'} peerDependencies: - '@csstools/css-parser-algorithms': ^3.0.5 - '@csstools/css-tokenizer': ^3.0.4 + '@csstools/css-parser-algorithms': ^4.0.0 + '@csstools/css-tokenizer': ^4.0.0 - '@csstools/css-parser-algorithms@3.0.5': - resolution: {integrity: sha512-DaDeUkXZKjdGhgYaHNJTV9pV7Y9B3b644jCLs9Upc3VeNGg6LWARAT6O+Q+/COo+2gg/bM5rhpMAtf70WqfBdQ==} - engines: {node: '>=18'} + '@csstools/css-parser-algorithms@4.0.0': + resolution: {integrity: sha512-+B87qS7fIG3L5h3qwJ/IFbjoVoOe/bpOdh9hAjXbvx0o8ImEmUsGXN0inFOnk2ChCFgqkkGFQ+TpM5rbhkKe4w==} + engines: {node: '>=20.19.0'} peerDependencies: - '@csstools/css-tokenizer': ^3.0.4 + '@csstools/css-tokenizer': ^4.0.0 - '@csstools/css-syntax-patches-for-csstree@1.0.26': - resolution: {integrity: sha512-6boXK0KkzT5u5xOgF6TKB+CLq9SOpEGmkZw0g5n9/7yg85wab3UzSxB8TxhLJ31L4SGJ6BCFRw/iftTha1CJXA==} + '@csstools/css-syntax-patches-for-csstree@1.0.27': + resolution: {integrity: sha512-sxP33Jwg1bviSUXAV43cVYdmjt2TLnLXNqCWl9xmxHawWVjGz/kEbdkr7F9pxJNBN2Mh+dq0crgItbW6tQvyow==} - '@csstools/css-tokenizer@3.0.4': - resolution: {integrity: sha512-Vd/9EVDiu6PPJt9yAh6roZP6El1xHrdvIVGjyBsHR0RYwNHgL7FJPyIIW4fANJNG6FtyZfvlRPpFI4ZM/lubvw==} - engines: {node: '>=18'} + '@csstools/css-tokenizer@4.0.0': + resolution: {integrity: sha512-QxULHAm7cNu72w97JUNCBFODFaXpbDg+dP8b/oWFAZ2MTRppA3U00Y2L1HqaS4J6yBqxwa/Y3nMBaxVKbB/NsA==} + engines: {node: '>=20.19.0'} '@docsearch/css@4.5.3': resolution: {integrity: sha512-kUpHaxn0AgI3LQfyzTYkNUuaFY4uEz/Ym9/N/FvyDE+PzSgZsCyDH9jE49B6N6f1eLCm9Yp64J9wENd6vypdxA==} @@ -974,8 +978,8 @@ packages: resolution: {integrity: sha512-bIZEUzOI1jkhviX2cp5vNyXQc6olzb2ohewQubuYlMXZ2Q/XjBO0x0XhGPvc9fjSIiUN0vw+0hq53BJ4eQSJKQ==} engines: {node: ^20.19.0 || ^22.13.0 || >=24} - '@exodus/bytes@1.11.0': - resolution: {integrity: sha512-wO3vd8nsEHdumsXrjGO/v4p6irbg7hy9kvIeR6i2AwylZSk4HJdWgL0FNaVquW1+AweJcdvU1IEpuIWk/WaPnA==} + '@exodus/bytes@1.14.1': + resolution: {integrity: sha512-OhkBFWI6GcRMUroChZiopRiSp2iAMvEBK47NhJooDqz1RERO4QuZIZnjP63TXX8GAiLABkYmX+fuQsdJ1dd2QQ==} engines: {node: ^20.19.0 || ^22.12.0 || >=24.0.0} peerDependencies: '@noble/hashes': ^1.8.0 || ^2.0.0 @@ -2502,8 +2506,8 @@ packages: resolution: {integrity: sha512-0eW44TGN5SQXU1mWSkKwFstI/22X2bG1nYzZTYMAWjylYURhse752YgbE4Cx46AC+bAvI+/dYTPRk1LqSUnu6w==} engines: {node: ^10 || ^12.20.0 || ^14.13.0 || >=15.0.0} - cssstyle@5.3.7: - resolution: {integrity: sha512-7D2EPVltRrsTkhpQmksIu+LxeWAIEk6wRDMJ1qljlv+CKHJM+cJLlfhWIzNA44eAsHXSNe3+vO6DW1yCYx8SuQ==} + cssstyle@6.0.1: + resolution: {integrity: sha512-IoJs7La+oFp/AB033wBStxNOJt4+9hHMxsXUPANcoXL2b3W4DZKghlJ2cI/eyeRZIQ9ysvYEorVhjrcYctWbog==} engines: {node: '>=20'} csstype@3.2.3: @@ -3516,8 +3520,8 @@ packages: jsbn@1.1.0: resolution: {integrity: sha512-4bYVV3aAMtDTTu4+xsDYa6sy9GyJ69/amsu9sYF2zqjiEoZA5xJi3BrfX3uY+/IekIu7MwdObdbDWpoZdBv3/A==} - jsdom@28.0.0: - resolution: {integrity: sha512-KDYJgZ6T2TKdU8yBfYueq5EPG/EylMsBvCaenWMJb2OXmjgczzwveRCoJ+Hgj1lXPDyasvrgneSn4GBuR1hYyA==} + jsdom@28.1.0: + resolution: {integrity: sha512-0+MoQNYyr2rBHqO1xilltfDjV9G7ymYGlAUazgcDLQaUf8JDHbuGwsxN6U9qWaElZ4w1B2r7yEGIL3GdeW3Rug==} engines: {node: ^20.19.0 || ^22.12.0 || >=24.0.0} peerDependencies: canvas: ^3.0.0 @@ -4718,11 +4722,11 @@ packages: resolution: {integrity: sha512-PSkbLUoxOFRzJYjjxHJt9xro7D+iilgMX/C9lawzVuYiIdcihh9DXmVibBe8lmcFrRi/VzlPjBxbN7rH24q8/Q==} engines: {node: '>=14.0.0'} - tldts-core@7.0.21: - resolution: {integrity: sha512-oVOMdHvgjqyzUZH1rOESgJP1uNe2bVrfK0jUHHmiM2rpEiRbf3j4BrsIc6JigJRbHGanQwuZv/R+LTcHsw+bLA==} + tldts-core@7.0.23: + resolution: {integrity: sha512-0g9vrtDQLrNIiCj22HSe9d4mLVG3g5ph5DZ8zCKBr4OtrspmNB6ss7hVyzArAeE88ceZocIEGkyW1Ime7fxPtQ==} - tldts@7.0.21: - resolution: {integrity: sha512-Plu6V8fF/XU6d2k8jPtlQf5F4Xx2hAin4r2C2ca7wR8NK5MbRTo9huLUWRe28f3Uk8bYZfg74tit/dSjc18xnw==} + tldts@7.0.23: + resolution: {integrity: sha512-ASdhgQIBSay0R/eXggAkQ53G4nTJqTXqC2kbaBbdDwM7SkjyZyO0OaaN1/FH7U/yCeqOHDwFO5j8+Os/IS1dXw==} hasBin: true to-regex-range@5.0.1: @@ -4833,8 +4837,8 @@ packages: undici-types@7.16.0: resolution: {integrity: sha512-Zz+aZWSj8LE6zoxD+xrjh4VfkIG8Ya6LvYkZqtUQGJPZjYl53ypCaUwWqo7eI0x66KBGeRo+mlBEkMSeSZ38Nw==} - undici@7.20.0: - resolution: {integrity: sha512-MJZrkjyd7DeC+uPZh+5/YaMDxFiiEEaDgbUSVMXayofAkDWF1088CDo+2RPg7B1BuS1qf1vgNE7xqwPxE0DuSQ==} + undici@7.22.0: + resolution: {integrity: sha512-RqslV2Us5BrllB+JeiZnK4peryVTndy9Dnqq62S3yYRRTj0tFQCwEniUy2167skdGOy3vqRzEvl1Dm4sV2ReDg==} engines: {node: '>=20.18.1'} unified@11.0.5: @@ -5201,15 +5205,15 @@ snapshots: '@types/json-schema': 7.0.15 js-yaml: 4.1.0 - '@asamuzakjp/css-color@4.1.1': + '@asamuzakjp/css-color@4.1.2': dependencies: - '@csstools/css-calc': 2.1.4(@csstools/css-parser-algorithms@3.0.5(@csstools/css-tokenizer@3.0.4))(@csstools/css-tokenizer@3.0.4) - '@csstools/css-color-parser': 3.1.0(@csstools/css-parser-algorithms@3.0.5(@csstools/css-tokenizer@3.0.4))(@csstools/css-tokenizer@3.0.4) - '@csstools/css-parser-algorithms': 3.0.5(@csstools/css-tokenizer@3.0.4) - '@csstools/css-tokenizer': 3.0.4 + '@csstools/css-calc': 3.1.1(@csstools/css-parser-algorithms@4.0.0(@csstools/css-tokenizer@4.0.0))(@csstools/css-tokenizer@4.0.0) + '@csstools/css-color-parser': 4.0.1(@csstools/css-parser-algorithms@4.0.0(@csstools/css-tokenizer@4.0.0))(@csstools/css-tokenizer@4.0.0) + '@csstools/css-parser-algorithms': 4.0.0(@csstools/css-tokenizer@4.0.0) + '@csstools/css-tokenizer': 4.0.0 lru-cache: 11.2.6 - '@asamuzakjp/dom-selector@6.7.7': + '@asamuzakjp/dom-selector@6.8.1': dependencies: '@asamuzakjp/nwsapi': 2.3.9 bidi-js: 1.0.3 @@ -5432,27 +5436,31 @@ snapshots: '@babel/helper-string-parser': 7.27.1 '@babel/helper-validator-identifier': 7.28.5 - '@csstools/color-helpers@5.1.0': {} + '@bramus/specificity@2.4.2': + dependencies: + css-tree: 3.1.0 + + '@csstools/color-helpers@6.0.1': {} - '@csstools/css-calc@2.1.4(@csstools/css-parser-algorithms@3.0.5(@csstools/css-tokenizer@3.0.4))(@csstools/css-tokenizer@3.0.4)': + '@csstools/css-calc@3.1.1(@csstools/css-parser-algorithms@4.0.0(@csstools/css-tokenizer@4.0.0))(@csstools/css-tokenizer@4.0.0)': dependencies: - '@csstools/css-parser-algorithms': 3.0.5(@csstools/css-tokenizer@3.0.4) - '@csstools/css-tokenizer': 3.0.4 + '@csstools/css-parser-algorithms': 4.0.0(@csstools/css-tokenizer@4.0.0) + '@csstools/css-tokenizer': 4.0.0 - '@csstools/css-color-parser@3.1.0(@csstools/css-parser-algorithms@3.0.5(@csstools/css-tokenizer@3.0.4))(@csstools/css-tokenizer@3.0.4)': + '@csstools/css-color-parser@4.0.1(@csstools/css-parser-algorithms@4.0.0(@csstools/css-tokenizer@4.0.0))(@csstools/css-tokenizer@4.0.0)': dependencies: - '@csstools/color-helpers': 5.1.0 - '@csstools/css-calc': 2.1.4(@csstools/css-parser-algorithms@3.0.5(@csstools/css-tokenizer@3.0.4))(@csstools/css-tokenizer@3.0.4) - '@csstools/css-parser-algorithms': 3.0.5(@csstools/css-tokenizer@3.0.4) - '@csstools/css-tokenizer': 3.0.4 + '@csstools/color-helpers': 6.0.1 + '@csstools/css-calc': 3.1.1(@csstools/css-parser-algorithms@4.0.0(@csstools/css-tokenizer@4.0.0))(@csstools/css-tokenizer@4.0.0) + '@csstools/css-parser-algorithms': 4.0.0(@csstools/css-tokenizer@4.0.0) + '@csstools/css-tokenizer': 4.0.0 - '@csstools/css-parser-algorithms@3.0.5(@csstools/css-tokenizer@3.0.4)': + '@csstools/css-parser-algorithms@4.0.0(@csstools/css-tokenizer@4.0.0)': dependencies: - '@csstools/css-tokenizer': 3.0.4 + '@csstools/css-tokenizer': 4.0.0 - '@csstools/css-syntax-patches-for-csstree@1.0.26': {} + '@csstools/css-syntax-patches-for-csstree@1.0.27': {} - '@csstools/css-tokenizer@3.0.4': {} + '@csstools/css-tokenizer@4.0.0': {} '@docsearch/css@4.5.3': {} @@ -5664,7 +5672,7 @@ snapshots: '@eslint/core': 1.1.0 levn: 0.4.1 - '@exodus/bytes@1.11.0(@noble/hashes@1.8.0)': + '@exodus/bytes@1.14.1(@noble/hashes@1.8.0)': optionalDependencies: '@noble/hashes': 1.8.0 @@ -7173,10 +7181,10 @@ snapshots: mdn-data: 2.12.2 source-map-js: 1.2.1 - cssstyle@5.3.7: + cssstyle@6.0.1: dependencies: - '@asamuzakjp/css-color': 4.1.1 - '@csstools/css-syntax-patches-for-csstree': 1.0.26 + '@asamuzakjp/css-color': 4.1.2 + '@csstools/css-syntax-patches-for-csstree': 1.0.27 css-tree: 3.1.0 lru-cache: 11.2.6 @@ -8151,7 +8159,7 @@ snapshots: html-encoding-sniffer@6.0.0(@noble/hashes@1.8.0): dependencies: - '@exodus/bytes': 1.11.0(@noble/hashes@1.8.0) + '@exodus/bytes': 1.14.1(@noble/hashes@1.8.0) transitivePeerDependencies: - '@noble/hashes' @@ -8404,12 +8412,13 @@ snapshots: jsbn@1.1.0: {} - jsdom@28.0.0(@noble/hashes@1.8.0): + jsdom@28.1.0(@noble/hashes@1.8.0): dependencies: '@acemir/cssom': 0.9.31 - '@asamuzakjp/dom-selector': 6.7.7 - '@exodus/bytes': 1.11.0(@noble/hashes@1.8.0) - cssstyle: 5.3.7 + '@asamuzakjp/dom-selector': 6.8.1 + '@bramus/specificity': 2.4.2 + '@exodus/bytes': 1.14.1(@noble/hashes@1.8.0) + cssstyle: 6.0.1 data-urls: 7.0.0(@noble/hashes@1.8.0) decimal.js: 10.6.0 html-encoding-sniffer: 6.0.0(@noble/hashes@1.8.0) @@ -8420,7 +8429,7 @@ snapshots: saxes: 6.0.0 symbol-tree: 3.2.4 tough-cookie: 6.0.0 - undici: 7.20.0 + undici: 7.22.0 w3c-xmlserializer: 5.0.0 webidl-conversions: 8.0.1 whatwg-mimetype: 5.0.0 @@ -9725,11 +9734,11 @@ snapshots: tinyrainbow@3.0.3: {} - tldts-core@7.0.21: {} + tldts-core@7.0.23: {} - tldts@7.0.21: + tldts@7.0.23: dependencies: - tldts-core: 7.0.21 + tldts-core: 7.0.23 to-regex-range@5.0.1: dependencies: @@ -9739,7 +9748,7 @@ snapshots: tough-cookie@6.0.0: dependencies: - tldts: 7.0.21 + tldts: 7.0.23 tr46@6.0.0: dependencies: @@ -9843,7 +9852,7 @@ snapshots: undici-types@7.16.0: {} - undici@7.20.0: {} + undici@7.22.0: {} unified@11.0.5: dependencies: @@ -10031,7 +10040,7 @@ snapshots: - universal-cookie - yaml - vitest@4.0.18(@opentelemetry/api@1.9.0)(@types/node@25.2.3)(jsdom@28.0.0(@noble/hashes@1.8.0))(lightningcss@1.30.2)(tsx@4.21.0): + vitest@4.0.18(@opentelemetry/api@1.9.0)(@types/node@25.2.3)(jsdom@28.1.0(@noble/hashes@1.8.0))(lightningcss@1.30.2)(tsx@4.21.0): dependencies: '@vitest/expect': 4.0.18 '@vitest/mocker': 4.0.18(vite@7.3.1(@types/node@25.2.3)(lightningcss@1.30.2)(tsx@4.21.0)) @@ -10056,7 +10065,7 @@ snapshots: optionalDependencies: '@opentelemetry/api': 1.9.0 '@types/node': 25.2.3 - jsdom: 28.0.0(@noble/hashes@1.8.0) + jsdom: 28.1.0(@noble/hashes@1.8.0) transitivePeerDependencies: - jiti - less @@ -10096,7 +10105,7 @@ snapshots: whatwg-url@16.0.0(@noble/hashes@1.8.0): dependencies: - '@exodus/bytes': 1.11.0(@noble/hashes@1.8.0) + '@exodus/bytes': 1.14.1(@noble/hashes@1.8.0) tr46: 6.0.0 webidl-conversions: 8.0.1 transitivePeerDependencies: diff --git a/src/package.json b/src/package.json index 29dc244f59e..ced4958e45b 100644 --- a/src/package.json +++ b/src/package.json @@ -45,7 +45,7 @@ "http-errors": "^2.0.1", "jose": "^6.1.3", "js-cookie": "^3.0.5", - "jsdom": "^28.0.0", + "jsdom": "^28.1.0", "jsonminify": "0.4.2", "jsonwebtoken": "^9.0.3", "jwt-decode": "^4.0.0", From 02beef6f8103b0b086390c6b9a91fa3a65a543cb Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Sun, 22 Feb 2026 09:31:24 +0100 Subject: [PATCH 004/130] build(deps): bump underscore from 1.13.7 to 1.13.8 (#7334) Bumps [underscore](https://github.com/jashkenas/underscore) from 1.13.7 to 1.13.8. - [Commits](https://github.com/jashkenas/underscore/commits) --- updated-dependencies: - dependency-name: underscore dependency-version: 1.13.8 dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- pnpm-lock.yaml | 10 +++++----- src/package.json | 2 +- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index c2573c3e539..8e56b15f2b7 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -280,8 +280,8 @@ importers: specifier: ^5.0.23 version: 5.0.23 underscore: - specifier: 1.13.7 - version: 1.13.7 + specifier: 1.13.8 + version: 1.13.8 unorm: specifier: 1.6.0 version: 1.6.0 @@ -4831,8 +4831,8 @@ packages: resolution: {integrity: sha512-nWJ91DjeOkej/TA8pXQ3myruKpKEYgqvpw9lz4OPHj/NWFNluYrjbz9j01CJ8yKQd2g4jFoOkINCTW2I5LEEyw==} engines: {node: '>= 0.4'} - underscore@1.13.7: - resolution: {integrity: sha512-GMXzWtsc57XAtguZgaQViUOzs0KTkk8ojr3/xAxXLITqf/3EMwxC0inyETfDFjH/Krbhuep0HNbbjI9i/q3F3g==} + underscore@1.13.8: + resolution: {integrity: sha512-DXtD3ZtEQzc7M8m4cXotyHR+FAS18C64asBYY5vqZexfYryNNnDc02W4hKg3rdQuqOYas1jkseX0+nZXjTXnvQ==} undici-types@7.16.0: resolution: {integrity: sha512-Zz+aZWSj8LE6zoxD+xrjh4VfkIG8Ya6LvYkZqtUQGJPZjYl53ypCaUwWqo7eI0x66KBGeRo+mlBEkMSeSZ38Nw==} @@ -9848,7 +9848,7 @@ snapshots: has-symbols: 1.1.0 which-boxed-primitive: 1.1.1 - underscore@1.13.7: {} + underscore@1.13.8: {} undici-types@7.16.0: {} diff --git a/src/package.json b/src/package.json index ced4958e45b..c00fa9b6c3c 100644 --- a/src/package.json +++ b/src/package.json @@ -74,7 +74,7 @@ "tinycon": "0.6.8", "tsx": "4.21.0", "ueberdb2": "^5.0.23", - "underscore": "1.13.7", + "underscore": "1.13.8", "unorm": "1.6.0", "wtfnode": "^0.10.1" }, From 75cc656e2e263606b96d33dd82a82a83a09acf31 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Sun, 22 Feb 2026 09:31:38 +0100 Subject: [PATCH 005/130] build(deps): bump oidc-provider from 9.6.0 to 9.6.1 (#7335) Bumps [oidc-provider](https://github.com/panva/node-oidc-provider) from 9.6.0 to 9.6.1. - [Release notes](https://github.com/panva/node-oidc-provider/releases) - [Changelog](https://github.com/panva/node-oidc-provider/blob/main/CHANGELOG.md) - [Commits](https://github.com/panva/node-oidc-provider/compare/v9.6.0...v9.6.1) --- updated-dependencies: - dependency-name: oidc-provider dependency-version: 9.6.1 dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- pnpm-lock.yaml | 37 ++++++++++++++++++------------------- src/package.json | 2 +- 2 files changed, 19 insertions(+), 20 deletions(-) diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 8e56b15f2b7..118cdc00268 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -226,8 +226,8 @@ importers: specifier: ^3.0.2 version: 3.0.2 oidc-provider: - specifier: 9.6.0 - version: 9.6.0 + specifier: 9.6.1 + version: 9.6.1 openapi-backend: specifier: ^5.15.0 version: 5.15.0 @@ -1040,8 +1040,8 @@ packages: resolution: {integrity: sha512-x/iUDjcS90W69PryLDIMgFyV21YLTnG9zOpPXS7Bkt2b8AsY3zZsIpOLBkYr9fBcF3HbkKaER5hOBZLfpLgYNw==} engines: {node: '>= 14.0.0'} - '@koa/router@15.1.1': - resolution: {integrity: sha512-trYxL4VOx8r92f8luqpN83xkN0DMTsp/HBJIxoDZH/a2I1Hxvoe+jjjhyJRQUQIHmsNQjCM+Xj6nCqSvnDnlCw==} + '@koa/router@15.3.0': + resolution: {integrity: sha512-s87hWJjFYky2Z97u8jzah73sSHp4IZivD/2PZCuspHRvcKU69OPLoBIbKigVlBmS50yFTh9GHFfr1hDag4+wXw==} engines: {node: '>= 20'} peerDependencies: koa: ^2.0.0 || ^3.0.0 @@ -2950,8 +2950,8 @@ packages: resolution: {integrity: sha512-kVscqXk4OCp68SZ0dkgEKVi6/8ij300KBWTJq32P/dYeWTSwK41WyTxalN1eRmA5Z9UU/LX9D7FWSmV9SAYx6g==} engines: {node: '>=0.10.0'} - eta@4.5.0: - resolution: {integrity: sha512-qifAYjuW5AM1eEEIsFnOwB+TGqu6ynU3OKj9WbUTOtUBHFPZqL03XUW34kbp3zm19Ald+U8dEyRXaVsUck+Y1g==} + eta@4.5.1: + resolution: {integrity: sha512-EaNCGm+8XEIU7YNcc+THptWAO5NfKBHHARxt+wxZljj9bTr/+arRoOm9/MpGt4n6xn9fLnPFRSoLD0WFYGFUxQ==} engines: {node: '>=20'} etag@1.8.1: @@ -3310,8 +3310,8 @@ packages: resolution: {integrity: sha512-cf6L2Ds3h57VVmkZe+Pn+5APsT7FpqJtEhhieDCvrE2MK5Qk9MyffgQyuxQTm6BChfeZNtcOLHp9IcWRVcIcBQ==} engines: {node: '>=0.10.0'} - iconv-lite@0.7.1: - resolution: {integrity: sha512-2Tth85cXwGFHfvRgZWszZSvdo+0Xsqmw8k8ZwxScfcBneNUraK+dxRxRm24nszx80Y0TVio8kKLt5sLE7ZCLlw==} + iconv-lite@0.7.2: + resolution: {integrity: sha512-im9DjEDQ55s9fL4EYzOAv0yMqmMBSZp6G0VvFyTMPKWxiSBHUj9NW/qqLmXUwXrrM7AvqSlTCfvqRb0cM8yYqw==} engines: {node: '>=0.10.0'} ignore@5.3.2: @@ -3591,7 +3591,6 @@ packages: keygrip@1.1.0: resolution: {integrity: sha512-iYSchDJ+liQ8iwbSI2QqsQOvqv58eJCEanyJPJi+Khyu8smkcKSFUCbPwzFcL7YVtZ6eONjqRX/38caJ7QjRAQ==} engines: {node: '>= 0.6'} - deprecated: Package no longer supported. Contact Support at https://www.npmjs.com/support for more info. keyv@4.5.4: resolution: {integrity: sha512-oxVHkHR/EJf2CNXnWxRLW6mg7JyCCUcG0DtEGmL2ctUo1PNTin1PUil+r/+4r5MpVgC/fn1kjsx7mjSujKqIpw==} @@ -3964,8 +3963,8 @@ packages: obug@2.1.1: resolution: {integrity: sha512-uTqF9MuPraAQ+IsnPf366RG4cP9RtUi7MLO1N3KEc+wb0a6yKpeL0lmk2IB1jY5KHPAlTc6T/JRdC/YqxHNwkQ==} - oidc-provider@9.6.0: - resolution: {integrity: sha512-CCRUYPOumEy/DT+L86H40WgXjXfDHlsJYZdyd4ZKGFxJh/kAd7DxMX3dwpbX0g+WjB+NWU+kla1b/yZmHNcR0Q==} + oidc-provider@9.6.1: + resolution: {integrity: sha512-8AtFXE4gEV6MLd8Re78VhqGNjBm/SUw0fUxrP2XwQc+5DZKw6GyuTuy2M4jkidpH3jRrhtkkqQpXlxD1Awi6tg==} on-finished@2.4.1: resolution: {integrity: sha512-oVlzkg3ENAhCk2zdv7IJwd/QUD4z2RxRwpkcGY8psCVcCYZNq4wYnVWALHM+brtuJjePWiYF/ClmuDr8Ch5+kg==} @@ -5729,7 +5728,7 @@ snapshots: dependencies: vary: 1.1.2 - '@koa/router@15.1.1(koa@3.1.1)': + '@koa/router@15.3.0(koa@3.1.1)': dependencies: debug: 4.4.3(supports-color@8.1.1) http-errors: 2.0.1 @@ -7758,7 +7757,7 @@ snapshots: esutils@2.0.3: {} - eta@4.5.0: {} + eta@4.5.1: {} etag@1.8.1: {} @@ -8218,7 +8217,7 @@ snapshots: dependencies: safer-buffer: 2.1.2 - iconv-lite@0.7.1: + iconv-lite@0.7.2: dependencies: safer-buffer: 2.1.2 @@ -8874,12 +8873,12 @@ snapshots: obug@2.1.1: {} - oidc-provider@9.6.0: + oidc-provider@9.6.1: dependencies: '@koa/cors': 5.0.0 - '@koa/router': 15.1.1(koa@3.1.1) + '@koa/router': 15.3.0(koa@3.1.1) debug: 4.4.3(supports-color@8.1.1) - eta: 4.5.0 + eta: 4.5.1 jose: 6.1.3 jsesc: 3.1.0 koa: 3.1.1 @@ -9054,7 +9053,7 @@ snapshots: proxy-agent@6.5.0: dependencies: agent-base: 7.1.3 - debug: 4.4.3(supports-color@8.1.1) + debug: 4.4.1 http-proxy-agent: 7.0.2 https-proxy-agent: 7.0.6 lru-cache: 7.18.3 @@ -9096,7 +9095,7 @@ snapshots: dependencies: bytes: 3.1.2 http-errors: 2.0.1 - iconv-lite: 0.7.1 + iconv-lite: 0.7.2 unpipe: 1.0.0 react-dom@19.2.4(react@19.2.4): diff --git a/src/package.json b/src/package.json index c00fa9b6c3c..66eef273ec8 100644 --- a/src/package.json +++ b/src/package.json @@ -56,7 +56,7 @@ "lru-cache": "^11.2.6", "measured-core": "^2.0.0", "mime-types": "^3.0.2", - "oidc-provider": "9.6.0", + "oidc-provider": "9.6.1", "openapi-backend": "^5.15.0", "prom-client": "^15.1.3", "proxy-addr": "^2.0.7", From 8d5001aec231be57bfbf70f4e1ca8f0464df8df6 Mon Sep 17 00:00:00 2001 From: SamTV12345 <40429738+samtv12345@users.noreply.github.com> Date: Sun, 1 Mar 2026 20:59:01 +0100 Subject: [PATCH 006/130] chore: remove npmrc --- .npmrc | 1 - 1 file changed, 1 deletion(-) delete mode 100644 .npmrc diff --git a/.npmrc b/.npmrc deleted file mode 100644 index 54638db6759..00000000000 --- a/.npmrc +++ /dev/null @@ -1 +0,0 @@ -registry=http://10.0.0.122:4873/ \ No newline at end of file From fbed2e431b722f43854ad48ac911557a3f185997 Mon Sep 17 00:00:00 2001 From: "translatewiki.net" Date: Mon, 2 Mar 2026 13:03:11 +0100 Subject: [PATCH 007/130] Localisation updates from https://translatewiki.net. --- src/locales/be-tarask.json | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/locales/be-tarask.json b/src/locales/be-tarask.json index 5b0373987e1..a7bb279ceaf 100644 --- a/src/locales/be-tarask.json +++ b/src/locales/be-tarask.json @@ -88,7 +88,7 @@ "pad.settings.about": "Пра", "pad.settings.poweredBy": "Працуе на", "pad.importExport.import_export": "Імпарт/Экспарт", - "pad.importExport.import": "Загрузіжайце любыя тэкставыя файлы або дакумэнты", + "pad.importExport.import": "Даслаць будзь-які тэкставы файл ці дакумэнт", "pad.importExport.importSuccessful": "Пасьпяхова!", "pad.importExport.export": "Экспартаваць бягучы дакумэнт як:", "pad.importExport.exportetherpad": "Etherpad", From f8055b66f185f3d8eebcb0100986d1f5d509d4ab Mon Sep 17 00:00:00 2001 From: SamTV12345 <40429738+samtv12345@users.noreply.github.com> Date: Tue, 3 Mar 2026 20:54:46 +0100 Subject: [PATCH 008/130] chore: added note about LLM usage in Etherpad --- CONTRIBUTING.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 57ff5740306..19b5ff95cc7 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -1,6 +1,8 @@ # Contributor Guidelines (Please talk to people on the mailing list before you change this page, see our section on [how to get in touch](https://github.com/ether/etherpad-lite#get-in-touch)) +**We have decided that LLM/Agent/AI contributions are fine as long as they are within the instructions set out by this document.** + ## Pull requests * the commit series in the PR should be _linear_ (it **should not contain merge commits**). This is necessary because we want to be able to [bisect](https://en.wikipedia.org/wiki/Bisection_(software_engineering)) bugs easily. Rewrite history/perform a rebase if necessary From b2f2f4df3aff76add438c595af08d4016307fc08 Mon Sep 17 00:00:00 2001 From: John McLear Date: Wed, 4 Mar 2026 11:12:35 +0000 Subject: [PATCH 009/130] ci: qodo best_practices.md file basically copy/pasting contributing.md but gives qodo a reference point, I'd of used a sym link but I don't know how well that would have worked so for now lets just add some cruft and see what happens.. --- best_practices.md | 130 ++++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 130 insertions(+) create mode 100644 best_practices.md diff --git a/best_practices.md b/best_practices.md new file mode 100644 index 00000000000..c8b92015c14 --- /dev/null +++ b/best_practices.md @@ -0,0 +1,130 @@ +# Contributor Guidelines +(Please talk to people on the mailing list before you change this page, see our section on [how to get in touch](https://github.com/ether/etherpad-lite#get-in-touch)) + +**We have decided that LLM/Agent/AI contributions are fine as long as they are within the instructions set out by this document.** + +## Pull requests + +* the commit series in the PR should be _linear_ (it **should not contain merge commits**). This is necessary because we want to be able to [bisect](https://en.wikipedia.org/wiki/Bisection_(software_engineering)) bugs easily. Rewrite history/perform a rebase if necessary +* PRs should be issued against the **develop** branch: we never pull directly into **master** +* PRs **should not have conflicts** with develop. If there are, please resolve them rebasing and force-pushing +* when preparing your PR, please make sure that you have included the relevant **changes to the documentation** (preferably with usage examples) +* contain meaningful and detailed **commit messages** in the form: + ``` + submodule: description + + longer description of the change you have made, eventually mentioning the + number of the issue that is being fixed, in the form: Fixes #someIssueNumber + ``` +* if the PR is a **bug fix**: + * The commit that fixes the bug should **include a regression test** that + would fail if the bug fix was reverted. Adding the regression test in the + same commit as the bug fix makes it easier for a reviewer to verify that the + test is appropriate for the bug fix. + * If there is a bug report, **the pull request description should include the + text "`Fixes #xxx`"** so that the bug report is auto-closed when the PR is + merged. It is less useful to say the same thing in a commit message because + GitHub will spam the bug report every time the commit is rebased, and + because a bug number alone becomes meaningless in forks. (A full URL would + be better, but ideally each commit is readable on its own without the need + to examine an external reference to understand motivation or context.) +* think about stability: code has to be backwards compatible as much as possible. Always **assume your code will be run with an older version of the DB/config file** +* if you want to remove a feature, **deprecate it instead**: + * write an issue with your deprecation plan + * output a `WARN` in the log informing that the feature is going to be removed + * remove the feature in the next version +* if you want to add a new feature, put it under a **feature flag**: + * once the new feature has reached a minimal level of stability, do a PR for it, so it can be integrated early + * expose a mechanism for enabling/disabling the feature + * the new feature should be **disabled** by default. With the feature disabled, the code path should be exactly the same as before your contribution. This is a __necessary condition__ for early integration +* think of the PR not as something that __you wrote__, but as something that __someone else is going to read__. The commit series in the PR should tell a novice developer the story of your thoughts when developing it + +## How to write a bug report + +* Please be polite, we all are humans and problems can occur. +* Please add as much information as possible, for example + * client os(s) and version(s) + * browser(s) and version(s), is the problem reproducible on different clients + * special environments like firewalls or antivirus + * host os and version + * npm and nodejs version + * Logfiles if available + * steps to reproduce + * what you expected to happen + * what actually happened +* Please format logfiles and code examples with markdown see github Markdown help below the issue textarea for more information. + +If you send logfiles, please set the loglevel switch DEBUG in your settings.json file: + +``` +/* The log level we are using, can be: DEBUG, INFO, WARN, ERROR */ + "loglevel": "DEBUG", +``` + +The logfile location is defined in startup script or the log is directly shown in the commandline after you have started etherpad. + +## General goals of Etherpad +To make sure everybody is going in the same direction: +* easy to install for admins and easy to use for people +* easy to integrate into other apps, but also usable as standalone +* lightweight and scalable +* extensible, as much functionality should be extendable with plugins so changes don't have to be done in core. +Also, keep it maintainable. We don't wanna end up as the monster Etherpad was! + +## How to work with git? +* Don't work in your master branch. +* Make a new branch for every feature you're working on. (This ensures that you can work you can do lots of small, independent pull requests instead of one big one with complete different features) +* Don't use the online edit function of github (this only creates ugly and not working commits!) +* Try to make clean commits that are easy readable (including descriptive commit messages!) +* Test before you push. Sounds easy, it isn't! +* Don't check in stuff that gets generated during build or runtime +* Make small pull requests that are easy to review but make sure they do add value by themselves / individually + +## Coding style +* Do write comments. (You don't have to comment every line, but if you come up with something that's a bit complex/weird, just leave a comment. Bear in mind that you will probably leave the project at some point and that other people will read your code. Undocumented huge amounts of code are worthless!) +* Never ever use tabs +* Indentation: JS/CSS: 2 spaces; HTML: 4 spaces +* Don't overengineer. Don't try to solve any possible problem in one step, but try to solve problems as easy as possible and improve the solution over time! +* Do generalize sooner or later! (if an old solution, quickly hacked together, poses more problems than it solves today, refactor it!) +* Keep it compatible. Do not introduce changes to the public API, db schema or configurations too lightly. Don't make incompatible changes without good reasons! +* If you do make changes, document them! (see below) +* Use protocol independent urls "//" + +## Branching model / git workflow +see git flow http://nvie.com/posts/a-successful-git-branching-model/ + +### `master` branch +* the stable +* This is the branch everyone should use for production stuff + +### `develop`branch +* everything that is READY to go into master at some point in time +* This stuff is tested and ready to go out + +### release branches +* stuff that should go into master very soon +* only bugfixes go into these (see http://nvie.com/posts/a-successful-git-branching-model/ for why) +* we should not be blocking new features to develop, just because we feel that we should be releasing it to master soon. This is the situation that release branches solve/handle. + +### hotfix branches +* fixes for bugs in master + +### feature branches (in your own repos) +* these are the branches where you develop your features in +* If it's ready to go out, it will be merged into develop + +Over the time we pull features from feature branches into the develop branch. Every month we pull from develop into master. Bugs in master get fixed in hotfix branches. These branches will get merged into master AND develop. There should never be commits in master that aren't in develop + +## Documentation +The docs are in the `doc/` folder in the git repository, so people can easily find the suitable docs for the current git revision. + +Documentation should be kept up-to-date. This means, whenever you add a new API method, add a new hook or change the database model, pack the relevant changes to the docs in the same pull request. + +You can build the docs e.g. produce html, using `make docs`. At some point in the future we will provide an online documentation. The current documentation in the github wiki should always reflect the state of `master` (!), since there are no docs in master, yet. + +## Testing +Front-end tests are found in the `tests/frontend/` folder in the repository. Run them by pointing your browser to `/tests/frontend`. + +Back-end tests can be run from the `src` directory, via `npm test`. +You can use `npm test -- --inspect-brk` and navigate to `edge://inspect` or `chrome://inspect` to debug the tests. + From 532a8b3218d8d774abd1a0914eae3f061376d511 Mon Sep 17 00:00:00 2001 From: John McLear Date: Wed, 4 Mar 2026 12:07:40 +0000 Subject: [PATCH 010/130] ci: force qodo to check PR desc (#7346) --- best_practices.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/best_practices.md b/best_practices.md index c8b92015c14..51c3729cd0d 100644 --- a/best_practices.md +++ b/best_practices.md @@ -5,6 +5,8 @@ ## Pull requests +* PRs MUST include a non-empty description explaining what the change does and why +* PRs without a description should be flagged as incomplete * the commit series in the PR should be _linear_ (it **should not contain merge commits**). This is necessary because we want to be able to [bisect](https://en.wikipedia.org/wiki/Bisection_(software_engineering)) bugs easily. Rewrite history/perform a rebase if necessary * PRs should be issued against the **develop** branch: we never pull directly into **master** * PRs **should not have conflicts** with develop. If there are, please resolve them rebasing and force-pushing From 4d80659fc8524f2aef0d2c9f4df286bb00a32a6c Mon Sep 17 00:00:00 2001 From: John McLear Date: Wed, 4 Mar 2026 21:03:58 +0000 Subject: [PATCH 011/130] docs: add AGENTS.MD for AI and developer guidance (#7348) * docs: add AGENTS.MD for AI and developer guidance * docs: update project name from Etherpad Lite to Etherpad * docs: fix incorrect test directory path in AGENTS.MD * docs: correct test stack description in AGENTS.MD (Mocha is primary) * docs: fix incorrect easysync documentation path in AGENTS.MD * chore: add .pr_agent.toml to enable automatic PR review/description on push * docs: remove nodejs version from README and AGENTS.MD (prefer package.json) * docs: standardize all indentation to 2 spaces * chore: update src/package.json node engine to match root (>=20.0.0) --- .pr_agent.toml | 5 ++++ AGENTS.MD | 61 +++++++++++++++++++++++++++++++++++++++++++++++ CONTRIBUTING.md | 2 +- README.md | 2 +- best_practices.md | 2 +- src/package.json | 2 +- 6 files changed, 70 insertions(+), 4 deletions(-) create mode 100644 .pr_agent.toml create mode 100644 AGENTS.MD diff --git a/.pr_agent.toml b/.pr_agent.toml new file mode 100644 index 00000000000..93e106ea25a --- /dev/null +++ b/.pr_agent.toml @@ -0,0 +1,5 @@ +[pr_reviewer] +run_on_pr_sync = true + +[pr_description] +run_on_pr_sync = true diff --git a/AGENTS.MD b/AGENTS.MD new file mode 100644 index 00000000000..ec9637b39d3 --- /dev/null +++ b/AGENTS.MD @@ -0,0 +1,61 @@ +# Agent Guide - Etherpad + +Welcome to the Etherpad project. This guide provides essential context and instructions for AI agents and developers to effectively contribute to the codebase. + +## Project Overview +Etherpad is a real-time collaborative editor designed to be lightweight, scalable, and highly extensible via plugins. + +## Technical Stack +- **Runtime:** Node.js +- **Package Manager:** pnpm +- **Languages:** TypeScript (primary), JavaScript, CSS, HTML +- **Backend:** Express.js, Socket.io +- **Frontend:** Legacy core (`src/static`), New UI (`ui/`), Admin UI (`admin/`) +- **Build Tools:** Vite (for `ui` and `admin`), custom scripts in `bin/` +- **Testing:** Mocha (Backend), Vitest, Playwright, custom backend test suite + +## Directory Structure +- `src/node/`: Backend logic, API, and database abstraction. +- `src/static/`: Core frontend logic (Legacy). +- `ui/`: Modern React-based user interface. +- `admin/`: Modern React-based administration interface. +- `bin/`: Utility and lifecycle scripts. +- `doc/`: Documentation in Markdown and Adoc formats. +- `src/tests/`: Test suites (backend, frontend, UI, admin). +- `var/`: Runtime data (logs, dirtyDB, etc. - ignored by git). +- `local_plugins/`: Directory for developing and testing plugins locally. + +## Core Mandates & Conventions + +### Coding Style +- **Indentation:** 2 spaces for all files (JS/TS/CSS/HTML). +- **No Tabs:** Use spaces only. +- **Comments:** Provide clear comments for complex logic. +- **Backward Compatibility:** Always ensure compatibility with older versions of the database and configuration files. + +### Development Workflow +- **Branching:** Work in feature branches. Issue PRs against the `develop` branch. +- **Commits:** Maintain a linear history (no merge commits). Use meaningful messages in the format: `submodule: description`. +- **Feature Flags:** New features should be placed behind feature flags and disabled by default. +- **Deprecation:** Never remove features abruptly; deprecate them first with a `WARN` log. + +### Testing & Validation +- **Requirement:** Every bug fix MUST include a regression test in the same commit. +- **Backend Tests:** Run `pnpm --filter ep_etherpad-lite run test` from the root. +- **Frontend Tests:** Accessible at `/tests/frontend` on a running instance. +- **Linting:** Run `pnpm run lint` to ensure style compliance. +- **Build:** Run `pnpm run build:etherpad` before production deployment. + +## Key Concepts + +### Easysync +The real-time synchronization engine. It is complex; refer to `doc/public/easysync/` before modifying core synchronization logic. + +### Plugin Framework +Most functionality should be implemented as plugins (`ep_...`). Avoid modifying the core unless absolutely necessary. + +### Settings +Configured via `settings.json`. A template is available at `settings.json.template`. Environment variables can override any setting using `"${ENV_VAR}"` or `"${ENV_VAR:default_value}"`. + +## AI-Specific Guidance +AI/Agent contributions are explicitly welcomed by the maintainers, provided they strictly adhere to the guidelines in `CONTRIBUTING.md` and this guide. Always prioritize stability, readability, and compatibility. diff --git a/CONTRIBUTING.md b/CONTRIBUTING.md index 19b5ff95cc7..2a6f384fc4f 100644 --- a/CONTRIBUTING.md +++ b/CONTRIBUTING.md @@ -83,7 +83,7 @@ Also, keep it maintainable. We don't wanna end up as the monster Etherpad was! ## Coding style * Do write comments. (You don't have to comment every line, but if you come up with something that's a bit complex/weird, just leave a comment. Bear in mind that you will probably leave the project at some point and that other people will read your code. Undocumented huge amounts of code are worthless!) * Never ever use tabs -* Indentation: JS/CSS: 2 spaces; HTML: 4 spaces +* Indentation: 2 spaces * Don't overengineer. Don't try to solve any possible problem in one step, but try to solve problems as easy as possible and improve the solution over time! * Do generalize sooner or later! (if an old solution, quickly hacked together, poses more problems than it solves today, refactor it!) * Keep it compatible. Do not introduce changes to the public API, db schema or configurations too lightly. Don't make incompatible changes without good reasons! diff --git a/README.md b/README.md index 3719ecda70a..492ad015d3c 100644 --- a/README.md +++ b/README.md @@ -100,7 +100,7 @@ volumes: ### Requirements -[Node.js](https://nodejs.org/) >= **18.18.2**. +[Node.js](https://nodejs.org/). ### Windows, macOS, Linux diff --git a/best_practices.md b/best_practices.md index 51c3729cd0d..bdfbef4ec15 100644 --- a/best_practices.md +++ b/best_practices.md @@ -85,7 +85,7 @@ Also, keep it maintainable. We don't wanna end up as the monster Etherpad was! ## Coding style * Do write comments. (You don't have to comment every line, but if you come up with something that's a bit complex/weird, just leave a comment. Bear in mind that you will probably leave the project at some point and that other people will read your code. Undocumented huge amounts of code are worthless!) * Never ever use tabs -* Indentation: JS/CSS: 2 spaces; HTML: 4 spaces +* Indentation: 2 spaces * Don't overengineer. Don't try to solve any possible problem in one step, but try to solve problems as easy as possible and improve the solution over time! * Do generalize sooner or later! (if an old solution, quickly hacked together, poses more problems than it solves today, refactor it!) * Keep it compatible. Do not introduce changes to the public API, db schema or configurations too lightly. Don't make incompatible changes without good reasons! diff --git a/src/package.json b/src/package.json index 66eef273ec8..fc1e7a29c7f 100644 --- a/src/package.json +++ b/src/package.json @@ -123,7 +123,7 @@ "vitest": "^4.0.18" }, "engines": { - "node": ">=18.18.2", + "node": ">=20.0.0", "npm": ">=6.14.0", "pnpm": ">=8.3.0" }, From 3482c5b1baac1a7db09ffd67e267da9e774357f6 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 5 Mar 2026 09:32:13 +0000 Subject: [PATCH 012/130] build(deps): bump docker/login-action from 3 to 4 (#7352) Bumps [docker/login-action](https://github.com/docker/login-action) from 3 to 4. - [Release notes](https://github.com/docker/login-action/releases) - [Commits](https://github.com/docker/login-action/compare/v3...v4) --- updated-dependencies: - dependency-name: docker/login-action dependency-version: '4' dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- .github/workflows/docker.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/docker.yml b/.github/workflows/docker.yml index 9cc63ebb3f3..05386966500 100644 --- a/.github/workflows/docker.yml +++ b/.github/workflows/docker.yml @@ -93,7 +93,7 @@ jobs: - name: Log in to Docker Hub if: github.event_name == 'push' - uses: docker/login-action@v3 + uses: docker/login-action@v4 with: username: ${{ secrets.DOCKERHUB_USERNAME }} password: ${{ secrets.DOCKERHUB_TOKEN }} From 7938f695995361f32352471c695eee1b208af139 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri, 6 Mar 2026 16:58:32 +0100 Subject: [PATCH 013/130] build(deps): bump docker/build-push-action from 6 to 7 (#7356) Bumps [docker/build-push-action](https://github.com/docker/build-push-action) from 6 to 7. - [Release notes](https://github.com/docker/build-push-action/releases) - [Commits](https://github.com/docker/build-push-action/compare/v6...v7) --- updated-dependencies: - dependency-name: docker/build-push-action dependency-version: '7' dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- .github/workflows/docker.yml | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/workflows/docker.yml b/.github/workflows/docker.yml index 05386966500..a8b27d99a6c 100644 --- a/.github/workflows/docker.yml +++ b/.github/workflows/docker.yml @@ -36,7 +36,7 @@ jobs: uses: docker/setup-buildx-action@v3 - name: Build and export to Docker - uses: docker/build-push-action@v6 + uses: docker/build-push-action@v7 with: context: ./etherpad target: production @@ -101,7 +101,7 @@ jobs: name: Build and push id: build-docker if: github.event_name == 'push' - uses: docker/build-push-action@v6 + uses: docker/build-push-action@v7 with: context: ./etherpad target: production From c2b28ae7a471843825c543b558484b86f3b66a6d Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri, 6 Mar 2026 16:58:43 +0100 Subject: [PATCH 014/130] build(deps): bump docker/metadata-action from 5 to 6 (#7355) Bumps [docker/metadata-action](https://github.com/docker/metadata-action) from 5 to 6. - [Release notes](https://github.com/docker/metadata-action/releases) - [Commits](https://github.com/docker/metadata-action/compare/v5...v6) --- updated-dependencies: - dependency-name: docker/metadata-action dependency-version: '6' dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- .github/workflows/docker.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/docker.yml b/.github/workflows/docker.yml index a8b27d99a6c..325888ef349 100644 --- a/.github/workflows/docker.yml +++ b/.github/workflows/docker.yml @@ -82,7 +82,7 @@ jobs: name: Docker meta if: github.event_name == 'push' id: meta - uses: docker/metadata-action@v5 + uses: docker/metadata-action@v6 with: images: etherpad/etherpad tags: | From 47280d62bdfc4096de5ad4f2766ac1180d14e344 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Sun, 8 Mar 2026 22:32:32 +0100 Subject: [PATCH 015/130] build(deps): bump docker/setup-buildx-action from 3 to 4 (#7354) Bumps [docker/setup-buildx-action](https://github.com/docker/setup-buildx-action) from 3 to 4. - [Release notes](https://github.com/docker/setup-buildx-action/releases) - [Commits](https://github.com/docker/setup-buildx-action/compare/v3...v4) --- updated-dependencies: - dependency-name: docker/setup-buildx-action dependency-version: '4' dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- .github/workflows/docker.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/docker.yml b/.github/workflows/docker.yml index 325888ef349..011118e7540 100644 --- a/.github/workflows/docker.yml +++ b/.github/workflows/docker.yml @@ -33,7 +33,7 @@ jobs: uses: docker/setup-qemu-action@v3 - name: Set up Docker Buildx - uses: docker/setup-buildx-action@v3 + uses: docker/setup-buildx-action@v4 - name: Build and export to Docker uses: docker/build-push-action@v7 From 7a7c382fb2f46db85d261595125887b218756721 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Sun, 8 Mar 2026 22:32:39 +0100 Subject: [PATCH 016/130] build(deps): bump express-rate-limit from 8.2.1 to 8.2.2 (#7357) Bumps [express-rate-limit](https://github.com/express-rate-limit/express-rate-limit) from 8.2.1 to 8.2.2. - [Release notes](https://github.com/express-rate-limit/express-rate-limit/releases) - [Commits](https://github.com/express-rate-limit/express-rate-limit/compare/v8.2.1...v8.2.2) --- updated-dependencies: - dependency-name: express-rate-limit dependency-version: 8.2.2 dependency-type: direct:production ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- pnpm-lock.yaml | 25 +++++++++++++------------ src/package.json | 2 +- 2 files changed, 14 insertions(+), 13 deletions(-) diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 118cdc00268..ae5ebeb0124 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -96,7 +96,7 @@ importers: version: rolldown-vite@7.2.10(@types/node@25.2.3)(tsx@4.21.0) vite-plugin-babel: specifier: ^1.5.1 - version: 1.5.1(@babel/core@7.28.5)(rolldown-vite@7.2.10(@types/node@25.2.3)(tsx@4.21.0)) + version: 1.5.1(@babel/core@7.29.0)(rolldown-vite@7.2.10(@types/node@25.2.3)(tsx@4.21.0)) vite-plugin-static-copy: specifier: ^3.2.0 version: 3.2.0(rolldown-vite@7.2.10(@types/node@25.2.3)(tsx@4.21.0)) @@ -172,8 +172,8 @@ importers: specifier: ^5.2.1 version: 5.2.1 express-rate-limit: - specifier: ^8.2.1 - version: 8.2.1(express@5.2.1) + specifier: ^8.2.2 + version: 8.2.2(express@5.2.1) express-session: specifier: ^1.19.0 version: 1.19.0 @@ -2301,6 +2301,7 @@ packages: basic-ftp@5.0.5: resolution: {integrity: sha512-4Bcg1P8xhUuqcii/S0Z9wiHIrQVPMermM1any+MX5GeGD7faD3/msQUDGLol9wOcz4/jbg/WJnGqoJF6LiBdtg==} engines: {node: '>=10.0.0'} + deprecated: Security vulnerability fixed in 5.2.0, please upgrade bath-es5@3.0.3: resolution: {integrity: sha512-PdCioDToH3t84lP40kUFCKWCOCH389Dl1kbC8FGoqOwamxsmqxxnJSXdkTOsPoNHXjem4+sJ+bbNoQm5zeCqxg==} @@ -2967,8 +2968,8 @@ packages: resolution: {integrity: sha512-knvyeauYhqjOYvQ66MznSMs83wmHrCycNEN6Ao+2AeYEfxUIkuiVxdEa1qlGEPK+We3n0THiDciYSsCcgW/DoA==} engines: {node: '>=12.0.0'} - express-rate-limit@8.2.1: - resolution: {integrity: sha512-PCZEIEIxqwhzw4KF0n7QF4QqruVTcF73O5kFKUnGOyjbCCgizBBiFaYpd/fnBLUMPw/BWw9OsiN7GgrNYr7j6g==} + express-rate-limit@8.2.2: + resolution: {integrity: sha512-Ybv7bqtOgA914MLwaHWVFXMpMYeR1MQu/D+z2MaLYteqBsTIp9sY3AU7mGNLMJv8eLg8uQMpE20I+L2Lv49nSg==} engines: {node: '>= 16'} peerDependencies: express: '>= 4.11' @@ -3333,8 +3334,8 @@ packages: resolution: {integrity: sha512-4gd7VpWNQNB4UKKCFFVcp1AVv+FMOgs9NKzjHKusc8jTMhd5eL1NqQqOpE0KzMds804/yHlglp3uxgluOqAPLw==} engines: {node: '>= 0.4'} - ip-address@10.0.1: - resolution: {integrity: sha512-NWv9YLW4PoW2B7xtzaS3NCot75m6nK7Icdv0o3lfMceJVRfSoQwqD4wEH5rLwoKJwUiZ/rfpiVBhnaF0FK4HoA==} + ip-address@10.1.0: + resolution: {integrity: sha512-XXADHxXmvT9+CRxhXg56LJovE+bmWnEWB78LB83VZTprKTmaC5QfruXocxzTZ2Kl0DNwKuBdlIhjL8LeY8Sf8Q==} engines: {node: '>= 12'} ip-address@9.0.5: @@ -7773,10 +7774,10 @@ snapshots: expect-type@1.3.0: {} - express-rate-limit@8.2.1(express@5.2.1): + express-rate-limit@8.2.2(express@5.2.1): dependencies: express: 5.2.1 - ip-address: 10.0.1 + ip-address: 10.1.0 express-session@1.19.0: dependencies: @@ -8235,7 +8236,7 @@ snapshots: hasown: 2.0.2 side-channel: 1.1.0 - ip-address@10.0.1: {} + ip-address@10.1.0: {} ip-address@9.0.5: dependencies: @@ -9964,9 +9965,9 @@ snapshots: '@types/unist': 3.0.3 vfile-message: 4.0.2 - vite-plugin-babel@1.5.1(@babel/core@7.28.5)(rolldown-vite@7.2.10(@types/node@25.2.3)(tsx@4.21.0)): + vite-plugin-babel@1.5.1(@babel/core@7.29.0)(rolldown-vite@7.2.10(@types/node@25.2.3)(tsx@4.21.0)): dependencies: - '@babel/core': 7.28.5 + '@babel/core': 7.29.0 vite: rolldown-vite@7.2.10(@types/node@25.2.3)(tsx@4.21.0) vite-plugin-static-copy@3.2.0(rolldown-vite@7.2.10(@types/node@25.2.3)(tsx@4.21.0)): diff --git a/src/package.json b/src/package.json index fc1e7a29c7f..21c710e3680 100644 --- a/src/package.json +++ b/src/package.json @@ -38,7 +38,7 @@ "ejs": "^4.0.1", "esbuild": "^0.27.3", "express": "^5.2.1", - "express-rate-limit": "^8.2.1", + "express-rate-limit": "^8.2.2", "express-session": "^1.19.0", "find-root": "1.1.0", "formidable": "^3.5.4", From ffd96eb9b2e20d3914556c3addda0950b201711e Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Sun, 8 Mar 2026 22:35:34 +0100 Subject: [PATCH 017/130] build(deps): bump docker/setup-qemu-action from 3 to 4 (#7351) Bumps [docker/setup-qemu-action](https://github.com/docker/setup-qemu-action) from 3 to 4. - [Release notes](https://github.com/docker/setup-qemu-action/releases) - [Commits](https://github.com/docker/setup-qemu-action/compare/v3...v4) --- updated-dependencies: - dependency-name: docker/setup-qemu-action dependency-version: '4' dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- .github/workflows/docker.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/docker.yml b/.github/workflows/docker.yml index 011118e7540..3f668384868 100644 --- a/.github/workflows/docker.yml +++ b/.github/workflows/docker.yml @@ -30,7 +30,7 @@ jobs: - name: Set up QEMU if: github.event_name == 'push' - uses: docker/setup-qemu-action@v3 + uses: docker/setup-qemu-action@v4 - name: Set up Docker Buildx uses: docker/setup-buildx-action@v4 From ed4f606f84fb68ccc70aeca261a1c4180117ce53 Mon Sep 17 00:00:00 2001 From: "translatewiki.net" Date: Thu, 12 Mar 2026 13:03:56 +0100 Subject: [PATCH 018/130] Localisation updates from https://translatewiki.net. --- src/locales/eu.json | 8 ++ src/locales/ga.json | 189 ++++++++++++++++++++++++++++++++++++++++++++ 2 files changed, 197 insertions(+) create mode 100644 src/locales/ga.json diff --git a/src/locales/eu.json b/src/locales/eu.json index b85f9381c40..05bbf314949 100644 --- a/src/locales/eu.json +++ b/src/locales/eu.json @@ -46,6 +46,14 @@ "admin_settings.current_save.value": "Gorde Ezarpenak", "admin_settings.page-title": "Ezarpenak - Etherpad", "index.newPad": "Pad berria", + "index.settings": "Ezarpenak", + "index.receiveSessionDescription": "Hemen beste nabigatzaile batetik edo gailu batetik Etherpad saioa jaso ahal izango duzu. Kontuan izan, ordea, honek zure egungo saioa ezabatuko duela.", + "index.copyLink": "2. Kopiatu esteka", + "index.copyLinkDescription": "Egin klik beheko botoian esteka arbelean kopiatzeko.", + "index.copyLinkButton": "Kopiatu esteka arbelean", + "index.transferToSystem": "3. Kopiatu saioa sistema berrira", + "index.transferToSystemDescription": "Ireki kopiatutako esteka helburuko nabigatzailean edo gailuan zure saioa transferitzeko.", + "index.transferSessionDescription": "Transferitu zure uneko saioa nabigatzailera edo gailura beheko botoian klik eginez. Honek zure saioa transferituko duen orrialde baterako esteka bat kopiatuko du helburuko nabigatzailean edo gailuan irekitzean.", "index.createOpenPad": "Ireki Pad bat honako izenarekin:", "index.openPad": "ireki existitzen den eta hurrengo izena duen Pad-a:", "index.recentPadsEmpty": "Ez da aurkitu duela gutxiko pad-ik", diff --git a/src/locales/ga.json b/src/locales/ga.json new file mode 100644 index 00000000000..08939b50126 --- /dev/null +++ b/src/locales/ga.json @@ -0,0 +1,189 @@ +{ + "@metadata": { + "authors": [ + "Aindriu80" + ] + }, + "admin.page-title": "Painéal Riaracháin - Etherpad", + "admin_plugins": "Bainisteoir breiseán", + "admin_plugins.available": "Breiseáin atá ar fáil", + "admin_plugins.available_not-found": "Níor aimsíodh aon bhreiseáin.", + "admin_plugins.available_fetching": "Ag fáil…", + "admin_plugins.available_install.value": "Suiteáil", + "admin_plugins.available_search.placeholder": "Cuardaigh breiseáin le suiteáil", + "admin_plugins.description": "Cur síos", + "admin_plugins.installed": "Breiseáin suiteáilte", + "admin_plugins.installed_fetching": "Ag fáil breiseáin suiteáilte…", + "admin_plugins.installed_nothing": "Níl aon bhreiseáin suiteáilte agat fós.", + "admin_plugins.installed_uninstall.value": "Díshuiteáil", + "admin_plugins.last-update": "Nuashonrú deireanach", + "admin_plugins.name": "Ainm", + "admin_plugins.page-title": "Bainisteoir breiseán - Etherpad", + "admin_plugins.version": "Leagan", + "admin_plugins_info": "Faisnéis fabhtcheartaithe", + "admin_plugins_info.hooks": "Crúcaí suiteáilte", + "admin_plugins_info.hooks_client": "Crúcaí taobh an chliaint", + "admin_plugins_info.hooks_server": "Crúcaí taobh an fhreastalaí", + "admin_plugins_info.parts": "Páirteanna suiteáilte", + "admin_plugins_info.plugins": "Breiseáin suiteáilte", + "admin_plugins_info.page-title": "Faisnéis faoin mbreiseán - Etherpad", + "admin_plugins_info.version": "Leagan Etherpad", + "admin_plugins_info.version_latest": "An leagan is déanaí atá ar fáil", + "admin_plugins_info.version_number": "Uimhir leagan", + "admin_settings": "Socruithe", + "admin_settings.current": "Cumraíocht reatha", + "admin_settings.current_example-devel": "Teimpléad socruithe forbartha samplach", + "admin_settings.current_example-prod": "Teimpléad socruithe táirgeachta samplach", + "admin_settings.current_restart.value": "Atosaigh Etherpad", + "admin_settings.current_save.value": "Sábháil Socruithe", + "admin_settings.page-title": "Socruithe - Etherpad", + "index.newPad": "Ceap Nua", + "index.settings": "Socruithe", + "index.transferSessionTitle": "Seisiún aistrithe", + "index.receiveSessionTitle": "Faigh seisiún", + "index.receiveSessionDescription": "Anseo is féidir leat seisiún Etherpad a fháil ó bhrabhsálaí nó gléas eile. Tabhair faoi deara, áfach, go scriosfaidh sé seo do sheisiún reatha, más ann dó.", + "index.transferSession": "1. Seisiún aistrithe", + "index.transferSessionNow": "Seisiún aistrithe anois", + "index.copyLink": "2. Cóipeáil nasc", + "index.copyLinkDescription": "Cliceáil ar an gcnaipe thíos chun an nasc a chóipeáil chuig do ghearrthaisce.", + "index.copyLinkButton": "Cóipeáil nasc chuig an ghearrthaisce", + "index.transferToSystem": "3. Cóipeáil an seisiún chuig an gcóras nua", + "index.transferToSystemDescription": "Oscail an nasc cóipeáilte sa bhrabhsálaí nó ar an ngléas sprice chun do sheisiún a aistriú.", + "index.transferSessionDescription": "Aistrigh do sheisiún reatha chuig brabhsálaí nó gléas trí chliceáil ar an gcnaipe thíos. Cóipeálfaidh sé seo nasc chuig leathanach a aistreoidh do sheisiún nuair a osclófar é sa bhrabhsálaí nó sa ghléas sprice.", + "index.createOpenPad": "Oscail ceap de réir ainm", + "index.openPad": "oscail Pad atá ann cheana féin leis an ainm:", + "index.recentPads": "Ceapanna Le Déanaí", + "index.recentPadsEmpty": "Ní bhfuarthas aon pillíní le déanaí.", + "index.generateNewPad": "Gin ainm ceap randamach", + "index.labelPad": "Ainm an eochaircheap (roghnach)", + "index.placeholderPadEnter": "Cuir isteach ainm ceap le do thoil...", + "index.createAndShareDocuments": "Cruthaigh agus roinn doiciméid i bhfíor-am", + "index.createAndShareDocumentsDescription": "Le Etherpad is féidir leat doiciméid a chur in eagar i gcomhar le chéile i bhfíor-am, cosúil le heagarthóir il-imreora beo a ritheann i do bhrabhsálaí.", + "pad.toolbar.bold.title": "Trom (Ctrl+B)", + "pad.toolbar.italic.title": "Iodálach (Ctrl+I)", + "pad.toolbar.underline.title": "Folíne (Ctrl+U)", + "pad.toolbar.strikethrough.title": "Streiceadh tríd (Ctrl+5)", + "pad.toolbar.ol.title": "Liosta ordaithe (Ctrl+Shift+N)", + "pad.toolbar.ul.title": "Liosta Gan Ordú (Ctrl+Shift+L)", + "pad.toolbar.indent.title": "Eangú (TAB)", + "pad.toolbar.unindent.title": "Líon amach (Shift+TAB)", + "pad.toolbar.undo.title": "Cealaigh (Ctrl+Z)", + "pad.toolbar.redo.title": "Athdhéan (Ctrl+Y)", + "pad.toolbar.clearAuthorship.title": "Glan Dathanna Údair (Ctrl+Shift+C)", + "pad.toolbar.import_export.title": "Iompórtáil/Easpórtáil ó/chuig formáidí comhaid éagsúla", + "pad.toolbar.timeslider.title": "Sleamhnán Ama", + "pad.toolbar.savedRevision.title": "Sábháil Athbhreithniú", + "pad.toolbar.settings.title": "Socruithe", + "pad.toolbar.embed.title": "Comhroinn agus leabaigh an ceap seo", + "pad.toolbar.home.title": "Ar ais sa bhaile", + "pad.toolbar.showusers.title": "Taispeáin na húsáideoirí ar an eochaircheap seo", + "pad.colorpicker.save": "Sábháil", + "pad.colorpicker.cancel": "Cealaigh", + "pad.loading": "Ag lódáil...", + "pad.noCookie": "Níor aimsíodh fianán. Ceadaigh fianáin i do bhrabhsálaí le do thoil! Ní shábhálfar do sheisiún agus do shocruithe idir cuairteanna. D’fhéadfadh sé seo a bheith mar gheall ar Etherpad a bheith san áireamh in iFrame i roinnt Brabhsálaithe. Cinntigh le do thoil go bhfuil Etherpad ar an bhfo-fhearann/fearann ​​céanna leis an iFrame tuismitheora.", + "pad.permissionDenied": "Níl cead agat rochtain a fháil ar an eochaircheap seo", + "pad.settings.padSettings": "Socruithe Ceap", + "pad.settings.myView": "Mo Radharc", + "pad.settings.stickychat": "Comhrá i gcónaí ar an scáileán", + "pad.settings.chatandusers": "Taispeáin Comhrá agus Úsáideoirí", + "pad.settings.colorcheck": "Dathanna údair", + "pad.settings.linenocheck": "Uimhreacha líne", + "pad.settings.rtlcheck": "Léigh ábhar ó dheis go clé?", + "pad.settings.fontType": "Cineál cló:", + "pad.settings.language": "Teanga:", + "pad.settings.deletePad": "Scrios Pad", + "pad.delete.confirm": "An bhfuil tú cinnte gur mhaith leat an ceap seo a scriosadh?", + "pad.settings.about": "Maidir", + "pad.settings.poweredBy": "Cumhachtaithe ag", + "pad.importExport.import_export": "Iompórtáil/Easpórtáil", + "pad.importExport.import": "Uaslódáil aon chomhad téacs nó doiciméad", + "pad.importExport.importSuccessful": "Rathúil!", + "pad.importExport.export": "Easpórtáil an ceap reatha mar:", + "pad.importExport.exportetherpad": "Etherpad", + "pad.importExport.exporthtml": "HTML", + "pad.importExport.exportplain": "Téacs simplí", + "pad.importExport.exportword": "Microsoft Word", + "pad.importExport.exportpdf": "PDF", + "pad.importExport.exportopen": "ODF (Formáid Doiciméad Oscailte)", + "pad.importExport.abiword.innerHTML": "Ní féidir leat iompórtáil ach ó théacs simplí nó ó fhormáidí HTML. Chun gnéithe iompórtála níos forbartha a fháil, suiteáil AbiWord nó LibreOffice le do thoil.", + "pad.modals.connected": "Ceangailte.", + "pad.modals.reconnecting": "Ag athcheangal le do phainéal…", + "pad.modals.forcereconnect": "Athcheangal fórsaithe", + "pad.modals.reconnecttimer": "Ag iarraidh athcheangal", + "pad.modals.cancel": "Cealaigh", + "pad.modals.userdup": "Osclaíodh i bhfuinneog eile", + "pad.modals.userdup.explanation": "Is cosúil go bhfuil an ceap seo oscailte i níos mó ná fuinneog brabhsálaí amháin ar an ríomhaire seo.", + "pad.modals.userdup.advice": "Athcheangail chun an fhuinneog seo a úsáid ina ionad.", + "pad.modals.unauth": "Gan údarú", + "pad.modals.unauth.explanation": "Tá do cheadanna athraithe agus an leathanach seo á fheiceáil agat. Déan iarracht athcheangal.", + "pad.modals.looping.explanation": "Tá fadhbanna cumarsáide ann leis an bhfreastalaí sioncrónaithe.", + "pad.modals.looping.cause": "B’fhéidir gur cheangail tú trí bhalla dóiteáin nó seachfhreastalaí neamh-chomhoiriúnach.", + "pad.modals.initsocketfail": "Níl an freastalaí inrochtana.", + "pad.modals.initsocketfail.explanation": "Níorbh fhéidir ceangal leis an bhfreastalaí sioncrónaithe.", + "pad.modals.initsocketfail.cause": "Is dócha gur mar gheall ar fhadhb le do bhrabhsálaí nó le do nasc idirlín atá sé seo.", + "pad.modals.slowcommit.explanation": "Níl an freastalaí ag freagairt.", + "pad.modals.slowcommit.cause": "D’fhéadfadh sé seo a bheith mar gheall ar fhadhbanna le nascacht líonra.", + "pad.modals.badChangeset.explanation": "Rangaíodh eagarthóireacht a rinne tú mar mhídhleathach ag an bhfreastalaí sioncrónaithe.", + "pad.modals.badChangeset.cause": "D’fhéadfadh sé seo a bheith mar gheall ar chumraíocht mícheart an fhreastalaí nó ar iompar gan choinne eile. Téigh i dteagmháil leis an riarthóir seirbhíse, má cheapann tú gur earráid í seo. Déan iarracht athcheangal le go leanfaidh tú ar aghaidh leis an eagarthóireacht.", + "pad.modals.corruptPad.explanation": "Tá an ceap atá tú ag iarraidh rochtain a fháil air truaillithe.", + "pad.modals.corruptPad.cause": "D’fhéadfadh sé seo a bheith mar gheall ar chumraíocht mícheart an fhreastalaí nó ar iompar gan choinne eile. Téigh i dteagmháil le riarthóir na seirbhíse, le do thoil.", + "pad.modals.deleted": "Scriosta.", + "pad.modals.deleted.explanation": "Tá an ceap seo bainte.", + "pad.modals.rateLimited": "Ráta Teoranta.", + "pad.modals.rateLimited.explanation": "Chuir tú an iomarca teachtaireachtaí chuig an eochaircheap seo agus mar sin dícheangail sé thú.", + "pad.modals.rejected.explanation": "Dhiúltaigh an freastalaí do theachtaireacht a sheol do bhrabhsálaí.", + "pad.modals.rejected.cause": "B’fhéidir gur nuashonraíodh an freastalaí agus tú ag féachaint ar an eochaircheap, nó b’fhéidir go bhfuil fabht in Etherpad. Bain triail as an leathanach a athlódáil.", + "pad.modals.disconnected": "Tá tú dícheangailte.", + "pad.modals.disconnected.explanation": "Cailleadh an nasc leis an bhfreastalaí", + "pad.modals.disconnected.cause": "B’fhéidir nach bhfuil an freastalaí ar fáil. Cuir an riarthóir seirbhíse ar an eolas má leanann sé seo ar aghaidh.", + "pad.share": "Roinn an ceap seo", + "pad.share.readonly": "Léamh amháin", + "pad.share.link": "Nasc", + "pad.share.emebdcode": "URL a leabú", + "pad.chat": "Comhrá", + "pad.chat.title": "Oscail an comhrá don eochaircheap seo.", + "pad.chat.loadmessages": "Luchtaigh tuilleadh teachtaireachtaí", + "pad.chat.stick.title": "Greamaigh an comhrá leis an scáileán", + "pad.chat.writeMessage.placeholder": "Scríobh do theachtaireacht anseo", + "timeslider.followContents": "Nuashonruithe ar ábhar an eochaircheap leantach", + "timeslider.pageTitle": "{{appTitle}} Sleamhnán Ama", + "timeslider.toolbar.returnbutton": "Fill ar ais chuig an eochaircheap", + "timeslider.toolbar.authors": "Údair:", + "timeslider.toolbar.authorsList": "Gan Údair", + "timeslider.toolbar.exportlink.title": "Easpórtáil", + "timeslider.exportCurrent": "Easpórtáil an leagan reatha mar:", + "timeslider.version": "Leagan {{version}}", + "timeslider.saved": "Sábháilte {{day}} {{month}}, {{year}}", + "timeslider.playPause": "Ábhar an Cheap Athsheinm / Sos", + "timeslider.backRevision": "Téigh siar athbhreithniú sa Pad seo", + "timeslider.forwardRevision": "Téigh ar aghaidh le hathbhreithniú sa Pad seo", + "timeslider.dateformat": "{{day}}/{{month}}/{{year}} {{hours}}:{{minutes}}:{{seconds}}", + "timeslider.month.january": "Eanáir", + "timeslider.month.february": "Feabhra", + "timeslider.month.march": "Márta", + "timeslider.month.april": "Aibreán", + "timeslider.month.may": "Bealtaine", + "timeslider.month.june": "Meitheamh", + "timeslider.month.july": "Iúil", + "timeslider.month.august": "Lúnasa", + "timeslider.month.september": "Meán Fómhair", + "timeslider.month.october": "Deireadh Fómhair", + "timeslider.month.november": "Samhain", + "timeslider.month.december": "Nollaig", + "timeslider.unnamedauthors": "{{num}} gan ainm {[plural(num) one: údar, other: údair]}", + "pad.savedrevs.marked": "Tá an t-athbhreithniú seo marcáilte anois mar athbhreithniú sábháilte", + "pad.savedrevs.timeslider": "Is féidir leat athbhreithnithe sábháilte a fheiceáil trí chuairt a thabhairt ar an sleamhnán ama", + "pad.userlist.entername": "Cuir isteach d'ainm", + "pad.userlist.unnamed": "gan ainm", + "pad.editbar.clearcolors": "Glan dathanna údair ar an doiciméad ar fad? Ní féidir é seo a chealú", + "pad.impexp.importbutton": "Iompórtáil Anois", + "pad.impexp.importing": "Ag allmhairiú...", + "pad.impexp.confirmimport": "Scríobhfar téacs reatha an eochaircheap tríd an gcomhad a iompórtáil. An bhfuil tú cinnte gur mhaith leat dul ar aghaidh?", + "pad.impexp.convertFailed": "Ní raibh muid in ann an comhad seo a allmhairiú. Úsáid formáid doiciméid dhifriúil nó cóipeáil agus greamaigh de láimh le do thoil.", + "pad.impexp.padHasData": "Ní raibh muid in ann an comhad seo a allmhairiú mar tá athruithe déanta ar an Pad seo cheana féin, allmhairigh chuig pad nua le do thoil.", + "pad.impexp.uploadFailed": "Theip ar an uaslódáil, déan iarracht arís", + "pad.impexp.importfailed": "Theip ar an allmhairiú", + "pad.impexp.copypaste": "Cóipeáil agus greamaigh le do thoil", + "pad.impexp.exportdisabled": "Tá easpórtáil i bhformáid {{type}} díchumasaithe. Téigh i dteagmháil le riarthóir do chórais le haghaidh tuilleadh sonraí.", + "pad.impexp.maxFileSize": "Comhad rómhór. Téigh i dteagmháil le riarthóir do shuíomh chun an méid comhaid ceadaithe le haghaidh allmhairithe a mhéadú." +} From 8bf610cda27ce9fb27b2343c623b3e8193446ab8 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 12 Mar 2026 12:26:50 +0000 Subject: [PATCH 019/130] build(deps-dev): bump the dev-dependencies group with 16 updates (#7358) Bumps the dev-dependencies group with 16 updates: | Package | From | To | | --- | --- | --- | | [@types/formidable](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/formidable) | `3.4.6` | `3.5.0` | | [@types/jquery](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/jquery) | `3.5.33` | `4.0.0` | | [@types/jsdom](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/jsdom) | `27.0.0` | `28.0.0` | | [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) | `25.2.3` | `25.3.5` | | [@types/supertest](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/supertest) | `6.0.3` | `7.2.0` | | [@types/whatwg-mimetype](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/whatwg-mimetype) | `3.0.2` | `5.0.0` | | [eslint](https://github.com/eslint/eslint) | `10.0.0` | `10.0.3` | | [sinon](https://github.com/sinonjs/sinon) | `21.0.1` | `21.0.2` | | [@typescript-eslint/eslint-plugin](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin) | `8.55.0` | `8.56.1` | | [@typescript-eslint/parser](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser) | `8.55.0` | `8.56.1` | | [eslint-plugin-react-refresh](https://github.com/ArnaudBarre/eslint-plugin-react-refresh) | `0.5.0` | `0.5.2` | | [i18next](https://github.com/i18next/i18next) | `25.8.8` | `25.8.16` | | [lucide-react](https://github.com/lucide-icons/lucide/tree/HEAD/packages/lucide-react) | `0.564.0` | `0.577.0` | | [react-hook-form](https://github.com/react-hook-form/react-hook-form) | `7.71.1` | `7.71.2` | | [react-i18next](https://github.com/i18next/react-i18next) | `16.5.4` | `16.5.6` | | [react-router-dom](https://github.com/remix-run/react-router/tree/HEAD/packages/react-router-dom) | `7.13.0` | `7.13.1` | Updates `@types/formidable` from 3.4.6 to 3.5.0 - [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases) - [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/formidable) Updates `@types/jquery` from 3.5.33 to 4.0.0 - [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases) - [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/jquery) Updates `@types/jsdom` from 27.0.0 to 28.0.0 - [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases) - [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/jsdom) Updates `@types/node` from 25.2.3 to 25.3.5 - [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases) - [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node) Updates `@types/supertest` from 6.0.3 to 7.2.0 - [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases) - [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/supertest) Updates `@types/whatwg-mimetype` from 3.0.2 to 5.0.0 - [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases) - [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/whatwg-mimetype) Updates `eslint` from 10.0.0 to 10.0.3 - [Release notes](https://github.com/eslint/eslint/releases) - [Commits](https://github.com/eslint/eslint/compare/v10.0.0...v10.0.3) Updates `sinon` from 21.0.1 to 21.0.2 - [Release notes](https://github.com/sinonjs/sinon/releases) - [Changelog](https://github.com/sinonjs/sinon/blob/main/docs/changelog.md) - [Commits](https://github.com/sinonjs/sinon/compare/v21.0.1...v21.0.2) Updates `@typescript-eslint/eslint-plugin` from 8.55.0 to 8.56.1 - [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases) - [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/CHANGELOG.md) - [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v8.56.1/packages/eslint-plugin) Updates `@typescript-eslint/parser` from 8.55.0 to 8.56.1 - [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases) - [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/parser/CHANGELOG.md) - [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v8.56.1/packages/parser) Updates `eslint-plugin-react-refresh` from 0.5.0 to 0.5.2 - [Release notes](https://github.com/ArnaudBarre/eslint-plugin-react-refresh/releases) - [Changelog](https://github.com/ArnaudBarre/eslint-plugin-react-refresh/blob/main/CHANGELOG.md) - [Commits](https://github.com/ArnaudBarre/eslint-plugin-react-refresh/compare/v0.5.0...v0.5.2) Updates `i18next` from 25.8.8 to 25.8.16 - [Release notes](https://github.com/i18next/i18next/releases) - [Changelog](https://github.com/i18next/i18next/blob/master/CHANGELOG.md) - [Commits](https://github.com/i18next/i18next/compare/v25.8.8...v25.8.16) Updates `lucide-react` from 0.564.0 to 0.577.0 - [Release notes](https://github.com/lucide-icons/lucide/releases) - [Commits](https://github.com/lucide-icons/lucide/commits/0.577.0/packages/lucide-react) Updates `react-hook-form` from 7.71.1 to 7.71.2 - [Release notes](https://github.com/react-hook-form/react-hook-form/releases) - [Changelog](https://github.com/react-hook-form/react-hook-form/blob/master/CHANGELOG.md) - [Commits](https://github.com/react-hook-form/react-hook-form/compare/v7.71.1...v7.71.2) Updates `react-i18next` from 16.5.4 to 16.5.6 - [Changelog](https://github.com/i18next/react-i18next/blob/master/CHANGELOG.md) - [Commits](https://github.com/i18next/react-i18next/compare/v16.5.4...v16.5.6) Updates `react-router-dom` from 7.13.0 to 7.13.1 - [Release notes](https://github.com/remix-run/react-router/releases) - [Changelog](https://github.com/remix-run/react-router/blob/main/packages/react-router-dom/CHANGELOG.md) - [Commits](https://github.com/remix-run/react-router/commits/react-router-dom@7.13.1/packages/react-router-dom) --- updated-dependencies: - dependency-name: "@types/formidable" dependency-version: 3.5.0 dependency-type: direct:development update-type: version-update:semver-minor dependency-group: dev-dependencies - dependency-name: "@types/jquery" dependency-version: 4.0.0 dependency-type: direct:development update-type: version-update:semver-major dependency-group: dev-dependencies - dependency-name: "@types/jsdom" dependency-version: 28.0.0 dependency-type: direct:development update-type: version-update:semver-major dependency-group: dev-dependencies - dependency-name: "@types/node" dependency-version: 25.3.5 dependency-type: direct:development update-type: version-update:semver-minor dependency-group: dev-dependencies - dependency-name: "@types/supertest" dependency-version: 7.2.0 dependency-type: direct:development update-type: version-update:semver-major dependency-group: dev-dependencies - dependency-name: "@types/whatwg-mimetype" dependency-version: 5.0.0 dependency-type: direct:development update-type: version-update:semver-major dependency-group: dev-dependencies - dependency-name: eslint dependency-version: 10.0.3 dependency-type: direct:development update-type: version-update:semver-patch dependency-group: dev-dependencies - dependency-name: sinon dependency-version: 21.0.2 dependency-type: direct:development update-type: version-update:semver-patch dependency-group: dev-dependencies - dependency-name: "@typescript-eslint/eslint-plugin" dependency-version: 8.56.1 dependency-type: direct:development update-type: version-update:semver-minor dependency-group: dev-dependencies - dependency-name: "@typescript-eslint/parser" dependency-version: 8.56.1 dependency-type: direct:development update-type: version-update:semver-minor dependency-group: dev-dependencies - dependency-name: eslint-plugin-react-refresh dependency-version: 0.5.2 dependency-type: direct:development update-type: version-update:semver-patch dependency-group: dev-dependencies - dependency-name: i18next dependency-version: 25.8.16 dependency-type: direct:development update-type: version-update:semver-patch dependency-group: dev-dependencies - dependency-name: lucide-react dependency-version: 0.577.0 dependency-type: direct:development update-type: version-update:semver-minor dependency-group: dev-dependencies - dependency-name: react-hook-form dependency-version: 7.71.2 dependency-type: direct:development update-type: version-update:semver-patch dependency-group: dev-dependencies - dependency-name: react-i18next dependency-version: 16.5.6 dependency-type: direct:development update-type: version-update:semver-patch dependency-group: dev-dependencies - dependency-name: react-router-dom dependency-version: 7.13.1 dependency-type: direct:development update-type: version-update:semver-patch dependency-group: dev-dependencies ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- admin/package.json | 18 +- bin/package.json | 2 +- pnpm-lock.yaml | 762 ++++++++++++++++++++++----------------------- src/package.json | 16 +- 4 files changed, 394 insertions(+), 404 deletions(-) diff --git a/admin/package.json b/admin/package.json index 7be9eac6fee..cc42374ca80 100644 --- a/admin/package.json +++ b/admin/package.json @@ -18,21 +18,21 @@ "@radix-ui/react-toast": "^1.2.15", "@types/react": "^19.2.14", "@types/react-dom": "^19.2.3", - "@typescript-eslint/eslint-plugin": "^8.55.0", - "@typescript-eslint/parser": "^8.55.0", + "@typescript-eslint/eslint-plugin": "^8.56.1", + "@typescript-eslint/parser": "^8.56.1", "@vitejs/plugin-react": "^5.1.4", "babel-plugin-react-compiler": "19.1.0-rc.3", - "eslint": "^10.0.0", + "eslint": "^10.0.3", "eslint-plugin-react-hooks": "^7.0.1", - "eslint-plugin-react-refresh": "^0.5.0", - "i18next": "^25.8.8", + "eslint-plugin-react-refresh": "^0.5.2", + "i18next": "^25.8.16", "i18next-browser-languagedetector": "^8.2.1", - "lucide-react": "^0.564.0", + "lucide-react": "^0.577.0", "react": "^19.2.4", "react-dom": "^19.2.4", - "react-hook-form": "^7.71.1", - "react-i18next": "^16.5.4", - "react-router-dom": "^7.13.0", + "react-hook-form": "^7.71.2", + "react-i18next": "^16.5.6", + "react-router-dom": "^7.13.1", "socket.io-client": "^4.8.3", "typescript": "^5.9.3", "vite": "npm:rolldown-vite@7.2.10", diff --git a/bin/package.json b/bin/package.json index a9384a7bb2b..52f66591e06 100644 --- a/bin/package.json +++ b/bin/package.json @@ -15,7 +15,7 @@ "ueberdb2": "^5.0.23" }, "devDependencies": { - "@types/node": "^25.2.3", + "@types/node": "^25.3.5", "@types/semver": "^7.7.1", "typescript": "^5.9.3" }, diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index ae5ebeb0124..61a1571fce5 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -41,35 +41,35 @@ importers: specifier: ^19.2.3 version: 19.2.3(@types/react@19.2.14) '@typescript-eslint/eslint-plugin': - specifier: ^8.55.0 - version: 8.55.0(@typescript-eslint/parser@8.55.0(eslint@10.0.0)(typescript@5.9.3))(eslint@10.0.0)(typescript@5.9.3) + specifier: ^8.56.1 + version: 8.56.1(@typescript-eslint/parser@8.56.1(eslint@10.0.3)(typescript@5.9.3))(eslint@10.0.3)(typescript@5.9.3) '@typescript-eslint/parser': - specifier: ^8.55.0 - version: 8.55.0(eslint@10.0.0)(typescript@5.9.3) + specifier: ^8.56.1 + version: 8.56.1(eslint@10.0.3)(typescript@5.9.3) '@vitejs/plugin-react': specifier: ^5.1.4 - version: 5.1.4(rolldown-vite@7.2.10(@types/node@25.2.3)(tsx@4.21.0)) + version: 5.1.4(rolldown-vite@7.2.10(@types/node@25.3.5)(tsx@4.21.0)) babel-plugin-react-compiler: specifier: 19.1.0-rc.3 version: 19.1.0-rc.3 eslint: - specifier: ^10.0.0 - version: 10.0.0 + specifier: ^10.0.3 + version: 10.0.3 eslint-plugin-react-hooks: specifier: ^7.0.1 - version: 7.0.1(eslint@10.0.0) + version: 7.0.1(eslint@10.0.3) eslint-plugin-react-refresh: - specifier: ^0.5.0 - version: 0.5.0(eslint@10.0.0) + specifier: ^0.5.2 + version: 0.5.2(eslint@10.0.3) i18next: - specifier: ^25.8.8 - version: 25.8.8(typescript@5.9.3) + specifier: ^25.8.16 + version: 25.8.16(typescript@5.9.3) i18next-browser-languagedetector: specifier: ^8.2.1 version: 8.2.1 lucide-react: - specifier: ^0.564.0 - version: 0.564.0(react@19.2.4) + specifier: ^0.577.0 + version: 0.577.0(react@19.2.4) react: specifier: ^19.2.4 version: 19.2.4 @@ -77,14 +77,14 @@ importers: specifier: ^19.2.4 version: 19.2.4(react@19.2.4) react-hook-form: - specifier: ^7.71.1 - version: 7.71.1(react@19.2.4) + specifier: ^7.71.2 + version: 7.71.2(react@19.2.4) react-i18next: - specifier: ^16.5.4 - version: 16.5.4(i18next@25.8.8(typescript@5.9.3))(react-dom@19.2.4(react@19.2.4))(react@19.2.4)(typescript@5.9.3) + specifier: ^16.5.6 + version: 16.5.6(i18next@25.8.16(typescript@5.9.3))(react-dom@19.2.4(react@19.2.4))(react@19.2.4)(typescript@5.9.3) react-router-dom: - specifier: ^7.13.0 - version: 7.13.0(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + specifier: ^7.13.1 + version: 7.13.1(react-dom@19.2.4(react@19.2.4))(react@19.2.4) socket.io-client: specifier: ^4.8.3 version: 4.8.3 @@ -93,13 +93,13 @@ importers: version: 5.9.3 vite: specifier: npm:rolldown-vite@7.2.10 - version: rolldown-vite@7.2.10(@types/node@25.2.3)(tsx@4.21.0) + version: rolldown-vite@7.2.10(@types/node@25.3.5)(tsx@4.21.0) vite-plugin-babel: specifier: ^1.5.1 - version: 1.5.1(@babel/core@7.29.0)(rolldown-vite@7.2.10(@types/node@25.2.3)(tsx@4.21.0)) + version: 1.5.1(@babel/core@7.29.0)(rolldown-vite@7.2.10(@types/node@25.3.5)(tsx@4.21.0)) vite-plugin-static-copy: specifier: ^3.2.0 - version: 3.2.0(rolldown-vite@7.2.10(@types/node@25.2.3)(tsx@4.21.0)) + version: 3.2.0(rolldown-vite@7.2.10(@types/node@25.3.5)(tsx@4.21.0)) zustand: specifier: ^5.0.11 version: 5.0.11(@types/react@19.2.14)(react@19.2.4)(use-sync-external-store@1.6.0(react@19.2.4)) @@ -126,8 +126,8 @@ importers: version: 5.0.23 devDependencies: '@types/node': - specifier: ^25.2.3 - version: 25.2.3 + specifier: ^25.3.5 + version: 25.3.5 '@types/semver': specifier: ^7.7.1 version: 7.7.1 @@ -143,7 +143,7 @@ importers: devDependencies: vitepress: specifier: ^2.0.0-alpha.16 - version: 2.0.0-alpha.16(@types/node@25.2.3)(axios@1.13.5)(jwt-decode@4.0.0)(lightningcss@1.30.2)(postcss@8.5.6)(tsx@4.21.0)(typescript@5.9.3) + version: 2.0.0-alpha.16(@types/node@25.3.5)(axios@1.13.5)(jwt-decode@4.0.0)(lightningcss@1.30.2)(postcss@8.5.6)(tsx@4.21.0)(typescript@5.9.3) src: dependencies: @@ -311,20 +311,20 @@ importers: specifier: ^1.18.2 version: 1.18.2 '@types/formidable': - specifier: ^3.4.6 - version: 3.4.6 + specifier: ^3.5.0 + version: 3.5.0 '@types/http-errors': specifier: ^2.0.5 version: 2.0.5 '@types/jquery': - specifier: ^3.5.33 - version: 3.5.33 + specifier: ^4.0.0 + version: 4.0.0 '@types/js-cookie': specifier: ^3.0.6 version: 3.0.6 '@types/jsdom': - specifier: ^27.0.0 - version: 27.0.0 + specifier: ^28.0.0 + version: 28.0.0 '@types/jsonminify': specifier: ^0.4.3 version: 0.4.3 @@ -338,8 +338,8 @@ importers: specifier: ^10.0.9 version: 10.0.10 '@types/node': - specifier: ^25.2.3 - version: 25.2.3 + specifier: ^25.3.5 + version: 25.3.5 '@types/oidc-provider': specifier: ^9.5.0 version: 9.5.0 @@ -350,8 +350,8 @@ importers: specifier: ^21.0.0 version: 21.0.0 '@types/supertest': - specifier: ^6.0.2 - version: 6.0.3 + specifier: ^7.2.0 + version: 7.2.0 '@types/swagger-ui-express': specifier: ^4.1.8 version: 4.1.8 @@ -359,17 +359,17 @@ importers: specifier: ^1.13.0 version: 1.13.0 '@types/whatwg-mimetype': - specifier: ^3.0.2 - version: 3.0.2 + specifier: ^5.0.0 + version: 5.0.0 chokidar: specifier: ^5.0.0 version: 5.0.0 eslint: - specifier: ^10.0.0 - version: 10.0.0 + specifier: ^10.0.3 + version: 10.0.3 eslint-config-etherpad: specifier: ^4.0.4 - version: 4.0.4(eslint@10.0.0)(typescript@5.9.3) + version: 4.0.4(eslint@10.0.3)(typescript@5.9.3) etherpad-cli-client: specifier: ^3.0.5 version: 3.0.5 @@ -389,8 +389,8 @@ importers: specifier: ^3.0.1 version: 3.0.1 sinon: - specifier: ^21.0.1 - version: 21.0.1 + specifier: ^21.0.2 + version: 21.0.2 split-grid: specifier: ^1.0.11 version: 1.0.11 @@ -402,7 +402,7 @@ importers: version: 5.9.3 vitest: specifier: ^4.0.18 - version: 4.0.18(@opentelemetry/api@1.9.0)(@types/node@25.2.3)(jsdom@28.1.0(@noble/hashes@1.8.0))(lightningcss@1.30.2)(tsx@4.21.0) + version: 4.0.18(@opentelemetry/api@1.9.0)(@types/node@25.3.5)(jsdom@28.1.0(@noble/hashes@1.8.0))(lightningcss@1.30.2)(tsx@4.21.0) ui: devDependencies: @@ -414,7 +414,7 @@ importers: version: 5.9.3 vite: specifier: npm:rolldown-vite@7.2.10 - version: rolldown-vite@7.2.10(@types/node@25.2.3)(tsx@4.21.0) + version: rolldown-vite@7.2.10(@types/node@25.3.5)(tsx@4.21.0) packages: @@ -958,24 +958,24 @@ packages: resolution: {integrity: sha512-EriSTlt5OC9/7SXkRSCAhfSxxoSUgBm33OH+IkwbdpgoqsSsUg7y3uh+IICI/Qg4BBWr3U2i39RpmycbxMq4ew==} engines: {node: ^12.0.0 || ^14.0.0 || >=16.0.0} - '@eslint/config-array@0.23.1': - resolution: {integrity: sha512-uVSdg/V4dfQmTjJzR0szNczjOH/J+FyUMMjYtr07xFRXR7EDf9i1qdxrD0VusZH9knj1/ecxzCQQxyic5NzAiA==} + '@eslint/config-array@0.23.3': + resolution: {integrity: sha512-j+eEWmB6YYLwcNOdlwQ6L2OsptI/LO6lNBuLIqe5R7RetD658HLoF+Mn7LzYmAWWNNzdC6cqP+L6r8ujeYXWLw==} engines: {node: ^20.19.0 || ^22.13.0 || >=24} - '@eslint/config-helpers@0.5.2': - resolution: {integrity: sha512-a5MxrdDXEvqnIq+LisyCX6tQMPF/dSJpCfBgBauY+pNZ28yCtSsTvyTYrMhaI+LK26bVyCJfJkT0u8KIj2i1dQ==} + '@eslint/config-helpers@0.5.3': + resolution: {integrity: sha512-lzGN0onllOZCGroKJmRwY6QcEHxbjBw1gwB8SgRSqK8YbbtEXMvKynsXc3553ckIEBxsbMBU7oOZXKIPGZNeZw==} engines: {node: ^20.19.0 || ^22.13.0 || >=24} - '@eslint/core@1.1.0': - resolution: {integrity: sha512-/nr9K9wkr3P1EzFTdFdMoLuo1PmIxjmwvPozwoSodjNBdefGujXQUF93u1DDZpEaTuDvMsIQddsd35BwtrW9Xw==} + '@eslint/core@1.1.1': + resolution: {integrity: sha512-QUPblTtE51/7/Zhfv8BDwO0qkkzQL7P/aWWbqcf4xWLEYn1oKjdO0gglQBB4GAsu7u6wjijbCmzsUTy6mnk6oQ==} engines: {node: ^20.19.0 || ^22.13.0 || >=24} - '@eslint/object-schema@3.0.1': - resolution: {integrity: sha512-P9cq2dpr+LU8j3qbLygLcSZrl2/ds/pUpfnHNNuk5HW7mnngHs+6WSq5C9mO3rqRX8A1poxqLTC9cu0KOyJlBg==} + '@eslint/object-schema@3.0.3': + resolution: {integrity: sha512-iM869Pugn9Nsxbh/YHRqYiqd23AmIbxJOcpUMOuWCVNdoQJ5ZtwL6h3t0bcZzJUlC3Dq9jCFCESBZnX0GTv7iQ==} engines: {node: ^20.19.0 || ^22.13.0 || >=24} - '@eslint/plugin-kit@0.6.0': - resolution: {integrity: sha512-bIZEUzOI1jkhviX2cp5vNyXQc6olzb2ohewQubuYlMXZ2Q/XjBO0x0XhGPvc9fjSIiUN0vw+0hq53BJ4eQSJKQ==} + '@eslint/plugin-kit@0.6.1': + resolution: {integrity: sha512-iH1B076HoAshH1mLpHMgwdGeTs0CYwL0SPMkGuSebZrwBp16v415e9NZXg2jtrqPVQjf6IANe2Vtlr5KswtcZQ==} engines: {node: ^20.19.0 || ^22.13.0 || >=24} '@exodus/bytes@1.14.1': @@ -1013,10 +1013,6 @@ packages: resolution: {integrity: sha512-O8jcjabXaleOG9DQ0+ARXWZBTfnP4WNAqzuiJK7ll44AmxGKv/J2M4TPjxjY3znBCfvBXFzucm1twdyFybFqEA==} engines: {node: '>=12'} - '@isaacs/cliui@9.0.0': - resolution: {integrity: sha512-AokJm4tuBHillT+FpMtxQ60n8ObyXBatq7jD2/JA9dxbDDokKQm8KMht5ibGzLVU9IJDIKK4TPKgMHEYMn3lMg==} - engines: {node: '>=18'} - '@jridgewell/gen-mapping@0.3.13': resolution: {integrity: sha512-2kkt/7niJ6MgEPxF0bYdQ6etZaA+fQvDcLKckhy1yIQOzaoKjBBjSj63/aLVjYE3qhRt5dvM+uUyfCg6UKCBbA==} @@ -1583,11 +1579,11 @@ packages: '@sinonjs/commons@3.0.1': resolution: {integrity: sha512-K3mCHKQ9sVh8o1C9cxkwxaOmXoAMlDxC1mYyHrjqOWEcBjYr76t96zL2zlj5dUGZ3HSw240X1qgH3Mjf1yJWpQ==} - '@sinonjs/fake-timers@15.1.0': - resolution: {integrity: sha512-cqfapCxwTGsrR80FEgOoPsTonoefMBY7dnUEbQ+GRcved0jvkJLzvX6F4WtN+HBqbPX/SiFsIRUp+IrCW/2I2w==} + '@sinonjs/fake-timers@15.1.1': + resolution: {integrity: sha512-cO5W33JgAPbOh07tvZjUOJ7oWhtaqGHiZw+11DPbyqh2kHTBc3eF/CjJDeQ4205RLQsX6rxCuYOroFQwl7JDRw==} - '@sinonjs/samsam@8.0.3': - resolution: {integrity: sha512-hw6HbX+GyVZzmaYNh82Ecj1vdGZrqVIn/keDTg63IgAwiQPO+xCz99uG6Woqgb4tM0mUiFENKZ4cqd7IX94AXQ==} + '@sinonjs/samsam@9.0.2': + resolution: {integrity: sha512-H/JSxa4GNKZuuU41E3b8Y3tbSEx8y4uq4UH1C56ONQac16HblReJomIvv3Ud7ANQHQmkeSowY49Ij972e/pGxQ==} '@socket.io/component-emitter@3.1.2': resolution: {integrity: sha512-9BCxFwvbGg/RsZK9tjXd8s4UcwR0MWeFQ1XEKIQVVvAGJyINdrqKMcTRyLoK8Rse1GjzLV9cwjWV1olXRWEXVA==} @@ -1672,8 +1668,8 @@ packages: '@types/express@5.0.6': resolution: {integrity: sha512-sKYVuV7Sv9fbPIt/442koC7+IIwK5olP1KWeD88e/idgoJqDm3JV/YUiPwkoKK92ylff2MGxSz1CSjsXelx0YA==} - '@types/formidable@3.4.6': - resolution: {integrity: sha512-LI4Hk+KNsM5q7br4oMVoaWeb+gUqJpz1N8+Y2Q6Cz9cVH33ybahRKUWaRmMboVlkwSbOUGgwc/pEkS7yMSzoWg==} + '@types/formidable@3.5.0': + resolution: {integrity: sha512-fHChKoKkxUy/n7uCHHWTMQ8yA7/raxz1+K2B7edHTIQhwBHX9TfRnCX0ohmuR77ezEFgMapUuSksk0MA7nQCrA==} '@types/fs-extra@9.0.13': resolution: {integrity: sha512-nEnwB++1u5lVDM2UI4c1+5R+FYaKfaAzS4OococimjVm3nQw3TuzH5UNsocrcTBbhnerblyHj4A49qXbIiZdpA==} @@ -1687,14 +1683,14 @@ packages: '@types/http-errors@2.0.5': resolution: {integrity: sha512-r8Tayk8HJnX0FztbZN7oVqGccWgw98T/0neJphO91KkmOzug1KkofZURD4UaD5uH8AqcFLfdPErnBod0u71/qg==} - '@types/jquery@3.5.33': - resolution: {integrity: sha512-SeyVJXlCZpEki5F0ghuYe+L+PprQta6nRZqhONt9F13dWBtR/ftoaIbdRQ7cis7womE+X2LKhsDdDtkkDhJS6g==} + '@types/jquery@4.0.0': + resolution: {integrity: sha512-Z+to+A2VkaHq1DfI2oSwsoCdhCHMpTSgjWzNcbNlRGYzksDBpPUgEcAL+RQjOBJRaLoEAOHXxqDGBVP+BblBwg==} '@types/js-cookie@3.0.6': resolution: {integrity: sha512-wkw9yd1kEXOPnvEeEV1Go1MmxtBJL0RR79aOTAApecWFVu7w0NNXNqhcWgvw2YgZDYadliXkl14pa3WXw5jlCQ==} - '@types/jsdom@27.0.0': - resolution: {integrity: sha512-NZyFl/PViwKzdEkQg96gtnB8wm+1ljhdDay9ahn4hgb+SfVtPCbm3TlmDUFXTA+MGN3CijicnMhG18SI5H3rFw==} + '@types/jsdom@28.0.0': + resolution: {integrity: sha512-A8TBQQC/xAOojy9kM8E46cqT00sF0h7dWjV8t8BJhUi2rG6JRh7XXQo/oLoENuZIQEpXsxLccLCnknyQd7qssQ==} '@types/json-schema@7.0.15': resolution: {integrity: sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA==} @@ -1750,8 +1746,8 @@ packages: '@types/node-fetch@2.6.12': resolution: {integrity: sha512-8nneRWKCg3rMtF69nLQJnOYUcbafYeFSjqkw3jCRLsqkWFlHaoQrr5mXmofFGOx3DKn7UfmBMyov8ySvLRVldA==} - '@types/node@25.2.3': - resolution: {integrity: sha512-m0jEgYlYz+mDJZ2+F4v8D1AyQb+QzsNqRuI7xg1VQX/KlKS0qT9r1Mo16yo5F/MtifXFgaofIFsdFMox2SxIbQ==} + '@types/node@25.3.5': + resolution: {integrity: sha512-oX8xrhvpiyRCQkG1MFchB09f+cXftgIXb3a7UUa4Y3wpmZPw5tyZGTLWhlESOLq1Rq6oDlc8npVU2/9xiCuXMA==} '@types/oidc-provider@9.5.0': resolution: {integrity: sha512-eEzCRVTSqIHD9Bo/qRJ4XQWQ5Z/zBcG+Z2cGJluRsSuWx1RJihqRyPxhIEpMXTwPzHYRTQkVp7hwisQOwzzSAg==} @@ -1791,14 +1787,11 @@ packages: '@types/sinonjs__fake-timers@15.0.1': resolution: {integrity: sha512-Ko2tjWJq8oozHzHV+reuvS5KYIRAokHnGbDwGh/J64LntgpbuylF74ipEL24HCyRjf9FOlBiBHWBR1RlVKsI1w==} - '@types/sizzle@2.3.9': - resolution: {integrity: sha512-xzLEyKB50yqCUPUJkIsrVvoWNfFUbIZI+RspLWt8u+tIW/BetMBZtgV2LY/2o+tYH8dRvQ+eoPf3NdhQCcLE2w==} - '@types/superagent@8.1.9': resolution: {integrity: sha512-pTVjI73witn+9ILmoJdajHGW2jkSaOzhiFYF1Rd3EQ94kymLqB9PjD9ISg7WaALC7+dCHT0FGe9T2LktLq/3GQ==} - '@types/supertest@6.0.3': - resolution: {integrity: sha512-8WzXq62EXFhJ7QsH3Ocb/iKQ/Ty9ZVWnVzoTKc9tyyFRRF3a74Tk2+TLFgaFFw364Ere+npzHKEJ6ga2LzIL7w==} + '@types/supertest@7.2.0': + resolution: {integrity: sha512-uh2Lv57xvggst6lCqNdFAmDSvoMG7M/HDtX4iUCquxQ5EGPtaPM5PL5Hmi7LCvOG8db7YaCPNJEeoI8s/WzIQw==} '@types/swagger-ui-express@4.1.8': resolution: {integrity: sha512-AhZV8/EIreHFmBV5wAs0gzJUNq9JbbSXgJLQubCC0jtIo6prnI9MIRRxnU4MZX9RB9yXxF1V4R7jtLl/Wcj31g==} @@ -1821,8 +1814,8 @@ packages: '@types/web-bluetooth@0.0.21': resolution: {integrity: sha512-oIQLCGWtcFZy2JW77j9k8nHzAOpqMHLQejDA48XXMWH6tjCQHz5RCFz1bzsmROyL6PUm+LLnUiI4BCn221inxA==} - '@types/whatwg-mimetype@3.0.2': - resolution: {integrity: sha512-c2AKvDT8ToxLIOUlN51gTiHXflsfIFisS4pO7pDPoKouJCESkhZnEy623gwP9laCy5lnLDAw1vAzu2vM2YLOrA==} + '@types/whatwg-mimetype@5.0.0': + resolution: {integrity: sha512-YYiBDCoqBgDIF2ByYn4qDb4RaXZ46cOQ6j2We1Ni3bikFNI7YFeL8jxSiYowWsriZrb1mw09CLZ+b+ZkIhsLVw==} '@typescript-eslint/eslint-plugin@7.18.0': resolution: {integrity: sha512-94EQTWZ40mzBc42ATNIBimBEDltSJ9RQHCC8vc/PDbxi4k8dVwUAv4o98dk50M1zB+JGFxp43FP7f8+FP8R6Sw==} @@ -1835,12 +1828,12 @@ packages: typescript: optional: true - '@typescript-eslint/eslint-plugin@8.55.0': - resolution: {integrity: sha512-1y/MVSz0NglV1ijHC8OT49mPJ4qhPYjiK08YUQVbIOyu+5k862LKUHFkpKHWu//zmr7hDR2rhwUm6gnCGNmGBQ==} + '@typescript-eslint/eslint-plugin@8.56.1': + resolution: {integrity: sha512-Jz9ZztpB37dNC+HU2HI28Bs9QXpzCz+y/twHOwhyrIRdbuVDxSytJNDl6z/aAKlaRIwC7y8wJdkBv7FxYGgi0A==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: - '@typescript-eslint/parser': ^8.55.0 - eslint: ^8.57.0 || ^9.0.0 + '@typescript-eslint/parser': ^8.56.1 + eslint: ^8.57.0 || ^9.0.0 || ^10.0.0 typescript: '>=4.8.4 <6.0.0' '@typescript-eslint/parser@7.18.0': @@ -1853,15 +1846,15 @@ packages: typescript: optional: true - '@typescript-eslint/parser@8.55.0': - resolution: {integrity: sha512-4z2nCSBfVIMnbuu8uinj+f0o4qOeggYJLbjpPHka3KH1om7e+H9yLKTYgksTaHcGco+NClhhY2vyO3HsMH1RGw==} + '@typescript-eslint/parser@8.56.1': + resolution: {integrity: sha512-klQbnPAAiGYFyI02+znpBRLyjL4/BrBd0nyWkdC0s/6xFLkXYQ8OoRrSkqacS1ddVxf/LDyODIKbQ5TgKAf/Fg==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: - eslint: ^8.57.0 || ^9.0.0 + eslint: ^8.57.0 || ^9.0.0 || ^10.0.0 typescript: '>=4.8.4 <6.0.0' - '@typescript-eslint/project-service@8.55.0': - resolution: {integrity: sha512-zRcVVPFUYWa3kNnjaZGXSu3xkKV1zXy8M4nO/pElzQhFweb7PPtluDLQtKArEOGmjXoRjnUZ29NjOiF0eCDkcQ==} + '@typescript-eslint/project-service@8.56.1': + resolution: {integrity: sha512-TAdqQTzHNNvlVFfR+hu2PDJrURiwKsUvxFn1M0h95BB8ah5jejas08jUWG4dBA68jDMI988IvtfdAI53JzEHOQ==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: typescript: '>=4.8.4 <6.0.0' @@ -1870,12 +1863,12 @@ packages: resolution: {integrity: sha512-jjhdIE/FPF2B7Z1uzc6i3oWKbGcHb87Qw7AWj6jmEqNOfDFbJWtjt/XfwCpvNkpGWlcJaog5vTR+VV8+w9JflA==} engines: {node: ^18.18.0 || >=20.0.0} - '@typescript-eslint/scope-manager@8.55.0': - resolution: {integrity: sha512-fVu5Omrd3jeqeQLiB9f1YsuK/iHFOwb04bCtY4BSCLgjNbOD33ZdV6KyEqplHr+IlpgT0QTZ/iJ+wT7hvTx49Q==} + '@typescript-eslint/scope-manager@8.56.1': + resolution: {integrity: sha512-YAi4VDKcIZp0O4tz/haYKhmIDZFEUPOreKbfdAN3SzUDMcPhJ8QI99xQXqX+HoUVq8cs85eRKnD+rne2UAnj2w==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} - '@typescript-eslint/tsconfig-utils@8.55.0': - resolution: {integrity: sha512-1R9cXqY7RQd7WuqSN47PK9EDpgFUK3VqdmbYrvWJZYDd0cavROGn+74ktWBlmJ13NXUQKlZ/iAEQHI/V0kKe0Q==} + '@typescript-eslint/tsconfig-utils@8.56.1': + resolution: {integrity: sha512-qOtCYzKEeyr3aR9f28mPJqBty7+DBqsdd63eO0yyDwc6vgThj2UjWfJIcsFeSucYydqcuudMOprZ+x1SpF3ZuQ==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: typescript: '>=4.8.4 <6.0.0' @@ -1890,19 +1883,19 @@ packages: typescript: optional: true - '@typescript-eslint/type-utils@8.55.0': - resolution: {integrity: sha512-x1iH2unH4qAt6I37I2CGlsNs+B9WGxurP2uyZLRz6UJoZWDBx9cJL1xVN/FiOmHEONEg6RIufdvyT0TEYIgC5g==} + '@typescript-eslint/type-utils@8.56.1': + resolution: {integrity: sha512-yB/7dxi7MgTtGhZdaHCemf7PuwrHMenHjmzgUW1aJpO+bBU43OycnM3Wn+DdvDO/8zzA9HlhaJ0AUGuvri4oGg==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: - eslint: ^8.57.0 || ^9.0.0 + eslint: ^8.57.0 || ^9.0.0 || ^10.0.0 typescript: '>=4.8.4 <6.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.55.0': - resolution: {integrity: sha512-ujT0Je8GI5BJWi+/mMoR0wxwVEQaxM+pi30xuMiJETlX80OPovb2p9E8ss87gnSVtYXtJoU9U1Cowcr6w2FE0w==} + '@typescript-eslint/types@8.56.1': + resolution: {integrity: sha512-dbMkdIUkIkchgGDIv7KLUpa0Mda4IYjo4IAMJUZ+3xNoUXxMsk9YtKpTHSChRS85o+H9ftm51gsK1dZReY9CVw==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} '@typescript-eslint/typescript-estree@7.18.0': @@ -1914,8 +1907,8 @@ packages: typescript: optional: true - '@typescript-eslint/typescript-estree@8.55.0': - resolution: {integrity: sha512-EwrH67bSWdx/3aRQhCoxDaHM+CrZjotc2UCCpEDVqfCE+7OjKAGWNY2HsCSTEVvWH2clYQK8pdeLp42EVs+xQw==} + '@typescript-eslint/typescript-estree@8.56.1': + resolution: {integrity: sha512-qzUL1qgalIvKWAf9C1HpvBjif+Vm6rcT5wZd4VoMb9+Km3iS3Cv9DY6dMRMDtPnwRAFyAi7YXJpTIEXLvdfPxg==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: typescript: '>=4.8.4 <6.0.0' @@ -1926,19 +1919,19 @@ packages: peerDependencies: eslint: ^8.56.0 - '@typescript-eslint/utils@8.55.0': - resolution: {integrity: sha512-BqZEsnPGdYpgyEIkDC1BadNY8oMwckftxBT+C8W0g1iKPdeqKZBtTfnvcq0nf60u7MkjFO8RBvpRGZBPw4L2ow==} + '@typescript-eslint/utils@8.56.1': + resolution: {integrity: sha512-HPAVNIME3tABJ61siYlHzSWCGtOoeP2RTIaHXFMPqjrQKCGB9OgUVdiNgH7TJS2JNIQ5qQ4RsAUDuGaGme/KOA==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: - eslint: ^8.57.0 || ^9.0.0 + eslint: ^8.57.0 || ^9.0.0 || ^10.0.0 typescript: '>=4.8.4 <6.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.55.0': - resolution: {integrity: sha512-AxNRwEie8Nn4eFS1FzDMJWIISMGoXMb037sgCBJ3UR6o0fQTzr2tqN9WT+DkWJPhIdQCfV7T6D387566VtnCJA==} + '@typescript-eslint/visitor-keys@8.56.1': + resolution: {integrity: sha512-KiROIzYdEV85YygXw6BI/Dx4fnBlFQu6Mq4QE4MOH9fFnhohw6wX/OAvDY2/C+ut0I3RSPKenvZJIVYqJNkhEw==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} '@ungap/structured-clone@1.3.0': @@ -2167,8 +2160,8 @@ packages: peerDependencies: acorn: ^6.0.0 || ^7.0.0 || ^8.0.0 - acorn@8.15.0: - resolution: {integrity: sha512-NZyJarBfL7nWwIq+FDL6Zp/yHEhePMNnnJ0y3qfieCrmNvYct8uvtiV41UvlSe6apAfk0fY1FbWx+NwfmpvtTg==} + acorn@8.16.0: + resolution: {integrity: sha512-UVJyE9MttOsBQIDKw1skb9nAwQuR5wuGD3+82K6JgJlm/Y+KI92oNsMNGZCYdDsVtRHSak0pcV5Dno5+4jh9sw==} engines: {node: '>=0.4.0'} hasBin: true @@ -2188,8 +2181,8 @@ packages: ajv: optional: true - ajv@6.12.6: - resolution: {integrity: sha512-j3fVLgvTo527anyYyJOGTYJbG+vnnQYvE0m5mmkc1TK+nxAppkCLMIL0aZ4dblVCNoGShhm+kzE4ZUykBoMg4g==} + ajv@6.14.0: + resolution: {integrity: sha512-IWrosm/yrn43eiKqkfkHis7QioDleaXQHdDVPKg0FSwwd/DuvyX79TZnFOnYpB7dcsFAMmtFztZuXPDvSePkFw==} ajv@8.17.1: resolution: {integrity: sha512-B/gBuNg5SiMTrPkC+A2+cW0RszwxYmn6VYxB/inlBStS5nx6xHIt/ehKRhIMhqusl7a8LjQoZnjCs5vhwxOQ1g==} @@ -2286,9 +2279,9 @@ packages: balanced-match@1.0.2: resolution: {integrity: sha512-3oSeUO0TMV67hN1AmbXsK4yaqU7tjiHlbxRDZOpH0KW9+CeX4bRAaX0Anxt0tx2MrpRpWwQaPwIlISEJhYU5Pw==} - balanced-match@4.0.2: - resolution: {integrity: sha512-x0K50QvKQ97fdEz2kPehIerj+YTeptKF9hyYkKf6egnwmMWAkADiO0QCzSp0R5xN8FTZgYaBfSaue46Ej62nMg==} - engines: {node: 20 || >=22} + balanced-match@4.0.4: + resolution: {integrity: sha512-BLrgEcRTwX2o6gGxGOCNyMvGSp35YofuYzw9h1IMTRmKqttAZZVU67bdb9Pr2vUHA8+j3i2tJfjO6C6+4myGTA==} + engines: {node: 18 || 20 || >=22} base64id@2.0.0: resolution: {integrity: sha512-lGe34o6EHj9y3Kts9R4ZYs/Gr+6N7MCaMlIFA3F1R2O5/m7K06AxfSeO5530PEERE6/WyEg3lsuyw4GHlPZHog==} @@ -2332,9 +2325,9 @@ packages: brace-expansion@2.0.2: resolution: {integrity: sha512-Jt0vHyM+jmUBqojB7E1NIYadt0vI0Qxjxd2TErW94wDz+E2LAm5vKMXXwg6ZZBTHPuUlDgQHKXvjGBdfcF1ZDQ==} - brace-expansion@5.0.2: - resolution: {integrity: sha512-Pdk8c9poy+YhOgVWw1JNN22/HcivgKWwpxKq04M/jTmHyCZn12WPJebZxdjSa5TmBqISrUSgNYU3eRORljfCCw==} - engines: {node: 20 || >=22} + brace-expansion@5.0.4: + resolution: {integrity: sha512-h+DEnpVvxmfVefa4jFbCf5HdH5YMDXRsmKflpf1pILZWRFlTbJpxeU55nJl4Smt5HQaGzg1o6RHFPJaOqnmBDg==} + engines: {node: 18 || 20 || >=22} braces@3.0.3: resolution: {integrity: sha512-yQbXgO/OSZVD2IsiLlro+7Hf6Q18EJrKSEsdoMzKePKXct3gvD8oLcOQdIzGupr5Fj+EDe8gO/lxc1BzfMpxvA==} @@ -2649,8 +2642,8 @@ packages: resolution: {integrity: sha512-PJWHUb1RFevKCwaFA9RlG5tCd+FO5iRh9A8HEtkmBH2Li03iJriB6m6JIN4rGz3K3JLawI7/veA1xzRKP6ISBw==} engines: {node: '>=0.3.1'} - diff@8.0.2: - resolution: {integrity: sha512-sSuxWU5j5SR9QQji/o2qMvqRNYRDOcBTgsJ/DeCf4iSN4gW+gNMXM7wFIP+fdXZxoNiAnHUTGjCr+TSWXdRDKg==} + diff@8.0.3: + resolution: {integrity: sha512-qejHi7bcSD4hQAZE0tNAawRK1ZtafHDmMTMkrrIGgSLl7hTnQHmKCeB45xAcbfTqK2zowkM3j3bHt/4b/ARbYQ==} engines: {node: '>=0.3.1'} dir-glob@3.0.1: @@ -2875,17 +2868,17 @@ packages: peerDependencies: 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-refresh@0.5.0: - resolution: {integrity: sha512-ZYvmh7VfVgqR/7wR71I3Zl6hK/C5CcxdWYKZSpHawS5JCNgE4efhQWg/+/WPpgGAp9Ngp/rRZYyaIwmPQBq/lA==} + eslint-plugin-react-refresh@0.5.2: + resolution: {integrity: sha512-hmgTH57GfzoTFjVN0yBwTggnsVUF2tcqi7RJZHqi9lIezSs4eFyAMktA68YD4r5kNw1mxyY4dmkyoFDb3FIqrA==} peerDependencies: - eslint: '>=9' + eslint: ^9 || ^10 eslint-plugin-you-dont-need-lodash-underscore@6.14.0: resolution: {integrity: sha512-3zkkU/O1agczP7szJGHmisZJS/AknfVl6mb0Zqoc95dvFsdmfK+cbhrn+Ffy0UWB1pgDJwQr7kIO3rPstWs3Dw==} engines: {node: '>=4.0'} - eslint-scope@9.1.0: - resolution: {integrity: sha512-CkWE42hOJsNj9FJRaoMX9waUFYhqY4jmyLFdAdzZr6VaCg3ynLYx4WnOdkaIifGfH4gsUcBTn4OZbHXkpLD0FQ==} + eslint-scope@9.1.2: + resolution: {integrity: sha512-xS90H51cKw0jltxmvmHy2Iai1LIqrfbw57b79w/J7MfvDfkIkFZ+kj6zC3BjtUwh150HsSSdxXZcsuv72miDFQ==} engines: {node: ^20.19.0 || ^22.13.0 || >=24} eslint-utils@3.0.0: @@ -2902,16 +2895,12 @@ packages: resolution: {integrity: sha512-wpc+LXeiyiisxPlEkUzU6svyS1frIO3Mgxj1fdy7Pm8Ygzguax2N3Fa/D/ag1WqbOprdI+uY6wMUl8/a2G+iag==} engines: {node: ^12.22.0 || ^14.17.0 || >=16.0.0} - eslint-visitor-keys@4.2.1: - resolution: {integrity: sha512-Uhdk5sfqcee/9H/rCOJikYz67o0a2Tw2hGRPOG2Y1R2dg7brRe1uG0yaNQDHu+TO/uQPF/5eCapvYSmHUjt7JQ==} - engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} - - eslint-visitor-keys@5.0.0: - resolution: {integrity: sha512-A0XeIi7CXU7nPlfHS9loMYEKxUaONu/hTEzHTGba9Huu94Cq1hPivf+DE5erJozZOky0LfvXAyrV/tcswpLI0Q==} + eslint-visitor-keys@5.0.1: + resolution: {integrity: sha512-tD40eHxA35h0PEIZNeIjkHoDR4YjjJp34biM0mDvplBe//mB+IHCqHDGV7pxF+7MklTvighcCPPZC7ynWyjdTA==} engines: {node: ^20.19.0 || ^22.13.0 || >=24} - eslint@10.0.0: - resolution: {integrity: sha512-O0piBKY36YSJhlFSG8p9VUdPV/SxxS4FYDWVpr/9GJuMaepzwlf4J8I4ov1b+ySQfDTPhc3DtLaxcT1fN0yqCg==} + eslint@10.0.3: + resolution: {integrity: sha512-COV33RzXZkqhG9P2rZCFl9ZmJ7WL+gQSCRzE7RhkbclbQPtLAWReL7ysA0Sh4c8Im2U9ynybdR56PV0XcKvqaQ==} engines: {node: ^20.19.0 || ^22.13.0 || >=24} hasBin: true peerDependencies: @@ -2920,8 +2909,8 @@ packages: jiti: optional: true - espree@11.1.0: - resolution: {integrity: sha512-WFWYhO1fV4iYkqOOvq8FbqIhr2pYfoDY0kCotMkDeNtGpiGGkZ1iov2u8ydjtgM8yF8rzK7oaTbw2NAzbAbehw==} + espree@11.2.0: + resolution: {integrity: sha512-7p3DrVEIopW1B1avAGLuCSh1jubc01H2JHc8B4qqGblmg5gI9yumBgACjWo4JlIc04ufug4xJ3SQI8HkS/Rgzw==} engines: {node: ^20.19.0 || ^22.13.0 || >=24} esprima@4.0.1: @@ -3057,6 +3046,9 @@ packages: flatted@3.3.3: resolution: {integrity: sha512-GX+ysw4PBCz0PzosHDepZGANEuFCMLrnRTiEy9McGjmkCQYwRq4A/X786G/fjM/+OjsWSU1ZrY5qyARZmO/uwg==} + flatted@3.4.1: + resolution: {integrity: sha512-IxfVbRFVlV8V/yRaGzk0UVIcsKKHMSfYw66T/u4nTwlWteQePsxe//LjudR1AMX4tZW3WFCh3Zqa/sjlqpbURQ==} + focus-trap@7.8.0: resolution: {integrity: sha512-/yNdlIkpWbM0ptxno3ONTuf+2g318kh2ez3KSeZN5dZ8YC6AAmgeWz+GasYYiBJPFaYcSAPeu4GfhUaChzIJXA==} @@ -3299,8 +3291,8 @@ packages: i18next-browser-languagedetector@8.2.1: resolution: {integrity: sha512-bZg8+4bdmaOiApD7N7BPT9W8MLZG+nPTOFlLiJiT8uzKXFjhxw4v2ierCXOwB5sFDMtuA5G4kgYZ0AznZxQ/cw==} - i18next@25.8.8: - resolution: {integrity: sha512-gNTWXMBe9JBr6LAl2tqRfa6fn2EjrQJ3JBeH2jR+yIckwaJYdI7UfMQrnxzFjuFBb2FHy9Yn4gJB2BwLuC8/ZQ==} + i18next@25.8.16: + resolution: {integrity: sha512-/4Xvgm8RiJNcB+sZwplylrFNJ27DVvubGX7y6uXn7hh7aSvbmXVSRIyIGx08fEn05SYwaSYWt753mIpJuPKo+Q==} peerDependencies: typescript: ^5 peerDependenciesMeta: @@ -3495,10 +3487,6 @@ packages: jackspeak@3.4.3: resolution: {integrity: sha512-OGlZQpz2yfahA/Rd1Y8Cd9SIEsqvXkLVoSw/cgwhnhFMDbsQFeZYoJJ7bIZBS9BcamUW96asq/npPWugM+RQBw==} - jackspeak@4.2.3: - resolution: {integrity: sha512-ykkVRwrYvFm1nb2AJfKKYPr0emF6IiXDYUaFx4Zn9ZuIH7MrzEZ3sD5RlqGXNRpHtvUHJyOnCEFxOlNDtGo7wg==} - engines: {node: 20 || >=22} - jake@10.9.4: resolution: {integrity: sha512-wpHYzhxiVQL+IV05BLE2Xn34zW1S223hvjtqk0+gsPrwd/8JNLXJgZZM/iPFsYc1xyphF+6M6EvdE5E9MBGkDA==} engines: {node: '>=10'} @@ -3742,8 +3730,8 @@ packages: resolution: {integrity: sha512-jumlc0BIUrS3qJGgIkWZsyfAM7NCWiBcCDhnd+3NNM5KbBmLTgHVfWBcg6W+rLUsIpzpERPsvwUP7CckAQSOoA==} engines: {node: '>=12'} - lucide-react@0.564.0: - resolution: {integrity: sha512-JJ8GVTQqFwuliifD48U6+h7DXEHdkhJ/E87kksGByII3qHxtPciVb8T8woQONHBQgHVOl7rSMrrip3SeVNy7Fg==} + lucide-react@0.577.0: + resolution: {integrity: sha512-4LjoFv2eEPwYDPg/CUdBJQSDfPyzXCRrVW1X7jrx/trgxnxkHFjnVZINbzvzxjN70dxychOfg+FTYwBiS3pQ5A==} peerDependencies: react: ^16.5.1 || ^17.0.0 || ^18.0.0 || ^19.0.0 @@ -3823,21 +3811,25 @@ packages: engines: {node: '>=4.0.0'} hasBin: true - minimatch@10.2.0: - resolution: {integrity: sha512-ugkC31VaVg9cF0DFVoADH12k6061zNZkZON+aX8AWsR9GhPcErkcMBceb6znR8wLERM2AkkOxy2nWRLpT9Jq5w==} - engines: {node: 20 || >=22} + minimatch@10.2.4: + resolution: {integrity: sha512-oRjTw/97aTBN0RHbYCdtF1MQfvusSIBQM0IZEgzl6426+8jSC0nF1a/GmnVLpfB9yyr6g6FTqWqiZVbxrtaCIg==} + engines: {node: 18 || 20 || >=22} - minimatch@3.1.2: - resolution: {integrity: sha512-J7p63hRiAjw1NDEww1W7i37+ByIrOWO5XQQAzZ3VOcL0PNybwpfmV/N05zFAzwQ9USyEcX6t3UO+K5aqBQOIHw==} + minimatch@3.1.5: + resolution: {integrity: sha512-VgjWUsnnT6n+NUk6eZq77zeFdpW2LWDzP6zFGrCbHXiYNul5Dzqk2HHQ5uFH2DNW5Xbp8+jVzaeNt94ssEEl4w==} - minimatch@5.1.6: - resolution: {integrity: sha512-lKwV/1brpG6mBUFHtb7NUmtABCb2WZZmm2wNiOA5hAb8VdCS4B3dtMWyvcoViccwAW/COERjXLt0zP1zXUN26g==} + minimatch@5.1.9: + resolution: {integrity: sha512-7o1wEA2RyMP7Iu7GNba9vc0RWWGACJOCZBJX2GJWip0ikV+wcOsgVuY9uE8CPiyQhkGFSlhuSkZPavN7u1c2Fw==} engines: {node: '>=10'} minimatch@9.0.5: resolution: {integrity: sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==} engines: {node: '>=16 || 14 >=14.17'} + minimatch@9.0.9: + resolution: {integrity: sha512-OBwBN9AL4dqmETlpS2zasx+vTeWclWzkblfZk7KTA5j3jeOONz/tRCnZomUyvNg83wL5Zv9Ss6HMJXAgL8R2Yg==} + engines: {node: '>=16 || 14 >=14.17'} + minimist@1.2.8: resolution: {integrity: sha512-2yyAR8qBkN3YuheJanUpWC5U3bb5osDywNB8RzDVlDwDHbocAJveqqj1u8+SVD7jkWT4yvsHCpWqqWqAxb0zCA==} @@ -4168,14 +4160,14 @@ packages: peerDependencies: react: ^19.2.4 - react-hook-form@7.71.1: - resolution: {integrity: sha512-9SUJKCGKo8HUSsCO+y0CtqkqI5nNuaDqTxyqPsZPqIwudpj4rCrAz/jZV+jn57bx5gtZKOh3neQu94DXMc+w5w==} + react-hook-form@7.71.2: + resolution: {integrity: sha512-1CHvcDYzuRUNOflt4MOq3ZM46AronNJtQ1S7tnX6YN4y72qhgiUItpacZUAQ0TyWYci3yz1X+rXaSxiuEm86PA==} engines: {node: '>=18.0.0'} peerDependencies: react: ^16.8.0 || ^17 || ^18 || ^19 - react-i18next@16.5.4: - resolution: {integrity: sha512-6yj+dcfMncEC21QPhOTsW8mOSO+pzFmT6uvU7XXdvM/Cp38zJkmTeMeKmTrmCMD5ToT79FmiE/mRWiYWcJYW4g==} + react-i18next@16.5.6: + resolution: {integrity: sha512-Ua7V2/efA88ido7KyK51fb8Ki8M/sRfW8LR/rZ/9ZKr2luhuTI7kwYZN5agT1rWG7aYm5G0RYE/6JR8KJoCMDw==} peerDependencies: i18next: '>= 25.6.2' react: '>= 16.8.0' @@ -4214,15 +4206,15 @@ packages: '@types/react': optional: true - react-router-dom@7.13.0: - resolution: {integrity: sha512-5CO/l5Yahi2SKC6rGZ+HDEjpjkGaG/ncEP7eWFTvFxbHP8yeeI0PxTDjimtpXYlR3b3i9/WIL4VJttPrESIf2g==} + react-router-dom@7.13.1: + resolution: {integrity: sha512-UJnV3Rxc5TgUPJt2KJpo1Jpy0OKQr0AjgbZzBFjaPJcFOb2Y8jA5H3LT8HUJAiRLlWrEXWHbF1Z4SCZaQjWDHw==} engines: {node: '>=20.0.0'} peerDependencies: react: '>=18' react-dom: '>=18' - react-router@7.13.0: - resolution: {integrity: sha512-PZgus8ETambRT17BUm/LL8lX3Of+oiLaPuVTRH3l1eLvSPpKO3AvhAEb5N7ihAFZQrYDqkvvWfFh9p0z9VsjLw==} + react-router@7.13.1: + resolution: {integrity: sha512-td+xP4X2/6BJvZoX6xw++A2DdEi++YypA69bJUV5oVvqf6/9/9nNlD70YO1e9d3MyamJEBQFEzk6mbfDYbqrSA==} engines: {node: '>=20.0.0'} peerDependencies: react: '>=18' @@ -4539,8 +4531,8 @@ packages: resolution: {integrity: sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==} engines: {node: '>=14'} - sinon@21.0.1: - resolution: {integrity: sha512-Z0NVCW45W8Mg5oC/27/+fCqIHFnW8kpkFOq0j9XJIev4Ld0mKmERaZv5DMLAb9fGCevjKwaEeIQz5+MBXfZcDw==} + sinon@21.0.2: + resolution: {integrity: sha512-VHV4UaoxIe5jrMd89Y9duI76T5g3Lp+ET+ctLhLDaZtSznDPah1KKpRElbdBV4RwqWSw2vadFiVs9Del7MbVeQ==} slash@3.0.0: resolution: {integrity: sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==} @@ -4834,8 +4826,11 @@ packages: underscore@1.13.8: resolution: {integrity: sha512-DXtD3ZtEQzc7M8m4cXotyHR+FAS18C64asBYY5vqZexfYryNNnDc02W4hKg3rdQuqOYas1jkseX0+nZXjTXnvQ==} - undici-types@7.16.0: - resolution: {integrity: sha512-Zz+aZWSj8LE6zoxD+xrjh4VfkIG8Ya6LvYkZqtUQGJPZjYl53ypCaUwWqo7eI0x66KBGeRo+mlBEkMSeSZ38Nw==} + undici-types@7.18.2: + resolution: {integrity: sha512-AsuCzffGHJybSaRrmr5eHr81mwJU3kjw6M+uprWvCXiNeN9SOGwQ3Jn8jb8m3Z6izVgknn1R0FTCEAP2QrLY/w==} + + undici-types@7.22.0: + resolution: {integrity: sha512-RKZvifiL60xdsIuC80UY0dq8Z7DbJUV8/l2hOVbyZAxBzEeQU4Z58+4ZzJ6WN2Lidi9KzT5EbiGX+PI/UGYuRw==} undici@7.22.0: resolution: {integrity: sha512-RqslV2Us5BrllB+JeiZnK4peryVTndy9Dnqq62S3yYRRTj0tFQCwEniUy2167skdGOy3vqRzEvl1Dm4sV2ReDg==} @@ -5642,34 +5637,34 @@ snapshots: '@esbuild/win32-x64@0.27.3': optional: true - '@eslint-community/eslint-utils@4.9.1(eslint@10.0.0)': + '@eslint-community/eslint-utils@4.9.1(eslint@10.0.3)': dependencies: - eslint: 10.0.0 + eslint: 10.0.3 eslint-visitor-keys: 3.4.3 '@eslint-community/regexpp@4.12.2': {} - '@eslint/config-array@0.23.1': + '@eslint/config-array@0.23.3': dependencies: - '@eslint/object-schema': 3.0.1 + '@eslint/object-schema': 3.0.3 debug: 4.4.3(supports-color@8.1.1) - minimatch: 10.2.0 + minimatch: 10.2.4 transitivePeerDependencies: - supports-color - '@eslint/config-helpers@0.5.2': + '@eslint/config-helpers@0.5.3': dependencies: - '@eslint/core': 1.1.0 + '@eslint/core': 1.1.1 - '@eslint/core@1.1.0': + '@eslint/core@1.1.1': dependencies: '@types/json-schema': 7.0.15 - '@eslint/object-schema@3.0.1': {} + '@eslint/object-schema@3.0.3': {} - '@eslint/plugin-kit@0.6.0': + '@eslint/plugin-kit@0.6.1': dependencies: - '@eslint/core': 1.1.0 + '@eslint/core': 1.1.1 levn: 0.4.1 '@exodus/bytes@1.14.1(@noble/hashes@1.8.0)': @@ -5702,8 +5697,6 @@ snapshots: wrap-ansi: 8.1.0 wrap-ansi-cjs: wrap-ansi@7.0.0 - '@isaacs/cliui@9.0.0': {} - '@jridgewell/gen-mapping@0.3.13': dependencies: '@jridgewell/sourcemap-codec': 1.5.5 @@ -6168,11 +6161,11 @@ snapshots: dependencies: type-detect: 4.0.8 - '@sinonjs/fake-timers@15.1.0': + '@sinonjs/fake-timers@15.1.1': dependencies: '@sinonjs/commons': 3.0.1 - '@sinonjs/samsam@8.0.3': + '@sinonjs/samsam@9.0.2': dependencies: '@sinonjs/commons': 3.0.1 type-detect: 4.1.0 @@ -6190,7 +6183,7 @@ snapshots: '@types/accepts@1.3.7': dependencies: - '@types/node': 25.2.3 + '@types/node': 25.3.5 '@types/async@3.2.25': {} @@ -6218,7 +6211,7 @@ snapshots: '@types/body-parser@1.19.6': dependencies: '@types/connect': 3.4.38 - '@types/node': 25.2.3 + '@types/node': 25.3.5 '@types/chai@5.2.3': dependencies: @@ -6227,7 +6220,7 @@ snapshots: '@types/connect@3.4.38': dependencies: - '@types/node': 25.2.3 + '@types/node': 25.3.5 '@types/content-disposition@0.5.9': {} @@ -6242,15 +6235,15 @@ snapshots: '@types/connect': 3.4.38 '@types/express': 5.0.6 '@types/keygrip': 1.0.6 - '@types/node': 25.2.3 + '@types/node': 25.3.5 '@types/cors@2.8.19': dependencies: - '@types/node': 25.2.3 + '@types/node': 25.3.5 '@types/cross-spawn@6.0.6': dependencies: - '@types/node': 25.2.3 + '@types/node': 25.3.5 '@types/debug@4.1.12': dependencies: @@ -6266,7 +6259,7 @@ snapshots: '@types/express-serve-static-core@5.1.0': dependencies: - '@types/node': 25.2.3 + '@types/node': 25.3.5 '@types/qs': 6.14.0 '@types/range-parser': 1.2.7 '@types/send': 1.2.1 @@ -6281,13 +6274,13 @@ snapshots: '@types/express-serve-static-core': 5.1.0 '@types/serve-static': 2.2.0 - '@types/formidable@3.4.6': + '@types/formidable@3.5.0': dependencies: - '@types/node': 25.2.3 + '@types/node': 25.3.5 '@types/fs-extra@9.0.13': dependencies: - '@types/node': 25.2.3 + '@types/node': 25.3.5 '@types/hast@3.0.4': dependencies: @@ -6297,17 +6290,16 @@ snapshots: '@types/http-errors@2.0.5': {} - '@types/jquery@3.5.33': - dependencies: - '@types/sizzle': 2.3.9 + '@types/jquery@4.0.0': {} '@types/js-cookie@3.0.6': {} - '@types/jsdom@27.0.0': + '@types/jsdom@28.0.0': dependencies: - '@types/node': 25.2.3 + '@types/node': 25.3.5 '@types/tough-cookie': 4.0.5 parse5: 7.3.0 + undici-types: 7.22.0 '@types/json-schema@7.0.15': {} @@ -6318,7 +6310,7 @@ snapshots: '@types/jsonwebtoken@9.0.10': dependencies: '@types/ms': 2.1.0 - '@types/node': 25.2.3 + '@types/node': 25.3.5 '@types/keygrip@1.0.6': {} @@ -6335,7 +6327,7 @@ snapshots: '@types/http-errors': 2.0.5 '@types/keygrip': 1.0.6 '@types/koa-compose': 3.2.8 - '@types/node': 25.2.3 + '@types/node': 25.3.5 '@types/linkify-it@5.0.0': {} @@ -6364,18 +6356,18 @@ snapshots: '@types/node-fetch@2.6.12': dependencies: - '@types/node': 25.2.3 + '@types/node': 25.3.5 form-data: 4.0.5 - '@types/node@25.2.3': + '@types/node@25.3.5': dependencies: - undici-types: 7.16.0 + undici-types: 7.18.2 '@types/oidc-provider@9.5.0': dependencies: '@types/keygrip': 1.0.6 '@types/koa': 3.0.0 - '@types/node': 25.2.3 + '@types/node': 25.3.5 '@types/qs@6.14.0': {} @@ -6394,22 +6386,22 @@ snapshots: '@types/send@0.17.4': dependencies: '@types/mime': 1.3.5 - '@types/node': 25.2.3 + '@types/node': 25.3.5 '@types/send@1.2.1': dependencies: - '@types/node': 25.2.3 + '@types/node': 25.3.5 '@types/serve-static@1.15.7': dependencies: '@types/http-errors': 2.0.5 - '@types/node': 25.2.3 + '@types/node': 25.3.5 '@types/send': 0.17.4 '@types/serve-static@2.2.0': dependencies: '@types/http-errors': 2.0.5 - '@types/node': 25.2.3 + '@types/node': 25.3.5 '@types/sinon@21.0.0': dependencies: @@ -6417,16 +6409,14 @@ snapshots: '@types/sinonjs__fake-timers@15.0.1': {} - '@types/sizzle@2.3.9': {} - '@types/superagent@8.1.9': dependencies: '@types/cookiejar': 2.1.5 '@types/methods': 1.1.4 - '@types/node': 25.2.3 + '@types/node': 25.3.5 form-data: 4.0.5 - '@types/supertest@6.0.3': + '@types/supertest@7.2.0': dependencies: '@types/methods': 1.1.4 '@types/superagent': 8.1.9 @@ -6438,7 +6428,7 @@ snapshots: '@types/tar@6.1.13': dependencies: - '@types/node': 25.2.3 + '@types/node': 25.3.5 minipass: 4.2.8 '@types/tough-cookie@4.0.5': {} @@ -6451,17 +6441,17 @@ snapshots: '@types/web-bluetooth@0.0.21': {} - '@types/whatwg-mimetype@3.0.2': {} + '@types/whatwg-mimetype@5.0.0': {} - '@typescript-eslint/eslint-plugin@7.18.0(@typescript-eslint/parser@7.18.0(eslint@10.0.0)(typescript@5.9.3))(eslint@10.0.0)(typescript@5.9.3)': + '@typescript-eslint/eslint-plugin@7.18.0(@typescript-eslint/parser@7.18.0(eslint@10.0.3)(typescript@5.9.3))(eslint@10.0.3)(typescript@5.9.3)': dependencies: '@eslint-community/regexpp': 4.12.2 - '@typescript-eslint/parser': 7.18.0(eslint@10.0.0)(typescript@5.9.3) + '@typescript-eslint/parser': 7.18.0(eslint@10.0.3)(typescript@5.9.3) '@typescript-eslint/scope-manager': 7.18.0 - '@typescript-eslint/type-utils': 7.18.0(eslint@10.0.0)(typescript@5.9.3) - '@typescript-eslint/utils': 7.18.0(eslint@10.0.0)(typescript@5.9.3) + '@typescript-eslint/type-utils': 7.18.0(eslint@10.0.3)(typescript@5.9.3) + '@typescript-eslint/utils': 7.18.0(eslint@10.0.3)(typescript@5.9.3) '@typescript-eslint/visitor-keys': 7.18.0 - eslint: 10.0.0 + eslint: 10.0.3 graphemer: 1.4.0 ignore: 5.3.2 natural-compare: 1.4.0 @@ -6471,15 +6461,15 @@ snapshots: transitivePeerDependencies: - supports-color - '@typescript-eslint/eslint-plugin@8.55.0(@typescript-eslint/parser@8.55.0(eslint@10.0.0)(typescript@5.9.3))(eslint@10.0.0)(typescript@5.9.3)': + '@typescript-eslint/eslint-plugin@8.56.1(@typescript-eslint/parser@8.56.1(eslint@10.0.3)(typescript@5.9.3))(eslint@10.0.3)(typescript@5.9.3)': dependencies: '@eslint-community/regexpp': 4.12.2 - '@typescript-eslint/parser': 8.55.0(eslint@10.0.0)(typescript@5.9.3) - '@typescript-eslint/scope-manager': 8.55.0 - '@typescript-eslint/type-utils': 8.55.0(eslint@10.0.0)(typescript@5.9.3) - '@typescript-eslint/utils': 8.55.0(eslint@10.0.0)(typescript@5.9.3) - '@typescript-eslint/visitor-keys': 8.55.0 - eslint: 10.0.0 + '@typescript-eslint/parser': 8.56.1(eslint@10.0.3)(typescript@5.9.3) + '@typescript-eslint/scope-manager': 8.56.1 + '@typescript-eslint/type-utils': 8.56.1(eslint@10.0.3)(typescript@5.9.3) + '@typescript-eslint/utils': 8.56.1(eslint@10.0.3)(typescript@5.9.3) + '@typescript-eslint/visitor-keys': 8.56.1 + eslint: 10.0.3 ignore: 7.0.5 natural-compare: 1.4.0 ts-api-utils: 2.4.0(typescript@5.9.3) @@ -6487,35 +6477,35 @@ snapshots: transitivePeerDependencies: - supports-color - '@typescript-eslint/parser@7.18.0(eslint@10.0.0)(typescript@5.9.3)': + '@typescript-eslint/parser@7.18.0(eslint@10.0.3)(typescript@5.9.3)': dependencies: '@typescript-eslint/scope-manager': 7.18.0 '@typescript-eslint/types': 7.18.0 '@typescript-eslint/typescript-estree': 7.18.0(typescript@5.9.3) '@typescript-eslint/visitor-keys': 7.18.0 debug: 4.4.3(supports-color@8.1.1) - eslint: 10.0.0 + eslint: 10.0.3 optionalDependencies: typescript: 5.9.3 transitivePeerDependencies: - supports-color - '@typescript-eslint/parser@8.55.0(eslint@10.0.0)(typescript@5.9.3)': + '@typescript-eslint/parser@8.56.1(eslint@10.0.3)(typescript@5.9.3)': dependencies: - '@typescript-eslint/scope-manager': 8.55.0 - '@typescript-eslint/types': 8.55.0 - '@typescript-eslint/typescript-estree': 8.55.0(typescript@5.9.3) - '@typescript-eslint/visitor-keys': 8.55.0 + '@typescript-eslint/scope-manager': 8.56.1 + '@typescript-eslint/types': 8.56.1 + '@typescript-eslint/typescript-estree': 8.56.1(typescript@5.9.3) + '@typescript-eslint/visitor-keys': 8.56.1 debug: 4.4.3(supports-color@8.1.1) - eslint: 10.0.0 + eslint: 10.0.3 typescript: 5.9.3 transitivePeerDependencies: - supports-color - '@typescript-eslint/project-service@8.55.0(typescript@5.9.3)': + '@typescript-eslint/project-service@8.56.1(typescript@5.9.3)': dependencies: - '@typescript-eslint/tsconfig-utils': 8.55.0(typescript@5.9.3) - '@typescript-eslint/types': 8.55.0 + '@typescript-eslint/tsconfig-utils': 8.56.1(typescript@5.9.3) + '@typescript-eslint/types': 8.56.1 debug: 4.4.3(supports-color@8.1.1) typescript: 5.9.3 transitivePeerDependencies: @@ -6526,34 +6516,34 @@ snapshots: '@typescript-eslint/types': 7.18.0 '@typescript-eslint/visitor-keys': 7.18.0 - '@typescript-eslint/scope-manager@8.55.0': + '@typescript-eslint/scope-manager@8.56.1': dependencies: - '@typescript-eslint/types': 8.55.0 - '@typescript-eslint/visitor-keys': 8.55.0 + '@typescript-eslint/types': 8.56.1 + '@typescript-eslint/visitor-keys': 8.56.1 - '@typescript-eslint/tsconfig-utils@8.55.0(typescript@5.9.3)': + '@typescript-eslint/tsconfig-utils@8.56.1(typescript@5.9.3)': dependencies: typescript: 5.9.3 - '@typescript-eslint/type-utils@7.18.0(eslint@10.0.0)(typescript@5.9.3)': + '@typescript-eslint/type-utils@7.18.0(eslint@10.0.3)(typescript@5.9.3)': dependencies: '@typescript-eslint/typescript-estree': 7.18.0(typescript@5.9.3) - '@typescript-eslint/utils': 7.18.0(eslint@10.0.0)(typescript@5.9.3) + '@typescript-eslint/utils': 7.18.0(eslint@10.0.3)(typescript@5.9.3) debug: 4.4.3(supports-color@8.1.1) - eslint: 10.0.0 + eslint: 10.0.3 ts-api-utils: 1.4.3(typescript@5.9.3) optionalDependencies: typescript: 5.9.3 transitivePeerDependencies: - supports-color - '@typescript-eslint/type-utils@8.55.0(eslint@10.0.0)(typescript@5.9.3)': + '@typescript-eslint/type-utils@8.56.1(eslint@10.0.3)(typescript@5.9.3)': dependencies: - '@typescript-eslint/types': 8.55.0 - '@typescript-eslint/typescript-estree': 8.55.0(typescript@5.9.3) - '@typescript-eslint/utils': 8.55.0(eslint@10.0.0)(typescript@5.9.3) + '@typescript-eslint/types': 8.56.1 + '@typescript-eslint/typescript-estree': 8.56.1(typescript@5.9.3) + '@typescript-eslint/utils': 8.56.1(eslint@10.0.3)(typescript@5.9.3) debug: 4.4.3(supports-color@8.1.1) - eslint: 10.0.0 + eslint: 10.0.3 ts-api-utils: 2.4.0(typescript@5.9.3) typescript: 5.9.3 transitivePeerDependencies: @@ -6561,7 +6551,7 @@ snapshots: '@typescript-eslint/types@7.18.0': {} - '@typescript-eslint/types@8.55.0': {} + '@typescript-eslint/types@8.56.1': {} '@typescript-eslint/typescript-estree@7.18.0(typescript@5.9.3)': dependencies: @@ -6570,7 +6560,7 @@ snapshots: debug: 4.4.3(supports-color@8.1.1) globby: 11.1.0 is-glob: 4.0.3 - minimatch: 9.0.5 + minimatch: 9.0.9 semver: 7.7.4 ts-api-utils: 1.4.3(typescript@5.9.3) optionalDependencies: @@ -6578,14 +6568,14 @@ snapshots: transitivePeerDependencies: - supports-color - '@typescript-eslint/typescript-estree@8.55.0(typescript@5.9.3)': + '@typescript-eslint/typescript-estree@8.56.1(typescript@5.9.3)': dependencies: - '@typescript-eslint/project-service': 8.55.0(typescript@5.9.3) - '@typescript-eslint/tsconfig-utils': 8.55.0(typescript@5.9.3) - '@typescript-eslint/types': 8.55.0 - '@typescript-eslint/visitor-keys': 8.55.0 + '@typescript-eslint/project-service': 8.56.1(typescript@5.9.3) + '@typescript-eslint/tsconfig-utils': 8.56.1(typescript@5.9.3) + '@typescript-eslint/types': 8.56.1 + '@typescript-eslint/visitor-keys': 8.56.1 debug: 4.4.3(supports-color@8.1.1) - minimatch: 9.0.5 + minimatch: 10.2.4 semver: 7.7.4 tinyglobby: 0.2.15 ts-api-utils: 2.4.0(typescript@5.9.3) @@ -6593,24 +6583,24 @@ snapshots: transitivePeerDependencies: - supports-color - '@typescript-eslint/utils@7.18.0(eslint@10.0.0)(typescript@5.9.3)': + '@typescript-eslint/utils@7.18.0(eslint@10.0.3)(typescript@5.9.3)': dependencies: - '@eslint-community/eslint-utils': 4.9.1(eslint@10.0.0) + '@eslint-community/eslint-utils': 4.9.1(eslint@10.0.3) '@typescript-eslint/scope-manager': 7.18.0 '@typescript-eslint/types': 7.18.0 '@typescript-eslint/typescript-estree': 7.18.0(typescript@5.9.3) - eslint: 10.0.0 + eslint: 10.0.3 transitivePeerDependencies: - supports-color - typescript - '@typescript-eslint/utils@8.55.0(eslint@10.0.0)(typescript@5.9.3)': + '@typescript-eslint/utils@8.56.1(eslint@10.0.3)(typescript@5.9.3)': dependencies: - '@eslint-community/eslint-utils': 4.9.1(eslint@10.0.0) - '@typescript-eslint/scope-manager': 8.55.0 - '@typescript-eslint/types': 8.55.0 - '@typescript-eslint/typescript-estree': 8.55.0(typescript@5.9.3) - eslint: 10.0.0 + '@eslint-community/eslint-utils': 4.9.1(eslint@10.0.3) + '@typescript-eslint/scope-manager': 8.56.1 + '@typescript-eslint/types': 8.56.1 + '@typescript-eslint/typescript-estree': 8.56.1(typescript@5.9.3) + eslint: 10.0.3 typescript: 5.9.3 transitivePeerDependencies: - supports-color @@ -6620,10 +6610,10 @@ snapshots: '@typescript-eslint/types': 7.18.0 eslint-visitor-keys: 3.4.3 - '@typescript-eslint/visitor-keys@8.55.0': + '@typescript-eslint/visitor-keys@8.56.1': dependencies: - '@typescript-eslint/types': 8.55.0 - eslint-visitor-keys: 4.2.1 + '@typescript-eslint/types': 8.56.1 + eslint-visitor-keys: 5.0.1 '@ungap/structured-clone@1.3.0': {} @@ -6674,7 +6664,7 @@ snapshots: '@unrs/resolver-binding-win32-x64-msvc@1.3.3': optional: true - '@vitejs/plugin-react@5.1.4(rolldown-vite@7.2.10(@types/node@25.2.3)(tsx@4.21.0))': + '@vitejs/plugin-react@5.1.4(rolldown-vite@7.2.10(@types/node@25.3.5)(tsx@4.21.0))': dependencies: '@babel/core': 7.29.0 '@babel/plugin-transform-react-jsx-self': 7.27.1(@babel/core@7.29.0) @@ -6682,14 +6672,14 @@ snapshots: '@rolldown/pluginutils': 1.0.0-rc.3 '@types/babel__core': 7.20.5 react-refresh: 0.18.0 - vite: rolldown-vite@7.2.10(@types/node@25.2.3)(tsx@4.21.0) + vite: rolldown-vite@7.2.10(@types/node@25.3.5)(tsx@4.21.0) transitivePeerDependencies: - supports-color - '@vitejs/plugin-vue@6.0.4(vite@7.3.1(@types/node@25.2.3)(lightningcss@1.30.2)(tsx@4.21.0))(vue@3.5.27(typescript@5.9.3))': + '@vitejs/plugin-vue@6.0.4(vite@7.3.1(@types/node@25.3.5)(lightningcss@1.30.2)(tsx@4.21.0))(vue@3.5.27(typescript@5.9.3))': dependencies: '@rolldown/pluginutils': 1.0.0-rc.2 - vite: 7.3.1(@types/node@25.2.3)(lightningcss@1.30.2)(tsx@4.21.0) + vite: 7.3.1(@types/node@25.3.5)(lightningcss@1.30.2)(tsx@4.21.0) vue: 3.5.27(typescript@5.9.3) '@vitest/expect@4.0.18': @@ -6701,13 +6691,13 @@ snapshots: chai: 6.2.2 tinyrainbow: 3.0.3 - '@vitest/mocker@4.0.18(vite@7.3.1(@types/node@25.2.3)(lightningcss@1.30.2)(tsx@4.21.0))': + '@vitest/mocker@4.0.18(vite@7.3.1(@types/node@25.3.5)(lightningcss@1.30.2)(tsx@4.21.0))': dependencies: '@vitest/spy': 4.0.18 estree-walker: 3.0.3 magic-string: 0.30.21 optionalDependencies: - vite: 7.3.1(@types/node@25.2.3)(lightningcss@1.30.2)(tsx@4.21.0) + vite: 7.3.1(@types/node@25.3.5)(lightningcss@1.30.2)(tsx@4.21.0) '@vitest/pretty-format@4.0.18': dependencies: @@ -6836,11 +6826,11 @@ snapshots: mime-types: 3.0.2 negotiator: 1.0.0 - acorn-jsx@5.3.2(acorn@8.15.0): + acorn-jsx@5.3.2(acorn@8.16.0): dependencies: - acorn: 8.15.0 + acorn: 8.16.0 - acorn@8.15.0: {} + acorn@8.16.0: {} agent-base@7.1.3: {} @@ -6850,7 +6840,7 @@ snapshots: optionalDependencies: ajv: 8.17.1 - ajv@6.12.6: + ajv@6.14.0: dependencies: fast-deep-equal: 3.1.3 fast-json-stable-stringify: 2.1.0 @@ -6969,9 +6959,7 @@ snapshots: balanced-match@1.0.2: {} - balanced-match@4.0.2: - dependencies: - jackspeak: 4.2.3 + balanced-match@4.0.4: {} base64id@2.0.0: {} @@ -7016,9 +7004,9 @@ snapshots: dependencies: balanced-match: 1.0.2 - brace-expansion@5.0.2: + brace-expansion@5.0.4: dependencies: - balanced-match: 4.0.2 + balanced-match: 4.0.4 braces@3.0.3: dependencies: @@ -7296,7 +7284,7 @@ snapshots: diff@7.0.0: {} - diff@8.0.2: {} + diff@8.0.3: {} dir-glob@3.0.1: dependencies: @@ -7349,7 +7337,7 @@ snapshots: engine.io@6.6.5: dependencies: '@types/cors': 2.8.19 - '@types/node': 25.2.3 + '@types/node': 25.3.5 accepts: 1.3.8 base64id: 2.0.0 cookie: 0.7.2 @@ -7521,24 +7509,24 @@ snapshots: optionalDependencies: source-map: 0.6.1 - eslint-compat-utils@0.5.1(eslint@10.0.0): + eslint-compat-utils@0.5.1(eslint@10.0.3): dependencies: - eslint: 10.0.0 + eslint: 10.0.3 semver: 7.7.4 - eslint-config-etherpad@4.0.4(eslint@10.0.0)(typescript@5.9.3): + eslint-config-etherpad@4.0.4(eslint@10.0.3)(typescript@5.9.3): dependencies: '@rushstack/eslint-patch': 1.11.0 - '@typescript-eslint/eslint-plugin': 7.18.0(@typescript-eslint/parser@7.18.0(eslint@10.0.0)(typescript@5.9.3))(eslint@10.0.0)(typescript@5.9.3) - '@typescript-eslint/parser': 7.18.0(eslint@10.0.0)(typescript@5.9.3) - eslint-import-resolver-typescript: 3.10.0(eslint-plugin-import@2.31.0(@typescript-eslint/parser@7.18.0(eslint@10.0.0)(typescript@5.9.3))(eslint@10.0.0))(eslint@10.0.0) - eslint-plugin-cypress: 2.15.2(eslint@10.0.0) - eslint-plugin-eslint-comments: 3.2.0(eslint@10.0.0) - eslint-plugin-import: 2.31.0(@typescript-eslint/parser@7.18.0(eslint@10.0.0)(typescript@5.9.3))(eslint-import-resolver-typescript@3.10.0(eslint-plugin-import@2.31.0(@typescript-eslint/parser@7.18.0(eslint@10.0.0)(typescript@5.9.3))(eslint@10.0.0))(eslint@10.0.0))(eslint@10.0.0) - eslint-plugin-mocha: 10.5.0(eslint@10.0.0) - eslint-plugin-n: 16.6.2(eslint@10.0.0) - eslint-plugin-prefer-arrow: 1.2.3(eslint@10.0.0) - eslint-plugin-promise: 6.6.0(eslint@10.0.0) + '@typescript-eslint/eslint-plugin': 7.18.0(@typescript-eslint/parser@7.18.0(eslint@10.0.3)(typescript@5.9.3))(eslint@10.0.3)(typescript@5.9.3) + '@typescript-eslint/parser': 7.18.0(eslint@10.0.3)(typescript@5.9.3) + eslint-import-resolver-typescript: 3.10.0(eslint-plugin-import@2.31.0(@typescript-eslint/parser@7.18.0(eslint@10.0.3)(typescript@5.9.3))(eslint@10.0.3))(eslint@10.0.3) + eslint-plugin-cypress: 2.15.2(eslint@10.0.3) + eslint-plugin-eslint-comments: 3.2.0(eslint@10.0.3) + eslint-plugin-import: 2.31.0(@typescript-eslint/parser@7.18.0(eslint@10.0.3)(typescript@5.9.3))(eslint-import-resolver-typescript@3.10.0(eslint-plugin-import@2.31.0(@typescript-eslint/parser@7.18.0(eslint@10.0.3)(typescript@5.9.3))(eslint@10.0.3))(eslint@10.0.3))(eslint@10.0.3) + eslint-plugin-mocha: 10.5.0(eslint@10.0.3) + eslint-plugin-n: 16.6.2(eslint@10.0.3) + eslint-plugin-prefer-arrow: 1.2.3(eslint@10.0.3) + eslint-plugin-promise: 6.6.0(eslint@10.0.3) eslint-plugin-you-dont-need-lodash-underscore: 6.14.0 transitivePeerDependencies: - eslint @@ -7555,51 +7543,51 @@ snapshots: transitivePeerDependencies: - supports-color - eslint-import-resolver-typescript@3.10.0(eslint-plugin-import@2.31.0(@typescript-eslint/parser@7.18.0(eslint@10.0.0)(typescript@5.9.3))(eslint@10.0.0))(eslint@10.0.0): + eslint-import-resolver-typescript@3.10.0(eslint-plugin-import@2.31.0(@typescript-eslint/parser@7.18.0(eslint@10.0.3)(typescript@5.9.3))(eslint@10.0.3))(eslint@10.0.3): dependencies: '@nolyfill/is-core-module': 1.0.39 debug: 4.4.3(supports-color@8.1.1) - eslint: 10.0.0 + eslint: 10.0.3 get-tsconfig: 4.13.0 is-bun-module: 2.0.0 stable-hash: 0.0.5 tinyglobby: 0.2.15 unrs-resolver: 1.3.3 optionalDependencies: - eslint-plugin-import: 2.31.0(@typescript-eslint/parser@7.18.0(eslint@10.0.0)(typescript@5.9.3))(eslint-import-resolver-typescript@3.10.0(eslint-plugin-import@2.31.0(@typescript-eslint/parser@7.18.0(eslint@10.0.0)(typescript@5.9.3))(eslint@10.0.0))(eslint@10.0.0))(eslint@10.0.0) + eslint-plugin-import: 2.31.0(@typescript-eslint/parser@7.18.0(eslint@10.0.3)(typescript@5.9.3))(eslint-import-resolver-typescript@3.10.0(eslint-plugin-import@2.31.0(@typescript-eslint/parser@7.18.0(eslint@10.0.3)(typescript@5.9.3))(eslint@10.0.3))(eslint@10.0.3))(eslint@10.0.3) transitivePeerDependencies: - supports-color - eslint-module-utils@2.12.0(@typescript-eslint/parser@7.18.0(eslint@10.0.0)(typescript@5.9.3))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.10.0(eslint-plugin-import@2.31.0(@typescript-eslint/parser@7.18.0(eslint@10.0.0)(typescript@5.9.3))(eslint@10.0.0))(eslint@10.0.0))(eslint@10.0.0): + eslint-module-utils@2.12.0(@typescript-eslint/parser@7.18.0(eslint@10.0.3)(typescript@5.9.3))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.10.0(eslint-plugin-import@2.31.0(@typescript-eslint/parser@7.18.0(eslint@10.0.3)(typescript@5.9.3))(eslint@10.0.3))(eslint@10.0.3))(eslint@10.0.3): dependencies: debug: 3.2.7 optionalDependencies: - '@typescript-eslint/parser': 7.18.0(eslint@10.0.0)(typescript@5.9.3) - eslint: 10.0.0 + '@typescript-eslint/parser': 7.18.0(eslint@10.0.3)(typescript@5.9.3) + eslint: 10.0.3 eslint-import-resolver-node: 0.3.9 - eslint-import-resolver-typescript: 3.10.0(eslint-plugin-import@2.31.0(@typescript-eslint/parser@7.18.0(eslint@10.0.0)(typescript@5.9.3))(eslint@10.0.0))(eslint@10.0.0) + eslint-import-resolver-typescript: 3.10.0(eslint-plugin-import@2.31.0(@typescript-eslint/parser@7.18.0(eslint@10.0.3)(typescript@5.9.3))(eslint@10.0.3))(eslint@10.0.3) transitivePeerDependencies: - supports-color - eslint-plugin-cypress@2.15.2(eslint@10.0.0): + eslint-plugin-cypress@2.15.2(eslint@10.0.3): dependencies: - eslint: 10.0.0 + eslint: 10.0.3 globals: 13.24.0 - eslint-plugin-es-x@7.8.0(eslint@10.0.0): + eslint-plugin-es-x@7.8.0(eslint@10.0.3): dependencies: - '@eslint-community/eslint-utils': 4.9.1(eslint@10.0.0) + '@eslint-community/eslint-utils': 4.9.1(eslint@10.0.3) '@eslint-community/regexpp': 4.12.2 - eslint: 10.0.0 - eslint-compat-utils: 0.5.1(eslint@10.0.0) + eslint: 10.0.3 + eslint-compat-utils: 0.5.1(eslint@10.0.3) - eslint-plugin-eslint-comments@3.2.0(eslint@10.0.0): + eslint-plugin-eslint-comments@3.2.0(eslint@10.0.3): dependencies: escape-string-regexp: 1.0.5 - eslint: 10.0.0 + eslint: 10.0.3 ignore: 5.3.2 - eslint-plugin-import@2.31.0(@typescript-eslint/parser@7.18.0(eslint@10.0.0)(typescript@5.9.3))(eslint-import-resolver-typescript@3.10.0(eslint-plugin-import@2.31.0(@typescript-eslint/parser@7.18.0(eslint@10.0.0)(typescript@5.9.3))(eslint@10.0.0))(eslint@10.0.0))(eslint@10.0.0): + eslint-plugin-import@2.31.0(@typescript-eslint/parser@7.18.0(eslint@10.0.3)(typescript@5.9.3))(eslint-import-resolver-typescript@3.10.0(eslint-plugin-import@2.31.0(@typescript-eslint/parser@7.18.0(eslint@10.0.3)(typescript@5.9.3))(eslint@10.0.3))(eslint@10.0.3))(eslint@10.0.3): dependencies: '@rtsao/scc': 1.1.0 array-includes: 3.1.8 @@ -7608,13 +7596,13 @@ snapshots: array.prototype.flatmap: 1.3.3 debug: 3.2.7 doctrine: 2.1.0 - eslint: 10.0.0 + eslint: 10.0.3 eslint-import-resolver-node: 0.3.9 - eslint-module-utils: 2.12.0(@typescript-eslint/parser@7.18.0(eslint@10.0.0)(typescript@5.9.3))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.10.0(eslint-plugin-import@2.31.0(@typescript-eslint/parser@7.18.0(eslint@10.0.0)(typescript@5.9.3))(eslint@10.0.0))(eslint@10.0.0))(eslint@10.0.0) + eslint-module-utils: 2.12.0(@typescript-eslint/parser@7.18.0(eslint@10.0.3)(typescript@5.9.3))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.10.0(eslint-plugin-import@2.31.0(@typescript-eslint/parser@7.18.0(eslint@10.0.3)(typescript@5.9.3))(eslint@10.0.3))(eslint@10.0.3))(eslint@10.0.3) hasown: 2.0.2 is-core-module: 2.16.1 is-glob: 4.0.3 - minimatch: 3.1.2 + minimatch: 3.1.5 object.fromentries: 2.0.8 object.groupby: 1.0.3 object.values: 1.2.1 @@ -7622,100 +7610,98 @@ snapshots: string.prototype.trimend: 1.0.9 tsconfig-paths: 3.15.0 optionalDependencies: - '@typescript-eslint/parser': 7.18.0(eslint@10.0.0)(typescript@5.9.3) + '@typescript-eslint/parser': 7.18.0(eslint@10.0.3)(typescript@5.9.3) transitivePeerDependencies: - eslint-import-resolver-typescript - eslint-import-resolver-webpack - supports-color - eslint-plugin-mocha@10.5.0(eslint@10.0.0): + eslint-plugin-mocha@10.5.0(eslint@10.0.3): dependencies: - eslint: 10.0.0 - eslint-utils: 3.0.0(eslint@10.0.0) + eslint: 10.0.3 + eslint-utils: 3.0.0(eslint@10.0.3) globals: 13.24.0 rambda: 7.5.0 - eslint-plugin-n@16.6.2(eslint@10.0.0): + eslint-plugin-n@16.6.2(eslint@10.0.3): dependencies: - '@eslint-community/eslint-utils': 4.9.1(eslint@10.0.0) + '@eslint-community/eslint-utils': 4.9.1(eslint@10.0.3) builtins: 5.1.0 - eslint: 10.0.0 - eslint-plugin-es-x: 7.8.0(eslint@10.0.0) + eslint: 10.0.3 + eslint-plugin-es-x: 7.8.0(eslint@10.0.3) get-tsconfig: 4.13.0 globals: 13.24.0 ignore: 5.3.2 is-builtin-module: 3.2.1 is-core-module: 2.16.1 - minimatch: 3.1.2 + minimatch: 3.1.5 resolve: 1.22.11 semver: 7.7.4 - eslint-plugin-prefer-arrow@1.2.3(eslint@10.0.0): + eslint-plugin-prefer-arrow@1.2.3(eslint@10.0.3): dependencies: - eslint: 10.0.0 + eslint: 10.0.3 - eslint-plugin-promise@6.6.0(eslint@10.0.0): + eslint-plugin-promise@6.6.0(eslint@10.0.3): dependencies: - eslint: 10.0.0 + eslint: 10.0.3 - eslint-plugin-react-hooks@7.0.1(eslint@10.0.0): + eslint-plugin-react-hooks@7.0.1(eslint@10.0.3): dependencies: '@babel/core': 7.28.5 '@babel/parser': 7.28.5 - eslint: 10.0.0 + eslint: 10.0.3 hermes-parser: 0.25.1 zod: 4.1.12 zod-validation-error: 4.0.2(zod@4.1.12) transitivePeerDependencies: - supports-color - eslint-plugin-react-refresh@0.5.0(eslint@10.0.0): + eslint-plugin-react-refresh@0.5.2(eslint@10.0.3): dependencies: - eslint: 10.0.0 + eslint: 10.0.3 eslint-plugin-you-dont-need-lodash-underscore@6.14.0: dependencies: kebab-case: 1.0.2 - eslint-scope@9.1.0: + eslint-scope@9.1.2: dependencies: '@types/esrecurse': 4.3.1 '@types/estree': 1.0.8 esrecurse: 4.3.0 estraverse: 5.3.0 - eslint-utils@3.0.0(eslint@10.0.0): + eslint-utils@3.0.0(eslint@10.0.3): dependencies: - eslint: 10.0.0 + eslint: 10.0.3 eslint-visitor-keys: 2.1.0 eslint-visitor-keys@2.1.0: {} eslint-visitor-keys@3.4.3: {} - eslint-visitor-keys@4.2.1: {} - - eslint-visitor-keys@5.0.0: {} + eslint-visitor-keys@5.0.1: {} - eslint@10.0.0: + eslint@10.0.3: dependencies: - '@eslint-community/eslint-utils': 4.9.1(eslint@10.0.0) + '@eslint-community/eslint-utils': 4.9.1(eslint@10.0.3) '@eslint-community/regexpp': 4.12.2 - '@eslint/config-array': 0.23.1 - '@eslint/config-helpers': 0.5.2 - '@eslint/core': 1.1.0 - '@eslint/plugin-kit': 0.6.0 + '@eslint/config-array': 0.23.3 + '@eslint/config-helpers': 0.5.3 + '@eslint/core': 1.1.1 + '@eslint/plugin-kit': 0.6.1 '@humanfs/node': 0.16.7 '@humanwhocodes/module-importer': 1.0.1 '@humanwhocodes/retry': 0.4.3 '@types/estree': 1.0.8 - ajv: 6.12.6 + ajv: 6.14.0 cross-spawn: 7.0.6 debug: 4.4.3(supports-color@8.1.1) escape-string-regexp: 4.0.0 - eslint-scope: 9.1.0 - eslint-visitor-keys: 5.0.0 - espree: 11.1.0 + eslint-scope: 9.1.2 + eslint-visitor-keys: 5.0.1 + espree: 11.2.0 esquery: 1.7.0 esutils: 2.0.3 fast-deep-equal: 3.1.3 @@ -7726,17 +7712,17 @@ snapshots: imurmurhash: 0.1.4 is-glob: 4.0.3 json-stable-stringify-without-jsonify: 1.0.1 - minimatch: 10.2.0 + minimatch: 10.2.4 natural-compare: 1.4.0 optionator: 0.9.4 transitivePeerDependencies: - supports-color - espree@11.1.0: + espree@11.2.0: dependencies: - acorn: 8.15.0 - acorn-jsx: 5.3.2(acorn@8.15.0) - eslint-visitor-keys: 5.0.0 + acorn: 8.16.0 + acorn-jsx: 5.3.2(acorn@8.16.0) + eslint-visitor-keys: 5.0.1 esprima@4.0.1: {} @@ -7868,7 +7854,7 @@ snapshots: filelist@1.0.4: dependencies: - minimatch: 5.1.6 + minimatch: 5.1.9 fill-range@7.1.1: dependencies: @@ -7894,13 +7880,15 @@ snapshots: flat-cache@4.0.1: dependencies: - flatted: 3.3.3 + flatted: 3.4.1 keyv: 4.5.4 flat@5.0.2: {} flatted@3.3.3: {} + flatted@3.4.1: {} + focus-trap@7.8.0: dependencies: tabbable: 6.4.0 @@ -8029,7 +8017,7 @@ snapshots: dependencies: foreground-child: 3.3.1 jackspeak: 3.4.3 - minimatch: 9.0.5 + minimatch: 9.0.9 minipass: 7.1.2 package-json-from-dist: 1.0.1 path-scurry: 1.11.1 @@ -8208,7 +8196,7 @@ snapshots: dependencies: '@babel/runtime': 7.28.6 - i18next@25.8.8(typescript@5.9.3): + i18next@25.8.16(typescript@5.9.3): dependencies: '@babel/runtime': 7.28.6 optionalDependencies: @@ -8390,10 +8378,6 @@ snapshots: optionalDependencies: '@pkgjs/parseargs': 0.11.0 - jackspeak@4.2.3: - dependencies: - '@isaacs/cliui': 9.0.0 - jake@10.9.4: dependencies: async: 3.2.6 @@ -8661,7 +8645,7 @@ snapshots: lru-cache@7.18.3: {} - lucide-react@0.564.0(react@19.2.4): + lucide-react@0.577.0(react@19.2.4): dependencies: react: 19.2.4 @@ -8736,15 +8720,15 @@ snapshots: mime@2.6.0: {} - minimatch@10.2.0: + minimatch@10.2.4: dependencies: - brace-expansion: 5.0.2 + brace-expansion: 5.0.4 - minimatch@3.1.2: + minimatch@3.1.5: dependencies: brace-expansion: 1.1.12 - minimatch@5.1.6: + minimatch@5.1.9: dependencies: brace-expansion: 2.0.2 @@ -8752,6 +8736,10 @@ snapshots: dependencies: brace-expansion: 2.0.2 + minimatch@9.0.9: + dependencies: + brace-expansion: 2.0.2 + minimist@1.2.8: {} minipass@3.3.6: @@ -9054,7 +9042,7 @@ snapshots: proxy-agent@6.5.0: dependencies: agent-base: 7.1.3 - debug: 4.4.1 + debug: 4.4.3(supports-color@8.1.1) http-proxy-agent: 7.0.2 https-proxy-agent: 7.0.6 lru-cache: 7.18.3 @@ -9104,15 +9092,15 @@ snapshots: react: 19.2.4 scheduler: 0.27.0 - react-hook-form@7.71.1(react@19.2.4): + react-hook-form@7.71.2(react@19.2.4): dependencies: react: 19.2.4 - react-i18next@16.5.4(i18next@25.8.8(typescript@5.9.3))(react-dom@19.2.4(react@19.2.4))(react@19.2.4)(typescript@5.9.3): + react-i18next@16.5.6(i18next@25.8.16(typescript@5.9.3))(react-dom@19.2.4(react@19.2.4))(react@19.2.4)(typescript@5.9.3): dependencies: '@babel/runtime': 7.28.6 html-parse-stringify: 3.0.1 - i18next: 25.8.8(typescript@5.9.3) + i18next: 25.8.16(typescript@5.9.3) react: 19.2.4 use-sync-external-store: 1.6.0(react@19.2.4) optionalDependencies: @@ -9140,13 +9128,13 @@ snapshots: optionalDependencies: '@types/react': 19.2.14 - react-router-dom@7.13.0(react-dom@19.2.4(react@19.2.4))(react@19.2.4): + react-router-dom@7.13.1(react-dom@19.2.4(react@19.2.4))(react@19.2.4): dependencies: react: 19.2.4 react-dom: 19.2.4(react@19.2.4) - react-router: 7.13.0(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + react-router: 7.13.1(react-dom@19.2.4(react@19.2.4))(react@19.2.4) - react-router@7.13.0(react-dom@19.2.4(react@19.2.4))(react@19.2.4): + react-router@7.13.1(react-dom@19.2.4(react@19.2.4))(react@19.2.4): dependencies: cookie: 1.1.1 react: 19.2.4 @@ -9242,7 +9230,7 @@ snapshots: rfdc@1.4.1: {} - rolldown-vite@7.2.10(@types/node@25.2.3)(tsx@4.21.0): + rolldown-vite@7.2.10(@types/node@25.3.5)(tsx@4.21.0): dependencies: '@oxc-project/runtime': 0.101.0 fdir: 6.5.0(picomatch@4.0.3) @@ -9252,7 +9240,7 @@ snapshots: rolldown: 1.0.0-beta.53 tinyglobby: 0.2.15 optionalDependencies: - '@types/node': 25.2.3 + '@types/node': 25.3.5 fsevents: 2.3.3 tsx: 4.21.0 @@ -9508,12 +9496,12 @@ snapshots: signal-exit@4.1.0: {} - sinon@21.0.1: + sinon@21.0.2: dependencies: '@sinonjs/commons': 3.0.1 - '@sinonjs/fake-timers': 15.1.0 - '@sinonjs/samsam': 8.0.3 - diff: 8.0.2 + '@sinonjs/fake-timers': 15.1.1 + '@sinonjs/samsam': 9.0.2 + diff: 8.0.3 supports-color: 7.2.0 slash@3.0.0: {} @@ -9600,7 +9588,7 @@ snapshots: streamroller@3.1.5: dependencies: date-format: 4.0.14 - debug: 4.4.0 + debug: 4.4.3(supports-color@8.1.1) fs-extra: 8.1.0 transitivePeerDependencies: - supports-color @@ -9850,7 +9838,9 @@ snapshots: underscore@1.13.8: {} - undici-types@7.16.0: {} + undici-types@7.18.2: {} + + undici-types@7.22.0: {} undici@7.22.0: {} @@ -9965,20 +9955,20 @@ snapshots: '@types/unist': 3.0.3 vfile-message: 4.0.2 - vite-plugin-babel@1.5.1(@babel/core@7.29.0)(rolldown-vite@7.2.10(@types/node@25.2.3)(tsx@4.21.0)): + vite-plugin-babel@1.5.1(@babel/core@7.29.0)(rolldown-vite@7.2.10(@types/node@25.3.5)(tsx@4.21.0)): dependencies: '@babel/core': 7.29.0 - vite: rolldown-vite@7.2.10(@types/node@25.2.3)(tsx@4.21.0) + vite: rolldown-vite@7.2.10(@types/node@25.3.5)(tsx@4.21.0) - vite-plugin-static-copy@3.2.0(rolldown-vite@7.2.10(@types/node@25.2.3)(tsx@4.21.0)): + vite-plugin-static-copy@3.2.0(rolldown-vite@7.2.10(@types/node@25.3.5)(tsx@4.21.0)): dependencies: chokidar: 3.6.0 p-map: 7.0.4 picocolors: 1.1.1 tinyglobby: 0.2.15 - vite: rolldown-vite@7.2.10(@types/node@25.2.3)(tsx@4.21.0) + vite: rolldown-vite@7.2.10(@types/node@25.3.5)(tsx@4.21.0) - vite@7.3.1(@types/node@25.2.3)(lightningcss@1.30.2)(tsx@4.21.0): + vite@7.3.1(@types/node@25.3.5)(lightningcss@1.30.2)(tsx@4.21.0): dependencies: esbuild: 0.27.3 fdir: 6.5.0(picomatch@4.0.3) @@ -9987,12 +9977,12 @@ snapshots: rollup: 4.57.1 tinyglobby: 0.2.15 optionalDependencies: - '@types/node': 25.2.3 + '@types/node': 25.3.5 fsevents: 2.3.3 lightningcss: 1.30.2 tsx: 4.21.0 - vitepress@2.0.0-alpha.16(@types/node@25.2.3)(axios@1.13.5)(jwt-decode@4.0.0)(lightningcss@1.30.2)(postcss@8.5.6)(tsx@4.21.0)(typescript@5.9.3): + vitepress@2.0.0-alpha.16(@types/node@25.3.5)(axios@1.13.5)(jwt-decode@4.0.0)(lightningcss@1.30.2)(postcss@8.5.6)(tsx@4.21.0)(typescript@5.9.3): dependencies: '@docsearch/css': 4.5.3 '@docsearch/js': 4.5.3 @@ -10002,7 +9992,7 @@ snapshots: '@shikijs/transformers': 3.22.0 '@shikijs/types': 3.22.0 '@types/markdown-it': 14.1.2 - '@vitejs/plugin-vue': 6.0.4(vite@7.3.1(@types/node@25.2.3)(lightningcss@1.30.2)(tsx@4.21.0))(vue@3.5.27(typescript@5.9.3)) + '@vitejs/plugin-vue': 6.0.4(vite@7.3.1(@types/node@25.3.5)(lightningcss@1.30.2)(tsx@4.21.0))(vue@3.5.27(typescript@5.9.3)) '@vue/devtools-api': 8.0.6 '@vue/shared': 3.5.27 '@vueuse/core': 14.2.0(vue@3.5.27(typescript@5.9.3)) @@ -10011,7 +10001,7 @@ snapshots: mark.js: 8.11.1 minisearch: 7.2.0 shiki: 3.22.0 - vite: 7.3.1(@types/node@25.2.3)(lightningcss@1.30.2)(tsx@4.21.0) + vite: 7.3.1(@types/node@25.3.5)(lightningcss@1.30.2)(tsx@4.21.0) vue: 3.5.27(typescript@5.9.3) optionalDependencies: postcss: 8.5.6 @@ -10040,10 +10030,10 @@ snapshots: - universal-cookie - yaml - vitest@4.0.18(@opentelemetry/api@1.9.0)(@types/node@25.2.3)(jsdom@28.1.0(@noble/hashes@1.8.0))(lightningcss@1.30.2)(tsx@4.21.0): + vitest@4.0.18(@opentelemetry/api@1.9.0)(@types/node@25.3.5)(jsdom@28.1.0(@noble/hashes@1.8.0))(lightningcss@1.30.2)(tsx@4.21.0): dependencies: '@vitest/expect': 4.0.18 - '@vitest/mocker': 4.0.18(vite@7.3.1(@types/node@25.2.3)(lightningcss@1.30.2)(tsx@4.21.0)) + '@vitest/mocker': 4.0.18(vite@7.3.1(@types/node@25.3.5)(lightningcss@1.30.2)(tsx@4.21.0)) '@vitest/pretty-format': 4.0.18 '@vitest/runner': 4.0.18 '@vitest/snapshot': 4.0.18 @@ -10060,11 +10050,11 @@ snapshots: tinyexec: 1.0.2 tinyglobby: 0.2.15 tinyrainbow: 3.0.3 - vite: 7.3.1(@types/node@25.2.3)(lightningcss@1.30.2)(tsx@4.21.0) + vite: 7.3.1(@types/node@25.3.5)(lightningcss@1.30.2)(tsx@4.21.0) why-is-node-running: 2.3.0 optionalDependencies: '@opentelemetry/api': 1.9.0 - '@types/node': 25.2.3 + '@types/node': 25.3.5 jsdom: 28.1.0(@noble/hashes@1.8.0) transitivePeerDependencies: - jiti diff --git a/src/package.json b/src/package.json index 21c710e3680..4d491ee52ad 100644 --- a/src/package.json +++ b/src/package.json @@ -90,25 +90,25 @@ "@types/ejs": "^3.1.5", "@types/express": "^5.0.6", "@types/express-session": "^1.18.2", - "@types/formidable": "^3.4.6", + "@types/formidable": "^3.5.0", "@types/http-errors": "^2.0.5", - "@types/jquery": "^3.5.33", + "@types/jquery": "^4.0.0", "@types/js-cookie": "^3.0.6", - "@types/jsdom": "^27.0.0", + "@types/jsdom": "^28.0.0", "@types/jsonminify": "^0.4.3", "@types/jsonwebtoken": "^9.0.10", "@types/mime-types": "^3.0.1", "@types/mocha": "^10.0.9", - "@types/node": "^25.2.3", + "@types/node": "^25.3.5", "@types/oidc-provider": "^9.5.0", "@types/semver": "^7.7.1", "@types/sinon": "^21.0.0", - "@types/supertest": "^6.0.2", + "@types/supertest": "^7.2.0", "@types/swagger-ui-express": "^4.1.8", "@types/underscore": "^1.13.0", - "@types/whatwg-mimetype": "^3.0.2", + "@types/whatwg-mimetype": "^5.0.0", "chokidar": "^5.0.0", - "eslint": "^10.0.0", + "eslint": "^10.0.3", "eslint-config-etherpad": "^4.0.4", "etherpad-cli-client": "^3.0.5", "mocha": "^11.7.5", @@ -116,7 +116,7 @@ "nodeify": "^1.0.1", "openapi-schema-validation": "^0.4.2", "set-cookie-parser": "^3.0.1", - "sinon": "^21.0.1", + "sinon": "^21.0.2", "split-grid": "^1.0.11", "supertest": "^7.2.2", "typescript": "^5.9.3", From 731d9a064351a6852263b0affb803b5ba1d9677b Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 12 Mar 2026 12:27:18 +0000 Subject: [PATCH 020/130] build(deps): bump openapi-backend from 5.15.0 to 5.16.1 (#7361) Bumps [openapi-backend](https://github.com/openapistack/openapi-backend) from 5.15.0 to 5.16.1. - [Release notes](https://github.com/openapistack/openapi-backend/releases) - [Commits](https://github.com/openapistack/openapi-backend/compare/5.15.0...5.16.1) --- updated-dependencies: - dependency-name: openapi-backend dependency-version: 5.16.1 dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- pnpm-lock.yaml | 82 +++++++++++++++++++++++++++--------------------- src/package.json | 2 +- 2 files changed, 47 insertions(+), 37 deletions(-) diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 61a1571fce5..3a73cac8640 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -229,8 +229,8 @@ importers: specifier: 9.6.1 version: 9.6.1 openapi-backend: - specifier: ^5.15.0 - version: 5.15.0 + specifier: ^5.16.1 + version: 5.16.1 prom-client: specifier: ^15.1.3 version: 15.1.3 @@ -2184,8 +2184,8 @@ packages: ajv@6.14.0: resolution: {integrity: sha512-IWrosm/yrn43eiKqkfkHis7QioDleaXQHdDVPKg0FSwwd/DuvyX79TZnFOnYpB7dcsFAMmtFztZuXPDvSePkFw==} - ajv@8.17.1: - resolution: {integrity: sha512-B/gBuNg5SiMTrPkC+A2+cW0RszwxYmn6VYxB/inlBStS5nx6xHIt/ehKRhIMhqusl7a8LjQoZnjCs5vhwxOQ1g==} + ajv@8.18.0: + resolution: {integrity: sha512-PlXPeEWMXMZ7sPYOHqmDyCJzcfNrUr3fGNKtezX14ykXOEIvyK81d+qydx89KY5O71FKMPaQ2vBfBFI5NHR63A==} ansi-regex@5.0.1: resolution: {integrity: sha512-quJQXlTSUGL2LH9SUXo8VwsY4soanhgo6LNSm84E1LBcE8s3O0wpdiRzyR9z/ZZJMlMWv37qOOb9pdJlMUEKFQ==} @@ -2464,10 +2464,6 @@ packages: resolution: {integrity: sha512-yki5XnKuf750l50uGTllt6kKILY4nQ1eNIQatoXEByZ5dWgnKqbnqmTrBE5B4N7lrMJKQ2ytWMiTO2o0v6Ew/w==} engines: {node: '>= 0.6'} - cookie@1.0.2: - resolution: {integrity: sha512-9Kr/j4O16ISv8zBBhJoi4bXOYNTkFLOqSL3UDB0njXxCXNezjeyVrJyGOWtgfs/q2km1gwBcfH8q1yEGoMYunA==} - engines: {node: '>=18'} - cookie@1.1.1: resolution: {integrity: sha512-ei8Aos7ja0weRpFzJnEA9UHJ/7XQmqglbRwnf2ATjcB9Wq874VKH9kfjjirM6UhU2/E5fFYadylyhFldcqSidQ==} engines: {node: '>=18'} @@ -2990,8 +2986,8 @@ packages: fast-safe-stringify@2.1.1: resolution: {integrity: sha512-W+KJc2dmILlPplD/H4K9l9LcAHAfPtP6BY84uVLXQ6Evcz9Lcg33Y2z1IVblT6xdY54PXYVHEv+0Wpq8Io6zkA==} - fast-uri@3.0.6: - resolution: {integrity: sha512-Atfo14OibSv5wAp4VWNsFYE1AchQRTv9cBGWET4pZWHzYshFSS9NQI6I57rdKn9croWVMbYFbLhJ+yJvmZIIHw==} + fast-uri@3.1.0: + resolution: {integrity: sha512-iPeeDKJSWf4IEOasVVrknXpaBV0IApz/gp7S2bb7Z4Lljbl2MGJRqInZiUrQwV16cpzw/D3S5j5Julj/gT52AA==} fastq@1.19.1: resolution: {integrity: sha512-GwLTyxkCXjXbxqIhTsMI2Nui8huMPtnxg7krajPJAjnEG/iiOS7i+zCtWGZR9G0NBKbXKh6X9m9UIsYX/N6vvQ==} @@ -3506,6 +3502,10 @@ packages: resolution: {integrity: sha512-wpxZs9NoxZaJESJGIZTyDEaYpl0FKSA+FB9aJiyemKhMwkxQg63h4T1KJgUGHpTqPDNRcmmYLugrRjJlBtWvRA==} hasBin: true + js-yaml@4.1.1: + resolution: {integrity: sha512-qQKT4zQxXl8lLwBtHMWwaTcGfFOZviOJet3Oy/xmGk2gZH677CJM9EvtfdSkgWcATZhj/55JZ0rmy3myCT5lsA==} + hasBin: true + jsbn@1.1.0: resolution: {integrity: sha512-4bYVV3aAMtDTTu4+xsDYa6sy9GyJ69/amsu9sYF2zqjiEoZA5xJi3BrfX3uY+/IekIu7MwdObdbDWpoZdBv3/A==} @@ -3705,8 +3705,8 @@ packages: lodash.once@4.1.1: resolution: {integrity: sha512-Sb487aTOCr9drQVL8pIxOzVhafOjZN9UU54hiN8PU3uAiSV7lx1yYNpbNmex2PK6dSJoNTSJUUswT651yww3Mg==} - lodash@4.17.21: - resolution: {integrity: sha512-v2kDEe57lecTulaDIuNTPy3Ry4gLGJ6Z1O3vE1krgXZNrsQ+LFTGHVxVjcXPs17LhbZVGedAJv8XZ1tvj5FvSg==} + lodash@4.17.23: + resolution: {integrity: sha512-LgVTMpQtIopCi79SJeDiP0TfWi5CNEc/L/aRdTh3yIvmZXTnheWpKjSZhnvMl8iXbC1tFg9gdHHDMLoV7CnG+w==} log-symbols@4.1.0: resolution: {integrity: sha512-8XPvpAA8uyhfteu8pIvQxpJZ7SYYdpUivZpGy6sFsBuKRY/7rQGavedeB8aK+Zkyq6upMFVL/9AW6vOYzfRyLg==} @@ -3872,8 +3872,8 @@ packages: engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} hasBin: true - mock-json-schema@1.1.1: - resolution: {integrity: sha512-YV23vlsLP1EEOy0EviUvZTluXjLR+rhMzeayP2rcDiezj3RW01MhOSQkbQskdtg0K2fnGas5LKbSXgNjAOSX4A==} + mock-json-schema@1.1.2: + resolution: {integrity: sha512-3IyduYlhfzPy+nFN8wxUjloUi1hM7l8lN5LITuauUNMQltynJIOfLf/DADwTAp2d6kvSBtWojly1EuxX5B0WkA==} ms@2.0.0: resolution: {integrity: sha512-Tpp60P6IUJDTuOq/5Z8cdskzJujfwqfOTkrwIwj7IRISpnkJnT6SyJ4PCPnGMoFjC9ddhal5KVIYtAt97ix05A==} @@ -3976,9 +3976,9 @@ packages: oniguruma-to-es@4.3.4: resolution: {integrity: sha512-3VhUGN3w2eYxnTzHn+ikMI+fp/96KoRSVK9/kMTcFqj1NRDh2IhQCKvYxDnWePKRXY/AqH+Fuiyb7VHSzBjHfA==} - openapi-backend@5.15.0: - resolution: {integrity: sha512-yox0nCv511YWUeBNCdKY6xmUB92yEN+N9rHO4BHA5GOAZaNtY+zzuftAdfEwIbCsCcvZJ9ysENCguqBg+hLlWw==} - engines: {node: '>=12.0.0'} + openapi-backend@5.16.1: + resolution: {integrity: sha512-1tfLpC+7CajKv08vuFOLm4t8rJvJyqKuyau5IIIrGg3YuQYhmP7JqDL6p6WnbDCusmh3krCrKXoHB6hLF/iHcQ==} + engines: {node: '>=20.0.0'} openapi-schema-validation@0.4.2: resolution: {integrity: sha512-K8LqLpkUf2S04p2Nphq9L+3bGFh/kJypxIG2NVGKX0ffzT4NQI9HirhiY6Iurfej9lCu7y4Ndm4tv+lm86Ck7w==} @@ -4127,6 +4127,10 @@ packages: resolution: {integrity: sha512-4EK3+xJl8Ts67nLYNwqw/dsFVnCf+qR7RgXSK9jEEm9unao3njwMDdmsdvoKBKHzxd7tCYz5e5M+SnMjdtXGQQ==} engines: {node: '>=0.6'} + qs@6.15.0: + resolution: {integrity: sha512-mAZTtNCeetKMH+pSjrb76NAM8V9a05I9aBZOHztWy/UqcJdQYNsf59vrRKWnojAT9Y+GbIvoTBC++CPHqpDBhQ==} + engines: {node: '>=0.6'} + queue-microtask@1.2.3: resolution: {integrity: sha512-NuaNSa6flKT5JaSYQzJok04JzTL1CA6aGhv5rfLW3PgqA+M2ChpZQnAC8h8i4ZFkBS8X5RqkDBHA7r4hej3K9A==} @@ -5198,7 +5202,7 @@ snapshots: dependencies: '@jsdevtools/ono': 7.1.3 '@types/json-schema': 7.0.15 - js-yaml: 4.1.0 + js-yaml: 4.1.1 '@asamuzakjp/css-color@4.1.2': dependencies: @@ -6836,9 +6840,9 @@ snapshots: agent-base@7.1.4: {} - ajv-formats@2.1.1(ajv@8.17.1): + ajv-formats@2.1.1(ajv@8.18.0): optionalDependencies: - ajv: 8.17.1 + ajv: 8.18.0 ajv@6.14.0: dependencies: @@ -6847,10 +6851,10 @@ snapshots: json-schema-traverse: 0.4.1 uri-js: 4.4.1 - ajv@8.17.1: + ajv@8.18.0: dependencies: fast-deep-equal: 3.1.3 - fast-uri: 3.0.6 + fast-uri: 3.1.0 json-schema-traverse: 1.0.0 require-from-string: 2.0.2 @@ -7133,8 +7137,6 @@ snapshots: cookie@0.7.2: {} - cookie@1.0.2: {} - cookie@1.1.1: {} cookiejar@2.1.4: {} @@ -7829,7 +7831,7 @@ snapshots: fast-safe-stringify@2.1.1: {} - fast-uri@3.0.6: {} + fast-uri@3.1.0: {} fastq@1.19.1: dependencies: @@ -8394,6 +8396,10 @@ snapshots: dependencies: argparse: 2.0.1 + js-yaml@4.1.1: + dependencies: + argparse: 2.0.1 + jsbn@1.1.0: {} jsdom@28.1.0(@noble/hashes@1.8.0): @@ -8618,7 +8624,7 @@ snapshots: lodash.once@4.1.1: {} - lodash@4.17.21: {} + lodash@4.17.23: {} log-symbols@4.1.0: dependencies: @@ -8789,9 +8795,9 @@ snapshots: yargs-parser: 21.1.1 yargs-unparser: 2.0.0 - mock-json-schema@1.1.1: + mock-json-schema@1.1.2: dependencies: - lodash: 4.17.21 + lodash: 4.17.23 ms@2.0.0: {} @@ -8895,18 +8901,18 @@ snapshots: regex: 6.1.0 regex-recursion: 6.0.2 - openapi-backend@5.15.0: + openapi-backend@5.16.1: dependencies: '@apidevtools/json-schema-ref-parser': 11.9.3 - ajv: 8.17.1 + ajv: 8.18.0 bath-es5: 3.0.3 - cookie: 1.0.2 + cookie: 1.1.1 dereference-json-schema: 0.2.1 - lodash: 4.17.21 - mock-json-schema: 1.1.1 + lodash: 4.17.23 + mock-json-schema: 1.1.2 openapi-schema-validator: 12.1.3 openapi-types: 12.1.3 - qs: 6.14.0 + qs: 6.15.0 openapi-schema-validation@0.4.2: dependencies: @@ -8916,8 +8922,8 @@ snapshots: openapi-schema-validator@12.1.3: dependencies: - ajv: 8.17.1 - ajv-formats: 2.1.1(ajv@8.17.1) + ajv: 8.18.0 + ajv-formats: 2.1.1(ajv@8.18.0) lodash.merge: 4.6.2 openapi-types: 12.1.3 @@ -9064,6 +9070,10 @@ snapshots: dependencies: side-channel: 1.1.0 + qs@6.15.0: + dependencies: + side-channel: 1.1.0 + queue-microtask@1.2.3: {} quick-lru@7.3.0: {} diff --git a/src/package.json b/src/package.json index 4d491ee52ad..b07c9e3f0b6 100644 --- a/src/package.json +++ b/src/package.json @@ -57,7 +57,7 @@ "measured-core": "^2.0.0", "mime-types": "^3.0.2", "oidc-provider": "9.6.1", - "openapi-backend": "^5.15.0", + "openapi-backend": "^5.16.1", "prom-client": "^15.1.3", "proxy-addr": "^2.0.7", "rate-limiter-flexible": "^9.1.1", From 06690c1125e801eb6f3c8380fa2151d04cd4f2c7 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 12 Mar 2026 12:27:45 +0000 Subject: [PATCH 021/130] build(deps): bump jose from 6.1.3 to 6.2.1 (#7364) Bumps [jose](https://github.com/panva/jose) from 6.1.3 to 6.2.1. - [Release notes](https://github.com/panva/jose/releases) - [Changelog](https://github.com/panva/jose/blob/main/CHANGELOG.md) - [Commits](https://github.com/panva/jose/compare/v6.1.3...v6.2.1) --- updated-dependencies: - dependency-name: jose dependency-version: 6.2.1 dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- pnpm-lock.yaml | 12 ++++++------ src/package.json | 2 +- 2 files changed, 7 insertions(+), 7 deletions(-) diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 3a73cac8640..b1e26ad9cdc 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -187,8 +187,8 @@ importers: specifier: ^2.0.1 version: 2.0.1 jose: - specifier: ^6.1.3 - version: 6.1.3 + specifier: ^6.2.1 + version: 6.2.1 js-cookie: specifier: ^3.0.5 version: 3.0.5 @@ -3488,8 +3488,8 @@ packages: engines: {node: '>=10'} hasBin: true - jose@6.1.3: - resolution: {integrity: sha512-0TpaTfihd4QMNwrz/ob2Bp7X04yuxJkjRGi4aKmOqwhov54i6u79oCv7T+C7lo70MKH6BesI3vscD1yb/yzKXQ==} + jose@6.2.1: + resolution: {integrity: sha512-jUaKr1yrbfaImV7R2TN/b3IcZzsw38/chqMpo2XJ7i2F8AfM/lA4G1goC3JVEwg0H7UldTmSt3P68nt31W7/mw==} js-cookie@3.0.5: resolution: {integrity: sha512-cEiJEAEoIbWfCZYKWhVwFuvPX1gETRYPw6LlaTKoxD3s2AkXzkCjnp6h0V77ozyqj0jakteJ4YqDJT830+lVGw==} @@ -8386,7 +8386,7 @@ snapshots: filelist: 1.0.4 picocolors: 1.1.1 - jose@6.1.3: {} + jose@6.2.1: {} js-cookie@3.0.5: {} @@ -8874,7 +8874,7 @@ snapshots: '@koa/router': 15.3.0(koa@3.1.1) debug: 4.4.3(supports-color@8.1.1) eta: 4.5.1 - jose: 6.1.3 + jose: 6.2.1 jsesc: 3.1.0 koa: 3.1.1 nanoid: 5.1.6 diff --git a/src/package.json b/src/package.json index b07c9e3f0b6..3d882c9ca69 100644 --- a/src/package.json +++ b/src/package.json @@ -43,7 +43,7 @@ "find-root": "1.1.0", "formidable": "^3.5.4", "http-errors": "^2.0.1", - "jose": "^6.1.3", + "jose": "^6.2.1", "js-cookie": "^3.0.5", "jsdom": "^28.1.0", "jsonminify": "0.4.2", From 4fd1d734f2c9c77da1b7bad23164117a68650c14 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 12 Mar 2026 13:27:14 +0000 Subject: [PATCH 022/130] build(deps): bump ejs from 4.0.1 to 5.0.1 (#7362) Bumps [ejs](https://github.com/mde/ejs) from 4.0.1 to 5.0.1. - [Release notes](https://github.com/mde/ejs/releases) - [Changelog](https://github.com/mde/ejs/blob/main/RELEASE_NOTES_v4.md) - [Commits](https://github.com/mde/ejs/compare/v4.0.1...v5.0.1) --- updated-dependencies: - dependency-name: ejs dependency-version: 5.0.1 dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- pnpm-lock.yaml | 39 ++++++--------------------------------- src/package.json | 2 +- 2 files changed, 7 insertions(+), 34 deletions(-) diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index b1e26ad9cdc..6a200563fa3 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -163,8 +163,8 @@ importers: specifier: ^7.0.6 version: 7.0.6 ejs: - specifier: ^4.0.1 - version: 4.0.1 + specifier: ^5.0.1 + version: 5.0.1 esbuild: specifier: ^0.27.3 version: 0.27.3 @@ -2663,8 +2663,8 @@ packages: ee-first@1.1.1: resolution: {integrity: sha512-WMwm9LhRUo+WUaRN+vRuETqG89IgZphVSNkdFgeb6sS/E4OrDIN7t48CAewSHXc6C8lefD8KKfr5vY61brQlow==} - ejs@4.0.1: - resolution: {integrity: sha512-krvQtxc0btwSm/nvnt1UpnaFDFVJpJ0fdckmALpCgShsr/iGYHTnJiUliZTgmzq/UxTX33TtOQVKaNigMQp/6Q==} + ejs@5.0.1: + resolution: {integrity: sha512-COqBPFMxuPTPspXl2DkVYaDS3HtrD1GpzOGkNTJ1IYkifq/r9h8SVEFrjA3D9/VJGOEoMQcrlhpntcSUrM8k6A==} engines: {node: '>=0.12.18'} hasBin: true @@ -3013,9 +3013,6 @@ packages: resolution: {integrity: sha512-XXTUwCvisa5oacNGRP9SfNtYBNAMi+RPwBFmblZEF7N7swHYQS6/Zfk7SRwx4D5j3CH211YNRco1DEMNVfZCnQ==} engines: {node: '>=16.0.0'} - filelist@1.0.4: - resolution: {integrity: sha512-w1cEuf3S+DrLCQL7ET6kz+gmlJdbq9J7yXCSjK/OZCPA+qEN1WyF4ZAf0YYJa4/shHJra2t/d/r8SV4Ji+x+8Q==} - fill-range@7.1.1: resolution: {integrity: sha512-YsGpe3WHLK8ZYi4tWDg2Jy3ebRz2rXowDxnld4bkQB00cc/1Zw9AWnC0i9ztDJitivtQvaI9KaLyKrc+hBW0yg==} engines: {node: '>=8'} @@ -3483,11 +3480,6 @@ packages: jackspeak@3.4.3: resolution: {integrity: sha512-OGlZQpz2yfahA/Rd1Y8Cd9SIEsqvXkLVoSw/cgwhnhFMDbsQFeZYoJJ7bIZBS9BcamUW96asq/npPWugM+RQBw==} - jake@10.9.4: - resolution: {integrity: sha512-wpHYzhxiVQL+IV05BLE2Xn34zW1S223hvjtqk0+gsPrwd/8JNLXJgZZM/iPFsYc1xyphF+6M6EvdE5E9MBGkDA==} - engines: {node: '>=10'} - hasBin: true - jose@6.2.1: resolution: {integrity: sha512-jUaKr1yrbfaImV7R2TN/b3IcZzsw38/chqMpo2XJ7i2F8AfM/lA4G1goC3JVEwg0H7UldTmSt3P68nt31W7/mw==} @@ -3818,10 +3810,6 @@ packages: minimatch@3.1.5: resolution: {integrity: sha512-VgjWUsnnT6n+NUk6eZq77zeFdpW2LWDzP6zFGrCbHXiYNul5Dzqk2HHQ5uFH2DNW5Xbp8+jVzaeNt94ssEEl4w==} - minimatch@5.1.9: - resolution: {integrity: sha512-7o1wEA2RyMP7Iu7GNba9vc0RWWGACJOCZBJX2GJWip0ikV+wcOsgVuY9uE8CPiyQhkGFSlhuSkZPavN7u1c2Fw==} - engines: {node: '>=10'} - minimatch@9.0.5: resolution: {integrity: sha512-G6T0ZX48xgozx7587koeX9Ys2NYy6Gmv//P89sEte9V9whIapMNF4idKxnW2QtCcLiTWlb/wfCabAtAFWhhBow==} engines: {node: '>=16 || 14 >=14.17'} @@ -4308,6 +4296,7 @@ packages: rolldown-vite@7.2.10: resolution: {integrity: sha512-v2ekZjuVLfumjp1Cr7LSQM1n2oOo3+gMruhOgT0Q4/cQ2J3nkTDLTAWLQQ86UHMbFYyVIN1wGh8BEZbvjkyctg==} engines: {node: ^20.19.0 || >=22.12.0} + deprecated: Use 7.3.1 for migration purposes. For the most recent updates, migrate to Vite 8 once you're ready. hasBin: true peerDependencies: '@types/node': ^20.19.0 || >=22.12.0 @@ -7310,9 +7299,7 @@ snapshots: ee-first@1.1.1: {} - ejs@4.0.1: - dependencies: - jake: 10.9.4 + ejs@5.0.1: {} electron-to-chromium@1.5.286: {} @@ -7854,10 +7841,6 @@ snapshots: dependencies: flat-cache: 4.0.1 - filelist@1.0.4: - dependencies: - minimatch: 5.1.9 - fill-range@7.1.1: dependencies: to-regex-range: 5.0.1 @@ -8380,12 +8363,6 @@ snapshots: optionalDependencies: '@pkgjs/parseargs': 0.11.0 - jake@10.9.4: - dependencies: - async: 3.2.6 - filelist: 1.0.4 - picocolors: 1.1.1 - jose@6.2.1: {} js-cookie@3.0.5: {} @@ -8734,10 +8711,6 @@ snapshots: dependencies: brace-expansion: 1.1.12 - minimatch@5.1.9: - dependencies: - brace-expansion: 2.0.2 - minimatch@9.0.5: dependencies: brace-expansion: 2.0.2 diff --git a/src/package.json b/src/package.json index 3d882c9ca69..b42bb88e172 100644 --- a/src/package.json +++ b/src/package.json @@ -35,7 +35,7 @@ "cookie-parser": "^1.4.7", "cross-env": "^10.1.0", "cross-spawn": "^7.0.6", - "ejs": "^4.0.1", + "ejs": "^5.0.1", "esbuild": "^0.27.3", "express": "^5.2.1", "express-rate-limit": "^8.2.2", From f34cdf00e593f3f55a6d250152d8d7aacd6794e8 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 12 Mar 2026 13:27:23 +0000 Subject: [PATCH 023/130] build(deps): bump oidc-provider from 9.6.1 to 9.7.0 (#7363) Bumps [oidc-provider](https://github.com/panva/node-oidc-provider) from 9.6.1 to 9.7.0. - [Release notes](https://github.com/panva/node-oidc-provider/releases) - [Changelog](https://github.com/panva/node-oidc-provider/blob/main/CHANGELOG.md) - [Commits](https://github.com/panva/node-oidc-provider/compare/v9.6.1...v9.7.0) --- updated-dependencies: - dependency-name: oidc-provider dependency-version: 9.7.0 dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- pnpm-lock.yaml | 47 +++++++++++++++++++++++------------------------ src/package.json | 2 +- 2 files changed, 24 insertions(+), 25 deletions(-) diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 6a200563fa3..85b09b28358 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -226,8 +226,8 @@ importers: specifier: ^3.0.2 version: 3.0.2 oidc-provider: - specifier: 9.6.1 - version: 9.6.1 + specifier: 9.7.0 + version: 9.7.0 openapi-backend: specifier: ^5.16.1 version: 5.16.1 @@ -1036,8 +1036,8 @@ packages: resolution: {integrity: sha512-x/iUDjcS90W69PryLDIMgFyV21YLTnG9zOpPXS7Bkt2b8AsY3zZsIpOLBkYr9fBcF3HbkKaER5hOBZLfpLgYNw==} engines: {node: '>= 14.0.0'} - '@koa/router@15.3.0': - resolution: {integrity: sha512-s87hWJjFYky2Z97u8jzah73sSHp4IZivD/2PZCuspHRvcKU69OPLoBIbKigVlBmS50yFTh9GHFfr1hDag4+wXw==} + '@koa/router@15.3.1': + resolution: {integrity: sha512-n7UgxsPmgKtEsrguz8a0d6BNx3lO2x52Z4UqkGsGwJculk4TlzZf3btd3QZMq1r1M+bSxUkBbyul4mDhysIVaQ==} engines: {node: '>= 20'} peerDependencies: koa: ^2.0.0 || ^3.0.0 @@ -2431,10 +2431,6 @@ packages: concat-map@0.0.1: resolution: {integrity: sha512-/Srv4dswyQNBfohGpz9o6Yb3Gz3SrUDqBH5rTuhGR7ahtlbYKnVxw2bCFMRljaA7EXHaXZ8wsHdodFvbkhKmqg==} - content-disposition@0.5.4: - resolution: {integrity: sha512-FveZTNuGw04cxlAiWbzi6zTAL/lhehaWbTtgluJh4/E95DqMwTmha3KZN1aAWA8cFIhHzMZUvLevkw5Rqk+tSQ==} - engines: {node: '>= 0.6'} - content-disposition@1.0.1: resolution: {integrity: sha512-oIXISMynqSqm241k6kcQ5UwttDILMK4BiurCfGEREw6+X9jkkpEe5T9FZaApyLGGOnFuyMWZpdolTXMtvEJ08Q==} engines: {node: '>=18'} @@ -3579,8 +3575,8 @@ packages: koa-compose@4.1.0: resolution: {integrity: sha512-8ODW8TrDuMYvXRwra/Kh7/rJo9BtOfPc6qO8eAfC80CnCvSjSl0bkRM24X6/XBBEyj0v1nRUQ1LyOy3dbqOWXw==} - koa@3.1.1: - resolution: {integrity: sha512-KDDuvpfqSK0ZKEO2gCPedNjl5wYpfj+HNiuVRlbhd1A88S3M0ySkdf2V/EJ4NWt5dwh5PXCdcenrKK2IQJAxsg==} + koa@3.1.2: + resolution: {integrity: sha512-2LOQnFKu3m0VxpE+5sb5+BRTSKrXmNxGgxVRiKwD9s5KQB1zID/FRXhtzeV7RT1L2GVpdEEAfVuclFOMGl1ikA==} engines: {node: '>= 18'} languages4translatewiki@0.1.3: @@ -3944,8 +3940,8 @@ packages: obug@2.1.1: resolution: {integrity: sha512-uTqF9MuPraAQ+IsnPf366RG4cP9RtUi7MLO1N3KEc+wb0a6yKpeL0lmk2IB1jY5KHPAlTc6T/JRdC/YqxHNwkQ==} - oidc-provider@9.6.1: - resolution: {integrity: sha512-8AtFXE4gEV6MLd8Re78VhqGNjBm/SUw0fUxrP2XwQc+5DZKw6GyuTuy2M4jkidpH3jRrhtkkqQpXlxD1Awi6tg==} + oidc-provider@9.7.0: + resolution: {integrity: sha512-xrOjNvwSOZf6hSR0fmD1SodaUIETbZeBMxjPnwQSMeCotHWWSBPqiZVeqCp/YFwGP/U+4VIBLYoO5PlypAg8KA==} on-finished@2.4.1: resolution: {integrity: sha512-oVlzkg3ENAhCk2zdv7IJwd/QUD4z2RxRwpkcGY8psCVcCYZNq4wYnVWALHM+brtuJjePWiYF/ClmuDr8Ch5+kg==} @@ -4829,6 +4825,10 @@ packages: resolution: {integrity: sha512-RqslV2Us5BrllB+JeiZnK4peryVTndy9Dnqq62S3yYRRTj0tFQCwEniUy2167skdGOy3vqRzEvl1Dm4sV2ReDg==} engines: {node: '>=20.18.1'} + undici@7.23.0: + resolution: {integrity: sha512-HVMxHKZKi+eL2mrUZDzDkKW3XvCjynhbtpSq20xQp4ePDFeSFuAfnvM0GIwZIv8fiKHjXFQ5WjxhCt15KRNj+g==} + engines: {node: '>=20.18.1'} + unified@11.0.5: resolution: {integrity: sha512-xKvGhPWw3k84Qjh8bI3ZeJjqnyadK+GEFtazSfZv/rKeTkTjOJho6mFqh2SM96iIcZokxiOpg78GazTSg8+KHA==} @@ -5715,11 +5715,11 @@ snapshots: dependencies: vary: 1.1.2 - '@koa/router@15.3.0(koa@3.1.1)': + '@koa/router@15.3.1(koa@3.1.2)': dependencies: debug: 4.4.3(supports-color@8.1.1) http-errors: 2.0.1 - koa: 3.1.1 + koa: 3.1.2 koa-compose: 4.1.0 path-to-regexp: 8.3.0 transitivePeerDependencies: @@ -7103,10 +7103,6 @@ snapshots: concat-map@0.0.1: {} - content-disposition@0.5.4: - dependencies: - safe-buffer: 5.2.1 - content-disposition@1.0.1: {} content-type@1.0.5: {} @@ -8476,10 +8472,10 @@ snapshots: koa-compose@4.1.0: {} - koa@3.1.1: + koa@3.1.2: dependencies: accepts: 1.3.8 - content-disposition: 0.5.4 + content-disposition: 1.0.1 content-type: 1.0.5 cookies: 0.9.1 delegates: 1.0.0 @@ -8841,18 +8837,19 @@ snapshots: obug@2.1.1: {} - oidc-provider@9.6.1: + oidc-provider@9.7.0: dependencies: '@koa/cors': 5.0.0 - '@koa/router': 15.3.0(koa@3.1.1) + '@koa/router': 15.3.1(koa@3.1.2) debug: 4.4.3(supports-color@8.1.1) eta: 4.5.1 jose: 6.2.1 jsesc: 3.1.0 - koa: 3.1.1 + koa: 3.1.2 nanoid: 5.1.6 quick-lru: 7.3.0 raw-body: 3.0.2 + undici: 7.23.0 transitivePeerDependencies: - supports-color @@ -9021,7 +9018,7 @@ snapshots: proxy-agent@6.5.0: dependencies: agent-base: 7.1.3 - debug: 4.4.3(supports-color@8.1.1) + debug: 4.4.1 http-proxy-agent: 7.0.2 https-proxy-agent: 7.0.6 lru-cache: 7.18.3 @@ -9827,6 +9824,8 @@ snapshots: undici@7.22.0: {} + undici@7.23.0: {} + unified@11.0.5: dependencies: '@types/unist': 3.0.3 diff --git a/src/package.json b/src/package.json index b42bb88e172..9b6da19b868 100644 --- a/src/package.json +++ b/src/package.json @@ -56,7 +56,7 @@ "lru-cache": "^11.2.6", "measured-core": "^2.0.0", "mime-types": "^3.0.2", - "oidc-provider": "9.6.1", + "oidc-provider": "9.7.0", "openapi-backend": "^5.16.1", "prom-client": "^15.1.3", "proxy-addr": "^2.0.7", From c5d5f5d97c5aa8bd7b073475b05a57b1741f44de Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 12 Mar 2026 13:35:02 +0000 Subject: [PATCH 024/130] build(deps): bump axios from 1.13.5 to 1.13.6 (#7360) Bumps [axios](https://github.com/axios/axios) from 1.13.5 to 1.13.6. - [Release notes](https://github.com/axios/axios/releases) - [Changelog](https://github.com/axios/axios/blob/v1.x/CHANGELOG.md) - [Commits](https://github.com/axios/axios/compare/v1.13.5...v1.13.6) --- updated-dependencies: - dependency-name: axios dependency-version: 1.13.6 dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- bin/package.json | 2 +- pnpm-lock.yaml | 24 ++++++++++++------------ src/package.json | 2 +- 3 files changed, 14 insertions(+), 14 deletions(-) diff --git a/bin/package.json b/bin/package.json index 52f66591e06..47a5eea1e2c 100644 --- a/bin/package.json +++ b/bin/package.json @@ -7,7 +7,7 @@ "doc": "doc" }, "dependencies": { - "axios": "^1.13.5", + "axios": "^1.13.6", "ep_etherpad-lite": "workspace:../src", "log4js": "^6.9.1", "semver": "^7.7.4", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 85b09b28358..4b7b990fb48 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -107,8 +107,8 @@ importers: bin: dependencies: axios: - specifier: ^1.13.5 - version: 1.13.5 + specifier: ^1.13.6 + version: 1.13.6 ep_etherpad-lite: specifier: workspace:../src version: link:../src @@ -143,7 +143,7 @@ importers: devDependencies: vitepress: specifier: ^2.0.0-alpha.16 - version: 2.0.0-alpha.16(@types/node@25.3.5)(axios@1.13.5)(jwt-decode@4.0.0)(lightningcss@1.30.2)(postcss@8.5.6)(tsx@4.21.0)(typescript@5.9.3) + version: 2.0.0-alpha.16(@types/node@25.3.5)(axios@1.13.6)(jwt-decode@4.0.0)(lightningcss@1.30.2)(postcss@8.5.6)(tsx@4.21.0)(typescript@5.9.3) src: dependencies: @@ -151,8 +151,8 @@ importers: specifier: ^3.2.6 version: 3.2.6 axios: - specifier: ^1.13.5 - version: 1.13.5 + specifier: ^1.13.6 + version: 1.13.6 cookie-parser: specifier: ^1.4.7 version: 1.4.7 @@ -2267,8 +2267,8 @@ packages: resolution: {integrity: sha512-wvUjBtSGN7+7SjNpq/9M2Tg350UZD3q62IFZLbRAR1bSMlCo1ZaeW+BJ+D090e4hIIZLBcTDWe4Mh4jvUDajzQ==} engines: {node: '>= 0.4'} - axios@1.13.5: - resolution: {integrity: sha512-cz4ur7Vb0xS4/KUN0tPWe44eqxrIu31me+fbang3ijiNscE129POzipJJA6zniq2C/Z6sJCjMimjS8Lc/GAs8Q==} + axios@1.13.6: + resolution: {integrity: sha512-ChTCHMouEe2kn713WHbQGcuYrr6fXTBiu460OTwWrWob16g1bXn4vtz07Ope7ewMozJAnEquLk5lWQWtBig9DQ==} babel-plugin-react-compiler@19.1.0-rc.3: resolution: {integrity: sha512-mjRn69WuTz4adL0bXGx8Rsyk1086zFJeKmes6aK0xPuK3aaXmDJdLHqwKKMrpm6KAI1MCoUK72d2VeqQbu8YIA==} @@ -6793,13 +6793,13 @@ snapshots: '@vueuse/shared': 14.2.0(vue@3.5.27(typescript@5.9.3)) vue: 3.5.27(typescript@5.9.3) - '@vueuse/integrations@14.2.0(axios@1.13.5)(focus-trap@7.8.0)(jwt-decode@4.0.0)(vue@3.5.27(typescript@5.9.3))': + '@vueuse/integrations@14.2.0(axios@1.13.6)(focus-trap@7.8.0)(jwt-decode@4.0.0)(vue@3.5.27(typescript@5.9.3))': dependencies: '@vueuse/core': 14.2.0(vue@3.5.27(typescript@5.9.3)) '@vueuse/shared': 14.2.0(vue@3.5.27(typescript@5.9.3)) vue: 3.5.27(typescript@5.9.3) optionalDependencies: - axios: 1.13.5 + axios: 1.13.6 focus-trap: 7.8.0 jwt-decode: 4.0.0 @@ -6936,7 +6936,7 @@ snapshots: dependencies: possible-typed-array-names: 1.1.0 - axios@1.13.5: + axios@1.13.6: dependencies: follow-redirects: 1.15.11 form-data: 4.0.5 @@ -9964,7 +9964,7 @@ snapshots: lightningcss: 1.30.2 tsx: 4.21.0 - vitepress@2.0.0-alpha.16(@types/node@25.3.5)(axios@1.13.5)(jwt-decode@4.0.0)(lightningcss@1.30.2)(postcss@8.5.6)(tsx@4.21.0)(typescript@5.9.3): + vitepress@2.0.0-alpha.16(@types/node@25.3.5)(axios@1.13.6)(jwt-decode@4.0.0)(lightningcss@1.30.2)(postcss@8.5.6)(tsx@4.21.0)(typescript@5.9.3): dependencies: '@docsearch/css': 4.5.3 '@docsearch/js': 4.5.3 @@ -9978,7 +9978,7 @@ snapshots: '@vue/devtools-api': 8.0.6 '@vue/shared': 3.5.27 '@vueuse/core': 14.2.0(vue@3.5.27(typescript@5.9.3)) - '@vueuse/integrations': 14.2.0(axios@1.13.5)(focus-trap@7.8.0)(jwt-decode@4.0.0)(vue@3.5.27(typescript@5.9.3)) + '@vueuse/integrations': 14.2.0(axios@1.13.6)(focus-trap@7.8.0)(jwt-decode@4.0.0)(vue@3.5.27(typescript@5.9.3)) focus-trap: 7.8.0 mark.js: 8.11.1 minisearch: 7.2.0 diff --git a/src/package.json b/src/package.json index 9b6da19b868..bb649614359 100644 --- a/src/package.json +++ b/src/package.json @@ -31,7 +31,7 @@ ], "dependencies": { "async": "^3.2.6", - "axios": "^1.13.5", + "axios": "^1.13.6", "cookie-parser": "^1.4.7", "cross-env": "^10.1.0", "cross-spawn": "^7.0.6", From 14c4f479a40057f0b9a6e6eee61d9968d3446751 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 12 Mar 2026 15:38:19 +0000 Subject: [PATCH 025/130] build(deps-dev): bump the dev-dependencies group with 7 updates (#7366) Bumps the dev-dependencies group with 7 updates: | Package | From | To | | --- | --- | --- | | [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) | `25.3.5` | `25.4.0` | | [vitest](https://github.com/vitest-dev/vitest/tree/HEAD/packages/vitest) | `4.0.18` | `4.1.0` | | [@typescript-eslint/eslint-plugin](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin) | `8.56.1` | `8.57.0` | | [@typescript-eslint/parser](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser) | `8.56.1` | `8.57.0` | | [@vitejs/plugin-react](https://github.com/vitejs/vite-plugin-react/tree/HEAD/packages/plugin-react) | `5.1.4` | `6.0.0` | | [i18next](https://github.com/i18next/i18next) | `25.8.16` | `25.8.18` | | [react-i18next](https://github.com/i18next/react-i18next) | `16.5.6` | `16.5.8` | Updates `@types/node` from 25.3.5 to 25.4.0 - [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases) - [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node) Updates `vitest` from 4.0.18 to 4.1.0 - [Release notes](https://github.com/vitest-dev/vitest/releases) - [Commits](https://github.com/vitest-dev/vitest/commits/v4.1.0/packages/vitest) Updates `@typescript-eslint/eslint-plugin` from 8.56.1 to 8.57.0 - [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases) - [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/CHANGELOG.md) - [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v8.57.0/packages/eslint-plugin) Updates `@typescript-eslint/parser` from 8.56.1 to 8.57.0 - [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases) - [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/parser/CHANGELOG.md) - [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v8.57.0/packages/parser) Updates `@vitejs/plugin-react` from 5.1.4 to 6.0.0 - [Release notes](https://github.com/vitejs/vite-plugin-react/releases) - [Changelog](https://github.com/vitejs/vite-plugin-react/blob/main/packages/plugin-react/CHANGELOG.md) - [Commits](https://github.com/vitejs/vite-plugin-react/commits/plugin-react@6.0.0/packages/plugin-react) Updates `i18next` from 25.8.16 to 25.8.18 - [Release notes](https://github.com/i18next/i18next/releases) - [Changelog](https://github.com/i18next/i18next/blob/master/CHANGELOG.md) - [Commits](https://github.com/i18next/i18next/compare/v25.8.16...v25.8.18) Updates `react-i18next` from 16.5.6 to 16.5.8 - [Changelog](https://github.com/i18next/react-i18next/blob/master/CHANGELOG.md) - [Commits](https://github.com/i18next/react-i18next/compare/v16.5.6...v16.5.8) --- updated-dependencies: - dependency-name: "@types/node" dependency-version: 25.4.0 dependency-type: direct:development update-type: version-update:semver-minor dependency-group: dev-dependencies - dependency-name: vitest dependency-version: 4.1.0 dependency-type: direct:development update-type: version-update:semver-minor dependency-group: dev-dependencies - dependency-name: "@typescript-eslint/eslint-plugin" dependency-version: 8.57.0 dependency-type: direct:development update-type: version-update:semver-minor dependency-group: dev-dependencies - dependency-name: "@typescript-eslint/parser" dependency-version: 8.57.0 dependency-type: direct:development update-type: version-update:semver-minor dependency-group: dev-dependencies - dependency-name: "@vitejs/plugin-react" dependency-version: 6.0.0 dependency-type: direct:development update-type: version-update:semver-major dependency-group: dev-dependencies - dependency-name: i18next dependency-version: 25.8.18 dependency-type: direct:development update-type: version-update:semver-patch dependency-group: dev-dependencies - dependency-name: react-i18next dependency-version: 16.5.8 dependency-type: direct:development update-type: version-update:semver-patch dependency-group: dev-dependencies ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- admin/package.json | 10 +- bin/package.json | 2 +- pnpm-lock.yaml | 478 +++++++++++++++++++-------------------------- src/package.json | 4 +- 4 files changed, 211 insertions(+), 283 deletions(-) diff --git a/admin/package.json b/admin/package.json index cc42374ca80..7949da5b70c 100644 --- a/admin/package.json +++ b/admin/package.json @@ -18,20 +18,20 @@ "@radix-ui/react-toast": "^1.2.15", "@types/react": "^19.2.14", "@types/react-dom": "^19.2.3", - "@typescript-eslint/eslint-plugin": "^8.56.1", - "@typescript-eslint/parser": "^8.56.1", - "@vitejs/plugin-react": "^5.1.4", + "@typescript-eslint/eslint-plugin": "^8.57.0", + "@typescript-eslint/parser": "^8.57.0", + "@vitejs/plugin-react": "^6.0.0", "babel-plugin-react-compiler": "19.1.0-rc.3", "eslint": "^10.0.3", "eslint-plugin-react-hooks": "^7.0.1", "eslint-plugin-react-refresh": "^0.5.2", - "i18next": "^25.8.16", + "i18next": "^25.8.18", "i18next-browser-languagedetector": "^8.2.1", "lucide-react": "^0.577.0", "react": "^19.2.4", "react-dom": "^19.2.4", "react-hook-form": "^7.71.2", - "react-i18next": "^16.5.6", + "react-i18next": "^16.5.8", "react-router-dom": "^7.13.1", "socket.io-client": "^4.8.3", "typescript": "^5.9.3", diff --git a/bin/package.json b/bin/package.json index 47a5eea1e2c..2067825b562 100644 --- a/bin/package.json +++ b/bin/package.json @@ -15,7 +15,7 @@ "ueberdb2": "^5.0.23" }, "devDependencies": { - "@types/node": "^25.3.5", + "@types/node": "^25.4.0", "@types/semver": "^7.7.1", "typescript": "^5.9.3" }, diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 4b7b990fb48..2723a918b8d 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -41,14 +41,14 @@ importers: specifier: ^19.2.3 version: 19.2.3(@types/react@19.2.14) '@typescript-eslint/eslint-plugin': - specifier: ^8.56.1 - version: 8.56.1(@typescript-eslint/parser@8.56.1(eslint@10.0.3)(typescript@5.9.3))(eslint@10.0.3)(typescript@5.9.3) + specifier: ^8.57.0 + version: 8.57.0(@typescript-eslint/parser@8.57.0(eslint@10.0.3)(typescript@5.9.3))(eslint@10.0.3)(typescript@5.9.3) '@typescript-eslint/parser': - specifier: ^8.56.1 - version: 8.56.1(eslint@10.0.3)(typescript@5.9.3) + specifier: ^8.57.0 + version: 8.57.0(eslint@10.0.3)(typescript@5.9.3) '@vitejs/plugin-react': - specifier: ^5.1.4 - version: 5.1.4(rolldown-vite@7.2.10(@types/node@25.3.5)(tsx@4.21.0)) + specifier: ^6.0.0 + version: 6.0.0(babel-plugin-react-compiler@19.1.0-rc.3)(rolldown-vite@7.2.10(@types/node@25.4.0)(tsx@4.21.0)) babel-plugin-react-compiler: specifier: 19.1.0-rc.3 version: 19.1.0-rc.3 @@ -62,8 +62,8 @@ importers: specifier: ^0.5.2 version: 0.5.2(eslint@10.0.3) i18next: - specifier: ^25.8.16 - version: 25.8.16(typescript@5.9.3) + specifier: ^25.8.18 + version: 25.8.18(typescript@5.9.3) i18next-browser-languagedetector: specifier: ^8.2.1 version: 8.2.1 @@ -80,8 +80,8 @@ importers: specifier: ^7.71.2 version: 7.71.2(react@19.2.4) react-i18next: - specifier: ^16.5.6 - version: 16.5.6(i18next@25.8.16(typescript@5.9.3))(react-dom@19.2.4(react@19.2.4))(react@19.2.4)(typescript@5.9.3) + specifier: ^16.5.8 + version: 16.5.8(i18next@25.8.18(typescript@5.9.3))(react-dom@19.2.4(react@19.2.4))(react@19.2.4)(typescript@5.9.3) react-router-dom: specifier: ^7.13.1 version: 7.13.1(react-dom@19.2.4(react@19.2.4))(react@19.2.4) @@ -93,13 +93,13 @@ importers: version: 5.9.3 vite: specifier: npm:rolldown-vite@7.2.10 - version: rolldown-vite@7.2.10(@types/node@25.3.5)(tsx@4.21.0) + version: rolldown-vite@7.2.10(@types/node@25.4.0)(tsx@4.21.0) vite-plugin-babel: specifier: ^1.5.1 - version: 1.5.1(@babel/core@7.29.0)(rolldown-vite@7.2.10(@types/node@25.3.5)(tsx@4.21.0)) + version: 1.5.1(@babel/core@7.29.0)(rolldown-vite@7.2.10(@types/node@25.4.0)(tsx@4.21.0)) vite-plugin-static-copy: specifier: ^3.2.0 - version: 3.2.0(rolldown-vite@7.2.10(@types/node@25.3.5)(tsx@4.21.0)) + version: 3.2.0(rolldown-vite@7.2.10(@types/node@25.4.0)(tsx@4.21.0)) zustand: specifier: ^5.0.11 version: 5.0.11(@types/react@19.2.14)(react@19.2.4)(use-sync-external-store@1.6.0(react@19.2.4)) @@ -126,8 +126,8 @@ importers: version: 5.0.23 devDependencies: '@types/node': - specifier: ^25.3.5 - version: 25.3.5 + specifier: ^25.4.0 + version: 25.4.0 '@types/semver': specifier: ^7.7.1 version: 7.7.1 @@ -143,7 +143,7 @@ importers: devDependencies: vitepress: specifier: ^2.0.0-alpha.16 - version: 2.0.0-alpha.16(@types/node@25.3.5)(axios@1.13.6)(jwt-decode@4.0.0)(lightningcss@1.30.2)(postcss@8.5.6)(tsx@4.21.0)(typescript@5.9.3) + version: 2.0.0-alpha.16(@types/node@25.4.0)(axios@1.13.6)(jwt-decode@4.0.0)(lightningcss@1.30.2)(postcss@8.5.6)(tsx@4.21.0)(typescript@5.9.3) src: dependencies: @@ -338,8 +338,8 @@ importers: specifier: ^10.0.9 version: 10.0.10 '@types/node': - specifier: ^25.3.5 - version: 25.3.5 + specifier: ^25.4.0 + version: 25.4.0 '@types/oidc-provider': specifier: ^9.5.0 version: 9.5.0 @@ -401,8 +401,8 @@ importers: specifier: ^5.9.3 version: 5.9.3 vitest: - specifier: ^4.0.18 - version: 4.0.18(@opentelemetry/api@1.9.0)(@types/node@25.3.5)(jsdom@28.1.0(@noble/hashes@1.8.0))(lightningcss@1.30.2)(tsx@4.21.0) + specifier: ^4.1.0 + version: 4.1.0(@opentelemetry/api@1.9.0)(@types/node@25.4.0)(jsdom@28.1.0(@noble/hashes@1.8.0))(vite@7.3.1(@types/node@25.4.0)(lightningcss@1.30.2)(tsx@4.21.0)) ui: devDependencies: @@ -414,7 +414,7 @@ importers: version: 5.9.3 vite: specifier: npm:rolldown-vite@7.2.10 - version: rolldown-vite@7.2.10(@types/node@25.3.5)(tsx@4.21.0) + version: rolldown-vite@7.2.10(@types/node@25.4.0)(tsx@4.21.0) packages: @@ -498,10 +498,6 @@ packages: peerDependencies: '@babel/core': ^7.0.0 - '@babel/helper-plugin-utils@7.28.6': - resolution: {integrity: sha512-S9gzZ/bz83GRysI7gAD4wPT/AI3uCnY+9xn+Mx/KPs2JwHJIz1W8PZkg2cqyt3RNOBM8ejcXhV6y8Og7ly/Dug==} - engines: {node: '>=6.9.0'} - '@babel/helper-string-parser@7.27.1': resolution: {integrity: sha512-qMlSxKbpRlAridDExk92nSobyDdpPijUq2DW6oDnUqd0iOGxmQjyqhMIihI9+zv4LPyZdRje2cavWPbCbWm3eA==} engines: {node: '>=6.9.0'} @@ -536,18 +532,6 @@ packages: engines: {node: '>=6.0.0'} hasBin: true - '@babel/plugin-transform-react-jsx-self@7.27.1': - resolution: {integrity: sha512-6UzkCs+ejGdZ5mFFC/OCUrv028ab2fp1znZmCZjAOBKiBK2jXD1O+BPSfX8X2qjJ75fZBMSnQn3Rq2mrBJK2mw==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - - '@babel/plugin-transform-react-jsx-source@7.27.1': - resolution: {integrity: sha512-zbwoTsBruTeKB9hSq73ha66iFeJHuaFkUbwvqElnygoNbj/jHRsSeokowZFN3CZ64IvEqcmmkVe89OPXc7ldAw==} - engines: {node: '>=6.9.0'} - peerDependencies: - '@babel/core': ^7.0.0-0 - '@babel/runtime@7.28.6': resolution: {integrity: sha512-05WQkdpL9COIMz4LjTxGpPNCdlpyimKppYNoJ5Di5EUObifl8t4tuLuUBBZEpoLYOmfvIWrsp9fCl0HoPRVTdA==} engines: {node: '>=6.9.0'} @@ -1415,8 +1399,8 @@ packages: '@rolldown/pluginutils@1.0.0-rc.2': resolution: {integrity: sha512-izyXV/v+cHiRfozX62W9htOAvwMo4/bXKDrQ+vom1L1qRuexPock/7VZDAhnpHCLNejd3NJ6hiab+tO0D44Rgw==} - '@rolldown/pluginutils@1.0.0-rc.3': - resolution: {integrity: sha512-eybk3TjzzzV97Dlj5c+XrBFW57eTNhzod66y9HrBlzJ6NsCrWCp/2kaPS3K9wJmurBC0Tdw4yPjXKZqlznim3Q==} + '@rolldown/pluginutils@1.0.0-rc.7': + resolution: {integrity: sha512-qujRfC8sFVInYSPPMLQByRh7zhwkGFS4+tyMQ83srV1qrxL4g8E2tyxVVyxd0+8QeBM1mIk9KbWxkegRr76XzA==} '@rollup/rollup-android-arm-eabi@4.57.1': resolution: {integrity: sha512-A6ehUVSiSaaliTxai040ZpZ2zTevHYbvu/lDoeAteHI8QnaosIzm4qwtezfRg1jOYaUmnzLX1AOD6Z+UJjtifg==} @@ -1603,18 +1587,6 @@ packages: '@types/async@3.2.25': resolution: {integrity: sha512-O6Th/DI18XjrL9TX8LO9F/g26qAz5vynmQqlXt/qLGrskvzCKXKc5/tATz3G2N6lM8eOf3M8/StB14FncAmocg==} - '@types/babel__core@7.20.5': - resolution: {integrity: sha512-qoQprZvz5wQFJwMDqeseRXWv3rqMvhgpbXFfVyWhbx9X47POIA6i/+dXefEmZKoAgOaTdaIgNSMqMIU61yRyzA==} - - '@types/babel__generator@7.27.0': - resolution: {integrity: sha512-ufFd2Xi92OAVPYsy+P4n7/U7e68fex0+Ee8gSG9KX7eo084CWiQ4sdxktvdl0bOPupXtVJPY19zk6EwWqUQ8lg==} - - '@types/babel__template@7.4.4': - resolution: {integrity: sha512-h/NUaSyG5EyxBIp8YRxo4RMe2/qQgvyowRwVMzhYhBCONbW8PUsg4lkFMrhgZhUe5z3L3MiLDuvyJ/CaPa2A8A==} - - '@types/babel__traverse@7.28.0': - resolution: {integrity: sha512-8PvcXf70gTDZBgt9ptxJ8elBeBjcLOAcOtoO/mPJjtji1+CdGbHgm77om1GrsPxsiE+uXIpNSK64UYaIwQXd4Q==} - '@types/body-parser@1.19.6': resolution: {integrity: sha512-HLFeCYgz89uk22N5Qg3dvGvsv46B8GLvKKo1zKG4NybA8U2DiEO3w9lqGg29t/tfLRJpJ6iQxnVw4OnB7MoM9g==} @@ -1746,8 +1718,8 @@ packages: '@types/node-fetch@2.6.12': resolution: {integrity: sha512-8nneRWKCg3rMtF69nLQJnOYUcbafYeFSjqkw3jCRLsqkWFlHaoQrr5mXmofFGOx3DKn7UfmBMyov8ySvLRVldA==} - '@types/node@25.3.5': - resolution: {integrity: sha512-oX8xrhvpiyRCQkG1MFchB09f+cXftgIXb3a7UUa4Y3wpmZPw5tyZGTLWhlESOLq1Rq6oDlc8npVU2/9xiCuXMA==} + '@types/node@25.4.0': + resolution: {integrity: sha512-9wLpoeWuBlcbBpOY3XmzSTG3oscB6xjBEEtn+pYXTfhyXhIxC5FsBer2KTopBlvKEiW9l13po9fq+SJY/5lkhw==} '@types/oidc-provider@9.5.0': resolution: {integrity: sha512-eEzCRVTSqIHD9Bo/qRJ4XQWQ5Z/zBcG+Z2cGJluRsSuWx1RJihqRyPxhIEpMXTwPzHYRTQkVp7hwisQOwzzSAg==} @@ -1828,11 +1800,11 @@ packages: typescript: optional: true - '@typescript-eslint/eslint-plugin@8.56.1': - resolution: {integrity: sha512-Jz9ZztpB37dNC+HU2HI28Bs9QXpzCz+y/twHOwhyrIRdbuVDxSytJNDl6z/aAKlaRIwC7y8wJdkBv7FxYGgi0A==} + '@typescript-eslint/eslint-plugin@8.57.0': + resolution: {integrity: sha512-qeu4rTHR3/IaFORbD16gmjq9+rEs9fGKdX0kF6BKSfi+gCuG3RCKLlSBYzn/bGsY9Tj7KE/DAQStbp8AHJGHEQ==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: - '@typescript-eslint/parser': ^8.56.1 + '@typescript-eslint/parser': ^8.57.0 eslint: ^8.57.0 || ^9.0.0 || ^10.0.0 typescript: '>=4.8.4 <6.0.0' @@ -1846,15 +1818,15 @@ packages: typescript: optional: true - '@typescript-eslint/parser@8.56.1': - resolution: {integrity: sha512-klQbnPAAiGYFyI02+znpBRLyjL4/BrBd0nyWkdC0s/6xFLkXYQ8OoRrSkqacS1ddVxf/LDyODIKbQ5TgKAf/Fg==} + '@typescript-eslint/parser@8.57.0': + resolution: {integrity: sha512-XZzOmihLIr8AD1b9hL9ccNMzEMWt/dE2u7NyTY9jJG6YNiNthaD5XtUHVF2uCXZ15ng+z2hT3MVuxnUYhq6k1g==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: eslint: ^8.57.0 || ^9.0.0 || ^10.0.0 typescript: '>=4.8.4 <6.0.0' - '@typescript-eslint/project-service@8.56.1': - resolution: {integrity: sha512-TAdqQTzHNNvlVFfR+hu2PDJrURiwKsUvxFn1M0h95BB8ah5jejas08jUWG4dBA68jDMI988IvtfdAI53JzEHOQ==} + '@typescript-eslint/project-service@8.57.0': + resolution: {integrity: sha512-pR+dK0BlxCLxtWfaKQWtYr7MhKmzqZxuii+ZjuFlZlIGRZm22HnXFqa2eY+90MUz8/i80YJmzFGDUsi8dMOV5w==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: typescript: '>=4.8.4 <6.0.0' @@ -1863,12 +1835,12 @@ packages: resolution: {integrity: sha512-jjhdIE/FPF2B7Z1uzc6i3oWKbGcHb87Qw7AWj6jmEqNOfDFbJWtjt/XfwCpvNkpGWlcJaog5vTR+VV8+w9JflA==} engines: {node: ^18.18.0 || >=20.0.0} - '@typescript-eslint/scope-manager@8.56.1': - resolution: {integrity: sha512-YAi4VDKcIZp0O4tz/haYKhmIDZFEUPOreKbfdAN3SzUDMcPhJ8QI99xQXqX+HoUVq8cs85eRKnD+rne2UAnj2w==} + '@typescript-eslint/scope-manager@8.57.0': + resolution: {integrity: sha512-nvExQqAHF01lUM66MskSaZulpPL5pgy5hI5RfrxviLgzZVffB5yYzw27uK/ft8QnKXI2X0LBrHJFr1TaZtAibw==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} - '@typescript-eslint/tsconfig-utils@8.56.1': - resolution: {integrity: sha512-qOtCYzKEeyr3aR9f28mPJqBty7+DBqsdd63eO0yyDwc6vgThj2UjWfJIcsFeSucYydqcuudMOprZ+x1SpF3ZuQ==} + '@typescript-eslint/tsconfig-utils@8.57.0': + resolution: {integrity: sha512-LtXRihc5ytjJIQEH+xqjB0+YgsV4/tW35XKX3GTZHpWtcC8SPkT/d4tqdf1cKtesryHm2bgp6l555NYcT2NLvA==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: typescript: '>=4.8.4 <6.0.0' @@ -1883,8 +1855,8 @@ packages: typescript: optional: true - '@typescript-eslint/type-utils@8.56.1': - resolution: {integrity: sha512-yB/7dxi7MgTtGhZdaHCemf7PuwrHMenHjmzgUW1aJpO+bBU43OycnM3Wn+DdvDO/8zzA9HlhaJ0AUGuvri4oGg==} + '@typescript-eslint/type-utils@8.57.0': + resolution: {integrity: sha512-yjgh7gmDcJ1+TcEg8x3uWQmn8ifvSupnPfjP21twPKrDP/pTHlEQgmKcitzF/rzPSmv7QjJ90vRpN4U+zoUjwQ==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: eslint: ^8.57.0 || ^9.0.0 || ^10.0.0 @@ -1894,8 +1866,8 @@ packages: resolution: {integrity: sha512-iZqi+Ds1y4EDYUtlOOC+aUmxnE9xS/yCigkjA7XpTKV6nCBd3Hp/PRGGmdwnfkV2ThMyYldP1wRpm/id99spTQ==} engines: {node: ^18.18.0 || >=20.0.0} - '@typescript-eslint/types@8.56.1': - resolution: {integrity: sha512-dbMkdIUkIkchgGDIv7KLUpa0Mda4IYjo4IAMJUZ+3xNoUXxMsk9YtKpTHSChRS85o+H9ftm51gsK1dZReY9CVw==} + '@typescript-eslint/types@8.57.0': + resolution: {integrity: sha512-dTLI8PEXhjUC7B9Kre+u0XznO696BhXcTlOn0/6kf1fHaQW8+VjJAVHJ3eTI14ZapTxdkOmc80HblPQLaEeJdg==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} '@typescript-eslint/typescript-estree@7.18.0': @@ -1907,8 +1879,8 @@ packages: typescript: optional: true - '@typescript-eslint/typescript-estree@8.56.1': - resolution: {integrity: sha512-qzUL1qgalIvKWAf9C1HpvBjif+Vm6rcT5wZd4VoMb9+Km3iS3Cv9DY6dMRMDtPnwRAFyAi7YXJpTIEXLvdfPxg==} + '@typescript-eslint/typescript-estree@8.57.0': + resolution: {integrity: sha512-m7faHcyVg0BT3VdYTlX8GdJEM7COexXxS6KqGopxdtkQRvBanK377QDHr4W/vIPAR+ah9+B/RclSW5ldVniO1Q==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: typescript: '>=4.8.4 <6.0.0' @@ -1919,8 +1891,8 @@ packages: peerDependencies: eslint: ^8.56.0 - '@typescript-eslint/utils@8.56.1': - resolution: {integrity: sha512-HPAVNIME3tABJ61siYlHzSWCGtOoeP2RTIaHXFMPqjrQKCGB9OgUVdiNgH7TJS2JNIQ5qQ4RsAUDuGaGme/KOA==} + '@typescript-eslint/utils@8.57.0': + resolution: {integrity: sha512-5iIHvpD3CZe06riAsbNxxreP+MuYgVUsV0n4bwLH//VJmgtt54sQeY2GszntJ4BjYCpMzrfVh2SBnUQTtys2lQ==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: eslint: ^8.57.0 || ^9.0.0 || ^10.0.0 @@ -1930,8 +1902,8 @@ packages: resolution: {integrity: sha512-cDF0/Gf81QpY3xYyJKDV14Zwdmid5+uuENhjH2EqFaF0ni+yAyq/LzMaIJdhNJXZI7uLzwIlA+V7oWoyn6Curg==} engines: {node: ^18.18.0 || >=20.0.0} - '@typescript-eslint/visitor-keys@8.56.1': - resolution: {integrity: sha512-KiROIzYdEV85YygXw6BI/Dx4fnBlFQu6Mq4QE4MOH9fFnhohw6wX/OAvDY2/C+ut0I3RSPKenvZJIVYqJNkhEw==} + '@typescript-eslint/visitor-keys@8.57.0': + resolution: {integrity: sha512-zm6xx8UT/Xy2oSr2ZXD0pZo7Jx2XsCoID2IUh9YSTFRu7z+WdwYTRk6LhUftm1crwqbuoF6I8zAFeCMw0YjwDg==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} '@ungap/structured-clone@1.3.0': @@ -2012,11 +1984,18 @@ packages: cpu: [x64] os: [win32] - '@vitejs/plugin-react@5.1.4': - resolution: {integrity: sha512-VIcFLdRi/VYRU8OL/puL7QXMYafHmqOnwTZY50U1JPlCNj30PxCMx65c494b1K9be9hX83KVt0+gTEwTWLqToA==} + '@vitejs/plugin-react@6.0.0': + resolution: {integrity: sha512-Bu5/eP6td3WI654+tRq+ryW1PbgA90y5pqMKpb3U7UpNk6VjI53P/ncPUd192U9dSrepLy7DHnq1XEMDz5H++w==} engines: {node: ^20.19.0 || >=22.12.0} peerDependencies: - vite: ^4.2.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 + '@rolldown/plugin-babel': ^0.1.7 + babel-plugin-react-compiler: ^1.0.0 + vite: ^8.0.0 + peerDependenciesMeta: + '@rolldown/plugin-babel': + optional: true + babel-plugin-react-compiler: + optional: true '@vitejs/plugin-vue@6.0.4': resolution: {integrity: sha512-uM5iXipgYIn13UUQCZNdWkYk+sysBeA97d5mHsAoAt1u/wpN3+zxOmsVJWosuzX+IMGRzeYUNytztrYznboIkQ==} @@ -2025,34 +2004,34 @@ packages: vite: ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0-0 vue: ^3.2.25 - '@vitest/expect@4.0.18': - resolution: {integrity: sha512-8sCWUyckXXYvx4opfzVY03EOiYVxyNrHS5QxX3DAIi5dpJAAkyJezHCP77VMX4HKA2LDT/Jpfo8i2r5BE3GnQQ==} + '@vitest/expect@4.1.0': + resolution: {integrity: sha512-EIxG7k4wlWweuCLG9Y5InKFwpMEOyrMb6ZJ1ihYu02LVj/bzUwn2VMU+13PinsjRW75XnITeFrQBMH5+dLvCDA==} - '@vitest/mocker@4.0.18': - resolution: {integrity: sha512-HhVd0MDnzzsgevnOWCBj5Otnzobjy5wLBe4EdeeFGv8luMsGcYqDuFRMcttKWZA5vVO8RFjexVovXvAM4JoJDQ==} + '@vitest/mocker@4.1.0': + resolution: {integrity: sha512-evxREh+Hork43+Y4IOhTo+h5lGmVRyjqI739Rz4RlUPqwrkFFDF6EMvOOYjTx4E8Tl6gyCLRL8Mu7Ry12a13Tw==} peerDependencies: msw: ^2.4.9 - vite: ^6.0.0 || ^7.0.0-0 + vite: ^6.0.0 || ^7.0.0 || ^8.0.0-0 peerDependenciesMeta: msw: optional: true vite: optional: true - '@vitest/pretty-format@4.0.18': - resolution: {integrity: sha512-P24GK3GulZWC5tz87ux0m8OADrQIUVDPIjjj65vBXYG17ZeU3qD7r+MNZ1RNv4l8CGU2vtTRqixrOi9fYk/yKw==} + '@vitest/pretty-format@4.1.0': + resolution: {integrity: sha512-3RZLZlh88Ib0J7NQTRATfc/3ZPOnSUn2uDBUoGNn5T36+bALixmzphN26OUD3LRXWkJu4H0s5vvUeqBiw+kS0A==} - '@vitest/runner@4.0.18': - resolution: {integrity: sha512-rpk9y12PGa22Jg6g5M3UVVnTS7+zycIGk9ZNGN+m6tZHKQb7jrP7/77WfZy13Y/EUDd52NDsLRQhYKtv7XfPQw==} + '@vitest/runner@4.1.0': + resolution: {integrity: sha512-Duvx2OzQ7d6OjchL+trw+aSrb9idh7pnNfxrklo14p3zmNL4qPCDeIJAK+eBKYjkIwG96Bc6vYuxhqDXQOWpoQ==} - '@vitest/snapshot@4.0.18': - resolution: {integrity: sha512-PCiV0rcl7jKQjbgYqjtakly6T1uwv/5BQ9SwBLekVg/EaYeQFPiXcgrC2Y7vDMA8dM1SUEAEV82kgSQIlXNMvA==} + '@vitest/snapshot@4.1.0': + resolution: {integrity: sha512-0Vy9euT1kgsnj1CHttwi9i9o+4rRLEaPRSOJ5gyv579GJkNpgJK+B4HSv/rAWixx2wdAFci1X4CEPjiu2bXIMg==} - '@vitest/spy@4.0.18': - resolution: {integrity: sha512-cbQt3PTSD7P2OARdVW3qWER5EGq7PHlvE+QfzSC0lbwO+xnt7+XH06ZzFjFRgzUX//JmpxrCu92VdwvEPlWSNw==} + '@vitest/spy@4.1.0': + resolution: {integrity: sha512-pz77k+PgNpyMDv2FV6qmk5ZVau6c3R8HC8v342T2xlFxQKTrSeYw9waIJG8KgV9fFwAtTu4ceRzMivPTH6wSxw==} - '@vitest/utils@4.0.18': - resolution: {integrity: sha512-msMRKLMVLWygpK3u2Hybgi4MNjcYJvwTb0Ru09+fOyCXIgT5raYP041DRRdiJiI3k/2U6SEbAETB3YtBrUkCFA==} + '@vitest/utils@4.1.0': + resolution: {integrity: sha512-XfPXT6a8TZY3dcGY8EdwsBulFCIw+BeeX0RZn2x/BtiY/75YGh8FeWGG8QISN/WhaqSrE2OrlDgtF8q5uhOTmw==} '@vue/compiler-core@3.5.27': resolution: {integrity: sha512-gnSBQjZA+//qDZen+6a2EdHqJ68Z7uybrMf3SPjEGgG4dicklwDVmMC1AeIHxtLVPT7sn6sH1KOO+tS6gwOUeQ==} @@ -2708,8 +2687,8 @@ packages: resolution: {integrity: sha512-Zf5H2Kxt2xjTvbJvP2ZWLEICxA6j+hAmMzIlypy4xcBg1vKVnx89Wy0GbS+kf5cwCVFFzdCFh2XSCFNULS6csw==} engines: {node: '>= 0.4'} - es-module-lexer@1.7.0: - resolution: {integrity: sha512-jEQoCwk8hyb2AZziIOLhDqpm5+2ww5uIE6lkO/6jcOCusfk6LhMHpXXfBLXTZ7Ydyt0j4VoUQv6uGNYbdW+kBA==} + es-module-lexer@2.0.0: + resolution: {integrity: sha512-5POEcUuZybH7IdmGsD8wlf0AI55wMecM9rVBTI/qEAy2c1kTOm3DjFYjrBdI2K3BaJjJYfYFeRtM0t9ssnRuxw==} es-object-atoms@1.1.1: resolution: {integrity: sha512-FGgH2h8zKNim9ljj7dankFPcICIK9Cp5bm+c2gQSYePhpaG5+esrLODihIorn+Pe6FGJzWhXQotPv73jTaldXA==} @@ -3280,8 +3259,8 @@ packages: i18next-browser-languagedetector@8.2.1: resolution: {integrity: sha512-bZg8+4bdmaOiApD7N7BPT9W8MLZG+nPTOFlLiJiT8uzKXFjhxw4v2ierCXOwB5sFDMtuA5G4kgYZ0AznZxQ/cw==} - i18next@25.8.16: - resolution: {integrity: sha512-/4Xvgm8RiJNcB+sZwplylrFNJ27DVvubGX7y6uXn7hh7aSvbmXVSRIyIGx08fEn05SYwaSYWt753mIpJuPKo+Q==} + i18next@25.8.18: + resolution: {integrity: sha512-lzY5X83BiL5AP77+9DydbrqkQHFN9hUzWGjqjLpPcp5ZOzuu1aSoKaU3xbBLSjWx9dAzW431y+d+aogxOZaKRA==} peerDependencies: typescript: ^5 peerDependenciesMeta: @@ -4154,8 +4133,8 @@ packages: peerDependencies: react: ^16.8.0 || ^17 || ^18 || ^19 - react-i18next@16.5.6: - resolution: {integrity: sha512-Ua7V2/efA88ido7KyK51fb8Ki8M/sRfW8LR/rZ/9ZKr2luhuTI7kwYZN5agT1rWG7aYm5G0RYE/6JR8KJoCMDw==} + react-i18next@16.5.8: + resolution: {integrity: sha512-2ABeHHlakxVY+LSirD+OiERxFL6+zip0PaHo979bgwzeHg27Sqc82xxXWIrSFmfWX0ZkrvXMHwhsi/NGUf5VQg==} peerDependencies: i18next: '>= 25.6.2' react: '>= 16.8.0' @@ -4170,10 +4149,6 @@ packages: typescript: optional: true - react-refresh@0.18.0: - resolution: {integrity: sha512-QgT5//D3jfjJb6Gsjxv0Slpj23ip+HtOpnNgnb2S5zU3CB26G/IDPGoy4RJB42wzFE46DRsstbW6tKHoKbhAxw==} - engines: {node: '>=0.10.0'} - react-remove-scroll-bar@2.3.8: resolution: {integrity: sha512-9r+yi9+mgU33AKcj6IbT9oRCO78WriSj6t/cF8DWBZJ9aOGPOTEDvdUDz1FwKim7QXWwmHqtdHnRJfhAxEG46Q==} engines: {node: '>=10'} @@ -4589,8 +4564,8 @@ packages: resolution: {integrity: sha512-DvEy55V3DB7uknRo+4iOGT5fP1slR8wQohVdknigZPMpMstaKJQWhwiYBACJE3Ul2pTnATihhBYnRhZQHGBiRw==} engines: {node: '>= 0.8'} - std-env@3.10.0: - resolution: {integrity: sha512-5GS12FdOZNliM5mAOxFRg7Ir0pWz8MdpYm6AY6VPkGpbA7ZzmbzNcBJQ0GPvvyWgcY7QAhCgf9Uy89I03faLkg==} + std-env@4.0.0: + resolution: {integrity: sha512-zUMPtQ/HBY3/50VbpkupYHbRroTRZJPRLvreamgErJVys0ceuzMkD44J/QjqhHjOzK42GQ3QZIeFG1OYfOtKqQ==} streamroller@3.1.5: resolution: {integrity: sha512-KFxaM7XT+irxvdqSP1LGLgNWbYN7ay5owZ3r/8t77p+EtSUAfUgtl7be3xtqtOmGUl9K9YPO2ca8133RlTjvKw==} @@ -4699,8 +4674,8 @@ packages: resolution: {integrity: sha512-j2Zq4NyQYG5XMST4cbs02Ak8iJUdxRM0XI5QyxXuZOzKOINmWurp3smXu3y5wDcJrptwpSjgXHzIQxR0omXljQ==} engines: {node: '>=12.0.0'} - tinyrainbow@3.0.3: - resolution: {integrity: sha512-PSkbLUoxOFRzJYjjxHJt9xro7D+iilgMX/C9lawzVuYiIdcihh9DXmVibBe8lmcFrRi/VzlPjBxbN7rH24q8/Q==} + tinyrainbow@3.1.0: + resolution: {integrity: sha512-Bf+ILmBgretUrdJxzXM0SgXLZ3XfiaUuOj/IKQHuTXip+05Xn+uyEYdVg0kYDipTBcLrCVyUzAPz7QmArb0mmw==} engines: {node: '>=14.0.0'} tldts-core@7.0.23: @@ -4986,20 +4961,21 @@ packages: postcss: optional: true - vitest@4.0.18: - resolution: {integrity: sha512-hOQuK7h0FGKgBAas7v0mSAsnvrIgAvWmRFjmzpJ7SwFHH3g1k2u37JtYwOwmEKhK6ZO3v9ggDBBm0La1LCK4uQ==} + vitest@4.1.0: + resolution: {integrity: sha512-YbDrMF9jM2Lqc++2530UourxZHmkKLxrs4+mYhEwqWS97WJ7wOYEkcr+QfRgJ3PW9wz3odRijLZjHEaRLTNbqw==} engines: {node: ^20.0.0 || ^22.0.0 || >=24.0.0} hasBin: true peerDependencies: '@edge-runtime/vm': '*' '@opentelemetry/api': ^1.9.0 '@types/node': ^20.0.0 || ^22.0.0 || >=24.0.0 - '@vitest/browser-playwright': 4.0.18 - '@vitest/browser-preview': 4.0.18 - '@vitest/browser-webdriverio': 4.0.18 - '@vitest/ui': 4.0.18 + '@vitest/browser-playwright': 4.1.0 + '@vitest/browser-preview': 4.1.0 + '@vitest/browser-webdriverio': 4.1.0 + '@vitest/ui': 4.1.0 happy-dom: '*' jsdom: '*' + vite: ^6.0.0 || ^7.0.0 || ^8.0.0-0 peerDependenciesMeta: '@edge-runtime/vm': optional: true @@ -5333,8 +5309,6 @@ snapshots: transitivePeerDependencies: - supports-color - '@babel/helper-plugin-utils@7.28.6': {} - '@babel/helper-string-parser@7.27.1': {} '@babel/helper-validator-identifier@7.27.1': {} @@ -5361,16 +5335,6 @@ snapshots: dependencies: '@babel/types': 7.29.0 - '@babel/plugin-transform-react-jsx-self@7.27.1(@babel/core@7.29.0)': - dependencies: - '@babel/core': 7.29.0 - '@babel/helper-plugin-utils': 7.28.6 - - '@babel/plugin-transform-react-jsx-source@7.27.1(@babel/core@7.29.0)': - dependencies: - '@babel/core': 7.29.0 - '@babel/helper-plugin-utils': 7.28.6 - '@babel/runtime@7.28.6': {} '@babel/template@7.27.2': @@ -6029,7 +5993,7 @@ snapshots: '@rolldown/pluginutils@1.0.0-rc.2': {} - '@rolldown/pluginutils@1.0.0-rc.3': {} + '@rolldown/pluginutils@1.0.0-rc.7': {} '@rollup/rollup-android-arm-eabi@4.57.1': optional: true @@ -6176,35 +6140,14 @@ snapshots: '@types/accepts@1.3.7': dependencies: - '@types/node': 25.3.5 + '@types/node': 25.4.0 '@types/async@3.2.25': {} - '@types/babel__core@7.20.5': - dependencies: - '@babel/parser': 7.29.0 - '@babel/types': 7.29.0 - '@types/babel__generator': 7.27.0 - '@types/babel__template': 7.4.4 - '@types/babel__traverse': 7.28.0 - - '@types/babel__generator@7.27.0': - dependencies: - '@babel/types': 7.29.0 - - '@types/babel__template@7.4.4': - dependencies: - '@babel/parser': 7.29.0 - '@babel/types': 7.29.0 - - '@types/babel__traverse@7.28.0': - dependencies: - '@babel/types': 7.29.0 - '@types/body-parser@1.19.6': dependencies: '@types/connect': 3.4.38 - '@types/node': 25.3.5 + '@types/node': 25.4.0 '@types/chai@5.2.3': dependencies: @@ -6213,7 +6156,7 @@ snapshots: '@types/connect@3.4.38': dependencies: - '@types/node': 25.3.5 + '@types/node': 25.4.0 '@types/content-disposition@0.5.9': {} @@ -6228,15 +6171,15 @@ snapshots: '@types/connect': 3.4.38 '@types/express': 5.0.6 '@types/keygrip': 1.0.6 - '@types/node': 25.3.5 + '@types/node': 25.4.0 '@types/cors@2.8.19': dependencies: - '@types/node': 25.3.5 + '@types/node': 25.4.0 '@types/cross-spawn@6.0.6': dependencies: - '@types/node': 25.3.5 + '@types/node': 25.4.0 '@types/debug@4.1.12': dependencies: @@ -6252,7 +6195,7 @@ snapshots: '@types/express-serve-static-core@5.1.0': dependencies: - '@types/node': 25.3.5 + '@types/node': 25.4.0 '@types/qs': 6.14.0 '@types/range-parser': 1.2.7 '@types/send': 1.2.1 @@ -6269,11 +6212,11 @@ snapshots: '@types/formidable@3.5.0': dependencies: - '@types/node': 25.3.5 + '@types/node': 25.4.0 '@types/fs-extra@9.0.13': dependencies: - '@types/node': 25.3.5 + '@types/node': 25.4.0 '@types/hast@3.0.4': dependencies: @@ -6289,7 +6232,7 @@ snapshots: '@types/jsdom@28.0.0': dependencies: - '@types/node': 25.3.5 + '@types/node': 25.4.0 '@types/tough-cookie': 4.0.5 parse5: 7.3.0 undici-types: 7.22.0 @@ -6303,7 +6246,7 @@ snapshots: '@types/jsonwebtoken@9.0.10': dependencies: '@types/ms': 2.1.0 - '@types/node': 25.3.5 + '@types/node': 25.4.0 '@types/keygrip@1.0.6': {} @@ -6320,7 +6263,7 @@ snapshots: '@types/http-errors': 2.0.5 '@types/keygrip': 1.0.6 '@types/koa-compose': 3.2.8 - '@types/node': 25.3.5 + '@types/node': 25.4.0 '@types/linkify-it@5.0.0': {} @@ -6349,10 +6292,10 @@ snapshots: '@types/node-fetch@2.6.12': dependencies: - '@types/node': 25.3.5 + '@types/node': 25.4.0 form-data: 4.0.5 - '@types/node@25.3.5': + '@types/node@25.4.0': dependencies: undici-types: 7.18.2 @@ -6360,7 +6303,7 @@ snapshots: dependencies: '@types/keygrip': 1.0.6 '@types/koa': 3.0.0 - '@types/node': 25.3.5 + '@types/node': 25.4.0 '@types/qs@6.14.0': {} @@ -6379,22 +6322,22 @@ snapshots: '@types/send@0.17.4': dependencies: '@types/mime': 1.3.5 - '@types/node': 25.3.5 + '@types/node': 25.4.0 '@types/send@1.2.1': dependencies: - '@types/node': 25.3.5 + '@types/node': 25.4.0 '@types/serve-static@1.15.7': dependencies: '@types/http-errors': 2.0.5 - '@types/node': 25.3.5 + '@types/node': 25.4.0 '@types/send': 0.17.4 '@types/serve-static@2.2.0': dependencies: '@types/http-errors': 2.0.5 - '@types/node': 25.3.5 + '@types/node': 25.4.0 '@types/sinon@21.0.0': dependencies: @@ -6406,7 +6349,7 @@ snapshots: dependencies: '@types/cookiejar': 2.1.5 '@types/methods': 1.1.4 - '@types/node': 25.3.5 + '@types/node': 25.4.0 form-data: 4.0.5 '@types/supertest@7.2.0': @@ -6421,7 +6364,7 @@ snapshots: '@types/tar@6.1.13': dependencies: - '@types/node': 25.3.5 + '@types/node': 25.4.0 minipass: 4.2.8 '@types/tough-cookie@4.0.5': {} @@ -6454,14 +6397,14 @@ snapshots: transitivePeerDependencies: - supports-color - '@typescript-eslint/eslint-plugin@8.56.1(@typescript-eslint/parser@8.56.1(eslint@10.0.3)(typescript@5.9.3))(eslint@10.0.3)(typescript@5.9.3)': + '@typescript-eslint/eslint-plugin@8.57.0(@typescript-eslint/parser@8.57.0(eslint@10.0.3)(typescript@5.9.3))(eslint@10.0.3)(typescript@5.9.3)': dependencies: '@eslint-community/regexpp': 4.12.2 - '@typescript-eslint/parser': 8.56.1(eslint@10.0.3)(typescript@5.9.3) - '@typescript-eslint/scope-manager': 8.56.1 - '@typescript-eslint/type-utils': 8.56.1(eslint@10.0.3)(typescript@5.9.3) - '@typescript-eslint/utils': 8.56.1(eslint@10.0.3)(typescript@5.9.3) - '@typescript-eslint/visitor-keys': 8.56.1 + '@typescript-eslint/parser': 8.57.0(eslint@10.0.3)(typescript@5.9.3) + '@typescript-eslint/scope-manager': 8.57.0 + '@typescript-eslint/type-utils': 8.57.0(eslint@10.0.3)(typescript@5.9.3) + '@typescript-eslint/utils': 8.57.0(eslint@10.0.3)(typescript@5.9.3) + '@typescript-eslint/visitor-keys': 8.57.0 eslint: 10.0.3 ignore: 7.0.5 natural-compare: 1.4.0 @@ -6483,22 +6426,22 @@ snapshots: transitivePeerDependencies: - supports-color - '@typescript-eslint/parser@8.56.1(eslint@10.0.3)(typescript@5.9.3)': + '@typescript-eslint/parser@8.57.0(eslint@10.0.3)(typescript@5.9.3)': dependencies: - '@typescript-eslint/scope-manager': 8.56.1 - '@typescript-eslint/types': 8.56.1 - '@typescript-eslint/typescript-estree': 8.56.1(typescript@5.9.3) - '@typescript-eslint/visitor-keys': 8.56.1 + '@typescript-eslint/scope-manager': 8.57.0 + '@typescript-eslint/types': 8.57.0 + '@typescript-eslint/typescript-estree': 8.57.0(typescript@5.9.3) + '@typescript-eslint/visitor-keys': 8.57.0 debug: 4.4.3(supports-color@8.1.1) eslint: 10.0.3 typescript: 5.9.3 transitivePeerDependencies: - supports-color - '@typescript-eslint/project-service@8.56.1(typescript@5.9.3)': + '@typescript-eslint/project-service@8.57.0(typescript@5.9.3)': dependencies: - '@typescript-eslint/tsconfig-utils': 8.56.1(typescript@5.9.3) - '@typescript-eslint/types': 8.56.1 + '@typescript-eslint/tsconfig-utils': 8.57.0(typescript@5.9.3) + '@typescript-eslint/types': 8.57.0 debug: 4.4.3(supports-color@8.1.1) typescript: 5.9.3 transitivePeerDependencies: @@ -6509,12 +6452,12 @@ snapshots: '@typescript-eslint/types': 7.18.0 '@typescript-eslint/visitor-keys': 7.18.0 - '@typescript-eslint/scope-manager@8.56.1': + '@typescript-eslint/scope-manager@8.57.0': dependencies: - '@typescript-eslint/types': 8.56.1 - '@typescript-eslint/visitor-keys': 8.56.1 + '@typescript-eslint/types': 8.57.0 + '@typescript-eslint/visitor-keys': 8.57.0 - '@typescript-eslint/tsconfig-utils@8.56.1(typescript@5.9.3)': + '@typescript-eslint/tsconfig-utils@8.57.0(typescript@5.9.3)': dependencies: typescript: 5.9.3 @@ -6530,11 +6473,11 @@ snapshots: transitivePeerDependencies: - supports-color - '@typescript-eslint/type-utils@8.56.1(eslint@10.0.3)(typescript@5.9.3)': + '@typescript-eslint/type-utils@8.57.0(eslint@10.0.3)(typescript@5.9.3)': dependencies: - '@typescript-eslint/types': 8.56.1 - '@typescript-eslint/typescript-estree': 8.56.1(typescript@5.9.3) - '@typescript-eslint/utils': 8.56.1(eslint@10.0.3)(typescript@5.9.3) + '@typescript-eslint/types': 8.57.0 + '@typescript-eslint/typescript-estree': 8.57.0(typescript@5.9.3) + '@typescript-eslint/utils': 8.57.0(eslint@10.0.3)(typescript@5.9.3) debug: 4.4.3(supports-color@8.1.1) eslint: 10.0.3 ts-api-utils: 2.4.0(typescript@5.9.3) @@ -6544,7 +6487,7 @@ snapshots: '@typescript-eslint/types@7.18.0': {} - '@typescript-eslint/types@8.56.1': {} + '@typescript-eslint/types@8.57.0': {} '@typescript-eslint/typescript-estree@7.18.0(typescript@5.9.3)': dependencies: @@ -6561,12 +6504,12 @@ snapshots: transitivePeerDependencies: - supports-color - '@typescript-eslint/typescript-estree@8.56.1(typescript@5.9.3)': + '@typescript-eslint/typescript-estree@8.57.0(typescript@5.9.3)': dependencies: - '@typescript-eslint/project-service': 8.56.1(typescript@5.9.3) - '@typescript-eslint/tsconfig-utils': 8.56.1(typescript@5.9.3) - '@typescript-eslint/types': 8.56.1 - '@typescript-eslint/visitor-keys': 8.56.1 + '@typescript-eslint/project-service': 8.57.0(typescript@5.9.3) + '@typescript-eslint/tsconfig-utils': 8.57.0(typescript@5.9.3) + '@typescript-eslint/types': 8.57.0 + '@typescript-eslint/visitor-keys': 8.57.0 debug: 4.4.3(supports-color@8.1.1) minimatch: 10.2.4 semver: 7.7.4 @@ -6587,12 +6530,12 @@ snapshots: - supports-color - typescript - '@typescript-eslint/utils@8.56.1(eslint@10.0.3)(typescript@5.9.3)': + '@typescript-eslint/utils@8.57.0(eslint@10.0.3)(typescript@5.9.3)': dependencies: '@eslint-community/eslint-utils': 4.9.1(eslint@10.0.3) - '@typescript-eslint/scope-manager': 8.56.1 - '@typescript-eslint/types': 8.56.1 - '@typescript-eslint/typescript-estree': 8.56.1(typescript@5.9.3) + '@typescript-eslint/scope-manager': 8.57.0 + '@typescript-eslint/types': 8.57.0 + '@typescript-eslint/typescript-estree': 8.57.0(typescript@5.9.3) eslint: 10.0.3 typescript: 5.9.3 transitivePeerDependencies: @@ -6603,9 +6546,9 @@ snapshots: '@typescript-eslint/types': 7.18.0 eslint-visitor-keys: 3.4.3 - '@typescript-eslint/visitor-keys@8.56.1': + '@typescript-eslint/visitor-keys@8.57.0': dependencies: - '@typescript-eslint/types': 8.56.1 + '@typescript-eslint/types': 8.57.0 eslint-visitor-keys: 5.0.1 '@ungap/structured-clone@1.3.0': {} @@ -6657,62 +6600,59 @@ snapshots: '@unrs/resolver-binding-win32-x64-msvc@1.3.3': optional: true - '@vitejs/plugin-react@5.1.4(rolldown-vite@7.2.10(@types/node@25.3.5)(tsx@4.21.0))': + '@vitejs/plugin-react@6.0.0(babel-plugin-react-compiler@19.1.0-rc.3)(rolldown-vite@7.2.10(@types/node@25.4.0)(tsx@4.21.0))': dependencies: - '@babel/core': 7.29.0 - '@babel/plugin-transform-react-jsx-self': 7.27.1(@babel/core@7.29.0) - '@babel/plugin-transform-react-jsx-source': 7.27.1(@babel/core@7.29.0) - '@rolldown/pluginutils': 1.0.0-rc.3 - '@types/babel__core': 7.20.5 - react-refresh: 0.18.0 - vite: rolldown-vite@7.2.10(@types/node@25.3.5)(tsx@4.21.0) - transitivePeerDependencies: - - supports-color + '@rolldown/pluginutils': 1.0.0-rc.7 + vite: rolldown-vite@7.2.10(@types/node@25.4.0)(tsx@4.21.0) + optionalDependencies: + babel-plugin-react-compiler: 19.1.0-rc.3 - '@vitejs/plugin-vue@6.0.4(vite@7.3.1(@types/node@25.3.5)(lightningcss@1.30.2)(tsx@4.21.0))(vue@3.5.27(typescript@5.9.3))': + '@vitejs/plugin-vue@6.0.4(vite@7.3.1(@types/node@25.4.0)(lightningcss@1.30.2)(tsx@4.21.0))(vue@3.5.27(typescript@5.9.3))': dependencies: '@rolldown/pluginutils': 1.0.0-rc.2 - vite: 7.3.1(@types/node@25.3.5)(lightningcss@1.30.2)(tsx@4.21.0) + vite: 7.3.1(@types/node@25.4.0)(lightningcss@1.30.2)(tsx@4.21.0) vue: 3.5.27(typescript@5.9.3) - '@vitest/expect@4.0.18': + '@vitest/expect@4.1.0': dependencies: '@standard-schema/spec': 1.1.0 '@types/chai': 5.2.3 - '@vitest/spy': 4.0.18 - '@vitest/utils': 4.0.18 + '@vitest/spy': 4.1.0 + '@vitest/utils': 4.1.0 chai: 6.2.2 - tinyrainbow: 3.0.3 + tinyrainbow: 3.1.0 - '@vitest/mocker@4.0.18(vite@7.3.1(@types/node@25.3.5)(lightningcss@1.30.2)(tsx@4.21.0))': + '@vitest/mocker@4.1.0(vite@7.3.1(@types/node@25.4.0)(lightningcss@1.30.2)(tsx@4.21.0))': dependencies: - '@vitest/spy': 4.0.18 + '@vitest/spy': 4.1.0 estree-walker: 3.0.3 magic-string: 0.30.21 optionalDependencies: - vite: 7.3.1(@types/node@25.3.5)(lightningcss@1.30.2)(tsx@4.21.0) + vite: 7.3.1(@types/node@25.4.0)(lightningcss@1.30.2)(tsx@4.21.0) - '@vitest/pretty-format@4.0.18': + '@vitest/pretty-format@4.1.0': dependencies: - tinyrainbow: 3.0.3 + tinyrainbow: 3.1.0 - '@vitest/runner@4.0.18': + '@vitest/runner@4.1.0': dependencies: - '@vitest/utils': 4.0.18 + '@vitest/utils': 4.1.0 pathe: 2.0.3 - '@vitest/snapshot@4.0.18': + '@vitest/snapshot@4.1.0': dependencies: - '@vitest/pretty-format': 4.0.18 + '@vitest/pretty-format': 4.1.0 + '@vitest/utils': 4.1.0 magic-string: 0.30.21 pathe: 2.0.3 - '@vitest/spy@4.0.18': {} + '@vitest/spy@4.1.0': {} - '@vitest/utils@4.0.18': + '@vitest/utils@4.1.0': dependencies: - '@vitest/pretty-format': 4.0.18 - tinyrainbow: 3.0.3 + '@vitest/pretty-format': 4.1.0 + convert-source-map: 2.0.0 + tinyrainbow: 3.1.0 '@vue/compiler-core@3.5.27': dependencies: @@ -7322,7 +7262,7 @@ snapshots: engine.io@6.6.5: dependencies: '@types/cors': 2.8.19 - '@types/node': 25.3.5 + '@types/node': 25.4.0 accepts: 1.3.8 base64id: 2.0.0 cookie: 0.7.2 @@ -7397,7 +7337,7 @@ snapshots: es-errors@1.3.0: {} - es-module-lexer@1.7.0: {} + es-module-lexer@2.0.0: {} es-object-atoms@1.1.1: dependencies: @@ -8177,7 +8117,7 @@ snapshots: dependencies: '@babel/runtime': 7.28.6 - i18next@25.8.16(typescript@5.9.3): + i18next@25.8.18(typescript@5.9.3): dependencies: '@babel/runtime': 7.28.6 optionalDependencies: @@ -9018,7 +8958,7 @@ snapshots: proxy-agent@6.5.0: dependencies: agent-base: 7.1.3 - debug: 4.4.1 + debug: 4.4.3(supports-color@8.1.1) http-proxy-agent: 7.0.2 https-proxy-agent: 7.0.6 lru-cache: 7.18.3 @@ -9076,19 +9016,17 @@ snapshots: dependencies: react: 19.2.4 - react-i18next@16.5.6(i18next@25.8.16(typescript@5.9.3))(react-dom@19.2.4(react@19.2.4))(react@19.2.4)(typescript@5.9.3): + react-i18next@16.5.8(i18next@25.8.18(typescript@5.9.3))(react-dom@19.2.4(react@19.2.4))(react@19.2.4)(typescript@5.9.3): dependencies: '@babel/runtime': 7.28.6 html-parse-stringify: 3.0.1 - i18next: 25.8.16(typescript@5.9.3) + i18next: 25.8.18(typescript@5.9.3) react: 19.2.4 use-sync-external-store: 1.6.0(react@19.2.4) optionalDependencies: react-dom: 19.2.4(react@19.2.4) typescript: 5.9.3 - react-refresh@0.18.0: {} - react-remove-scroll-bar@2.3.8(@types/react@19.2.14)(react@19.2.4): dependencies: react: 19.2.4 @@ -9210,7 +9148,7 @@ snapshots: rfdc@1.4.1: {} - rolldown-vite@7.2.10(@types/node@25.3.5)(tsx@4.21.0): + rolldown-vite@7.2.10(@types/node@25.4.0)(tsx@4.21.0): dependencies: '@oxc-project/runtime': 0.101.0 fdir: 6.5.0(picomatch@4.0.3) @@ -9220,7 +9158,7 @@ snapshots: rolldown: 1.0.0-beta.53 tinyglobby: 0.2.15 optionalDependencies: - '@types/node': 25.3.5 + '@types/node': 25.4.0 fsevents: 2.3.3 tsx: 4.21.0 @@ -9563,12 +9501,12 @@ snapshots: statuses@2.0.2: {} - std-env@3.10.0: {} + std-env@4.0.0: {} streamroller@3.1.5: dependencies: date-format: 4.0.14 - debug: 4.4.3(supports-color@8.1.1) + debug: 4.4.0 fs-extra: 8.1.0 transitivePeerDependencies: - supports-color @@ -9700,7 +9638,7 @@ snapshots: fdir: 6.5.0(picomatch@4.0.3) picomatch: 4.0.3 - tinyrainbow@3.0.3: {} + tinyrainbow@3.1.0: {} tldts-core@7.0.23: {} @@ -9937,20 +9875,20 @@ snapshots: '@types/unist': 3.0.3 vfile-message: 4.0.2 - vite-plugin-babel@1.5.1(@babel/core@7.29.0)(rolldown-vite@7.2.10(@types/node@25.3.5)(tsx@4.21.0)): + vite-plugin-babel@1.5.1(@babel/core@7.29.0)(rolldown-vite@7.2.10(@types/node@25.4.0)(tsx@4.21.0)): dependencies: '@babel/core': 7.29.0 - vite: rolldown-vite@7.2.10(@types/node@25.3.5)(tsx@4.21.0) + vite: rolldown-vite@7.2.10(@types/node@25.4.0)(tsx@4.21.0) - vite-plugin-static-copy@3.2.0(rolldown-vite@7.2.10(@types/node@25.3.5)(tsx@4.21.0)): + vite-plugin-static-copy@3.2.0(rolldown-vite@7.2.10(@types/node@25.4.0)(tsx@4.21.0)): dependencies: chokidar: 3.6.0 p-map: 7.0.4 picocolors: 1.1.1 tinyglobby: 0.2.15 - vite: rolldown-vite@7.2.10(@types/node@25.3.5)(tsx@4.21.0) + vite: rolldown-vite@7.2.10(@types/node@25.4.0)(tsx@4.21.0) - vite@7.3.1(@types/node@25.3.5)(lightningcss@1.30.2)(tsx@4.21.0): + vite@7.3.1(@types/node@25.4.0)(lightningcss@1.30.2)(tsx@4.21.0): dependencies: esbuild: 0.27.3 fdir: 6.5.0(picomatch@4.0.3) @@ -9959,12 +9897,12 @@ snapshots: rollup: 4.57.1 tinyglobby: 0.2.15 optionalDependencies: - '@types/node': 25.3.5 + '@types/node': 25.4.0 fsevents: 2.3.3 lightningcss: 1.30.2 tsx: 4.21.0 - vitepress@2.0.0-alpha.16(@types/node@25.3.5)(axios@1.13.6)(jwt-decode@4.0.0)(lightningcss@1.30.2)(postcss@8.5.6)(tsx@4.21.0)(typescript@5.9.3): + vitepress@2.0.0-alpha.16(@types/node@25.4.0)(axios@1.13.6)(jwt-decode@4.0.0)(lightningcss@1.30.2)(postcss@8.5.6)(tsx@4.21.0)(typescript@5.9.3): dependencies: '@docsearch/css': 4.5.3 '@docsearch/js': 4.5.3 @@ -9974,7 +9912,7 @@ snapshots: '@shikijs/transformers': 3.22.0 '@shikijs/types': 3.22.0 '@types/markdown-it': 14.1.2 - '@vitejs/plugin-vue': 6.0.4(vite@7.3.1(@types/node@25.3.5)(lightningcss@1.30.2)(tsx@4.21.0))(vue@3.5.27(typescript@5.9.3)) + '@vitejs/plugin-vue': 6.0.4(vite@7.3.1(@types/node@25.4.0)(lightningcss@1.30.2)(tsx@4.21.0))(vue@3.5.27(typescript@5.9.3)) '@vue/devtools-api': 8.0.6 '@vue/shared': 3.5.27 '@vueuse/core': 14.2.0(vue@3.5.27(typescript@5.9.3)) @@ -9983,7 +9921,7 @@ snapshots: mark.js: 8.11.1 minisearch: 7.2.0 shiki: 3.22.0 - vite: 7.3.1(@types/node@25.3.5)(lightningcss@1.30.2)(tsx@4.21.0) + vite: 7.3.1(@types/node@25.4.0)(lightningcss@1.30.2)(tsx@4.21.0) vue: 3.5.27(typescript@5.9.3) optionalDependencies: postcss: 8.5.6 @@ -10012,44 +9950,34 @@ snapshots: - universal-cookie - yaml - vitest@4.0.18(@opentelemetry/api@1.9.0)(@types/node@25.3.5)(jsdom@28.1.0(@noble/hashes@1.8.0))(lightningcss@1.30.2)(tsx@4.21.0): + vitest@4.1.0(@opentelemetry/api@1.9.0)(@types/node@25.4.0)(jsdom@28.1.0(@noble/hashes@1.8.0))(vite@7.3.1(@types/node@25.4.0)(lightningcss@1.30.2)(tsx@4.21.0)): dependencies: - '@vitest/expect': 4.0.18 - '@vitest/mocker': 4.0.18(vite@7.3.1(@types/node@25.3.5)(lightningcss@1.30.2)(tsx@4.21.0)) - '@vitest/pretty-format': 4.0.18 - '@vitest/runner': 4.0.18 - '@vitest/snapshot': 4.0.18 - '@vitest/spy': 4.0.18 - '@vitest/utils': 4.0.18 - es-module-lexer: 1.7.0 + '@vitest/expect': 4.1.0 + '@vitest/mocker': 4.1.0(vite@7.3.1(@types/node@25.4.0)(lightningcss@1.30.2)(tsx@4.21.0)) + '@vitest/pretty-format': 4.1.0 + '@vitest/runner': 4.1.0 + '@vitest/snapshot': 4.1.0 + '@vitest/spy': 4.1.0 + '@vitest/utils': 4.1.0 + es-module-lexer: 2.0.0 expect-type: 1.3.0 magic-string: 0.30.21 obug: 2.1.1 pathe: 2.0.3 picomatch: 4.0.3 - std-env: 3.10.0 + std-env: 4.0.0 tinybench: 2.9.0 tinyexec: 1.0.2 tinyglobby: 0.2.15 - tinyrainbow: 3.0.3 - vite: 7.3.1(@types/node@25.3.5)(lightningcss@1.30.2)(tsx@4.21.0) + tinyrainbow: 3.1.0 + vite: 7.3.1(@types/node@25.4.0)(lightningcss@1.30.2)(tsx@4.21.0) why-is-node-running: 2.3.0 optionalDependencies: '@opentelemetry/api': 1.9.0 - '@types/node': 25.3.5 + '@types/node': 25.4.0 jsdom: 28.1.0(@noble/hashes@1.8.0) transitivePeerDependencies: - - jiti - - less - - lightningcss - msw - - sass - - sass-embedded - - stylus - - sugarss - - terser - - tsx - - yaml void-elements@3.1.0: {} diff --git a/src/package.json b/src/package.json index bb649614359..0b5208c923f 100644 --- a/src/package.json +++ b/src/package.json @@ -99,7 +99,7 @@ "@types/jsonwebtoken": "^9.0.10", "@types/mime-types": "^3.0.1", "@types/mocha": "^10.0.9", - "@types/node": "^25.3.5", + "@types/node": "^25.4.0", "@types/oidc-provider": "^9.5.0", "@types/semver": "^7.7.1", "@types/sinon": "^21.0.0", @@ -120,7 +120,7 @@ "split-grid": "^1.0.11", "supertest": "^7.2.2", "typescript": "^5.9.3", - "vitest": "^4.0.18" + "vitest": "^4.1.0" }, "engines": { "node": ">=20.0.0", From 1b3b23bc3ab2701fcd483e4b30256396392400e8 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri, 13 Mar 2026 11:37:42 +0000 Subject: [PATCH 026/130] build(deps): bump actions/upload-artifact from 6 to 7 (#7339) Bumps [actions/upload-artifact](https://github.com/actions/upload-artifact) from 6 to 7. - [Release notes](https://github.com/actions/upload-artifact/releases) - [Commits](https://github.com/actions/upload-artifact/compare/v6...v7) --- updated-dependencies: - dependency-name: actions/upload-artifact dependency-version: '7' dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- .github/workflows/frontend-admin-tests.yml | 2 +- .github/workflows/frontend-tests.yml | 6 +++--- 2 files changed, 4 insertions(+), 4 deletions(-) diff --git a/.github/workflows/frontend-admin-tests.yml b/.github/workflows/frontend-admin-tests.yml index 7c980bab3dc..45e56963f84 100644 --- a/.github/workflows/frontend-admin-tests.yml +++ b/.github/workflows/frontend-admin-tests.yml @@ -141,7 +141,7 @@ jobs: gnpm exec playwright install --runtimeVersion="${{ matrix.node }}" gnpm exec playwright install-deps --runtimeVersion="${{ matrix.node }}" gnpm run test-admin --runtimeVersion="${{ matrix.node }}" - - uses: actions/upload-artifact@v6 + - uses: actions/upload-artifact@v7 if: always() with: name: playwright-report-${{ matrix.node }} diff --git a/.github/workflows/frontend-tests.yml b/.github/workflows/frontend-tests.yml index 0b95070f4ef..628595d913c 100644 --- a/.github/workflows/frontend-tests.yml +++ b/.github/workflows/frontend-tests.yml @@ -69,7 +69,7 @@ jobs: cd src gnpm exec playwright install chromium --with-deps gnpm run test-ui --project=chromium - - uses: actions/upload-artifact@v6 + - uses: actions/upload-artifact@v7 if: always() with: name: playwright-report-${{ matrix.node }}-chrome @@ -129,7 +129,7 @@ jobs: cd src gnpm exec playwright install firefox --with-deps gnpm run test-ui --project=firefox - - uses: actions/upload-artifact@v6 + - uses: actions/upload-artifact@v7 if: always() with: name: playwright-report-${{ matrix.node }}-firefox @@ -193,7 +193,7 @@ jobs: cd src gnpm exec playwright install webkit --with-deps gnpm run test-ui --project=webkit || true - - uses: actions/upload-artifact@v6 + - uses: actions/upload-artifact@v7 if: always() with: name: playwright-report-${{ matrix.node }}-webkit From 4d32bd65e9ca9c6ae70ba54d2c3da42d99544341 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri, 13 Mar 2026 11:37:55 +0000 Subject: [PATCH 027/130] build(deps): bump esbuild from 0.27.3 to 0.27.4 (#7367) Bumps [esbuild](https://github.com/evanw/esbuild) from 0.27.3 to 0.27.4. - [Release notes](https://github.com/evanw/esbuild/releases) - [Changelog](https://github.com/evanw/esbuild/blob/main/CHANGELOG.md) - [Commits](https://github.com/evanw/esbuild/compare/v0.27.3...v0.27.4) --- updated-dependencies: - dependency-name: esbuild dependency-version: 0.27.4 dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- pnpm-lock.yaml | 220 +++++++++++++++++++++++------------------------ src/package.json | 2 +- 2 files changed, 111 insertions(+), 111 deletions(-) diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 2723a918b8d..9ae1ed5605e 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -166,8 +166,8 @@ importers: specifier: ^5.0.1 version: 5.0.1 esbuild: - specifier: ^0.27.3 - version: 0.27.3 + specifier: ^0.27.4 + version: 0.27.4 express: specifier: ^5.2.1 version: 5.2.1 @@ -626,8 +626,8 @@ packages: cpu: [ppc64] os: [aix] - '@esbuild/aix-ppc64@0.27.3': - resolution: {integrity: sha512-9fJMTNFTWZMh5qwrBItuziu834eOCUcEqymSH7pY+zoMVEZg3gcPuBNxH1EvfVYe9h0x/Ptw8KBzv7qxb7l8dg==} + '@esbuild/aix-ppc64@0.27.4': + resolution: {integrity: sha512-cQPwL2mp2nSmHHJlCyoXgHGhbEPMrEEU5xhkcy3Hs/O7nGZqEpZ2sUtLaL9MORLtDfRvVl2/3PAuEkYZH0Ty8Q==} engines: {node: '>=18'} cpu: [ppc64] os: [aix] @@ -638,8 +638,8 @@ packages: cpu: [arm64] os: [android] - '@esbuild/android-arm64@0.27.3': - resolution: {integrity: sha512-YdghPYUmj/FX2SYKJ0OZxf+iaKgMsKHVPF1MAq/P8WirnSpCStzKJFjOjzsW0QQ7oIAiccHdcqjbHmJxRb/dmg==} + '@esbuild/android-arm64@0.27.4': + resolution: {integrity: sha512-gdLscB7v75wRfu7QSm/zg6Rx29VLdy9eTr2t44sfTW7CxwAtQghZ4ZnqHk3/ogz7xao0QAgrkradbBzcqFPasw==} engines: {node: '>=18'} cpu: [arm64] os: [android] @@ -650,8 +650,8 @@ packages: cpu: [arm] os: [android] - '@esbuild/android-arm@0.27.3': - resolution: {integrity: sha512-i5D1hPY7GIQmXlXhs2w8AWHhenb00+GxjxRncS2ZM7YNVGNfaMxgzSGuO8o8SJzRc/oZwU2bcScvVERk03QhzA==} + '@esbuild/android-arm@0.27.4': + resolution: {integrity: sha512-X9bUgvxiC8CHAGKYufLIHGXPJWnr0OCdR0anD2e21vdvgCI8lIfqFbnoeOz7lBjdrAGUhqLZLcQo6MLhTO2DKQ==} engines: {node: '>=18'} cpu: [arm] os: [android] @@ -662,8 +662,8 @@ packages: cpu: [x64] os: [android] - '@esbuild/android-x64@0.27.3': - resolution: {integrity: sha512-IN/0BNTkHtk8lkOM8JWAYFg4ORxBkZQf9zXiEOfERX/CzxW3Vg1ewAhU7QSWQpVIzTW+b8Xy+lGzdYXV6UZObQ==} + '@esbuild/android-x64@0.27.4': + resolution: {integrity: sha512-PzPFnBNVF292sfpfhiyiXCGSn9HZg5BcAz+ivBuSsl6Rk4ga1oEXAamhOXRFyMcjwr2DVtm40G65N3GLeH1Lvw==} engines: {node: '>=18'} cpu: [x64] os: [android] @@ -674,8 +674,8 @@ packages: cpu: [arm64] os: [darwin] - '@esbuild/darwin-arm64@0.27.3': - resolution: {integrity: sha512-Re491k7ByTVRy0t3EKWajdLIr0gz2kKKfzafkth4Q8A5n1xTHrkqZgLLjFEHVD+AXdUGgQMq+Godfq45mGpCKg==} + '@esbuild/darwin-arm64@0.27.4': + resolution: {integrity: sha512-b7xaGIwdJlht8ZFCvMkpDN6uiSmnxxK56N2GDTMYPr2/gzvfdQN8rTfBsvVKmIVY/X7EM+/hJKEIbbHs9oA4tQ==} engines: {node: '>=18'} cpu: [arm64] os: [darwin] @@ -686,8 +686,8 @@ packages: cpu: [x64] os: [darwin] - '@esbuild/darwin-x64@0.27.3': - resolution: {integrity: sha512-vHk/hA7/1AckjGzRqi6wbo+jaShzRowYip6rt6q7VYEDX4LEy1pZfDpdxCBnGtl+A5zq8iXDcyuxwtv3hNtHFg==} + '@esbuild/darwin-x64@0.27.4': + resolution: {integrity: sha512-sR+OiKLwd15nmCdqpXMnuJ9W2kpy0KigzqScqHI3Hqwr7IXxBp3Yva+yJwoqh7rE8V77tdoheRYataNKL4QrPw==} engines: {node: '>=18'} cpu: [x64] os: [darwin] @@ -698,8 +698,8 @@ packages: cpu: [arm64] os: [freebsd] - '@esbuild/freebsd-arm64@0.27.3': - resolution: {integrity: sha512-ipTYM2fjt3kQAYOvo6vcxJx3nBYAzPjgTCk7QEgZG8AUO3ydUhvelmhrbOheMnGOlaSFUoHXB6un+A7q4ygY9w==} + '@esbuild/freebsd-arm64@0.27.4': + resolution: {integrity: sha512-jnfpKe+p79tCnm4GVav68A7tUFeKQwQyLgESwEAUzyxk/TJr4QdGog9sqWNcUbr/bZt/O/HXouspuQDd9JxFSw==} engines: {node: '>=18'} cpu: [arm64] os: [freebsd] @@ -710,8 +710,8 @@ packages: cpu: [x64] os: [freebsd] - '@esbuild/freebsd-x64@0.27.3': - resolution: {integrity: sha512-dDk0X87T7mI6U3K9VjWtHOXqwAMJBNN2r7bejDsc+j03SEjtD9HrOl8gVFByeM0aJksoUuUVU9TBaZa2rgj0oA==} + '@esbuild/freebsd-x64@0.27.4': + resolution: {integrity: sha512-2kb4ceA/CpfUrIcTUl1wrP/9ad9Atrp5J94Lq69w7UwOMolPIGrfLSvAKJp0RTvkPPyn6CIWrNy13kyLikZRZQ==} engines: {node: '>=18'} cpu: [x64] os: [freebsd] @@ -722,8 +722,8 @@ packages: cpu: [arm64] os: [linux] - '@esbuild/linux-arm64@0.27.3': - resolution: {integrity: sha512-sZOuFz/xWnZ4KH3YfFrKCf1WyPZHakVzTiqji3WDc0BCl2kBwiJLCXpzLzUBLgmp4veFZdvN5ChW4Eq/8Fc2Fg==} + '@esbuild/linux-arm64@0.27.4': + resolution: {integrity: sha512-7nQOttdzVGth1iz57kxg9uCz57dxQLHWxopL6mYuYthohPKEK0vU0C3O21CcBK6KDlkYVcnDXY099HcCDXd9dA==} engines: {node: '>=18'} cpu: [arm64] os: [linux] @@ -734,8 +734,8 @@ packages: cpu: [arm] os: [linux] - '@esbuild/linux-arm@0.27.3': - resolution: {integrity: sha512-s6nPv2QkSupJwLYyfS+gwdirm0ukyTFNl3KTgZEAiJDd+iHZcbTPPcWCcRYH+WlNbwChgH2QkE9NSlNrMT8Gfw==} + '@esbuild/linux-arm@0.27.4': + resolution: {integrity: sha512-aBYgcIxX/wd5n2ys0yESGeYMGF+pv6g0DhZr3G1ZG4jMfruU9Tl1i2Z+Wnj9/KjGz1lTLCcorqE2viePZqj4Eg==} engines: {node: '>=18'} cpu: [arm] os: [linux] @@ -746,8 +746,8 @@ packages: cpu: [ia32] os: [linux] - '@esbuild/linux-ia32@0.27.3': - resolution: {integrity: sha512-yGlQYjdxtLdh0a3jHjuwOrxQjOZYD/C9PfdbgJJF3TIZWnm/tMd/RcNiLngiu4iwcBAOezdnSLAwQDPqTmtTYg==} + '@esbuild/linux-ia32@0.27.4': + resolution: {integrity: sha512-oPtixtAIzgvzYcKBQM/qZ3R+9TEUd1aNJQu0HhGyqtx6oS7qTpvjheIWBbes4+qu1bNlo2V4cbkISr8q6gRBFA==} engines: {node: '>=18'} cpu: [ia32] os: [linux] @@ -758,8 +758,8 @@ packages: cpu: [loong64] os: [linux] - '@esbuild/linux-loong64@0.27.3': - resolution: {integrity: sha512-WO60Sn8ly3gtzhyjATDgieJNet/KqsDlX5nRC5Y3oTFcS1l0KWba+SEa9Ja1GfDqSF1z6hif/SkpQJbL63cgOA==} + '@esbuild/linux-loong64@0.27.4': + resolution: {integrity: sha512-8mL/vh8qeCoRcFH2nM8wm5uJP+ZcVYGGayMavi8GmRJjuI3g1v6Z7Ni0JJKAJW+m0EtUuARb6Lmp4hMjzCBWzA==} engines: {node: '>=18'} cpu: [loong64] os: [linux] @@ -770,8 +770,8 @@ packages: cpu: [mips64el] os: [linux] - '@esbuild/linux-mips64el@0.27.3': - resolution: {integrity: sha512-APsymYA6sGcZ4pD6k+UxbDjOFSvPWyZhjaiPyl/f79xKxwTnrn5QUnXR5prvetuaSMsb4jgeHewIDCIWljrSxw==} + '@esbuild/linux-mips64el@0.27.4': + resolution: {integrity: sha512-1RdrWFFiiLIW7LQq9Q2NES+HiD4NyT8Itj9AUeCl0IVCA459WnPhREKgwrpaIfTOe+/2rdntisegiPWn/r/aAw==} engines: {node: '>=18'} cpu: [mips64el] os: [linux] @@ -782,8 +782,8 @@ packages: cpu: [ppc64] os: [linux] - '@esbuild/linux-ppc64@0.27.3': - resolution: {integrity: sha512-eizBnTeBefojtDb9nSh4vvVQ3V9Qf9Df01PfawPcRzJH4gFSgrObw+LveUyDoKU3kxi5+9RJTCWlj4FjYXVPEA==} + '@esbuild/linux-ppc64@0.27.4': + resolution: {integrity: sha512-tLCwNG47l3sd9lpfyx9LAGEGItCUeRCWeAx6x2Jmbav65nAwoPXfewtAdtbtit/pJFLUWOhpv0FpS6GQAmPrHA==} engines: {node: '>=18'} cpu: [ppc64] os: [linux] @@ -794,8 +794,8 @@ packages: cpu: [riscv64] os: [linux] - '@esbuild/linux-riscv64@0.27.3': - resolution: {integrity: sha512-3Emwh0r5wmfm3ssTWRQSyVhbOHvqegUDRd0WhmXKX2mkHJe1SFCMJhagUleMq+Uci34wLSipf8Lagt4LlpRFWQ==} + '@esbuild/linux-riscv64@0.27.4': + resolution: {integrity: sha512-BnASypppbUWyqjd1KIpU4AUBiIhVr6YlHx/cnPgqEkNoVOhHg+YiSVxM1RLfiy4t9cAulbRGTNCKOcqHrEQLIw==} engines: {node: '>=18'} cpu: [riscv64] os: [linux] @@ -806,8 +806,8 @@ packages: cpu: [s390x] os: [linux] - '@esbuild/linux-s390x@0.27.3': - resolution: {integrity: sha512-pBHUx9LzXWBc7MFIEEL0yD/ZVtNgLytvx60gES28GcWMqil8ElCYR4kvbV2BDqsHOvVDRrOxGySBM9Fcv744hw==} + '@esbuild/linux-s390x@0.27.4': + resolution: {integrity: sha512-+eUqgb/Z7vxVLezG8bVB9SfBie89gMueS+I0xYh2tJdw3vqA/0ImZJ2ROeWwVJN59ihBeZ7Tu92dF/5dy5FttA==} engines: {node: '>=18'} cpu: [s390x] os: [linux] @@ -818,8 +818,8 @@ packages: cpu: [x64] os: [linux] - '@esbuild/linux-x64@0.27.3': - resolution: {integrity: sha512-Czi8yzXUWIQYAtL/2y6vogER8pvcsOsk5cpwL4Gk5nJqH5UZiVByIY8Eorm5R13gq+DQKYg0+JyQoytLQas4dA==} + '@esbuild/linux-x64@0.27.4': + resolution: {integrity: sha512-S5qOXrKV8BQEzJPVxAwnryi2+Iq5pB40gTEIT69BQONqR7JH1EPIcQ/Uiv9mCnn05jff9umq/5nqzxlqTOg9NA==} engines: {node: '>=18'} cpu: [x64] os: [linux] @@ -830,8 +830,8 @@ packages: cpu: [arm64] os: [netbsd] - '@esbuild/netbsd-arm64@0.27.3': - resolution: {integrity: sha512-sDpk0RgmTCR/5HguIZa9n9u+HVKf40fbEUt+iTzSnCaGvY9kFP0YKBWZtJaraonFnqef5SlJ8/TiPAxzyS+UoA==} + '@esbuild/netbsd-arm64@0.27.4': + resolution: {integrity: sha512-xHT8X4sb0GS8qTqiwzHqpY00C95DPAq7nAwX35Ie/s+LO9830hrMd3oX0ZMKLvy7vsonee73x0lmcdOVXFzd6Q==} engines: {node: '>=18'} cpu: [arm64] os: [netbsd] @@ -842,8 +842,8 @@ packages: cpu: [x64] os: [netbsd] - '@esbuild/netbsd-x64@0.27.3': - resolution: {integrity: sha512-P14lFKJl/DdaE00LItAukUdZO5iqNH7+PjoBm+fLQjtxfcfFE20Xf5CrLsmZdq5LFFZzb5JMZ9grUwvtVYzjiA==} + '@esbuild/netbsd-x64@0.27.4': + resolution: {integrity: sha512-RugOvOdXfdyi5Tyv40kgQnI0byv66BFgAqjdgtAKqHoZTbTF2QqfQrFwa7cHEORJf6X2ht+l9ABLMP0dnKYsgg==} engines: {node: '>=18'} cpu: [x64] os: [netbsd] @@ -854,8 +854,8 @@ packages: cpu: [arm64] os: [openbsd] - '@esbuild/openbsd-arm64@0.27.3': - resolution: {integrity: sha512-AIcMP77AvirGbRl/UZFTq5hjXK+2wC7qFRGoHSDrZ5v5b8DK/GYpXW3CPRL53NkvDqb9D+alBiC/dV0Fb7eJcw==} + '@esbuild/openbsd-arm64@0.27.4': + resolution: {integrity: sha512-2MyL3IAaTX+1/qP0O1SwskwcwCoOI4kV2IBX1xYnDDqthmq5ArrW94qSIKCAuRraMgPOmG0RDTA74mzYNQA9ow==} engines: {node: '>=18'} cpu: [arm64] os: [openbsd] @@ -866,8 +866,8 @@ packages: cpu: [x64] os: [openbsd] - '@esbuild/openbsd-x64@0.27.3': - resolution: {integrity: sha512-DnW2sRrBzA+YnE70LKqnM3P+z8vehfJWHXECbwBmH/CU51z6FiqTQTHFenPlHmo3a8UgpLyH3PT+87OViOh1AQ==} + '@esbuild/openbsd-x64@0.27.4': + resolution: {integrity: sha512-u8fg/jQ5aQDfsnIV6+KwLOf1CmJnfu1ShpwqdwC0uA7ZPwFws55Ngc12vBdeUdnuWoQYx/SOQLGDcdlfXhYmXQ==} engines: {node: '>=18'} cpu: [x64] os: [openbsd] @@ -878,8 +878,8 @@ packages: cpu: [arm64] os: [openharmony] - '@esbuild/openharmony-arm64@0.27.3': - resolution: {integrity: sha512-NinAEgr/etERPTsZJ7aEZQvvg/A6IsZG/LgZy+81wON2huV7SrK3e63dU0XhyZP4RKGyTm7aOgmQk0bGp0fy2g==} + '@esbuild/openharmony-arm64@0.27.4': + resolution: {integrity: sha512-JkTZrl6VbyO8lDQO3yv26nNr2RM2yZzNrNHEsj9bm6dOwwu9OYN28CjzZkH57bh4w0I2F7IodpQvUAEd1mbWXg==} engines: {node: '>=18'} cpu: [arm64] os: [openharmony] @@ -890,8 +890,8 @@ packages: cpu: [x64] os: [sunos] - '@esbuild/sunos-x64@0.27.3': - resolution: {integrity: sha512-PanZ+nEz+eWoBJ8/f8HKxTTD172SKwdXebZ0ndd953gt1HRBbhMsaNqjTyYLGLPdoWHy4zLU7bDVJztF5f3BHA==} + '@esbuild/sunos-x64@0.27.4': + resolution: {integrity: sha512-/gOzgaewZJfeJTlsWhvUEmUG4tWEY2Spp5M20INYRg2ZKl9QPO3QEEgPeRtLjEWSW8FilRNacPOg8R1uaYkA6g==} engines: {node: '>=18'} cpu: [x64] os: [sunos] @@ -902,8 +902,8 @@ packages: cpu: [arm64] os: [win32] - '@esbuild/win32-arm64@0.27.3': - resolution: {integrity: sha512-B2t59lWWYrbRDw/tjiWOuzSsFh1Y/E95ofKz7rIVYSQkUYBjfSgf6oeYPNWHToFRr2zx52JKApIcAS/D5TUBnA==} + '@esbuild/win32-arm64@0.27.4': + resolution: {integrity: sha512-Z9SExBg2y32smoDQdf1HRwHRt6vAHLXcxD2uGgO/v2jK7Y718Ix4ndsbNMU/+1Qiem9OiOdaqitioZwxivhXYg==} engines: {node: '>=18'} cpu: [arm64] os: [win32] @@ -914,8 +914,8 @@ packages: cpu: [ia32] os: [win32] - '@esbuild/win32-ia32@0.27.3': - resolution: {integrity: sha512-QLKSFeXNS8+tHW7tZpMtjlNb7HKau0QDpwm49u0vUp9y1WOF+PEzkU84y9GqYaAVW8aH8f3GcBck26jh54cX4Q==} + '@esbuild/win32-ia32@0.27.4': + resolution: {integrity: sha512-DAyGLS0Jz5G5iixEbMHi5KdiApqHBWMGzTtMiJ72ZOLhbu/bzxgAe8Ue8CTS3n3HbIUHQz/L51yMdGMeoxXNJw==} engines: {node: '>=18'} cpu: [ia32] os: [win32] @@ -926,8 +926,8 @@ packages: cpu: [x64] os: [win32] - '@esbuild/win32-x64@0.27.3': - resolution: {integrity: sha512-4uJGhsxuptu3OcpVAzli+/gWusVGwZZHTlS63hh++ehExkVT8SgiEf7/uC/PclrPPkLhZqGgCTjd0VWLo6xMqA==} + '@esbuild/win32-x64@0.27.4': + resolution: {integrity: sha512-+knoa0BDoeXgkNvvV1vvbZX4+hizelrkwmGJBdT17t8FNPwG2lKemmuMZlmaNQ3ws3DKKCxpb4zRZEIp3UxFCg==} engines: {node: '>=18'} cpu: [x64] os: [win32] @@ -2711,8 +2711,8 @@ packages: engines: {node: '>=18'} hasBin: true - esbuild@0.27.3: - resolution: {integrity: sha512-8VwMnyGCONIs6cWue2IdpHxHnAjzxnw2Zr7MkVxB2vjmQ2ivqGFb4LEG3SMnv0Gb2F/G/2yA8zUaiL1gywDCCg==} + esbuild@0.27.4: + resolution: {integrity: sha512-Rq4vbHnYkK5fws5NF7MYTU68FPRE1ajX7heQ/8QXXWqNgqqJ/GkmmyxIzUnf2Sr/bakf8l54716CcMGHYhMrrQ==} engines: {node: '>=18'} hasBin: true @@ -5441,157 +5441,157 @@ snapshots: '@esbuild/aix-ppc64@0.27.1': optional: true - '@esbuild/aix-ppc64@0.27.3': + '@esbuild/aix-ppc64@0.27.4': optional: true '@esbuild/android-arm64@0.27.1': optional: true - '@esbuild/android-arm64@0.27.3': + '@esbuild/android-arm64@0.27.4': optional: true '@esbuild/android-arm@0.27.1': optional: true - '@esbuild/android-arm@0.27.3': + '@esbuild/android-arm@0.27.4': optional: true '@esbuild/android-x64@0.27.1': optional: true - '@esbuild/android-x64@0.27.3': + '@esbuild/android-x64@0.27.4': optional: true '@esbuild/darwin-arm64@0.27.1': optional: true - '@esbuild/darwin-arm64@0.27.3': + '@esbuild/darwin-arm64@0.27.4': optional: true '@esbuild/darwin-x64@0.27.1': optional: true - '@esbuild/darwin-x64@0.27.3': + '@esbuild/darwin-x64@0.27.4': optional: true '@esbuild/freebsd-arm64@0.27.1': optional: true - '@esbuild/freebsd-arm64@0.27.3': + '@esbuild/freebsd-arm64@0.27.4': optional: true '@esbuild/freebsd-x64@0.27.1': optional: true - '@esbuild/freebsd-x64@0.27.3': + '@esbuild/freebsd-x64@0.27.4': optional: true '@esbuild/linux-arm64@0.27.1': optional: true - '@esbuild/linux-arm64@0.27.3': + '@esbuild/linux-arm64@0.27.4': optional: true '@esbuild/linux-arm@0.27.1': optional: true - '@esbuild/linux-arm@0.27.3': + '@esbuild/linux-arm@0.27.4': optional: true '@esbuild/linux-ia32@0.27.1': optional: true - '@esbuild/linux-ia32@0.27.3': + '@esbuild/linux-ia32@0.27.4': optional: true '@esbuild/linux-loong64@0.27.1': optional: true - '@esbuild/linux-loong64@0.27.3': + '@esbuild/linux-loong64@0.27.4': optional: true '@esbuild/linux-mips64el@0.27.1': optional: true - '@esbuild/linux-mips64el@0.27.3': + '@esbuild/linux-mips64el@0.27.4': optional: true '@esbuild/linux-ppc64@0.27.1': optional: true - '@esbuild/linux-ppc64@0.27.3': + '@esbuild/linux-ppc64@0.27.4': optional: true '@esbuild/linux-riscv64@0.27.1': optional: true - '@esbuild/linux-riscv64@0.27.3': + '@esbuild/linux-riscv64@0.27.4': optional: true '@esbuild/linux-s390x@0.27.1': optional: true - '@esbuild/linux-s390x@0.27.3': + '@esbuild/linux-s390x@0.27.4': optional: true '@esbuild/linux-x64@0.27.1': optional: true - '@esbuild/linux-x64@0.27.3': + '@esbuild/linux-x64@0.27.4': optional: true '@esbuild/netbsd-arm64@0.27.1': optional: true - '@esbuild/netbsd-arm64@0.27.3': + '@esbuild/netbsd-arm64@0.27.4': optional: true '@esbuild/netbsd-x64@0.27.1': optional: true - '@esbuild/netbsd-x64@0.27.3': + '@esbuild/netbsd-x64@0.27.4': optional: true '@esbuild/openbsd-arm64@0.27.1': optional: true - '@esbuild/openbsd-arm64@0.27.3': + '@esbuild/openbsd-arm64@0.27.4': optional: true '@esbuild/openbsd-x64@0.27.1': optional: true - '@esbuild/openbsd-x64@0.27.3': + '@esbuild/openbsd-x64@0.27.4': optional: true '@esbuild/openharmony-arm64@0.27.1': optional: true - '@esbuild/openharmony-arm64@0.27.3': + '@esbuild/openharmony-arm64@0.27.4': optional: true '@esbuild/sunos-x64@0.27.1': optional: true - '@esbuild/sunos-x64@0.27.3': + '@esbuild/sunos-x64@0.27.4': optional: true '@esbuild/win32-arm64@0.27.1': optional: true - '@esbuild/win32-arm64@0.27.3': + '@esbuild/win32-arm64@0.27.4': optional: true '@esbuild/win32-ia32@0.27.1': optional: true - '@esbuild/win32-ia32@0.27.3': + '@esbuild/win32-ia32@0.27.4': optional: true '@esbuild/win32-x64@0.27.1': optional: true - '@esbuild/win32-x64@0.27.3': + '@esbuild/win32-x64@0.27.4': optional: true '@eslint-community/eslint-utils@4.9.1(eslint@10.0.3)': @@ -7389,34 +7389,34 @@ snapshots: '@esbuild/win32-ia32': 0.27.1 '@esbuild/win32-x64': 0.27.1 - esbuild@0.27.3: + esbuild@0.27.4: optionalDependencies: - '@esbuild/aix-ppc64': 0.27.3 - '@esbuild/android-arm': 0.27.3 - '@esbuild/android-arm64': 0.27.3 - '@esbuild/android-x64': 0.27.3 - '@esbuild/darwin-arm64': 0.27.3 - '@esbuild/darwin-x64': 0.27.3 - '@esbuild/freebsd-arm64': 0.27.3 - '@esbuild/freebsd-x64': 0.27.3 - '@esbuild/linux-arm': 0.27.3 - '@esbuild/linux-arm64': 0.27.3 - '@esbuild/linux-ia32': 0.27.3 - '@esbuild/linux-loong64': 0.27.3 - '@esbuild/linux-mips64el': 0.27.3 - '@esbuild/linux-ppc64': 0.27.3 - '@esbuild/linux-riscv64': 0.27.3 - '@esbuild/linux-s390x': 0.27.3 - '@esbuild/linux-x64': 0.27.3 - '@esbuild/netbsd-arm64': 0.27.3 - '@esbuild/netbsd-x64': 0.27.3 - '@esbuild/openbsd-arm64': 0.27.3 - '@esbuild/openbsd-x64': 0.27.3 - '@esbuild/openharmony-arm64': 0.27.3 - '@esbuild/sunos-x64': 0.27.3 - '@esbuild/win32-arm64': 0.27.3 - '@esbuild/win32-ia32': 0.27.3 - '@esbuild/win32-x64': 0.27.3 + '@esbuild/aix-ppc64': 0.27.4 + '@esbuild/android-arm': 0.27.4 + '@esbuild/android-arm64': 0.27.4 + '@esbuild/android-x64': 0.27.4 + '@esbuild/darwin-arm64': 0.27.4 + '@esbuild/darwin-x64': 0.27.4 + '@esbuild/freebsd-arm64': 0.27.4 + '@esbuild/freebsd-x64': 0.27.4 + '@esbuild/linux-arm': 0.27.4 + '@esbuild/linux-arm64': 0.27.4 + '@esbuild/linux-ia32': 0.27.4 + '@esbuild/linux-loong64': 0.27.4 + '@esbuild/linux-mips64el': 0.27.4 + '@esbuild/linux-ppc64': 0.27.4 + '@esbuild/linux-riscv64': 0.27.4 + '@esbuild/linux-s390x': 0.27.4 + '@esbuild/linux-x64': 0.27.4 + '@esbuild/netbsd-arm64': 0.27.4 + '@esbuild/netbsd-x64': 0.27.4 + '@esbuild/openbsd-arm64': 0.27.4 + '@esbuild/openbsd-x64': 0.27.4 + '@esbuild/openharmony-arm64': 0.27.4 + '@esbuild/sunos-x64': 0.27.4 + '@esbuild/win32-arm64': 0.27.4 + '@esbuild/win32-ia32': 0.27.4 + '@esbuild/win32-x64': 0.27.4 escalade@3.2.0: {} @@ -9890,7 +9890,7 @@ snapshots: vite@7.3.1(@types/node@25.4.0)(lightningcss@1.30.2)(tsx@4.21.0): dependencies: - esbuild: 0.27.3 + esbuild: 0.27.4 fdir: 6.5.0(picomatch@4.0.3) picomatch: 4.0.3 postcss: 8.5.6 diff --git a/src/package.json b/src/package.json index 0b5208c923f..d530d39568f 100644 --- a/src/package.json +++ b/src/package.json @@ -36,7 +36,7 @@ "cross-env": "^10.1.0", "cross-spawn": "^7.0.6", "ejs": "^5.0.1", - "esbuild": "^0.27.3", + "esbuild": "^0.27.4", "express": "^5.2.1", "express-rate-limit": "^8.2.2", "express-session": "^1.19.0", From 7bd7102cd528202cc48b74c71b771ac807160ddf Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri, 13 Mar 2026 11:38:04 +0000 Subject: [PATCH 028/130] build(deps): bump express-rate-limit from 8.2.2 to 8.3.1 (#7359) Bumps [express-rate-limit](https://github.com/express-rate-limit/express-rate-limit) from 8.2.2 to 8.3.1. - [Release notes](https://github.com/express-rate-limit/express-rate-limit/releases) - [Commits](https://github.com/express-rate-limit/express-rate-limit/compare/v8.2.2...v8.3.1) --- updated-dependencies: - dependency-name: express-rate-limit dependency-version: 8.3.1 dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- pnpm-lock.yaml | 10 +++++----- src/package.json | 2 +- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 9ae1ed5605e..735d7a76f09 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -172,8 +172,8 @@ importers: specifier: ^5.2.1 version: 5.2.1 express-rate-limit: - specifier: ^8.2.2 - version: 8.2.2(express@5.2.1) + specifier: ^8.3.1 + version: 8.3.1(express@5.2.1) express-session: specifier: ^1.19.0 version: 1.19.0 @@ -2928,8 +2928,8 @@ packages: resolution: {integrity: sha512-knvyeauYhqjOYvQ66MznSMs83wmHrCycNEN6Ao+2AeYEfxUIkuiVxdEa1qlGEPK+We3n0THiDciYSsCcgW/DoA==} engines: {node: '>=12.0.0'} - express-rate-limit@8.2.2: - resolution: {integrity: sha512-Ybv7bqtOgA914MLwaHWVFXMpMYeR1MQu/D+z2MaLYteqBsTIp9sY3AU7mGNLMJv8eLg8uQMpE20I+L2Lv49nSg==} + express-rate-limit@8.3.1: + resolution: {integrity: sha512-D1dKN+cmyPWuvB+G2SREQDzPY1agpBIcTa9sJxOPMCNeH3gwzhqJRDWCXW3gg0y//+LQ/8j52JbMROWyrKdMdw==} engines: {node: '>= 16'} peerDependencies: express: '>= 4.11' @@ -7685,7 +7685,7 @@ snapshots: expect-type@1.3.0: {} - express-rate-limit@8.2.2(express@5.2.1): + express-rate-limit@8.3.1(express@5.2.1): dependencies: express: 5.2.1 ip-address: 10.1.0 diff --git a/src/package.json b/src/package.json index d530d39568f..f4d39896127 100644 --- a/src/package.json +++ b/src/package.json @@ -38,7 +38,7 @@ "ejs": "^5.0.1", "esbuild": "^0.27.4", "express": "^5.2.1", - "express-rate-limit": "^8.2.2", + "express-rate-limit": "^8.3.1", "express-session": "^1.19.0", "find-root": "1.1.0", "formidable": "^3.5.4", From d3c34187e8b3e3a8b594024a7df30b3c641bbd18 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Sat, 14 Mar 2026 10:54:04 +0000 Subject: [PATCH 029/130] build(deps-dev): bump the dev-dependencies group with 3 updates (#7368) Bumps the dev-dependencies group with 3 updates: [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node), [@vitejs/plugin-react](https://github.com/vitejs/vite-plugin-react/tree/HEAD/packages/plugin-react) and [vite-plugin-static-copy](https://github.com/sapphi-red/vite-plugin-static-copy). Updates `@types/node` from 25.4.0 to 25.5.0 - [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases) - [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node) Updates `@vitejs/plugin-react` from 6.0.0 to 6.0.1 - [Release notes](https://github.com/vitejs/vite-plugin-react/releases) - [Changelog](https://github.com/vitejs/vite-plugin-react/blob/main/packages/plugin-react/CHANGELOG.md) - [Commits](https://github.com/vitejs/vite-plugin-react/commits/plugin-react@6.0.1/packages/plugin-react) Updates `vite-plugin-static-copy` from 3.2.0 to 3.3.0 - [Release notes](https://github.com/sapphi-red/vite-plugin-static-copy/releases) - [Changelog](https://github.com/sapphi-red/vite-plugin-static-copy/blob/main/CHANGELOG.md) - [Commits](https://github.com/sapphi-red/vite-plugin-static-copy/compare/vite-plugin-static-copy@3.2.0...vite-plugin-static-copy@3.3.0) --- updated-dependencies: - dependency-name: "@types/node" dependency-version: 25.5.0 dependency-type: direct:development update-type: version-update:semver-minor dependency-group: dev-dependencies - dependency-name: "@vitejs/plugin-react" dependency-version: 6.0.1 dependency-type: direct:development update-type: version-update:semver-patch dependency-group: dev-dependencies - dependency-name: vite-plugin-static-copy dependency-version: 3.3.0 dependency-type: direct:development update-type: version-update:semver-minor dependency-group: dev-dependencies ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- admin/package.json | 4 +- bin/package.json | 2 +- pnpm-lock.yaml | 128 ++++++++++++++++++++++----------------------- src/package.json | 2 +- 4 files changed, 68 insertions(+), 68 deletions(-) diff --git a/admin/package.json b/admin/package.json index 7949da5b70c..9b7f430c38b 100644 --- a/admin/package.json +++ b/admin/package.json @@ -20,7 +20,7 @@ "@types/react-dom": "^19.2.3", "@typescript-eslint/eslint-plugin": "^8.57.0", "@typescript-eslint/parser": "^8.57.0", - "@vitejs/plugin-react": "^6.0.0", + "@vitejs/plugin-react": "^6.0.1", "babel-plugin-react-compiler": "19.1.0-rc.3", "eslint": "^10.0.3", "eslint-plugin-react-hooks": "^7.0.1", @@ -37,7 +37,7 @@ "typescript": "^5.9.3", "vite": "npm:rolldown-vite@7.2.10", "vite-plugin-babel": "^1.5.1", - "vite-plugin-static-copy": "^3.2.0", + "vite-plugin-static-copy": "^3.3.0", "zustand": "^5.0.11" }, "overrides": { diff --git a/bin/package.json b/bin/package.json index 2067825b562..a2761920928 100644 --- a/bin/package.json +++ b/bin/package.json @@ -15,7 +15,7 @@ "ueberdb2": "^5.0.23" }, "devDependencies": { - "@types/node": "^25.4.0", + "@types/node": "^25.5.0", "@types/semver": "^7.7.1", "typescript": "^5.9.3" }, diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 735d7a76f09..06d28a8c94d 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -47,8 +47,8 @@ importers: specifier: ^8.57.0 version: 8.57.0(eslint@10.0.3)(typescript@5.9.3) '@vitejs/plugin-react': - specifier: ^6.0.0 - version: 6.0.0(babel-plugin-react-compiler@19.1.0-rc.3)(rolldown-vite@7.2.10(@types/node@25.4.0)(tsx@4.21.0)) + specifier: ^6.0.1 + version: 6.0.1(babel-plugin-react-compiler@19.1.0-rc.3)(rolldown-vite@7.2.10(@types/node@25.5.0)(tsx@4.21.0)) babel-plugin-react-compiler: specifier: 19.1.0-rc.3 version: 19.1.0-rc.3 @@ -93,13 +93,13 @@ importers: version: 5.9.3 vite: specifier: npm:rolldown-vite@7.2.10 - version: rolldown-vite@7.2.10(@types/node@25.4.0)(tsx@4.21.0) + version: rolldown-vite@7.2.10(@types/node@25.5.0)(tsx@4.21.0) vite-plugin-babel: specifier: ^1.5.1 - version: 1.5.1(@babel/core@7.29.0)(rolldown-vite@7.2.10(@types/node@25.4.0)(tsx@4.21.0)) + version: 1.5.1(@babel/core@7.29.0)(rolldown-vite@7.2.10(@types/node@25.5.0)(tsx@4.21.0)) vite-plugin-static-copy: - specifier: ^3.2.0 - version: 3.2.0(rolldown-vite@7.2.10(@types/node@25.4.0)(tsx@4.21.0)) + specifier: ^3.3.0 + version: 3.3.0(rolldown-vite@7.2.10(@types/node@25.5.0)(tsx@4.21.0)) zustand: specifier: ^5.0.11 version: 5.0.11(@types/react@19.2.14)(react@19.2.4)(use-sync-external-store@1.6.0(react@19.2.4)) @@ -126,8 +126,8 @@ importers: version: 5.0.23 devDependencies: '@types/node': - specifier: ^25.4.0 - version: 25.4.0 + specifier: ^25.5.0 + version: 25.5.0 '@types/semver': specifier: ^7.7.1 version: 7.7.1 @@ -143,7 +143,7 @@ importers: devDependencies: vitepress: specifier: ^2.0.0-alpha.16 - version: 2.0.0-alpha.16(@types/node@25.4.0)(axios@1.13.6)(jwt-decode@4.0.0)(lightningcss@1.30.2)(postcss@8.5.6)(tsx@4.21.0)(typescript@5.9.3) + version: 2.0.0-alpha.16(@types/node@25.5.0)(axios@1.13.6)(jwt-decode@4.0.0)(lightningcss@1.30.2)(postcss@8.5.6)(tsx@4.21.0)(typescript@5.9.3) src: dependencies: @@ -338,8 +338,8 @@ importers: specifier: ^10.0.9 version: 10.0.10 '@types/node': - specifier: ^25.4.0 - version: 25.4.0 + specifier: ^25.5.0 + version: 25.5.0 '@types/oidc-provider': specifier: ^9.5.0 version: 9.5.0 @@ -402,7 +402,7 @@ importers: version: 5.9.3 vitest: specifier: ^4.1.0 - version: 4.1.0(@opentelemetry/api@1.9.0)(@types/node@25.4.0)(jsdom@28.1.0(@noble/hashes@1.8.0))(vite@7.3.1(@types/node@25.4.0)(lightningcss@1.30.2)(tsx@4.21.0)) + version: 4.1.0(@opentelemetry/api@1.9.0)(@types/node@25.5.0)(jsdom@28.1.0(@noble/hashes@1.8.0))(vite@7.3.1(@types/node@25.5.0)(lightningcss@1.30.2)(tsx@4.21.0)) ui: devDependencies: @@ -414,7 +414,7 @@ importers: version: 5.9.3 vite: specifier: npm:rolldown-vite@7.2.10 - version: rolldown-vite@7.2.10(@types/node@25.4.0)(tsx@4.21.0) + version: rolldown-vite@7.2.10(@types/node@25.5.0)(tsx@4.21.0) packages: @@ -1718,8 +1718,8 @@ packages: '@types/node-fetch@2.6.12': resolution: {integrity: sha512-8nneRWKCg3rMtF69nLQJnOYUcbafYeFSjqkw3jCRLsqkWFlHaoQrr5mXmofFGOx3DKn7UfmBMyov8ySvLRVldA==} - '@types/node@25.4.0': - resolution: {integrity: sha512-9wLpoeWuBlcbBpOY3XmzSTG3oscB6xjBEEtn+pYXTfhyXhIxC5FsBer2KTopBlvKEiW9l13po9fq+SJY/5lkhw==} + '@types/node@25.5.0': + resolution: {integrity: sha512-jp2P3tQMSxWugkCUKLRPVUpGaL5MVFwF8RDuSRztfwgN1wmqJeMSbKlnEtQqU8UrhTmzEmZdu2I6v2dpp7XIxw==} '@types/oidc-provider@9.5.0': resolution: {integrity: sha512-eEzCRVTSqIHD9Bo/qRJ4XQWQ5Z/zBcG+Z2cGJluRsSuWx1RJihqRyPxhIEpMXTwPzHYRTQkVp7hwisQOwzzSAg==} @@ -1984,11 +1984,11 @@ packages: cpu: [x64] os: [win32] - '@vitejs/plugin-react@6.0.0': - resolution: {integrity: sha512-Bu5/eP6td3WI654+tRq+ryW1PbgA90y5pqMKpb3U7UpNk6VjI53P/ncPUd192U9dSrepLy7DHnq1XEMDz5H++w==} + '@vitejs/plugin-react@6.0.1': + resolution: {integrity: sha512-l9X/E3cDb+xY3SWzlG1MOGt2usfEHGMNIaegaUGFsLkb3RCn/k8/TOXBcab+OndDI4TBtktT8/9BwwW8Vi9KUQ==} engines: {node: ^20.19.0 || >=22.12.0} peerDependencies: - '@rolldown/plugin-babel': ^0.1.7 + '@rolldown/plugin-babel': ^0.1.7 || ^0.2.0 babel-plugin-react-compiler: ^1.0.0 vite: ^8.0.0 peerDependenciesMeta: @@ -4900,11 +4900,11 @@ packages: '@babel/core': ^7.0.0 vite: ^2.7.0 || ^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 - vite-plugin-static-copy@3.2.0: - resolution: {integrity: sha512-g2k9z8B/1Bx7D4wnFjPLx9dyYGrqWMLTpwTtPHhcU+ElNZP2O4+4OsyaficiDClus0dzVhdGvoGFYMJxoXZ12Q==} + vite-plugin-static-copy@3.3.0: + resolution: {integrity: sha512-XiAtZcev7nppxNFgKoD55rfL+ukVp/RtrnTJONRwRuzv/B2FK2h2ZRCYjvxhwBV/Oarse83SiyXBSxMTfeEM0Q==} engines: {node: ^18.0.0 || >=20.0.0} peerDependencies: - vite: ^5.0.0 || ^6.0.0 || ^7.0.0 + vite: ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0 vite@7.3.1: resolution: {integrity: sha512-w+N7Hifpc3gRjZ63vYBXA56dvvRlNWRczTdmCBBa+CotUzAPf5b7YMdMR/8CQoeYE5LX3W4wj6RYTgonm1b9DA==} @@ -6140,14 +6140,14 @@ snapshots: '@types/accepts@1.3.7': dependencies: - '@types/node': 25.4.0 + '@types/node': 25.5.0 '@types/async@3.2.25': {} '@types/body-parser@1.19.6': dependencies: '@types/connect': 3.4.38 - '@types/node': 25.4.0 + '@types/node': 25.5.0 '@types/chai@5.2.3': dependencies: @@ -6156,7 +6156,7 @@ snapshots: '@types/connect@3.4.38': dependencies: - '@types/node': 25.4.0 + '@types/node': 25.5.0 '@types/content-disposition@0.5.9': {} @@ -6171,15 +6171,15 @@ snapshots: '@types/connect': 3.4.38 '@types/express': 5.0.6 '@types/keygrip': 1.0.6 - '@types/node': 25.4.0 + '@types/node': 25.5.0 '@types/cors@2.8.19': dependencies: - '@types/node': 25.4.0 + '@types/node': 25.5.0 '@types/cross-spawn@6.0.6': dependencies: - '@types/node': 25.4.0 + '@types/node': 25.5.0 '@types/debug@4.1.12': dependencies: @@ -6195,7 +6195,7 @@ snapshots: '@types/express-serve-static-core@5.1.0': dependencies: - '@types/node': 25.4.0 + '@types/node': 25.5.0 '@types/qs': 6.14.0 '@types/range-parser': 1.2.7 '@types/send': 1.2.1 @@ -6212,11 +6212,11 @@ snapshots: '@types/formidable@3.5.0': dependencies: - '@types/node': 25.4.0 + '@types/node': 25.5.0 '@types/fs-extra@9.0.13': dependencies: - '@types/node': 25.4.0 + '@types/node': 25.5.0 '@types/hast@3.0.4': dependencies: @@ -6232,7 +6232,7 @@ snapshots: '@types/jsdom@28.0.0': dependencies: - '@types/node': 25.4.0 + '@types/node': 25.5.0 '@types/tough-cookie': 4.0.5 parse5: 7.3.0 undici-types: 7.22.0 @@ -6246,7 +6246,7 @@ snapshots: '@types/jsonwebtoken@9.0.10': dependencies: '@types/ms': 2.1.0 - '@types/node': 25.4.0 + '@types/node': 25.5.0 '@types/keygrip@1.0.6': {} @@ -6263,7 +6263,7 @@ snapshots: '@types/http-errors': 2.0.5 '@types/keygrip': 1.0.6 '@types/koa-compose': 3.2.8 - '@types/node': 25.4.0 + '@types/node': 25.5.0 '@types/linkify-it@5.0.0': {} @@ -6292,10 +6292,10 @@ snapshots: '@types/node-fetch@2.6.12': dependencies: - '@types/node': 25.4.0 + '@types/node': 25.5.0 form-data: 4.0.5 - '@types/node@25.4.0': + '@types/node@25.5.0': dependencies: undici-types: 7.18.2 @@ -6303,7 +6303,7 @@ snapshots: dependencies: '@types/keygrip': 1.0.6 '@types/koa': 3.0.0 - '@types/node': 25.4.0 + '@types/node': 25.5.0 '@types/qs@6.14.0': {} @@ -6322,22 +6322,22 @@ snapshots: '@types/send@0.17.4': dependencies: '@types/mime': 1.3.5 - '@types/node': 25.4.0 + '@types/node': 25.5.0 '@types/send@1.2.1': dependencies: - '@types/node': 25.4.0 + '@types/node': 25.5.0 '@types/serve-static@1.15.7': dependencies: '@types/http-errors': 2.0.5 - '@types/node': 25.4.0 + '@types/node': 25.5.0 '@types/send': 0.17.4 '@types/serve-static@2.2.0': dependencies: '@types/http-errors': 2.0.5 - '@types/node': 25.4.0 + '@types/node': 25.5.0 '@types/sinon@21.0.0': dependencies: @@ -6349,7 +6349,7 @@ snapshots: dependencies: '@types/cookiejar': 2.1.5 '@types/methods': 1.1.4 - '@types/node': 25.4.0 + '@types/node': 25.5.0 form-data: 4.0.5 '@types/supertest@7.2.0': @@ -6364,7 +6364,7 @@ snapshots: '@types/tar@6.1.13': dependencies: - '@types/node': 25.4.0 + '@types/node': 25.5.0 minipass: 4.2.8 '@types/tough-cookie@4.0.5': {} @@ -6600,17 +6600,17 @@ snapshots: '@unrs/resolver-binding-win32-x64-msvc@1.3.3': optional: true - '@vitejs/plugin-react@6.0.0(babel-plugin-react-compiler@19.1.0-rc.3)(rolldown-vite@7.2.10(@types/node@25.4.0)(tsx@4.21.0))': + '@vitejs/plugin-react@6.0.1(babel-plugin-react-compiler@19.1.0-rc.3)(rolldown-vite@7.2.10(@types/node@25.5.0)(tsx@4.21.0))': dependencies: '@rolldown/pluginutils': 1.0.0-rc.7 - vite: rolldown-vite@7.2.10(@types/node@25.4.0)(tsx@4.21.0) + vite: rolldown-vite@7.2.10(@types/node@25.5.0)(tsx@4.21.0) optionalDependencies: babel-plugin-react-compiler: 19.1.0-rc.3 - '@vitejs/plugin-vue@6.0.4(vite@7.3.1(@types/node@25.4.0)(lightningcss@1.30.2)(tsx@4.21.0))(vue@3.5.27(typescript@5.9.3))': + '@vitejs/plugin-vue@6.0.4(vite@7.3.1(@types/node@25.5.0)(lightningcss@1.30.2)(tsx@4.21.0))(vue@3.5.27(typescript@5.9.3))': dependencies: '@rolldown/pluginutils': 1.0.0-rc.2 - vite: 7.3.1(@types/node@25.4.0)(lightningcss@1.30.2)(tsx@4.21.0) + vite: 7.3.1(@types/node@25.5.0)(lightningcss@1.30.2)(tsx@4.21.0) vue: 3.5.27(typescript@5.9.3) '@vitest/expect@4.1.0': @@ -6622,13 +6622,13 @@ snapshots: chai: 6.2.2 tinyrainbow: 3.1.0 - '@vitest/mocker@4.1.0(vite@7.3.1(@types/node@25.4.0)(lightningcss@1.30.2)(tsx@4.21.0))': + '@vitest/mocker@4.1.0(vite@7.3.1(@types/node@25.5.0)(lightningcss@1.30.2)(tsx@4.21.0))': dependencies: '@vitest/spy': 4.1.0 estree-walker: 3.0.3 magic-string: 0.30.21 optionalDependencies: - vite: 7.3.1(@types/node@25.4.0)(lightningcss@1.30.2)(tsx@4.21.0) + vite: 7.3.1(@types/node@25.5.0)(lightningcss@1.30.2)(tsx@4.21.0) '@vitest/pretty-format@4.1.0': dependencies: @@ -7262,7 +7262,7 @@ snapshots: engine.io@6.6.5: dependencies: '@types/cors': 2.8.19 - '@types/node': 25.4.0 + '@types/node': 25.5.0 accepts: 1.3.8 base64id: 2.0.0 cookie: 0.7.2 @@ -9148,7 +9148,7 @@ snapshots: rfdc@1.4.1: {} - rolldown-vite@7.2.10(@types/node@25.4.0)(tsx@4.21.0): + rolldown-vite@7.2.10(@types/node@25.5.0)(tsx@4.21.0): dependencies: '@oxc-project/runtime': 0.101.0 fdir: 6.5.0(picomatch@4.0.3) @@ -9158,7 +9158,7 @@ snapshots: rolldown: 1.0.0-beta.53 tinyglobby: 0.2.15 optionalDependencies: - '@types/node': 25.4.0 + '@types/node': 25.5.0 fsevents: 2.3.3 tsx: 4.21.0 @@ -9875,20 +9875,20 @@ snapshots: '@types/unist': 3.0.3 vfile-message: 4.0.2 - vite-plugin-babel@1.5.1(@babel/core@7.29.0)(rolldown-vite@7.2.10(@types/node@25.4.0)(tsx@4.21.0)): + vite-plugin-babel@1.5.1(@babel/core@7.29.0)(rolldown-vite@7.2.10(@types/node@25.5.0)(tsx@4.21.0)): dependencies: '@babel/core': 7.29.0 - vite: rolldown-vite@7.2.10(@types/node@25.4.0)(tsx@4.21.0) + vite: rolldown-vite@7.2.10(@types/node@25.5.0)(tsx@4.21.0) - vite-plugin-static-copy@3.2.0(rolldown-vite@7.2.10(@types/node@25.4.0)(tsx@4.21.0)): + vite-plugin-static-copy@3.3.0(rolldown-vite@7.2.10(@types/node@25.5.0)(tsx@4.21.0)): dependencies: chokidar: 3.6.0 p-map: 7.0.4 picocolors: 1.1.1 tinyglobby: 0.2.15 - vite: rolldown-vite@7.2.10(@types/node@25.4.0)(tsx@4.21.0) + vite: rolldown-vite@7.2.10(@types/node@25.5.0)(tsx@4.21.0) - vite@7.3.1(@types/node@25.4.0)(lightningcss@1.30.2)(tsx@4.21.0): + vite@7.3.1(@types/node@25.5.0)(lightningcss@1.30.2)(tsx@4.21.0): dependencies: esbuild: 0.27.4 fdir: 6.5.0(picomatch@4.0.3) @@ -9897,12 +9897,12 @@ snapshots: rollup: 4.57.1 tinyglobby: 0.2.15 optionalDependencies: - '@types/node': 25.4.0 + '@types/node': 25.5.0 fsevents: 2.3.3 lightningcss: 1.30.2 tsx: 4.21.0 - vitepress@2.0.0-alpha.16(@types/node@25.4.0)(axios@1.13.6)(jwt-decode@4.0.0)(lightningcss@1.30.2)(postcss@8.5.6)(tsx@4.21.0)(typescript@5.9.3): + vitepress@2.0.0-alpha.16(@types/node@25.5.0)(axios@1.13.6)(jwt-decode@4.0.0)(lightningcss@1.30.2)(postcss@8.5.6)(tsx@4.21.0)(typescript@5.9.3): dependencies: '@docsearch/css': 4.5.3 '@docsearch/js': 4.5.3 @@ -9912,7 +9912,7 @@ snapshots: '@shikijs/transformers': 3.22.0 '@shikijs/types': 3.22.0 '@types/markdown-it': 14.1.2 - '@vitejs/plugin-vue': 6.0.4(vite@7.3.1(@types/node@25.4.0)(lightningcss@1.30.2)(tsx@4.21.0))(vue@3.5.27(typescript@5.9.3)) + '@vitejs/plugin-vue': 6.0.4(vite@7.3.1(@types/node@25.5.0)(lightningcss@1.30.2)(tsx@4.21.0))(vue@3.5.27(typescript@5.9.3)) '@vue/devtools-api': 8.0.6 '@vue/shared': 3.5.27 '@vueuse/core': 14.2.0(vue@3.5.27(typescript@5.9.3)) @@ -9921,7 +9921,7 @@ snapshots: mark.js: 8.11.1 minisearch: 7.2.0 shiki: 3.22.0 - vite: 7.3.1(@types/node@25.4.0)(lightningcss@1.30.2)(tsx@4.21.0) + vite: 7.3.1(@types/node@25.5.0)(lightningcss@1.30.2)(tsx@4.21.0) vue: 3.5.27(typescript@5.9.3) optionalDependencies: postcss: 8.5.6 @@ -9950,10 +9950,10 @@ snapshots: - universal-cookie - yaml - vitest@4.1.0(@opentelemetry/api@1.9.0)(@types/node@25.4.0)(jsdom@28.1.0(@noble/hashes@1.8.0))(vite@7.3.1(@types/node@25.4.0)(lightningcss@1.30.2)(tsx@4.21.0)): + vitest@4.1.0(@opentelemetry/api@1.9.0)(@types/node@25.5.0)(jsdom@28.1.0(@noble/hashes@1.8.0))(vite@7.3.1(@types/node@25.5.0)(lightningcss@1.30.2)(tsx@4.21.0)): dependencies: '@vitest/expect': 4.1.0 - '@vitest/mocker': 4.1.0(vite@7.3.1(@types/node@25.4.0)(lightningcss@1.30.2)(tsx@4.21.0)) + '@vitest/mocker': 4.1.0(vite@7.3.1(@types/node@25.5.0)(lightningcss@1.30.2)(tsx@4.21.0)) '@vitest/pretty-format': 4.1.0 '@vitest/runner': 4.1.0 '@vitest/snapshot': 4.1.0 @@ -9970,11 +9970,11 @@ snapshots: tinyexec: 1.0.2 tinyglobby: 0.2.15 tinyrainbow: 3.1.0 - vite: 7.3.1(@types/node@25.4.0)(lightningcss@1.30.2)(tsx@4.21.0) + vite: 7.3.1(@types/node@25.5.0)(lightningcss@1.30.2)(tsx@4.21.0) why-is-node-running: 2.3.0 optionalDependencies: '@opentelemetry/api': 1.9.0 - '@types/node': 25.4.0 + '@types/node': 25.5.0 jsdom: 28.1.0(@noble/hashes@1.8.0) transitivePeerDependencies: - msw diff --git a/src/package.json b/src/package.json index f4d39896127..befeee7e09b 100644 --- a/src/package.json +++ b/src/package.json @@ -99,7 +99,7 @@ "@types/jsonwebtoken": "^9.0.10", "@types/mime-types": "^3.0.1", "@types/mocha": "^10.0.9", - "@types/node": "^25.4.0", + "@types/node": "^25.5.0", "@types/oidc-provider": "^9.5.0", "@types/semver": "^7.7.1", "@types/sinon": "^21.0.0", From 7e3744165bf9c9d60516e2e3b43a7ea4bf06531f Mon Sep 17 00:00:00 2001 From: "translatewiki.net" Date: Mon, 16 Mar 2026 13:04:13 +0100 Subject: [PATCH 030/130] Localisation updates from https://translatewiki.net. --- src/locales/lb.json | 1 + 1 file changed, 1 insertion(+) diff --git a/src/locales/lb.json b/src/locales/lb.json index 46bd3285a0f..c1f2bc80299 100644 --- a/src/locales/lb.json +++ b/src/locales/lb.json @@ -10,6 +10,7 @@ "admin_plugins.available_install.value": "Installéieren", "admin_plugins.description": "Beschreiwung", "admin_plugins.installed_uninstall.value": "Desinstalléieren", + "admin_plugins.last-update": "Lescht Aktualiséierung", "admin_plugins.name": "Numm", "admin_plugins.version": "Versioun", "admin_plugins_info.version": "Etherpad-Versioun", From de6d13d6d354cef4fe4a4f4d1345afe7dcf73e74 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 16 Mar 2026 16:33:32 +0000 Subject: [PATCH 031/130] build(deps): bump rate-limiter-flexible from 9.1.1 to 10.0.1 (#7374) Bumps [rate-limiter-flexible](https://github.com/animir/node-rate-limiter-flexible) from 9.1.1 to 10.0.1. - [Release notes](https://github.com/animir/node-rate-limiter-flexible/releases) - [Commits](https://github.com/animir/node-rate-limiter-flexible/compare/v9.1.1...v10.0.1) --- updated-dependencies: - dependency-name: rate-limiter-flexible dependency-version: 10.0.1 dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- pnpm-lock.yaml | 10 +++++----- src/package.json | 2 +- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 06d28a8c94d..b54fdc8dc59 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -238,8 +238,8 @@ importers: specifier: ^2.0.7 version: 2.0.7 rate-limiter-flexible: - specifier: ^9.1.1 - version: 9.1.1 + specifier: ^10.0.1 + version: 10.0.1 rehype: specifier: ^13.0.2 version: 13.0.2 @@ -4115,8 +4115,8 @@ packages: resolution: {integrity: sha512-Hrgsx+orqoygnmhFbKaHE6c296J+HTAQXoxEF6gNupROmmGJRoyzfG3ccAveqCBrwr/2yxQ5BVd/GTl5agOwSg==} engines: {node: '>= 0.6'} - rate-limiter-flexible@9.1.1: - resolution: {integrity: sha512-imxFjzPCmvDLMe7d2tsgiSQvs5EI2fI9SNymmslAfOqznZhsZ+PqbIjIYKpuSbd3pKovR1aMG47qfCLIO/adVg==} + rate-limiter-flexible@10.0.1: + resolution: {integrity: sha512-3G6GMFz5Oz5nVnDv9gQ1LLMdExR4B1lOjogPIjehtgyxPMIkY09BGyk2eCYt36/OkV/0t12GEt6J6HpTl6RzZg==} raw-body@3.0.2: resolution: {integrity: sha512-K5zQjDllxWkf7Z5xJdV0/B0WTNqx6vxG70zJE4N0kBs4LovmEYWJzQGxC9bS9RAKu3bgM40lrd5zoLJ12MQ5BA==} @@ -8998,7 +8998,7 @@ snapshots: range-parser@1.2.1: {} - rate-limiter-flexible@9.1.1: {} + rate-limiter-flexible@10.0.1: {} raw-body@3.0.2: dependencies: diff --git a/src/package.json b/src/package.json index befeee7e09b..1a2372cf73d 100644 --- a/src/package.json +++ b/src/package.json @@ -60,7 +60,7 @@ "openapi-backend": "^5.16.1", "prom-client": "^15.1.3", "proxy-addr": "^2.0.7", - "rate-limiter-flexible": "^9.1.1", + "rate-limiter-flexible": "^10.0.1", "rehype": "^13.0.2", "rehype-minify-whitespace": "^6.0.2", "resolve": "1.22.11", From 2a816043c285ffde67abc96ec49aebe330b9d1dd Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 16 Mar 2026 16:33:41 +0000 Subject: [PATCH 032/130] build(deps): bump jsdom from 28.1.0 to 29.0.0 (#7372) Bumps [jsdom](https://github.com/jsdom/jsdom) from 28.1.0 to 29.0.0. - [Release notes](https://github.com/jsdom/jsdom/releases) - [Changelog](https://github.com/jsdom/jsdom/blob/v29.0.0/Changelog.md) - [Commits](https://github.com/jsdom/jsdom/compare/v28.1.0...v29.0.0) --- updated-dependencies: - dependency-name: jsdom dependency-version: 29.0.0 dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- pnpm-lock.yaml | 176 +++++++++++++++++++++++------------------------ src/package.json | 2 +- 2 files changed, 88 insertions(+), 90 deletions(-) diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index b54fdc8dc59..9f3435f1c42 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -193,8 +193,8 @@ importers: specifier: ^3.0.5 version: 3.0.5 jsdom: - specifier: ^28.1.0 - version: 28.1.0(@noble/hashes@1.8.0) + specifier: ^29.0.0 + version: 29.0.0(@noble/hashes@1.8.0) jsonminify: specifier: 0.4.2 version: 0.4.2 @@ -402,7 +402,7 @@ importers: version: 5.9.3 vitest: specifier: ^4.1.0 - version: 4.1.0(@opentelemetry/api@1.9.0)(@types/node@25.5.0)(jsdom@28.1.0(@noble/hashes@1.8.0))(vite@7.3.1(@types/node@25.5.0)(lightningcss@1.30.2)(tsx@4.21.0)) + version: 4.1.0(@opentelemetry/api@1.9.0)(@types/node@25.5.0)(jsdom@29.0.0(@noble/hashes@1.8.0))(vite@7.3.1(@types/node@25.5.0)(lightningcss@1.30.2)(tsx@4.21.0)) ui: devDependencies: @@ -418,18 +418,17 @@ importers: packages: - '@acemir/cssom@0.9.31': - resolution: {integrity: sha512-ZnR3GSaH+/vJ0YlHau21FjfLYjMpYVIzTD8M8vIEQvIGxeOXyXdzCI140rrCY862p/C/BbzWsjc1dgnM9mkoTA==} - '@apidevtools/json-schema-ref-parser@11.9.3': resolution: {integrity: sha512-60vepv88RwcJtSHrD6MjIL6Ta3SOYbgfnkHb+ppAVK+o9mXprRtulx7VlRl3lN3bbvysAfCS7WMVfhUYemB0IQ==} engines: {node: '>= 16'} - '@asamuzakjp/css-color@4.1.2': - resolution: {integrity: sha512-NfBUvBaYgKIuq6E/RBLY1m0IohzNHAYyaJGuTK79Z23uNwmz2jl1mPsC5ZxCCxylinKhT1Amn5oNTlx1wN8cQg==} + '@asamuzakjp/css-color@5.0.1': + resolution: {integrity: sha512-2SZFvqMyvboVV1d15lMf7XiI3m7SDqXUuKaTymJYLN6dSGadqp+fVojqJlVoMlbZnlTmu3S0TLwLTJpvBMO1Aw==} + engines: {node: ^20.19.0 || ^22.12.0 || >=24.0.0} - '@asamuzakjp/dom-selector@6.8.1': - resolution: {integrity: sha512-MvRz1nCqW0fsy8Qz4dnLIvhOlMzqDVBabZx6lH+YywFDdjXhMY37SmpV1XFX3JzG5GWHn63j6HX6QPr3lZXHvQ==} + '@asamuzakjp/dom-selector@7.0.3': + resolution: {integrity: sha512-Q6mU0Z6bfj6YvnX2k9n0JxiIwrCFN59x/nWmYQnAqP000ruX/yV+5bp/GRcF5T8ncvfwJQ7fgfP74DlpKExILA==} + engines: {node: ^20.19.0 || ^22.12.0 || >=24.0.0} '@asamuzakjp/nwsapi@2.3.9': resolution: {integrity: sha512-n8GuYSrI9bF7FFZ/SjhwevlHc8xaVlb/7HmHelnc/PZXBD2ZR49NnN9sMMuDdEGPeeRQ5d0hqlSlEpgCX3Wl0Q==} @@ -568,8 +567,8 @@ packages: resolution: {integrity: sha512-ctxtJ/eA+t+6q2++vj5j7FYX3nRu311q1wfYH3xjlLOsczhlhxAg2FWNUXhpGvAw3BWo1xBcvOV6/YLc2r5FJw==} hasBin: true - '@csstools/color-helpers@6.0.1': - resolution: {integrity: sha512-NmXRccUJMk2AWA5A7e5a//3bCIMyOu2hAtdRYrhPPHjDxINuCwX1w6rnIZ4xjLcp0ayv6h8Pc3X0eJUGiAAXHQ==} + '@csstools/color-helpers@6.0.2': + resolution: {integrity: sha512-LMGQLS9EuADloEFkcTBR3BwV/CGHV7zyDxVRtVDTwdI2Ca4it0CCVTT9wCkxSgokjE5Ho41hEPgb8OEUwoXr6Q==} engines: {node: '>=20.19.0'} '@csstools/css-calc@3.1.1': @@ -579,8 +578,8 @@ packages: '@csstools/css-parser-algorithms': ^4.0.0 '@csstools/css-tokenizer': ^4.0.0 - '@csstools/css-color-parser@4.0.1': - resolution: {integrity: sha512-vYwO15eRBEkeF6xjAno/KQ61HacNhfQuuU/eGwH67DplL0zD5ZixUa563phQvUelA07yDczIXdtmYojCphKJcw==} + '@csstools/css-color-parser@4.0.2': + resolution: {integrity: sha512-0GEfbBLmTFf0dJlpsNU7zwxRIH0/BGEMuXLTCvFYxuL1tNhqzTbtnFICyJLTNK4a+RechKP75e7w42ClXSnJQw==} engines: {node: '>=20.19.0'} peerDependencies: '@csstools/css-parser-algorithms': ^4.0.0 @@ -592,8 +591,13 @@ packages: peerDependencies: '@csstools/css-tokenizer': ^4.0.0 - '@csstools/css-syntax-patches-for-csstree@1.0.27': - resolution: {integrity: sha512-sxP33Jwg1bviSUXAV43cVYdmjt2TLnLXNqCWl9xmxHawWVjGz/kEbdkr7F9pxJNBN2Mh+dq0crgItbW6tQvyow==} + '@csstools/css-syntax-patches-for-csstree@1.1.1': + resolution: {integrity: sha512-BvqN0AMWNAnLk9G8jnUT77D+mUbY/H2b3uDTvg2isJkHaOufUE2R3AOwxWo7VBQKT1lOdwdvorddo2B/lk64+w==} + peerDependencies: + css-tree: ^3.2.1 + peerDependenciesMeta: + css-tree: + optional: true '@csstools/css-tokenizer@4.0.0': resolution: {integrity: sha512-QxULHAm7cNu72w97JUNCBFODFaXpbDg+dP8b/oWFAZ2MTRppA3U00Y2L1HqaS4J6yBqxwa/Y3nMBaxVKbB/NsA==} @@ -962,8 +966,8 @@ packages: resolution: {integrity: sha512-iH1B076HoAshH1mLpHMgwdGeTs0CYwL0SPMkGuSebZrwBp16v415e9NZXg2jtrqPVQjf6IANe2Vtlr5KswtcZQ==} engines: {node: ^20.19.0 || ^22.13.0 || >=24} - '@exodus/bytes@1.14.1': - resolution: {integrity: sha512-OhkBFWI6GcRMUroChZiopRiSp2iAMvEBK47NhJooDqz1RERO4QuZIZnjP63TXX8GAiLABkYmX+fuQsdJ1dd2QQ==} + '@exodus/bytes@1.15.0': + resolution: {integrity: sha512-UY0nlA+feH81UGSHv92sLEPLCeZFjXOuHhrIo0HQydScuQc8s0A7kL/UdgwgDq8g8ilksmuoF35YVTNphV2aBQ==} engines: {node: ^20.19.0 || ^22.12.0 || >=24.0.0} peerDependencies: '@noble/hashes': ^1.8.0 || ^2.0.0 @@ -2467,14 +2471,10 @@ packages: resolution: {integrity: sha512-uV2QOWP2nWzsy2aMp8aRibhi9dlzF5Hgh5SHaB9OiTGEyDTiJJyx0uy51QXdyWbtAHNua4XJzUKca3OzKUd3vA==} engines: {node: '>= 8'} - css-tree@3.1.0: - resolution: {integrity: sha512-0eW44TGN5SQXU1mWSkKwFstI/22X2bG1nYzZTYMAWjylYURhse752YgbE4Cx46AC+bAvI+/dYTPRk1LqSUnu6w==} + css-tree@3.2.1: + resolution: {integrity: sha512-X7sjQzceUhu1u7Y/ylrRZFU2FS6LRiFVp6rKLPg23y3x3c3DOKAwuXGDp+PAGjh6CSnCjYeAul8pcT8bAl+lSA==} engines: {node: ^10 || ^12.20.0 || ^14.13.0 || >=15.0.0} - cssstyle@6.0.1: - resolution: {integrity: sha512-IoJs7La+oFp/AB033wBStxNOJt4+9hHMxsXUPANcoXL2b3W4DZKghlJ2cI/eyeRZIQ9ysvYEorVhjrcYctWbog==} - engines: {node: '>=20'} - csstype@3.2.3: resolution: {integrity: sha512-z1HGKcYy2xA8AGQfwrn0PAy+PB7X/GSj3UVJW9qKyn43xWa+gl5nXmU4qqLMRzWVLFC8KusUX8T/0kCiOYpAIQ==} @@ -3476,9 +3476,9 @@ packages: jsbn@1.1.0: resolution: {integrity: sha512-4bYVV3aAMtDTTu4+xsDYa6sy9GyJ69/amsu9sYF2zqjiEoZA5xJi3BrfX3uY+/IekIu7MwdObdbDWpoZdBv3/A==} - jsdom@28.1.0: - resolution: {integrity: sha512-0+MoQNYyr2rBHqO1xilltfDjV9G7ymYGlAUazgcDLQaUf8JDHbuGwsxN6U9qWaElZ4w1B2r7yEGIL3GdeW3Rug==} - engines: {node: ^20.19.0 || ^22.12.0 || >=24.0.0} + jsdom@29.0.0: + resolution: {integrity: sha512-9FshNB6OepopZ08unmmGpsF7/qCjxGPbo3NbgfJAnPeHXnsODE9WWffXZtRFRFe0ntzaAOcSKNJFz8wiyvF1jQ==} + engines: {node: ^20.19.0 || ^22.13.0 || >=24.0.0} peerDependencies: canvas: ^3.0.0 peerDependenciesMeta: @@ -3690,6 +3690,10 @@ packages: resolution: {integrity: sha512-ESL2CrkS/2wTPfuend7Zhkzo2u0daGJ/A2VucJOgQ/C48S/zB8MMeMHSGKYpXhIjbPxfuezITkaBH1wqv00DDQ==} engines: {node: 20 || >=22} + lru-cache@11.2.7: + resolution: {integrity: sha512-aY/R+aEsRelme17KGQa/1ZSIpLpNYYrhcrepKTZgE+W3WM16YMCaPwOHLHsmopZHELU0Ojin1lPVxKR0MihncA==} + engines: {node: 20 || >=22} + lru-cache@5.1.1: resolution: {integrity: sha512-KpNARQA3Iwv+jTA0utUVVbrh+Jlrr1Fv0e56GGzAFOXN7dk/FviaDW8LHmK52DlcH4WP2n6gI8vN1aesBFgo9w==} @@ -3715,8 +3719,8 @@ packages: mdast-util-to-hast@13.2.1: resolution: {integrity: sha512-cctsq2wp5vTsLIcaymblUriiTcZd0CwWtCbLvrOzYCDZoWyMNV8sZ7krj09FSnsiJi3WVsHLM4k6Dq/yaPyCXA==} - mdn-data@2.12.2: - resolution: {integrity: sha512-IEn+pegP1aManZuckezWCO+XZQDplx1366JoVhTpMpBB1sPey/SbveZQUosKiKiGYjg1wH4pMlNgXbCiYgihQA==} + mdn-data@2.27.1: + resolution: {integrity: sha512-9Yubnt3e8A0OKwxYSXyhLymGW4sCufcLG6VdiDdUGVkPhpqLxlvP5vl1983gQjJl3tqbrM731mjaZaP68AgosQ==} measured-core@2.0.0: resolution: {integrity: sha512-SIzGtX1WGDvR59FqcJaGEAqDueBvLBh6W4T/gQaHr5ufcqvQkUHGcfQhlmq77mkeF5Mo+UpD+8hm69CwUVibGw==} @@ -4678,11 +4682,11 @@ packages: resolution: {integrity: sha512-Bf+ILmBgretUrdJxzXM0SgXLZ3XfiaUuOj/IKQHuTXip+05Xn+uyEYdVg0kYDipTBcLrCVyUzAPz7QmArb0mmw==} engines: {node: '>=14.0.0'} - tldts-core@7.0.23: - resolution: {integrity: sha512-0g9vrtDQLrNIiCj22HSe9d4mLVG3g5ph5DZ8zCKBr4OtrspmNB6ss7hVyzArAeE88ceZocIEGkyW1Ime7fxPtQ==} + tldts-core@7.0.26: + resolution: {integrity: sha512-5WJ2SqFsv4G2Dwi7ZFVRnz6b2H1od39QME1lc2y5Ew3eWiZMAeqOAfWpRP9jHvhUl881406QtZTODvjttJs+ew==} - tldts@7.0.23: - resolution: {integrity: sha512-ASdhgQIBSay0R/eXggAkQ53G4nTJqTXqC2kbaBbdDwM7SkjyZyO0OaaN1/FH7U/yCeqOHDwFO5j8+Os/IS1dXw==} + tldts@7.0.26: + resolution: {integrity: sha512-WiGwQjr0qYdNNG8KpMKlSvpxz652lqa3Rd+/hSaDcY4Uo6SKWZq2LAF+hsAhUewTtYhXlorBKgNF3Kk8hnjGoQ==} hasBin: true to-regex-range@5.0.1: @@ -4693,8 +4697,8 @@ packages: resolution: {integrity: sha512-o5sSPKEkg/DIQNmH43V0/uerLrpzVedkUh8tGNvaeXpfpuwjKenlSox/2O/BTlZUtEe+JG7s5YhEz608PlAHRA==} engines: {node: '>=0.6'} - tough-cookie@6.0.0: - resolution: {integrity: sha512-kXuRi1mtaKMrsLUxz3sQYvVl37B0Ns6MzfrtV5DvJceE9bPyspOqk9xxv7XbZWcfLWbFmm997vl83qUWVJA64w==} + tough-cookie@6.0.1: + resolution: {integrity: sha512-LktZQb3IeoUWB9lqR5EWTHgW/VTITCXg4D21M+lvybRVdylLrRMnqaIONLVb5mav8vM19m44HIcGq4qASeu2Qw==} engines: {node: '>=16'} tr46@6.0.0: @@ -4796,14 +4800,14 @@ packages: undici-types@7.22.0: resolution: {integrity: sha512-RKZvifiL60xdsIuC80UY0dq8Z7DbJUV8/l2hOVbyZAxBzEeQU4Z58+4ZzJ6WN2Lidi9KzT5EbiGX+PI/UGYuRw==} - undici@7.22.0: - resolution: {integrity: sha512-RqslV2Us5BrllB+JeiZnK4peryVTndy9Dnqq62S3yYRRTj0tFQCwEniUy2167skdGOy3vqRzEvl1Dm4sV2ReDg==} - engines: {node: '>=20.18.1'} - undici@7.23.0: resolution: {integrity: sha512-HVMxHKZKi+eL2mrUZDzDkKW3XvCjynhbtpSq20xQp4ePDFeSFuAfnvM0GIwZIv8fiKHjXFQ5WjxhCt15KRNj+g==} engines: {node: '>=20.18.1'} + undici@7.24.4: + resolution: {integrity: sha512-BM/JzwwaRXxrLdElV2Uo6cTLEjhSb3WXboncJamZ15NgUURmvlXvxa6xkwIOILIjPNo9i8ku136ZvWV0Uly8+w==} + engines: {node: '>=20.18.1'} + unified@11.0.5: resolution: {integrity: sha512-xKvGhPWw3k84Qjh8bI3ZeJjqnyadK+GEFtazSfZv/rKeTkTjOJho6mFqh2SM96iIcZokxiOpg78GazTSg8+KHA==} @@ -5027,8 +5031,8 @@ packages: resolution: {integrity: sha512-sXcNcHOC51uPGF0P/D4NVtrkjSU2fNsm9iog4ZvZJsL3rjoDAzXZhkm2MWt1y+PUdggKAYVoMAIYcs78wJ51Cw==} engines: {node: '>=20'} - whatwg-url@16.0.0: - resolution: {integrity: sha512-9CcxtEKsf53UFwkSUZjG+9vydAsFO4lFHBpJUtjBcoJOCJpKnSJNwCw813zrYJHpCJ7sgfbtOe0V5Ku7Pa1XMQ==} + whatwg-url@16.0.1: + resolution: {integrity: sha512-1to4zXBxmXHV3IiSSEInrreIlu02vUOvrhxJJH5vcxYTBDAx51cqZiKdyTxlecdKNSjj8EcxGBxNf6Vg+945gw==} engines: {node: ^20.19.0 || ^22.12.0 || >=24.0.0} which-boxed-primitive@1.1.1: @@ -5161,29 +5165,27 @@ packages: snapshots: - '@acemir/cssom@0.9.31': {} - '@apidevtools/json-schema-ref-parser@11.9.3': dependencies: '@jsdevtools/ono': 7.1.3 '@types/json-schema': 7.0.15 js-yaml: 4.1.1 - '@asamuzakjp/css-color@4.1.2': + '@asamuzakjp/css-color@5.0.1': dependencies: '@csstools/css-calc': 3.1.1(@csstools/css-parser-algorithms@4.0.0(@csstools/css-tokenizer@4.0.0))(@csstools/css-tokenizer@4.0.0) - '@csstools/css-color-parser': 4.0.1(@csstools/css-parser-algorithms@4.0.0(@csstools/css-tokenizer@4.0.0))(@csstools/css-tokenizer@4.0.0) + '@csstools/css-color-parser': 4.0.2(@csstools/css-parser-algorithms@4.0.0(@csstools/css-tokenizer@4.0.0))(@csstools/css-tokenizer@4.0.0) '@csstools/css-parser-algorithms': 4.0.0(@csstools/css-tokenizer@4.0.0) '@csstools/css-tokenizer': 4.0.0 - lru-cache: 11.2.6 + lru-cache: 11.2.7 - '@asamuzakjp/dom-selector@6.8.1': + '@asamuzakjp/dom-selector@7.0.3': dependencies: '@asamuzakjp/nwsapi': 2.3.9 bidi-js: 1.0.3 - css-tree: 3.1.0 + css-tree: 3.2.1 is-potential-custom-element-name: 1.0.1 - lru-cache: 11.2.6 + lru-cache: 11.2.7 '@asamuzakjp/nwsapi@2.3.9': {} @@ -5390,18 +5392,18 @@ snapshots: '@bramus/specificity@2.4.2': dependencies: - css-tree: 3.1.0 + css-tree: 3.2.1 - '@csstools/color-helpers@6.0.1': {} + '@csstools/color-helpers@6.0.2': {} '@csstools/css-calc@3.1.1(@csstools/css-parser-algorithms@4.0.0(@csstools/css-tokenizer@4.0.0))(@csstools/css-tokenizer@4.0.0)': dependencies: '@csstools/css-parser-algorithms': 4.0.0(@csstools/css-tokenizer@4.0.0) '@csstools/css-tokenizer': 4.0.0 - '@csstools/css-color-parser@4.0.1(@csstools/css-parser-algorithms@4.0.0(@csstools/css-tokenizer@4.0.0))(@csstools/css-tokenizer@4.0.0)': + '@csstools/css-color-parser@4.0.2(@csstools/css-parser-algorithms@4.0.0(@csstools/css-tokenizer@4.0.0))(@csstools/css-tokenizer@4.0.0)': dependencies: - '@csstools/color-helpers': 6.0.1 + '@csstools/color-helpers': 6.0.2 '@csstools/css-calc': 3.1.1(@csstools/css-parser-algorithms@4.0.0(@csstools/css-tokenizer@4.0.0))(@csstools/css-tokenizer@4.0.0) '@csstools/css-parser-algorithms': 4.0.0(@csstools/css-tokenizer@4.0.0) '@csstools/css-tokenizer': 4.0.0 @@ -5410,7 +5412,9 @@ snapshots: dependencies: '@csstools/css-tokenizer': 4.0.0 - '@csstools/css-syntax-patches-for-csstree@1.0.27': {} + '@csstools/css-syntax-patches-for-csstree@1.1.1(css-tree@3.2.1)': + optionalDependencies: + css-tree: 3.2.1 '@csstools/css-tokenizer@4.0.0': {} @@ -5624,7 +5628,7 @@ snapshots: '@eslint/core': 1.1.1 levn: 0.4.1 - '@exodus/bytes@1.14.1(@noble/hashes@1.8.0)': + '@exodus/bytes@1.15.0(@noble/hashes@1.8.0)': optionalDependencies: '@noble/hashes': 1.8.0 @@ -7091,18 +7095,11 @@ snapshots: shebang-command: 2.0.0 which: 2.0.2 - css-tree@3.1.0: + css-tree@3.2.1: dependencies: - mdn-data: 2.12.2 + mdn-data: 2.27.1 source-map-js: 1.2.1 - cssstyle@6.0.1: - dependencies: - '@asamuzakjp/css-color': 4.1.2 - '@csstools/css-syntax-patches-for-csstree': 1.0.27 - css-tree: 3.1.0 - lru-cache: 11.2.6 - csstype@3.2.3: {} data-uri-to-buffer@6.0.2: {} @@ -7110,7 +7107,7 @@ snapshots: data-urls@7.0.0(@noble/hashes@1.8.0): dependencies: whatwg-mimetype: 5.0.0 - whatwg-url: 16.0.0(@noble/hashes@1.8.0) + whatwg-url: 16.0.1(@noble/hashes@1.8.0) transitivePeerDependencies: - '@noble/hashes' @@ -8068,7 +8065,7 @@ snapshots: html-encoding-sniffer@6.0.0(@noble/hashes@1.8.0): dependencies: - '@exodus/bytes': 1.14.1(@noble/hashes@1.8.0) + '@exodus/bytes': 1.15.0(@noble/hashes@1.8.0) transitivePeerDependencies: - '@noble/hashes' @@ -8315,32 +8312,31 @@ snapshots: jsbn@1.1.0: {} - jsdom@28.1.0(@noble/hashes@1.8.0): + jsdom@29.0.0(@noble/hashes@1.8.0): dependencies: - '@acemir/cssom': 0.9.31 - '@asamuzakjp/dom-selector': 6.8.1 + '@asamuzakjp/css-color': 5.0.1 + '@asamuzakjp/dom-selector': 7.0.3 '@bramus/specificity': 2.4.2 - '@exodus/bytes': 1.14.1(@noble/hashes@1.8.0) - cssstyle: 6.0.1 + '@csstools/css-syntax-patches-for-csstree': 1.1.1(css-tree@3.2.1) + '@exodus/bytes': 1.15.0(@noble/hashes@1.8.0) + css-tree: 3.2.1 data-urls: 7.0.0(@noble/hashes@1.8.0) decimal.js: 10.6.0 html-encoding-sniffer: 6.0.0(@noble/hashes@1.8.0) - http-proxy-agent: 7.0.2 - https-proxy-agent: 7.0.6 is-potential-custom-element-name: 1.0.1 + lru-cache: 11.2.7 parse5: 8.0.0 saxes: 6.0.0 symbol-tree: 3.2.4 - tough-cookie: 6.0.0 - undici: 7.22.0 + tough-cookie: 6.0.1 + undici: 7.24.4 w3c-xmlserializer: 5.0.0 webidl-conversions: 8.0.1 whatwg-mimetype: 5.0.0 - whatwg-url: 16.0.0(@noble/hashes@1.8.0) + whatwg-url: 16.0.1(@noble/hashes@1.8.0) xml-name-validator: 5.0.0 transitivePeerDependencies: - '@noble/hashes' - - supports-color jsesc@3.1.0: {} @@ -8558,6 +8554,8 @@ snapshots: lru-cache@11.2.6: {} + lru-cache@11.2.7: {} + lru-cache@5.1.1: dependencies: yallist: 3.1.1 @@ -8588,7 +8586,7 @@ snapshots: unist-util-visit: 5.0.0 vfile: 6.0.3 - mdn-data@2.12.2: {} + mdn-data@2.27.1: {} measured-core@2.0.0: dependencies: @@ -9640,11 +9638,11 @@ snapshots: tinyrainbow@3.1.0: {} - tldts-core@7.0.23: {} + tldts-core@7.0.26: {} - tldts@7.0.23: + tldts@7.0.26: dependencies: - tldts-core: 7.0.23 + tldts-core: 7.0.26 to-regex-range@5.0.1: dependencies: @@ -9652,9 +9650,9 @@ snapshots: toidentifier@1.0.1: {} - tough-cookie@6.0.0: + tough-cookie@6.0.1: dependencies: - tldts: 7.0.23 + tldts: 7.0.26 tr46@6.0.0: dependencies: @@ -9760,10 +9758,10 @@ snapshots: undici-types@7.22.0: {} - undici@7.22.0: {} - undici@7.23.0: {} + undici@7.24.4: {} + unified@11.0.5: dependencies: '@types/unist': 3.0.3 @@ -9950,7 +9948,7 @@ snapshots: - universal-cookie - yaml - vitest@4.1.0(@opentelemetry/api@1.9.0)(@types/node@25.5.0)(jsdom@28.1.0(@noble/hashes@1.8.0))(vite@7.3.1(@types/node@25.5.0)(lightningcss@1.30.2)(tsx@4.21.0)): + vitest@4.1.0(@opentelemetry/api@1.9.0)(@types/node@25.5.0)(jsdom@29.0.0(@noble/hashes@1.8.0))(vite@7.3.1(@types/node@25.5.0)(lightningcss@1.30.2)(tsx@4.21.0)): dependencies: '@vitest/expect': 4.1.0 '@vitest/mocker': 4.1.0(vite@7.3.1(@types/node@25.5.0)(lightningcss@1.30.2)(tsx@4.21.0)) @@ -9975,7 +9973,7 @@ snapshots: optionalDependencies: '@opentelemetry/api': 1.9.0 '@types/node': 25.5.0 - jsdom: 28.1.0(@noble/hashes@1.8.0) + jsdom: 29.0.0(@noble/hashes@1.8.0) transitivePeerDependencies: - msw @@ -10003,9 +10001,9 @@ snapshots: whatwg-mimetype@5.0.0: {} - whatwg-url@16.0.0(@noble/hashes@1.8.0): + whatwg-url@16.0.1(@noble/hashes@1.8.0): dependencies: - '@exodus/bytes': 1.14.1(@noble/hashes@1.8.0) + '@exodus/bytes': 1.15.0(@noble/hashes@1.8.0) tr46: 6.0.0 webidl-conversions: 8.0.1 transitivePeerDependencies: diff --git a/src/package.json b/src/package.json index 1a2372cf73d..864dd5f6909 100644 --- a/src/package.json +++ b/src/package.json @@ -45,7 +45,7 @@ "http-errors": "^2.0.1", "jose": "^6.2.1", "js-cookie": "^3.0.5", - "jsdom": "^28.1.0", + "jsdom": "^29.0.0", "jsonminify": "0.4.2", "jsonwebtoken": "^9.0.3", "jwt-decode": "^4.0.0", From 6bdfd9fa746f08f7c04dd965c32002fffc6bff37 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 16 Mar 2026 16:33:56 +0000 Subject: [PATCH 033/130] build(deps-dev): bump the dev-dependencies group with 2 updates (#7371) Bumps the dev-dependencies group with 2 updates: [sinon](https://github.com/sinonjs/sinon) and [zustand](https://github.com/pmndrs/zustand). Updates `sinon` from 21.0.2 to 21.0.3 - [Release notes](https://github.com/sinonjs/sinon/releases) - [Changelog](https://github.com/sinonjs/sinon/blob/main/docs/changelog.md) - [Commits](https://github.com/sinonjs/sinon/compare/v21.0.2...v21.0.3) Updates `zustand` from 5.0.11 to 5.0.12 - [Release notes](https://github.com/pmndrs/zustand/releases) - [Commits](https://github.com/pmndrs/zustand/compare/v5.0.11...v5.0.12) --- updated-dependencies: - dependency-name: sinon dependency-version: 21.0.3 dependency-type: direct:development update-type: version-update:semver-patch dependency-group: dev-dependencies - dependency-name: zustand dependency-version: 5.0.12 dependency-type: direct:development update-type: version-update:semver-patch dependency-group: dev-dependencies ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- admin/package.json | 2 +- pnpm-lock.yaml | 28 ++++++++++++++-------------- src/package.json | 2 +- 3 files changed, 16 insertions(+), 16 deletions(-) diff --git a/admin/package.json b/admin/package.json index 9b7f430c38b..a522b9a5cbf 100644 --- a/admin/package.json +++ b/admin/package.json @@ -38,7 +38,7 @@ "vite": "npm:rolldown-vite@7.2.10", "vite-plugin-babel": "^1.5.1", "vite-plugin-static-copy": "^3.3.0", - "zustand": "^5.0.11" + "zustand": "^5.0.12" }, "overrides": { "vite": "npm:rolldown-vite@7.2.10" diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 9f3435f1c42..8898e6b3443 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -101,8 +101,8 @@ importers: specifier: ^3.3.0 version: 3.3.0(rolldown-vite@7.2.10(@types/node@25.5.0)(tsx@4.21.0)) zustand: - specifier: ^5.0.11 - version: 5.0.11(@types/react@19.2.14)(react@19.2.4)(use-sync-external-store@1.6.0(react@19.2.4)) + specifier: ^5.0.12 + version: 5.0.12(@types/react@19.2.14)(react@19.2.4)(use-sync-external-store@1.6.0(react@19.2.4)) bin: dependencies: @@ -389,8 +389,8 @@ importers: specifier: ^3.0.1 version: 3.0.1 sinon: - specifier: ^21.0.2 - version: 21.0.2 + specifier: ^21.0.3 + version: 21.0.3 split-grid: specifier: ^1.0.11 version: 1.0.11 @@ -1570,8 +1570,8 @@ packages: '@sinonjs/fake-timers@15.1.1': resolution: {integrity: sha512-cO5W33JgAPbOh07tvZjUOJ7oWhtaqGHiZw+11DPbyqh2kHTBc3eF/CjJDeQ4205RLQsX6rxCuYOroFQwl7JDRw==} - '@sinonjs/samsam@9.0.2': - resolution: {integrity: sha512-H/JSxa4GNKZuuU41E3b8Y3tbSEx8y4uq4UH1C56ONQac16HblReJomIvv3Ud7ANQHQmkeSowY49Ij972e/pGxQ==} + '@sinonjs/samsam@9.0.3': + resolution: {integrity: sha512-ZgYY7Dc2RW+OUdnZ1DEHg00lhRt+9BjymPKHog4PRFzr1U3MbK57+djmscWyKxzO1qfunHqs4N45WWyKIFKpiQ==} '@socket.io/component-emitter@3.1.2': resolution: {integrity: sha512-9BCxFwvbGg/RsZK9tjXd8s4UcwR0MWeFQ1XEKIQVVvAGJyINdrqKMcTRyLoK8Rse1GjzLV9cwjWV1olXRWEXVA==} @@ -4499,8 +4499,8 @@ packages: resolution: {integrity: sha512-bzyZ1e88w9O1iNJbKnOlvYTrWPDl46O1bG0D3XInv+9tkPrxrN8jUUTiFlDkkmKWgn1M6CfIA13SuGqOa9Korw==} engines: {node: '>=14'} - sinon@21.0.2: - resolution: {integrity: sha512-VHV4UaoxIe5jrMd89Y9duI76T5g3Lp+ET+ctLhLDaZtSznDPah1KKpRElbdBV4RwqWSw2vadFiVs9Del7MbVeQ==} + sinon@21.0.3: + resolution: {integrity: sha512-0x8TQFr8EjADhSME01u1ZK31yv2+bd6Z5NrBCHVM+n4qL1wFqbxftmeyi3bwlr49FbbzRfrqSFOpyHCOh/YmYA==} slash@3.0.0: resolution: {integrity: sha512-g9Q1haeby36OSStwb4ntCGGGaKsaVSjQ68fBxoQcutl5fS1vuY18H3wSt3jFyFtrkx+Kz0V1G85A4MyAdDMi2Q==} @@ -5142,8 +5142,8 @@ packages: zod@4.1.12: resolution: {integrity: sha512-JInaHOamG8pt5+Ey8kGmdcAcg3OL9reK8ltczgHTAwNhMys/6ThXHityHxVV2p3fkw/c+MAvBHFVYHFZDmjMCQ==} - zustand@5.0.11: - resolution: {integrity: sha512-fdZY+dk7zn/vbWNCYmzZULHRrss0jx5pPFiOuMZ/5HJN6Yv3u+1Wswy/4MpZEkEGhtNH+pwxZB8OKgUBPzYAGg==} + zustand@5.0.12: + resolution: {integrity: sha512-i77ae3aZq4dhMlRhJVCYgMLKuSiZAaUPAct2AksxQ+gOtimhGMdXljRT21P5BNpeT4kXlLIckvkPM029OljD7g==} engines: {node: '>=12.20.0'} peerDependencies: '@types/react': '>=18.0.0' @@ -6126,7 +6126,7 @@ snapshots: dependencies: '@sinonjs/commons': 3.0.1 - '@sinonjs/samsam@9.0.2': + '@sinonjs/samsam@9.0.3': dependencies: '@sinonjs/commons': 3.0.1 type-detect: 4.1.0 @@ -9412,11 +9412,11 @@ snapshots: signal-exit@4.1.0: {} - sinon@21.0.2: + sinon@21.0.3: dependencies: '@sinonjs/commons': 3.0.1 '@sinonjs/fake-timers': 15.1.1 - '@sinonjs/samsam': 9.0.2 + '@sinonjs/samsam': 9.0.3 diff: 8.0.3 supports-color: 7.2.0 @@ -10120,7 +10120,7 @@ snapshots: zod@4.1.12: {} - zustand@5.0.11(@types/react@19.2.14)(react@19.2.4)(use-sync-external-store@1.6.0(react@19.2.4)): + zustand@5.0.12(@types/react@19.2.14)(react@19.2.4)(use-sync-external-store@1.6.0(react@19.2.4)): optionalDependencies: '@types/react': 19.2.14 react: 19.2.4 diff --git a/src/package.json b/src/package.json index 864dd5f6909..109d1b2f4d8 100644 --- a/src/package.json +++ b/src/package.json @@ -116,7 +116,7 @@ "nodeify": "^1.0.1", "openapi-schema-validation": "^0.4.2", "set-cookie-parser": "^3.0.1", - "sinon": "^21.0.2", + "sinon": "^21.0.3", "split-grid": "^1.0.11", "supertest": "^7.2.2", "typescript": "^5.9.3", From 00dc6dba8988f4feea2ec35387ca998362675e73 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 16 Mar 2026 16:34:06 +0000 Subject: [PATCH 034/130] build(deps): bump reitzig/actions-asciidoctor from 2.0.3 to 2.0.4 (#7370) Bumps [reitzig/actions-asciidoctor](https://github.com/reitzig/actions-asciidoctor) from 2.0.3 to 2.0.4. - [Release notes](https://github.com/reitzig/actions-asciidoctor/releases) - [Changelog](https://github.com/reitzig/actions-asciidoctor/blob/master/CHANGELOG.md) - [Commits](https://github.com/reitzig/actions-asciidoctor/compare/v2.0.3...v2.0.4) --- updated-dependencies: - dependency-name: reitzig/actions-asciidoctor dependency-version: 2.0.4 dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- .github/workflows/release.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/release.yml b/.github/workflows/release.yml index e769b550829..d77f94641cb 100644 --- a/.github/workflows/release.yml +++ b/.github/workflows/release.yml @@ -75,7 +75,7 @@ jobs: with: ruby-version: 2.7 - - uses: reitzig/actions-asciidoctor@v2.0.3 + - uses: reitzig/actions-asciidoctor@v2.0.4 with: version: 2.0.18 - name: Prepare release From e165cebb976caaaaf619b58d90cd3382e53a67e1 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 16 Mar 2026 17:07:27 +0000 Subject: [PATCH 035/130] build(deps): bump lru-cache from 11.2.6 to 11.2.7 (#7373) Bumps [lru-cache](https://github.com/isaacs/node-lru-cache) from 11.2.6 to 11.2.7. - [Changelog](https://github.com/isaacs/node-lru-cache/blob/main/CHANGELOG.md) - [Commits](https://github.com/isaacs/node-lru-cache/compare/v11.2.6...v11.2.7) --- updated-dependencies: - dependency-name: lru-cache dependency-version: 11.2.7 dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- pnpm-lock.yaml | 10 ++-------- src/package.json | 2 +- 2 files changed, 3 insertions(+), 9 deletions(-) diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 8898e6b3443..84b3e641243 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -217,8 +217,8 @@ importers: specifier: ^6.9.1 version: 6.9.1 lru-cache: - specifier: ^11.2.6 - version: 11.2.6 + specifier: ^11.2.7 + version: 11.2.7 measured-core: specifier: ^2.0.0 version: 2.0.0 @@ -3686,10 +3686,6 @@ packages: lru-cache@10.4.3: resolution: {integrity: sha512-JNAzZcXrCt42VGLuYz0zfAzDfAvJWW6AfYlDBQyDV5DClI2m5sAmK+OIO7s59XfsRsWHp02jAJrRadPRGTt6SQ==} - lru-cache@11.2.6: - resolution: {integrity: sha512-ESL2CrkS/2wTPfuend7Zhkzo2u0daGJ/A2VucJOgQ/C48S/zB8MMeMHSGKYpXhIjbPxfuezITkaBH1wqv00DDQ==} - engines: {node: 20 || >=22} - lru-cache@11.2.7: resolution: {integrity: sha512-aY/R+aEsRelme17KGQa/1ZSIpLpNYYrhcrepKTZgE+W3WM16YMCaPwOHLHsmopZHELU0Ojin1lPVxKR0MihncA==} engines: {node: 20 || >=22} @@ -8552,8 +8548,6 @@ snapshots: lru-cache@10.4.3: {} - lru-cache@11.2.6: {} - lru-cache@11.2.7: {} lru-cache@5.1.1: diff --git a/src/package.json b/src/package.json index 109d1b2f4d8..bd06f261cc6 100644 --- a/src/package.json +++ b/src/package.json @@ -53,7 +53,7 @@ "live-plugin-manager": "^1.1.0", "lodash.clonedeep": "4.5.0", "log4js": "^6.9.1", - "lru-cache": "^11.2.6", + "lru-cache": "^11.2.7", "measured-core": "^2.0.0", "mime-types": "^3.0.2", "oidc-provider": "9.7.0", From 773ed30a6e2be01da8c77d453c532299b1aacc64 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 18 Mar 2026 13:17:58 +0000 Subject: [PATCH 036/130] build(deps-dev): bump the dev-dependencies group with 2 updates (#7376) Bumps the dev-dependencies group with 2 updates: [@typescript-eslint/eslint-plugin](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin) and [@typescript-eslint/parser](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser). Updates `@typescript-eslint/eslint-plugin` from 8.57.0 to 8.57.1 - [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases) - [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/eslint-plugin/CHANGELOG.md) - [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v8.57.1/packages/eslint-plugin) Updates `@typescript-eslint/parser` from 8.57.0 to 8.57.1 - [Release notes](https://github.com/typescript-eslint/typescript-eslint/releases) - [Changelog](https://github.com/typescript-eslint/typescript-eslint/blob/main/packages/parser/CHANGELOG.md) - [Commits](https://github.com/typescript-eslint/typescript-eslint/commits/v8.57.1/packages/parser) --- updated-dependencies: - dependency-name: "@typescript-eslint/eslint-plugin" dependency-version: 8.57.1 dependency-type: direct:development update-type: version-update:semver-patch dependency-group: dev-dependencies - dependency-name: "@typescript-eslint/parser" dependency-version: 8.57.1 dependency-type: direct:development update-type: version-update:semver-patch dependency-group: dev-dependencies ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- admin/package.json | 4 +- pnpm-lock.yaml | 139 ++++++++++++++++++++++++--------------------- 2 files changed, 76 insertions(+), 67 deletions(-) diff --git a/admin/package.json b/admin/package.json index a522b9a5cbf..a6045a268bd 100644 --- a/admin/package.json +++ b/admin/package.json @@ -18,8 +18,8 @@ "@radix-ui/react-toast": "^1.2.15", "@types/react": "^19.2.14", "@types/react-dom": "^19.2.3", - "@typescript-eslint/eslint-plugin": "^8.57.0", - "@typescript-eslint/parser": "^8.57.0", + "@typescript-eslint/eslint-plugin": "^8.57.1", + "@typescript-eslint/parser": "^8.57.1", "@vitejs/plugin-react": "^6.0.1", "babel-plugin-react-compiler": "19.1.0-rc.3", "eslint": "^10.0.3", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 84b3e641243..93099f6ea1e 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -41,11 +41,11 @@ importers: specifier: ^19.2.3 version: 19.2.3(@types/react@19.2.14) '@typescript-eslint/eslint-plugin': - specifier: ^8.57.0 - version: 8.57.0(@typescript-eslint/parser@8.57.0(eslint@10.0.3)(typescript@5.9.3))(eslint@10.0.3)(typescript@5.9.3) + specifier: ^8.57.1 + version: 8.57.1(@typescript-eslint/parser@8.57.1(eslint@10.0.3)(typescript@5.9.3))(eslint@10.0.3)(typescript@5.9.3) '@typescript-eslint/parser': - specifier: ^8.57.0 - version: 8.57.0(eslint@10.0.3)(typescript@5.9.3) + specifier: ^8.57.1 + version: 8.57.1(eslint@10.0.3)(typescript@5.9.3) '@vitejs/plugin-react': specifier: ^6.0.1 version: 6.0.1(babel-plugin-react-compiler@19.1.0-rc.3)(rolldown-vite@7.2.10(@types/node@25.5.0)(tsx@4.21.0)) @@ -517,8 +517,8 @@ packages: resolution: {integrity: sha512-HFN59MmQXGHVyYadKLVumYsA9dBFun/ldYxipEjzA4196jpLZd8UjEEBLkbEkvfYreDqJhZxYAWFPtrfhNpj4w==} engines: {node: '>=6.9.0'} - '@babel/helpers@7.28.6': - resolution: {integrity: sha512-xOBvwq86HHdB7WUDTfKfT/Vuxh7gElQ+Sfti2Cy6yIWNW05P8iUslOVcZ4/sKbE+/jQaukQAdz/gf3724kYdqw==} + '@babel/helpers@7.29.2': + resolution: {integrity: sha512-HoGuUs4sCZNezVEKdVcwqmZN8GoHirLUcLaYVNBK2J0DadGtdcqgr3BCbvH8+XUo4NGjNl3VOtSjEKNzqfFgKw==} engines: {node: '>=6.9.0'} '@babel/parser@7.28.5': @@ -531,6 +531,11 @@ packages: engines: {node: '>=6.0.0'} hasBin: true + '@babel/parser@7.29.2': + resolution: {integrity: sha512-4GgRzy/+fsBa72/RZVJmGKPmZu9Byn8o4MoLpmNe1m8ZfYnz5emHLQz3U4gLud6Zwl0RZIcgiLD7Uq7ySFuDLA==} + engines: {node: '>=6.0.0'} + hasBin: true + '@babel/runtime@7.28.6': resolution: {integrity: sha512-05WQkdpL9COIMz4LjTxGpPNCdlpyimKppYNoJ5Di5EUObifl8t4tuLuUBBZEpoLYOmfvIWrsp9fCl0HoPRVTdA==} engines: {node: '>=6.9.0'} @@ -1804,11 +1809,11 @@ packages: typescript: optional: true - '@typescript-eslint/eslint-plugin@8.57.0': - resolution: {integrity: sha512-qeu4rTHR3/IaFORbD16gmjq9+rEs9fGKdX0kF6BKSfi+gCuG3RCKLlSBYzn/bGsY9Tj7KE/DAQStbp8AHJGHEQ==} + '@typescript-eslint/eslint-plugin@8.57.1': + resolution: {integrity: sha512-Gn3aqnvNl4NGc6x3/Bqk1AOn0thyTU9bqDRhiRnUWezgvr2OnhYCWCgC8zXXRVqBsIL1pSDt7T9nJUe0oM0kDQ==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: - '@typescript-eslint/parser': ^8.57.0 + '@typescript-eslint/parser': ^8.57.1 eslint: ^8.57.0 || ^9.0.0 || ^10.0.0 typescript: '>=4.8.4 <6.0.0' @@ -1822,15 +1827,15 @@ packages: typescript: optional: true - '@typescript-eslint/parser@8.57.0': - resolution: {integrity: sha512-XZzOmihLIr8AD1b9hL9ccNMzEMWt/dE2u7NyTY9jJG6YNiNthaD5XtUHVF2uCXZ15ng+z2hT3MVuxnUYhq6k1g==} + '@typescript-eslint/parser@8.57.1': + resolution: {integrity: sha512-k4eNDan0EIMTT/dUKc/g+rsJ6wcHYhNPdY19VoX/EOtaAG8DLtKCykhrUnuHPYvinn5jhAPgD2Qw9hXBwrahsw==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: eslint: ^8.57.0 || ^9.0.0 || ^10.0.0 typescript: '>=4.8.4 <6.0.0' - '@typescript-eslint/project-service@8.57.0': - resolution: {integrity: sha512-pR+dK0BlxCLxtWfaKQWtYr7MhKmzqZxuii+ZjuFlZlIGRZm22HnXFqa2eY+90MUz8/i80YJmzFGDUsi8dMOV5w==} + '@typescript-eslint/project-service@8.57.1': + resolution: {integrity: sha512-vx1F37BRO1OftsYlmG9xay1TqnjNVlqALymwWVuYTdo18XuKxtBpCj1QlzNIEHlvlB27osvXFWptYiEWsVdYsg==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: typescript: '>=4.8.4 <6.0.0' @@ -1839,12 +1844,12 @@ packages: resolution: {integrity: sha512-jjhdIE/FPF2B7Z1uzc6i3oWKbGcHb87Qw7AWj6jmEqNOfDFbJWtjt/XfwCpvNkpGWlcJaog5vTR+VV8+w9JflA==} engines: {node: ^18.18.0 || >=20.0.0} - '@typescript-eslint/scope-manager@8.57.0': - resolution: {integrity: sha512-nvExQqAHF01lUM66MskSaZulpPL5pgy5hI5RfrxviLgzZVffB5yYzw27uK/ft8QnKXI2X0LBrHJFr1TaZtAibw==} + '@typescript-eslint/scope-manager@8.57.1': + resolution: {integrity: sha512-hs/QcpCwlwT2L5S+3fT6gp0PabyGk4Q0Rv2doJXA0435/OpnSR3VRgvrp8Xdoc3UAYSg9cyUjTeFXZEPg/3OKg==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} - '@typescript-eslint/tsconfig-utils@8.57.0': - resolution: {integrity: sha512-LtXRihc5ytjJIQEH+xqjB0+YgsV4/tW35XKX3GTZHpWtcC8SPkT/d4tqdf1cKtesryHm2bgp6l555NYcT2NLvA==} + '@typescript-eslint/tsconfig-utils@8.57.1': + resolution: {integrity: sha512-0lgOZB8cl19fHO4eI46YUx2EceQqhgkPSuCGLlGi79L2jwYY1cxeYc1Nae8Aw1xjgW3PKVDLlr3YJ6Bxx8HkWg==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: typescript: '>=4.8.4 <6.0.0' @@ -1859,8 +1864,8 @@ packages: typescript: optional: true - '@typescript-eslint/type-utils@8.57.0': - resolution: {integrity: sha512-yjgh7gmDcJ1+TcEg8x3uWQmn8ifvSupnPfjP21twPKrDP/pTHlEQgmKcitzF/rzPSmv7QjJ90vRpN4U+zoUjwQ==} + '@typescript-eslint/type-utils@8.57.1': + resolution: {integrity: sha512-+Bwwm0ScukFdyoJsh2u6pp4S9ktegF98pYUU0hkphOOqdMB+1sNQhIz8y5E9+4pOioZijrkfNO/HUJVAFFfPKA==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: eslint: ^8.57.0 || ^9.0.0 || ^10.0.0 @@ -1870,8 +1875,8 @@ packages: resolution: {integrity: sha512-iZqi+Ds1y4EDYUtlOOC+aUmxnE9xS/yCigkjA7XpTKV6nCBd3Hp/PRGGmdwnfkV2ThMyYldP1wRpm/id99spTQ==} engines: {node: ^18.18.0 || >=20.0.0} - '@typescript-eslint/types@8.57.0': - resolution: {integrity: sha512-dTLI8PEXhjUC7B9Kre+u0XznO696BhXcTlOn0/6kf1fHaQW8+VjJAVHJ3eTI14ZapTxdkOmc80HblPQLaEeJdg==} + '@typescript-eslint/types@8.57.1': + resolution: {integrity: sha512-S29BOBPJSFUiblEl6RzPPjJt6w25A6XsBqRVDt53tA/tlL8q7ceQNZHTjPeONt/3S7KRI4quk+yP9jK2WjBiPQ==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} '@typescript-eslint/typescript-estree@7.18.0': @@ -1883,8 +1888,8 @@ packages: typescript: optional: true - '@typescript-eslint/typescript-estree@8.57.0': - resolution: {integrity: sha512-m7faHcyVg0BT3VdYTlX8GdJEM7COexXxS6KqGopxdtkQRvBanK377QDHr4W/vIPAR+ah9+B/RclSW5ldVniO1Q==} + '@typescript-eslint/typescript-estree@8.57.1': + resolution: {integrity: sha512-ybe2hS9G6pXpqGtPli9Gx9quNV0TWLOmh58ADlmZe9DguLq0tiAKVjirSbtM1szG6+QH6rVXyU6GTLQbWnMY+g==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: typescript: '>=4.8.4 <6.0.0' @@ -1895,8 +1900,8 @@ packages: peerDependencies: eslint: ^8.56.0 - '@typescript-eslint/utils@8.57.0': - resolution: {integrity: sha512-5iIHvpD3CZe06riAsbNxxreP+MuYgVUsV0n4bwLH//VJmgtt54sQeY2GszntJ4BjYCpMzrfVh2SBnUQTtys2lQ==} + '@typescript-eslint/utils@8.57.1': + resolution: {integrity: sha512-XUNSJ/lEVFttPMMoDVA2r2bwrl8/oPx8cURtczkSEswY5T3AeLmCy+EKWQNdL4u0MmAHOjcWrqJp2cdvgjn8dQ==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} peerDependencies: eslint: ^8.57.0 || ^9.0.0 || ^10.0.0 @@ -1906,8 +1911,8 @@ packages: resolution: {integrity: sha512-cDF0/Gf81QpY3xYyJKDV14Zwdmid5+uuENhjH2EqFaF0ni+yAyq/LzMaIJdhNJXZI7uLzwIlA+V7oWoyn6Curg==} engines: {node: ^18.18.0 || >=20.0.0} - '@typescript-eslint/visitor-keys@8.57.0': - resolution: {integrity: sha512-zm6xx8UT/Xy2oSr2ZXD0pZo7Jx2XsCoID2IUh9YSTFRu7z+WdwYTRk6LhUftm1crwqbuoF6I8zAFeCMw0YjwDg==} + '@typescript-eslint/visitor-keys@8.57.1': + resolution: {integrity: sha512-YWnmJkXbofiz9KbnbbwuA2rpGkFPLbAIetcCNO6mJ8gdhdZ/v7WDXsoGFAJuM6ikUFKTlSQnjWnVO4ux+UzS6A==} engines: {node: ^18.18.0 || ^20.9.0 || >=21.1.0} '@ungap/structured-clone@1.3.0': @@ -5227,8 +5232,8 @@ snapshots: '@babel/generator': 7.29.1 '@babel/helper-compilation-targets': 7.28.6 '@babel/helper-module-transforms': 7.28.6(@babel/core@7.29.0) - '@babel/helpers': 7.28.6 - '@babel/parser': 7.29.0 + '@babel/helpers': 7.29.2 + '@babel/parser': 7.29.2 '@babel/template': 7.28.6 '@babel/traverse': 7.29.0 '@babel/types': 7.29.0 @@ -5320,7 +5325,7 @@ snapshots: '@babel/template': 7.28.6 '@babel/types': 7.29.0 - '@babel/helpers@7.28.6': + '@babel/helpers@7.29.2': dependencies: '@babel/template': 7.28.6 '@babel/types': 7.29.0 @@ -5333,6 +5338,10 @@ snapshots: dependencies: '@babel/types': 7.29.0 + '@babel/parser@7.29.2': + dependencies: + '@babel/types': 7.29.0 + '@babel/runtime@7.28.6': {} '@babel/template@7.27.2': @@ -6397,14 +6406,14 @@ snapshots: transitivePeerDependencies: - supports-color - '@typescript-eslint/eslint-plugin@8.57.0(@typescript-eslint/parser@8.57.0(eslint@10.0.3)(typescript@5.9.3))(eslint@10.0.3)(typescript@5.9.3)': + '@typescript-eslint/eslint-plugin@8.57.1(@typescript-eslint/parser@8.57.1(eslint@10.0.3)(typescript@5.9.3))(eslint@10.0.3)(typescript@5.9.3)': dependencies: '@eslint-community/regexpp': 4.12.2 - '@typescript-eslint/parser': 8.57.0(eslint@10.0.3)(typescript@5.9.3) - '@typescript-eslint/scope-manager': 8.57.0 - '@typescript-eslint/type-utils': 8.57.0(eslint@10.0.3)(typescript@5.9.3) - '@typescript-eslint/utils': 8.57.0(eslint@10.0.3)(typescript@5.9.3) - '@typescript-eslint/visitor-keys': 8.57.0 + '@typescript-eslint/parser': 8.57.1(eslint@10.0.3)(typescript@5.9.3) + '@typescript-eslint/scope-manager': 8.57.1 + '@typescript-eslint/type-utils': 8.57.1(eslint@10.0.3)(typescript@5.9.3) + '@typescript-eslint/utils': 8.57.1(eslint@10.0.3)(typescript@5.9.3) + '@typescript-eslint/visitor-keys': 8.57.1 eslint: 10.0.3 ignore: 7.0.5 natural-compare: 1.4.0 @@ -6426,22 +6435,22 @@ snapshots: transitivePeerDependencies: - supports-color - '@typescript-eslint/parser@8.57.0(eslint@10.0.3)(typescript@5.9.3)': + '@typescript-eslint/parser@8.57.1(eslint@10.0.3)(typescript@5.9.3)': dependencies: - '@typescript-eslint/scope-manager': 8.57.0 - '@typescript-eslint/types': 8.57.0 - '@typescript-eslint/typescript-estree': 8.57.0(typescript@5.9.3) - '@typescript-eslint/visitor-keys': 8.57.0 + '@typescript-eslint/scope-manager': 8.57.1 + '@typescript-eslint/types': 8.57.1 + '@typescript-eslint/typescript-estree': 8.57.1(typescript@5.9.3) + '@typescript-eslint/visitor-keys': 8.57.1 debug: 4.4.3(supports-color@8.1.1) eslint: 10.0.3 typescript: 5.9.3 transitivePeerDependencies: - supports-color - '@typescript-eslint/project-service@8.57.0(typescript@5.9.3)': + '@typescript-eslint/project-service@8.57.1(typescript@5.9.3)': dependencies: - '@typescript-eslint/tsconfig-utils': 8.57.0(typescript@5.9.3) - '@typescript-eslint/types': 8.57.0 + '@typescript-eslint/tsconfig-utils': 8.57.1(typescript@5.9.3) + '@typescript-eslint/types': 8.57.1 debug: 4.4.3(supports-color@8.1.1) typescript: 5.9.3 transitivePeerDependencies: @@ -6452,12 +6461,12 @@ snapshots: '@typescript-eslint/types': 7.18.0 '@typescript-eslint/visitor-keys': 7.18.0 - '@typescript-eslint/scope-manager@8.57.0': + '@typescript-eslint/scope-manager@8.57.1': dependencies: - '@typescript-eslint/types': 8.57.0 - '@typescript-eslint/visitor-keys': 8.57.0 + '@typescript-eslint/types': 8.57.1 + '@typescript-eslint/visitor-keys': 8.57.1 - '@typescript-eslint/tsconfig-utils@8.57.0(typescript@5.9.3)': + '@typescript-eslint/tsconfig-utils@8.57.1(typescript@5.9.3)': dependencies: typescript: 5.9.3 @@ -6473,11 +6482,11 @@ snapshots: transitivePeerDependencies: - supports-color - '@typescript-eslint/type-utils@8.57.0(eslint@10.0.3)(typescript@5.9.3)': + '@typescript-eslint/type-utils@8.57.1(eslint@10.0.3)(typescript@5.9.3)': dependencies: - '@typescript-eslint/types': 8.57.0 - '@typescript-eslint/typescript-estree': 8.57.0(typescript@5.9.3) - '@typescript-eslint/utils': 8.57.0(eslint@10.0.3)(typescript@5.9.3) + '@typescript-eslint/types': 8.57.1 + '@typescript-eslint/typescript-estree': 8.57.1(typescript@5.9.3) + '@typescript-eslint/utils': 8.57.1(eslint@10.0.3)(typescript@5.9.3) debug: 4.4.3(supports-color@8.1.1) eslint: 10.0.3 ts-api-utils: 2.4.0(typescript@5.9.3) @@ -6487,7 +6496,7 @@ snapshots: '@typescript-eslint/types@7.18.0': {} - '@typescript-eslint/types@8.57.0': {} + '@typescript-eslint/types@8.57.1': {} '@typescript-eslint/typescript-estree@7.18.0(typescript@5.9.3)': dependencies: @@ -6504,12 +6513,12 @@ snapshots: transitivePeerDependencies: - supports-color - '@typescript-eslint/typescript-estree@8.57.0(typescript@5.9.3)': + '@typescript-eslint/typescript-estree@8.57.1(typescript@5.9.3)': dependencies: - '@typescript-eslint/project-service': 8.57.0(typescript@5.9.3) - '@typescript-eslint/tsconfig-utils': 8.57.0(typescript@5.9.3) - '@typescript-eslint/types': 8.57.0 - '@typescript-eslint/visitor-keys': 8.57.0 + '@typescript-eslint/project-service': 8.57.1(typescript@5.9.3) + '@typescript-eslint/tsconfig-utils': 8.57.1(typescript@5.9.3) + '@typescript-eslint/types': 8.57.1 + '@typescript-eslint/visitor-keys': 8.57.1 debug: 4.4.3(supports-color@8.1.1) minimatch: 10.2.4 semver: 7.7.4 @@ -6530,12 +6539,12 @@ snapshots: - supports-color - typescript - '@typescript-eslint/utils@8.57.0(eslint@10.0.3)(typescript@5.9.3)': + '@typescript-eslint/utils@8.57.1(eslint@10.0.3)(typescript@5.9.3)': dependencies: '@eslint-community/eslint-utils': 4.9.1(eslint@10.0.3) - '@typescript-eslint/scope-manager': 8.57.0 - '@typescript-eslint/types': 8.57.0 - '@typescript-eslint/typescript-estree': 8.57.0(typescript@5.9.3) + '@typescript-eslint/scope-manager': 8.57.1 + '@typescript-eslint/types': 8.57.1 + '@typescript-eslint/typescript-estree': 8.57.1(typescript@5.9.3) eslint: 10.0.3 typescript: 5.9.3 transitivePeerDependencies: @@ -6546,9 +6555,9 @@ snapshots: '@typescript-eslint/types': 7.18.0 eslint-visitor-keys: 3.4.3 - '@typescript-eslint/visitor-keys@8.57.0': + '@typescript-eslint/visitor-keys@8.57.1': dependencies: - '@typescript-eslint/types': 8.57.0 + '@typescript-eslint/types': 8.57.1 eslint-visitor-keys: 5.0.1 '@ungap/structured-clone@1.3.0': {} @@ -9498,7 +9507,7 @@ snapshots: streamroller@3.1.5: dependencies: date-format: 4.0.14 - debug: 4.4.0 + debug: 4.4.3(supports-color@8.1.1) fs-extra: 8.1.0 transitivePeerDependencies: - supports-color From 532c8d1f2ada5f0e74e92adbc171c0ab2be921bb Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 19 Mar 2026 09:04:16 +0000 Subject: [PATCH 037/130] build(deps): bump oidc-provider from 9.7.0 to 9.7.1 (#7378) Bumps [oidc-provider](https://github.com/panva/node-oidc-provider) from 9.7.0 to 9.7.1. - [Release notes](https://github.com/panva/node-oidc-provider/releases) - [Changelog](https://github.com/panva/node-oidc-provider/blob/main/CHANGELOG.md) - [Commits](https://github.com/panva/node-oidc-provider/compare/v9.7.0...v9.7.1) --- updated-dependencies: - dependency-name: oidc-provider dependency-version: 9.7.1 dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- pnpm-lock.yaml | 36 +++++++++++++++--------------------- src/package.json | 2 +- 2 files changed, 16 insertions(+), 22 deletions(-) diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 93099f6ea1e..bc375023650 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -226,8 +226,8 @@ importers: specifier: ^3.0.2 version: 3.0.2 oidc-provider: - specifier: 9.7.0 - version: 9.7.0 + specifier: 9.7.1 + version: 9.7.1 openapi-backend: specifier: ^5.16.1 version: 5.16.1 @@ -1029,8 +1029,8 @@ packages: resolution: {integrity: sha512-x/iUDjcS90W69PryLDIMgFyV21YLTnG9zOpPXS7Bkt2b8AsY3zZsIpOLBkYr9fBcF3HbkKaER5hOBZLfpLgYNw==} engines: {node: '>= 14.0.0'} - '@koa/router@15.3.1': - resolution: {integrity: sha512-n7UgxsPmgKtEsrguz8a0d6BNx3lO2x52Z4UqkGsGwJculk4TlzZf3btd3QZMq1r1M+bSxUkBbyul4mDhysIVaQ==} + '@koa/router@15.4.0': + resolution: {integrity: sha512-vKYlXtoCfcAN8z4dHiveYX55rTYOgHEYJNumK1WM9ZAwaArhreGVkyC1LTMGfUQUJyIO/SbwRFBOHeOCY8/MaQ==} engines: {node: '>= 20'} peerDependencies: koa: ^2.0.0 || ^3.0.0 @@ -3854,8 +3854,8 @@ packages: engines: {node: ^10 || ^12 || ^13.7 || ^14 || >=15.0.1} hasBin: true - nanoid@5.1.6: - resolution: {integrity: sha512-c7+7RQ+dMB5dPwwCp4ee1/iV/q2P6aK1mTZcfr1BTuVlyW9hJYiMPybJCcnBlQtuSmTIWNeazm/zqNoZSSElBg==} + nanoid@5.1.7: + resolution: {integrity: sha512-ua3NDgISf6jdwezAheMOk4mbE1LXjm1DfMUDMuJf4AqxLFK3ccGpgWizwa5YV7Yz9EpXwEaWoRXSb/BnV0t5dQ==} engines: {node: ^18 || >=20} hasBin: true @@ -3924,8 +3924,8 @@ packages: obug@2.1.1: resolution: {integrity: sha512-uTqF9MuPraAQ+IsnPf366RG4cP9RtUi7MLO1N3KEc+wb0a6yKpeL0lmk2IB1jY5KHPAlTc6T/JRdC/YqxHNwkQ==} - oidc-provider@9.7.0: - resolution: {integrity: sha512-xrOjNvwSOZf6hSR0fmD1SodaUIETbZeBMxjPnwQSMeCotHWWSBPqiZVeqCp/YFwGP/U+4VIBLYoO5PlypAg8KA==} + oidc-provider@9.7.1: + resolution: {integrity: sha512-yzOdAYxQEisPspCy6xVPrK++bYz71011uylwhR3XLDfb3r0NfVuJStApQvXoeMXj928nkZoxRTBC4ECYM94KOw==} on-finished@2.4.1: resolution: {integrity: sha512-oVlzkg3ENAhCk2zdv7IJwd/QUD4z2RxRwpkcGY8psCVcCYZNq4wYnVWALHM+brtuJjePWiYF/ClmuDr8Ch5+kg==} @@ -4801,10 +4801,6 @@ packages: undici-types@7.22.0: resolution: {integrity: sha512-RKZvifiL60xdsIuC80UY0dq8Z7DbJUV8/l2hOVbyZAxBzEeQU4Z58+4ZzJ6WN2Lidi9KzT5EbiGX+PI/UGYuRw==} - undici@7.23.0: - resolution: {integrity: sha512-HVMxHKZKi+eL2mrUZDzDkKW3XvCjynhbtpSq20xQp4ePDFeSFuAfnvM0GIwZIv8fiKHjXFQ5WjxhCt15KRNj+g==} - engines: {node: '>=20.18.1'} - undici@7.24.4: resolution: {integrity: sha512-BM/JzwwaRXxrLdElV2Uo6cTLEjhSb3WXboncJamZ15NgUURmvlXvxa6xkwIOILIjPNo9i8ku136ZvWV0Uly8+w==} engines: {node: '>=20.18.1'} @@ -5688,7 +5684,7 @@ snapshots: dependencies: vary: 1.1.2 - '@koa/router@15.3.1(koa@3.1.2)': + '@koa/router@15.4.0(koa@3.1.2)': dependencies: debug: 4.4.3(supports-color@8.1.1) http-errors: 2.0.1 @@ -8715,7 +8711,7 @@ snapshots: nanoid@3.3.11: {} - nanoid@5.1.6: {} + nanoid@5.1.7: {} natural-compare@1.4.0: {} @@ -8778,19 +8774,19 @@ snapshots: obug@2.1.1: {} - oidc-provider@9.7.0: + oidc-provider@9.7.1: dependencies: '@koa/cors': 5.0.0 - '@koa/router': 15.3.1(koa@3.1.2) + '@koa/router': 15.4.0(koa@3.1.2) debug: 4.4.3(supports-color@8.1.1) eta: 4.5.1 jose: 6.2.1 jsesc: 3.1.0 koa: 3.1.2 - nanoid: 5.1.6 + nanoid: 5.1.7 quick-lru: 7.3.0 raw-body: 3.0.2 - undici: 7.23.0 + undici: 7.24.4 transitivePeerDependencies: - supports-color @@ -8959,7 +8955,7 @@ snapshots: proxy-agent@6.5.0: dependencies: agent-base: 7.1.3 - debug: 4.4.3(supports-color@8.1.1) + debug: 4.4.1 http-proxy-agent: 7.0.2 https-proxy-agent: 7.0.6 lru-cache: 7.18.3 @@ -9761,8 +9757,6 @@ snapshots: undici-types@7.22.0: {} - undici@7.23.0: {} - undici@7.24.4: {} unified@11.0.5: diff --git a/src/package.json b/src/package.json index bd06f261cc6..8e2857fa56b 100644 --- a/src/package.json +++ b/src/package.json @@ -56,7 +56,7 @@ "lru-cache": "^11.2.7", "measured-core": "^2.0.0", "mime-types": "^3.0.2", - "oidc-provider": "9.7.0", + "oidc-provider": "9.7.1", "openapi-backend": "^5.16.1", "prom-client": "^15.1.3", "proxy-addr": "^2.0.7", From e17890a92c3ee5e627f0dd880ce360cc77353d7c Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 19 Mar 2026 16:50:16 +0000 Subject: [PATCH 038/130] build(deps-dev): bump the dev-dependencies group with 2 updates (#7381) Bumps the dev-dependencies group with 2 updates: [i18next](https://github.com/i18next/i18next) and [vite-plugin-babel](https://github.com/owlsdepartment/vite-plugin-babel). Updates `i18next` from 25.8.18 to 25.8.19 - [Release notes](https://github.com/i18next/i18next/releases) - [Changelog](https://github.com/i18next/i18next/blob/master/CHANGELOG.md) - [Commits](https://github.com/i18next/i18next/compare/v25.8.18...v25.8.19) Updates `vite-plugin-babel` from 1.5.1 to 1.6.0 - [Commits](https://github.com/owlsdepartment/vite-plugin-babel/commits) --- updated-dependencies: - dependency-name: i18next dependency-version: 25.8.19 dependency-type: direct:development update-type: version-update:semver-patch dependency-group: dev-dependencies - dependency-name: vite-plugin-babel dependency-version: 1.6.0 dependency-type: direct:development update-type: version-update:semver-minor dependency-group: dev-dependencies ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- admin/package.json | 4 ++-- pnpm-lock.yaml | 36 +++++++++++++++++++++--------------- 2 files changed, 23 insertions(+), 17 deletions(-) diff --git a/admin/package.json b/admin/package.json index a6045a268bd..9d36d65c632 100644 --- a/admin/package.json +++ b/admin/package.json @@ -25,7 +25,7 @@ "eslint": "^10.0.3", "eslint-plugin-react-hooks": "^7.0.1", "eslint-plugin-react-refresh": "^0.5.2", - "i18next": "^25.8.18", + "i18next": "^25.8.19", "i18next-browser-languagedetector": "^8.2.1", "lucide-react": "^0.577.0", "react": "^19.2.4", @@ -36,7 +36,7 @@ "socket.io-client": "^4.8.3", "typescript": "^5.9.3", "vite": "npm:rolldown-vite@7.2.10", - "vite-plugin-babel": "^1.5.1", + "vite-plugin-babel": "^1.6.0", "vite-plugin-static-copy": "^3.3.0", "zustand": "^5.0.12" }, diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index bc375023650..5fad8115674 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -62,8 +62,8 @@ importers: specifier: ^0.5.2 version: 0.5.2(eslint@10.0.3) i18next: - specifier: ^25.8.18 - version: 25.8.18(typescript@5.9.3) + specifier: ^25.8.19 + version: 25.8.19(typescript@5.9.3) i18next-browser-languagedetector: specifier: ^8.2.1 version: 8.2.1 @@ -81,7 +81,7 @@ importers: version: 7.71.2(react@19.2.4) react-i18next: specifier: ^16.5.8 - version: 16.5.8(i18next@25.8.18(typescript@5.9.3))(react-dom@19.2.4(react@19.2.4))(react@19.2.4)(typescript@5.9.3) + version: 16.5.8(i18next@25.8.19(typescript@5.9.3))(react-dom@19.2.4(react@19.2.4))(react@19.2.4)(typescript@5.9.3) react-router-dom: specifier: ^7.13.1 version: 7.13.1(react-dom@19.2.4(react@19.2.4))(react@19.2.4) @@ -95,8 +95,8 @@ importers: specifier: npm:rolldown-vite@7.2.10 version: rolldown-vite@7.2.10(@types/node@25.5.0)(tsx@4.21.0) vite-plugin-babel: - specifier: ^1.5.1 - version: 1.5.1(@babel/core@7.29.0)(rolldown-vite@7.2.10(@types/node@25.5.0)(tsx@4.21.0)) + specifier: ^1.6.0 + version: 1.6.0(@babel/core@7.29.0)(rolldown-vite@7.2.10(@types/node@25.5.0)(tsx@4.21.0)) vite-plugin-static-copy: specifier: ^3.3.0 version: 3.3.0(rolldown-vite@7.2.10(@types/node@25.5.0)(tsx@4.21.0)) @@ -540,6 +540,10 @@ packages: resolution: {integrity: sha512-05WQkdpL9COIMz4LjTxGpPNCdlpyimKppYNoJ5Di5EUObifl8t4tuLuUBBZEpoLYOmfvIWrsp9fCl0HoPRVTdA==} engines: {node: '>=6.9.0'} + '@babel/runtime@7.29.2': + resolution: {integrity: sha512-JiDShH45zKHWyGe4ZNVRrCjBz8Nh9TMmZG1kh4QTK8hCBTWBi8Da+i7s1fJw7/lYpM4ccepSNfqzZ/QvABBi5g==} + engines: {node: '>=6.9.0'} + '@babel/template@7.27.2': resolution: {integrity: sha512-LPDZ85aEJyYSd18/DkjNh4/y1ntkE5KwUHWTiqgRxruuZL2F1yuHligVHLvcHY2vMHXttKFpJn6LwfI7cw7ODw==} engines: {node: '>=6.9.0'} @@ -3264,8 +3268,8 @@ packages: i18next-browser-languagedetector@8.2.1: resolution: {integrity: sha512-bZg8+4bdmaOiApD7N7BPT9W8MLZG+nPTOFlLiJiT8uzKXFjhxw4v2ierCXOwB5sFDMtuA5G4kgYZ0AznZxQ/cw==} - i18next@25.8.18: - resolution: {integrity: sha512-lzY5X83BiL5AP77+9DydbrqkQHFN9hUzWGjqjLpPcp5ZOzuu1aSoKaU3xbBLSjWx9dAzW431y+d+aogxOZaKRA==} + i18next@25.8.19: + resolution: {integrity: sha512-Szzho7sXdv9Do6TvZIyYu+H+94xCrh60cq01DKcYH/gDjpcHimrQApUEQycxw37U7guwbTEJ07CWScGGbgs96w==} peerDependencies: typescript: ^5 peerDependenciesMeta: @@ -4895,11 +4899,11 @@ packages: vfile@6.0.3: resolution: {integrity: sha512-KzIbH/9tXat2u30jf+smMwFCsno4wHVdNmzFyL+T/L3UGqqk6JKfVqOFOZEpZSHADH1k40ab6NUIXZq422ov3Q==} - vite-plugin-babel@1.5.1: - resolution: {integrity: sha512-TBBBsAYYg7V5yR+xPeZYHwritMmc2QvZrZKFSS26it7ZQ0Y8ESKwJJm2KUUcmHQZU/owvA4yKk4ibPVrfhlwJw==} + vite-plugin-babel@1.6.0: + resolution: {integrity: sha512-VtYA4FSmQREA2oaZ7+jfLS/fBk1/xZMUR94YZzB5s6U9WyptbvThUD1HSSv7oNDU28jGuHmdBZ1wTVGNIoChoQ==} peerDependencies: '@babel/core': ^7.0.0 - vite: ^2.7.0 || ^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 + vite: ^2.7.0 || ^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0 vite-plugin-static-copy@3.3.0: resolution: {integrity: sha512-XiAtZcev7nppxNFgKoD55rfL+ukVp/RtrnTJONRwRuzv/B2FK2h2ZRCYjvxhwBV/Oarse83SiyXBSxMTfeEM0Q==} @@ -5340,6 +5344,8 @@ snapshots: '@babel/runtime@7.28.6': {} + '@babel/runtime@7.29.2': {} + '@babel/template@7.27.2': dependencies: '@babel/code-frame': 7.29.0 @@ -8115,9 +8121,9 @@ snapshots: dependencies: '@babel/runtime': 7.28.6 - i18next@25.8.18(typescript@5.9.3): + i18next@25.8.19(typescript@5.9.3): dependencies: - '@babel/runtime': 7.28.6 + '@babel/runtime': 7.29.2 optionalDependencies: typescript: 5.9.3 @@ -9013,11 +9019,11 @@ snapshots: dependencies: react: 19.2.4 - react-i18next@16.5.8(i18next@25.8.18(typescript@5.9.3))(react-dom@19.2.4(react@19.2.4))(react@19.2.4)(typescript@5.9.3): + react-i18next@16.5.8(i18next@25.8.19(typescript@5.9.3))(react-dom@19.2.4(react@19.2.4))(react@19.2.4)(typescript@5.9.3): dependencies: '@babel/runtime': 7.28.6 html-parse-stringify: 3.0.1 - i18next: 25.8.18(typescript@5.9.3) + i18next: 25.8.19(typescript@5.9.3) react: 19.2.4 use-sync-external-store: 1.6.0(react@19.2.4) optionalDependencies: @@ -9870,7 +9876,7 @@ snapshots: '@types/unist': 3.0.3 vfile-message: 4.0.2 - vite-plugin-babel@1.5.1(@babel/core@7.29.0)(rolldown-vite@7.2.10(@types/node@25.5.0)(tsx@4.21.0)): + vite-plugin-babel@1.6.0(@babel/core@7.29.0)(rolldown-vite@7.2.10(@types/node@25.5.0)(tsx@4.21.0)): dependencies: '@babel/core': 7.29.0 vite: rolldown-vite@7.2.10(@types/node@25.5.0)(tsx@4.21.0) From 6a0f932e6390ffafe53cbbda1f79cf32932c4707 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Thu, 19 Mar 2026 16:50:22 +0000 Subject: [PATCH 039/130] build(deps): bump jose from 6.2.1 to 6.2.2 (#7382) Bumps [jose](https://github.com/panva/jose) from 6.2.1 to 6.2.2. - [Release notes](https://github.com/panva/jose/releases) - [Changelog](https://github.com/panva/jose/blob/main/CHANGELOG.md) - [Commits](https://github.com/panva/jose/compare/v6.2.1...v6.2.2) --- updated-dependencies: - dependency-name: jose dependency-version: 6.2.2 dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- pnpm-lock.yaml | 12 ++++++------ src/package.json | 2 +- 2 files changed, 7 insertions(+), 7 deletions(-) diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 5fad8115674..a0b26ed0204 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -187,8 +187,8 @@ importers: specifier: ^2.0.1 version: 2.0.1 jose: - specifier: ^6.2.1 - version: 6.2.1 + specifier: ^6.2.2 + version: 6.2.2 js-cookie: specifier: ^3.0.5 version: 3.0.5 @@ -3464,8 +3464,8 @@ packages: jackspeak@3.4.3: resolution: {integrity: sha512-OGlZQpz2yfahA/Rd1Y8Cd9SIEsqvXkLVoSw/cgwhnhFMDbsQFeZYoJJ7bIZBS9BcamUW96asq/npPWugM+RQBw==} - jose@6.2.1: - resolution: {integrity: sha512-jUaKr1yrbfaImV7R2TN/b3IcZzsw38/chqMpo2XJ7i2F8AfM/lA4G1goC3JVEwg0H7UldTmSt3P68nt31W7/mw==} + jose@6.2.2: + resolution: {integrity: sha512-d7kPDd34KO/YnzaDOlikGpOurfF0ByC2sEV4cANCtdqLlTfBlw2p14O/5d/zv40gJPbIQxfES3nSx1/oYNyuZQ==} js-cookie@3.0.5: resolution: {integrity: sha512-cEiJEAEoIbWfCZYKWhVwFuvPX1gETRYPw6LlaTKoxD3s2AkXzkCjnp6h0V77ozyqj0jakteJ4YqDJT830+lVGw==} @@ -8303,7 +8303,7 @@ snapshots: optionalDependencies: '@pkgjs/parseargs': 0.11.0 - jose@6.2.1: {} + jose@6.2.2: {} js-cookie@3.0.5: {} @@ -8786,7 +8786,7 @@ snapshots: '@koa/router': 15.4.0(koa@3.1.2) debug: 4.4.3(supports-color@8.1.1) eta: 4.5.1 - jose: 6.2.1 + jose: 6.2.2 jsesc: 3.1.0 koa: 3.1.2 nanoid: 5.1.7 diff --git a/src/package.json b/src/package.json index 8e2857fa56b..a8ca8f63f19 100644 --- a/src/package.json +++ b/src/package.json @@ -43,7 +43,7 @@ "find-root": "1.1.0", "formidable": "^3.5.4", "http-errors": "^2.0.1", - "jose": "^6.2.1", + "jose": "^6.2.2", "js-cookie": "^3.0.5", "jsdom": "^29.0.0", "jsonminify": "0.4.2", From 29ad3d93832d62475203a4f771c6a72dd74df3de Mon Sep 17 00:00:00 2001 From: SamTV12345 <40429738+SamTV12345@users.noreply.github.com> Date: Thu, 19 Mar 2026 23:00:05 +0100 Subject: [PATCH 040/130] chore: catch all errors that can occur and log the error (#7375) --- src/.npmrc | 1 - src/static/js/pluginfw/installer.ts | 6 +++++- 2 files changed, 5 insertions(+), 2 deletions(-) delete mode 100644 src/.npmrc diff --git a/src/.npmrc b/src/.npmrc deleted file mode 100644 index f301fedf982..00000000000 --- a/src/.npmrc +++ /dev/null @@ -1 +0,0 @@ -auto-install-peers=false diff --git a/src/static/js/pluginfw/installer.ts b/src/static/js/pluginfw/installer.ts index a85bc77f1e7..a5b4c73bfec 100644 --- a/src/static/js/pluginfw/installer.ts +++ b/src/static/js/pluginfw/installer.ts @@ -124,7 +124,11 @@ export const checkForMigration = async () => { for (const plugin of installedPlugins.plugins) { if (plugin.name.startsWith(plugins.prefix) && plugin.name !== 'ep_etherpad-lite') { - await linkInstaller.installPlugin(plugin.name, plugin.version); + try { + await linkInstaller.installPlugin(plugin.name, plugin.version); + } catch (e) { + logger.error(`Error installing plugin ${plugin.name} with version ${plugin.version}: ${e}`); + } } } }; From a99ddb6450abfff1ec47cd8f4f565d2e0e799e8f Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri, 20 Mar 2026 16:16:16 +0000 Subject: [PATCH 041/130] build(deps-dev): bump the dev-dependencies group with 2 updates (#7384) Bumps the dev-dependencies group with 2 updates: [i18next](https://github.com/i18next/i18next) and [vitepress](https://github.com/vuejs/vitepress). Updates `i18next` from 25.8.19 to 25.8.20 - [Release notes](https://github.com/i18next/i18next/releases) - [Changelog](https://github.com/i18next/i18next/blob/master/CHANGELOG.md) - [Commits](https://github.com/i18next/i18next/compare/v25.8.19...v25.8.20) Updates `vitepress` from 2.0.0-alpha.16 to 2.0.0-alpha.17 - [Release notes](https://github.com/vuejs/vitepress/releases) - [Changelog](https://github.com/vuejs/vitepress/blob/main/CHANGELOG.md) - [Commits](https://github.com/vuejs/vitepress/compare/v2.0.0-alpha.16...v2.0.0-alpha.17) --- updated-dependencies: - dependency-name: i18next dependency-version: 25.8.20 dependency-type: direct:development update-type: version-update:semver-patch dependency-group: dev-dependencies - dependency-name: vitepress dependency-version: 2.0.0-alpha.17 dependency-type: direct:development update-type: version-update:semver-patch dependency-group: dev-dependencies ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- admin/package.json | 2 +- doc/package.json | 2 +- pnpm-lock.yaml | 622 ++++++++++++++++++++++----------------------- 3 files changed, 299 insertions(+), 327 deletions(-) diff --git a/admin/package.json b/admin/package.json index 9d36d65c632..4b17aa826fa 100644 --- a/admin/package.json +++ b/admin/package.json @@ -25,7 +25,7 @@ "eslint": "^10.0.3", "eslint-plugin-react-hooks": "^7.0.1", "eslint-plugin-react-refresh": "^0.5.2", - "i18next": "^25.8.19", + "i18next": "^25.8.20", "i18next-browser-languagedetector": "^8.2.1", "lucide-react": "^0.577.0", "react": "^19.2.4", diff --git a/doc/package.json b/doc/package.json index b113819040d..76ede1b5e01 100644 --- a/doc/package.json +++ b/doc/package.json @@ -1,6 +1,6 @@ { "devDependencies": { - "vitepress": "^2.0.0-alpha.16" + "vitepress": "^2.0.0-alpha.17" }, "scripts": { "docs:dev": "vitepress dev", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index a0b26ed0204..80e3b9c98b9 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -62,8 +62,8 @@ importers: specifier: ^0.5.2 version: 0.5.2(eslint@10.0.3) i18next: - specifier: ^25.8.19 - version: 25.8.19(typescript@5.9.3) + specifier: ^25.8.20 + version: 25.8.20(typescript@5.9.3) i18next-browser-languagedetector: specifier: ^8.2.1 version: 8.2.1 @@ -81,7 +81,7 @@ importers: version: 7.71.2(react@19.2.4) react-i18next: specifier: ^16.5.8 - version: 16.5.8(i18next@25.8.19(typescript@5.9.3))(react-dom@19.2.4(react@19.2.4))(react@19.2.4)(typescript@5.9.3) + version: 16.5.8(i18next@25.8.20(typescript@5.9.3))(react-dom@19.2.4(react@19.2.4))(react@19.2.4)(typescript@5.9.3) react-router-dom: specifier: ^7.13.1 version: 7.13.1(react-dom@19.2.4(react@19.2.4))(react@19.2.4) @@ -142,8 +142,8 @@ importers: version: 2.17.3 devDependencies: vitepress: - specifier: ^2.0.0-alpha.16 - version: 2.0.0-alpha.16(@types/node@25.5.0)(axios@1.13.6)(jwt-decode@4.0.0)(lightningcss@1.30.2)(postcss@8.5.6)(tsx@4.21.0)(typescript@5.9.3) + specifier: ^2.0.0-alpha.17 + version: 2.0.0-alpha.17(@types/node@25.5.0)(axios@1.13.6)(jwt-decode@4.0.0)(lightningcss@1.30.2)(postcss@8.5.8)(tsx@4.21.0)(typescript@5.9.3) src: dependencies: @@ -612,14 +612,14 @@ packages: resolution: {integrity: sha512-QxULHAm7cNu72w97JUNCBFODFaXpbDg+dP8b/oWFAZ2MTRppA3U00Y2L1HqaS4J6yBqxwa/Y3nMBaxVKbB/NsA==} engines: {node: '>=20.19.0'} - '@docsearch/css@4.5.3': - resolution: {integrity: sha512-kUpHaxn0AgI3LQfyzTYkNUuaFY4uEz/Ym9/N/FvyDE+PzSgZsCyDH9jE49B6N6f1eLCm9Yp64J9wENd6vypdxA==} + '@docsearch/css@4.6.0': + resolution: {integrity: sha512-YlcAimkXclvqta47g47efzCM5CFxDwv2ClkDfEs/fC/Ak0OxPH2b3czwa4o8O1TRBf+ujFF2RiUwszz2fPVNJQ==} - '@docsearch/js@4.5.3': - resolution: {integrity: sha512-rcBiUMCXbZLqrLIT6F6FDcrG/tyvM2WM0zum6NPbIiQNDQxbSgmNc+/bToS0rxBsXaxiU64esiWoS02WqrWLsg==} + '@docsearch/js@4.6.0': + resolution: {integrity: sha512-9/rbgkm/BgTq46cwxIohvSAz3koOFjnPpg0mwkJItAfzKbQIj+310PvwtgUY1YITDuGCag6yOL50GW2DBkaaBw==} - '@docsearch/sidepanel-js@4.5.3': - resolution: {integrity: sha512-DmcZYc1ZMMcabtKrCU2RIf1z09LwazKCyoPFU/ijJiBg2LdqMLmkyDKHGy1OIYEyUx4ok5RIbkVGaRfD55BqZQ==} + '@docsearch/sidepanel-js@4.6.0': + resolution: {integrity: sha512-lFT5KLwlzUmpoGArCScNoK41l9a22JYsEPwBzMrz+/ILVR5Ax87UphCuiyDFQWEvEmbwzn/kJx5W/O5BUlN1Rw==} '@emnapi/core@1.7.1': resolution: {integrity: sha512-o1uhUASyo921r2XtHYOHy7gdkGLge8ghBEQHMWmyJFoXlpU58kIrhhN3w26lpQb6dspetweapMn2CSNwQ8I4wg==} @@ -1000,8 +1000,8 @@ packages: resolution: {integrity: sha512-bV0Tgo9K4hfPCek+aMAn81RppFKv2ySDQeMoSZuvTASywNTnVJCArCZE2FWqpvIatKu7VMRLWlR1EazvVhDyhQ==} engines: {node: '>=18.18'} - '@iconify-json/simple-icons@1.2.69': - resolution: {integrity: sha512-T/rhy5n7pzE0ZOxQVlF68SNPCYYjRBpddjgjrJO5WWVRG8es5BQmvxIE9kKF+t2hhPGvuGQFpXmUyqbOtnxirQ==} + '@iconify-json/simple-icons@1.2.74': + resolution: {integrity: sha512-yqaohfY6jnYjTVpuTkaBQHrWbdUrQyWXhau0r/0EZiNWYXPX/P8WWwl1DoLH5CbvDjjcWQw5J0zADhgCUklOqA==} '@iconify/types@2.0.0': resolution: {integrity: sha512-+wluvCrRhXrhyOmRDJ3q8mux9JkKy5SJ/v8ol2tu4FVjyYvtEzkc/3pK15ET6RKg4b4w4BmTk1+gsCUhf21Ykg==} @@ -1415,128 +1415,128 @@ packages: '@rolldown/pluginutils@1.0.0-rc.7': resolution: {integrity: sha512-qujRfC8sFVInYSPPMLQByRh7zhwkGFS4+tyMQ83srV1qrxL4g8E2tyxVVyxd0+8QeBM1mIk9KbWxkegRr76XzA==} - '@rollup/rollup-android-arm-eabi@4.57.1': - resolution: {integrity: sha512-A6ehUVSiSaaliTxai040ZpZ2zTevHYbvu/lDoeAteHI8QnaosIzm4qwtezfRg1jOYaUmnzLX1AOD6Z+UJjtifg==} + '@rollup/rollup-android-arm-eabi@4.59.0': + resolution: {integrity: sha512-upnNBkA6ZH2VKGcBj9Fyl9IGNPULcjXRlg0LLeaioQWueH30p6IXtJEbKAgvyv+mJaMxSm1l6xwDXYjpEMiLMg==} cpu: [arm] os: [android] - '@rollup/rollup-android-arm64@4.57.1': - resolution: {integrity: sha512-dQaAddCY9YgkFHZcFNS/606Exo8vcLHwArFZ7vxXq4rigo2bb494/xKMMwRRQW6ug7Js6yXmBZhSBRuBvCCQ3w==} + '@rollup/rollup-android-arm64@4.59.0': + resolution: {integrity: sha512-hZ+Zxj3SySm4A/DylsDKZAeVg0mvi++0PYVceVyX7hemkw7OreKdCvW2oQ3T1FMZvCaQXqOTHb8qmBShoqk69Q==} cpu: [arm64] os: [android] - '@rollup/rollup-darwin-arm64@4.57.1': - resolution: {integrity: sha512-crNPrwJOrRxagUYeMn/DZwqN88SDmwaJ8Cvi/TN1HnWBU7GwknckyosC2gd0IqYRsHDEnXf328o9/HC6OkPgOg==} + '@rollup/rollup-darwin-arm64@4.59.0': + resolution: {integrity: sha512-W2Psnbh1J8ZJw0xKAd8zdNgF9HRLkdWwwdWqubSVk0pUuQkoHnv7rx4GiF9rT4t5DIZGAsConRE3AxCdJ4m8rg==} cpu: [arm64] os: [darwin] - '@rollup/rollup-darwin-x64@4.57.1': - resolution: {integrity: sha512-Ji8g8ChVbKrhFtig5QBV7iMaJrGtpHelkB3lsaKzadFBe58gmjfGXAOfI5FV0lYMH8wiqsxKQ1C9B0YTRXVy4w==} + '@rollup/rollup-darwin-x64@4.59.0': + resolution: {integrity: sha512-ZW2KkwlS4lwTv7ZVsYDiARfFCnSGhzYPdiOU4IM2fDbL+QGlyAbjgSFuqNRbSthybLbIJ915UtZBtmuLrQAT/w==} cpu: [x64] os: [darwin] - '@rollup/rollup-freebsd-arm64@4.57.1': - resolution: {integrity: sha512-R+/WwhsjmwodAcz65guCGFRkMb4gKWTcIeLy60JJQbXrJ97BOXHxnkPFrP+YwFlaS0m+uWJTstrUA9o+UchFug==} + '@rollup/rollup-freebsd-arm64@4.59.0': + resolution: {integrity: sha512-EsKaJ5ytAu9jI3lonzn3BgG8iRBjV4LxZexygcQbpiU0wU0ATxhNVEpXKfUa0pS05gTcSDMKpn3Sx+QB9RlTTA==} cpu: [arm64] os: [freebsd] - '@rollup/rollup-freebsd-x64@4.57.1': - resolution: {integrity: sha512-IEQTCHeiTOnAUC3IDQdzRAGj3jOAYNr9kBguI7MQAAZK3caezRrg0GxAb6Hchg4lxdZEI5Oq3iov/w/hnFWY9Q==} + '@rollup/rollup-freebsd-x64@4.59.0': + resolution: {integrity: sha512-d3DuZi2KzTMjImrxoHIAODUZYoUUMsuUiY4SRRcJy6NJoZ6iIqWnJu9IScV9jXysyGMVuW+KNzZvBLOcpdl3Vg==} cpu: [x64] os: [freebsd] - '@rollup/rollup-linux-arm-gnueabihf@4.57.1': - resolution: {integrity: sha512-F8sWbhZ7tyuEfsmOxwc2giKDQzN3+kuBLPwwZGyVkLlKGdV1nvnNwYD0fKQ8+XS6hp9nY7B+ZeK01EBUE7aHaw==} + '@rollup/rollup-linux-arm-gnueabihf@4.59.0': + resolution: {integrity: sha512-t4ONHboXi/3E0rT6OZl1pKbl2Vgxf9vJfWgmUoCEVQVxhW6Cw/c8I6hbbu7DAvgp82RKiH7TpLwxnJeKv2pbsw==} cpu: [arm] os: [linux] - '@rollup/rollup-linux-arm-musleabihf@4.57.1': - resolution: {integrity: sha512-rGfNUfn0GIeXtBP1wL5MnzSj98+PZe/AXaGBCRmT0ts80lU5CATYGxXukeTX39XBKsxzFpEeK+Mrp9faXOlmrw==} + '@rollup/rollup-linux-arm-musleabihf@4.59.0': + resolution: {integrity: sha512-CikFT7aYPA2ufMD086cVORBYGHffBo4K8MQ4uPS/ZnY54GKj36i196u8U+aDVT2LX4eSMbyHtyOh7D7Zvk2VvA==} cpu: [arm] os: [linux] - '@rollup/rollup-linux-arm64-gnu@4.57.1': - resolution: {integrity: sha512-MMtej3YHWeg/0klK2Qodf3yrNzz6CGjo2UntLvk2RSPlhzgLvYEB3frRvbEF2wRKh1Z2fDIg9KRPe1fawv7C+g==} + '@rollup/rollup-linux-arm64-gnu@4.59.0': + resolution: {integrity: sha512-jYgUGk5aLd1nUb1CtQ8E+t5JhLc9x5WdBKew9ZgAXg7DBk0ZHErLHdXM24rfX+bKrFe+Xp5YuJo54I5HFjGDAA==} cpu: [arm64] os: [linux] - '@rollup/rollup-linux-arm64-musl@4.57.1': - resolution: {integrity: sha512-1a/qhaaOXhqXGpMFMET9VqwZakkljWHLmZOX48R0I/YLbhdxr1m4gtG1Hq7++VhVUmf+L3sTAf9op4JlhQ5u1Q==} + '@rollup/rollup-linux-arm64-musl@4.59.0': + resolution: {integrity: sha512-peZRVEdnFWZ5Bh2KeumKG9ty7aCXzzEsHShOZEFiCQlDEepP1dpUl/SrUNXNg13UmZl+gzVDPsiCwnV1uI0RUA==} cpu: [arm64] os: [linux] - '@rollup/rollup-linux-loong64-gnu@4.57.1': - resolution: {integrity: sha512-QWO6RQTZ/cqYtJMtxhkRkidoNGXc7ERPbZN7dVW5SdURuLeVU7lwKMpo18XdcmpWYd0qsP1bwKPf7DNSUinhvA==} + '@rollup/rollup-linux-loong64-gnu@4.59.0': + resolution: {integrity: sha512-gbUSW/97f7+r4gHy3Jlup8zDG190AuodsWnNiXErp9mT90iCy9NKKU0Xwx5k8VlRAIV2uU9CsMnEFg/xXaOfXg==} cpu: [loong64] os: [linux] - '@rollup/rollup-linux-loong64-musl@4.57.1': - resolution: {integrity: sha512-xpObYIf+8gprgWaPP32xiN5RVTi/s5FCR+XMXSKmhfoJjrpRAjCuuqQXyxUa/eJTdAE6eJ+KDKaoEqjZQxh3Gw==} + '@rollup/rollup-linux-loong64-musl@4.59.0': + resolution: {integrity: sha512-yTRONe79E+o0FWFijasoTjtzG9EBedFXJMl888NBEDCDV9I2wGbFFfJQQe63OijbFCUZqxpHz1GzpbtSFikJ4Q==} cpu: [loong64] os: [linux] - '@rollup/rollup-linux-ppc64-gnu@4.57.1': - resolution: {integrity: sha512-4BrCgrpZo4hvzMDKRqEaW1zeecScDCR+2nZ86ATLhAoJ5FQ+lbHVD3ttKe74/c7tNT9c6F2viwB3ufwp01Oh2w==} + '@rollup/rollup-linux-ppc64-gnu@4.59.0': + resolution: {integrity: sha512-sw1o3tfyk12k3OEpRddF68a1unZ5VCN7zoTNtSn2KndUE+ea3m3ROOKRCZxEpmT9nsGnogpFP9x6mnLTCaoLkA==} cpu: [ppc64] os: [linux] - '@rollup/rollup-linux-ppc64-musl@4.57.1': - resolution: {integrity: sha512-NOlUuzesGauESAyEYFSe3QTUguL+lvrN1HtwEEsU2rOwdUDeTMJdO5dUYl/2hKf9jWydJrO9OL/XSSf65R5+Xw==} + '@rollup/rollup-linux-ppc64-musl@4.59.0': + resolution: {integrity: sha512-+2kLtQ4xT3AiIxkzFVFXfsmlZiG5FXYW7ZyIIvGA7Bdeuh9Z0aN4hVyXS/G1E9bTP/vqszNIN/pUKCk/BTHsKA==} cpu: [ppc64] os: [linux] - '@rollup/rollup-linux-riscv64-gnu@4.57.1': - resolution: {integrity: sha512-ptA88htVp0AwUUqhVghwDIKlvJMD/fmL/wrQj99PRHFRAG6Z5nbWoWG4o81Nt9FT+IuqUQi+L31ZKAFeJ5Is+A==} + '@rollup/rollup-linux-riscv64-gnu@4.59.0': + resolution: {integrity: sha512-NDYMpsXYJJaj+I7UdwIuHHNxXZ/b/N2hR15NyH3m2qAtb/hHPA4g4SuuvrdxetTdndfj9b1WOmy73kcPRoERUg==} cpu: [riscv64] os: [linux] - '@rollup/rollup-linux-riscv64-musl@4.57.1': - resolution: {integrity: sha512-S51t7aMMTNdmAMPpBg7OOsTdn4tySRQvklmL3RpDRyknk87+Sp3xaumlatU+ppQ+5raY7sSTcC2beGgvhENfuw==} + '@rollup/rollup-linux-riscv64-musl@4.59.0': + resolution: {integrity: sha512-nLckB8WOqHIf1bhymk+oHxvM9D3tyPndZH8i8+35p/1YiVoVswPid2yLzgX7ZJP0KQvnkhM4H6QZ5m0LzbyIAg==} cpu: [riscv64] os: [linux] - '@rollup/rollup-linux-s390x-gnu@4.57.1': - resolution: {integrity: sha512-Bl00OFnVFkL82FHbEqy3k5CUCKH6OEJL54KCyx2oqsmZnFTR8IoNqBF+mjQVcRCT5sB6yOvK8A37LNm/kPJiZg==} + '@rollup/rollup-linux-s390x-gnu@4.59.0': + resolution: {integrity: sha512-oF87Ie3uAIvORFBpwnCvUzdeYUqi2wY6jRFWJAy1qus/udHFYIkplYRW+wo+GRUP4sKzYdmE1Y3+rY5Gc4ZO+w==} cpu: [s390x] os: [linux] - '@rollup/rollup-linux-x64-gnu@4.57.1': - resolution: {integrity: sha512-ABca4ceT4N+Tv/GtotnWAeXZUZuM/9AQyCyKYyKnpk4yoA7QIAuBt6Hkgpw8kActYlew2mvckXkvx0FfoInnLg==} + '@rollup/rollup-linux-x64-gnu@4.59.0': + resolution: {integrity: sha512-3AHmtQq/ppNuUspKAlvA8HtLybkDflkMuLK4DPo77DfthRb71V84/c4MlWJXixZz4uruIH4uaa07IqoAkG64fg==} cpu: [x64] os: [linux] - '@rollup/rollup-linux-x64-musl@4.57.1': - resolution: {integrity: sha512-HFps0JeGtuOR2convgRRkHCekD7j+gdAuXM+/i6kGzQtFhlCtQkpwtNzkNj6QhCDp7DRJ7+qC/1Vg2jt5iSOFw==} + '@rollup/rollup-linux-x64-musl@4.59.0': + resolution: {integrity: sha512-2UdiwS/9cTAx7qIUZB/fWtToJwvt0Vbo0zmnYt7ED35KPg13Q0ym1g442THLC7VyI6JfYTP4PiSOWyoMdV2/xg==} cpu: [x64] os: [linux] - '@rollup/rollup-openbsd-x64@4.57.1': - resolution: {integrity: sha512-H+hXEv9gdVQuDTgnqD+SQffoWoc0Of59AStSzTEj/feWTBAnSfSD3+Dql1ZruJQxmykT/JVY0dE8Ka7z0DH1hw==} + '@rollup/rollup-openbsd-x64@4.59.0': + resolution: {integrity: sha512-M3bLRAVk6GOwFlPTIxVBSYKUaqfLrn8l0psKinkCFxl4lQvOSz8ZrKDz2gxcBwHFpci0B6rttydI4IpS4IS/jQ==} cpu: [x64] os: [openbsd] - '@rollup/rollup-openharmony-arm64@4.57.1': - resolution: {integrity: sha512-4wYoDpNg6o/oPximyc/NG+mYUejZrCU2q+2w6YZqrAs2UcNUChIZXjtafAiiZSUc7On8v5NyNj34Kzj/Ltk6dQ==} + '@rollup/rollup-openharmony-arm64@4.59.0': + resolution: {integrity: sha512-tt9KBJqaqp5i5HUZzoafHZX8b5Q2Fe7UjYERADll83O4fGqJ49O1FsL6LpdzVFQcpwvnyd0i+K/VSwu/o/nWlA==} cpu: [arm64] os: [openharmony] - '@rollup/rollup-win32-arm64-msvc@4.57.1': - resolution: {integrity: sha512-O54mtsV/6LW3P8qdTcamQmuC990HDfR71lo44oZMZlXU4tzLrbvTii87Ni9opq60ds0YzuAlEr/GNwuNluZyMQ==} + '@rollup/rollup-win32-arm64-msvc@4.59.0': + resolution: {integrity: sha512-V5B6mG7OrGTwnxaNUzZTDTjDS7F75PO1ae6MJYdiMu60sq0CqN5CVeVsbhPxalupvTX8gXVSU9gq+Rx1/hvu6A==} cpu: [arm64] os: [win32] - '@rollup/rollup-win32-ia32-msvc@4.57.1': - resolution: {integrity: sha512-P3dLS+IerxCT/7D2q2FYcRdWRl22dNbrbBEtxdWhXrfIMPP9lQhb5h4Du04mdl5Woq05jVCDPCMF7Ub0NAjIew==} + '@rollup/rollup-win32-ia32-msvc@4.59.0': + resolution: {integrity: sha512-UKFMHPuM9R0iBegwzKF4y0C4J9u8C6MEJgFuXTBerMk7EJ92GFVFYBfOZaSGLu6COf7FxpQNqhNS4c4icUPqxA==} cpu: [ia32] os: [win32] - '@rollup/rollup-win32-x64-gnu@4.57.1': - resolution: {integrity: sha512-VMBH2eOOaKGtIJYleXsi2B8CPVADrh+TyNxJ4mWPnKfLB/DBUmzW+5m1xUrcwWoMfSLagIRpjUFeW5CO5hyciQ==} + '@rollup/rollup-win32-x64-gnu@4.59.0': + resolution: {integrity: sha512-laBkYlSS1n2L8fSo1thDNGrCTQMmxjYY5G0WFWjFFYZkKPjsMBsgJfGf4TLxXrF6RyhI60L8TMOjBMvXiTcxeA==} cpu: [x64] os: [win32] - '@rollup/rollup-win32-x64-msvc@4.57.1': - resolution: {integrity: sha512-mxRFDdHIWRxg3UfIIAwCm6NzvxG0jDX/wBN6KsQFTvKFqqg9vTrWUE68qEjHt19A5wwx5X5aUi2zuZT7YR0jrA==} + '@rollup/rollup-win32-x64-msvc@4.59.0': + resolution: {integrity: sha512-2HRCml6OztYXyJXAvdDXPKcawukWY2GpR5/nxKp4iBgiO3wcoEGkAaqctIbZcNB6KlUQBIqt8VYkNSj2397EfA==} cpu: [x64] os: [win32] @@ -1549,26 +1549,26 @@ packages: '@scarf/scarf@1.4.0': resolution: {integrity: sha512-xxeapPiUXdZAE3che6f3xogoJPeZgig6omHEy1rIY5WVsB3H2BHNnZH+gHG6x91SCWyQCzWGsuL2Hh3ClO5/qQ==} - '@shikijs/core@3.22.0': - resolution: {integrity: sha512-iAlTtSDDbJiRpvgL5ugKEATDtHdUVkqgHDm/gbD2ZS9c88mx7G1zSYjjOxp5Qa0eaW0MAQosFRmJSk354PRoQA==} + '@shikijs/core@3.23.0': + resolution: {integrity: sha512-NSWQz0riNb67xthdm5br6lAkvpDJRTgB36fxlo37ZzM2yq0PQFFzbd8psqC2XMPgCzo1fW6cVi18+ArJ44wqgA==} - '@shikijs/engine-javascript@3.22.0': - resolution: {integrity: sha512-jdKhfgW9CRtj3Tor0L7+yPwdG3CgP7W+ZEqSsojrMzCjD1e0IxIbwUMDDpYlVBlC08TACg4puwFGkZfLS+56Tw==} + '@shikijs/engine-javascript@3.23.0': + resolution: {integrity: sha512-aHt9eiGFobmWR5uqJUViySI1bHMqrAgamWE1TYSUoftkAeCCAiGawPMwM+VCadylQtF4V3VNOZ5LmfItH5f3yA==} - '@shikijs/engine-oniguruma@3.22.0': - resolution: {integrity: sha512-DyXsOG0vGtNtl7ygvabHd7Mt5EY8gCNqR9Y7Lpbbd/PbJvgWrqaKzH1JW6H6qFkuUa8aCxoiYVv8/YfFljiQxA==} + '@shikijs/engine-oniguruma@3.23.0': + resolution: {integrity: sha512-1nWINwKXxKKLqPibT5f4pAFLej9oZzQTsby8942OTlsJzOBZ0MWKiwzMsd+jhzu8YPCHAswGnnN1YtQfirL35g==} - '@shikijs/langs@3.22.0': - resolution: {integrity: sha512-x/42TfhWmp6H00T6uwVrdTJGKgNdFbrEdhaDwSR5fd5zhQ1Q46bHq9EO61SCEWJR0HY7z2HNDMaBZp8JRmKiIA==} + '@shikijs/langs@3.23.0': + resolution: {integrity: sha512-2Ep4W3Re5aB1/62RSYQInK9mM3HsLeB91cHqznAJMuylqjzNVAVCMnNWRHFtcNHXsoNRayP9z1qj4Sq3nMqYXg==} - '@shikijs/themes@3.22.0': - resolution: {integrity: sha512-o+tlOKqsr6FE4+mYJG08tfCFDS+3CG20HbldXeVoyP+cYSUxDhrFf3GPjE60U55iOkkjbpY2uC3It/eeja35/g==} + '@shikijs/themes@3.23.0': + resolution: {integrity: sha512-5qySYa1ZgAT18HR/ypENL9cUSGOeI2x+4IvYJu4JgVJdizn6kG4ia5Q1jDEOi7gTbN4RbuYtmHh0W3eccOrjMA==} - '@shikijs/transformers@3.22.0': - resolution: {integrity: sha512-E7eRV7mwDBjueLF6852n2oYeJYxBq3NSsDk+uyruYAXONv4U8holGmIrT+mPRJQ1J1SNOH6L8G19KRzmBawrFw==} + '@shikijs/transformers@3.23.0': + resolution: {integrity: sha512-F9msZVxdF+krQNSdQ4V+Ja5QemeAoTQ2jxt7nJCwhDsdF1JWS3KxIQXA3lQbyKwS3J61oHRUSv4jYWv3CkaKTQ==} - '@shikijs/types@3.22.0': - resolution: {integrity: sha512-491iAekgKDBFE67z70Ok5a8KBMsQ2IJwOWw3us/7ffQkIBCyOQfm/aNwVMBUriP02QshIfgHCBSIYAl3u2eWjg==} + '@shikijs/types@3.23.0': + resolution: {integrity: sha512-3JZ5HXOZfYjsYSk0yPwBrkupyYSLpAE26Qc0HLghhZNGTZg/SKxXIIgoxOpmmeQP0RRSDJTk1/vPfw9tbw+jSQ==} '@shikijs/vscode-textmate@10.0.2': resolution: {integrity: sha512-83yeghZ2xxin3Nj8z1NMd/NCuca+gsYXswywDy5bHvwlWL8tpTQmzGeUuHd9FC3E/SBEMvzJRwWEOz5gGes9Qg==} @@ -2010,11 +2010,11 @@ packages: babel-plugin-react-compiler: optional: true - '@vitejs/plugin-vue@6.0.4': - resolution: {integrity: sha512-uM5iXipgYIn13UUQCZNdWkYk+sysBeA97d5mHsAoAt1u/wpN3+zxOmsVJWosuzX+IMGRzeYUNytztrYznboIkQ==} + '@vitejs/plugin-vue@6.0.5': + resolution: {integrity: sha512-bL3AxKuQySfk1iGcBsQnoRVexTPJq0Z/ixFVM8OhVJAP6ZXXXLtM7NFKWhLl30Kg7uTBqIaPXbh+nuQCuBDedg==} engines: {node: ^20.19.0 || >=22.12.0} peerDependencies: - vite: ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0-0 + vite: ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0 vue: ^3.2.25 '@vitest/expect@4.1.0': @@ -2046,51 +2046,51 @@ packages: '@vitest/utils@4.1.0': resolution: {integrity: sha512-XfPXT6a8TZY3dcGY8EdwsBulFCIw+BeeX0RZn2x/BtiY/75YGh8FeWGG8QISN/WhaqSrE2OrlDgtF8q5uhOTmw==} - '@vue/compiler-core@3.5.27': - resolution: {integrity: sha512-gnSBQjZA+//qDZen+6a2EdHqJ68Z7uybrMf3SPjEGgG4dicklwDVmMC1AeIHxtLVPT7sn6sH1KOO+tS6gwOUeQ==} + '@vue/compiler-core@3.5.30': + resolution: {integrity: sha512-s3DfdZkcu/qExZ+td75015ljzHc6vE+30cFMGRPROYjqkroYI5NV2X1yAMX9UeyBNWB9MxCfPcsjpLS11nzkkw==} - '@vue/compiler-dom@3.5.27': - resolution: {integrity: sha512-oAFea8dZgCtVVVTEC7fv3T5CbZW9BxpFzGGxC79xakTr6ooeEqmRuvQydIiDAkglZEAd09LgVf1RoDnL54fu5w==} + '@vue/compiler-dom@3.5.30': + resolution: {integrity: sha512-eCFYESUEVYHhiMuK4SQTldO3RYxyMR/UQL4KdGD1Yrkfdx4m/HYuZ9jSfPdA+nWJY34VWndiYdW/wZXyiPEB9g==} - '@vue/compiler-sfc@3.5.27': - resolution: {integrity: sha512-sHZu9QyDPeDmN/MRoshhggVOWE5WlGFStKFwu8G52swATgSny27hJRWteKDSUUzUH+wp+bmeNbhJnEAel/auUQ==} + '@vue/compiler-sfc@3.5.30': + resolution: {integrity: sha512-LqmFPDn89dtU9vI3wHJnwaV6GfTRD87AjWpTWpyrdVOObVtjIuSeZr181z5C4PmVx/V3j2p+0f7edFKGRMpQ5A==} - '@vue/compiler-ssr@3.5.27': - resolution: {integrity: sha512-Sj7h+JHt512fV1cTxKlYhg7qxBvack+BGncSpH+8vnN+KN95iPIcqB5rsbblX40XorP+ilO7VIKlkuu3Xq2vjw==} + '@vue/compiler-ssr@3.5.30': + resolution: {integrity: sha512-NsYK6OMTnx109PSL2IAyf62JP6EUdk4Dmj6AkWcJGBvN0dQoMYtVekAmdqgTtWQgEJo+Okstbf/1p7qZr5H+bA==} - '@vue/devtools-api@8.0.6': - resolution: {integrity: sha512-+lGBI+WTvJmnU2FZqHhEB8J1DXcvNlDeEalz77iYgOdY1jTj1ipSBaKj3sRhYcy+kqA8v/BSuvOz1XJucfQmUA==} + '@vue/devtools-api@8.1.0': + resolution: {integrity: sha512-O44X57jjkLKbLEc4OgL/6fEPOOanRJU8kYpCE8qfKlV96RQZcdzrcLI5mxMuVRUeXhHKIHGhCpHacyCk0HyO4w==} - '@vue/devtools-kit@8.0.6': - resolution: {integrity: sha512-9zXZPTJW72OteDXeSa5RVML3zWDCRcO5t77aJqSs228mdopYj5AiTpihozbsfFJ0IodfNs7pSgOGO3qfCuxDtw==} + '@vue/devtools-kit@8.1.0': + resolution: {integrity: sha512-/NZlS4WtGIB54DA/z10gzk+n/V7zaqSzYZOVlg2CfdnpIKdB61bd7JDIMxf/zrtX41zod8E2/bbEBoW/d7x70Q==} - '@vue/devtools-shared@8.0.6': - resolution: {integrity: sha512-Pp1JylTqlgMJvxW6MGyfTF8vGvlBSCAvMFaDCYa82Mgw7TT5eE5kkHgDvmOGHWeJE4zIDfCpCxHapsK2LtIAJg==} + '@vue/devtools-shared@8.1.0': + resolution: {integrity: sha512-h8uCb4Qs8UT8VdTT5yjY6tOJ//qH7EpxToixR0xqejR55t5OdISIg7AJ7eBkhBs8iu1qG5gY3QQNN1DF1EelAA==} - '@vue/reactivity@3.5.27': - resolution: {integrity: sha512-vvorxn2KXfJ0nBEnj4GYshSgsyMNFnIQah/wczXlsNXt+ijhugmW+PpJ2cNPe4V6jpnBcs0MhCODKllWG+nvoQ==} + '@vue/reactivity@3.5.30': + resolution: {integrity: sha512-179YNgKATuwj9gB+66snskRDOitDiuOZqkYia7mHKJaidOMo/WJxHKF8DuGc4V4XbYTJANlfEKb0yxTQotnx4Q==} - '@vue/runtime-core@3.5.27': - resolution: {integrity: sha512-fxVuX/fzgzeMPn/CLQecWeDIFNt3gQVhxM0rW02Tvp/YmZfXQgcTXlakq7IMutuZ/+Ogbn+K0oct9J3JZfyk3A==} + '@vue/runtime-core@3.5.30': + resolution: {integrity: sha512-e0Z+8PQsUTdwV8TtEsLzUM7SzC7lQwYKePydb7K2ZnmS6jjND+WJXkmmfh/swYzRyfP1EY3fpdesyYoymCzYfg==} - '@vue/runtime-dom@3.5.27': - resolution: {integrity: sha512-/QnLslQgYqSJ5aUmb5F0z0caZPGHRB8LEAQ1s81vHFM5CBfnun63rxhvE/scVb/j3TbBuoZwkJyiLCkBluMpeg==} + '@vue/runtime-dom@3.5.30': + resolution: {integrity: sha512-2UIGakjU4WSQ0T4iwDEW0W7vQj6n7AFn7taqZ9Cvm0Q/RA2FFOziLESrDL4GmtI1wV3jXg5nMoJSYO66egDUBw==} - '@vue/server-renderer@3.5.27': - resolution: {integrity: sha512-qOz/5thjeP1vAFc4+BY3Nr6wxyLhpeQgAE/8dDtKo6a6xdk+L4W46HDZgNmLOBUDEkFXV3G7pRiUqxjX0/2zWA==} + '@vue/server-renderer@3.5.30': + resolution: {integrity: sha512-v+R34icapydRwbZRD0sXwtHqrQJv38JuMB4JxbOxd8NEpGLny7cncMp53W9UH/zo4j8eDHjQ1dEJXwzFQknjtQ==} peerDependencies: - vue: 3.5.27 + vue: 3.5.30 - '@vue/shared@3.5.27': - resolution: {integrity: sha512-dXr/3CgqXsJkZ0n9F3I4elY8wM9jMJpP3pvRG52r6m0tu/MsAFIe6JpXVGeNMd/D9F4hQynWT8Rfuj0bdm9kFQ==} + '@vue/shared@3.5.30': + resolution: {integrity: sha512-YXgQ7JjaO18NeK2K9VTbDHaFy62WrObMa6XERNfNOkAhD1F1oDSf3ZJ7K6GqabZ0BvSDHajp8qfS5Sa2I9n8uQ==} - '@vueuse/core@14.2.0': - resolution: {integrity: sha512-tpjzVl7KCQNVd/qcaCE9XbejL38V6KJAEq/tVXj7mDPtl6JtzmUdnXelSS+ULRkkrDgzYVK7EerQJvd2jR794Q==} + '@vueuse/core@14.2.1': + resolution: {integrity: sha512-3vwDzV+GDUNpdegRY6kzpLm4Igptq+GA0QkJ3W61Iv27YWwW/ufSlOfgQIpN6FZRMG0mkaz4gglJRtq5SeJyIQ==} peerDependencies: vue: ^3.5.0 - '@vueuse/integrations@14.2.0': - resolution: {integrity: sha512-Yuo5XbIi6XkfSXOYKd5SBZwyBEyO3Hd41eeG2555hDbE0Maz/P0BfPJDYhgDXjS9xI0jkWUUp1Zh5lXHOgkwLw==} + '@vueuse/integrations@14.2.1': + resolution: {integrity: sha512-2LIUpBi/67PoXJGqSDQUF0pgQWpNHh7beiA+KG2AbybcNm+pTGWT6oPGlBgUoDWmYwfeQqM/uzOHqcILpKL7nA==} peerDependencies: async-validator: ^4 axios: ^1 @@ -2131,11 +2131,11 @@ packages: universal-cookie: optional: true - '@vueuse/metadata@14.2.0': - resolution: {integrity: sha512-i3axTGjU8b13FtyR4Keeama+43iD+BwX9C2TmzBVKqjSHArF03hjkp2SBZ1m72Jk2UtrX0aYCugBq2R1fhkuAQ==} + '@vueuse/metadata@14.2.1': + resolution: {integrity: sha512-1ButlVtj5Sb/HDtIy1HFr1VqCP4G6Ypqt5MAo0lCgjokrk2mvQKsK2uuy0vqu/Ks+sHfuHo0B9Y9jn9xKdjZsw==} - '@vueuse/shared@14.2.0': - resolution: {integrity: sha512-Z0bmluZTlAXgUcJ4uAFaML16JcD8V0QG00Db3quR642I99JXIDRa2MI2LGxiLVhcBjVnL1jOzIvT5TT2lqJlkA==} + '@vueuse/shared@14.2.1': + resolution: {integrity: sha512-shTJncjV9JTI4oVNyF1FQonetYAiTBd+Qj7cY89SWbXSkx7gyhrgtEdF2ZAVWS1S3SHlaROO6F2IesJxQEkZBw==} peerDependencies: vue: ^3.5.0 @@ -2463,10 +2463,6 @@ packages: resolution: {integrity: sha512-TG2hpqe4ELx54QER/S3HQ9SRVnQnGBtKUz5bLQWtYAQ+o6GpgMs6sYUvaiJjVxb+UXwhRhAEP3m7LbsIZ77Hmw==} engines: {node: '>= 0.8'} - copy-anything@4.0.5: - resolution: {integrity: sha512-7Vv6asjS4gMOuILabD3l739tsaxFQmC+a7pLZm02zyvs8p977bL3zEgq3yDk5rn9B0PbYgIv++jmHcuUab4RhA==} - engines: {node: '>=18'} - cors@2.8.5: resolution: {integrity: sha512-KIHbLJqu73RGr/hnbrO9uBeixNGuvSQjul/jdFvS/KFSIH1hWVd1ng7zOHx+YrEfInLG7q4n6GHQ9cDtxv/P6g==} engines: {node: '>= 0.10'} @@ -3026,8 +3022,8 @@ packages: flatted@3.4.1: resolution: {integrity: sha512-IxfVbRFVlV8V/yRaGzk0UVIcsKKHMSfYw66T/u4nTwlWteQePsxe//LjudR1AMX4tZW3WFCh3Zqa/sjlqpbURQ==} - focus-trap@7.8.0: - resolution: {integrity: sha512-/yNdlIkpWbM0ptxno3ONTuf+2g318kh2ez3KSeZN5dZ8YC6AAmgeWz+GasYYiBJPFaYcSAPeu4GfhUaChzIJXA==} + focus-trap@8.0.0: + resolution: {integrity: sha512-Aa84FOGHs99vVwufDMdq2qgOwXPC2e9U66GcqBhn1/jEHPDhJaP8PYhkIbqG9lhfL5Kddk/567lj46LLHYCRUw==} follow-redirects@1.15.11: resolution: {integrity: sha512-deG2P0JfjrTxl50XGCDyfI97ZGVCxIpfKYmfyrQ54n5FO/0gfIES8C/Psl6kWVDolizcaaxZJnTS0QSMxvnsBQ==} @@ -3268,8 +3264,8 @@ packages: i18next-browser-languagedetector@8.2.1: resolution: {integrity: sha512-bZg8+4bdmaOiApD7N7BPT9W8MLZG+nPTOFlLiJiT8uzKXFjhxw4v2ierCXOwB5sFDMtuA5G4kgYZ0AznZxQ/cw==} - i18next@25.8.19: - resolution: {integrity: sha512-Szzho7sXdv9Do6TvZIyYu+H+94xCrh60cq01DKcYH/gDjpcHimrQApUEQycxw37U7guwbTEJ07CWScGGbgs96w==} + i18next@25.8.20: + resolution: {integrity: sha512-xjo9+lbX/P1tQt3xpO2rfJiBppNfUnNIPKgCvNsTKsvTOCro1Qr/geXVg1N47j5ScOSaXAPq8ET93raK3Rr06A==} peerDependencies: typescript: ^5 peerDependenciesMeta: @@ -3451,10 +3447,6 @@ packages: resolution: {integrity: sha512-mfcwb6IzQyOKTs84CQMrOwW4gQcaTOAWJ0zzJCl2WSPDrWk/OzDaImWFH3djXhb24g4eudZfLRozAvPGw4d9hQ==} engines: {node: '>= 0.4'} - is-what@5.5.0: - resolution: {integrity: sha512-oG7cgbmg5kLYae2N5IVd3jm2s+vldjxJzK1pcu9LfpGuQ93MQSzo0okvRna+7y5ifrD+20FE8FvjusyGaz14fw==} - engines: {node: '>=18'} - isarray@2.0.5: resolution: {integrity: sha512-xHjhDr3cNBK0BzdUJSPXZntQUx/mwMS5Rw4A7lPJ90XGAO6ISP/ePDNuo0vhqOZU+UD5JoodwCAAoZQd3FeAKw==} @@ -3828,9 +3820,6 @@ packages: resolution: {integrity: sha512-bAxsR8BVfj60DWXHE3u30oHzfl4G7khkSuPW+qvpd7jFRHm7dLxOjUk1EHACJ/hxLY8phGJ0YhYHZo7jil7Qdg==} engines: {node: '>= 8'} - mitt@3.0.1: - resolution: {integrity: sha512-vKivATfr97l2/QBCYAkXYDbrIWPM2IIKEl7YPhjCvKlG3kE2gm+uBo6nEXK3M5/Ffh/FLpKExzOQ3JJoJGFKBw==} - mkdirp@1.0.4: resolution: {integrity: sha512-vVqVZQyf3WLx2Shd0qJ9xuvqgAyKPLAiqITEtqW0oIUjzo3PePDd6fW9iFz30ef7Ysp/oiWqbhszeGWW2T6Gzw==} engines: {node: '>=10'} @@ -3945,8 +3934,8 @@ packages: oniguruma-parser@0.12.1: resolution: {integrity: sha512-8Unqkvk1RYc6yq2WBYRj4hdnsAxVze8i7iPfQr8e4uSP3tRv0rpZcbGUDvxfQQcdwHt/e9PrMvGCsa8OqG9X3w==} - oniguruma-to-es@4.3.4: - resolution: {integrity: sha512-3VhUGN3w2eYxnTzHn+ikMI+fp/96KoRSVK9/kMTcFqj1NRDh2IhQCKvYxDnWePKRXY/AqH+Fuiyb7VHSzBjHfA==} + oniguruma-to-es@4.3.5: + resolution: {integrity: sha512-Zjygswjpsewa0NLTsiizVuMQZbp0MDyM6lIt66OxsF21npUDlzpHi1Mgb/qhQdkb+dWFTzJmFbEWdvZgRho8eQ==} openapi-backend@5.16.1: resolution: {integrity: sha512-1tfLpC+7CajKv08vuFOLm4t8rJvJyqKuyau5IIIrGg3YuQYhmP7JqDL6p6WnbDCusmh3krCrKXoHB6hLF/iHcQ==} @@ -4062,6 +4051,10 @@ packages: resolution: {integrity: sha512-3Ybi1tAuwAP9s0r1UQ2J4n5Y0G05bJkpUIO0/bI9MhwmD70S5aTWbXGBwxHrelT+XM1k6dM0pk+SwNkpTRN7Pg==} engines: {node: ^10 || ^12 || >=14} + postcss@8.5.8: + resolution: {integrity: sha512-OW/rX8O/jXnm82Ey1k44pObPtdblfiuWnrd8X7GJ7emImCOstunGbXUpp7HdBrFQX6rJzn3sPT397Wp5aCwCHg==} + engines: {node: ^10 || ^12 || >=14} + prelude-ls@1.2.1: resolution: {integrity: sha512-vkcDPrRZo1QZLbn5RLGPpg/WmIQ65qoWWhcGKf/b5eplkkarX0m9z8ppCat4mlOqUsWpyNuYgO3VRyrYHSzX5g==} engines: {node: '>= 0.8.0'} @@ -4319,8 +4312,8 @@ packages: engines: {node: ^20.19.0 || >=22.12.0} hasBin: true - rollup@4.57.1: - resolution: {integrity: sha512-oQL6lgK3e2QZeQ7gcgIkS2YZPg5slw37hYufJ3edKlfQSGGm8ICoxswK15ntSzF/a8+h7ekRy7k7oWc3BQ7y8A==} + rollup@4.59.0: + resolution: {integrity: sha512-2oMpl67a3zCH9H79LeMcbDhXW/UmWG/y2zuqnF2jQq5uq9TbM9TVyXvA4+t+ne2IIkBdrLpAaRQAvo7YI/Yyeg==} engines: {node: '>=18.0.0', npm: '>=8.0.0'} hasBin: true @@ -4475,8 +4468,8 @@ packages: resolution: {integrity: sha512-7++dFhtcx3353uBaq8DDR4NuxBetBzC7ZQOhmTQInHEd6bSrXdiEyzCvG07Z44UYdLShWUyXt5M/yhz8ekcb1A==} engines: {node: '>=8'} - shiki@3.22.0: - resolution: {integrity: sha512-LBnhsoYEe0Eou4e1VgJACes+O6S6QC0w71fCSp5Oya79inkwkm15gQ1UF6VtQ8j/taMDh79hAB49WUk8ALQW3g==} + shiki@3.23.0: + resolution: {integrity: sha512-55Dj73uq9ZXL5zyeRPzHQsK7Nbyt6Y10k5s7OjuFZGMhpp4r/rsLBH0o/0fstIzX1Lep9VxefWljK/SKCzygIA==} side-channel-list@1.0.0: resolution: {integrity: sha512-FCLHtRD/gnpCiCHEiJLOwdmFP+wzCmDEkc9y7NsYxeF4u7Btsn1ZuwgwJGxImImHicJArLP4R0yX4c2KCrMrTA==} @@ -4549,10 +4542,6 @@ packages: space-separated-tokens@2.0.2: resolution: {integrity: sha512-PEGlAwrG8yXGXRjW32fGbg66JAlOAwbObuqVoJpv/mRgoWDQfgH1wDPvtzWyUSNAXBGSk8h755YDbbcEy3SH2Q==} - speakingurl@14.0.1: - resolution: {integrity: sha512-1POYv7uv2gXoyGFpBCmpDVSNV74IfsWlDW216UPjbWufNf+bSU6GdbDsxdcxtfwb4xlI3yxzOTKClUosxARYrQ==} - engines: {node: '>=0.10.0'} - split-grid@1.0.11: resolution: {integrity: sha512-ELtFtxc3r5we5GZfe6Fi0BFFxIi2M6BY1YEntBscKRDD3zx4JVHqx2VnTRSQu1BixCYSTH3MTjKd4esI2R7EgQ==} @@ -4623,10 +4612,6 @@ packages: resolution: {integrity: sha512-B+4Ik7ROgVKrQsXTV0Jwp2u+PXYLSlqtDAhYnkkD+zn3yg8s/zjA2MeGayPoY/KICrbitwneDHrjSotxKL+0XQ==} engines: {node: '>=14.18.0'} - superjson@2.2.6: - resolution: {integrity: sha512-H+ue8Zo4vJmV2nRjpx86P35lzwDT3nItnIsocgumgr0hHMQ+ZGq5vrERg9kJBo5AWGmxZDhzDo+WVIJqkB0cGA==} - engines: {node: '>=16'} - supertest@7.2.2: resolution: {integrity: sha512-oK8WG9diS3DlhdUkcFn4tkNIiIbBx9lI2ClF8K+b2/m8Eyv47LSawxUzZQSNKUrVb2KsqeTDCcjAAVPYaSLVTA==} engines: {node: '>=14.18.0'} @@ -4827,8 +4812,8 @@ packages: unist-util-visit-parents@6.0.2: resolution: {integrity: sha512-goh1s1TBrqSqukSc8wrjwWhL0hiJxgA8m4kFxGlQ+8FYQ3C/m11FcTs4YYem7V664AhHVvgoQLk890Ssdsr2IQ==} - unist-util-visit@5.0.0: - resolution: {integrity: sha512-MR04uvD+07cwl/yhVuVWAtw+3GOR/knlL55Nd/wAdblk27GCVt3lqpTivy/tkJcZoNPzTwS1Y+KMojlLDhoTzg==} + unist-util-visit@5.1.0: + resolution: {integrity: sha512-m+vIdyeCOpdr/QeQCu2EzxX/ohgS8KbnPDgFni4dQsfSCtpz8UqDyY5GjRru8PDKuYn7Fq19j1CQ+nJSsGKOzg==} universalify@0.1.2: resolution: {integrity: sha512-rBJeI5CXAlmy1pV+617WB9J63U6XcazHHF2f2dbJix4XzpUF0RS3Zbj0FGIOCAva5P/d/GBOYaACQ1w+0azUkg==} @@ -4951,8 +4936,8 @@ packages: yaml: optional: true - vitepress@2.0.0-alpha.16: - resolution: {integrity: sha512-w1nwsefDVIsje7BZr2tsKxkZutDGjG0YoQ2yxO7+a9tvYVqfljYbwj5LMYkPy8Tb7YbPwa22HtIhk62jbrvuEQ==} + vitepress@2.0.0-alpha.17: + resolution: {integrity: sha512-Z3VPUpwk/bHYqt1uMVOOK1/4xFiWQov1GNc2FvMdz6kvje4JRXEOngVI9C+bi5jeedMSHiA4dwKkff1NCvbZ9Q==} hasBin: true peerDependencies: markdown-it-mathjax3: ^4 @@ -5005,8 +4990,8 @@ packages: resolution: {integrity: sha512-Dhxzh5HZuiHQhbvTW9AMetFfBHDMYpo23Uo9btPXgdYP+3T5S+p+jgNy7spra+veYhBP2dCSgxR/i2Y02h5/6w==} engines: {node: '>=0.10.0'} - vue@3.5.27: - resolution: {integrity: sha512-aJ/UtoEyFySPBGarREmN4z6qNKpbEguYHMmXSiOGk69czc+zhs0NF6tEFrY8TZKAl8N/LYAkd4JHVd5E/AsSmw==} + vue@3.5.30: + resolution: {integrity: sha512-hTHLc6VNZyzzEH/l7PFGjpcTvUgiaPK5mdLkbjrTeWSRcEfxFrv56g/XckIYlE9ckuobsdwqd5mk2g1sBkMewg==} peerDependencies: typescript: '*' peerDependenciesMeta: @@ -5425,11 +5410,11 @@ snapshots: '@csstools/css-tokenizer@4.0.0': {} - '@docsearch/css@4.5.3': {} + '@docsearch/css@4.6.0': {} - '@docsearch/js@4.5.3': {} + '@docsearch/js@4.6.0': {} - '@docsearch/sidepanel-js@4.5.3': {} + '@docsearch/sidepanel-js@4.6.0': {} '@emnapi/core@1.7.1': dependencies: @@ -5650,7 +5635,7 @@ snapshots: '@humanwhocodes/retry@0.4.3': {} - '@iconify-json/simple-icons@1.2.69': + '@iconify-json/simple-icons@1.2.74': dependencies: '@iconify/types': 2.0.0 @@ -6006,79 +5991,79 @@ snapshots: '@rolldown/pluginutils@1.0.0-rc.7': {} - '@rollup/rollup-android-arm-eabi@4.57.1': + '@rollup/rollup-android-arm-eabi@4.59.0': optional: true - '@rollup/rollup-android-arm64@4.57.1': + '@rollup/rollup-android-arm64@4.59.0': optional: true - '@rollup/rollup-darwin-arm64@4.57.1': + '@rollup/rollup-darwin-arm64@4.59.0': optional: true - '@rollup/rollup-darwin-x64@4.57.1': + '@rollup/rollup-darwin-x64@4.59.0': optional: true - '@rollup/rollup-freebsd-arm64@4.57.1': + '@rollup/rollup-freebsd-arm64@4.59.0': optional: true - '@rollup/rollup-freebsd-x64@4.57.1': + '@rollup/rollup-freebsd-x64@4.59.0': optional: true - '@rollup/rollup-linux-arm-gnueabihf@4.57.1': + '@rollup/rollup-linux-arm-gnueabihf@4.59.0': optional: true - '@rollup/rollup-linux-arm-musleabihf@4.57.1': + '@rollup/rollup-linux-arm-musleabihf@4.59.0': optional: true - '@rollup/rollup-linux-arm64-gnu@4.57.1': + '@rollup/rollup-linux-arm64-gnu@4.59.0': optional: true - '@rollup/rollup-linux-arm64-musl@4.57.1': + '@rollup/rollup-linux-arm64-musl@4.59.0': optional: true - '@rollup/rollup-linux-loong64-gnu@4.57.1': + '@rollup/rollup-linux-loong64-gnu@4.59.0': optional: true - '@rollup/rollup-linux-loong64-musl@4.57.1': + '@rollup/rollup-linux-loong64-musl@4.59.0': optional: true - '@rollup/rollup-linux-ppc64-gnu@4.57.1': + '@rollup/rollup-linux-ppc64-gnu@4.59.0': optional: true - '@rollup/rollup-linux-ppc64-musl@4.57.1': + '@rollup/rollup-linux-ppc64-musl@4.59.0': optional: true - '@rollup/rollup-linux-riscv64-gnu@4.57.1': + '@rollup/rollup-linux-riscv64-gnu@4.59.0': optional: true - '@rollup/rollup-linux-riscv64-musl@4.57.1': + '@rollup/rollup-linux-riscv64-musl@4.59.0': optional: true - '@rollup/rollup-linux-s390x-gnu@4.57.1': + '@rollup/rollup-linux-s390x-gnu@4.59.0': optional: true - '@rollup/rollup-linux-x64-gnu@4.57.1': + '@rollup/rollup-linux-x64-gnu@4.59.0': optional: true - '@rollup/rollup-linux-x64-musl@4.57.1': + '@rollup/rollup-linux-x64-musl@4.59.0': optional: true - '@rollup/rollup-openbsd-x64@4.57.1': + '@rollup/rollup-openbsd-x64@4.59.0': optional: true - '@rollup/rollup-openharmony-arm64@4.57.1': + '@rollup/rollup-openharmony-arm64@4.59.0': optional: true - '@rollup/rollup-win32-arm64-msvc@4.57.1': + '@rollup/rollup-win32-arm64-msvc@4.59.0': optional: true - '@rollup/rollup-win32-ia32-msvc@4.57.1': + '@rollup/rollup-win32-ia32-msvc@4.59.0': optional: true - '@rollup/rollup-win32-x64-gnu@4.57.1': + '@rollup/rollup-win32-x64-gnu@4.59.0': optional: true - '@rollup/rollup-win32-x64-msvc@4.57.1': + '@rollup/rollup-win32-x64-msvc@4.59.0': optional: true '@rtsao/scc@1.1.0': {} @@ -6087,38 +6072,38 @@ snapshots: '@scarf/scarf@1.4.0': {} - '@shikijs/core@3.22.0': + '@shikijs/core@3.23.0': dependencies: - '@shikijs/types': 3.22.0 + '@shikijs/types': 3.23.0 '@shikijs/vscode-textmate': 10.0.2 '@types/hast': 3.0.4 hast-util-to-html: 9.0.5 - '@shikijs/engine-javascript@3.22.0': + '@shikijs/engine-javascript@3.23.0': dependencies: - '@shikijs/types': 3.22.0 + '@shikijs/types': 3.23.0 '@shikijs/vscode-textmate': 10.0.2 - oniguruma-to-es: 4.3.4 + oniguruma-to-es: 4.3.5 - '@shikijs/engine-oniguruma@3.22.0': + '@shikijs/engine-oniguruma@3.23.0': dependencies: - '@shikijs/types': 3.22.0 + '@shikijs/types': 3.23.0 '@shikijs/vscode-textmate': 10.0.2 - '@shikijs/langs@3.22.0': + '@shikijs/langs@3.23.0': dependencies: - '@shikijs/types': 3.22.0 + '@shikijs/types': 3.23.0 - '@shikijs/themes@3.22.0': + '@shikijs/themes@3.23.0': dependencies: - '@shikijs/types': 3.22.0 + '@shikijs/types': 3.23.0 - '@shikijs/transformers@3.22.0': + '@shikijs/transformers@3.23.0': dependencies: - '@shikijs/core': 3.22.0 - '@shikijs/types': 3.22.0 + '@shikijs/core': 3.23.0 + '@shikijs/types': 3.23.0 - '@shikijs/types@3.22.0': + '@shikijs/types@3.23.0': dependencies: '@shikijs/vscode-textmate': 10.0.2 '@types/hast': 3.0.4 @@ -6618,11 +6603,11 @@ snapshots: optionalDependencies: babel-plugin-react-compiler: 19.1.0-rc.3 - '@vitejs/plugin-vue@6.0.4(vite@7.3.1(@types/node@25.5.0)(lightningcss@1.30.2)(tsx@4.21.0))(vue@3.5.27(typescript@5.9.3))': + '@vitejs/plugin-vue@6.0.5(vite@7.3.1(@types/node@25.5.0)(lightningcss@1.30.2)(tsx@4.21.0))(vue@3.5.30(typescript@5.9.3))': dependencies: '@rolldown/pluginutils': 1.0.0-rc.2 vite: 7.3.1(@types/node@25.5.0)(lightningcss@1.30.2)(tsx@4.21.0) - vue: 3.5.27(typescript@5.9.3) + vue: 3.5.30(typescript@5.9.3) '@vitest/expect@4.1.0': dependencies: @@ -6665,100 +6650,95 @@ snapshots: convert-source-map: 2.0.0 tinyrainbow: 3.1.0 - '@vue/compiler-core@3.5.27': + '@vue/compiler-core@3.5.30': dependencies: - '@babel/parser': 7.29.0 - '@vue/shared': 3.5.27 + '@babel/parser': 7.29.2 + '@vue/shared': 3.5.30 entities: 7.0.1 estree-walker: 2.0.2 source-map-js: 1.2.1 - '@vue/compiler-dom@3.5.27': + '@vue/compiler-dom@3.5.30': dependencies: - '@vue/compiler-core': 3.5.27 - '@vue/shared': 3.5.27 + '@vue/compiler-core': 3.5.30 + '@vue/shared': 3.5.30 - '@vue/compiler-sfc@3.5.27': + '@vue/compiler-sfc@3.5.30': dependencies: - '@babel/parser': 7.29.0 - '@vue/compiler-core': 3.5.27 - '@vue/compiler-dom': 3.5.27 - '@vue/compiler-ssr': 3.5.27 - '@vue/shared': 3.5.27 + '@babel/parser': 7.29.2 + '@vue/compiler-core': 3.5.30 + '@vue/compiler-dom': 3.5.30 + '@vue/compiler-ssr': 3.5.30 + '@vue/shared': 3.5.30 estree-walker: 2.0.2 magic-string: 0.30.21 - postcss: 8.5.6 + postcss: 8.5.8 source-map-js: 1.2.1 - '@vue/compiler-ssr@3.5.27': + '@vue/compiler-ssr@3.5.30': dependencies: - '@vue/compiler-dom': 3.5.27 - '@vue/shared': 3.5.27 + '@vue/compiler-dom': 3.5.30 + '@vue/shared': 3.5.30 - '@vue/devtools-api@8.0.6': + '@vue/devtools-api@8.1.0': dependencies: - '@vue/devtools-kit': 8.0.6 + '@vue/devtools-kit': 8.1.0 - '@vue/devtools-kit@8.0.6': + '@vue/devtools-kit@8.1.0': dependencies: - '@vue/devtools-shared': 8.0.6 + '@vue/devtools-shared': 8.1.0 birpc: 2.9.0 hookable: 5.5.3 - mitt: 3.0.1 perfect-debounce: 2.1.0 - speakingurl: 14.0.1 - superjson: 2.2.6 - '@vue/devtools-shared@8.0.6': - dependencies: - rfdc: 1.4.1 + '@vue/devtools-shared@8.1.0': {} - '@vue/reactivity@3.5.27': + '@vue/reactivity@3.5.30': dependencies: - '@vue/shared': 3.5.27 + '@vue/shared': 3.5.30 - '@vue/runtime-core@3.5.27': + '@vue/runtime-core@3.5.30': dependencies: - '@vue/reactivity': 3.5.27 - '@vue/shared': 3.5.27 + '@vue/reactivity': 3.5.30 + '@vue/shared': 3.5.30 - '@vue/runtime-dom@3.5.27': + '@vue/runtime-dom@3.5.30': dependencies: - '@vue/reactivity': 3.5.27 - '@vue/runtime-core': 3.5.27 - '@vue/shared': 3.5.27 + '@vue/reactivity': 3.5.30 + '@vue/runtime-core': 3.5.30 + '@vue/shared': 3.5.30 csstype: 3.2.3 - '@vue/server-renderer@3.5.27(vue@3.5.27(typescript@5.9.3))': + '@vue/server-renderer@3.5.30(vue@3.5.30(typescript@5.9.3))': dependencies: - '@vue/compiler-ssr': 3.5.27 - '@vue/shared': 3.5.27 - vue: 3.5.27(typescript@5.9.3) + '@vue/compiler-ssr': 3.5.30 + '@vue/shared': 3.5.30 + vue: 3.5.30(typescript@5.9.3) - '@vue/shared@3.5.27': {} + '@vue/shared@3.5.30': {} - '@vueuse/core@14.2.0(vue@3.5.27(typescript@5.9.3))': + '@vueuse/core@14.2.1(vue@3.5.30(typescript@5.9.3))': dependencies: '@types/web-bluetooth': 0.0.21 - '@vueuse/metadata': 14.2.0 - '@vueuse/shared': 14.2.0(vue@3.5.27(typescript@5.9.3)) - vue: 3.5.27(typescript@5.9.3) + '@vueuse/metadata': 14.2.1 + '@vueuse/shared': 14.2.1(vue@3.5.30(typescript@5.9.3)) + vue: 3.5.30(typescript@5.9.3) - '@vueuse/integrations@14.2.0(axios@1.13.6)(focus-trap@7.8.0)(jwt-decode@4.0.0)(vue@3.5.27(typescript@5.9.3))': + '@vueuse/integrations@14.2.1(axios@1.13.6)(focus-trap@8.0.0)(jwt-decode@4.0.0)(vue@3.5.30(typescript@5.9.3))': dependencies: - '@vueuse/core': 14.2.0(vue@3.5.27(typescript@5.9.3)) - '@vueuse/shared': 14.2.0(vue@3.5.27(typescript@5.9.3)) - vue: 3.5.27(typescript@5.9.3) + '@vueuse/core': 14.2.1(vue@3.5.30(typescript@5.9.3)) + '@vueuse/shared': 14.2.1(vue@3.5.30(typescript@5.9.3)) + vue: 3.5.30(typescript@5.9.3) optionalDependencies: axios: 1.13.6 - focus-trap: 7.8.0 + focus-trap: 8.0.0 jwt-decode: 4.0.0 - '@vueuse/metadata@14.2.0': {} + '@vueuse/metadata@14.2.1': {} - '@vueuse/shared@14.2.0(vue@3.5.27(typescript@5.9.3))': + '@vueuse/shared@14.2.1(vue@3.5.30(typescript@5.9.3))': dependencies: - vue: 3.5.27(typescript@5.9.3) + vue: 3.5.30(typescript@5.9.3) accepts@1.3.8: dependencies: @@ -7082,10 +7062,6 @@ snapshots: depd: 2.0.0 keygrip: 1.1.0 - copy-anything@4.0.5: - dependencies: - is-what: 5.5.0 - cors@2.8.5: dependencies: object-assign: 4.1.1 @@ -7814,7 +7790,7 @@ snapshots: flatted@3.4.1: {} - focus-trap@7.8.0: + focus-trap@8.0.0: dependencies: tabbable: 6.4.0 @@ -8121,7 +8097,7 @@ snapshots: dependencies: '@babel/runtime': 7.28.6 - i18next@25.8.19(typescript@5.9.3): + i18next@25.8.20(typescript@5.9.3): dependencies: '@babel/runtime': 7.29.2 optionalDependencies: @@ -8291,8 +8267,6 @@ snapshots: call-bound: 1.0.4 get-intrinsic: 1.3.0 - is-what@5.5.0: {} - isarray@2.0.5: {} isexe@2.0.0: {} @@ -8588,7 +8562,7 @@ snapshots: micromark-util-sanitize-uri: 2.0.1 trim-lines: 3.0.1 unist-util-position: 5.0.0 - unist-util-visit: 5.0.0 + unist-util-visit: 5.1.0 vfile: 6.0.3 mdn-data@2.27.1: {} @@ -8677,8 +8651,6 @@ snapshots: minipass: 3.3.6 yallist: 4.0.0 - mitt@3.0.1: {} - mkdirp@1.0.4: {} mocha-froth@0.2.10: {} @@ -8808,7 +8780,7 @@ snapshots: oniguruma-parser@0.12.1: {} - oniguruma-to-es@4.3.4: + oniguruma-to-es@4.3.5: dependencies: oniguruma-parser: 0.12.1 regex: 6.1.0 @@ -8940,6 +8912,12 @@ snapshots: picocolors: 1.1.1 source-map-js: 1.2.1 + postcss@8.5.8: + dependencies: + nanoid: 3.3.11 + picocolors: 1.1.1 + source-map-js: 1.2.1 + prelude-ls@1.2.1: {} prom-client@15.1.3: @@ -9019,11 +8997,11 @@ snapshots: dependencies: react: 19.2.4 - react-i18next@16.5.8(i18next@25.8.19(typescript@5.9.3))(react-dom@19.2.4(react@19.2.4))(react@19.2.4)(typescript@5.9.3): + react-i18next@16.5.8(i18next@25.8.20(typescript@5.9.3))(react-dom@19.2.4(react@19.2.4))(react@19.2.4)(typescript@5.9.3): dependencies: '@babel/runtime': 7.28.6 html-parse-stringify: 3.0.1 - i18next: 25.8.19(typescript@5.9.3) + i18next: 25.8.20(typescript@5.9.3) react: 19.2.4 use-sync-external-store: 1.6.0(react@19.2.4) optionalDependencies: @@ -9184,35 +9162,35 @@ snapshots: '@rolldown/binding-win32-arm64-msvc': 1.0.0-beta.53 '@rolldown/binding-win32-x64-msvc': 1.0.0-beta.53 - rollup@4.57.1: + rollup@4.59.0: dependencies: '@types/estree': 1.0.8 optionalDependencies: - '@rollup/rollup-android-arm-eabi': 4.57.1 - '@rollup/rollup-android-arm64': 4.57.1 - '@rollup/rollup-darwin-arm64': 4.57.1 - '@rollup/rollup-darwin-x64': 4.57.1 - '@rollup/rollup-freebsd-arm64': 4.57.1 - '@rollup/rollup-freebsd-x64': 4.57.1 - '@rollup/rollup-linux-arm-gnueabihf': 4.57.1 - '@rollup/rollup-linux-arm-musleabihf': 4.57.1 - '@rollup/rollup-linux-arm64-gnu': 4.57.1 - '@rollup/rollup-linux-arm64-musl': 4.57.1 - '@rollup/rollup-linux-loong64-gnu': 4.57.1 - '@rollup/rollup-linux-loong64-musl': 4.57.1 - '@rollup/rollup-linux-ppc64-gnu': 4.57.1 - '@rollup/rollup-linux-ppc64-musl': 4.57.1 - '@rollup/rollup-linux-riscv64-gnu': 4.57.1 - '@rollup/rollup-linux-riscv64-musl': 4.57.1 - '@rollup/rollup-linux-s390x-gnu': 4.57.1 - '@rollup/rollup-linux-x64-gnu': 4.57.1 - '@rollup/rollup-linux-x64-musl': 4.57.1 - '@rollup/rollup-openbsd-x64': 4.57.1 - '@rollup/rollup-openharmony-arm64': 4.57.1 - '@rollup/rollup-win32-arm64-msvc': 4.57.1 - '@rollup/rollup-win32-ia32-msvc': 4.57.1 - '@rollup/rollup-win32-x64-gnu': 4.57.1 - '@rollup/rollup-win32-x64-msvc': 4.57.1 + '@rollup/rollup-android-arm-eabi': 4.59.0 + '@rollup/rollup-android-arm64': 4.59.0 + '@rollup/rollup-darwin-arm64': 4.59.0 + '@rollup/rollup-darwin-x64': 4.59.0 + '@rollup/rollup-freebsd-arm64': 4.59.0 + '@rollup/rollup-freebsd-x64': 4.59.0 + '@rollup/rollup-linux-arm-gnueabihf': 4.59.0 + '@rollup/rollup-linux-arm-musleabihf': 4.59.0 + '@rollup/rollup-linux-arm64-gnu': 4.59.0 + '@rollup/rollup-linux-arm64-musl': 4.59.0 + '@rollup/rollup-linux-loong64-gnu': 4.59.0 + '@rollup/rollup-linux-loong64-musl': 4.59.0 + '@rollup/rollup-linux-ppc64-gnu': 4.59.0 + '@rollup/rollup-linux-ppc64-musl': 4.59.0 + '@rollup/rollup-linux-riscv64-gnu': 4.59.0 + '@rollup/rollup-linux-riscv64-musl': 4.59.0 + '@rollup/rollup-linux-s390x-gnu': 4.59.0 + '@rollup/rollup-linux-x64-gnu': 4.59.0 + '@rollup/rollup-linux-x64-musl': 4.59.0 + '@rollup/rollup-openbsd-x64': 4.59.0 + '@rollup/rollup-openharmony-arm64': 4.59.0 + '@rollup/rollup-win32-arm64-msvc': 4.59.0 + '@rollup/rollup-win32-ia32-msvc': 4.59.0 + '@rollup/rollup-win32-x64-gnu': 4.59.0 + '@rollup/rollup-win32-x64-msvc': 4.59.0 fsevents: 2.3.3 router@2.2.0: @@ -9372,14 +9350,14 @@ snapshots: shebang-regex@3.0.0: {} - shiki@3.22.0: + shiki@3.23.0: dependencies: - '@shikijs/core': 3.22.0 - '@shikijs/engine-javascript': 3.22.0 - '@shikijs/engine-oniguruma': 3.22.0 - '@shikijs/langs': 3.22.0 - '@shikijs/themes': 3.22.0 - '@shikijs/types': 3.22.0 + '@shikijs/core': 3.23.0 + '@shikijs/engine-javascript': 3.23.0 + '@shikijs/engine-oniguruma': 3.23.0 + '@shikijs/langs': 3.23.0 + '@shikijs/themes': 3.23.0 + '@shikijs/types': 3.23.0 '@shikijs/vscode-textmate': 10.0.2 '@types/hast': 3.0.4 @@ -9490,8 +9468,6 @@ snapshots: space-separated-tokens@2.0.2: {} - speakingurl@14.0.1: {} - split-grid@1.0.11: {} sprintf-js@1.1.3: {} @@ -9580,10 +9556,6 @@ snapshots: transitivePeerDependencies: - supports-color - superjson@2.2.6: - dependencies: - copy-anything: 4.0.5 - supertest@7.2.2: dependencies: cookie-signature: 1.2.2 @@ -9796,7 +9768,7 @@ snapshots: '@types/unist': 3.0.3 unist-util-is: 6.0.1 - unist-util-visit@5.0.0: + unist-util-visit@5.1.0: dependencies: '@types/unist': 3.0.3 unist-util-is: 6.0.1 @@ -9894,8 +9866,8 @@ snapshots: esbuild: 0.27.4 fdir: 6.5.0(picomatch@4.0.3) picomatch: 4.0.3 - postcss: 8.5.6 - rollup: 4.57.1 + postcss: 8.5.8 + rollup: 4.59.0 tinyglobby: 0.2.15 optionalDependencies: '@types/node': 25.5.0 @@ -9903,29 +9875,29 @@ snapshots: lightningcss: 1.30.2 tsx: 4.21.0 - vitepress@2.0.0-alpha.16(@types/node@25.5.0)(axios@1.13.6)(jwt-decode@4.0.0)(lightningcss@1.30.2)(postcss@8.5.6)(tsx@4.21.0)(typescript@5.9.3): + vitepress@2.0.0-alpha.17(@types/node@25.5.0)(axios@1.13.6)(jwt-decode@4.0.0)(lightningcss@1.30.2)(postcss@8.5.8)(tsx@4.21.0)(typescript@5.9.3): dependencies: - '@docsearch/css': 4.5.3 - '@docsearch/js': 4.5.3 - '@docsearch/sidepanel-js': 4.5.3 - '@iconify-json/simple-icons': 1.2.69 - '@shikijs/core': 3.22.0 - '@shikijs/transformers': 3.22.0 - '@shikijs/types': 3.22.0 + '@docsearch/css': 4.6.0 + '@docsearch/js': 4.6.0 + '@docsearch/sidepanel-js': 4.6.0 + '@iconify-json/simple-icons': 1.2.74 + '@shikijs/core': 3.23.0 + '@shikijs/transformers': 3.23.0 + '@shikijs/types': 3.23.0 '@types/markdown-it': 14.1.2 - '@vitejs/plugin-vue': 6.0.4(vite@7.3.1(@types/node@25.5.0)(lightningcss@1.30.2)(tsx@4.21.0))(vue@3.5.27(typescript@5.9.3)) - '@vue/devtools-api': 8.0.6 - '@vue/shared': 3.5.27 - '@vueuse/core': 14.2.0(vue@3.5.27(typescript@5.9.3)) - '@vueuse/integrations': 14.2.0(axios@1.13.6)(focus-trap@7.8.0)(jwt-decode@4.0.0)(vue@3.5.27(typescript@5.9.3)) - focus-trap: 7.8.0 + '@vitejs/plugin-vue': 6.0.5(vite@7.3.1(@types/node@25.5.0)(lightningcss@1.30.2)(tsx@4.21.0))(vue@3.5.30(typescript@5.9.3)) + '@vue/devtools-api': 8.1.0 + '@vue/shared': 3.5.30 + '@vueuse/core': 14.2.1(vue@3.5.30(typescript@5.9.3)) + '@vueuse/integrations': 14.2.1(axios@1.13.6)(focus-trap@8.0.0)(jwt-decode@4.0.0)(vue@3.5.30(typescript@5.9.3)) + focus-trap: 8.0.0 mark.js: 8.11.1 minisearch: 7.2.0 - shiki: 3.22.0 + shiki: 3.23.0 vite: 7.3.1(@types/node@25.5.0)(lightningcss@1.30.2)(tsx@4.21.0) - vue: 3.5.27(typescript@5.9.3) + vue: 3.5.30(typescript@5.9.3) optionalDependencies: - postcss: 8.5.6 + postcss: 8.5.8 transitivePeerDependencies: - '@types/node' - async-validator @@ -9982,13 +9954,13 @@ snapshots: void-elements@3.1.0: {} - vue@3.5.27(typescript@5.9.3): + vue@3.5.30(typescript@5.9.3): dependencies: - '@vue/compiler-dom': 3.5.27 - '@vue/compiler-sfc': 3.5.27 - '@vue/runtime-dom': 3.5.27 - '@vue/server-renderer': 3.5.27(vue@3.5.27(typescript@5.9.3)) - '@vue/shared': 3.5.27 + '@vue/compiler-dom': 3.5.30 + '@vue/compiler-sfc': 3.5.30 + '@vue/runtime-dom': 3.5.30 + '@vue/server-renderer': 3.5.30(vue@3.5.30(typescript@5.9.3)) + '@vue/shared': 3.5.30 optionalDependencies: typescript: 5.9.3 From 9a922958223d2b3f51992b47516943d2f78f8c08 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Fri, 20 Mar 2026 16:16:30 +0000 Subject: [PATCH 042/130] build(deps): bump jsdom from 29.0.0 to 29.0.1 (#7385) Bumps [jsdom](https://github.com/jsdom/jsdom) from 29.0.0 to 29.0.1. - [Release notes](https://github.com/jsdom/jsdom/releases) - [Commits](https://github.com/jsdom/jsdom/compare/v29.0.0...v29.0.1) --- updated-dependencies: - dependency-name: jsdom dependency-version: 29.0.1 dependency-type: direct:production update-type: version-update:semver-patch ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- pnpm-lock.yaml | 48 +++++++++++++++++++++++++++--------------------- src/package.json | 2 +- 2 files changed, 28 insertions(+), 22 deletions(-) diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 80e3b9c98b9..723f5b6bdcc 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -193,8 +193,8 @@ importers: specifier: ^3.0.5 version: 3.0.5 jsdom: - specifier: ^29.0.0 - version: 29.0.0(@noble/hashes@1.8.0) + specifier: ^29.0.1 + version: 29.0.1(@noble/hashes@1.8.0) jsonminify: specifier: 0.4.2 version: 0.4.2 @@ -402,7 +402,7 @@ importers: version: 5.9.3 vitest: specifier: ^4.1.0 - version: 4.1.0(@opentelemetry/api@1.9.0)(@types/node@25.5.0)(jsdom@29.0.0(@noble/hashes@1.8.0))(vite@7.3.1(@types/node@25.5.0)(lightningcss@1.30.2)(tsx@4.21.0)) + version: 4.1.0(@opentelemetry/api@1.9.0)(@types/node@25.5.0)(jsdom@29.0.1(@noble/hashes@1.8.0))(vite@7.3.1(@types/node@25.5.0)(lightningcss@1.30.2)(tsx@4.21.0)) ui: devDependencies: @@ -426,8 +426,8 @@ packages: resolution: {integrity: sha512-2SZFvqMyvboVV1d15lMf7XiI3m7SDqXUuKaTymJYLN6dSGadqp+fVojqJlVoMlbZnlTmu3S0TLwLTJpvBMO1Aw==} engines: {node: ^20.19.0 || ^22.12.0 || >=24.0.0} - '@asamuzakjp/dom-selector@7.0.3': - resolution: {integrity: sha512-Q6mU0Z6bfj6YvnX2k9n0JxiIwrCFN59x/nWmYQnAqP000ruX/yV+5bp/GRcF5T8ncvfwJQ7fgfP74DlpKExILA==} + '@asamuzakjp/dom-selector@7.0.4': + resolution: {integrity: sha512-jXR6x4AcT3eIrS2fSNAwJpwirOkGcd+E7F7CP3zjdTqz9B/2huHOL8YJZBgekKwLML+u7qB/6P1LXQuMScsx0w==} engines: {node: ^20.19.0 || ^22.12.0 || >=24.0.0} '@asamuzakjp/nwsapi@2.3.9': @@ -3477,8 +3477,8 @@ packages: jsbn@1.1.0: resolution: {integrity: sha512-4bYVV3aAMtDTTu4+xsDYa6sy9GyJ69/amsu9sYF2zqjiEoZA5xJi3BrfX3uY+/IekIu7MwdObdbDWpoZdBv3/A==} - jsdom@29.0.0: - resolution: {integrity: sha512-9FshNB6OepopZ08unmmGpsF7/qCjxGPbo3NbgfJAnPeHXnsODE9WWffXZtRFRFe0ntzaAOcSKNJFz8wiyvF1jQ==} + jsdom@29.0.1: + resolution: {integrity: sha512-z6JOK5gRO7aMybVq/y/MlIpKh8JIi68FBKMUtKkK2KH/wMSRlCxQ682d08LB9fYXplyY/UXG8P4XXTScmdjApg==} engines: {node: ^20.19.0 || ^22.13.0 || >=24.0.0} peerDependencies: canvas: ^3.0.0 @@ -4672,11 +4672,11 @@ packages: resolution: {integrity: sha512-Bf+ILmBgretUrdJxzXM0SgXLZ3XfiaUuOj/IKQHuTXip+05Xn+uyEYdVg0kYDipTBcLrCVyUzAPz7QmArb0mmw==} engines: {node: '>=14.0.0'} - tldts-core@7.0.26: - resolution: {integrity: sha512-5WJ2SqFsv4G2Dwi7ZFVRnz6b2H1od39QME1lc2y5Ew3eWiZMAeqOAfWpRP9jHvhUl881406QtZTODvjttJs+ew==} + tldts-core@7.0.27: + resolution: {integrity: sha512-YQ7uPjgWUibIK6DW5lrKujGwUKhLevU4hcGbP5O6TcIUb+oTjJYJVWPS4nZsIHrEEEG6myk/oqAJUEQmpZrHsg==} - tldts@7.0.26: - resolution: {integrity: sha512-WiGwQjr0qYdNNG8KpMKlSvpxz652lqa3Rd+/hSaDcY4Uo6SKWZq2LAF+hsAhUewTtYhXlorBKgNF3Kk8hnjGoQ==} + tldts@7.0.27: + resolution: {integrity: sha512-I4FZcVFcqCRuT0ph6dCDpPuO4Xgzvh+spkcTr1gK7peIvxWauoloVO0vuy1FQnijT63ss6AsHB6+OIM4aXHbPg==} hasBin: true to-regex-range@5.0.1: @@ -4794,6 +4794,10 @@ packages: resolution: {integrity: sha512-BM/JzwwaRXxrLdElV2Uo6cTLEjhSb3WXboncJamZ15NgUURmvlXvxa6xkwIOILIjPNo9i8ku136ZvWV0Uly8+w==} engines: {node: '>=20.18.1'} + undici@7.24.5: + resolution: {integrity: sha512-3IWdCpjgxp15CbJnsi/Y9TCDE7HWVN19j1hmzVhoAkY/+CJx449tVxT5wZc1Gwg8J+P0LWvzlBzxYRnHJ+1i7Q==} + engines: {node: '>=20.18.1'} + unified@11.0.5: resolution: {integrity: sha512-xKvGhPWw3k84Qjh8bI3ZeJjqnyadK+GEFtazSfZv/rKeTkTjOJho6mFqh2SM96iIcZokxiOpg78GazTSg8+KHA==} @@ -5165,7 +5169,7 @@ snapshots: '@csstools/css-tokenizer': 4.0.0 lru-cache: 11.2.7 - '@asamuzakjp/dom-selector@7.0.3': + '@asamuzakjp/dom-selector@7.0.4': dependencies: '@asamuzakjp/nwsapi': 2.3.9 bidi-js: 1.0.3 @@ -8293,10 +8297,10 @@ snapshots: jsbn@1.1.0: {} - jsdom@29.0.0(@noble/hashes@1.8.0): + jsdom@29.0.1(@noble/hashes@1.8.0): dependencies: '@asamuzakjp/css-color': 5.0.1 - '@asamuzakjp/dom-selector': 7.0.3 + '@asamuzakjp/dom-selector': 7.0.4 '@bramus/specificity': 2.4.2 '@csstools/css-syntax-patches-for-csstree': 1.1.1(css-tree@3.2.1) '@exodus/bytes': 1.15.0(@noble/hashes@1.8.0) @@ -8310,7 +8314,7 @@ snapshots: saxes: 6.0.0 symbol-tree: 3.2.4 tough-cookie: 6.0.1 - undici: 7.24.4 + undici: 7.24.5 w3c-xmlserializer: 5.0.0 webidl-conversions: 8.0.1 whatwg-mimetype: 5.0.0 @@ -9615,11 +9619,11 @@ snapshots: tinyrainbow@3.1.0: {} - tldts-core@7.0.26: {} + tldts-core@7.0.27: {} - tldts@7.0.26: + tldts@7.0.27: dependencies: - tldts-core: 7.0.26 + tldts-core: 7.0.27 to-regex-range@5.0.1: dependencies: @@ -9629,7 +9633,7 @@ snapshots: tough-cookie@6.0.1: dependencies: - tldts: 7.0.26 + tldts: 7.0.27 tr46@6.0.0: dependencies: @@ -9737,6 +9741,8 @@ snapshots: undici@7.24.4: {} + undici@7.24.5: {} + unified@11.0.5: dependencies: '@types/unist': 3.0.3 @@ -9923,7 +9929,7 @@ snapshots: - universal-cookie - yaml - vitest@4.1.0(@opentelemetry/api@1.9.0)(@types/node@25.5.0)(jsdom@29.0.0(@noble/hashes@1.8.0))(vite@7.3.1(@types/node@25.5.0)(lightningcss@1.30.2)(tsx@4.21.0)): + vitest@4.1.0(@opentelemetry/api@1.9.0)(@types/node@25.5.0)(jsdom@29.0.1(@noble/hashes@1.8.0))(vite@7.3.1(@types/node@25.5.0)(lightningcss@1.30.2)(tsx@4.21.0)): dependencies: '@vitest/expect': 4.1.0 '@vitest/mocker': 4.1.0(vite@7.3.1(@types/node@25.5.0)(lightningcss@1.30.2)(tsx@4.21.0)) @@ -9948,7 +9954,7 @@ snapshots: optionalDependencies: '@opentelemetry/api': 1.9.0 '@types/node': 25.5.0 - jsdom: 29.0.0(@noble/hashes@1.8.0) + jsdom: 29.0.1(@noble/hashes@1.8.0) transitivePeerDependencies: - msw diff --git a/src/package.json b/src/package.json index a8ca8f63f19..a35a706b71a 100644 --- a/src/package.json +++ b/src/package.json @@ -45,7 +45,7 @@ "http-errors": "^2.0.1", "jose": "^6.2.2", "js-cookie": "^3.0.5", - "jsdom": "^29.0.0", + "jsdom": "^29.0.1", "jsonminify": "0.4.2", "jsonwebtoken": "^9.0.3", "jwt-decode": "^4.0.0", From 43e831bf08bb2961f9c54e7515d08649c73ee19e Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Tue, 24 Mar 2026 11:48:15 +0000 Subject: [PATCH 043/130] build(deps-dev): bump the dev-dependencies group with 10 updates (#7386) Bumps the dev-dependencies group with 10 updates: | Package | From | To | | --- | --- | --- | | [@types/jsdom](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/jsdom) | `28.0.0` | `28.0.1` | | [eslint](https://github.com/eslint/eslint) | `10.0.3` | `10.1.0` | | [set-cookie-parser](https://github.com/nfriedly/set-cookie-parser) | `3.0.1` | `3.1.0` | | [vitest](https://github.com/vitest-dev/vitest/tree/HEAD/packages/vitest) | `4.1.0` | `4.1.1` | | [i18next](https://github.com/i18next/i18next) | `25.8.20` | `25.10.5` | | [lucide-react](https://github.com/lucide-icons/lucide/tree/HEAD/packages/lucide-react) | `0.577.0` | `1.0.1` | | [react-hook-form](https://github.com/react-hook-form/react-hook-form) | `7.71.2` | `7.72.0` | | [react-i18next](https://github.com/i18next/react-i18next) | `16.5.8` | `16.6.2` | | [react-router-dom](https://github.com/remix-run/react-router/tree/HEAD/packages/react-router-dom) | `7.13.1` | `7.13.2` | | [vite-plugin-static-copy](https://github.com/sapphi-red/vite-plugin-static-copy) | `3.3.0` | `4.0.0` | Updates `@types/jsdom` from 28.0.0 to 28.0.1 - [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases) - [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/jsdom) Updates `eslint` from 10.0.3 to 10.1.0 - [Release notes](https://github.com/eslint/eslint/releases) - [Commits](https://github.com/eslint/eslint/compare/v10.0.3...v10.1.0) Updates `set-cookie-parser` from 3.0.1 to 3.1.0 - [Changelog](https://github.com/nfriedly/set-cookie-parser/blob/master/CHANGELOG.md) - [Commits](https://github.com/nfriedly/set-cookie-parser/compare/v3.0.1...v3.1.0) Updates `vitest` from 4.1.0 to 4.1.1 - [Release notes](https://github.com/vitest-dev/vitest/releases) - [Commits](https://github.com/vitest-dev/vitest/commits/v4.1.1/packages/vitest) Updates `i18next` from 25.8.20 to 25.10.5 - [Release notes](https://github.com/i18next/i18next/releases) - [Changelog](https://github.com/i18next/i18next/blob/master/CHANGELOG.md) - [Commits](https://github.com/i18next/i18next/compare/v25.8.20...v25.10.5) Updates `lucide-react` from 0.577.0 to 1.0.1 - [Release notes](https://github.com/lucide-icons/lucide/releases) - [Commits](https://github.com/lucide-icons/lucide/commits/1.0.1/packages/lucide-react) Updates `react-hook-form` from 7.71.2 to 7.72.0 - [Release notes](https://github.com/react-hook-form/react-hook-form/releases) - [Changelog](https://github.com/react-hook-form/react-hook-form/blob/master/CHANGELOG.md) - [Commits](https://github.com/react-hook-form/react-hook-form/compare/v7.71.2...v7.72.0) Updates `react-i18next` from 16.5.8 to 16.6.2 - [Changelog](https://github.com/i18next/react-i18next/blob/master/CHANGELOG.md) - [Commits](https://github.com/i18next/react-i18next/compare/v16.5.8...v16.6.2) Updates `react-router-dom` from 7.13.1 to 7.13.2 - [Release notes](https://github.com/remix-run/react-router/releases) - [Changelog](https://github.com/remix-run/react-router/blob/main/packages/react-router-dom/CHANGELOG.md) - [Commits](https://github.com/remix-run/react-router/commits/react-router-dom@7.13.2/packages/react-router-dom) Updates `vite-plugin-static-copy` from 3.3.0 to 4.0.0 - [Release notes](https://github.com/sapphi-red/vite-plugin-static-copy/releases) - [Changelog](https://github.com/sapphi-red/vite-plugin-static-copy/blob/main/CHANGELOG.md) - [Commits](https://github.com/sapphi-red/vite-plugin-static-copy/compare/vite-plugin-static-copy@3.3.0...vite-plugin-static-copy@4.0.0) --- updated-dependencies: - dependency-name: "@types/jsdom" dependency-version: 28.0.1 dependency-type: direct:development update-type: version-update:semver-patch dependency-group: dev-dependencies - dependency-name: eslint dependency-version: 10.1.0 dependency-type: direct:development update-type: version-update:semver-minor dependency-group: dev-dependencies - dependency-name: set-cookie-parser dependency-version: 3.1.0 dependency-type: direct:development update-type: version-update:semver-minor dependency-group: dev-dependencies - dependency-name: vitest dependency-version: 4.1.1 dependency-type: direct:development update-type: version-update:semver-patch dependency-group: dev-dependencies - dependency-name: i18next dependency-version: 25.10.5 dependency-type: direct:development update-type: version-update:semver-minor dependency-group: dev-dependencies - dependency-name: lucide-react dependency-version: 1.0.1 dependency-type: direct:development update-type: version-update:semver-major dependency-group: dev-dependencies - dependency-name: react-hook-form dependency-version: 7.72.0 dependency-type: direct:development update-type: version-update:semver-minor dependency-group: dev-dependencies - dependency-name: react-i18next dependency-version: 16.6.2 dependency-type: direct:development update-type: version-update:semver-minor dependency-group: dev-dependencies - dependency-name: react-router-dom dependency-version: 7.13.2 dependency-type: direct:development update-type: version-update:semver-patch dependency-group: dev-dependencies - dependency-name: vite-plugin-static-copy dependency-version: 4.0.0 dependency-type: direct:development update-type: version-update:semver-major dependency-group: dev-dependencies ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- admin/package.json | 14 +- pnpm-lock.yaml | 394 ++++++++++++++++++++++----------------------- src/package.json | 8 +- 3 files changed, 208 insertions(+), 208 deletions(-) diff --git a/admin/package.json b/admin/package.json index 4b17aa826fa..f82328dcc4b 100644 --- a/admin/package.json +++ b/admin/package.json @@ -22,22 +22,22 @@ "@typescript-eslint/parser": "^8.57.1", "@vitejs/plugin-react": "^6.0.1", "babel-plugin-react-compiler": "19.1.0-rc.3", - "eslint": "^10.0.3", + "eslint": "^10.1.0", "eslint-plugin-react-hooks": "^7.0.1", "eslint-plugin-react-refresh": "^0.5.2", - "i18next": "^25.8.20", + "i18next": "^25.10.5", "i18next-browser-languagedetector": "^8.2.1", - "lucide-react": "^0.577.0", + "lucide-react": "^1.0.1", "react": "^19.2.4", "react-dom": "^19.2.4", - "react-hook-form": "^7.71.2", - "react-i18next": "^16.5.8", - "react-router-dom": "^7.13.1", + "react-hook-form": "^7.72.0", + "react-i18next": "^16.6.2", + "react-router-dom": "^7.13.2", "socket.io-client": "^4.8.3", "typescript": "^5.9.3", "vite": "npm:rolldown-vite@7.2.10", "vite-plugin-babel": "^1.6.0", - "vite-plugin-static-copy": "^3.3.0", + "vite-plugin-static-copy": "^4.0.0", "zustand": "^5.0.12" }, "overrides": { diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 723f5b6bdcc..134802592c8 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -42,10 +42,10 @@ importers: version: 19.2.3(@types/react@19.2.14) '@typescript-eslint/eslint-plugin': specifier: ^8.57.1 - version: 8.57.1(@typescript-eslint/parser@8.57.1(eslint@10.0.3)(typescript@5.9.3))(eslint@10.0.3)(typescript@5.9.3) + version: 8.57.1(@typescript-eslint/parser@8.57.1(eslint@10.1.0)(typescript@5.9.3))(eslint@10.1.0)(typescript@5.9.3) '@typescript-eslint/parser': specifier: ^8.57.1 - version: 8.57.1(eslint@10.0.3)(typescript@5.9.3) + version: 8.57.1(eslint@10.1.0)(typescript@5.9.3) '@vitejs/plugin-react': specifier: ^6.0.1 version: 6.0.1(babel-plugin-react-compiler@19.1.0-rc.3)(rolldown-vite@7.2.10(@types/node@25.5.0)(tsx@4.21.0)) @@ -53,23 +53,23 @@ importers: specifier: 19.1.0-rc.3 version: 19.1.0-rc.3 eslint: - specifier: ^10.0.3 - version: 10.0.3 + specifier: ^10.1.0 + version: 10.1.0 eslint-plugin-react-hooks: specifier: ^7.0.1 - version: 7.0.1(eslint@10.0.3) + version: 7.0.1(eslint@10.1.0) eslint-plugin-react-refresh: specifier: ^0.5.2 - version: 0.5.2(eslint@10.0.3) + version: 0.5.2(eslint@10.1.0) i18next: - specifier: ^25.8.20 - version: 25.8.20(typescript@5.9.3) + specifier: ^25.10.5 + version: 25.10.5(typescript@5.9.3) i18next-browser-languagedetector: specifier: ^8.2.1 version: 8.2.1 lucide-react: - specifier: ^0.577.0 - version: 0.577.0(react@19.2.4) + specifier: ^1.0.1 + version: 1.0.1(react@19.2.4) react: specifier: ^19.2.4 version: 19.2.4 @@ -77,14 +77,14 @@ importers: specifier: ^19.2.4 version: 19.2.4(react@19.2.4) react-hook-form: - specifier: ^7.71.2 - version: 7.71.2(react@19.2.4) + specifier: ^7.72.0 + version: 7.72.0(react@19.2.4) react-i18next: - specifier: ^16.5.8 - version: 16.5.8(i18next@25.8.20(typescript@5.9.3))(react-dom@19.2.4(react@19.2.4))(react@19.2.4)(typescript@5.9.3) + specifier: ^16.6.2 + version: 16.6.2(i18next@25.10.5(typescript@5.9.3))(react-dom@19.2.4(react@19.2.4))(react@19.2.4)(typescript@5.9.3) react-router-dom: - specifier: ^7.13.1 - version: 7.13.1(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + specifier: ^7.13.2 + version: 7.13.2(react-dom@19.2.4(react@19.2.4))(react@19.2.4) socket.io-client: specifier: ^4.8.3 version: 4.8.3 @@ -98,8 +98,8 @@ importers: specifier: ^1.6.0 version: 1.6.0(@babel/core@7.29.0)(rolldown-vite@7.2.10(@types/node@25.5.0)(tsx@4.21.0)) vite-plugin-static-copy: - specifier: ^3.3.0 - version: 3.3.0(rolldown-vite@7.2.10(@types/node@25.5.0)(tsx@4.21.0)) + specifier: ^4.0.0 + version: 4.0.0(rolldown-vite@7.2.10(@types/node@25.5.0)(tsx@4.21.0)) zustand: specifier: ^5.0.12 version: 5.0.12(@types/react@19.2.14)(react@19.2.4)(use-sync-external-store@1.6.0(react@19.2.4)) @@ -323,8 +323,8 @@ importers: specifier: ^3.0.6 version: 3.0.6 '@types/jsdom': - specifier: ^28.0.0 - version: 28.0.0 + specifier: ^28.0.1 + version: 28.0.1 '@types/jsonminify': specifier: ^0.4.3 version: 0.4.3 @@ -365,11 +365,11 @@ importers: specifier: ^5.0.0 version: 5.0.0 eslint: - specifier: ^10.0.3 - version: 10.0.3 + specifier: ^10.1.0 + version: 10.1.0 eslint-config-etherpad: specifier: ^4.0.4 - version: 4.0.4(eslint@10.0.3)(typescript@5.9.3) + version: 4.0.4(eslint@10.1.0)(typescript@5.9.3) etherpad-cli-client: specifier: ^3.0.5 version: 3.0.5 @@ -386,8 +386,8 @@ importers: specifier: ^0.4.2 version: 0.4.2 set-cookie-parser: - specifier: ^3.0.1 - version: 3.0.1 + specifier: ^3.1.0 + version: 3.1.0 sinon: specifier: ^21.0.3 version: 21.0.3 @@ -401,8 +401,8 @@ importers: specifier: ^5.9.3 version: 5.9.3 vitest: - specifier: ^4.1.0 - version: 4.1.0(@opentelemetry/api@1.9.0)(@types/node@25.5.0)(jsdom@29.0.1(@noble/hashes@1.8.0))(vite@7.3.1(@types/node@25.5.0)(lightningcss@1.30.2)(tsx@4.21.0)) + specifier: ^4.1.1 + version: 4.1.1(@opentelemetry/api@1.9.0)(@types/node@25.5.0)(jsdom@29.0.1(@noble/hashes@1.8.0))(vite@7.3.1(@types/node@25.5.0)(lightningcss@1.30.2)(tsx@4.21.0)) ui: devDependencies: @@ -1674,8 +1674,8 @@ packages: '@types/js-cookie@3.0.6': resolution: {integrity: sha512-wkw9yd1kEXOPnvEeEV1Go1MmxtBJL0RR79aOTAApecWFVu7w0NNXNqhcWgvw2YgZDYadliXkl14pa3WXw5jlCQ==} - '@types/jsdom@28.0.0': - resolution: {integrity: sha512-A8TBQQC/xAOojy9kM8E46cqT00sF0h7dWjV8t8BJhUi2rG6JRh7XXQo/oLoENuZIQEpXsxLccLCnknyQd7qssQ==} + '@types/jsdom@28.0.1': + resolution: {integrity: sha512-GJq2QE4TAZ5ajSoCasn5DOFm8u1mI3tIFvM5tIq3W5U/RTB6gsHwc6Yhpl91X9VSDOUVblgXmG+2+sSvFQrdlw==} '@types/json-schema@7.0.15': resolution: {integrity: sha512-5+fP8P8MFNC+AyZCDxrB2pkZFPGzqQWUzpSeuuVLvm8VMcorNYavBqoFcxK8bQz4Qsbn4oUEEem4wDLfcysGHA==} @@ -2017,34 +2017,34 @@ packages: vite: ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0 vue: ^3.2.25 - '@vitest/expect@4.1.0': - resolution: {integrity: sha512-EIxG7k4wlWweuCLG9Y5InKFwpMEOyrMb6ZJ1ihYu02LVj/bzUwn2VMU+13PinsjRW75XnITeFrQBMH5+dLvCDA==} + '@vitest/expect@4.1.1': + resolution: {integrity: sha512-xAV0fqBTk44Rn6SjJReEQkHP3RrqbJo6JQ4zZ7/uVOiJZRarBtblzrOfFIZeYUrukp2YD6snZG6IBqhOoHTm+A==} - '@vitest/mocker@4.1.0': - resolution: {integrity: sha512-evxREh+Hork43+Y4IOhTo+h5lGmVRyjqI739Rz4RlUPqwrkFFDF6EMvOOYjTx4E8Tl6gyCLRL8Mu7Ry12a13Tw==} + '@vitest/mocker@4.1.1': + resolution: {integrity: sha512-h3BOylsfsCLPeceuCPAAJ+BvNwSENgJa4hXoXu4im0bs9Lyp4URc4JYK4pWLZ4pG/UQn7AT92K6IByi6rE6g3A==} peerDependencies: msw: ^2.4.9 - vite: ^6.0.0 || ^7.0.0 || ^8.0.0-0 + vite: ^6.0.0 || ^7.0.0 || ^8.0.0 peerDependenciesMeta: msw: optional: true vite: optional: true - '@vitest/pretty-format@4.1.0': - resolution: {integrity: sha512-3RZLZlh88Ib0J7NQTRATfc/3ZPOnSUn2uDBUoGNn5T36+bALixmzphN26OUD3LRXWkJu4H0s5vvUeqBiw+kS0A==} + '@vitest/pretty-format@4.1.1': + resolution: {integrity: sha512-GM+TEQN5WhOygr1lp7skeVjdLPqqWMHsfzXrcHAqZJi/lIVh63H0kaRCY8MDhNWikx19zBUK8ceaLB7X5AH9NQ==} - '@vitest/runner@4.1.0': - resolution: {integrity: sha512-Duvx2OzQ7d6OjchL+trw+aSrb9idh7pnNfxrklo14p3zmNL4qPCDeIJAK+eBKYjkIwG96Bc6vYuxhqDXQOWpoQ==} + '@vitest/runner@4.1.1': + resolution: {integrity: sha512-f7+FPy75vN91QGWsITueq0gedwUZy1fLtHOCMeQpjs8jTekAHeKP80zfDEnhrleviLHzVSDXIWuCIOFn3D3f8A==} - '@vitest/snapshot@4.1.0': - resolution: {integrity: sha512-0Vy9euT1kgsnj1CHttwi9i9o+4rRLEaPRSOJ5gyv579GJkNpgJK+B4HSv/rAWixx2wdAFci1X4CEPjiu2bXIMg==} + '@vitest/snapshot@4.1.1': + resolution: {integrity: sha512-kMVSgcegWV2FibXEx9p9WIKgje58lcTbXgnJixfcg15iK8nzCXhmalL0ZLtTWLW9PH1+1NEDShiFFedB3tEgWg==} - '@vitest/spy@4.1.0': - resolution: {integrity: sha512-pz77k+PgNpyMDv2FV6qmk5ZVau6c3R8HC8v342T2xlFxQKTrSeYw9waIJG8KgV9fFwAtTu4ceRzMivPTH6wSxw==} + '@vitest/spy@4.1.1': + resolution: {integrity: sha512-6Ti/KT5OVaiupdIZEuZN7l3CZcR0cxnxt70Z0//3CtwgObwA6jZhmVBA3yrXSVN3gmwjgd7oDNLlsXz526gpRA==} - '@vitest/utils@4.1.0': - resolution: {integrity: sha512-XfPXT6a8TZY3dcGY8EdwsBulFCIw+BeeX0RZn2x/BtiY/75YGh8FeWGG8QISN/WhaqSrE2OrlDgtF8q5uhOTmw==} + '@vitest/utils@4.1.1': + resolution: {integrity: sha512-cNxAlaB3sHoCdL6pj6yyUXv9Gry1NHNg0kFTXdvSIZXLHsqKH7chiWOkwJ5s5+d/oMwcoG9T0bKU38JZWKusrQ==} '@vue/compiler-core@3.5.30': resolution: {integrity: sha512-s3DfdZkcu/qExZ+td75015ljzHc6vE+30cFMGRPROYjqkroYI5NV2X1yAMX9UeyBNWB9MxCfPcsjpLS11nzkkw==} @@ -2875,8 +2875,8 @@ packages: resolution: {integrity: sha512-tD40eHxA35h0PEIZNeIjkHoDR4YjjJp34biM0mDvplBe//mB+IHCqHDGV7pxF+7MklTvighcCPPZC7ynWyjdTA==} engines: {node: ^20.19.0 || ^22.13.0 || >=24} - eslint@10.0.3: - resolution: {integrity: sha512-COV33RzXZkqhG9P2rZCFl9ZmJ7WL+gQSCRzE7RhkbclbQPtLAWReL7ysA0Sh4c8Im2U9ynybdR56PV0XcKvqaQ==} + eslint@10.1.0: + resolution: {integrity: sha512-S9jlY/ELKEUwwQnqWDO+f+m6sercqOPSqXM5Go94l7DOmxHVDgmSFGWEzeE/gwgTAr0W103BWt0QLe/7mabIvA==} engines: {node: ^20.19.0 || ^22.13.0 || >=24} hasBin: true peerDependencies: @@ -3019,8 +3019,8 @@ packages: flatted@3.3.3: resolution: {integrity: sha512-GX+ysw4PBCz0PzosHDepZGANEuFCMLrnRTiEy9McGjmkCQYwRq4A/X786G/fjM/+OjsWSU1ZrY5qyARZmO/uwg==} - flatted@3.4.1: - resolution: {integrity: sha512-IxfVbRFVlV8V/yRaGzk0UVIcsKKHMSfYw66T/u4nTwlWteQePsxe//LjudR1AMX4tZW3WFCh3Zqa/sjlqpbURQ==} + flatted@3.4.2: + resolution: {integrity: sha512-PjDse7RzhcPkIJwy5t7KPWQSZ9cAbzQXcafsetQoD7sOJRQlGikNbx7yZp2OotDnJyrDcbyRq3Ttb18iYOqkxA==} focus-trap@8.0.0: resolution: {integrity: sha512-Aa84FOGHs99vVwufDMdq2qgOwXPC2e9U66GcqBhn1/jEHPDhJaP8PYhkIbqG9lhfL5Kddk/567lj46LLHYCRUw==} @@ -3264,8 +3264,8 @@ packages: i18next-browser-languagedetector@8.2.1: resolution: {integrity: sha512-bZg8+4bdmaOiApD7N7BPT9W8MLZG+nPTOFlLiJiT8uzKXFjhxw4v2ierCXOwB5sFDMtuA5G4kgYZ0AznZxQ/cw==} - i18next@25.8.20: - resolution: {integrity: sha512-xjo9+lbX/P1tQt3xpO2rfJiBppNfUnNIPKgCvNsTKsvTOCro1Qr/geXVg1N47j5ScOSaXAPq8ET93raK3Rr06A==} + i18next@25.10.5: + resolution: {integrity: sha512-jRnF7eRNsdcnh7AASSgaU3lj/8lJZuHkfsouetnLEDH0xxE1vVi7qhiJ9RhdSPUyzg4ltb7P7aXsFlTk9sxL2w==} peerDependencies: typescript: ^5 peerDependenciesMeta: @@ -3698,8 +3698,8 @@ packages: resolution: {integrity: sha512-jumlc0BIUrS3qJGgIkWZsyfAM7NCWiBcCDhnd+3NNM5KbBmLTgHVfWBcg6W+rLUsIpzpERPsvwUP7CckAQSOoA==} engines: {node: '>=12'} - lucide-react@0.577.0: - resolution: {integrity: sha512-4LjoFv2eEPwYDPg/CUdBJQSDfPyzXCRrVW1X7jrx/trgxnxkHFjnVZINbzvzxjN70dxychOfg+FTYwBiS3pQ5A==} + lucide-react@1.0.1: + resolution: {integrity: sha512-lih7tKEczCYOQjVEzpFuxEuNzlwf+1yhvlMlEkGWJM3va8Pugv8bYXc/pRtcjPncaP7k84X0Pt/71ufxvqEPtQ==} peerDependencies: react: ^16.5.1 || ^17.0.0 || ^18.0.0 || ^19.0.0 @@ -4129,14 +4129,14 @@ packages: peerDependencies: react: ^19.2.4 - react-hook-form@7.71.2: - resolution: {integrity: sha512-1CHvcDYzuRUNOflt4MOq3ZM46AronNJtQ1S7tnX6YN4y72qhgiUItpacZUAQ0TyWYci3yz1X+rXaSxiuEm86PA==} + react-hook-form@7.72.0: + resolution: {integrity: sha512-V4v6jubaf6JAurEaVnT9aUPKFbNtDgohj5CIgVGyPHvT9wRx5OZHVjz31GsxnPNI278XMu+ruFz+wGOscHaLKw==} engines: {node: '>=18.0.0'} peerDependencies: react: ^16.8.0 || ^17 || ^18 || ^19 - react-i18next@16.5.8: - resolution: {integrity: sha512-2ABeHHlakxVY+LSirD+OiERxFL6+zip0PaHo979bgwzeHg27Sqc82xxXWIrSFmfWX0ZkrvXMHwhsi/NGUf5VQg==} + react-i18next@16.6.2: + resolution: {integrity: sha512-/S/GPzElTqEi5o2kzd0/O2627hPDmE6OGhJCCwCfUaQ3syyu+kaYH8/PYFtZeWc25NzfxTN/2fD1QjvrTgrFfA==} peerDependencies: i18next: '>= 25.6.2' react: '>= 16.8.0' @@ -4171,15 +4171,15 @@ packages: '@types/react': optional: true - react-router-dom@7.13.1: - resolution: {integrity: sha512-UJnV3Rxc5TgUPJt2KJpo1Jpy0OKQr0AjgbZzBFjaPJcFOb2Y8jA5H3LT8HUJAiRLlWrEXWHbF1Z4SCZaQjWDHw==} + react-router-dom@7.13.2: + resolution: {integrity: sha512-aR7SUORwTqAW0JDeiWF07e9SBE9qGpByR9I8kJT5h/FrBKxPMS6TiC7rmVO+gC0q52Bx7JnjWe8Z1sR9faN4YA==} engines: {node: '>=20.0.0'} peerDependencies: react: '>=18' react-dom: '>=18' - react-router@7.13.1: - resolution: {integrity: sha512-td+xP4X2/6BJvZoX6xw++A2DdEi++YypA69bJUV5oVvqf6/9/9nNlD70YO1e9d3MyamJEBQFEzk6mbfDYbqrSA==} + react-router@7.13.2: + resolution: {integrity: sha512-tX1Aee+ArlKQP+NIUd7SE6Li+CiGKwQtbS+FfRxPX6Pe4vHOo6nr9d++u5cwg+Z8K/x8tP+7qLmujDtfrAoUJA==} engines: {node: '>=20.0.0'} peerDependencies: react: '>=18' @@ -4442,8 +4442,8 @@ packages: set-cookie-parser@2.7.2: resolution: {integrity: sha512-oeM1lpU/UvhTxw+g3cIfxXHyJRc/uidd3yK1P242gzHds0udQBYzs3y8j4gCCW+ZJ7ad0yctld8RYO+bdurlvw==} - set-cookie-parser@3.0.1: - resolution: {integrity: sha512-n7Z7dXZhJbwuAHhNzkTti6Aw9QDDjZtm3JTpTGATIdNzdQz5GuFs22w90BcvF4INfnrL5xrX3oGsuqO5Dx3A1Q==} + set-cookie-parser@3.1.0: + resolution: {integrity: sha512-kjnC1DXBHcxaOaOXBHBeRtltsDG2nUiUni+jP92M9gYdW12rsmx92UsfpH7o5tDRs7I1ZZPSQJQGv3UaRfCiuw==} set-function-length@1.2.2: resolution: {integrity: sha512-pgRc4hJ4/sNjWCSS9AmnS40x3bNMDTknHgL5UaMBTMyJnU90EgWh1Rz+MC9eFu4BuN/UwZjKQuY/1v3rM7HMfg==} @@ -4660,8 +4660,8 @@ packages: tinycon@0.6.8: resolution: {integrity: sha512-bF8Lxm4JUXF6Cw0XlZdugJ44GV575OinZ0Pt8vQPr8ooNqd2yyNkoFdCHzmdpHlgoqfSLfcyk4HDP1EyllT+ug==} - tinyexec@1.0.2: - resolution: {integrity: sha512-W/KYk+NFhkmsYpuHq5JykngiOCnxeVL8v8dFnqxSD8qEEdRfXk1SDM6JzNqcERbcGYj9tMrDQBYV9cjgnunFIg==} + tinyexec@1.0.4: + resolution: {integrity: sha512-u9r3uZC0bdpGOXtlxUIdwf9pkmvhqJdrVCH9fapQtgy/OeTTMZ1nqH7agtvEfmGui6e1XxjcdrlxvxJvc3sMqw==} engines: {node: '>=18'} tinyglobby@0.2.15: @@ -4787,8 +4787,8 @@ packages: undici-types@7.18.2: resolution: {integrity: sha512-AsuCzffGHJybSaRrmr5eHr81mwJU3kjw6M+uprWvCXiNeN9SOGwQ3Jn8jb8m3Z6izVgknn1R0FTCEAP2QrLY/w==} - undici-types@7.22.0: - resolution: {integrity: sha512-RKZvifiL60xdsIuC80UY0dq8Z7DbJUV8/l2hOVbyZAxBzEeQU4Z58+4ZzJ6WN2Lidi9KzT5EbiGX+PI/UGYuRw==} + undici-types@7.24.5: + resolution: {integrity: sha512-kNh333UBSbgK35OIW7FwJTr9tTfVIG51Fm1tSVT7m8foPHfDVjsb7OIee/q/rs3bB2aV/3qOPgG5mHNWl1odiA==} undici@7.24.4: resolution: {integrity: sha512-BM/JzwwaRXxrLdElV2Uo6cTLEjhSb3WXboncJamZ15NgUURmvlXvxa6xkwIOILIjPNo9i8ku136ZvWV0Uly8+w==} @@ -4894,11 +4894,11 @@ packages: '@babel/core': ^7.0.0 vite: ^2.7.0 || ^3.0.0 || ^4.0.0 || ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0 - vite-plugin-static-copy@3.3.0: - resolution: {integrity: sha512-XiAtZcev7nppxNFgKoD55rfL+ukVp/RtrnTJONRwRuzv/B2FK2h2ZRCYjvxhwBV/Oarse83SiyXBSxMTfeEM0Q==} - engines: {node: ^18.0.0 || >=20.0.0} + vite-plugin-static-copy@4.0.0: + resolution: {integrity: sha512-TTf6cVTV4M2pH2Wfr3zhevdRsIQezfm2ltDkSfkjqvvdryJHYQyNoPISvuytX3r9jFZV0yVeMYyGTsAvAH2XLw==} + engines: {node: ^22.0.0 || >=24.0.0} peerDependencies: - vite: ^5.0.0 || ^6.0.0 || ^7.0.0 || ^8.0.0 + vite: ^6.0.0 || ^7.0.0 || ^8.0.0 vite@7.3.1: resolution: {integrity: sha512-w+N7Hifpc3gRjZ63vYBXA56dvvRlNWRczTdmCBBa+CotUzAPf5b7YMdMR/8CQoeYE5LX3W4wj6RYTgonm1b9DA==} @@ -4955,21 +4955,21 @@ packages: postcss: optional: true - vitest@4.1.0: - resolution: {integrity: sha512-YbDrMF9jM2Lqc++2530UourxZHmkKLxrs4+mYhEwqWS97WJ7wOYEkcr+QfRgJ3PW9wz3odRijLZjHEaRLTNbqw==} + vitest@4.1.1: + resolution: {integrity: sha512-yF+o4POL41rpAzj5KVILUxm1GCjKnELvaqmU9TLLUbMfDzuN0UpUR9uaDs+mCtjPe+uYPksXDRLQGGPvj1cTmA==} engines: {node: ^20.0.0 || ^22.0.0 || >=24.0.0} hasBin: true peerDependencies: '@edge-runtime/vm': '*' '@opentelemetry/api': ^1.9.0 '@types/node': ^20.0.0 || ^22.0.0 || >=24.0.0 - '@vitest/browser-playwright': 4.1.0 - '@vitest/browser-preview': 4.1.0 - '@vitest/browser-webdriverio': 4.1.0 - '@vitest/ui': 4.1.0 + '@vitest/browser-playwright': 4.1.1 + '@vitest/browser-preview': 4.1.1 + '@vitest/browser-webdriverio': 4.1.1 + '@vitest/ui': 4.1.1 happy-dom: '*' jsdom: '*' - vite: ^6.0.0 || ^7.0.0 || ^8.0.0-0 + vite: ^6.0.0 || ^7.0.0 || ^8.0.0 peerDependenciesMeta: '@edge-runtime/vm': optional: true @@ -5594,9 +5594,9 @@ snapshots: '@esbuild/win32-x64@0.27.4': optional: true - '@eslint-community/eslint-utils@4.9.1(eslint@10.0.3)': + '@eslint-community/eslint-utils@4.9.1(eslint@10.1.0)': dependencies: - eslint: 10.0.3 + eslint: 10.1.0 eslint-visitor-keys: 3.4.3 '@eslint-community/regexpp@4.12.2': {} @@ -6230,12 +6230,12 @@ snapshots: '@types/js-cookie@3.0.6': {} - '@types/jsdom@28.0.0': + '@types/jsdom@28.0.1': dependencies: '@types/node': 25.5.0 '@types/tough-cookie': 4.0.5 parse5: 7.3.0 - undici-types: 7.22.0 + undici-types: 7.24.5 '@types/json-schema@7.0.15': {} @@ -6379,15 +6379,15 @@ snapshots: '@types/whatwg-mimetype@5.0.0': {} - '@typescript-eslint/eslint-plugin@7.18.0(@typescript-eslint/parser@7.18.0(eslint@10.0.3)(typescript@5.9.3))(eslint@10.0.3)(typescript@5.9.3)': + '@typescript-eslint/eslint-plugin@7.18.0(@typescript-eslint/parser@7.18.0(eslint@10.1.0)(typescript@5.9.3))(eslint@10.1.0)(typescript@5.9.3)': dependencies: '@eslint-community/regexpp': 4.12.2 - '@typescript-eslint/parser': 7.18.0(eslint@10.0.3)(typescript@5.9.3) + '@typescript-eslint/parser': 7.18.0(eslint@10.1.0)(typescript@5.9.3) '@typescript-eslint/scope-manager': 7.18.0 - '@typescript-eslint/type-utils': 7.18.0(eslint@10.0.3)(typescript@5.9.3) - '@typescript-eslint/utils': 7.18.0(eslint@10.0.3)(typescript@5.9.3) + '@typescript-eslint/type-utils': 7.18.0(eslint@10.1.0)(typescript@5.9.3) + '@typescript-eslint/utils': 7.18.0(eslint@10.1.0)(typescript@5.9.3) '@typescript-eslint/visitor-keys': 7.18.0 - eslint: 10.0.3 + eslint: 10.1.0 graphemer: 1.4.0 ignore: 5.3.2 natural-compare: 1.4.0 @@ -6397,15 +6397,15 @@ snapshots: transitivePeerDependencies: - supports-color - '@typescript-eslint/eslint-plugin@8.57.1(@typescript-eslint/parser@8.57.1(eslint@10.0.3)(typescript@5.9.3))(eslint@10.0.3)(typescript@5.9.3)': + '@typescript-eslint/eslint-plugin@8.57.1(@typescript-eslint/parser@8.57.1(eslint@10.1.0)(typescript@5.9.3))(eslint@10.1.0)(typescript@5.9.3)': dependencies: '@eslint-community/regexpp': 4.12.2 - '@typescript-eslint/parser': 8.57.1(eslint@10.0.3)(typescript@5.9.3) + '@typescript-eslint/parser': 8.57.1(eslint@10.1.0)(typescript@5.9.3) '@typescript-eslint/scope-manager': 8.57.1 - '@typescript-eslint/type-utils': 8.57.1(eslint@10.0.3)(typescript@5.9.3) - '@typescript-eslint/utils': 8.57.1(eslint@10.0.3)(typescript@5.9.3) + '@typescript-eslint/type-utils': 8.57.1(eslint@10.1.0)(typescript@5.9.3) + '@typescript-eslint/utils': 8.57.1(eslint@10.1.0)(typescript@5.9.3) '@typescript-eslint/visitor-keys': 8.57.1 - eslint: 10.0.3 + eslint: 10.1.0 ignore: 7.0.5 natural-compare: 1.4.0 ts-api-utils: 2.4.0(typescript@5.9.3) @@ -6413,27 +6413,27 @@ snapshots: transitivePeerDependencies: - supports-color - '@typescript-eslint/parser@7.18.0(eslint@10.0.3)(typescript@5.9.3)': + '@typescript-eslint/parser@7.18.0(eslint@10.1.0)(typescript@5.9.3)': dependencies: '@typescript-eslint/scope-manager': 7.18.0 '@typescript-eslint/types': 7.18.0 '@typescript-eslint/typescript-estree': 7.18.0(typescript@5.9.3) '@typescript-eslint/visitor-keys': 7.18.0 debug: 4.4.3(supports-color@8.1.1) - eslint: 10.0.3 + eslint: 10.1.0 optionalDependencies: typescript: 5.9.3 transitivePeerDependencies: - supports-color - '@typescript-eslint/parser@8.57.1(eslint@10.0.3)(typescript@5.9.3)': + '@typescript-eslint/parser@8.57.1(eslint@10.1.0)(typescript@5.9.3)': dependencies: '@typescript-eslint/scope-manager': 8.57.1 '@typescript-eslint/types': 8.57.1 '@typescript-eslint/typescript-estree': 8.57.1(typescript@5.9.3) '@typescript-eslint/visitor-keys': 8.57.1 debug: 4.4.3(supports-color@8.1.1) - eslint: 10.0.3 + eslint: 10.1.0 typescript: 5.9.3 transitivePeerDependencies: - supports-color @@ -6461,25 +6461,25 @@ snapshots: dependencies: typescript: 5.9.3 - '@typescript-eslint/type-utils@7.18.0(eslint@10.0.3)(typescript@5.9.3)': + '@typescript-eslint/type-utils@7.18.0(eslint@10.1.0)(typescript@5.9.3)': dependencies: '@typescript-eslint/typescript-estree': 7.18.0(typescript@5.9.3) - '@typescript-eslint/utils': 7.18.0(eslint@10.0.3)(typescript@5.9.3) + '@typescript-eslint/utils': 7.18.0(eslint@10.1.0)(typescript@5.9.3) debug: 4.4.3(supports-color@8.1.1) - eslint: 10.0.3 + eslint: 10.1.0 ts-api-utils: 1.4.3(typescript@5.9.3) optionalDependencies: typescript: 5.9.3 transitivePeerDependencies: - supports-color - '@typescript-eslint/type-utils@8.57.1(eslint@10.0.3)(typescript@5.9.3)': + '@typescript-eslint/type-utils@8.57.1(eslint@10.1.0)(typescript@5.9.3)': dependencies: '@typescript-eslint/types': 8.57.1 '@typescript-eslint/typescript-estree': 8.57.1(typescript@5.9.3) - '@typescript-eslint/utils': 8.57.1(eslint@10.0.3)(typescript@5.9.3) + '@typescript-eslint/utils': 8.57.1(eslint@10.1.0)(typescript@5.9.3) debug: 4.4.3(supports-color@8.1.1) - eslint: 10.0.3 + eslint: 10.1.0 ts-api-utils: 2.4.0(typescript@5.9.3) typescript: 5.9.3 transitivePeerDependencies: @@ -6519,24 +6519,24 @@ snapshots: transitivePeerDependencies: - supports-color - '@typescript-eslint/utils@7.18.0(eslint@10.0.3)(typescript@5.9.3)': + '@typescript-eslint/utils@7.18.0(eslint@10.1.0)(typescript@5.9.3)': dependencies: - '@eslint-community/eslint-utils': 4.9.1(eslint@10.0.3) + '@eslint-community/eslint-utils': 4.9.1(eslint@10.1.0) '@typescript-eslint/scope-manager': 7.18.0 '@typescript-eslint/types': 7.18.0 '@typescript-eslint/typescript-estree': 7.18.0(typescript@5.9.3) - eslint: 10.0.3 + eslint: 10.1.0 transitivePeerDependencies: - supports-color - typescript - '@typescript-eslint/utils@8.57.1(eslint@10.0.3)(typescript@5.9.3)': + '@typescript-eslint/utils@8.57.1(eslint@10.1.0)(typescript@5.9.3)': dependencies: - '@eslint-community/eslint-utils': 4.9.1(eslint@10.0.3) + '@eslint-community/eslint-utils': 4.9.1(eslint@10.1.0) '@typescript-eslint/scope-manager': 8.57.1 '@typescript-eslint/types': 8.57.1 '@typescript-eslint/typescript-estree': 8.57.1(typescript@5.9.3) - eslint: 10.0.3 + eslint: 10.1.0 typescript: 5.9.3 transitivePeerDependencies: - supports-color @@ -6613,44 +6613,44 @@ snapshots: vite: 7.3.1(@types/node@25.5.0)(lightningcss@1.30.2)(tsx@4.21.0) vue: 3.5.30(typescript@5.9.3) - '@vitest/expect@4.1.0': + '@vitest/expect@4.1.1': dependencies: '@standard-schema/spec': 1.1.0 '@types/chai': 5.2.3 - '@vitest/spy': 4.1.0 - '@vitest/utils': 4.1.0 + '@vitest/spy': 4.1.1 + '@vitest/utils': 4.1.1 chai: 6.2.2 tinyrainbow: 3.1.0 - '@vitest/mocker@4.1.0(vite@7.3.1(@types/node@25.5.0)(lightningcss@1.30.2)(tsx@4.21.0))': + '@vitest/mocker@4.1.1(vite@7.3.1(@types/node@25.5.0)(lightningcss@1.30.2)(tsx@4.21.0))': dependencies: - '@vitest/spy': 4.1.0 + '@vitest/spy': 4.1.1 estree-walker: 3.0.3 magic-string: 0.30.21 optionalDependencies: vite: 7.3.1(@types/node@25.5.0)(lightningcss@1.30.2)(tsx@4.21.0) - '@vitest/pretty-format@4.1.0': + '@vitest/pretty-format@4.1.1': dependencies: tinyrainbow: 3.1.0 - '@vitest/runner@4.1.0': + '@vitest/runner@4.1.1': dependencies: - '@vitest/utils': 4.1.0 + '@vitest/utils': 4.1.1 pathe: 2.0.3 - '@vitest/snapshot@4.1.0': + '@vitest/snapshot@4.1.1': dependencies: - '@vitest/pretty-format': 4.1.0 - '@vitest/utils': 4.1.0 + '@vitest/pretty-format': 4.1.1 + '@vitest/utils': 4.1.1 magic-string: 0.30.21 pathe: 2.0.3 - '@vitest/spy@4.1.0': {} + '@vitest/spy@4.1.1': {} - '@vitest/utils@4.1.0': + '@vitest/utils@4.1.1': dependencies: - '@vitest/pretty-format': 4.1.0 + '@vitest/pretty-format': 4.1.1 convert-source-map: 2.0.0 tinyrainbow: 3.1.0 @@ -7418,24 +7418,24 @@ snapshots: optionalDependencies: source-map: 0.6.1 - eslint-compat-utils@0.5.1(eslint@10.0.3): + eslint-compat-utils@0.5.1(eslint@10.1.0): dependencies: - eslint: 10.0.3 + eslint: 10.1.0 semver: 7.7.4 - eslint-config-etherpad@4.0.4(eslint@10.0.3)(typescript@5.9.3): + eslint-config-etherpad@4.0.4(eslint@10.1.0)(typescript@5.9.3): dependencies: '@rushstack/eslint-patch': 1.11.0 - '@typescript-eslint/eslint-plugin': 7.18.0(@typescript-eslint/parser@7.18.0(eslint@10.0.3)(typescript@5.9.3))(eslint@10.0.3)(typescript@5.9.3) - '@typescript-eslint/parser': 7.18.0(eslint@10.0.3)(typescript@5.9.3) - eslint-import-resolver-typescript: 3.10.0(eslint-plugin-import@2.31.0(@typescript-eslint/parser@7.18.0(eslint@10.0.3)(typescript@5.9.3))(eslint@10.0.3))(eslint@10.0.3) - eslint-plugin-cypress: 2.15.2(eslint@10.0.3) - eslint-plugin-eslint-comments: 3.2.0(eslint@10.0.3) - eslint-plugin-import: 2.31.0(@typescript-eslint/parser@7.18.0(eslint@10.0.3)(typescript@5.9.3))(eslint-import-resolver-typescript@3.10.0(eslint-plugin-import@2.31.0(@typescript-eslint/parser@7.18.0(eslint@10.0.3)(typescript@5.9.3))(eslint@10.0.3))(eslint@10.0.3))(eslint@10.0.3) - eslint-plugin-mocha: 10.5.0(eslint@10.0.3) - eslint-plugin-n: 16.6.2(eslint@10.0.3) - eslint-plugin-prefer-arrow: 1.2.3(eslint@10.0.3) - eslint-plugin-promise: 6.6.0(eslint@10.0.3) + '@typescript-eslint/eslint-plugin': 7.18.0(@typescript-eslint/parser@7.18.0(eslint@10.1.0)(typescript@5.9.3))(eslint@10.1.0)(typescript@5.9.3) + '@typescript-eslint/parser': 7.18.0(eslint@10.1.0)(typescript@5.9.3) + eslint-import-resolver-typescript: 3.10.0(eslint-plugin-import@2.31.0(@typescript-eslint/parser@7.18.0(eslint@10.1.0)(typescript@5.9.3))(eslint@10.1.0))(eslint@10.1.0) + eslint-plugin-cypress: 2.15.2(eslint@10.1.0) + eslint-plugin-eslint-comments: 3.2.0(eslint@10.1.0) + eslint-plugin-import: 2.31.0(@typescript-eslint/parser@7.18.0(eslint@10.1.0)(typescript@5.9.3))(eslint-import-resolver-typescript@3.10.0(eslint-plugin-import@2.31.0(@typescript-eslint/parser@7.18.0(eslint@10.1.0)(typescript@5.9.3))(eslint@10.1.0))(eslint@10.1.0))(eslint@10.1.0) + eslint-plugin-mocha: 10.5.0(eslint@10.1.0) + eslint-plugin-n: 16.6.2(eslint@10.1.0) + eslint-plugin-prefer-arrow: 1.2.3(eslint@10.1.0) + eslint-plugin-promise: 6.6.0(eslint@10.1.0) eslint-plugin-you-dont-need-lodash-underscore: 6.14.0 transitivePeerDependencies: - eslint @@ -7452,51 +7452,51 @@ snapshots: transitivePeerDependencies: - supports-color - eslint-import-resolver-typescript@3.10.0(eslint-plugin-import@2.31.0(@typescript-eslint/parser@7.18.0(eslint@10.0.3)(typescript@5.9.3))(eslint@10.0.3))(eslint@10.0.3): + eslint-import-resolver-typescript@3.10.0(eslint-plugin-import@2.31.0(@typescript-eslint/parser@7.18.0(eslint@10.1.0)(typescript@5.9.3))(eslint@10.1.0))(eslint@10.1.0): dependencies: '@nolyfill/is-core-module': 1.0.39 debug: 4.4.3(supports-color@8.1.1) - eslint: 10.0.3 + eslint: 10.1.0 get-tsconfig: 4.13.0 is-bun-module: 2.0.0 stable-hash: 0.0.5 tinyglobby: 0.2.15 unrs-resolver: 1.3.3 optionalDependencies: - eslint-plugin-import: 2.31.0(@typescript-eslint/parser@7.18.0(eslint@10.0.3)(typescript@5.9.3))(eslint-import-resolver-typescript@3.10.0(eslint-plugin-import@2.31.0(@typescript-eslint/parser@7.18.0(eslint@10.0.3)(typescript@5.9.3))(eslint@10.0.3))(eslint@10.0.3))(eslint@10.0.3) + eslint-plugin-import: 2.31.0(@typescript-eslint/parser@7.18.0(eslint@10.1.0)(typescript@5.9.3))(eslint-import-resolver-typescript@3.10.0(eslint-plugin-import@2.31.0(@typescript-eslint/parser@7.18.0(eslint@10.1.0)(typescript@5.9.3))(eslint@10.1.0))(eslint@10.1.0))(eslint@10.1.0) transitivePeerDependencies: - supports-color - eslint-module-utils@2.12.0(@typescript-eslint/parser@7.18.0(eslint@10.0.3)(typescript@5.9.3))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.10.0(eslint-plugin-import@2.31.0(@typescript-eslint/parser@7.18.0(eslint@10.0.3)(typescript@5.9.3))(eslint@10.0.3))(eslint@10.0.3))(eslint@10.0.3): + eslint-module-utils@2.12.0(@typescript-eslint/parser@7.18.0(eslint@10.1.0)(typescript@5.9.3))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.10.0(eslint-plugin-import@2.31.0(@typescript-eslint/parser@7.18.0(eslint@10.1.0)(typescript@5.9.3))(eslint@10.1.0))(eslint@10.1.0))(eslint@10.1.0): dependencies: debug: 3.2.7 optionalDependencies: - '@typescript-eslint/parser': 7.18.0(eslint@10.0.3)(typescript@5.9.3) - eslint: 10.0.3 + '@typescript-eslint/parser': 7.18.0(eslint@10.1.0)(typescript@5.9.3) + eslint: 10.1.0 eslint-import-resolver-node: 0.3.9 - eslint-import-resolver-typescript: 3.10.0(eslint-plugin-import@2.31.0(@typescript-eslint/parser@7.18.0(eslint@10.0.3)(typescript@5.9.3))(eslint@10.0.3))(eslint@10.0.3) + eslint-import-resolver-typescript: 3.10.0(eslint-plugin-import@2.31.0(@typescript-eslint/parser@7.18.0(eslint@10.1.0)(typescript@5.9.3))(eslint@10.1.0))(eslint@10.1.0) transitivePeerDependencies: - supports-color - eslint-plugin-cypress@2.15.2(eslint@10.0.3): + eslint-plugin-cypress@2.15.2(eslint@10.1.0): dependencies: - eslint: 10.0.3 + eslint: 10.1.0 globals: 13.24.0 - eslint-plugin-es-x@7.8.0(eslint@10.0.3): + eslint-plugin-es-x@7.8.0(eslint@10.1.0): dependencies: - '@eslint-community/eslint-utils': 4.9.1(eslint@10.0.3) + '@eslint-community/eslint-utils': 4.9.1(eslint@10.1.0) '@eslint-community/regexpp': 4.12.2 - eslint: 10.0.3 - eslint-compat-utils: 0.5.1(eslint@10.0.3) + eslint: 10.1.0 + eslint-compat-utils: 0.5.1(eslint@10.1.0) - eslint-plugin-eslint-comments@3.2.0(eslint@10.0.3): + eslint-plugin-eslint-comments@3.2.0(eslint@10.1.0): dependencies: escape-string-regexp: 1.0.5 - eslint: 10.0.3 + eslint: 10.1.0 ignore: 5.3.2 - eslint-plugin-import@2.31.0(@typescript-eslint/parser@7.18.0(eslint@10.0.3)(typescript@5.9.3))(eslint-import-resolver-typescript@3.10.0(eslint-plugin-import@2.31.0(@typescript-eslint/parser@7.18.0(eslint@10.0.3)(typescript@5.9.3))(eslint@10.0.3))(eslint@10.0.3))(eslint@10.0.3): + eslint-plugin-import@2.31.0(@typescript-eslint/parser@7.18.0(eslint@10.1.0)(typescript@5.9.3))(eslint-import-resolver-typescript@3.10.0(eslint-plugin-import@2.31.0(@typescript-eslint/parser@7.18.0(eslint@10.1.0)(typescript@5.9.3))(eslint@10.1.0))(eslint@10.1.0))(eslint@10.1.0): dependencies: '@rtsao/scc': 1.1.0 array-includes: 3.1.8 @@ -7505,9 +7505,9 @@ snapshots: array.prototype.flatmap: 1.3.3 debug: 3.2.7 doctrine: 2.1.0 - eslint: 10.0.3 + eslint: 10.1.0 eslint-import-resolver-node: 0.3.9 - eslint-module-utils: 2.12.0(@typescript-eslint/parser@7.18.0(eslint@10.0.3)(typescript@5.9.3))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.10.0(eslint-plugin-import@2.31.0(@typescript-eslint/parser@7.18.0(eslint@10.0.3)(typescript@5.9.3))(eslint@10.0.3))(eslint@10.0.3))(eslint@10.0.3) + eslint-module-utils: 2.12.0(@typescript-eslint/parser@7.18.0(eslint@10.1.0)(typescript@5.9.3))(eslint-import-resolver-node@0.3.9)(eslint-import-resolver-typescript@3.10.0(eslint-plugin-import@2.31.0(@typescript-eslint/parser@7.18.0(eslint@10.1.0)(typescript@5.9.3))(eslint@10.1.0))(eslint@10.1.0))(eslint@10.1.0) hasown: 2.0.2 is-core-module: 2.16.1 is-glob: 4.0.3 @@ -7519,25 +7519,25 @@ snapshots: string.prototype.trimend: 1.0.9 tsconfig-paths: 3.15.0 optionalDependencies: - '@typescript-eslint/parser': 7.18.0(eslint@10.0.3)(typescript@5.9.3) + '@typescript-eslint/parser': 7.18.0(eslint@10.1.0)(typescript@5.9.3) transitivePeerDependencies: - eslint-import-resolver-typescript - eslint-import-resolver-webpack - supports-color - eslint-plugin-mocha@10.5.0(eslint@10.0.3): + eslint-plugin-mocha@10.5.0(eslint@10.1.0): dependencies: - eslint: 10.0.3 - eslint-utils: 3.0.0(eslint@10.0.3) + eslint: 10.1.0 + eslint-utils: 3.0.0(eslint@10.1.0) globals: 13.24.0 rambda: 7.5.0 - eslint-plugin-n@16.6.2(eslint@10.0.3): + eslint-plugin-n@16.6.2(eslint@10.1.0): dependencies: - '@eslint-community/eslint-utils': 4.9.1(eslint@10.0.3) + '@eslint-community/eslint-utils': 4.9.1(eslint@10.1.0) builtins: 5.1.0 - eslint: 10.0.3 - eslint-plugin-es-x: 7.8.0(eslint@10.0.3) + eslint: 10.1.0 + eslint-plugin-es-x: 7.8.0(eslint@10.1.0) get-tsconfig: 4.13.0 globals: 13.24.0 ignore: 5.3.2 @@ -7547,28 +7547,28 @@ snapshots: resolve: 1.22.11 semver: 7.7.4 - eslint-plugin-prefer-arrow@1.2.3(eslint@10.0.3): + eslint-plugin-prefer-arrow@1.2.3(eslint@10.1.0): dependencies: - eslint: 10.0.3 + eslint: 10.1.0 - eslint-plugin-promise@6.6.0(eslint@10.0.3): + eslint-plugin-promise@6.6.0(eslint@10.1.0): dependencies: - eslint: 10.0.3 + eslint: 10.1.0 - eslint-plugin-react-hooks@7.0.1(eslint@10.0.3): + eslint-plugin-react-hooks@7.0.1(eslint@10.1.0): dependencies: '@babel/core': 7.28.5 '@babel/parser': 7.28.5 - eslint: 10.0.3 + eslint: 10.1.0 hermes-parser: 0.25.1 zod: 4.1.12 zod-validation-error: 4.0.2(zod@4.1.12) transitivePeerDependencies: - supports-color - eslint-plugin-react-refresh@0.5.2(eslint@10.0.3): + eslint-plugin-react-refresh@0.5.2(eslint@10.1.0): dependencies: - eslint: 10.0.3 + eslint: 10.1.0 eslint-plugin-you-dont-need-lodash-underscore@6.14.0: dependencies: @@ -7581,9 +7581,9 @@ snapshots: esrecurse: 4.3.0 estraverse: 5.3.0 - eslint-utils@3.0.0(eslint@10.0.3): + eslint-utils@3.0.0(eslint@10.1.0): dependencies: - eslint: 10.0.3 + eslint: 10.1.0 eslint-visitor-keys: 2.1.0 eslint-visitor-keys@2.1.0: {} @@ -7592,9 +7592,9 @@ snapshots: eslint-visitor-keys@5.0.1: {} - eslint@10.0.3: + eslint@10.1.0: dependencies: - '@eslint-community/eslint-utils': 4.9.1(eslint@10.0.3) + '@eslint-community/eslint-utils': 4.9.1(eslint@10.1.0) '@eslint-community/regexpp': 4.12.2 '@eslint/config-array': 0.23.3 '@eslint/config-helpers': 0.5.3 @@ -7785,14 +7785,14 @@ snapshots: flat-cache@4.0.1: dependencies: - flatted: 3.4.1 + flatted: 3.4.2 keyv: 4.5.4 flat@5.0.2: {} flatted@3.3.3: {} - flatted@3.4.1: {} + flatted@3.4.2: {} focus-trap@8.0.0: dependencies: @@ -8101,7 +8101,7 @@ snapshots: dependencies: '@babel/runtime': 7.28.6 - i18next@25.8.20(typescript@5.9.3): + i18next@25.10.5(typescript@5.9.3): dependencies: '@babel/runtime': 7.29.2 optionalDependencies: @@ -8545,7 +8545,7 @@ snapshots: lru-cache@7.18.3: {} - lucide-react@0.577.0(react@19.2.4): + lucide-react@1.0.1(react@19.2.4): dependencies: react: 19.2.4 @@ -8943,7 +8943,7 @@ snapshots: proxy-agent@6.5.0: dependencies: agent-base: 7.1.3 - debug: 4.4.1 + debug: 4.4.3(supports-color@8.1.1) http-proxy-agent: 7.0.2 https-proxy-agent: 7.0.6 lru-cache: 7.18.3 @@ -8997,15 +8997,15 @@ snapshots: react: 19.2.4 scheduler: 0.27.0 - react-hook-form@7.71.2(react@19.2.4): + react-hook-form@7.72.0(react@19.2.4): dependencies: react: 19.2.4 - react-i18next@16.5.8(i18next@25.8.20(typescript@5.9.3))(react-dom@19.2.4(react@19.2.4))(react@19.2.4)(typescript@5.9.3): + react-i18next@16.6.2(i18next@25.10.5(typescript@5.9.3))(react-dom@19.2.4(react@19.2.4))(react@19.2.4)(typescript@5.9.3): dependencies: - '@babel/runtime': 7.28.6 + '@babel/runtime': 7.29.2 html-parse-stringify: 3.0.1 - i18next: 25.8.20(typescript@5.9.3) + i18next: 25.10.5(typescript@5.9.3) react: 19.2.4 use-sync-external-store: 1.6.0(react@19.2.4) optionalDependencies: @@ -9031,13 +9031,13 @@ snapshots: optionalDependencies: '@types/react': 19.2.14 - react-router-dom@7.13.1(react-dom@19.2.4(react@19.2.4))(react@19.2.4): + react-router-dom@7.13.2(react-dom@19.2.4(react@19.2.4))(react@19.2.4): dependencies: react: 19.2.4 react-dom: 19.2.4(react@19.2.4) - react-router: 7.13.1(react-dom@19.2.4(react@19.2.4))(react@19.2.4) + react-router: 7.13.2(react-dom@19.2.4(react@19.2.4))(react@19.2.4) - react-router@7.13.1(react-dom@19.2.4(react@19.2.4))(react@19.2.4): + react-router@7.13.2(react-dom@19.2.4(react@19.2.4))(react@19.2.4): dependencies: cookie: 1.1.1 react: 19.2.4 @@ -9322,7 +9322,7 @@ snapshots: set-cookie-parser@2.7.2: {} - set-cookie-parser@3.0.1: {} + set-cookie-parser@3.1.0: {} set-function-length@1.2.2: dependencies: @@ -9610,7 +9610,7 @@ snapshots: tinycon@0.6.8: {} - tinyexec@1.0.2: {} + tinyexec@1.0.4: {} tinyglobby@0.2.15: dependencies: @@ -9737,7 +9737,7 @@ snapshots: undici-types@7.18.2: {} - undici-types@7.22.0: {} + undici-types@7.24.5: {} undici@7.24.4: {} @@ -9859,7 +9859,7 @@ snapshots: '@babel/core': 7.29.0 vite: rolldown-vite@7.2.10(@types/node@25.5.0)(tsx@4.21.0) - vite-plugin-static-copy@3.3.0(rolldown-vite@7.2.10(@types/node@25.5.0)(tsx@4.21.0)): + vite-plugin-static-copy@4.0.0(rolldown-vite@7.2.10(@types/node@25.5.0)(tsx@4.21.0)): dependencies: chokidar: 3.6.0 p-map: 7.0.4 @@ -9929,15 +9929,15 @@ snapshots: - universal-cookie - yaml - vitest@4.1.0(@opentelemetry/api@1.9.0)(@types/node@25.5.0)(jsdom@29.0.1(@noble/hashes@1.8.0))(vite@7.3.1(@types/node@25.5.0)(lightningcss@1.30.2)(tsx@4.21.0)): + vitest@4.1.1(@opentelemetry/api@1.9.0)(@types/node@25.5.0)(jsdom@29.0.1(@noble/hashes@1.8.0))(vite@7.3.1(@types/node@25.5.0)(lightningcss@1.30.2)(tsx@4.21.0)): dependencies: - '@vitest/expect': 4.1.0 - '@vitest/mocker': 4.1.0(vite@7.3.1(@types/node@25.5.0)(lightningcss@1.30.2)(tsx@4.21.0)) - '@vitest/pretty-format': 4.1.0 - '@vitest/runner': 4.1.0 - '@vitest/snapshot': 4.1.0 - '@vitest/spy': 4.1.0 - '@vitest/utils': 4.1.0 + '@vitest/expect': 4.1.1 + '@vitest/mocker': 4.1.1(vite@7.3.1(@types/node@25.5.0)(lightningcss@1.30.2)(tsx@4.21.0)) + '@vitest/pretty-format': 4.1.1 + '@vitest/runner': 4.1.1 + '@vitest/snapshot': 4.1.1 + '@vitest/spy': 4.1.1 + '@vitest/utils': 4.1.1 es-module-lexer: 2.0.0 expect-type: 1.3.0 magic-string: 0.30.21 @@ -9946,7 +9946,7 @@ snapshots: picomatch: 4.0.3 std-env: 4.0.0 tinybench: 2.9.0 - tinyexec: 1.0.2 + tinyexec: 1.0.4 tinyglobby: 0.2.15 tinyrainbow: 3.1.0 vite: 7.3.1(@types/node@25.5.0)(lightningcss@1.30.2)(tsx@4.21.0) diff --git a/src/package.json b/src/package.json index a35a706b71a..e76d31c5024 100644 --- a/src/package.json +++ b/src/package.json @@ -94,7 +94,7 @@ "@types/http-errors": "^2.0.5", "@types/jquery": "^4.0.0", "@types/js-cookie": "^3.0.6", - "@types/jsdom": "^28.0.0", + "@types/jsdom": "^28.0.1", "@types/jsonminify": "^0.4.3", "@types/jsonwebtoken": "^9.0.10", "@types/mime-types": "^3.0.1", @@ -108,19 +108,19 @@ "@types/underscore": "^1.13.0", "@types/whatwg-mimetype": "^5.0.0", "chokidar": "^5.0.0", - "eslint": "^10.0.3", + "eslint": "^10.1.0", "eslint-config-etherpad": "^4.0.4", "etherpad-cli-client": "^3.0.5", "mocha": "^11.7.5", "mocha-froth": "^0.2.10", "nodeify": "^1.0.1", "openapi-schema-validation": "^0.4.2", - "set-cookie-parser": "^3.0.1", + "set-cookie-parser": "^3.1.0", "sinon": "^21.0.3", "split-grid": "^1.0.11", "supertest": "^7.2.2", "typescript": "^5.9.3", - "vitest": "^4.1.0" + "vitest": "^4.1.1" }, "engines": { "node": ">=20.0.0", From d3f085bcf6fec8fe87fcafc8461d3bdbeb5815ca Mon Sep 17 00:00:00 2001 From: "translatewiki.net" Date: Mon, 30 Mar 2026 14:05:40 +0200 Subject: [PATCH 044/130] Localisation updates from https://translatewiki.net. --- src/locales/nb.json | 14 +++++++++++++- 1 file changed, 13 insertions(+), 1 deletion(-) diff --git a/src/locales/nb.json b/src/locales/nb.json index cca06a5414d..111a8f2c45f 100644 --- a/src/locales/nb.json +++ b/src/locales/nb.json @@ -4,13 +4,23 @@ "Chameleon222", "Cocu", "EdoAug", + "GtHoo", "Jon Harald Søby", "Laaknor", "Orjanmen", "SuperPotato" ] }, + "admin.page-title": "Admin Dashbord - Etherpad", + "admin_plugins": "Plugin manager", + "admin_plugins.available": "Tilgjengelige Plugins", + "admin_plugins.available_not-found": "Ingen plugins funnet.", + "admin_plugins.available_fetching": "Henter...", "admin_plugins.available_install.value": "Installer", + "admin_plugins.available_search.placeholder": "Søk etter plugins å installere", + "admin_plugins.description": "Beskrivelse", + "admin_plugins.installed": "Installerte plugins", + "admin_plugins.installed_fetching": "Henter installerte plugins...", "admin_plugins.version": "Versjon", "admin_settings": "Innstillinger", "admin_settings.current_save.value": "Lagre innstillinger", @@ -49,8 +59,10 @@ "pad.settings.fontType": "Skrifttype:", "pad.settings.fontType.normal": "Normal", "pad.settings.language": "Språk:", + "pad.settings.deletePad": "Slett Pad", + "pad.delete.confirm": "Vil du virkelig slette denne paden?", "pad.settings.about": "Om", - "pad.settings.poweredBy": "Drives av", + "pad.settings.poweredBy": "Drevet av $1", "pad.importExport.import_export": "Importer/eksporter", "pad.importExport.import": "Last opp tekstfil eller dokument", "pad.importExport.importSuccessful": "Vellykket!", From 737f673fbaf2d719b1e7ceb1177c4d836d680b5e Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 30 Mar 2026 21:27:16 +0200 Subject: [PATCH 045/130] build(deps): bump axios from 1.13.6 to 1.14.0 (#7394) Bumps [axios](https://github.com/axios/axios) from 1.13.6 to 1.14.0. - [Release notes](https://github.com/axios/axios/releases) - [Changelog](https://github.com/axios/axios/blob/v1.x/CHANGELOG.md) - [Commits](https://github.com/axios/axios/compare/v1.13.6...v1.14.0) --- updated-dependencies: - dependency-name: axios dependency-version: 1.14.0 dependency-type: direct:production update-type: version-update:semver-minor ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- bin/package.json | 2 +- pnpm-lock.yaml | 32 +++++++++++++++++++------------- src/package.json | 2 +- 3 files changed, 21 insertions(+), 15 deletions(-) diff --git a/bin/package.json b/bin/package.json index a2761920928..fa2359d2ea6 100644 --- a/bin/package.json +++ b/bin/package.json @@ -7,7 +7,7 @@ "doc": "doc" }, "dependencies": { - "axios": "^1.13.6", + "axios": "^1.14.0", "ep_etherpad-lite": "workspace:../src", "log4js": "^6.9.1", "semver": "^7.7.4", diff --git a/pnpm-lock.yaml b/pnpm-lock.yaml index 134802592c8..bd4546eb499 100644 --- a/pnpm-lock.yaml +++ b/pnpm-lock.yaml @@ -107,8 +107,8 @@ importers: bin: dependencies: axios: - specifier: ^1.13.6 - version: 1.13.6 + specifier: ^1.14.0 + version: 1.14.0 ep_etherpad-lite: specifier: workspace:../src version: link:../src @@ -143,7 +143,7 @@ importers: devDependencies: vitepress: specifier: ^2.0.0-alpha.17 - version: 2.0.0-alpha.17(@types/node@25.5.0)(axios@1.13.6)(jwt-decode@4.0.0)(lightningcss@1.30.2)(postcss@8.5.8)(tsx@4.21.0)(typescript@5.9.3) + version: 2.0.0-alpha.17(@types/node@25.5.0)(axios@1.14.0)(jwt-decode@4.0.0)(lightningcss@1.30.2)(postcss@8.5.8)(tsx@4.21.0)(typescript@5.9.3) src: dependencies: @@ -151,8 +151,8 @@ importers: specifier: ^3.2.6 version: 3.2.6 axios: - specifier: ^1.13.6 - version: 1.13.6 + specifier: ^1.14.0 + version: 1.14.0 cookie-parser: specifier: ^1.4.7 version: 1.4.7 @@ -2259,8 +2259,8 @@ packages: resolution: {integrity: sha512-wvUjBtSGN7+7SjNpq/9M2Tg350UZD3q62IFZLbRAR1bSMlCo1ZaeW+BJ+D090e4hIIZLBcTDWe4Mh4jvUDajzQ==} engines: {node: '>= 0.4'} - axios@1.13.6: - resolution: {integrity: sha512-ChTCHMouEe2kn713WHbQGcuYrr6fXTBiu460OTwWrWob16g1bXn4vtz07Ope7ewMozJAnEquLk5lWQWtBig9DQ==} + axios@1.14.0: + resolution: {integrity: sha512-3Y8yrqLSwjuzpXuZ0oIYZ/XGgLwUIBU3uLvbcpb0pidD9ctpShJd43KSlEEkVQg6DS0G9NKyzOvBfUtDKEyHvQ==} babel-plugin-react-compiler@19.1.0-rc.3: resolution: {integrity: sha512-mjRn69WuTz4adL0bXGx8Rsyk1086zFJeKmes6aK0xPuK3aaXmDJdLHqwKKMrpm6KAI1MCoUK72d2VeqQbu8YIA==} @@ -4080,6 +4080,10 @@ packages: proxy-from-env@1.1.0: resolution: {integrity: sha512-D+zkORCbA9f1tdWRK0RaCR3GPv50cMxcrz4X8k5LTSUD1Dkw47mKJEZQNunItRTkWwgtaUSo1RVFRIG9ZXiFYg==} + proxy-from-env@2.1.0: + resolution: {integrity: sha512-cJ+oHTW1VAEa8cJslgmUZrc+sjRKgAKl3Zyse6+PV38hZe/V6Z14TbCuXcan9F9ghlz4QrFr2c92TNF82UkYHA==} + engines: {node: '>=10'} + punycode@2.3.1: resolution: {integrity: sha512-vYt7UD1U9Wg6138shLtLOvdAu+8DsC/ilFtEVHcH+wydcSpNE20AfSOduf6MkRFahL5FY7X1oU7nKVZFtfq8Fg==} engines: {node: '>=6'} @@ -6728,13 +6732,13 @@ snapshots: '@vueuse/shared': 14.2.1(vue@3.5.30(typescript@5.9.3)) vue: 3.5.30(typescript@5.9.3) - '@vueuse/integrations@14.2.1(axios@1.13.6)(focus-trap@8.0.0)(jwt-decode@4.0.0)(vue@3.5.30(typescript@5.9.3))': + '@vueuse/integrations@14.2.1(axios@1.14.0)(focus-trap@8.0.0)(jwt-decode@4.0.0)(vue@3.5.30(typescript@5.9.3))': dependencies: '@vueuse/core': 14.2.1(vue@3.5.30(typescript@5.9.3)) '@vueuse/shared': 14.2.1(vue@3.5.30(typescript@5.9.3)) vue: 3.5.30(typescript@5.9.3) optionalDependencies: - axios: 1.13.6 + axios: 1.14.0 focus-trap: 8.0.0 jwt-decode: 4.0.0 @@ -6871,11 +6875,11 @@ snapshots: dependencies: possible-typed-array-names: 1.1.0 - axios@1.13.6: + axios@1.14.0: dependencies: follow-redirects: 1.15.11 form-data: 4.0.5 - proxy-from-env: 1.1.0 + proxy-from-env: 2.1.0 transitivePeerDependencies: - debug @@ -8955,6 +8959,8 @@ snapshots: proxy-from-env@1.1.0: {} + proxy-from-env@2.1.0: {} + punycode@2.3.1: {} qs@6.14.0: @@ -9881,7 +9887,7 @@ snapshots: lightningcss: 1.30.2 tsx: 4.21.0 - vitepress@2.0.0-alpha.17(@types/node@25.5.0)(axios@1.13.6)(jwt-decode@4.0.0)(lightningcss@1.30.2)(postcss@8.5.8)(tsx@4.21.0)(typescript@5.9.3): + vitepress@2.0.0-alpha.17(@types/node@25.5.0)(axios@1.14.0)(jwt-decode@4.0.0)(lightningcss@1.30.2)(postcss@8.5.8)(tsx@4.21.0)(typescript@5.9.3): dependencies: '@docsearch/css': 4.6.0 '@docsearch/js': 4.6.0 @@ -9895,7 +9901,7 @@ snapshots: '@vue/devtools-api': 8.1.0 '@vue/shared': 3.5.30 '@vueuse/core': 14.2.1(vue@3.5.30(typescript@5.9.3)) - '@vueuse/integrations': 14.2.1(axios@1.13.6)(focus-trap@8.0.0)(jwt-decode@4.0.0)(vue@3.5.30(typescript@5.9.3)) + '@vueuse/integrations': 14.2.1(axios@1.14.0)(focus-trap@8.0.0)(jwt-decode@4.0.0)(vue@3.5.30(typescript@5.9.3)) focus-trap: 8.0.0 mark.js: 8.11.1 minisearch: 7.2.0 diff --git a/src/package.json b/src/package.json index e76d31c5024..db23643c9be 100644 --- a/src/package.json +++ b/src/package.json @@ -31,7 +31,7 @@ ], "dependencies": { "async": "^3.2.6", - "axios": "^1.13.6", + "axios": "^1.14.0", "cookie-parser": "^1.4.7", "cross-env": "^10.1.0", "cross-spawn": "^7.0.6", From 20fb7a3f3805006e890409d5d461c933d113e7e9 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 30 Mar 2026 21:27:23 +0200 Subject: [PATCH 046/130] build(deps): bump actions/configure-pages from 5 to 6 (#7393) Bumps [actions/configure-pages](https://github.com/actions/configure-pages) from 5 to 6. - [Release notes](https://github.com/actions/configure-pages/releases) - [Commits](https://github.com/actions/configure-pages/compare/v5...v6) --- updated-dependencies: - dependency-name: actions/configure-pages dependency-version: '6' dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- .github/workflows/build-and-deploy-docs.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/build-and-deploy-docs.yml b/.github/workflows/build-and-deploy-docs.yml index b0b87697a27..c6c60e69938 100644 --- a/.github/workflows/build-and-deploy-docs.yml +++ b/.github/workflows/build-and-deploy-docs.yml @@ -50,7 +50,7 @@ jobs: with: version: 0.0.12 - name: Setup Pages - uses: actions/configure-pages@v5 + uses: actions/configure-pages@v6 - name: Install dependencies run: gnpm install - name: Build app From 039f04559597c77cfd3918c1cb49c85362e93605 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Mon, 30 Mar 2026 21:27:35 +0200 Subject: [PATCH 047/130] build(deps): bump actions/deploy-pages from 4 to 5 (#7391) Bumps [actions/deploy-pages](https://github.com/actions/deploy-pages) from 4 to 5. - [Release notes](https://github.com/actions/deploy-pages/releases) - [Commits](https://github.com/actions/deploy-pages/compare/v4...v5) --- updated-dependencies: - dependency-name: actions/deploy-pages dependency-version: '5' dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- .github/workflows/build-and-deploy-docs.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/build-and-deploy-docs.yml b/.github/workflows/build-and-deploy-docs.yml index c6c60e69938..0d89eec6485 100644 --- a/.github/workflows/build-and-deploy-docs.yml +++ b/.github/workflows/build-and-deploy-docs.yml @@ -65,4 +65,4 @@ jobs: path: './doc/.vitepress/dist' - name: Deploy to GitHub Pages id: deployment - uses: actions/deploy-pages@v4 + uses: actions/deploy-pages@v5 From 7484d9ea60652dfd07fb41c6dc6f31123ac1298f Mon Sep 17 00:00:00 2001 From: John McLear Date: Tue, 31 Mar 2026 00:31:21 +0100 Subject: [PATCH 048/130] Update deprecated GitHub Actions in plugin workflow templates (#7395) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit Bump actions/checkout v3 → v4 and awalsh128/cache-apt-pkgs-action v1.4.2 → v1.6.0 to fix CI failures caused by deprecated actions/upload-artifact v3 dependency. Co-authored-by: Claude Opus 4.6 (1M context) --- bin/plugins/lib/backend-tests.yml | 6 +++--- bin/plugins/lib/frontend-tests.yml | 4 ++-- bin/plugins/lib/npmpublish.yml | 4 ++-- 3 files changed, 7 insertions(+), 7 deletions(-) diff --git a/bin/plugins/lib/backend-tests.yml b/bin/plugins/lib/backend-tests.yml index e38c2e902b5..bbe988fc356 100644 --- a/bin/plugins/lib/backend-tests.yml +++ b/bin/plugins/lib/backend-tests.yml @@ -16,13 +16,13 @@ jobs: steps: - name: Install libreoffice - uses: awalsh128/cache-apt-pkgs-action@v1.4.2 + uses: awalsh128/cache-apt-pkgs-action@v1.6.0 with: packages: libreoffice libreoffice-pdfimport version: 1.0 - name: Install etherpad core - uses: actions/checkout@v3 + uses: actions/checkout@v4 with: repository: ether/etherpad-lite path: etherpad-lite @@ -44,7 +44,7 @@ jobs: ${{ runner.os }}-pnpm-store- - name: Checkout plugin repository - uses: actions/checkout@v3 + uses: actions/checkout@v4 with: path: plugin - diff --git a/bin/plugins/lib/frontend-tests.yml b/bin/plugins/lib/frontend-tests.yml index ca9ca965c2a..5150e87ad14 100644 --- a/bin/plugins/lib/frontend-tests.yml +++ b/bin/plugins/lib/frontend-tests.yml @@ -12,7 +12,7 @@ jobs: steps: - name: Check out Etherpad core - uses: actions/checkout@v3 + uses: actions/checkout@v4 with: repository: ether/etherpad-lite - uses: pnpm/action-setup@v3 @@ -33,7 +33,7 @@ jobs: ${{ runner.os }}-pnpm-store- - name: Check out the plugin - uses: actions/checkout@v3 + uses: actions/checkout@v4 with: path: ./node_modules/__tmp - diff --git a/bin/plugins/lib/npmpublish.yml b/bin/plugins/lib/npmpublish.yml index efa341c2c46..f33e7c93950 100644 --- a/bin/plugins/lib/npmpublish.yml +++ b/bin/plugins/lib/npmpublish.yml @@ -15,7 +15,7 @@ jobs: node-version: 20 registry-url: https://registry.npmjs.org/ - name: Check out Etherpad core - uses: actions/checkout@v3 + uses: actions/checkout@v4 with: repository: ether/etherpad-lite - uses: pnpm/action-setup@v3 @@ -35,7 +35,7 @@ jobs: restore-keys: | ${{ runner.os }}-pnpm-store- - - uses: actions/checkout@v3 + uses: actions/checkout@v4 with: fetch-depth: 0 - From 892c52ba261994e9cdb2d6847d6aafe8c7ac7324 Mon Sep 17 00:00:00 2001 From: John McLear Date: Tue, 31 Mar 2026 00:40:10 +0100 Subject: [PATCH 049/130] Fix plugin backend-tests workflow pnpm 10 symlink error (#7396) Remove redundant pnpm link --global steps that conflict with pnpm run plugins i --path on pnpm 10, causing "Symlink path is the same as the target path" errors. The plugins i command handles all linking internally via LinkInstaller. Co-authored-by: Claude Opus 4.6 (1M context) --- bin/plugins/lib/backend-tests.yml | 24 +----------------------- 1 file changed, 1 insertion(+), 23 deletions(-) diff --git a/bin/plugins/lib/backend-tests.yml b/bin/plugins/lib/backend-tests.yml index bbe988fc356..d02f658392c 100644 --- a/bin/plugins/lib/backend-tests.yml +++ b/bin/plugins/lib/backend-tests.yml @@ -47,17 +47,6 @@ jobs: uses: actions/checkout@v4 with: path: plugin - - - name: Determine plugin name - id: plugin_name - working-directory: ./plugin - run: | - npx -c 'printf %s\\n "::set-output name=plugin_name::${npm_package_name}"' - - - name: Link plugin directory - working-directory: ./plugin - run: | - pnpm link --global - name: Remove tests working-directory: ./etherpad-lite run: rm -rf ./src/tests/backend/specs @@ -65,21 +54,10 @@ jobs: name: Install Etherpad core dependencies working-directory: ./etherpad-lite run: bin/installDeps.sh - - name: Link plugin to etherpad-lite + - name: Install plugin working-directory: ./etherpad-lite run: | - pnpm link --global $PLUGIN_NAME pnpm run plugins i --path ../../plugin - env: - PLUGIN_NAME: ${{ steps.plugin_name.outputs.plugin_name }} - - name: Link ep_etherpad-lite - working-directory: ./etherpad-lite/src - run: | - pnpm link --global - - name: Link etherpad to plugin - working-directory: ./plugin - run: | - pnpm link --global ep_etherpad-lite - name: Run the backend tests working-directory: ./etherpad-lite From 45fe8a310e0b731e2c4ca7ab6edef0cd4321a164 Mon Sep 17 00:00:00 2001 From: John McLear Date: Tue, 31 Mar 2026 00:47:21 +0100 Subject: [PATCH 050/130] Fix backend-tests find path for plugin test discovery (#7397) plugins i --path installs to src/plugin_packages/, not node_modules/. Update the find command to look in the correct location so backend tests are actually discovered and run. Co-authored-by: Claude Opus 4.6 (1M context) --- bin/plugins/lib/backend-tests.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/bin/plugins/lib/backend-tests.yml b/bin/plugins/lib/backend-tests.yml index d02f658392c..9adf2740b5b 100644 --- a/bin/plugins/lib/backend-tests.yml +++ b/bin/plugins/lib/backend-tests.yml @@ -62,7 +62,7 @@ jobs: name: Run the backend tests working-directory: ./etherpad-lite run: | - res=$(find .. -path "./node_modules/ep_*/static/tests/backend/specs/**" | wc -l) + res=$(find . -path "./src/plugin_packages/ep_*/static/tests/backend/specs/**" | wc -l) if [ $res -eq 0 ]; then echo "No backend tests found" else From e97e203d76c30b55b5eb090ed2b56e2ba02d83ea Mon Sep 17 00:00:00 2001 From: John McLear Date: Tue, 31 Mar 2026 00:52:44 +0100 Subject: [PATCH 051/130] Fix backend-tests find pattern for versioned plugin paths (#7398) live-plugin-manager installs to src/plugin_packages/ep_name@version/, not src/plugin_packages/ep_name/. Update the glob to match the versioned directory format. Co-authored-by: Claude Opus 4.6 (1M context) --- bin/plugins/lib/backend-tests.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/bin/plugins/lib/backend-tests.yml b/bin/plugins/lib/backend-tests.yml index 9adf2740b5b..6031120ed49 100644 --- a/bin/plugins/lib/backend-tests.yml +++ b/bin/plugins/lib/backend-tests.yml @@ -62,7 +62,7 @@ jobs: name: Run the backend tests working-directory: ./etherpad-lite run: | - res=$(find . -path "./src/plugin_packages/ep_*/static/tests/backend/specs/**" | wc -l) + res=$(find . -path "./src/plugin_packages/ep_*@*/static/tests/backend/specs/**" | wc -l) if [ $res -eq 0 ]; then echo "No backend tests found" else From 0423477966868f2db67aaaa1d5de74ca62fe3560 Mon Sep 17 00:00:00 2001 From: John McLear Date: Tue, 31 Mar 2026 01:21:17 +0100 Subject: [PATCH 052/130] Fix/plugin workflow templates clean (#7399) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * Revert plugin workflow template changes Reverts the following commits to replace with a single clean fix: - e97e203d7 Fix backend-tests find pattern for versioned plugin paths - 45fe8a310 Fix backend-tests find path for plugin test discovery - 892c52ba2 Fix plugin backend-tests workflow pnpm 10 symlink error - 7484d9ea6 Update deprecated GitHub Actions in plugin workflow templates Co-Authored-By: Claude Opus 4.6 (1M context) * Modernize plugin workflow templates for pnpm 10 and new plugin paths - Bump actions/checkout v3 → v4, cache-apt-pkgs-action v1.4.2 → v1.6.0 - Replace pnpm link --global with pnpm run plugins i --path (fixes pnpm 10 "symlink path same as target" error) - Fix backend test discovery: plugins install to src/plugin_packages/ via live-plugin-manager, not node_modules/ - Run mocha directly from src/ against node_modules/ep_* symlinks so tests resolve correctly Tested and verified on ep_table_of_contents. Co-Authored-By: Claude Opus 4.6 (1M context) --------- Co-authored-by: Claude Opus 4.6 (1M context) --- bin/plugins/lib/backend-tests.yml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/bin/plugins/lib/backend-tests.yml b/bin/plugins/lib/backend-tests.yml index 6031120ed49..5cb360f461b 100644 --- a/bin/plugins/lib/backend-tests.yml +++ b/bin/plugins/lib/backend-tests.yml @@ -60,11 +60,11 @@ jobs: pnpm run plugins i --path ../../plugin - name: Run the backend tests - working-directory: ./etherpad-lite + working-directory: ./etherpad-lite/src run: | - res=$(find . -path "./src/plugin_packages/ep_*@*/static/tests/backend/specs/**" | wc -l) + res=$(find ./plugin_packages -path "*/static/tests/backend/specs/*" 2>/dev/null | wc -l) if [ $res -eq 0 ]; then echo "No backend tests found" else - pnpm run test + npx cross-env NODE_ENV=production mocha --import=tsx --timeout 120000 --recursive node_modules/ep_*/static/tests/backend/specs/** fi From 561ee644e5e92fc67271609d6e50fed49087b984 Mon Sep 17 00:00:00 2001 From: John McLear Date: Tue, 31 Mar 2026 03:04:22 +0100 Subject: [PATCH 053/130] Improve AGENTS.MD with practical details (#7400) Add quick start commands, test auth patterns (JWT not APIKEY), plugin installation internals, monorepo structure, plugin repository layout, and workspace information. Co-authored-by: Claude Opus 4.6 (1M context) --- AGENTS.MD | 120 ++++++++++++++++++++++++++++++++++++++++++------------ 1 file changed, 95 insertions(+), 25 deletions(-) diff --git a/AGENTS.MD b/AGENTS.MD index ec9637b39d3..5bd1af2abfb 100644 --- a/AGENTS.MD +++ b/AGENTS.MD @@ -6,45 +6,72 @@ Welcome to the Etherpad project. This guide provides essential context and instr Etherpad is a real-time collaborative editor designed to be lightweight, scalable, and highly extensible via plugins. ## Technical Stack -- **Runtime:** Node.js -- **Package Manager:** pnpm -- **Languages:** TypeScript (primary), JavaScript, CSS, HTML -- **Backend:** Express.js, Socket.io -- **Frontend:** Legacy core (`src/static`), New UI (`ui/`), Admin UI (`admin/`) -- **Build Tools:** Vite (for `ui` and `admin`), custom scripts in `bin/` -- **Testing:** Mocha (Backend), Vitest, Playwright, custom backend test suite +- **Runtime:** Node.js >= 20.0.0 +- **Package Manager:** pnpm (>= 8.3.0) +- **Languages:** TypeScript (primary for new code), JavaScript (legacy), CSS, HTML +- **Backend:** Express.js 5, Socket.io 4 +- **Frontend:** Legacy core (`src/static`), Modern React UI (`ui/`), Admin UI (`admin/`) +- **Database:** ueberdb2 abstraction (supports dirtyDB, MySQL, PostgreSQL, Redis) +- **Build Tools:** Vite (for `ui` and `admin`), esbuild, tsx +- **Testing:** Mocha (backend), Playwright (frontend E2E), Vitest (unit) +- **Auth:** JWT (jose library), OIDC provider ## Directory Structure -- `src/node/`: Backend logic, API, and database abstraction. -- `src/static/`: Core frontend logic (Legacy). -- `ui/`: Modern React-based user interface. -- `admin/`: Modern React-based administration interface. -- `bin/`: Utility and lifecycle scripts. -- `doc/`: Documentation in Markdown and Adoc formats. -- `src/tests/`: Test suites (backend, frontend, UI, admin). -- `var/`: Runtime data (logs, dirtyDB, etc. - ignored by git). -- `local_plugins/`: Directory for developing and testing plugins locally. +- `src/node/` - Backend logic, API handlers, database models, hooks +- `src/static/` - Core frontend logic (legacy jQuery-based editor) +- `src/static/js/pluginfw/` - Plugin framework (installer, hook system) +- `src/tests/` - Test suites (backend, frontend, container) +- `ui/` - Modern React OIDC login UI (Vite + TypeScript) +- `admin/` - Modern React admin panel (Vite + TypeScript + Radix UI) +- `bin/` - CLI utilities, build scripts, plugin management tools +- `bin/plugins/` - Plugin maintenance scripts (checkPlugin.ts, updateCorePlugins.sh) +- `doc/` - Documentation (VitePress + Markdown/AsciiDoc) +- `local_plugins/` - Directory for developing and testing plugins locally +- `var/` - Runtime data (logs, dirtyDB, etc. - ignored by git) + +## Quick Start + +```bash +pnpm install # Install all dependencies +pnpm run build:etherpad # Build admin UI and static assets +pnpm --filter ep_etherpad-lite run dev # Start dev server (port 9001) +pnpm --filter ep_etherpad-lite run prod # Start production server +``` ## Core Mandates & Conventions ### Coding Style -- **Indentation:** 2 spaces for all files (JS/TS/CSS/HTML). -- **No Tabs:** Use spaces only. -- **Comments:** Provide clear comments for complex logic. +- **Indentation:** 2 spaces for all files (JS/TS/CSS/HTML). No tabs. +- **TypeScript:** All new code should be TypeScript. Strict mode is enabled. +- **Comments:** Provide clear comments for complex logic only. - **Backward Compatibility:** Always ensure compatibility with older versions of the database and configuration files. ### Development Workflow -- **Branching:** Work in feature branches. Issue PRs against the `develop` branch. +- **Branching:** Work in feature branches. Issue PRs against the `develop` branch. Never PR directly to `master`. - **Commits:** Maintain a linear history (no merge commits). Use meaningful messages in the format: `submodule: description`. - **Feature Flags:** New features should be placed behind feature flags and disabled by default. - **Deprecation:** Never remove features abruptly; deprecate them first with a `WARN` log. +- **Forks:** For etherpad-lite changes, commit to `johnmclear/etherpad-lite` fork on a new branch, then PR to `ether/etherpad-lite`. For plugins (`ep_*` repos), committing directly is acceptable. ### Testing & Validation - **Requirement:** Every bug fix MUST include a regression test in the same commit. -- **Backend Tests:** Run `pnpm --filter ep_etherpad-lite run test` from the root. -- **Frontend Tests:** Accessible at `/tests/frontend` on a running instance. -- **Linting:** Run `pnpm run lint` to ensure style compliance. -- **Build:** Run `pnpm run build:etherpad` before production deployment. +- **Backend Tests:** `pnpm --filter ep_etherpad-lite run test` +- **Frontend E2E Tests:** `pnpm --filter ep_etherpad-lite run test-ui` +- **Admin Tests:** `pnpm --filter ep_etherpad-lite run test-admin` +- **Linting:** `pnpm run lint` +- **Type Check:** `pnpm --filter ep_etherpad-lite run ts-check` +- **Build:** `pnpm run build:etherpad` before production deployment + +### Backend Test Auth +Tests use JWT authentication, not API keys. Pattern: +```typescript +import * as common from 'ep_etherpad-lite/tests/backend/common'; + +const agent = await common.init(); // Starts server, returns supertest agent +const token = await common.generateJWTToken(); +agent.get('/api/1/endpoint').set('authorization', token); +``` +Do not use `APIKEY.txt` — it may not exist in the test environment. ## Key Concepts @@ -52,10 +79,53 @@ Etherpad is a real-time collaborative editor designed to be lightweight, scalabl The real-time synchronization engine. It is complex; refer to `doc/public/easysync/` before modifying core synchronization logic. ### Plugin Framework -Most functionality should be implemented as plugins (`ep_...`). Avoid modifying the core unless absolutely necessary. +Most functionality should be implemented as plugins (`ep_*`). Avoid modifying the core unless absolutely necessary. + +**Plugin structure:** +``` +ep_myplugin/ +├── ep.json # Hook declarations (server_hooks, client_hooks) +├── index.js # Server-side hook implementations +├── package.json +├── static/ +│ ├── js/ # Client-side code +│ ├── css/ +│ └── tests/ +│ ├── backend/specs/ # Backend tests (Mocha) +│ └── frontend-new/ # Frontend tests (Playwright) +├── templates/ # EJS templates +└── locales/ # i18n files +``` + +**Plugin management:** +```bash +pnpm run plugins i ep_plugin_name # Install from npm +pnpm run plugins i --path ../plugin # Install from local path +pnpm run plugins rm ep_plugin_name # Remove +pnpm run plugins ls # List installed +``` + +**Plugin installation internals:** Plugins are installed to `src/plugin_packages/` via `live-plugin-manager`, which stores them at `src/plugin_packages/.versions/ep_name@version/`. Symlinks are created: `src/node_modules/ep_name` → `src/plugin_packages/ep_name` → `.versions/ep_name@ver/`. + +### Plugin Repositories +- **Monorepo:** `ether/ether-plugins` contains 80+ plugins with shared CI/publishing +- **Standalone repos:** Individual `ether/ep_*` repos still exist for many plugins +- **Plugin CI templates:** `bin/plugins/lib/` contains workflow templates pushed to standalone plugin repos via `checkPlugin.ts` +- **Shared pipelines:** `ether/ether-pipelines` contains reusable GitHub Actions workflows for plugin CI ### Settings Configured via `settings.json`. A template is available at `settings.json.template`. Environment variables can override any setting using `"${ENV_VAR}"` or `"${ENV_VAR:default_value}"`. +## Monorepo Structure + +This project uses pnpm workspaces. The workspaces are: +- `src/` - Core Etherpad (package: `ep_etherpad-lite`) +- `bin/` - CLI tools and plugin scripts +- `ui/` - Login UI +- `admin/` - Admin panel +- `doc/` - Documentation + +Root-level commands operate across all workspaces. Use `pnpm --filter ` to target specific workspaces. + ## AI-Specific Guidance AI/Agent contributions are explicitly welcomed by the maintainers, provided they strictly adhere to the guidelines in `CONTRIBUTING.md` and this guide. Always prioritize stability, readability, and compatibility. From a6d283a809aae2a80ad3cf5d3d1ab83bc9fd07ee Mon Sep 17 00:00:00 2001 From: John McLear Date: Tue, 31 Mar 2026 03:21:43 +0100 Subject: [PATCH 054/130] Fix plugin frontend-tests template: use dev mode not prod (#7402) Prod mode enables rate limiting which causes frontend tests to fail silently. Dev mode disables rate limiting for testing. Co-authored-by: Claude Opus 4.6 (1M context) --- bin/plugins/lib/frontend-tests.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/bin/plugins/lib/frontend-tests.yml b/bin/plugins/lib/frontend-tests.yml index 5150e87ad14..a125701c8c2 100644 --- a/bin/plugins/lib/frontend-tests.yml +++ b/bin/plugins/lib/frontend-tests.yml @@ -78,7 +78,7 @@ jobs: - name: Run the frontend tests shell: bash run: | - pnpm run prod & + pnpm run dev & connected=false can_connect() { curl -sSfo /dev/null http://localhost:9001/ || return 1 From 09df1ce65f0d5f24f61e89e9e6a75b2bf177bd90 Mon Sep 17 00:00:00 2001 From: John McLear Date: Tue, 31 Mar 2026 10:26:48 +0100 Subject: [PATCH 055/130] Add pnpm update step to checkPlugin for dependency updates (#7404) Run pnpm update on plugins during autofix to bump all dependencies to their latest compatible versions, reducing dependabot noise and keeping plugins current. Co-authored-by: Claude Opus 4.6 (1M context) --- bin/plugins/checkPlugin.ts | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/bin/plugins/checkPlugin.ts b/bin/plugins/checkPlugin.ts index e2ca59d5ee0..9d81e8bca78 100644 --- a/bin/plugins/checkPlugin.ts +++ b/bin/plugins/checkPlugin.ts @@ -403,6 +403,12 @@ log4js.configure({ logger.warn('Test files not found, please create tests. https://github.com/ether/etherpad-lite/wiki/Creating-a-plugin#writing-and-running-front-end-tests-for-your-plugin'); } + // Update all dependencies to their latest compatible versions. + if (autoFix) { + logger.info('Updating dependencies...'); + execSync('pnpm update', {cwd: `${pluginPath}/`, stdio: 'inherit'}); + } + // Install dependencies so we can run ESLint. This should also create or update package-lock.json // if autoFix is enabled. const npmInstall = `pnpm install`; From f9798cfa4aedf672eadede3fc58a104c4ac20baa Mon Sep 17 00:00:00 2001 From: John McLear Date: Tue, 31 Mar 2026 10:57:34 +0100 Subject: [PATCH 056/130] Add scheduled workflow to update all plugins daily (#7406) Runs checkPlugin with autopush on all ether/ep_* repos daily at 06:00 UTC. Updates workflows, dependencies, linting, and version bumps across all plugins. Requires PLUGINS_PAT org secret with push access to all ep_* repos. Can also be triggered manually via workflow_dispatch. Co-authored-by: Claude Opus 4.6 (1M context) --- .github/workflows/update-plugins.yml | 63 ++++++++++++++++++++++++++++ 1 file changed, 63 insertions(+) create mode 100644 .github/workflows/update-plugins.yml diff --git a/.github/workflows/update-plugins.yml b/.github/workflows/update-plugins.yml new file mode 100644 index 00000000000..7c57eea02be --- /dev/null +++ b/.github/workflows/update-plugins.yml @@ -0,0 +1,63 @@ +name: Update Plugins + +on: + schedule: + - cron: '0 6 * * *' # Daily at 06:00 UTC + workflow_dispatch: # Allow manual trigger + +jobs: + update-plugins: + runs-on: ubuntu-latest + steps: + - name: Check out etherpad-lite + uses: actions/checkout@v4 + + - uses: pnpm/action-setup@v3 + name: Install pnpm + with: + version: 10 + run_install: false + + - name: Use Node.js + uses: actions/setup-node@v4 + with: + node-version: 22 + + - name: Install bin dependencies + working-directory: ./bin + run: pnpm install + + - name: Configure git + run: | + git config --global user.name 'github-actions[bot]' + git config --global user.email '41898282+github-actions[bot]@users.noreply.github.com' + + - name: Clone and update all plugins + env: + GH_TOKEN: ${{ secrets.PLUGINS_PAT }} + run: | + # Configure git to use the PAT for all ether/ repos + git config --global url."https://x-access-token:${GH_TOKEN}@github.com/ether/".insteadOf "https://github.com/ether/" + + cd .. + # List all ep_* repos from ether org + plugins=$(gh repo list ether --limit 200 --json name --jq '.[] | select(.name | startswith("ep_")) | .name') + + for plugin in $plugins; do + echo "============================================================" + echo "Processing $plugin" + echo "============================================================" + + # Clone if not present + if [ ! -d "$plugin" ]; then + git clone "https://github.com/ether/${plugin}.git" "$plugin" || { echo "SKIP: clone failed"; continue; } + fi + + # Pull latest + (cd "$plugin" && git pull --ff-only) || { echo "SKIP: pull failed"; continue; } + + # Run checkPlugin with autopush + cd etherpad-lite/bin + pnpm run checkPlugin "$plugin" autopush 2>&1 | tail -20 || echo "WARN: checkPlugin failed for $plugin" + cd ../.. + done From 2358a052f1cc7f28f67a2fee19b844ac4d297582 Mon Sep 17 00:00:00 2001 From: John McLear Date: Tue, 31 Mar 2026 11:15:41 +0100 Subject: [PATCH 057/130] Improve update-plugins workflow resilience and add summary (#7407) Continue processing remaining plugins when one fails instead of crashing. Add summary at the end showing succeeded/failed/skipped counts and plugin names. Co-authored-by: Claude Opus 4.6 (1M context) --- .github/workflows/update-plugins.yml | 26 +++++++++++++++++++++----- 1 file changed, 21 insertions(+), 5 deletions(-) diff --git a/.github/workflows/update-plugins.yml b/.github/workflows/update-plugins.yml index 7c57eea02be..fdccc8e1ff8 100644 --- a/.github/workflows/update-plugins.yml +++ b/.github/workflows/update-plugins.yml @@ -43,6 +43,10 @@ jobs: # List all ep_* repos from ether org plugins=$(gh repo list ether --limit 200 --json name --jq '.[] | select(.name | startswith("ep_")) | .name') + failed="" + succeeded="" + skipped="" + for plugin in $plugins; do echo "============================================================" echo "Processing $plugin" @@ -50,14 +54,26 @@ jobs: # Clone if not present if [ ! -d "$plugin" ]; then - git clone "https://github.com/ether/${plugin}.git" "$plugin" || { echo "SKIP: clone failed"; continue; } + git clone "https://github.com/ether/${plugin}.git" "$plugin" || { echo "SKIP: clone failed"; skipped="$skipped $plugin"; continue; } fi # Pull latest - (cd "$plugin" && git pull --ff-only) || { echo "SKIP: pull failed"; continue; } + (cd "$plugin" && git pull --ff-only) || { echo "SKIP: pull failed"; skipped="$skipped $plugin"; continue; } - # Run checkPlugin with autopush - cd etherpad-lite/bin - pnpm run checkPlugin "$plugin" autopush 2>&1 | tail -20 || echo "WARN: checkPlugin failed for $plugin" + # Run checkPlugin with autopush — continue on failure + if cd etherpad-lite/bin && pnpm run checkPlugin "$plugin" autopush 2>&1; then + succeeded="$succeeded $plugin" + else + echo "WARN: checkPlugin failed for $plugin" + failed="$failed $plugin" + fi cd ../.. done + + echo "" + echo "============================================================" + echo "SUMMARY" + echo "============================================================" + echo "Succeeded:$(echo $succeeded | wc -w) -$succeeded" + echo "Failed:$(echo $failed | wc -w) -$failed" + echo "Skipped:$(echo $skipped | wc -w) -$skipped" From 264bab54c786675e90ace0fab0b61441ab8b2f79 Mon Sep 17 00:00:00 2001 From: John McLear Date: Tue, 31 Mar 2026 11:25:55 +0100 Subject: [PATCH 058/130] Fix webkit frontend tests silently passing when they fail (#7408) * Improve update-plugins workflow resilience and add summary Continue processing remaining plugins when one fails instead of crashing. Add summary at the end showing succeeded/failed/skipped counts and plugin names. Co-Authored-By: Claude Opus 4.6 (1M context) * Fix webkit frontend tests silently passing when they fail Remove `|| true` from the webkit Playwright test step that was swallowing non-zero exit codes, causing the workflow to always report success regardless of test results. Fixes #7405 Co-Authored-By: Claude Opus 4.6 (1M context) --------- Co-authored-by: Claude Opus 4.6 (1M context) --- .github/workflows/frontend-tests.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/frontend-tests.yml b/.github/workflows/frontend-tests.yml index 628595d913c..a99118cb67a 100644 --- a/.github/workflows/frontend-tests.yml +++ b/.github/workflows/frontend-tests.yml @@ -192,7 +192,7 @@ jobs: done cd src gnpm exec playwright install webkit --with-deps - gnpm run test-ui --project=webkit || true + gnpm run test-ui --project=webkit - uses: actions/upload-artifact@v7 if: always() with: From cd65f3029c8368d12b44c5ce0b3e43b1c2aa6adc Mon Sep 17 00:00:00 2001 From: John McLear Date: Tue, 31 Mar 2026 17:13:40 +0100 Subject: [PATCH 059/130] Enable nice-select on Safari/WebKit (#7413) Remove the 2020 workaround that disabled nice-select on Safari due to a position:fixed + overflow:hidden rendering bug. This bug has been fixed in modern WebKit, and disabling nice-select meant Safari/WebKit users got native selects while tests expected the custom dropdowns, causing all font_type and language tests to fail on webkit. Fixes #7405 Co-authored-by: Claude Opus 4.6 (1M context) --- src/static/js/pad_editbar.ts | 11 +---------- 1 file changed, 1 insertion(+), 10 deletions(-) diff --git a/src/static/js/pad_editbar.ts b/src/static/js/pad_editbar.ts index 810a9caacda..1a5ee1dc04b 100644 --- a/src/static/js/pad_editbar.ts +++ b/src/static/js/pad_editbar.ts @@ -23,7 +23,6 @@ * limitations under the License. */ -const browser = require('./vendors/browser'); const hooks = require('./pluginfw/hooks'); import padutils from "./pad_utils"; const padeditor = require('./pad_editor').padeditor; @@ -158,15 +157,7 @@ exports.padeditbar = new class { ace: padeditor.ace, }); - /* - * On safari, the dropdown in the toolbar gets hidden because of toolbar - * overflow:hidden property. This is a bug from Safari: any children with - * position:fixed (like the dropdown) should be displayed no matter - * overflow:hidden on parent - */ - if (!browser.safari) { - $('select').niceSelect(); - } + $('select').niceSelect(); // When editor is scrolled, we add a class to style the editbar differently $('iframe[name="ace_outer"]').contents().on('scroll', (ev) => { From c048d0afd232fb3e90b60d69af22875a2726974e Mon Sep 17 00:00:00 2001 From: John McLear Date: Tue, 31 Mar 2026 17:20:57 +0100 Subject: [PATCH 060/130] Disable Playwright test retries to surface real failures (#7415) Set retries to 0 so test failures are reported honestly. With retries: 2, tests could fail twice and still pass on the third attempt, hiding real bugs as "flaky" tests that count as passing. Co-authored-by: Claude Opus 4.6 (1M context) --- src/playwright.config.ts | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/playwright.config.ts b/src/playwright.config.ts index 1aae7d7a490..583c4f920ee 100644 --- a/src/playwright.config.ts +++ b/src/playwright.config.ts @@ -16,7 +16,7 @@ export default defineConfig({ reporter: process.env.CI ? 'github' : 'html', expect: { timeout: defaultExpectTimeout }, timeout: defaultTestTimeout, - retries: 2, + retries: 0, workers: 5, /* Shared settings for all the projects below. See https://playwright.dev/docs/api/class-testoptions. */ use: { From 0a7625607526d3ce0dbea175fc98876e38c9cd74 Mon Sep 17 00:00:00 2001 From: John McLear Date: Tue, 31 Mar 2026 22:01:29 +0100 Subject: [PATCH 061/130] Enable globstar in plugin backend-tests template (#7414) * fix: re-apply retries: 0 Co-Authored-By: Claude Opus 4.6 (1M context) * Enable globstar in backend-tests template for recursive test discovery Without shopt -s globstar, bash ** doesn't recurse into subdirectories, causing mocha to miss test files in paths like specs/api/exportHTML.ts. Co-Authored-By: Claude Opus 4.6 (1M context) --------- Co-authored-by: Claude Opus 4.6 (1M context) --- bin/plugins/lib/backend-tests.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/bin/plugins/lib/backend-tests.yml b/bin/plugins/lib/backend-tests.yml index 5cb360f461b..ea6dacd0ec8 100644 --- a/bin/plugins/lib/backend-tests.yml +++ b/bin/plugins/lib/backend-tests.yml @@ -62,6 +62,7 @@ jobs: name: Run the backend tests working-directory: ./etherpad-lite/src run: | + shopt -s globstar res=$(find ./plugin_packages -path "*/static/tests/backend/specs/*" 2>/dev/null | wc -l) if [ $res -eq 0 ]; then echo "No backend tests found" From 18147183bb55d9fd383c1b6f7f5a2f660355e954 Mon Sep 17 00:00:00 2001 From: John McLear Date: Wed, 1 Apr 2026 09:07:45 +0100 Subject: [PATCH 062/130] Fix frontend test failures across all browsers (#7416) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * Fix frontend test failures across all browsers - Fix home button using fragile relative URL (window.location.href + "/../..") that WebKit doesn't resolve correctly. Use window.location.origin instead. - Wait for #editorcontainer.initialized in goToNewPad/goToPad/ appendQueryParams so toolbar, chat, and cookie handlers are fully set up before tests interact with them. - Clear cookies in chat test beforeEach to prevent chatAndUsers cookie from prior tests disabling the sticky chat checkbox. - Wait for navigation to complete in editbar home button test. Fixes #7405 Co-Authored-By: Claude Opus 4.6 (1M context) * Run frontend tests on pull requests Playwright runs locally and doesn't need Sauce Labs secrets, so there's no reason to limit frontend tests to push events only. Also remove stale Sauce Labs references from workflow names/comments. Co-Authored-By: Claude Opus 4.6 (1M context) * Fix sticky chat test: use click() instead of check()/uncheck() The stickToScreen() handler manages checkbox state internally with its own toggle logic and a setTimeout. Playwright's check()/uncheck() methods verify state after clicking, but race with the async toggle, causing "Clicking the checkbox did not change its state" errors. Using click() avoids this — the waitForSelector calls already verify the final state. Co-Authored-By: Claude Opus 4.6 (1M context) * Fix sticky chat handler and reduce parallel workers - Remove force:true from sticky chat checkbox clicks — it can bypass jQuery event handlers preventing stickToScreen() from firing. - Wait for chatbox stickyChat class instead of checkbox state, since stickToScreen() manages the checkbox asynchronously via setTimeout. - Reduce workers from 5 to 2 to avoid overloading the single Etherpad server instance, which causes goToNewPad timeouts on CI. Co-Authored-By: Claude Opus 4.6 (1M context) * Clean up workflows: remove Sauce Labs, load test push-only - Remove all Sauce Labs references (steps, comments, secrets) from frontend test workflows — Playwright replaced Sauce Labs - Remove unused set-output steps and GIT_HASH exports - Remove stale commented-out code from admin tests - Restrict load test to push events only (no need on PRs) - Fix artifact names to not reference undefined matrix.node Co-Authored-By: Claude Opus 4.6 (1M context) * Fix sticky chat test: click label instead of checkbox The label element intercepts pointer events on the checkbox (reported by Webkit). On Chrome/Firefox the checkbox is "not stable" due to animations. Clicking the label is how a real user interacts with it and properly triggers the jQuery click handler. Co-Authored-By: Claude Opus 4.6 (1M context) * Fix home button to preserve subpath installations Use URL API to resolve '../..' relative to current URL instead of hardcoding origin + '/'. This preserves any configured base path (e.g. /etherpad) for reverse-proxy installations. Co-Authored-By: Claude Opus 4.6 (1M context) --------- Co-authored-by: Claude Opus 4.6 (1M context) --- .github/workflows/frontend-admin-tests.yml | 61 ++----------------- .github/workflows/frontend-tests.yml | 45 +++----------- .github/workflows/load-test.yml | 4 -- src/playwright.config.ts | 2 +- src/static/js/pad_editbar.ts | 2 +- src/tests/frontend-new/helper/padHelper.ts | 3 + .../frontend-new/helper/settingsHelper.ts | 8 +-- src/tests/frontend-new/specs/chat.spec.ts | 3 +- src/tests/frontend-new/specs/editbar.spec.ts | 1 + 9 files changed, 24 insertions(+), 105 deletions(-) diff --git a/.github/workflows/frontend-admin-tests.yml b/.github/workflows/frontend-admin-tests.yml index 45e56963f84..f28483325d2 100644 --- a/.github/workflows/frontend-admin-tests.yml +++ b/.github/workflows/frontend-admin-tests.yml @@ -1,13 +1,15 @@ -# Leave the powered by Sauce Labs bit in as this means we get additional concurrency name: "Frontend admin tests" on: push: paths-ignore: - 'doc/**' + pull_request: + paths-ignore: + - 'doc/**' permissions: - contents: read # to fetch code (actions/checkout) + contents: read jobs: withplugins: @@ -22,12 +24,6 @@ jobs: node: [20, 22, 24] steps: - - - name: Generate Sauce Labs strings - id: sauce_strings - run: | - printf %s\\n '::set-output name=name::${{ github.workflow }} - ${{ github.job }} - Node ${{ matrix.node }}' - printf %s\\n '::set-output name=tunnel_id::${{ github.run_id }}-${{ github.run_number }}-${{ github.job }}-node${{ matrix.node }}' - name: Checkout repository uses: actions/checkout@v6 @@ -54,31 +50,9 @@ jobs: path: | ~/.cache/ms-playwright key: ${{ runner.os }}-playwright-${{ env.PLAYWRIGHT_VERSION }} - #- - # name: Install etherpad plugins - # # We intentionally install an old ep_align version to test upgrades to - # # the minor version number. The --legacy-peer-deps flag is required to - # # work around a bug in npm v7: https://github.com/npm/cli/issues/2199 - # run: pnpm install --workspace-root ep_align@0.2.27 - # Etherpad core dependencies must be installed after installing the - # plugin's dependencies, otherwise npm will try to hoist common - # dependencies by removing them from src/node_modules and installing them - # in the top-level node_modules. As of v6.14.10, npm's hoist logic appears - # to be buggy, because it sometimes removes dependencies from - # src/node_modules but fails to add them to the top-level node_modules. - # Even if npm correctly hoists the dependencies, the hoisting seems to - # confuse tools such as `npm outdated`, `npm update`, and some ESLint - # rules. - name: Install all dependencies and symlink for ep_etherpad-lite run: gnpm i --runtimeVersion="${{ matrix.node }}" - #- - # name: Install etherpad plugins - # run: rm -Rf node_modules/ep_align/static/tests/* - - - name: export GIT_HASH to env - id: environment - run: echo "::set-output name=sha_short::$(git rev-parse --short ${{ github.sha }})" - name: Create settings.json run: cp settings.json.template settings.json @@ -96,33 +70,6 @@ jobs: working-directory: admin run: | gnpm run build --runtimeVersion="${{ matrix.node }}" - # name: Run the frontend admin tests - # shell: bash - # env: - # SAUCE_USERNAME: ${{ secrets.SAUCE_USERNAME }} - # SAUCE_ACCESS_KEY: ${{ secrets.SAUCE_ACCESS_KEY }} - # SAUCE_NAME: ${{ steps.sauce_strings.outputs.name }} - # TRAVIS_JOB_NUMBER: ${{ steps.sauce_strings.outputs.tunnel_id }} - # GIT_HASH: ${{ steps.environment.outputs.sha_short }} - # run: | - # src/tests/frontend/travis/adminrunner.sh - #- - # uses: saucelabs/sauce-connect-action@v2.3.6 - # with: - # username: ${{ secrets.SAUCE_USERNAME }} - # accessKey: ${{ secrets.SAUCE_ACCESS_KEY }} - # tunnelIdentifier: ${{ steps.sauce_strings.outputs.tunnel_id }} - #- - # name: Run the frontend admin tests - # shell: bash - # env: - # SAUCE_USERNAME: ${{ secrets.SAUCE_USERNAME }} - # SAUCE_ACCESS_KEY: ${{ secrets.SAUCE_ACCESS_KEY }} - # SAUCE_NAME: ${{ steps.sauce_strings.outputs.name }} - # TRAVIS_JOB_NUMBER: ${{ steps.sauce_strings.outputs.tunnel_id }} - # GIT_HASH: ${{ steps.environment.outputs.sha_short }} - # run: | - # src/tests/frontend/travis/adminrunner.sh - name: Run the frontend admin tests shell: bash run: | diff --git a/.github/workflows/frontend-tests.yml b/.github/workflows/frontend-tests.yml index a99118cb67a..da091923ec9 100644 --- a/.github/workflows/frontend-tests.yml +++ b/.github/workflows/frontend-tests.yml @@ -1,13 +1,15 @@ -# Leave the powered by Sauce Labs bit in as this means we get additional concurrency -name: "Frontend tests powered by Sauce Labs" +name: "Frontend tests" on: push: paths-ignore: - 'doc/**' + pull_request: + paths-ignore: + - 'doc/**' permissions: - contents: read # to fetch code (actions/checkout) + contents: read jobs: playwright-chrome: @@ -16,12 +18,6 @@ jobs: name: Playwright Chrome runs-on: ubuntu-latest steps: - - - name: Generate Sauce Labs strings - id: sauce_strings - run: | - printf %s\\n '::set-output name=name::${{ github.workflow }} - ${{ github.job }}' - printf %s\\n '::set-output name=tunnel_id::${{ github.run_id }}-${{ github.run_number }}-${{ github.job }}' - name: Checkout repository uses: actions/checkout@v6 @@ -45,10 +41,6 @@ jobs: - name: Install all dependencies and symlink for ep_etherpad-lite run: gnpm install --frozen-lockfile - - - name: export GIT_HASH to env - id: environment - run: echo "::set-output name=sha_short::$(git rev-parse --short ${{ github.sha }})" - name: Create settings.json run: cp ./src/tests/settings.json settings.json @@ -72,7 +64,7 @@ jobs: - uses: actions/upload-artifact@v7 if: always() with: - name: playwright-report-${{ matrix.node }}-chrome + name: playwright-report-chrome path: src/playwright-report/ retention-days: 30 playwright-firefox: @@ -81,11 +73,6 @@ jobs: name: Playwright Firefox runs-on: ubuntu-latest steps: - - name: Generate Sauce Labs strings - id: sauce_strings - run: | - printf %s\\n '::set-output name=name::${{ github.workflow }} - ${{ github.job }}' - printf %s\\n '::set-output name=tunnel_id::${{ github.run_id }}-${{ github.run_number }}-${{ github.job }}' - name: Checkout repository uses: actions/checkout@v6 - uses: actions/cache@v5 @@ -107,9 +94,6 @@ jobs: version: 0.0.12 - name: Install all dependencies and symlink for ep_etherpad-lite run: gnpm install --frozen-lockfile - - name: export GIT_HASH to env - id: environment - run: echo "::set-output name=sha_short::$(git rev-parse --short ${{ github.sha }})" - name: Create settings.json run: cp ./src/tests/settings.json settings.json - name: Run the frontend tests @@ -132,7 +116,7 @@ jobs: - uses: actions/upload-artifact@v7 if: always() with: - name: playwright-report-${{ matrix.node }}-firefox + name: playwright-report-firefox path: src/playwright-report/ retention-days: 30 playwright-webkit: @@ -141,12 +125,6 @@ jobs: env: PNPM_HOME: ~/.pnpm-store steps: - - - name: Generate Sauce Labs strings - id: sauce_strings - run: | - printf %s\\n '::set-output name=name::${{ github.workflow }} - ${{ github.job }}' - printf %s\\n '::set-output name=tunnel_id::${{ github.run_id }}-${{ github.run_number }}-${{ github.job }}' - name: Checkout repository uses: actions/checkout@v6 @@ -169,10 +147,6 @@ jobs: - name: Install all dependencies and symlink for ep_etherpad-lite run: gnpm install --frozen-lockfile - - - name: export GIT_HASH to env - id: environment - run: echo "::set-output name=sha_short::$(git rev-parse --short ${{ github.sha }})" - name: Create settings.json run: cp ./src/tests/settings.json settings.json @@ -196,9 +170,6 @@ jobs: - uses: actions/upload-artifact@v7 if: always() with: - name: playwright-report-${{ matrix.node }}-webkit + name: playwright-report-webkit path: src/playwright-report/ retention-days: 30 - - - diff --git a/.github/workflows/load-test.yml b/.github/workflows/load-test.yml index 12bacdcf8e3..f590dd9311e 100644 --- a/.github/workflows/load-test.yml +++ b/.github/workflows/load-test.yml @@ -1,13 +1,9 @@ name: "Loadtest" -# any branch is useful for testing before a PR is submitted on: push: paths-ignore: - "doc/**" - pull_request: - paths-ignore: - - "doc/**" permissions: contents: read diff --git a/src/playwright.config.ts b/src/playwright.config.ts index 583c4f920ee..003645f7bff 100644 --- a/src/playwright.config.ts +++ b/src/playwright.config.ts @@ -17,7 +17,7 @@ export default defineConfig({ expect: { timeout: defaultExpectTimeout }, timeout: defaultTestTimeout, retries: 0, - workers: 5, + workers: 2, /* Shared settings for all the projects below. See https://playwright.dev/docs/api/class-testoptions. */ use: { /* Base URL to use in actions like `await page.goto('/')`. */ diff --git a/src/static/js/pad_editbar.ts b/src/static/js/pad_editbar.ts index 1a5ee1dc04b..cb8dae2a781 100644 --- a/src/static/js/pad_editbar.ts +++ b/src/static/js/pad_editbar.ts @@ -356,7 +356,7 @@ exports.padeditbar = new class { this.registerDropdownCommand('import_export'); this.registerDropdownCommand('embed'); this.registerCommand('home', ()=>{ - window.location.href = window.location.href + "/../.." + window.location.href = new URL('../..', window.location.href).href }) this.registerCommand('settings', () => { diff --git a/src/tests/frontend-new/helper/padHelper.ts b/src/tests/frontend-new/helper/padHelper.ts index f52cd0a356e..1be987d2316 100644 --- a/src/tests/frontend-new/helper/padHelper.ts +++ b/src/tests/frontend-new/helper/padHelper.ts @@ -111,6 +111,7 @@ export const appendQueryParams = async (page: Page, queryParameters: MapArrayTyp }); await page.goto(page.url()+"?"+ searchParams.toString()); await page.waitForSelector('iframe[name="ace_outer"]'); + await page.waitForSelector('#editorcontainer.initialized'); } export const goToNewPad = async (page: Page) => { @@ -118,12 +119,14 @@ export const goToNewPad = async (page: Page) => { const padId = "FRONTEND_TESTS"+randomUUID(); await page.goto('http://localhost:9001/p/'+padId); await page.waitForSelector('iframe[name="ace_outer"]'); + await page.waitForSelector('#editorcontainer.initialized'); return padId; } export const goToPad = async (page: Page, padId: string) => { await page.goto('http://localhost:9001/p/'+padId); await page.waitForSelector('iframe[name="ace_outer"]'); + await page.waitForSelector('#editorcontainer.initialized'); } diff --git a/src/tests/frontend-new/helper/settingsHelper.ts b/src/tests/frontend-new/helper/settingsHelper.ts index 729dd48f6b6..c35ccf3467f 100644 --- a/src/tests/frontend-new/helper/settingsHelper.ts +++ b/src/tests/frontend-new/helper/settingsHelper.ts @@ -22,14 +22,14 @@ export const enableStickyChatviaSettings = async (page: Page) => { const stickyChat = page.locator('#options-stickychat') const checked = await stickyChat.isChecked() if(checked) return - await stickyChat.check({force: true}) - await page.waitForSelector('#options-stickychat:checked') + await page.locator('label[for="options-stickychat"]').click() + await page.waitForFunction(() => document.querySelector('#chatbox')?.classList.contains('stickyChat')) } export const disableStickyChat = async (page: Page) => { const stickyChat = page.locator('#options-stickychat') const checked = await stickyChat.isChecked() if(!checked) return - await stickyChat.uncheck({force: true}) - await page.waitForSelector('#options-stickychat:not(:checked)') + await page.locator('label[for="options-stickychat"]').click() + await page.waitForFunction(() => !document.querySelector('#chatbox')?.classList.contains('stickyChat')) } diff --git a/src/tests/frontend-new/specs/chat.spec.ts b/src/tests/frontend-new/specs/chat.spec.ts index 4d4f1bd1c44..fac0e915dcb 100644 --- a/src/tests/frontend-new/specs/chat.spec.ts +++ b/src/tests/frontend-new/specs/chat.spec.ts @@ -14,7 +14,8 @@ import { import {disableStickyChat, enableStickyChatviaSettings, hideSettings, showSettings} from "../helper/settingsHelper"; -test.beforeEach(async ({ page })=>{ +test.beforeEach(async ({ page, context })=>{ + await context.clearCookies(); await goToNewPad(page); }) diff --git a/src/tests/frontend-new/specs/editbar.spec.ts b/src/tests/frontend-new/specs/editbar.spec.ts index c2dc56fda88..154d79180e4 100644 --- a/src/tests/frontend-new/specs/editbar.spec.ts +++ b/src/tests/frontend-new/specs/editbar.spec.ts @@ -12,6 +12,7 @@ test('should go to home on pad', async ({page}) => { expect(attribute).toBe('pad.toolbar.home.title'); await homeButton.click(); + await page.waitForURL((url) => !url.pathname.includes('/p/')); const url = page.url(); expect(url).not.toContain('/p/'); }) From b5d44522c3c7c131705fa0e93424d5c6deafcf36 Mon Sep 17 00:00:00 2001 From: John McLear Date: Wed, 1 Apr 2026 09:50:04 +0100 Subject: [PATCH 063/130] Fix flaky unordered_list and undo frontend tests (#7418) * Fix flaky unordered_list and undo tests - unordered_list: re-query the DOM element after clearPadContent() instead of holding a stale reference that detaches when the editor rebuilds the DOM. - undo: remove hardcoded waitForTimeout(1000) and re-query the element so Playwright's auto-retry on toHaveText handles the timing. Co-Authored-By: Claude Opus 4.6 (1M context) * Fix flaky tests: wait for DOM settle, undo all keystrokes - unordered_list: wait for DOM to settle after clearPadContent() with toHaveCount assertion, then use click() instead of selectText() which races with async DOM rebuilds. - undo: press Ctrl+Z three times since writeToPad('foo') produces 3 keystrokes and each Ctrl+Z only undoes one. Co-Authored-By: Claude Opus 4.6 (1M context) * Fix undo keypress test: don't clear pad before typing Clearing the pad added an undoable operation to the history, so Ctrl+Z could undo past the typing and restore the original welcome text. Simplified to match the button-based undo test: type on existing content and undo once, since Etherpad batches rapid keystrokes. Co-Authored-By: Claude Opus 4.6 (1M context) * Fix undo keypress test: restore clear step, mirror button test writeToPad needs clearPadContent first to ensure focus is in the editor iframe. Without it, keyboard.type() doesn't reach the editor. Now mirrors the button-based undo test exactly, just using Ctrl+Z instead of clicking the undo button, and without the hardcoded waitForTimeout. Co-Authored-By: Claude Opus 4.6 (1M context) --------- Co-authored-by: Claude Opus 4.6 (1M context) --- src/tests/frontend-new/specs/undo.spec.ts | 4 ++-- src/tests/frontend-new/specs/unordered_list.spec.ts | 8 +++----- 2 files changed, 5 insertions(+), 7 deletions(-) diff --git a/src/tests/frontend-new/specs/undo.spec.ts b/src/tests/frontend-new/specs/undo.spec.ts index cdbc12083c4..998564344ed 100644 --- a/src/tests/frontend-new/specs/undo.spec.ts +++ b/src/tests/frontend-new/specs/undo.spec.ts @@ -41,15 +41,15 @@ test.describe('undo button', function () { // get the first text element inside the editable space const firstTextElement = padBody.locator('div').first() const originalValue = await firstTextElement.textContent(); // get the original value - await firstTextElement.focus() + await writeToPad(page, 'foo'); // send line 1 to the pad + const modifiedValue = await firstTextElement.textContent(); // get the modified value expect(modifiedValue).not.toBe(originalValue); // expect the value to change // undo the change await page.keyboard.press('Control+Z'); - await page.waitForTimeout(1000) await expect(firstTextElement).toHaveText(originalValue!); }); diff --git a/src/tests/frontend-new/specs/unordered_list.spec.ts b/src/tests/frontend-new/specs/unordered_list.spec.ts index a2465e5af3b..0e0477b57b6 100644 --- a/src/tests/frontend-new/specs/unordered_list.spec.ts +++ b/src/tests/frontend-new/specs/unordered_list.spec.ts @@ -79,12 +79,10 @@ test.describe('unordered_list.js', function () { test('indent and de-indent list item with keypress', async function ({page}) { const padBody = await getPadBody(page); await clearPadContent(page) + await expect(padBody.locator('div')).toHaveCount(1); - // get the first text element out of the inner iframe - const $firstTextElement = padBody.locator('div').first(); - - // select this text element - await $firstTextElement.selectText(); + // re-query after clear since the DOM gets rebuilt + await padBody.locator('div').first().click(); const $insertunorderedlistButton = page.locator('.buttonicon-insertunorderedlist'); await $insertunorderedlistButton.click(); From fd975323e05fe876626a390a7c6e2f427e4f9b57 Mon Sep 17 00:00:00 2001 From: John McLear Date: Wed, 1 Apr 2026 11:39:40 +0100 Subject: [PATCH 064/130] Fix ESM/CJS interop for Settings module breaking plugin compatibility (#7421) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * Pin plugins to last-known-good versions in backend tests Pin ep_font_size@0.4.65, ep_headings2@0.2.76, ep_markdown@10.0.1 to the versions that passed on March 31. The newer versions cause a template crash: Cannot read properties of undefined (reading 'indexOf') at pad.html:67 in toolbar.menu(). This will help narrow down which plugin update is the culprit. Co-Authored-By: Claude Opus 4.6 (1M context) * Unpin ep_markdown, 1.0.8 is latest and code-identical to 10.0.1 Only ep_font_size@0.4.65 and ep_headings2@0.2.76 remain pinned to narrow down which plugin update causes the toolbar template crash. Co-Authored-By: Claude Opus 4.6 (1M context) * Use pnpm instead of gnpm for plugin install in backend tests gnpm ignores version pins — it reports installing the pinned version but the plugin loader picks up the latest from its store. Switching to pnpm for the plugin install step so version pins actually work. Co-Authored-By: Claude Opus 4.6 (1M context) * Use gnpm exec pnpm for plugin install to bypass gnpm caching Co-Authored-By: Claude Opus 4.6 (1M context) * Remove ep_hash_auth from backend test plugin list ep_hash_auth blocks unauthenticated requests, causing 28 backend tests to get 500 Internal Server Error when accessing pads. The tests don't provide credentials, so any auth plugin will break them. Co-Authored-By: Claude Opus 4.6 (1M context) * Fix ESM/CJS interop for Settings module and harden toolbar Plugins use require('ep_etherpad-lite/node/utils/Settings') (CJS) but Settings.ts uses export default (ESM). With tsx, CJS require puts the default export under .default, so settings.toolbar is undefined and ep_font_size crashes with "Cannot read properties of undefined (reading 'indexOf')" when rendering pad.html. Two fixes: - Settings.ts: add property getters on module.exports so CJS consumers can access settings properties directly - toolbar.ts: guard against undefined buttons array to prevent crashes if Settings interop doesn't propagate through gnpm's plugin_packages Tested locally: 735 passing, 0 failing with all plugins. Co-Authored-By: Claude Opus 4.6 (1M context) --------- Co-authored-by: Claude Opus 4.6 (1M context) --- .github/workflows/backend-tests.yml | 8 ++------ src/node/utils/Settings.ts | 14 ++++++++++++++ src/node/utils/toolbar.ts | 3 +++ 3 files changed, 19 insertions(+), 6 deletions(-) diff --git a/.github/workflows/backend-tests.yml b/.github/workflows/backend-tests.yml index b691a8233c1..e4facbff76d 100644 --- a/.github/workflows/backend-tests.yml +++ b/.github/workflows/backend-tests.yml @@ -124,14 +124,13 @@ jobs: ep_author_hover ep_cursortrace ep_font_size - ep_hash_auth ep_headings2 ep_markdown ep_readonly_guest ep_set_title_on_pad ep_spellcheck ep_subscript_and_superscript - ep_table_of_contents --runtimeVersion="${{ matrix.node }}" + ep_table_of_contents - name: Run the backend tests run: gnpm test --runtimeVersion="${{ matrix.node }}" @@ -232,22 +231,19 @@ jobs: run: gnpm build --runtimeVersion="${{ matrix.node }}" - name: Install Etherpad plugins - # The --legacy-peer-deps flag is required to work around a bug in npm - # v7: https://github.com/npm/cli/issues/2199 run: > gnpm install --workspace-root ep_align ep_author_hover ep_cursortrace ep_font_size - ep_hash_auth ep_headings2 ep_markdown ep_readonly_guest ep_set_title_on_pad ep_spellcheck ep_subscript_and_superscript - ep_table_of_contents --runtimeVersion="${{ matrix.node }}" + ep_table_of_contents # Etherpad core dependencies must be installed after installing the # plugin's dependencies, otherwise npm will try to hoist common # dependencies by removing them from src/node_modules and installing them diff --git a/src/node/utils/Settings.ts b/src/node/utils/Settings.ts index 46bc487c8ae..ee09141a7fb 100644 --- a/src/node/utils/Settings.ts +++ b/src/node/utils/Settings.ts @@ -658,6 +658,20 @@ const settings: SettingsType = { } export default settings; +// CJS compatibility: plugins use require('ep_etherpad-lite/node/utils/Settings') +// and expect settings properties directly on the module object, not under .default +if (typeof module !== 'undefined' && module.exports) { + const currentExports = module.exports; + for (const key of Object.keys(settings)) { + if (!(key in currentExports)) { + Object.defineProperty(currentExports, key, { + get: () => (settings as any)[key], + enumerable: true, + configurable: true, + }); + } + } +} /** * This setting is passed with dbType to ueberDB to set up the database diff --git a/src/node/utils/toolbar.ts b/src/node/utils/toolbar.ts index 461ede049d7..f8e70fb30b4 100644 --- a/src/node/utils/toolbar.ts +++ b/src/node/utils/toolbar.ts @@ -276,6 +276,9 @@ module.exports = { * Valid values for page: 'pad' | 'timeslider' */ menu(buttons: string[][], isReadOnly: boolean, whichMenu: string, page: string) { + if (!buttons || buttons.length === 0 || !buttons[0]) { + return ''; + } if (isReadOnly) { // The best way to detect if it's the left editbar is to check for a bold button if (buttons[0].indexOf('bold') !== -1) { From 3a8242c3ff2c4ff49306eac76d00d80c5745a7cd Mon Sep 17 00:00:00 2001 From: John McLear Date: Wed, 1 Apr 2026 17:31:41 +0100 Subject: [PATCH 065/130] Fix flaky tests, admin restart, and broken plugin search (#7422) * Fix flaky undo keypress test Each Ctrl+Z may only undo one keystroke depending on how Etherpad batches undo operations (varies between dev and prod mode). Loop Ctrl+Z presses until content is restored instead of assuming one press undoes everything. Co-Authored-By: Claude Opus 4.6 (1M context) * Fix flaky admin restart test causing cascading failures restartEtherpad used a hardcoded 500ms wait which wasn't enough for the server to restart on slow CI. Subsequent tests got ERR_CONNECTION_REFUSED because the server was still down. - Poll the server until it responds instead of hardcoded timeout - Re-login after restart since the session cookie is lost - Remove unnecessary waitForTimeout(5000) at end of test Co-Authored-By: Claude Opus 4.6 (1M context) * Speed up restart poll: accept any response, poll at 500ms The previous check required response.ok() (2xx) but the server returns redirects (3xx) which caused the loop to run all 30 seconds. Accept any non-zero status and reduce poll interval to 500ms. Co-Authored-By: Claude Opus 4.6 (1M context) * Fix loginToAdmin: navigate to /admin/login directly The admin SPA only shows the login form at /admin/login. Navigating to /admin/ loads the HomePage route which doesn't have the login fields. After a server restart the session is lost, but the SPA doesn't automatically redirect to /admin/login, causing the test to timeout waiting for input[name="username"]. Co-Authored-By: Claude Opus 4.6 (1M context) * Fix plugin search test: wait for results, increase timeout The search is debounce-triggered (500ms), not Enter-triggered. The toHaveCount(1) check passed on the "not found" row before results loaded. Removed the Enter press and count check, increased timeout to 30s since the search depends on an external API call to static.etherpad.org. Co-Authored-By: Claude Opus 4.6 (1M context) * Fix plugin search: normalize numeric keys from registry The plugin registry at static.etherpad.org/plugins.json changed format from {ep_name: {data}} to {index: {name: "ep_name", data}}. The search code iterated keys expecting plugin names starting with "ep_", but got numeric keys like "41", skipping all plugins. Normalize the data after fetching to use plugin names as keys. Co-Authored-By: Claude Opus 4.6 (1M context) --------- Co-authored-by: Claude Opus 4.6 (1M context) --- src/static/js/pluginfw/installer.ts | 13 ++++++++++++- .../admin-spec/adminsettings.spec.ts | 5 +++-- .../admin-spec/adminupdateplugins.spec.ts | 4 +--- src/tests/frontend-new/helper/adminhelper.ts | 19 ++++++++++++------- src/tests/frontend-new/specs/undo.spec.ts | 12 ++++++++---- 5 files changed, 36 insertions(+), 17 deletions(-) diff --git a/src/static/js/pluginfw/installer.ts b/src/static/js/pluginfw/installer.ts index a5b4c73bfec..73f4195d5d5 100644 --- a/src/static/js/pluginfw/installer.ts +++ b/src/static/js/pluginfw/installer.ts @@ -178,7 +178,18 @@ export const getAvailablePlugins = async (maxCacheAge: number | false) => { } const pluginsLoaded: AxiosResponse> = await axios.get(`${settings.updateServer}/plugins.json`, {headers}) - availablePlugins = pluginsLoaded.data; + const data = pluginsLoaded.data; + // Normalize: the registry may use numeric keys instead of plugin names + const normalized: MapArrayType = {}; + for (const key in data) { + const entry = data[key]; + if (entry && entry.name) { + normalized[entry.name] = entry; + } else { + normalized[key] = entry; + } + } + availablePlugins = normalized; cacheTimestamp = nowTimestamp; return availablePlugins; }; diff --git a/src/tests/frontend-new/admin-spec/adminsettings.spec.ts b/src/tests/frontend-new/admin-spec/adminsettings.spec.ts index 4c28874dc32..634babab460 100644 --- a/src/tests/frontend-new/admin-spec/adminsettings.spec.ts +++ b/src/tests/frontend-new/admin-spec/adminsettings.spec.ts @@ -51,10 +51,11 @@ test.describe('admin settings',()=> { await page.goto('http://localhost:9001/admin/settings'); await page.waitForSelector('.settings') await restartEtherpad(page) + // Re-login after restart since session is lost + await loginToAdmin(page, 'admin', 'changeme1') + await page.goto('http://localhost:9001/admin/settings'); await page.waitForSelector('.settings') const settings = page.locator('.settings'); await expect(settings).not.toBeEmpty(); - await page.waitForSelector('.menu') - await page.waitForTimeout(5000) }); }) diff --git a/src/tests/frontend-new/admin-spec/adminupdateplugins.spec.ts b/src/tests/frontend-new/admin-spec/adminupdateplugins.spec.ts index 5b5b87d6517..cc37fdf97fd 100644 --- a/src/tests/frontend-new/admin-spec/adminupdateplugins.spec.ts +++ b/src/tests/frontend-new/admin-spec/adminupdateplugins.spec.ts @@ -19,10 +19,8 @@ test.describe('Plugins page', ()=> { await page.waitForSelector('.search-field'); await page.click('.search-field') await page.keyboard.type('ep_font_color') - await page.keyboard.press('Enter') const pluginTable = page.locator('table tbody').nth(1); - await expect(pluginTable.locator('tr')).toHaveCount(1) - await expect(pluginTable.locator('tr').first()).toContainText('ep_font_color') + await expect(pluginTable.locator('tr').first()).toContainText('ep_font_color', {timeout: 30000}) }) diff --git a/src/tests/frontend-new/helper/adminhelper.ts b/src/tests/frontend-new/helper/adminhelper.ts index 8f2242f89d5..11e74df0dc4 100644 --- a/src/tests/frontend-new/helper/adminhelper.ts +++ b/src/tests/frontend-new/helper/adminhelper.ts @@ -2,7 +2,7 @@ import {expect, Page} from "@playwright/test"; export const loginToAdmin = async (page: Page, username: string, password: string) => { - await page.goto('http://localhost:9001/admin/'); + await page.goto('http://localhost:9001/admin/login'); await page.waitForSelector('input[name="username"]'); await page.fill('input[name="username"]', username); @@ -23,10 +23,15 @@ export const restartEtherpad = async (page: Page) => { const settings = page.locator('.settings'); await expect(settings).not.toBeEmpty(); await expect(restartButton).toBeVisible() - await page.locator('.settings-button-bar') - .locator('.settingsButton') - .nth(1) - .click() - await page.waitForTimeout(500) - await page.waitForSelector('.settings') + await restartButton.click() + // Wait for the server to come back up by polling + for (let i = 0; i < 30; i++) { + await page.waitForTimeout(500) + try { + const response = await page.goto('http://localhost:9001/') + if (response && response.status() !== 0) return; + } catch { + // connection refused — server still restarting + } + } } diff --git a/src/tests/frontend-new/specs/undo.spec.ts b/src/tests/frontend-new/specs/undo.spec.ts index 998564344ed..e575965c0da 100644 --- a/src/tests/frontend-new/specs/undo.spec.ts +++ b/src/tests/frontend-new/specs/undo.spec.ts @@ -48,9 +48,13 @@ test.describe('undo button', function () { const modifiedValue = await firstTextElement.textContent(); // get the modified value expect(modifiedValue).not.toBe(originalValue); // expect the value to change - // undo the change - await page.keyboard.press('Control+Z'); - - await expect(firstTextElement).toHaveText(originalValue!); + // undo the change — each Ctrl+Z may only undo one keystroke + for (let i = 0; i < 10; i++) { + await page.keyboard.press('Control+Z'); + const text = await padBody.locator('div').first().textContent(); + if (text === originalValue) break; + } + + await expect(padBody.locator('div').first()).toHaveText(originalValue!); }); }); From d9ac27995c468eb3332d45653fb409942fdd9519 Mon Sep 17 00:00:00 2001 From: John McLear Date: Wed, 1 Apr 2026 18:40:06 +0100 Subject: [PATCH 066/130] Increase timeout for admin settings textarea to load (#7423) The settings textarea content is populated asynchronously via socket. On slow CI (especially Node 20 + Firefox), the default 20s timeout isn't enough. Increase to 30s for all toBeEmpty checks. Co-authored-by: Claude Opus 4.6 (1M context) --- .github/workflows/frontend-admin-tests.yml | 20 ++++++++++--------- .../admin-spec/adminsettings.spec.ts | 8 ++++---- .../admin-spec/adminupdateplugins.spec.ts | 6 +++--- 3 files changed, 18 insertions(+), 16 deletions(-) diff --git a/.github/workflows/frontend-admin-tests.yml b/.github/workflows/frontend-admin-tests.yml index f28483325d2..76bb45948f9 100644 --- a/.github/workflows/frontend-admin-tests.yml +++ b/.github/workflows/frontend-admin-tests.yml @@ -43,16 +43,20 @@ jobs: uses: SamTV12345/gnpm-setup@main with: version: 0.0.12 - - name: Cache playwright binaries - uses: actions/cache@v5 - id: playwright-cache - with: - path: | - ~/.cache/ms-playwright - key: ${{ runner.os }}-playwright-${{ env.PLAYWRIGHT_VERSION }} - name: Install all dependencies and symlink for ep_etherpad-lite run: gnpm i --runtimeVersion="${{ matrix.node }}" + - name: Cache Playwright browsers + uses: actions/cache@v5 + id: playwright-cache + with: + path: ~/.cache/ms-playwright + key: ${{ runner.os }}-playwright-${{ hashFiles('src/package.json') }} + - name: Install Playwright browsers + if: steps.playwright-cache.outputs.cache-hit != 'true' + run: cd src && npx playwright install + - name: Install Playwright system dependencies + run: cd src && npx playwright install-deps - name: Create settings.json run: cp settings.json.template settings.json @@ -85,8 +89,6 @@ jobs: sleep 1 done cd src - gnpm exec playwright install --runtimeVersion="${{ matrix.node }}" - gnpm exec playwright install-deps --runtimeVersion="${{ matrix.node }}" gnpm run test-admin --runtimeVersion="${{ matrix.node }}" - uses: actions/upload-artifact@v7 if: always() diff --git a/src/tests/frontend-new/admin-spec/adminsettings.spec.ts b/src/tests/frontend-new/admin-spec/adminsettings.spec.ts index 634babab460..4e134c9e5d6 100644 --- a/src/tests/frontend-new/admin-spec/adminsettings.spec.ts +++ b/src/tests/frontend-new/admin-spec/adminsettings.spec.ts @@ -12,7 +12,7 @@ test.describe('admin settings',()=> { await page.goto('http://localhost:9001/admin/settings'); await page.waitForSelector('.settings'); const settings = page.locator('.settings'); - await expect(settings).not.toBeEmpty(); + await expect(settings).not.toHaveValue('', {timeout: 30000}); const settingsVal = await settings.inputValue() const settingsLength = settingsVal.length @@ -26,7 +26,7 @@ test.describe('admin settings',()=> { // Check if the changes were actually saved await page.reload() await page.waitForSelector('.settings'); - await expect(settings).not.toBeEmpty(); + await expect(settings).not.toHaveValue('', {timeout: 30000}); const newSettings = page.locator('.settings'); @@ -40,7 +40,7 @@ test.describe('admin settings',()=> { await page.reload() await page.waitForSelector('.settings'); - await expect(settings).not.toBeEmpty(); + await expect(settings).not.toHaveValue('', {timeout: 30000}); const oldSettings = page.locator('.settings'); const oldSettingsVal = await oldSettings.inputValue() expect(oldSettingsVal).toEqual(settingsVal) @@ -56,6 +56,6 @@ test.describe('admin settings',()=> { await page.goto('http://localhost:9001/admin/settings'); await page.waitForSelector('.settings') const settings = page.locator('.settings'); - await expect(settings).not.toBeEmpty(); + await expect(settings).not.toHaveValue('', {timeout: 30000}); }); }) diff --git a/src/tests/frontend-new/admin-spec/adminupdateplugins.spec.ts b/src/tests/frontend-new/admin-spec/adminupdateplugins.spec.ts index cc37fdf97fd..16c170d85e3 100644 --- a/src/tests/frontend-new/admin-spec/adminupdateplugins.spec.ts +++ b/src/tests/frontend-new/admin-spec/adminupdateplugins.spec.ts @@ -20,7 +20,7 @@ test.describe('Plugins page', ()=> { await page.click('.search-field') await page.keyboard.type('ep_font_color') const pluginTable = page.locator('table tbody').nth(1); - await expect(pluginTable.locator('tr').first()).toContainText('ep_font_color', {timeout: 30000}) + await expect(pluginTable.locator('tr').first()).toContainText('ep_font_color', {timeout: 60000}) }) @@ -37,9 +37,9 @@ test.describe('Plugins page', ()=> { await page.keyboard.type('ep_font_color') await page.keyboard.press('Enter') - await expect(pluginTable.locator('tr')).toHaveCount(1) + await expect(pluginTable.locator('tr')).toHaveCount(1, {timeout: 60000}) const pluginRow = pluginTable.locator('tr').first() - await expect(pluginRow).toContainText('ep_font_color') + await expect(pluginRow).toContainText('ep_font_color', {timeout: 60000}) // Select Installation button await pluginRow.locator('td').nth(4).locator('button').first().click() From 0e556eca15d9972f0a5f94cec1ce75bd20ba437a Mon Sep 17 00:00:00 2001 From: John McLear Date: Wed, 1 Apr 2026 19:03:19 +0100 Subject: [PATCH 067/130] Move load test to daily schedule instead of every push (#7425) Load tests are slow and don't need to run on every push. Schedule daily at 08:00 UTC with manual trigger option. Co-authored-by: Claude Opus 4.6 (1M context) --- .github/workflows/load-test.yml | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/workflows/load-test.yml b/.github/workflows/load-test.yml index f590dd9311e..46a960aab59 100644 --- a/.github/workflows/load-test.yml +++ b/.github/workflows/load-test.yml @@ -1,9 +1,9 @@ name: "Loadtest" on: - push: - paths-ignore: - - "doc/**" + schedule: + - cron: '0 8 * * *' # Daily at 08:00 UTC + workflow_dispatch: # Allow manual trigger permissions: contents: read From 4d7646ae88aff2699355d9752317c3f186784c37 Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 1 Apr 2026 19:28:19 +0100 Subject: [PATCH 068/130] build(deps): bump actions/setup-node from 4 to 6 (#7409) Bumps [actions/setup-node](https://github.com/actions/setup-node) from 4 to 6. - [Release notes](https://github.com/actions/setup-node/releases) - [Commits](https://github.com/actions/setup-node/compare/v4...v6) --- updated-dependencies: - dependency-name: actions/setup-node dependency-version: '6' dependency-type: direct:production update-type: version-update:semver-major ... Signed-off-by: dependabot[bot] Co-authored-by: dependabot[bot] <49699333+dependabot[bot]@users.noreply.github.com> --- .github/workflows/update-plugins.yml | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/.github/workflows/update-plugins.yml b/.github/workflows/update-plugins.yml index fdccc8e1ff8..115c752102e 100644 --- a/.github/workflows/update-plugins.yml +++ b/.github/workflows/update-plugins.yml @@ -19,7 +19,7 @@ jobs: run_install: false - name: Use Node.js - uses: actions/setup-node@v4 + uses: actions/setup-node@v6 with: node-version: 22 From 09d782f69517a34b32af6f68d67d0d92c6ddf452 Mon Sep 17 00:00:00 2001 From: John McLear Date: Wed, 1 Apr 2026 19:48:45 +0100 Subject: [PATCH 069/130] Enforce 2-space indentation across codebase (#7426) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit * Enforce 2-space indentation across codebase Convert all 4-space indented source files to 2-space to match .editorconfig and project contributor guidelines. 74 files converted: admin UI components, type definitions, security modules, test files, helpers, and utilities. No functional changes — 2882 insertions, 2882 deletions (pure whitespace). Fixes #7353 Co-Authored-By: Claude Opus 4.6 (1M context) * Limit admin tests to chromium and firefox Webkit is already tested in the dedicated frontend-tests workflow. Running it again in admin tests causes flaky failures due to slow socket connections and external API timeouts on webkit CI runners. Co-Authored-By: Claude Opus 4.6 (1M context) --------- Co-authored-by: Claude Opus 4.6 (1M context) --- admin/src/components/IconButton.tsx | 20 +- admin/src/components/SearchField.tsx | 14 +- admin/src/components/ShoutType.ts | 18 +- admin/src/localization/i18n.ts | 88 +-- admin/src/pages/HelpPage.tsx | 106 ++-- admin/src/pages/LoginScreen.tsx | 90 +-- admin/src/pages/PadPage.tsx | 488 ++++++++-------- admin/src/pages/Plugin.ts | 44 +- admin/src/pages/SettingsPage.tsx | 80 +-- admin/src/store/store.ts | 74 +-- admin/src/utils/AnimationFrameHook.ts | 38 +- admin/src/utils/LoadingScreen.tsx | 26 +- admin/src/utils/PadSearch.ts | 22 +- admin/src/utils/Toast.tsx | 38 +- admin/src/utils/sorting.ts | 8 +- admin/src/utils/useDebounce.ts | 24 +- admin/src/utils/utils.ts | 116 ++-- bin/commonPlugins.ts | 20 +- bin/make_docs.ts | 64 +-- src/node/hooks/express/adminsettings.ts | 544 +++++++++--------- src/node/security/OAuth2User.ts | 6 +- src/node/security/OIDCAdapter.ts | 158 ++--- src/node/types/ArgsExpressType.ts | 8 +- src/node/types/AsyncQueueTask.ts | 6 +- src/node/types/DeriveModel.ts | 8 +- src/node/types/ErrorCaused.ts | 14 +- src/node/types/I18nPluginDefs.ts | 6 +- src/node/types/LegacyParams.ts | 12 +- src/node/types/MapType.ts | 4 +- src/node/types/PackageInfo.ts | 28 +- src/node/types/PadSearchQuery.ts | 18 +- src/node/types/PadType.ts | 58 +- src/node/types/PartType.ts | 10 +- src/node/types/Plugin.ts | 8 +- src/node/types/PromiseWithStd.ts | 6 +- src/node/types/RunCMDOptions.ts | 14 +- src/node/types/SecretRotatorType.ts | 2 +- src/node/types/SettingsUser.ts | 8 +- src/node/types/SocketClientRequest.ts | 36 +- src/node/types/SocketModule.ts | 2 +- src/node/types/SwaggerUIResource.ts | 40 +- src/node/types/UserSettingsObject.ts | 6 +- src/node/types/WebAccessTypes.ts | 12 +- src/node/utils/SettingsTree.ts | 190 +++--- src/package.json | 2 +- src/static/js/pluginfw/LinkInstaller.ts | 446 +++++++------- .../src/plugins/brightcolorpicker.css | 18 +- src/templates/javascript.html | 96 ++-- .../admin-spec/adminsettings.spec.ts | 102 ++-- .../admin-spec/admintroubleshooting.spec.ts | 42 +- src/tests/frontend-new/helper/adminhelper.ts | 46 +- src/tests/frontend-new/helper/padHelper.ts | 156 ++--- .../frontend-new/helper/settingsHelper.ts | 36 +- src/tests/frontend-new/specs/alphabet.spec.ts | 26 +- src/tests/frontend-new/specs/bold.spec.ts | 56 +- .../specs/change_user_color.spec.ts | 130 ++--- .../specs/change_user_name.spec.ts | 38 +- src/tests/frontend-new/specs/chat.spec.ts | 148 ++--- .../specs/clear_authorship_color.spec.ts | 124 ++-- .../frontend-new/specs/collab_client.spec.ts | 130 ++--- src/tests/frontend-new/specs/delete.spec.ts | 26 +- .../frontend-new/specs/embed_value.spec.ts | 214 +++---- src/tests/frontend-new/specs/enter.spec.ts | 106 ++-- .../frontend-new/specs/font_type.spec.ts | 46 +- .../frontend-new/specs/indentation.spec.ts | 354 ++++++------ .../frontend-new/specs/inner_height.spec.ts | 90 +-- src/tests/frontend-new/specs/italic.spec.ts | 82 +-- src/tests/frontend-new/specs/language.spec.ts | 106 ++-- src/tests/frontend-new/specs/redo.spec.ts | 80 +-- .../frontend-new/specs/strikethrough.spec.ts | 30 +- .../frontend-new/specs/timeslider.spec.ts | 40 +- .../specs/timeslider_follow.spec.ts | 104 ++-- src/tests/frontend-new/specs/undo.spec.ts | 72 +-- .../frontend-new/specs/unordered_list.spec.ts | 166 +++--- .../specs/urls_become_clickable.spec.ts | 72 +-- 75 files changed, 2883 insertions(+), 2883 deletions(-) diff --git a/admin/src/components/IconButton.tsx b/admin/src/components/IconButton.tsx index a93c9877c8f..b73396c827d 100644 --- a/admin/src/components/IconButton.tsx +++ b/admin/src/components/IconButton.tsx @@ -1,17 +1,17 @@ import {FC, JSX, ReactElement} from "react"; export type IconButtonProps = { - style?: React.CSSProperties, - icon: JSX.Element, - title: string|ReactElement, - onClick: ()=>void, - className?: string, - disabled?: boolean + style?: React.CSSProperties, + icon: JSX.Element, + title: string|ReactElement, + onClick: ()=>void, + className?: string, + disabled?: boolean } export const IconButton:FC = ({icon,className,onClick,title, disabled, style})=>{ - return + return } diff --git a/admin/src/components/SearchField.tsx b/admin/src/components/SearchField.tsx index 62a965d403a..1d2110005a6 100644 --- a/admin/src/components/SearchField.tsx +++ b/admin/src/components/SearchField.tsx @@ -1,14 +1,14 @@ import {ChangeEventHandler, FC} from "react"; import {Search} from 'lucide-react' export type SearchFieldProps = { - value: string, - onChange: ChangeEventHandler, - placeholder?: string + value: string, + onChange: ChangeEventHandler, + placeholder?: string } export const SearchField:FC = ({onChange,value, placeholder})=>{ - return - - - + return + + + } diff --git a/admin/src/components/ShoutType.ts b/admin/src/components/ShoutType.ts index f7e8b1df3dc..f4b94b9cbae 100644 --- a/admin/src/components/ShoutType.ts +++ b/admin/src/components/ShoutType.ts @@ -1,13 +1,13 @@ export type ShoutType = { + type: string, + data:{ type: string, - data:{ - type: string, - payload: { - message: { - message: string, - sticky: boolean - }, - timestamp: number - } + payload: { + message: { + message: string, + sticky: boolean + }, + timestamp: number } + } } diff --git a/admin/src/localization/i18n.ts b/admin/src/localization/i18n.ts index 67ae140e711..bdaa189f77e 100644 --- a/admin/src/localization/i18n.ts +++ b/admin/src/localization/i18n.ts @@ -6,52 +6,52 @@ import LanguageDetector from 'i18next-browser-languagedetector' import { BackendModule } from 'i18next'; const LazyImportPlugin: BackendModule = { - type: 'backend', - init: function () { - }, - read: async function (language, namespace, callback) { - - let baseURL = import.meta.env.BASE_URL - if(namespace === "translation") { - // If default we load the translation file - baseURL+=`/locales/${language}.json` - } else { - // Else we load the former plugin translation file - baseURL+=`/${namespace}/${language}.json` - } - - const localeJSON = await fetch(baseURL, { - cache: "force-cache" - }) - let json; - - try { - json = JSON.parse(await localeJSON.text()) - } catch(e) { - callback(new Error("Error loading"), null); - } - - - callback(null, json); - }, - - save: function () { - }, - - create: function () { - /* save the missing translation */ - }, + type: 'backend', + init: function () { + }, + read: async function (language, namespace, callback) { + + let baseURL = import.meta.env.BASE_URL + if(namespace === "translation") { + // If default we load the translation file + baseURL+=`/locales/${language}.json` + } else { + // Else we load the former plugin translation file + baseURL+=`/${namespace}/${language}.json` + } + + const localeJSON = await fetch(baseURL, { + cache: "force-cache" + }) + let json; + + try { + json = JSON.parse(await localeJSON.text()) + } catch(e) { + callback(new Error("Error loading"), null); + } + + + callback(null, json); + }, + + save: function () { + }, + + create: function () { + /* save the missing translation */ + }, }; i18n - .use(LanguageDetector) - .use(LazyImportPlugin) - .use(initReactI18next) - .init( - { - ns: ['translation','ep_admin_pads'], - fallbackLng: 'en' - } - ) + .use(LanguageDetector) + .use(LazyImportPlugin) + .use(initReactI18next) + .init( + { + ns: ['translation','ep_admin_pads'], + fallbackLng: 'en' + } + ) export default i18n diff --git a/admin/src/pages/HelpPage.tsx b/admin/src/pages/HelpPage.tsx index dd9695b0a4a..13454742096 100644 --- a/admin/src/pages/HelpPage.tsx +++ b/admin/src/pages/HelpPage.tsx @@ -4,67 +4,67 @@ import {useEffect, useState} from "react"; import {HelpObj} from "./Plugin.ts"; export const HelpPage = () => { - const settingsSocket = useStore(state=>state.settingsSocket) - const [helpData, setHelpData] = useState(); + const settingsSocket = useStore(state=>state.settingsSocket) + const [helpData, setHelpData] = useState(); - useEffect(() => { - if(!settingsSocket) return; - settingsSocket?.on('reply:help', (data) => { - setHelpData(data) - }); + useEffect(() => { + if(!settingsSocket) return; + settingsSocket?.on('reply:help', (data) => { + setHelpData(data) + }); - settingsSocket?.emit('help'); - }, [settingsSocket]); + settingsSocket?.emit('help'); + }, [settingsSocket]); - const renderHooks = (hooks:Record>) => { - return Object.keys(hooks).map((hookName, i) => { - return
-

{hookName}

-
    - {Object.keys(hooks[hookName]).map((hook, i) =>
  • {hook} -
      - {Object.keys(hooks[hookName][hook]).map((subHook, i) =>
    • {subHook}
    • )} -
    -
  • )} -
-
- }) - } + const renderHooks = (hooks:Record>) => { + return Object.keys(hooks).map((hookName, i) => { + return
+

{hookName}

+
    + {Object.keys(hooks[hookName]).map((hook, i) =>
  • {hook} +
      + {Object.keys(hooks[hookName][hook]).map((subHook, i) =>
    • {subHook}
    • )} +
    +
  • )} +
+
+ }) + } - if (!helpData) return
+ if (!helpData) return
- return
-

-
-
-
{helpData?.epVersion}
-
-
{helpData.latestVersion}
-
Git sha
-
{helpData.gitCommit}
-
-

-
    - {helpData.installedPlugins.map((plugin, i) =>
  • {plugin}
  • )} -
+ return
+

+
+
+
{helpData?.epVersion}
+
+
{helpData.latestVersion}
+
Git sha
+
{helpData.gitCommit}
+
+

+
    + {helpData.installedPlugins.map((plugin, i) =>
  • {plugin}
  • )} +
-

-
    - {helpData.installedParts.map((part, i) =>
  • {part}
  • )} -
+

+
    + {helpData.installedParts.map((part, i) =>
  • {part}
  • )} +
-

- { - renderHooks(helpData.installedServerHooks) - } +

+ { + renderHooks(helpData.installedServerHooks) + } -

- - { - renderHooks(helpData.installedClientHooks) - } -

+

+ + { + renderHooks(helpData.installedClientHooks) + } +

-
+
} diff --git a/admin/src/pages/LoginScreen.tsx b/admin/src/pages/LoginScreen.tsx index 61ac8993e7e..a8094540771 100644 --- a/admin/src/pages/LoginScreen.tsx +++ b/admin/src/pages/LoginScreen.tsx @@ -5,57 +5,57 @@ import {Eye, EyeOff} from "lucide-react"; import {useState} from "react"; type Inputs = { - username: string - password: string + username: string + password: string } export const LoginScreen = ()=>{ - const navigate = useNavigate() - const [passwordVisible, setPasswordVisible] = useState(false) + const navigate = useNavigate() + const [passwordVisible, setPasswordVisible] = useState(false) - const { - register, - handleSubmit} = useForm() + const { + register, + handleSubmit} = useForm() - const login: SubmitHandler = ({username,password})=>{ - fetch('/admin-auth/', { - method: 'POST', - headers:{ - Authorization: `Basic ${btoa(`${username}:${password}`)}` - } - }).then(r=>{ - if(!r.ok) { - useStore.getState().setToastState({ - open: true, - title: "Login failed", - success: false - }) - } else { - navigate('/') - } - }).catch(e=>{ - console.error(e) + const login: SubmitHandler = ({username,password})=>{ + fetch('/admin-auth/', { + method: 'POST', + headers:{ + Authorization: `Basic ${btoa(`${username}:${password}`)}` + } + }).then(r=>{ + if(!r.ok) { + useStore.getState().setToastState({ + open: true, + title: "Login failed", + success: false }) - } + } else { + navigate('/') + } + }).catch(e=>{ + console.error(e) + }) + } - return
-
-

Etherpad

-
-
Username
- -
Password
- - - {passwordVisible? setPasswordVisible(!passwordVisible)}/> : - setPasswordVisible(!passwordVisible)}/>} - - -
-
+ return
+
+

Etherpad

+
+
Username
+ +
Password
+ + + {passwordVisible? setPasswordVisible(!passwordVisible)}/> : + setPasswordVisible(!passwordVisible)}/>} + + +
+
} diff --git a/admin/src/pages/PadPage.tsx b/admin/src/pages/PadPage.tsx index bfcbb9a14d1..cedef1157f5 100644 --- a/admin/src/pages/PadPage.tsx +++ b/admin/src/pages/PadPage.tsx @@ -11,274 +11,274 @@ import {SearchField} from "../components/SearchField.tsx"; import {useForm} from "react-hook-form"; type PadCreateProps = { - padName: string + padName: string } export const PadPage = ()=>{ - const settingsSocket = useStore(state=>state.settingsSocket) - const [searchParams, setSearchParams] = useState({ - offset: 0, - limit: 12, - pattern: '', - sortBy: 'padName', - ascending: true - }) - const {t} = useTranslation() - const [searchTerm, setSearchTerm] = useState('') - const pads = useStore(state=>state.pads) - const [currentPage, setCurrentPage] = useState(0) - const [deleteDialog, setDeleteDialog] = useState(false) - const [errorText, setErrorText] = useState(null) - const [padToDelete, setPadToDelete] = useState('') - const [createPadDialogOpen, setCreatePadDialogOpen] = useState(false) - const {register, handleSubmit} = useForm() - const pages = useMemo(()=>{ - if(!pads){ - return 0; - } + const settingsSocket = useStore(state=>state.settingsSocket) + const [searchParams, setSearchParams] = useState({ + offset: 0, + limit: 12, + pattern: '', + sortBy: 'padName', + ascending: true + }) + const {t} = useTranslation() + const [searchTerm, setSearchTerm] = useState('') + const pads = useStore(state=>state.pads) + const [currentPage, setCurrentPage] = useState(0) + const [deleteDialog, setDeleteDialog] = useState(false) + const [errorText, setErrorText] = useState(null) + const [padToDelete, setPadToDelete] = useState('') + const [createPadDialogOpen, setCreatePadDialogOpen] = useState(false) + const {register, handleSubmit} = useForm() + const pages = useMemo(()=>{ + if(!pads){ + return 0; + } - return Math.ceil(pads!.total / searchParams.limit) - },[pads, searchParams.limit]) + return Math.ceil(pads!.total / searchParams.limit) + },[pads, searchParams.limit]) - useDebounce(()=>{ - setSearchParams({ - ...searchParams, - pattern: searchTerm - }) + useDebounce(()=>{ + setSearchParams({ + ...searchParams, + pattern: searchTerm + }) - }, 500, [searchTerm]) + }, 500, [searchTerm]) - useEffect(() => { - if(!settingsSocket){ - return - } + useEffect(() => { + if(!settingsSocket){ + return + } - settingsSocket.emit('padLoad', searchParams) + settingsSocket.emit('padLoad', searchParams) - }, [settingsSocket, searchParams]); + }, [settingsSocket, searchParams]); - useEffect(() => { - if(!settingsSocket){ - return - } + useEffect(() => { + if(!settingsSocket){ + return + } - settingsSocket.on('results:padLoad', (data: PadSearchResult)=>{ - useStore.getState().setPads(data); - }) + settingsSocket.on('results:padLoad', (data: PadSearchResult)=>{ + useStore.getState().setPads(data); + }) - settingsSocket.on('results:deletePad', (padID: string)=>{ - const newPads = useStore.getState().pads?.results?.filter((pad)=>{ - return pad.padName !== padID - }) - useStore.getState().setPads({ - total: useStore.getState().pads!.total-1, - results: newPads - }) - }) + settingsSocket.on('results:deletePad', (padID: string)=>{ + const newPads = useStore.getState().pads?.results?.filter((pad)=>{ + return pad.padName !== padID + }) + useStore.getState().setPads({ + total: useStore.getState().pads!.total-1, + results: newPads + }) + }) - type SettingsSocketCreateReponse = { - error: string - } | { - success: string - } + type SettingsSocketCreateReponse = { + error: string + } | { + success: string + } - settingsSocket.on('results:createPad', (rep: SettingsSocketCreateReponse)=>{ - if ('error' in rep) { - useStore.getState().setToastState({ - open: true, - title: rep.error, - success: false - }) - } else { - useStore.getState().setToastState({ - open: true, - title: rep.success, - success: true - }) - setCreatePadDialogOpen(false) - // reload pads - settingsSocket.emit('padLoad', searchParams) - } - }) + settingsSocket.on('results:createPad', (rep: SettingsSocketCreateReponse)=>{ + if ('error' in rep) { + useStore.getState().setToastState({ + open: true, + title: rep.error, + success: false + }) + } else { + useStore.getState().setToastState({ + open: true, + title: rep.success, + success: true + }) + setCreatePadDialogOpen(false) + // reload pads + settingsSocket.emit('padLoad', searchParams) + } + }) - settingsSocket.on('results:cleanupPadRevisions', (data)=>{ - const newPads = useStore.getState().pads?.results ?? [] + settingsSocket.on('results:cleanupPadRevisions', (data)=>{ + const newPads = useStore.getState().pads?.results ?? [] - if (data.error) { - setErrorText(data.error) - return - } + if (data.error) { + setErrorText(data.error) + return + } - newPads.forEach((pad)=>{ - if (pad.padName === data.padId) { - pad.revisionNumber = data.keepRevisions - } - }) + newPads.forEach((pad)=>{ + if (pad.padName === data.padId) { + pad.revisionNumber = data.keepRevisions + } + }) - useStore.getState().setPads({ - results: newPads, - total: useStore.getState().pads!.total - }) - }) - }, [settingsSocket, pads]); + useStore.getState().setPads({ + results: newPads, + total: useStore.getState().pads!.total + }) + }) + }, [settingsSocket, pads]); - const deletePad = (padID: string)=>{ - settingsSocket?.emit('deletePad', padID) - } + const deletePad = (padID: string)=>{ + settingsSocket?.emit('deletePad', padID) + } - const cleanupPad = (padID: string)=>{ - settingsSocket?.emit('cleanupPadRevisions', padID) - } + const cleanupPad = (padID: string)=>{ + settingsSocket?.emit('cleanupPadRevisions', padID) + } - const onPadCreate = (data: PadCreateProps)=>{ - settingsSocket?.emit('createPad', { - padName: data.padName - }) - } + const onPadCreate = (data: PadCreateProps)=>{ + settingsSocket?.emit('createPad', { + padName: data.padName + }) + } - return
- - - -
-
-
- {t("ep_admin_pads:ep_adminpads2_confirm", { - padID: padToDelete, - })} -
-
- - -
-
-
-
-
- - - - -
-
Error occured: {errorText}
-
- -
-
-
-
-
- - - - - -
- -
- - -
- -
-
-
-
- -

- } title={} onClick={()=>{ - setCreatePadDialogOpen(true) - }}/> -
- setSearchTerm(v.target.value)} placeholder={t('ep_admin_pads:ep_adminpads2_search-heading')}/> - - - - - - - - - - - - { - pads?.results?.map((pad)=>{ - return - - - - - - - }) - } - -
{ - setSearchParams({ - ...searchParams, - sortBy: 'padName', - ascending: !searchParams.ascending - }) - }}>{ - setSearchParams({ - ...searchParams, - sortBy: 'userCount', - ascending: !searchParams.ascending - }) - }}>{ - setSearchParams({ - ...searchParams, - sortBy: 'lastEdited', - ascending: !searchParams.ascending - }) - }}>{ - setSearchParams({ - ...searchParams, - sortBy: 'revisionNumber', - ascending: !searchParams.ascending - }) - }}>Revision number
{pad.padName}{pad.userCount}{new Date(pad.lastEdited).toLocaleString()}{pad.revisionNumber} -
- } title={} onClick={()=>{ - setPadToDelete(pad.padName) - setDeleteDialog(true) - }}/> - } title={} onClick={()=>{ - cleanupPad(pad.padName) - }}/> - } title={} onClick={()=>window.open(`../../p/${pad.padName}`, '_blank')}/> -
-
-
- - {currentPage+1} out of {pages} - + return
+ + + +
+
+
+ {t("ep_admin_pads:ep_adminpads2_confirm", { + padID: padToDelete, + })} +
+
+ + +
+
+
+
+
+ + + + +
+
Error occured: {errorText}
+
+
+
+
+
+
+ + + + + +
+ +
+ + +
+ +
+
+
+
+ +

+ } title={} onClick={()=>{ + setCreatePadDialogOpen(true) + }}/> +
+ setSearchTerm(v.target.value)} placeholder={t('ep_admin_pads:ep_adminpads2_search-heading')}/> + + + + + + + + + + + + { + pads?.results?.map((pad)=>{ + return + + + + + + + }) + } + +
{ + setSearchParams({ + ...searchParams, + sortBy: 'padName', + ascending: !searchParams.ascending + }) + }}>{ + setSearchParams({ + ...searchParams, + sortBy: 'userCount', + ascending: !searchParams.ascending + }) + }}>{ + setSearchParams({ + ...searchParams, + sortBy: 'lastEdited', + ascending: !searchParams.ascending + }) + }}>{ + setSearchParams({ + ...searchParams, + sortBy: 'revisionNumber', + ascending: !searchParams.ascending + }) + }}>Revision number
{pad.padName}{pad.userCount}{new Date(pad.lastEdited).toLocaleString()}{pad.revisionNumber} +
+ } title={} onClick={()=>{ + setPadToDelete(pad.padName) + setDeleteDialog(true) + }}/> + } title={} onClick={()=>{ + cleanupPad(pad.padName) + }}/> + } title={} onClick={()=>window.open(`../../p/${pad.padName}`, '_blank')}/> +
+
+
+ + {currentPage+1} out of {pages} +
+
} diff --git a/admin/src/pages/Plugin.ts b/admin/src/pages/Plugin.ts index f5563863b53..7e556d8a665 100644 --- a/admin/src/pages/Plugin.ts +++ b/admin/src/pages/Plugin.ts @@ -1,36 +1,36 @@ export type PluginDef = { - name: string, - description: string, - version: string, - time: string, - official: boolean, + name: string, + description: string, + version: string, + time: string, + official: boolean, } export type InstalledPlugin = { - name: string, - path: string, - realPath: string, - version:string, - updatable?: boolean + name: string, + path: string, + realPath: string, + version:string, + updatable?: boolean } export type SearchParams = { - searchTerm: string, - offset: number, - limit: number, - sortBy: 'name'|'version'|'last-updated', - sortDir: 'asc'|'desc' + searchTerm: string, + offset: number, + limit: number, + sortBy: 'name'|'version'|'last-updated', + sortDir: 'asc'|'desc' } export type HelpObj = { - epVersion: string - gitCommit: string - installedClientHooks: Record>, - installedParts: string[], - installedPlugins: string[], - installedServerHooks: Record, - latestVersion: string + epVersion: string + gitCommit: string + installedClientHooks: Record>, + installedParts: string[], + installedPlugins: string[], + installedServerHooks: Record, + latestVersion: string } diff --git a/admin/src/pages/SettingsPage.tsx b/admin/src/pages/SettingsPage.tsx index d1786957374..6c2f9bf333c 100644 --- a/admin/src/pages/SettingsPage.tsx +++ b/admin/src/pages/SettingsPage.tsx @@ -5,46 +5,46 @@ import {IconButton} from "../components/IconButton.tsx"; import {RotateCw, Save} from "lucide-react"; export const SettingsPage = ()=>{ - const settingsSocket = useStore(state=>state.settingsSocket) - const settings = cleanComments(useStore(state=>state.settings)) + const settingsSocket = useStore(state=>state.settingsSocket) + const settings = cleanComments(useStore(state=>state.settings)) - return
-

-