Compare commits

...

72 commits

Author SHA1 Message Date
SamTV12345
6208a04556 fix: use data postgresql mapping
Some checks are pending
Backend tests / Linux without plugins (push) Waiting to run
Backend tests / Linux with Plugins (push) Waiting to run
Backend tests / Windows without plugins (push) Waiting to run
Backend tests / Windows with Plugins (push) Waiting to run
CodeQL / Analyze (push) Waiting to run
Docker / docker (push) Waiting to run
Frontend admin tests powered by Sauce Labs / with plugins (push) Waiting to run
Frontend tests powered by Sauce Labs / Playwright Chrome (push) Waiting to run
Frontend tests powered by Sauce Labs / Playwright Firefox (push) Waiting to run
Frontend tests powered by Sauce Labs / Playwright Webkit (push) Waiting to run
Loadtest / without plugins (push) Waiting to run
Loadtest / with Plugins (push) Waiting to run
Loadtest / long running (push) Waiting to run
Perform type checks / perform type check (push) Waiting to run
rate limit / test (push) Waiting to run
Upgrade from latest release / Linux with Plugins (push) Waiting to run
Windows Build / Build .zip (push) Waiting to run
2025-04-19 20:18:27 +02:00
dependabot[bot]
af2d7cc552 Bump the dev-dependencies group with 4 updates
Bumps the dev-dependencies group with 4 updates: [@playwright/test](https://github.com/microsoft/playwright), [i18next-browser-languagedetector](https://github.com/i18next/i18next-browser-languageDetector), [lucide-react](https://github.com/lucide-icons/lucide/tree/HEAD/packages/lucide-react) and [vite](https://github.com/vitejs/vite/tree/HEAD/packages/vite).


Updates `@playwright/test` from 1.51.1 to 1.52.0
- [Release notes](https://github.com/microsoft/playwright/releases)
- [Commits](https://github.com/microsoft/playwright/compare/v1.51.1...v1.52.0)

Updates `i18next-browser-languagedetector` from 8.0.4 to 8.0.5
- [Changelog](https://github.com/i18next/i18next-browser-languageDetector/blob/master/CHANGELOG.md)
- [Commits](https://github.com/i18next/i18next-browser-languageDetector/compare/v8.0.4...v8.0.5)

Updates `lucide-react` from 0.488.0 to 0.501.0
- [Release notes](https://github.com/lucide-icons/lucide/releases)
- [Commits](https://github.com/lucide-icons/lucide/commits/0.501.0/packages/lucide-react)

Updates `vite` from 6.3.1 to 6.3.2
- [Release notes](https://github.com/vitejs/vite/releases)
- [Changelog](https://github.com/vitejs/vite/blob/main/packages/vite/CHANGELOG.md)
- [Commits](https://github.com/vitejs/vite/commits/v6.3.2/packages/vite)

---
updated-dependencies:
- dependency-name: "@playwright/test"
  dependency-version: 1.52.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: dev-dependencies
- dependency-name: i18next-browser-languagedetector
  dependency-version: 8.0.5
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: dev-dependencies
- dependency-name: lucide-react
  dependency-version: 0.501.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: dev-dependencies
- dependency-name: vite
  dependency-version: 6.3.2
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: dev-dependencies
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-04-19 20:14:07 +02:00
dependabot[bot]
050869aecd Bump the dev-dependencies group across 1 directory with 13 updates
Some checks failed
Backend tests / Linux without plugins (push) Has been cancelled
Backend tests / Linux with Plugins (push) Has been cancelled
Backend tests / Windows without plugins (push) Has been cancelled
Backend tests / Windows with Plugins (push) Has been cancelled
CodeQL / Analyze (push) Has been cancelled
Docker / docker (push) Has been cancelled
Frontend admin tests powered by Sauce Labs / with plugins (push) Has been cancelled
Frontend tests powered by Sauce Labs / Playwright Chrome (push) Has been cancelled
Frontend tests powered by Sauce Labs / Playwright Firefox (push) Has been cancelled
Frontend tests powered by Sauce Labs / Playwright Webkit (push) Has been cancelled
Loadtest / without plugins (push) Has been cancelled
Loadtest / with Plugins (push) Has been cancelled
Loadtest / long running (push) Has been cancelled
Perform type checks / perform type check (push) Has been cancelled
rate limit / test (push) Has been cancelled
Upgrade from latest release / Linux with Plugins (push) Has been cancelled
Windows Build / Build .zip (push) Has been cancelled
Bumps the dev-dependencies group with 13 updates in the / directory:

| Package | From | To |
| --- | --- | --- |
| [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) | `22.14.0` | `22.14.1` |
| [@radix-ui/react-dialog](https://github.com/radix-ui/primitives) | `1.1.6` | `1.1.7` |
| [@radix-ui/react-toast](https://github.com/radix-ui/primitives) | `1.2.6` | `1.2.7` |
| [@types/react](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/react) | `19.1.0` | `19.1.2` |
| [@types/react-dom](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/react-dom) | `19.1.1` | `19.1.2` |
| [@typescript-eslint/eslint-plugin](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin) | `8.29.0` | `8.30.1` |
| [@typescript-eslint/parser](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser) | `8.29.0` | `8.30.1` |
| [@vitejs/plugin-react-swc](https://github.com/vitejs/vite-plugin-react/tree/HEAD/packages/plugin-react-swc) | `3.8.1` | `3.9.0` |
| [i18next](https://github.com/i18next/i18next) | `24.2.3` | `25.0.0` |
| [lucide-react](https://github.com/lucide-icons/lucide/tree/HEAD/packages/lucide-react) | `0.487.0` | `0.488.0` |
| [react-router-dom](https://github.com/remix-run/react-router/tree/HEAD/packages/react-router-dom) | `7.5.0` | `7.5.1` |
| [vite](https://github.com/vitejs/vite/tree/HEAD/packages/vite) | `6.2.6` | `6.3.1` |
| [vite-plugin-static-copy](https://github.com/sapphi-red/vite-plugin-static-copy) | `2.3.0` | `2.3.1` |



Updates `@types/node` from 22.14.0 to 22.14.1
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node)

Updates `@radix-ui/react-dialog` from 1.1.6 to 1.1.7
- [Changelog](https://github.com/radix-ui/primitives/blob/main/release-process.md)
- [Commits](https://github.com/radix-ui/primitives/commits)

Updates `@radix-ui/react-toast` from 1.2.6 to 1.2.7
- [Changelog](https://github.com/radix-ui/primitives/blob/main/release-process.md)
- [Commits](https://github.com/radix-ui/primitives/commits)

Updates `@types/react` from 19.1.0 to 19.1.2
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/react)

Updates `@types/react-dom` from 19.1.1 to 19.1.2
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/react-dom)

Updates `@typescript-eslint/eslint-plugin` from 8.29.0 to 8.30.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.30.1/packages/eslint-plugin)

Updates `@typescript-eslint/parser` from 8.29.0 to 8.30.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.30.1/packages/parser)

Updates `@vitejs/plugin-react-swc` from 3.8.1 to 3.9.0
- [Release notes](https://github.com/vitejs/vite-plugin-react/releases)
- [Changelog](https://github.com/vitejs/vite-plugin-react/blob/main/packages/plugin-react-swc/CHANGELOG.md)
- [Commits](https://github.com/vitejs/vite-plugin-react/commits/plugin-react-swc@3.9.0/packages/plugin-react-swc)

Updates `i18next` from 24.2.3 to 25.0.0
- [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/v24.2.3...v25.0.0)

Updates `lucide-react` from 0.487.0 to 0.488.0
- [Release notes](https://github.com/lucide-icons/lucide/releases)
- [Commits](https://github.com/lucide-icons/lucide/commits/0.488.0/packages/lucide-react)

Updates `react-router-dom` from 7.5.0 to 7.5.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.5.1/packages/react-router-dom)

Updates `vite` from 6.2.6 to 6.3.1
- [Release notes](https://github.com/vitejs/vite/releases)
- [Changelog](https://github.com/vitejs/vite/blob/main/packages/vite/CHANGELOG.md)
- [Commits](https://github.com/vitejs/vite/commits/create-vite@6.3.1/packages/vite)

Updates `vite-plugin-static-copy` from 2.3.0 to 2.3.1
- [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@2.3.0...vite-plugin-static-copy@2.3.1)

---
updated-dependencies:
- dependency-name: "@types/node"
  dependency-version: 22.14.1
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: dev-dependencies
- dependency-name: "@radix-ui/react-dialog"
  dependency-version: 1.1.7
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: dev-dependencies
- dependency-name: "@radix-ui/react-toast"
  dependency-version: 1.2.7
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: dev-dependencies
- dependency-name: "@types/react"
  dependency-version: 19.1.2
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: dev-dependencies
- dependency-name: "@types/react-dom"
  dependency-version: 19.1.2
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: dev-dependencies
- dependency-name: "@typescript-eslint/eslint-plugin"
  dependency-version: 8.30.1
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: dev-dependencies
- dependency-name: "@typescript-eslint/parser"
  dependency-version: 8.30.1
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: dev-dependencies
- dependency-name: "@vitejs/plugin-react-swc"
  dependency-version: 3.9.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: dev-dependencies
- dependency-name: i18next
  dependency-version: 25.0.0
  dependency-type: direct:development
  update-type: version-update:semver-major
  dependency-group: dev-dependencies
- dependency-name: lucide-react
  dependency-version: 0.488.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: dev-dependencies
- dependency-name: react-router-dom
  dependency-version: 7.5.1
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: dev-dependencies
- dependency-name: vite
  dependency-version: 6.3.1
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: dev-dependencies
- dependency-name: vite-plugin-static-copy
  dependency-version: 2.3.1
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: dev-dependencies
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-04-17 19:55:49 +02:00
translatewiki.net
697c98a89f
Localisation updates from https://translatewiki.net. 2025-04-17 14:03:48 +02:00
dependabot[bot]
db16196e46 Bump @radix-ui/react-switch from 1.1.3 to 1.1.4
Some checks failed
Backend tests / Linux without plugins (push) Has been cancelled
Backend tests / Linux with Plugins (push) Has been cancelled
Backend tests / Windows without plugins (push) Has been cancelled
Backend tests / Windows with Plugins (push) Has been cancelled
CodeQL / Analyze (push) Has been cancelled
Docker / docker (push) Has been cancelled
Frontend admin tests powered by Sauce Labs / with plugins (push) Has been cancelled
Frontend tests powered by Sauce Labs / Playwright Chrome (push) Has been cancelled
Frontend tests powered by Sauce Labs / Playwright Firefox (push) Has been cancelled
Frontend tests powered by Sauce Labs / Playwright Webkit (push) Has been cancelled
Loadtest / without plugins (push) Has been cancelled
Loadtest / with Plugins (push) Has been cancelled
Loadtest / long running (push) Has been cancelled
Perform type checks / perform type check (push) Has been cancelled
rate limit / test (push) Has been cancelled
Upgrade from latest release / Linux with Plugins (push) Has been cancelled
Windows Build / Build .zip (push) Has been cancelled
Bumps [@radix-ui/react-switch](https://github.com/radix-ui/primitives) from 1.1.3 to 1.1.4.
- [Changelog](https://github.com/radix-ui/primitives/blob/main/release-process.md)
- [Commits](https://github.com/radix-ui/primitives/commits)

---
updated-dependencies:
- dependency-name: "@radix-ui/react-switch"
  dependency-version: 1.1.4
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-04-11 21:24:09 +02:00
dependabot[bot]
e86f3ce643 Bump vite from 6.2.5 to 6.2.6
Bumps [vite](https://github.com/vitejs/vite/tree/HEAD/packages/vite) from 6.2.5 to 6.2.6.
- [Release notes](https://github.com/vitejs/vite/releases)
- [Changelog](https://github.com/vitejs/vite/blob/v6.2.6/packages/vite/CHANGELOG.md)
- [Commits](https://github.com/vitejs/vite/commits/v6.2.6/packages/vite)

---
updated-dependencies:
- dependency-name: vite
  dependency-version: 6.2.6
  dependency-type: direct:development
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-04-11 21:23:57 +02:00
SamTV12345
509d4a3397 fix: remove node 18 and add node23
Some checks failed
Backend tests / Linux without plugins (push) Has been cancelled
Backend tests / Linux with Plugins (push) Has been cancelled
Backend tests / Windows without plugins (push) Has been cancelled
Backend tests / Windows with Plugins (push) Has been cancelled
CodeQL / Analyze (push) Has been cancelled
Docker / docker (push) Has been cancelled
Frontend admin tests powered by Sauce Labs / with plugins (push) Has been cancelled
Frontend tests powered by Sauce Labs / Playwright Chrome (push) Has been cancelled
Frontend tests powered by Sauce Labs / Playwright Firefox (push) Has been cancelled
Frontend tests powered by Sauce Labs / Playwright Webkit (push) Has been cancelled
Loadtest / without plugins (push) Has been cancelled
Loadtest / with Plugins (push) Has been cancelled
Loadtest / long running (push) Has been cancelled
Perform type checks / perform type check (push) Has been cancelled
rate limit / test (push) Has been cancelled
Upgrade from latest release / Linux with Plugins (push) Has been cancelled
Windows Build / Build .zip (push) Has been cancelled
2025-04-08 19:17:12 +02:00
SamTV12345
5e8e42d022 fix: rerun pnpm-lock 2025-04-08 18:57:29 +02:00
SamTV12345
7fde6ee9bd fix: simplified code in wrapped promise 2025-04-08 18:54:35 +02:00
SamTV12345
d62d5a0460 Added authentication to axios.defaults.proxy 2025-04-08 18:54:35 +02:00
SamTV12345
77792a5f7f Change if condition
Some checks are pending
Backend tests / Linux without plugins (push) Waiting to run
Backend tests / Linux with Plugins (push) Waiting to run
Backend tests / Windows without plugins (push) Waiting to run
Backend tests / Windows with Plugins (push) Waiting to run
CodeQL / Analyze (push) Waiting to run
Docker / docker (push) Waiting to run
Frontend admin tests powered by Sauce Labs / with plugins (push) Waiting to run
Frontend tests powered by Sauce Labs / Playwright Chrome (push) Waiting to run
Frontend tests powered by Sauce Labs / Playwright Firefox (push) Waiting to run
Frontend tests powered by Sauce Labs / Playwright Webkit (push) Waiting to run
Loadtest / without plugins (push) Waiting to run
Loadtest / with Plugins (push) Waiting to run
Loadtest / long running (push) Waiting to run
Perform type checks / perform type check (push) Waiting to run
rate limit / test (push) Waiting to run
Upgrade from latest release / Linux with Plugins (push) Waiting to run
Windows Build / Build .zip (push) Waiting to run
2025-04-07 21:47:45 +02:00
n-goncalves
aa25a2f840 fix(frontend): add timesliderBootstrap to static resources 2025-04-07 21:47:13 +02:00
SamTV12345
65949b60f2 Fixed docker run 2025-04-07 21:19:50 +02:00
SamTV12345
c130715b32 Fixed docker run 2025-04-07 21:19:50 +02:00
SamTV12345
f8239863d8 Added digest to outputs 2025-04-07 21:19:50 +02:00
SamTV12345
6a750f191e Fixed replacing digest 2025-04-07 21:19:50 +02:00
SamTV12345
227cb59751 Add generated token 2025-04-07 21:19:50 +02:00
SamTV12345
2b1c275665 Fixed github ref 2025-04-07 21:19:50 +02:00
SamTV12345
ff73af8aad Update docker.yml 2025-04-07 21:19:50 +02:00
SamTV12345
ae15d4ea30 Also run on feature branch 2025-04-07 21:19:50 +02:00
SamTV12345
524dd6bc6d Adapted docker.yml 2025-04-07 21:19:50 +02:00
dependabot[bot]
9b31d17d04 Bump rate-limiter-flexible from 6.2.1 to 7.0.0
Bumps [rate-limiter-flexible](https://github.com/animir/node-rate-limiter-flexible) from 6.2.1 to 7.0.0.
- [Release notes](https://github.com/animir/node-rate-limiter-flexible/releases)
- [Commits](https://github.com/animir/node-rate-limiter-flexible/compare/v6.2.1...v7.0.0)

---
updated-dependencies:
- dependency-name: rate-limiter-flexible
  dependency-version: 7.0.0
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-04-07 21:00:43 +02:00
muxator
b6bdbe1a2a settings: use correct syntax for default values containing "\n" in settings.json.template
79406051fa added support for including an escaped "\n" in the default value of
an interpolated setting, but the example in `settings.json.template` and
`settings.json.docker` contained a slight syntax error. This fixes it.

No functional changes.
2025-04-07 20:59:08 +02:00
SamTV12345
49d2860b1e bump version 2025-04-07 20:59:08 +02:00
SamTV1998
676edddc38 feat(changelog): added readme for 2.3.0
Some checks are pending
Backend tests / Linux without plugins (push) Waiting to run
Backend tests / Linux with Plugins (push) Waiting to run
Backend tests / Windows without plugins (push) Waiting to run
Backend tests / Windows with Plugins (push) Waiting to run
CodeQL / Analyze (push) Waiting to run
Docker / docker (push) Waiting to run
Frontend admin tests powered by Sauce Labs / with plugins (push) Waiting to run
Frontend tests powered by Sauce Labs / Playwright Chrome (push) Waiting to run
Frontend tests powered by Sauce Labs / Playwright Firefox (push) Waiting to run
Frontend tests powered by Sauce Labs / Playwright Webkit (push) Waiting to run
Loadtest / without plugins (push) Waiting to run
Loadtest / with Plugins (push) Waiting to run
Loadtest / long running (push) Waiting to run
Perform type checks / perform type check (push) Waiting to run
rate limit / test (push) Waiting to run
Upgrade from latest release / Linux with Plugins (push) Waiting to run
Windows Build / Build .zip (push) Waiting to run
2025-04-06 15:22:13 +02:00
SamTV12345
ab5b933fb3 fix(oauth): add support for client_credentials flow
Some checks are pending
Backend tests / Linux without plugins (push) Waiting to run
Backend tests / Linux with Plugins (push) Waiting to run
Backend tests / Windows without plugins (push) Waiting to run
Backend tests / Windows with Plugins (push) Waiting to run
CodeQL / Analyze (push) Waiting to run
Docker / docker (push) Waiting to run
Frontend admin tests powered by Sauce Labs / with plugins (push) Waiting to run
Frontend tests powered by Sauce Labs / Playwright Chrome (push) Waiting to run
Frontend tests powered by Sauce Labs / Playwright Firefox (push) Waiting to run
Frontend tests powered by Sauce Labs / Playwright Webkit (push) Waiting to run
Loadtest / without plugins (push) Waiting to run
Loadtest / with Plugins (push) Waiting to run
Loadtest / long running (push) Waiting to run
Perform type checks / perform type check (push) Waiting to run
rate limit / test (push) Waiting to run
Upgrade from latest release / Linux with Plugins (push) Waiting to run
Windows Build / Build .zip (push) Waiting to run
2025-04-06 10:48:28 +02:00
dependabot[bot]
35ddea0c57 Bump lucide-react in the dev-dependencies group across 1 directory
Some checks are pending
Backend tests / Linux without plugins (push) Waiting to run
Backend tests / Linux with Plugins (push) Waiting to run
Backend tests / Windows without plugins (push) Waiting to run
Backend tests / Windows with Plugins (push) Waiting to run
CodeQL / Analyze (push) Waiting to run
Docker / docker (push) Waiting to run
Frontend admin tests powered by Sauce Labs / with plugins (push) Waiting to run
Frontend tests powered by Sauce Labs / Playwright Chrome (push) Waiting to run
Frontend tests powered by Sauce Labs / Playwright Firefox (push) Waiting to run
Frontend tests powered by Sauce Labs / Playwright Webkit (push) Waiting to run
Loadtest / without plugins (push) Waiting to run
Loadtest / with Plugins (push) Waiting to run
Loadtest / long running (push) Waiting to run
Perform type checks / perform type check (push) Waiting to run
rate limit / test (push) Waiting to run
Upgrade from latest release / Linux with Plugins (push) Waiting to run
Windows Build / Build .zip (push) Waiting to run
Bumps the dev-dependencies group with 1 update in the / directory: [lucide-react](https://github.com/lucide-icons/lucide/tree/HEAD/packages/lucide-react).


Updates `lucide-react` from 0.486.0 to 0.487.0
- [Release notes](https://github.com/lucide-icons/lucide/releases)
- [Commits](https://github.com/lucide-icons/lucide/commits/0.487.0/packages/lucide-react)

---
updated-dependencies:
- dependency-name: lucide-react
  dependency-version: 0.487.0
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: dev-dependencies
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-04-05 17:52:16 +02:00
SamTV1998
b6b6eb528e fix(frontend): permit static resources for access 2025-04-05 16:18:27 +02:00
SamTV1998
9276a001d8 fix(frontend): index out of bounds 2025-04-05 16:08:13 +02:00
Cristian Consonni
b3a0c3d426 Fix installation of local plugins 2025-04-05 15:31:36 +02:00
dependabot[bot]
d61578d680 Bump lru-cache from 11.0.2 to 11.1.0
Bumps [lru-cache](https://github.com/isaacs/node-lru-cache) from 11.0.2 to 11.1.0.
- [Changelog](https://github.com/isaacs/node-lru-cache/blob/main/CHANGELOG.md)
- [Commits](https://github.com/isaacs/node-lru-cache/compare/v11.0.2...v11.1.0)

---
updated-dependencies:
- dependency-name: lru-cache
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-04-05 15:28:51 +02:00
dependabot[bot]
9f49ba60fa Bump esbuild from 0.25.1 to 0.25.2
Bumps [esbuild](https://github.com/evanw/esbuild) from 0.25.1 to 0.25.2.
- [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.25.1...v0.25.2)

---
updated-dependencies:
- dependency-name: esbuild
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-04-05 15:28:41 +02:00
dependabot[bot]
df60a78348 Bump vite from 6.2.4 to 6.2.5
Bumps [vite](https://github.com/vitejs/vite/tree/HEAD/packages/vite) from 6.2.4 to 6.2.5.
- [Release notes](https://github.com/vitejs/vite/releases)
- [Changelog](https://github.com/vitejs/vite/blob/v6.2.5/packages/vite/CHANGELOG.md)
- [Commits](https://github.com/vitejs/vite/commits/v6.2.5/packages/vite)

---
updated-dependencies:
- dependency-name: vite
  dependency-version: 6.2.5
  dependency-type: direct:development
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-04-05 15:28:12 +02:00
translatewiki.net
b6e47d7f0a
Localisation updates from https://translatewiki.net.
Some checks failed
Backend tests / Linux without plugins (push) Has been cancelled
Backend tests / Linux with Plugins (push) Has been cancelled
Backend tests / Windows without plugins (push) Has been cancelled
Backend tests / Windows with Plugins (push) Has been cancelled
CodeQL / Analyze (push) Has been cancelled
Docker / docker (push) Has been cancelled
Frontend admin tests powered by Sauce Labs / with plugins (push) Has been cancelled
Frontend tests powered by Sauce Labs / Playwright Chrome (push) Has been cancelled
Frontend tests powered by Sauce Labs / Playwright Firefox (push) Has been cancelled
Frontend tests powered by Sauce Labs / Playwright Webkit (push) Has been cancelled
Loadtest / without plugins (push) Has been cancelled
Loadtest / with Plugins (push) Has been cancelled
Loadtest / long running (push) Has been cancelled
Perform type checks / perform type check (push) Has been cancelled
rate limit / test (push) Has been cancelled
Upgrade from latest release / Linux with Plugins (push) Has been cancelled
Windows Build / Build .zip (push) Has been cancelled
2025-04-03 14:03:35 +02:00
dependabot[bot]
43de91d994 Bump rate-limiter-flexible from 6.2.0 to 6.2.1
Some checks failed
Backend tests / Linux without plugins (push) Has been cancelled
Backend tests / Linux with Plugins (push) Has been cancelled
Backend tests / Windows without plugins (push) Has been cancelled
Backend tests / Windows with Plugins (push) Has been cancelled
Deploy Docs to GitHub Pages / deploy (push) Has been cancelled
CodeQL / Analyze (push) Has been cancelled
Docker / docker (push) Has been cancelled
Frontend admin tests powered by Sauce Labs / with plugins (push) Has been cancelled
Frontend tests powered by Sauce Labs / Playwright Chrome (push) Has been cancelled
Frontend tests powered by Sauce Labs / Playwright Firefox (push) Has been cancelled
Frontend tests powered by Sauce Labs / Playwright Webkit (push) Has been cancelled
Loadtest / without plugins (push) Has been cancelled
Loadtest / with Plugins (push) Has been cancelled
Loadtest / long running (push) Has been cancelled
Perform type checks / perform type check (push) Has been cancelled
rate limit / test (push) Has been cancelled
Upgrade from latest release / Linux with Plugins (push) Has been cancelled
Windows Build / Build .zip (push) Has been cancelled
Bumps [rate-limiter-flexible](https://github.com/animir/node-rate-limiter-flexible) from 6.2.0 to 6.2.1.
- [Release notes](https://github.com/animir/node-rate-limiter-flexible/releases)
- [Commits](https://github.com/animir/node-rate-limiter-flexible/compare/v6.2.0...v6.2.1)

---
updated-dependencies:
- dependency-name: rate-limiter-flexible
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-03-31 21:04:13 +02:00
dependabot[bot]
6321e1cc34 Bump mime-types from 2.1.35 to 3.0.1
Bumps [mime-types](https://github.com/jshttp/mime-types) from 2.1.35 to 3.0.1.
- [Release notes](https://github.com/jshttp/mime-types/releases)
- [Changelog](https://github.com/jshttp/mime-types/blob/master/HISTORY.md)
- [Commits](https://github.com/jshttp/mime-types/compare/2.1.35...v3.0.1)

---
updated-dependencies:
- dependency-name: mime-types
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-03-31 21:04:07 +02:00
dependabot[bot]
02e53f328d Bump the dev-dependencies group across 1 directory with 33 updates
Bumps the dev-dependencies group with 33 updates in the / directory:

| Package | From | To |
| --- | --- | --- |
| [@playwright/test](https://github.com/microsoft/playwright) | `1.49.1` | `1.51.1` |
| [@types/jsonwebtoken](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/jsonwebtoken) | `9.0.7` | `9.0.9` |
| [@types/node](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/node) | `22.10.2` | `22.13.14` |
| [@types/oidc-provider](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/oidc-provider) | `8.8.0` | `8.8.1` |
| [@types/semver](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/semver) | `7.5.8` | `7.7.0` |
| [@types/swagger-ui-express](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/swagger-ui-express) | `4.1.7` | `4.1.8` |
| [eslint](https://github.com/eslint/eslint) | `9.17.0` | `9.23.0` |
| [mocha](https://github.com/mochajs/mocha) | `11.0.1` | `11.1.0` |
| [sinon](https://github.com/sinonjs/sinon) | `19.0.2` | `20.0.0` |
| [supertest](https://github.com/ladjs/supertest) | `7.0.0` | `7.1.0` |
| [typescript](https://github.com/microsoft/TypeScript) | `5.7.2` | `5.8.2` |
| [vitest](https://github.com/vitest-dev/vitest/tree/HEAD/packages/vitest) | `2.1.9` | `3.1.1` |
| [@radix-ui/react-dialog](https://github.com/radix-ui/primitives) | `1.1.4` | `1.1.6` |
| [@radix-ui/react-toast](https://github.com/radix-ui/primitives) | `1.2.4` | `1.2.6` |
| [@typescript-eslint/eslint-plugin](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/eslint-plugin) | `8.18.1` | `8.28.0` |
| [@typescript-eslint/parser](https://github.com/typescript-eslint/typescript-eslint/tree/HEAD/packages/parser) | `8.18.1` | `8.28.0` |
| [@vitejs/plugin-react-swc](https://github.com/vitejs/vite-plugin-react-swc) | `3.7.2` | `3.8.1` |
| [eslint-plugin-react-hooks](https://github.com/facebook/react/tree/HEAD/packages/eslint-plugin-react-hooks) | `5.1.0` | `5.2.0` |
| [eslint-plugin-react-refresh](https://github.com/ArnaudBarre/eslint-plugin-react-refresh) | `0.4.16` | `0.4.19` |
| [i18next](https://github.com/i18next/i18next) | `24.2.0` | `24.2.3` |
| [i18next-browser-languagedetector](https://github.com/i18next/i18next-browser-languageDetector) | `8.0.2` | `8.0.4` |
| [lucide-react](https://github.com/lucide-icons/lucide/tree/HEAD/packages/lucide-react) | `0.469.0` | `0.486.0` |
| [react](https://github.com/facebook/react/tree/HEAD/packages/react) | `19.0.0` | `19.1.0` |
| [@types/react](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/react) | `19.0.2` | `19.0.12` |
| [react-dom](https://github.com/facebook/react/tree/HEAD/packages/react-dom) | `19.0.0` | `19.1.0` |
| [@types/react-dom](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/react-dom) | `19.0.2` | `19.0.4` |
| [react-hook-form](https://github.com/react-hook-form/react-hook-form) | `7.54.1` | `7.55.0` |
| [react-i18next](https://github.com/i18next/react-i18next) | `15.2.0` | `15.4.1` |
| [react-router-dom](https://github.com/remix-run/react-router/tree/HEAD/packages/react-router-dom) | `7.0.2` | `7.4.1` |
| [vite](https://github.com/vitejs/vite/tree/HEAD/packages/vite) | `6.0.9` | `6.2.4` |
| [vite-plugin-static-copy](https://github.com/sapphi-red/vite-plugin-static-copy) | `2.2.0` | `2.3.0` |
| [zustand](https://github.com/pmndrs/zustand) | `5.0.2` | `5.0.3` |
| [vitepress](https://github.com/vuejs/vitepress) | `1.5.0` | `1.6.3` |



Updates `@playwright/test` from 1.49.1 to 1.51.1
- [Release notes](https://github.com/microsoft/playwright/releases)
- [Commits](https://github.com/microsoft/playwright/compare/v1.49.1...v1.51.1)

Updates `@types/jsonwebtoken` from 9.0.7 to 9.0.9
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/jsonwebtoken)

Updates `@types/node` from 22.10.2 to 22.13.14
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/node)

Updates `@types/oidc-provider` from 8.8.0 to 8.8.1
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/oidc-provider)

Updates `@types/semver` from 7.5.8 to 7.7.0
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/semver)

Updates `@types/swagger-ui-express` from 4.1.7 to 4.1.8
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/swagger-ui-express)

Updates `eslint` from 9.17.0 to 9.23.0
- [Release notes](https://github.com/eslint/eslint/releases)
- [Changelog](https://github.com/eslint/eslint/blob/main/CHANGELOG.md)
- [Commits](https://github.com/eslint/eslint/compare/v9.17.0...v9.23.0)

Updates `mocha` from 11.0.1 to 11.1.0
- [Release notes](https://github.com/mochajs/mocha/releases)
- [Changelog](https://github.com/mochajs/mocha/blob/main/CHANGELOG.md)
- [Commits](https://github.com/mochajs/mocha/compare/v11.0.1...v11.1.0)

Updates `sinon` from 19.0.2 to 20.0.0
- [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/v19.0.2...v20.0.0)

Updates `supertest` from 7.0.0 to 7.1.0
- [Release notes](https://github.com/ladjs/supertest/releases)
- [Commits](https://github.com/ladjs/supertest/compare/v7.0.0...v7.1.0)

Updates `typescript` from 5.7.2 to 5.8.2
- [Release notes](https://github.com/microsoft/TypeScript/releases)
- [Changelog](https://github.com/microsoft/TypeScript/blob/main/azure-pipelines.release.yml)
- [Commits](https://github.com/microsoft/TypeScript/compare/v5.7.2...v5.8.2)

Updates `vitest` from 2.1.9 to 3.1.1
- [Release notes](https://github.com/vitest-dev/vitest/releases)
- [Commits](https://github.com/vitest-dev/vitest/commits/v3.1.1/packages/vitest)

Updates `@radix-ui/react-dialog` from 1.1.4 to 1.1.6
- [Changelog](https://github.com/radix-ui/primitives/blob/main/release-process.md)
- [Commits](https://github.com/radix-ui/primitives/commits)

Updates `@radix-ui/react-toast` from 1.2.4 to 1.2.6
- [Changelog](https://github.com/radix-ui/primitives/blob/main/release-process.md)
- [Commits](https://github.com/radix-ui/primitives/commits)

Updates `@typescript-eslint/eslint-plugin` from 8.18.1 to 8.28.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.28.0/packages/eslint-plugin)

Updates `@typescript-eslint/parser` from 8.18.1 to 8.28.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.28.0/packages/parser)

Updates `@vitejs/plugin-react-swc` from 3.7.2 to 3.8.1
- [Release notes](https://github.com/vitejs/vite-plugin-react-swc/releases)
- [Changelog](https://github.com/vitejs/vite-plugin-react-swc/blob/main/CHANGELOG.md)
- [Commits](https://github.com/vitejs/vite-plugin-react-swc/compare/v3.7.2...v3.8.1)

Updates `eslint-plugin-react-hooks` from 5.1.0 to 5.2.0
- [Release notes](https://github.com/facebook/react/releases)
- [Changelog](https://github.com/facebook/react/blob/main/packages/eslint-plugin-react-hooks/CHANGELOG.md)
- [Commits](https://github.com/facebook/react/commits/HEAD/packages/eslint-plugin-react-hooks)

Updates `eslint-plugin-react-refresh` from 0.4.16 to 0.4.19
- [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.4.16...v0.4.19)

Updates `i18next` from 24.2.0 to 24.2.3
- [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/v24.2.0...v24.2.3)

Updates `i18next-browser-languagedetector` from 8.0.2 to 8.0.4
- [Changelog](https://github.com/i18next/i18next-browser-languageDetector/blob/master/CHANGELOG.md)
- [Commits](https://github.com/i18next/i18next-browser-languageDetector/compare/v8.0.2...v8.0.4)

Updates `lucide-react` from 0.469.0 to 0.486.0
- [Release notes](https://github.com/lucide-icons/lucide/releases)
- [Commits](https://github.com/lucide-icons/lucide/commits/0.486.0/packages/lucide-react)

Updates `react` from 19.0.0 to 19.1.0
- [Release notes](https://github.com/facebook/react/releases)
- [Changelog](https://github.com/facebook/react/blob/main/CHANGELOG.md)
- [Commits](https://github.com/facebook/react/commits/v19.1.0/packages/react)

Updates `@types/react` from 19.0.2 to 19.0.12
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/react)

Updates `react-dom` from 19.0.0 to 19.1.0
- [Release notes](https://github.com/facebook/react/releases)
- [Changelog](https://github.com/facebook/react/blob/main/CHANGELOG.md)
- [Commits](https://github.com/facebook/react/commits/v19.1.0/packages/react-dom)

Updates `@types/react-dom` from 19.0.2 to 19.0.4
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/react-dom)

Updates `react-hook-form` from 7.54.1 to 7.55.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.54.1...v7.55.0)

Updates `react-i18next` from 15.2.0 to 15.4.1
- [Changelog](https://github.com/i18next/react-i18next/blob/master/CHANGELOG.md)
- [Commits](https://github.com/i18next/react-i18next/compare/v15.2.0...v15.4.1)

Updates `react-router-dom` from 7.0.2 to 7.4.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.4.1/packages/react-router-dom)

Updates `vite` from 6.0.9 to 6.2.4
- [Release notes](https://github.com/vitejs/vite/releases)
- [Changelog](https://github.com/vitejs/vite/blob/v6.2.4/packages/vite/CHANGELOG.md)
- [Commits](https://github.com/vitejs/vite/commits/v6.2.4/packages/vite)

Updates `vite-plugin-static-copy` from 2.2.0 to 2.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@2.2.0...vite-plugin-static-copy@2.3.0)

Updates `zustand` from 5.0.2 to 5.0.3
- [Release notes](https://github.com/pmndrs/zustand/releases)
- [Commits](https://github.com/pmndrs/zustand/compare/v5.0.2...v5.0.3)

Updates `vitepress` from 1.5.0 to 1.6.3
- [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/v1.5.0...v1.6.3)

---
updated-dependencies:
- dependency-name: "@playwright/test"
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: dev-dependencies
- dependency-name: "@types/jsonwebtoken"
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: dev-dependencies
- dependency-name: "@types/node"
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: dev-dependencies
- dependency-name: "@types/oidc-provider"
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: dev-dependencies
- dependency-name: "@types/semver"
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: dev-dependencies
- dependency-name: "@types/swagger-ui-express"
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: dev-dependencies
- dependency-name: eslint
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: dev-dependencies
- dependency-name: mocha
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: dev-dependencies
- dependency-name: sinon
  dependency-type: direct:development
  update-type: version-update:semver-major
  dependency-group: dev-dependencies
- dependency-name: supertest
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: dev-dependencies
- dependency-name: typescript
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: dev-dependencies
- dependency-name: vitest
  dependency-type: direct:development
  update-type: version-update:semver-major
  dependency-group: dev-dependencies
- dependency-name: "@radix-ui/react-dialog"
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: dev-dependencies
- dependency-name: "@radix-ui/react-toast"
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: dev-dependencies
- dependency-name: "@typescript-eslint/eslint-plugin"
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: dev-dependencies
- dependency-name: "@typescript-eslint/parser"
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: dev-dependencies
- dependency-name: "@vitejs/plugin-react-swc"
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: dev-dependencies
- dependency-name: eslint-plugin-react-hooks
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: dev-dependencies
- dependency-name: eslint-plugin-react-refresh
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: dev-dependencies
- dependency-name: i18next
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: dev-dependencies
- dependency-name: i18next-browser-languagedetector
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: dev-dependencies
- dependency-name: lucide-react
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: dev-dependencies
- dependency-name: react
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: dev-dependencies
- dependency-name: "@types/react"
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: dev-dependencies
- dependency-name: react-dom
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: dev-dependencies
- dependency-name: "@types/react-dom"
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: dev-dependencies
- dependency-name: react-hook-form
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: dev-dependencies
- dependency-name: react-i18next
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: dev-dependencies
- dependency-name: react-router-dom
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: dev-dependencies
- dependency-name: vite
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: dev-dependencies
- dependency-name: vite-plugin-static-copy
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: dev-dependencies
- dependency-name: zustand
  dependency-type: direct:development
  update-type: version-update:semver-patch
  dependency-group: dev-dependencies
- dependency-name: vitepress
  dependency-type: direct:development
  update-type: version-update:semver-minor
  dependency-group: dev-dependencies
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-03-31 21:03:49 +02:00
dependabot[bot]
3e95ae2ccd Bump awalsh128/cache-apt-pkgs-action from 1.4.3 to 1.5.0
Some checks failed
Backend tests / Linux without plugins (push) Has been cancelled
Backend tests / Linux with Plugins (push) Has been cancelled
Backend tests / Windows without plugins (push) Has been cancelled
Backend tests / Windows with Plugins (push) Has been cancelled
CodeQL / Analyze (push) Has been cancelled
Docker / docker (push) Has been cancelled
Frontend admin tests powered by Sauce Labs / with plugins (push) Has been cancelled
Frontend tests powered by Sauce Labs / Playwright Chrome (push) Has been cancelled
Frontend tests powered by Sauce Labs / Playwright Firefox (push) Has been cancelled
Frontend tests powered by Sauce Labs / Playwright Webkit (push) Has been cancelled
Loadtest / without plugins (push) Has been cancelled
Loadtest / with Plugins (push) Has been cancelled
Loadtest / long running (push) Has been cancelled
Perform type checks / perform type check (push) Has been cancelled
rate limit / test (push) Has been cancelled
Upgrade from latest release / Linux with Plugins (push) Has been cancelled
Windows Build / Build .zip (push) Has been cancelled
Bumps [awalsh128/cache-apt-pkgs-action](https://github.com/awalsh128/cache-apt-pkgs-action) from 1.4.3 to 1.5.0.
- [Release notes](https://github.com/awalsh128/cache-apt-pkgs-action/releases)
- [Commits](https://github.com/awalsh128/cache-apt-pkgs-action/compare/v1.4.3...v1.5.0)

---
updated-dependencies:
- dependency-name: awalsh128/cache-apt-pkgs-action
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-03-24 19:21:07 +01:00
dependabot[bot]
397fc615b9 Bump axios from 1.8.3 to 1.8.4
Bumps [axios](https://github.com/axios/axios) from 1.8.3 to 1.8.4.
- [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.8.3...v1.8.4)

---
updated-dependencies:
- dependency-name: axios
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-03-24 19:20:57 +01:00
dependabot[bot]
8eceb730d5 Bump rate-limiter-flexible from 6.0.0 to 6.2.0
Bumps [rate-limiter-flexible](https://github.com/animir/node-rate-limiter-flexible) from 6.0.0 to 6.2.0.
- [Release notes](https://github.com/animir/node-rate-limiter-flexible/releases)
- [Commits](https://github.com/animir/node-rate-limiter-flexible/compare/v6.0.0...v6.2.0)

---
updated-dependencies:
- dependency-name: rate-limiter-flexible
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-03-24 19:20:49 +01:00
dependabot[bot]
770f8b4aa1 Bump rate-limiter-flexible from 5.0.5 to 6.0.0
Bumps [rate-limiter-flexible](https://github.com/animir/node-rate-limiter-flexible) from 5.0.5 to 6.0.0.
- [Release notes](https://github.com/animir/node-rate-limiter-flexible/releases)
- [Commits](https://github.com/animir/node-rate-limiter-flexible/compare/v5.0.5...v6.0.0)

---
updated-dependencies:
- dependency-name: rate-limiter-flexible
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-03-13 14:58:33 +01:00
dependabot[bot]
fbc4b5be59 Bump superagent from 10.1.1 to 10.2.0
Bumps [superagent](https://github.com/ladjs/superagent) from 10.1.1 to 10.2.0.
- [Release notes](https://github.com/ladjs/superagent/releases)
- [Changelog](https://github.com/ladjs/superagent/blob/master/HISTORY.md)
- [Commits](https://github.com/ladjs/superagent/compare/v10.1.1...v10.2.0)

---
updated-dependencies:
- dependency-name: superagent
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-03-13 14:58:20 +01:00
dependabot[bot]
ad15d7652d Bump axios from 1.8.2 to 1.8.3
Bumps [axios](https://github.com/axios/axios) from 1.8.2 to 1.8.3.
- [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.8.2...v1.8.3)

---
updated-dependencies:
- dependency-name: axios
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-03-13 14:58:11 +01:00
SamTV12345
87d8b87855 fix(socket.io): readd long polling 2025-03-13 14:32:00 +01:00
translatewiki.net
8b41eed8a6
Localisation updates from https://translatewiki.net. 2025-03-13 13:03:55 +01:00
dependabot[bot]
705d4ee24a Bump vitest from 2.1.8 to 2.1.9
Bumps [vitest](https://github.com/vitest-dev/vitest/tree/HEAD/packages/vitest) from 2.1.8 to 2.1.9.
- [Release notes](https://github.com/vitest-dev/vitest/releases)
- [Commits](https://github.com/vitest-dev/vitest/commits/v2.1.9/packages/vitest)

---
updated-dependencies:
- dependency-name: vitest
  dependency-type: direct:development
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-03-11 19:32:38 +01:00
dependabot[bot]
d1df1c14d9 Bump axios from 1.8.1 to 1.8.2
Bumps [axios](https://github.com/axios/axios) from 1.8.1 to 1.8.2.
- [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.8.1...v1.8.2)

---
updated-dependencies:
- dependency-name: axios
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-03-11 19:32:17 +01:00
dependabot[bot]
2bbed2e858 Bump oidc-provider from 8.8.0 to 8.8.1
Bumps [oidc-provider](https://github.com/panva/node-oidc-provider) from 8.8.0 to 8.8.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/v8.8.0...v8.8.1)

---
updated-dependencies:
- dependency-name: oidc-provider
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-03-11 19:32:07 +01:00
dependabot[bot]
f567c2a2b7 Bump esbuild from 0.25.0 to 0.25.1
Bumps [esbuild](https://github.com/evanw/esbuild) from 0.25.0 to 0.25.1.
- [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.25.0...v0.25.1)

---
updated-dependencies:
- dependency-name: esbuild
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-03-11 19:32:00 +01:00
translatewiki.net
155df5257e
Localisation updates from https://translatewiki.net. 2025-03-10 13:02:30 +01:00
dependabot[bot]
121c27d361 Bump axios from 1.7.9 to 1.8.1
Bumps [axios](https://github.com/axios/axios) from 1.7.9 to 1.8.1.
- [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.7.9...v1.8.1)

---
updated-dependencies:
- dependency-name: axios
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-03-02 10:30:05 +01:00
translatewiki.net
bb6e47ce9a
Localisation updates from https://translatewiki.net. 2025-02-24 13:03:32 +01:00
dependabot[bot]
acf01c779e Bump tsx from 4.19.2 to 4.19.3
Bumps [tsx](https://github.com/privatenumber/tsx) from 4.19.2 to 4.19.3.
- [Release notes](https://github.com/privatenumber/tsx/releases)
- [Changelog](https://github.com/privatenumber/tsx/blob/master/release.config.cjs)
- [Commits](https://github.com/privatenumber/tsx/compare/v4.19.2...v4.19.3)

---
updated-dependencies:
- dependency-name: tsx
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-02-21 21:02:11 +01:00
MayorFaj
feaae4957f fix: Ensure ETHERPAD_PLUGINS ARG is recognized in all stages 2025-02-21 21:01:49 +01:00
dependabot[bot]
b03e8167a6 Bump jose from 5.9.6 to 5.10.0
Bumps [jose](https://github.com/panva/jose) from 5.9.6 to 5.10.0.
- [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/v5.9.6...v5.10.0)

---
updated-dependencies:
- dependency-name: jose
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-02-21 21:01:38 +01:00
dependabot[bot]
b1f4996f58 Bump oidc-provider and @types/oidc-provider
Bumps [oidc-provider](https://github.com/panva/node-oidc-provider) and [@types/oidc-provider](https://github.com/DefinitelyTyped/DefinitelyTyped/tree/HEAD/types/oidc-provider). These dependencies needed to be updated together.

Updates `oidc-provider` from 8.6.1 to 8.8.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/v8.6.1...v8.8.0)

Updates `@types/oidc-provider` from 8.5.2 to 8.8.0
- [Release notes](https://github.com/DefinitelyTyped/DefinitelyTyped/releases)
- [Commits](https://github.com/DefinitelyTyped/DefinitelyTyped/commits/HEAD/types/oidc-provider)

---
updated-dependencies:
- dependency-name: oidc-provider
  dependency-type: direct:production
  update-type: version-update:semver-minor
- dependency-name: "@types/oidc-provider"
  dependency-type: direct:development
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-02-21 21:01:09 +01:00
translatewiki.net
42371f3638
Localisation updates from https://translatewiki.net. 2025-02-17 13:03:41 +01:00
translatewiki.net
84d67575ce
Localisation updates from https://translatewiki.net. 2025-02-13 13:03:51 +01:00
dependabot[bot]
a25b57fe50 Bump semver from 7.6.3 to 7.7.1
Bumps [semver](https://github.com/npm/node-semver) from 7.6.3 to 7.7.1.
- [Release notes](https://github.com/npm/node-semver/releases)
- [Changelog](https://github.com/npm/node-semver/blob/main/CHANGELOG.md)
- [Commits](https://github.com/npm/node-semver/compare/v7.6.3...v7.7.1)

---
updated-dependencies:
- dependency-name: semver
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-02-12 18:23:44 +01:00
dependabot[bot]
a985fe181f Bump @radix-ui/react-switch from 1.1.2 to 1.1.3
Bumps [@radix-ui/react-switch](https://github.com/radix-ui/primitives) from 1.1.2 to 1.1.3.
- [Changelog](https://github.com/radix-ui/primitives/blob/main/release-process.md)
- [Commits](https://github.com/radix-ui/primitives/commits)

---
updated-dependencies:
- dependency-name: "@radix-ui/react-switch"
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-02-12 18:23:36 +01:00
dependabot[bot]
ccc7c60416 Bump esbuild from 0.24.2 to 0.25.0
Bumps [esbuild](https://github.com/evanw/esbuild) from 0.24.2 to 0.25.0.
- [Release notes](https://github.com/evanw/esbuild/releases)
- [Changelog](https://github.com/evanw/esbuild/blob/main/CHANGELOG-2024.md)
- [Commits](https://github.com/evanw/esbuild/compare/v0.24.2...v0.25.0)

---
updated-dependencies:
- dependency-name: esbuild
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-02-12 18:23:10 +01:00
translatewiki.net
9bc91cb1d0
Localisation updates from https://translatewiki.net. 2025-02-06 13:03:02 +01:00
translatewiki.net
0995ce1567
Localisation updates from https://translatewiki.net. 2025-02-03 13:03:09 +01:00
dependabot[bot]
85da7cc0f0 Bump vite from 6.0.5 to 6.0.9
Bumps [vite](https://github.com/vitejs/vite/tree/HEAD/packages/vite) from 6.0.5 to 6.0.9.
- [Release notes](https://github.com/vitejs/vite/releases)
- [Changelog](https://github.com/vitejs/vite/blob/main/packages/vite/CHANGELOG.md)
- [Commits](https://github.com/vitejs/vite/commits/v6.0.9/packages/vite)

---
updated-dependencies:
- dependency-name: vite
  dependency-type: direct:development
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-01-21 22:10:44 +01:00
dependabot[bot]
954a6b7b40 Bump oidc-provider from 8.6.0 to 8.6.1
Bumps [oidc-provider](https://github.com/panva/node-oidc-provider) from 8.6.0 to 8.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/v8.6.0...v8.6.1)

---
updated-dependencies:
- dependency-name: oidc-provider
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-01-21 19:19:09 +01:00
dependabot[bot]
1ad0d43754 Bump wtfnode from 0.9.4 to 0.10.0
Bumps [wtfnode](https://github.com/myndzi/wtfnode) from 0.9.4 to 0.10.0.
- [Commits](https://github.com/myndzi/wtfnode/commits)

---
updated-dependencies:
- dependency-name: wtfnode
  dependency-type: direct:production
  update-type: version-update:semver-minor
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-01-18 15:46:52 +01:00
dependabot[bot]
6423bde241 Bump rate-limiter-flexible from 5.0.4 to 5.0.5
Bumps [rate-limiter-flexible](https://github.com/animir/node-rate-limiter-flexible) from 5.0.4 to 5.0.5.
- [Release notes](https://github.com/animir/node-rate-limiter-flexible/releases)
- [Commits](https://github.com/animir/node-rate-limiter-flexible/commits/v5.0.5)

---
updated-dependencies:
- dependency-name: rate-limiter-flexible
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-01-18 15:46:26 +01:00
dependabot[bot]
2731e4d8d3 Bump awalsh128/cache-apt-pkgs-action from 1.4.2 to 1.4.3
Bumps [awalsh128/cache-apt-pkgs-action](https://github.com/awalsh128/cache-apt-pkgs-action) from 1.4.2 to 1.4.3.
- [Release notes](https://github.com/awalsh128/cache-apt-pkgs-action/releases)
- [Commits](https://github.com/awalsh128/cache-apt-pkgs-action/compare/v1.4.2...v1.4.3)

---
updated-dependencies:
- dependency-name: awalsh128/cache-apt-pkgs-action
  dependency-type: direct:production
  update-type: version-update:semver-patch
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-01-12 21:36:49 +01:00
dependabot[bot]
7b86c3f91f Bump jsdom from 25.0.1 to 26.0.0
Bumps [jsdom](https://github.com/jsdom/jsdom) from 25.0.1 to 26.0.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/25.0.1...26.0.0)

---
updated-dependencies:
- dependency-name: jsdom
  dependency-type: direct:production
  update-type: version-update:semver-major
...

Signed-off-by: dependabot[bot] <support@github.com>
2025-01-12 21:36:17 +01:00
SamTV12345
f4a8fc9544 Removed call to .git 2025-01-02 20:19:10 +01:00
SamTV12345
b158c6175f Fixed Dockerfile to be able to be build over https 2025-01-02 20:17:24 +01:00
SamTV12345
13bc06febe Merge branch 'master' into develop 2024-12-22 17:08:32 +01:00
35 changed files with 3348 additions and 3187 deletions

View file

@ -24,7 +24,7 @@ jobs:
strategy:
fail-fast: false
matrix:
node: [18, 20, 22]
node: [20, 22, 23]
steps:
-
name: Checkout repository
@ -53,7 +53,7 @@ jobs:
run: pnpm config set auto-install-peers false
-
name: Install libreoffice
uses: awalsh128/cache-apt-pkgs-action@v1.4.2
uses: awalsh128/cache-apt-pkgs-action@v1.5.0
with:
packages: libreoffice libreoffice-pdfimport
version: 1.0
@ -84,7 +84,7 @@ jobs:
strategy:
fail-fast: false
matrix:
node: [18, 20, 22]
node: [20, 22, 23]
steps:
-
name: Checkout repository
@ -113,7 +113,7 @@ jobs:
run: pnpm config set auto-install-peers false
-
name: Install libreoffice
uses: awalsh128/cache-apt-pkgs-action@v1.4.2
uses: awalsh128/cache-apt-pkgs-action@v1.5.0
with:
packages: libreoffice libreoffice-pdfimport
version: 1.0

View file

@ -22,6 +22,9 @@ jobs:
-
name: Check out
uses: actions/checkout@v4
with:
path: etherpad
-
name: Set up QEMU
if: github.event_name == 'push'
@ -33,7 +36,7 @@ jobs:
name: Build and export to Docker
uses: docker/build-push-action@v6
with:
context: .
context: ./etherpad
target: production
load: true
tags: ${{ env.TEST_TAG }}
@ -62,6 +65,7 @@ jobs:
${{ runner.os }}-pnpm-store-
-
name: Test
working-directory: etherpad
run: |
docker run --rm -d -p 9001:9001 --name test ${{ env.TEST_TAG }}
./bin/installDeps.sh
@ -98,10 +102,11 @@ jobs:
password: ${{ secrets.DOCKERHUB_TOKEN }}
-
name: Build and push
id: build-docker
if: github.event_name == 'push'
uses: docker/build-push-action@v6
with:
context: .
context: ./etherpad
target: production
platforms: linux/amd64,linux/arm64
push: true
@ -111,7 +116,28 @@ jobs:
uses: peter-evans/dockerhub-description@v4
if: github.ref == 'refs/heads/master'
with:
readme-filepath: ./etherpad/README.md
username: ${{ secrets.DOCKERHUB_USERNAME }}
password: ${{ secrets.DOCKERHUB_TOKEN }}
repository: etherpad/etherpad
enable-url-completion: true
- name: Check out
uses: actions/checkout@v4
with:
path: ether-charts
repository: ether/ether-charts
token: ${{ secrets.ETHER_CHART_TOKEN }}
- name: Update tag in values-dev.yaml
if: success() && github.ref == 'refs/heads/develop'
working-directory: ether-charts
run: |
sed -i 's/tag: ".*"/tag: "${{ steps.build-docker.outputs.digest }}"/' values-dev.yaml
- name: Commit and push changes
working-directory: ether-charts
if: success() && github.ref == 'refs/heads/develop'
run: |
git config --global user.name 'github-actions[bot]'
git config --global user.email 'github-actions[bot]@users.noreply.github.com'
git add values-dev.yaml
git commit -m 'Update develop image tag'
git push

View file

@ -17,7 +17,7 @@ jobs:
strategy:
fail-fast: false
matrix:
node: [20, 22]
node: [20, 22, 23]
steps:
-

View file

@ -24,7 +24,7 @@ jobs:
strategy:
fail-fast: false
matrix:
node: [18, 20, 22]
node: [20, 22, 23]
steps:
-
name: Check out latest release
@ -43,7 +43,7 @@ jobs:
- name: Only install direct dependencies
run: pnpm config set auto-install-peers false
- name: Install libreoffice
uses: awalsh128/cache-apt-pkgs-action@v1.4.2
uses: awalsh128/cache-apt-pkgs-action@v1.5.0
with:
packages: libreoffice libreoffice-pdfimport
version: 1.0
@ -62,7 +62,7 @@ jobs:
run: pnpm config set auto-install-peers false
-
name: Install libreoffice
uses: awalsh128/cache-apt-pkgs-action@v1.4.2
uses: awalsh128/cache-apt-pkgs-action@v1.5.0
with:
packages: libreoffice libreoffice-pdfimport
version: 1.0

View file

@ -1,3 +1,18 @@
# 2.3.0
### Notable enhancements and fixes
- Added possibility to cluster Etherpads behind reverse proxy. There is now a new reverse proxy designed for Etherpads that handles multiple Etherpads and the created pads in them. It will assign the pad assignement to an Etherpad at random but once the choice was made it will always reverse proxy the same backend. This allows to host multiple concurrent Etherpads and benefit from multi core systems even though one Etherpad is singlethreaded.
- Added reverse proxy configuration for replacing Nginx. In the past there were some issues with nginx and its configuration. This reverse proxy allows you to handle your configuration with ease.
If you want to find out more about the reverse proxy method check out the repository https://github.com/ether/etherpad-proxy . It also contains a sample docker-compose file with three Etherpads and one etherpad-proxy. Of course you need to adapt the settings.json.template to your liking and map it into the reverse proxy image before you are ready :).
- Added client authorization to work with Etherpad. Before it would get blocked because it doesn't have the required claim. As this is now fixed etherpad-proxy can also work with your new OAuth2 configuration and retrieve a token via client credentials flow.
# 2.2.7

View file

@ -3,9 +3,10 @@
# https://github.com/ether/etherpad-lite
#
# Author: muxator
ARG BUILD_ENV=git
FROM node:alpine AS adminbuild
RUN npm install -g pnpm@9.0.4
RUN npm install -g pnpm@latest
WORKDIR /opt/etherpad-lite
COPY . .
RUN pnpm install
@ -99,7 +100,7 @@ RUN mkdir -p "${EP_DIR}" && chown etherpad:etherpad "${EP_DIR}"
# https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=863199
RUN \
mkdir -p /usr/share/man/man1 && \
npm install pnpm@9.0.4 -g && \
npm install pnpm@latest -g && \
apk update && apk upgrade && \
apk add --no-cache \
ca-certificates \
@ -113,26 +114,49 @@ USER etherpad
WORKDIR "${EP_DIR}"
# etherpads version feature requires this. Only copy what is really needed
COPY --chown=etherpad:etherpad ./.git/HEA[D] ./.git/HEAD
COPY --chown=etherpad:etherpad ./.git/ref[s] ./.git/refs
COPY --chown=etherpad:etherpad ${SETTINGS} ./settings.json
COPY --chown=etherpad:etherpad ./var ./var
COPY --chown=etherpad:etherpad ./bin ./bin
COPY --chown=etherpad:etherpad ./pnpm-workspace.yaml ./package.json ./
FROM build AS development
FROM build AS build_git
ONBUILD COPY --chown=etherpad:etherpad ./.git/HEA[D] ./.git/HEAD
ONBUILD COPY --chown=etherpad:etherpad ./.git/ref[s] ./.git/refs
FROM build AS build_copy
FROM build_${BUILD_ENV} AS development
ARG ETHERPAD_PLUGINS=
ARG ETHERPAD_LOCAL_PLUGINS=
ARG ETHERPAD_LOCAL_PLUGINS_ENV=
ARG ETHERPAD_GITHUB_PLUGINS=
COPY --chown=etherpad:etherpad ./src/ ./src/
COPY --chown=etherpad:etherpad --from=adminbuild /opt/etherpad-lite/src/ templates/admin./src/templates/admin
COPY --chown=etherpad:etherpad --from=adminbuild /opt/etherpad-lite/src/static/oidc ./src/static/oidc
COPY --chown=etherpad:etherpad ./local_plugin[s] ./local_plugins/
RUN bash -c ./bin/installLocalPlugins.sh
RUN bin/installDeps.sh && \
if [ ! -z "${ETHERPAD_PLUGINS}" ] || [ ! -z "${ETHERPAD_LOCAL_PLUGINS}" ] || [ ! -z "${ETHERPAD_GITHUB_PLUGINS}" ]; then \
pnpm run plugins i ${ETHERPAD_PLUGINS} ${ETHERPAD_LOCAL_PLUGINS:+--path ${ETHERPAD_LOCAL_PLUGINS}} ${ETHERPAD_GITHUB_PLUGINS:+--github ${ETHERPAD_GITHUB_PLUGINS}}; \
fi
if [ ! -z "${ETHERPAD_PLUGINS}" ] || [ ! -z "${ETHERPAD_GITHUB_PLUGINS}" ]; then \
pnpm run plugins i ${ETHERPAD_PLUGINS} ${ETHERPAD_GITHUB_PLUGINS:+--github ${ETHERPAD_GITHUB_PLUGINS}}; \
fi
FROM build AS production
FROM build_${BUILD_ENV} AS production
ARG ETHERPAD_PLUGINS=
ARG ETHERPAD_LOCAL_PLUGINS=
ARG ETHERPAD_LOCAL_PLUGINS_ENV=
ARG ETHERPAD_GITHUB_PLUGINS=
ENV NODE_ENV=production
ENV ETHERPAD_PRODUCTION=true
@ -141,10 +165,14 @@ COPY --chown=etherpad:etherpad ./src ./src
COPY --chown=etherpad:etherpad --from=adminbuild /opt/etherpad-lite/src/templates/admin ./src/templates/admin
COPY --chown=etherpad:etherpad --from=adminbuild /opt/etherpad-lite/src/static/oidc ./src/static/oidc
RUN bin/installDeps.sh && rm -rf ~/.npm && rm -rf ~/.local && rm -rf ~/.cache && \
if [ ! -z "${ETHERPAD_PLUGINS}" ] || [ ! -z "${ETHERPAD_LOCAL_PLUGINS}" ] || [ ! -z "${ETHERPAD_GITHUB_PLUGINS}" ]; then \
pnpm run plugins i ${ETHERPAD_PLUGINS} ${ETHERPAD_LOCAL_PLUGINS:+--path ${ETHERPAD_LOCAL_PLUGINS}} ${ETHERPAD_GITHUB_PLUGINS:+--github ${ETHERPAD_GITHUB_PLUGINS}}; \
fi
COPY --chown=etherpad:etherpad ./local_plugin[s] ./local_plugins/
RUN bash -c ./bin/installLocalPlugins.sh
RUN bin/installDeps.sh && \
if [ ! -z "${ETHERPAD_PLUGINS}" ] || [ ! -z "${ETHERPAD_GITHUB_PLUGINS}" ]; then \
pnpm run plugins i ${ETHERPAD_PLUGINS} ${ETHERPAD_GITHUB_PLUGINS:+--github ${ETHERPAD_GITHUB_PLUGINS}}; \
fi
# Copy the configuration file.
COPY --chown=etherpad:etherpad ${SETTINGS} "${EP_DIR}"/settings.json

View file

@ -90,7 +90,7 @@ services:
# ports:
# - "5432:5432"
volumes:
- postgres_data:/var/lib/postgresql/data/pgdata
- postgres_data:/var/lib/postgresql/data
volumes:
postgres_data:

View file

@ -1,7 +1,7 @@
{
"name": "admin",
"private": true,
"version": "2.2.7",
"version": "2.3.0",
"type": "module",
"scripts": {
"dev": "vite",
@ -11,32 +11,32 @@
"preview": "vite preview"
},
"dependencies": {
"@radix-ui/react-switch": "^1.1.2"
"@radix-ui/react-switch": "^1.1.4"
},
"devDependencies": {
"@radix-ui/react-dialog": "^1.1.4",
"@radix-ui/react-toast": "^1.2.4",
"@types/react": "^19.0.2",
"@types/react-dom": "^19.0.2",
"@typescript-eslint/eslint-plugin": "^8.18.1",
"@typescript-eslint/parser": "^8.18.1",
"@vitejs/plugin-react-swc": "^3.7.2",
"eslint": "^9.17.0",
"eslint-plugin-react-hooks": "^5.1.0",
"eslint-plugin-react-refresh": "^0.4.16",
"i18next": "^24.2.0",
"i18next-browser-languagedetector": "^8.0.2",
"lucide-react": "^0.469.0",
"react": "^19.0.0",
"react-dom": "^19.0.0",
"react-hook-form": "^7.54.1",
"react-i18next": "^15.2.0",
"react-router-dom": "^7.0.2",
"@radix-ui/react-dialog": "^1.1.7",
"@radix-ui/react-toast": "^1.2.7",
"@types/react": "^19.1.2",
"@types/react-dom": "^19.1.2",
"@typescript-eslint/eslint-plugin": "^8.30.1",
"@typescript-eslint/parser": "^8.30.1",
"@vitejs/plugin-react-swc": "^3.9.0",
"eslint": "^9.23.0",
"eslint-plugin-react-hooks": "^5.2.0",
"eslint-plugin-react-refresh": "^0.4.19",
"i18next": "^25.0.0",
"i18next-browser-languagedetector": "^8.0.5",
"lucide-react": "^0.501.0",
"react": "^19.1.0",
"react-dom": "^19.1.0",
"react-hook-form": "^7.55.0",
"react-i18next": "^15.4.1",
"react-router-dom": "^7.5.1",
"socket.io-client": "^4.8.1",
"typescript": "^5.7.2",
"vite": "^6.0.5",
"vite-plugin-static-copy": "^2.2.0",
"typescript": "^5.8.2",
"vite": "^6.3.2",
"vite-plugin-static-copy": "^2.3.1",
"vite-plugin-svgr": "^4.3.0",
"zustand": "^5.0.2"
"zustand": "^5.0.3"
}
}

51
bin/installLocalPlugins.sh Executable file
View file

@ -0,0 +1,51 @@
#!/bin/bash
set -euo pipefail
IFS=$'\n\t'
trim() {
local var="$*"
# remove leading whitespace characters
var="${var#"${var%%[![:space:]]*}"}"
# remove trailing whitespace characters
var="${var%"${var##*[![:space:]]}"}"
printf '%s' "$var"
}
# Move to the Etherpad base directory.
MY_DIR=$(cd "${0%/*}" && pwd -P) || exit 1
cd "${MY_DIR}/.." || exit 1
# Source constants and useful functions
. bin/functions.sh
PNPM_OPTIONS=
if [ ! -z "${NODE_ENV-}" ]; then
if [ "$NODE_ENV" == 'production' ]; then
PNPM_OPTIONS='--prod'
fi
fi
if [ ! -z "${ETHERPAD_LOCAL_PLUGINS_ENV-}" ]; then
if [ "$ETHERPAD_LOCAL_PLUGINS_ENV" == 'production' ]; then
PNPM_OPTIONS='--prod'
elif [ "$ETHERPAD_LOCAL_PLUGINS_ENV" == 'development' ]; then
PNPM_OPTIONS='-D'
fi
fi
if [ ! -z "${ETHERPAD_LOCAL_PLUGINS}" ]; then
readarray -d ' ' plugins <<< "${ETHERPAD_LOCAL_PLUGINS}"
for plugin in "${plugins[@]}"; do
plugin=$(trim "$plugin")
if [ -d "local_plugins/${plugin}" ]; then
echo "Installing plugin: '${plugin}'"
pnpm install -w ${PNPM_OPTIONS:-} "local_plugins/${plugin}/"
else
( echo "Error. Directory 'local_plugins/${plugin}' for local plugin " \
"'${plugin}' missing" >&2 )
exit 1
fi
done
else
echo 'No local plugings to install.'
fi

View file

@ -1,23 +1,23 @@
{
"name": "bin",
"version": "2.2.7",
"version": "2.3.0",
"description": "",
"main": "checkAllPads.js",
"directories": {
"doc": "doc"
},
"dependencies": {
"axios": "^1.7.9",
"axios": "^1.8.4",
"ep_etherpad-lite": "workspace:../src",
"log4js": "^6.9.1",
"semver": "^7.6.3",
"tsx": "^4.19.2",
"semver": "^7.7.1",
"tsx": "^4.19.3",
"ueberdb2": "^5.0.6"
},
"devDependencies": {
"@types/node": "^22.10.2",
"@types/semver": "^7.5.8",
"typescript": "^5.7.2"
"@types/node": "^22.14.1",
"@types/semver": "^7.7.0",
"typescript": "^5.8.2"
},
"scripts": {
"makeDocs": "node --import tsx make_docs.ts",

View file

@ -1,6 +1,6 @@
{
"devDependencies": {
"vitepress": "^1.5.0"
"vitepress": "^1.6.3"
},
"scripts": {
"docs:dev": "vitepress dev",

3
local_plugins/.gitignore vendored Normal file
View file

@ -0,0 +1,3 @@
# ignore everything
*
!.gitignore

View file

@ -50,6 +50,6 @@
"type": "git",
"url": "https://github.com/ether/etherpad-lite.git"
},
"version": "2.2.7",
"version": "2.3.0",
"license": "Apache-2.0"
}

6063
pnpm-lock.yaml generated

File diff suppressed because it is too large Load diff

View file

@ -4,3 +4,7 @@ packages:
- bin
- doc
- ui
onlyBuiltDependencies:
- '@scarf/scarf'
- '@swc/core'
- esbuild

View file

@ -96,7 +96,7 @@
* 3) if you want to use newlines in the default value of a string parameter,
* use "\n" as usual.
*
* "defaultPadText" : "${DEFAULT_PAD_TEXT}Line 1\nLine 2"
* "defaultPadText" : "${DEFAULT_PAD_TEXT:Line 1\nLine 2}"
*/
{
/*

View file

@ -87,7 +87,7 @@
* 3) if you want to use newlines in the default value of a string parameter,
* use "\n" as usual.
*
* "defaultPadText" : "${DEFAULT_PAD_TEXT}Line 1\nLine 2"
* "defaultPadText" : "${DEFAULT_PAD_TEXT:Line 1\nLine 2}"
*/
{
/*

View file

@ -11,6 +11,7 @@
"Predatorix",
"SamTV",
"Sebastian Wallroth",
"Ssgl",
"Thargon",
"Tim.krieger",
"Wikinaut",
@ -85,6 +86,7 @@
"pad.settings.fontType": "Schriftart:",
"pad.settings.fontType.normal": "Normal",
"pad.settings.language": "Sprache:",
"pad.settings.deletePad": "Pad löschen",
"pad.delete.confirm": "Möchtest du dieses Pad wirklich löschen?",
"pad.settings.about": "Über",
"pad.settings.poweredBy": "Betrieben von",

View file

@ -14,10 +14,12 @@
"admin_plugins": "Διαχειριστής πρόσθετων",
"admin_plugins.available": "Διαθέσιμα πρόσθετα",
"admin_plugins.available_not-found": "Δεν βρέθηκαν πρόσθετα.",
"admin_plugins.available_fetching": "Ανακτάται...",
"admin_plugins.available_install.value": "Εγκατάσταση",
"admin_plugins.available_search.placeholder": "Αναζητήστε πρόσθετα για εγκατάσταση",
"admin_plugins.description": "Περιγραφή",
"admin_plugins.installed": "Εγκατεστημένα πρόσθετα",
"admin_plugins.installed_fetching": "Ανάκτηση εγκατεστημένων προσθηκών…",
"admin_plugins.installed_nothing": "Δεν έχετε εγκαταστήσει πρόσθετα ακόμη.",
"admin_plugins.installed_uninstall.value": "Απεγκατάσταση",
"admin_plugins.last-update": "Τελευταία ενημέρωση",
@ -75,6 +77,8 @@
"pad.settings.fontType": "Τύπος γραμματοσειράς:",
"pad.settings.fontType.normal": "Κανονική",
"pad.settings.language": "Γλώσσα:",
"pad.settings.deletePad": "Διαγραφή Pad",
"pad.delete.confirm": "Θέλετε πραγματικά να διαγράψετε αυτό το pad;",
"pad.settings.about": "Σχετικά",
"pad.settings.poweredBy": "Υποστηρίζεται από",
"pad.importExport.import_export": "Εισαγωγή/Εξαγωγή",
@ -89,7 +93,7 @@
"pad.importExport.exportopen": "ODF (Open Document Format)",
"pad.importExport.abiword.innerHTML": "Μπορείτε να εισάγετε απλό κείμενο ή HTML. Για προηγμένες δυνατότητες εισαγωγής παρακαλούμε <a href=\"https://github.com/ether/etherpad-lite/wiki/How-to-enable-importing-and-exporting-different-file-formats-with-AbiWord\">εγκαταστήστε το AbiWord ή το LibreOffice</a>.",
"pad.modals.connected": "Συνδεμένοι.",
"pad.modals.reconnecting": "Επανασύνδεση στο pad σας...",
"pad.modals.reconnecting": "Επανασύνδεση στο pad σας",
"pad.modals.forcereconnect": "Επιβολή επανασύνδεσης",
"pad.modals.reconnecttimer": "Προσπάθεια επανασύνδεσης σε",
"pad.modals.cancel": "Ακύρωση",
@ -111,7 +115,9 @@
"pad.modals.corruptPad.cause": "Αυτό μπορεί να οφείλεται σε ένα λάθος στη ρύθμιση του διακομιστή ή κάποια άλλη απρόβλεπτη συμπεριφορά. Παρακαλώ επικοινωνήστε με τον διαχειριστή της υπηρεσίας.",
"pad.modals.deleted": "Διεγράφη.",
"pad.modals.deleted.explanation": "Αυτό το pad έχει καταργηθεί.",
"pad.modals.rateLimited.explanation": "Στείλατε πάρα πολλά μηνύματα σε αυτό το pad, επομένως σας αποσύνδεσε.",
"pad.modals.rejected.explanation": "Ο διακομιστής απέρριψε ένα μήνυμα που στάλθηκε από το πρόγραμμα περιήγησής σας.",
"pad.modals.rejected.cause": "Ο διακομιστής μπορεί να έχει ενημερωθεί ενώ προβάλλατε το pad ή ίσως υπάρχει σφάλμα στο Etherpad. Δοκιμάστε να φορτώσετε ξανά τη σελίδα.",
"pad.modals.disconnected": "Είστε αποσυνδεδεμένοι.",
"pad.modals.disconnected.explanation": "Χάθηκε η σύνδεση με τον διακομιστή",
"pad.modals.disconnected.cause": "Ο διακομιστής μπορεί να μην είναι διαθέσιμος. Παρακαλούμε ειδοποιήστε τον διαχειριστή της υπηρεσίας εάν εξακολουθεί να συμβαίνει αυτό.",
@ -124,6 +130,7 @@
"pad.chat.loadmessages": "Φόρτωση περισσότερων μηνυμάτων",
"pad.chat.stick.title": "Κρατήστε τη συνομιλία στην οθόνη",
"pad.chat.writeMessage.placeholder": "Γράψτε το μήνυμα σας εδώ",
"timeslider.followContents": "Ακολουθήστε τις ενημερώσεις περιεχομένου του pad",
"timeslider.pageTitle": "{{appTitle}} Χρονοδιάγραμμα",
"timeslider.toolbar.returnbutton": "Επιστροφή στο pad",
"timeslider.toolbar.authors": "Συντάκτες:",

View file

@ -87,6 +87,8 @@
"pad.settings.fontType": "Fonttityyppi:",
"pad.settings.fontType.normal": "normaali",
"pad.settings.language": "Kieli:",
"pad.settings.deletePad": "Poista muistio",
"pad.delete.confirm": "Haluatko todella poistaa tämän muistion?",
"pad.settings.about": "Tietoja",
"pad.settings.poweredBy": "Palvelun mahdollistaa",
"pad.importExport.import_export": "Tuonti/vienti",

View file

@ -72,6 +72,8 @@
"pad.settings.fontType": "Typo de litteras:",
"pad.settings.fontType.normal": "Normal",
"pad.settings.language": "Lingua:",
"pad.settings.deletePad": "Deler pad",
"pad.delete.confirm": "Es tu secur de voler deler iste pad?",
"pad.settings.about": "A proposito",
"pad.settings.poweredBy": "Actionate per",
"pad.importExport.import_export": "Importar/Exportar",

61
src/locales/ln.json Normal file
View file

@ -0,0 +1,61 @@
{
"@metadata": {
"authors": [
"BOKOBA VEROLY"
]
},
"admin.page-title": "Admin Dashboard - Etherpad",
"admin_plugins": "Mokambi ya plug-in",
"admin_plugins.available": "Ba plugins oyo ezali",
"admin_plugins.available_not-found": "Ba plugins ezwamaki te.",
"admin_plugins.available_fetching": "Kozwa...",
"admin_plugins.available_install.value": "Kotya",
"admin_plugins.available_search.placeholder": "Bolukiluki ya ba plugins mpo na kotya",
"admin_plugins.description": "Ndimbola",
"admin_plugins.installed": "Ba plugins oyo etyamaki",
"admin_plugins.installed_fetching": "Kozwa ba plugins oyo etyamaki...",
"admin_plugins.installed_nothing": "Otikaki naino ba plugins te.",
"admin_plugins.installed_uninstall.value": "Kofungola esika",
"admin_plugins.last-update": "Makambo ya sika ya suka",
"admin_plugins.name": "Nkombo na yango",
"admin_plugins.page-title": "Gestionnaire de greffons — Etherpad",
"admin_plugins.version": "Libongoli",
"admin_plugins_info": "Informations de résolution de problème",
"admin_plugins_info.hooks": "Crochets installés",
"admin_plugins_info.hooks_client": "Crochets côté client",
"admin_plugins_info.hooks_server": "Crochets côté serveur",
"admin_plugins_info.parts": "Biteni oyo batye",
"admin_plugins_info.plugins": "Ba plugins oyo etyamaki",
"admin_plugins_info.page-title": "Makambo etali ordinatɛrɛ - Etherpad",
"admin_plugins_info.version": "Libongoli ya Etherpad",
"admin_plugins_info.version_latest": "Libongoli ya sika",
"admin_plugins_info.version_number": "Numero ya version",
"admin_settings": "Ndenge ya kobongisa yango",
"admin_settings.current": "Configuration ya lelo",
"admin_settings.current_example-devel": "Ndakisa modèle ya paramètres ya développement",
"admin_settings.current_example-prod": "Ndakisa modèle ya paramètres ya production",
"admin_settings.current_restart.value": "Bobandi lisusu Etherpad",
"admin_settings.current_save.value": "Bomba ba Paramètres",
"admin_settings.page-title": "Paramètres - Etherpad ya kosala",
"index.newPad": "Pad ya sika",
"index.createOpenPad": "to kosala/kofungola Pad na nkombo:",
"index.openPad": "kofungola Pad oyo ezali na nkombo:",
"pad.toolbar.bold.title": "Makomi ya moindo makasi (Ctrl+B)",
"pad.toolbar.underline.title": "Mokanda ya nse (Ctrl+U)",
"pad.toolbar.strikethrough.title": "Strikethrough (Ctrl+5)",
"pad.toolbar.ol.title": "Liste oyo esɛngami (Ctrl+Shift+N)",
"pad.toolbar.ul.title": "Liste oyo etyami na molongo te (Ctrl+Shift+L)",
"pad.toolbar.indent.title": "Indent (TAB)",
"pad.toolbar.unindent.title": "Mikuwa ya libándá (Shift+TAB)",
"pad.toolbar.undo.title": "Undo (Ctrl+Z)",
"pad.toolbar.redo.title": "Redo (Ctrl+Y)",
"pad.toolbar.clearAuthorship.title": "Langi ya polele ya mokomi (Ctrl+Shift+C)",
"pad.toolbar.import_export.title": "Kokotisa/kobimisa na/na ba formats ya ba fichiers ndenge na ndenge",
"pad.toolbar.timeslider.title": "Mokambi ya ntango",
"pad.toolbar.savedRevision.title": "Kobomba lisusu",
"pad.toolbar.settings.title": "Ndenge ya kobongisa yango",
"pad.toolbar.embed.title": "Kopesa mpe kobakisa yango",
"pad.toolbar.showusers.title": "Tyá bato oyo basalelaka yango",
"pad.colorpicker.save": "Kobikisa",
"pad.colorpicker.cancel": "Kolongola"
}

View file

@ -63,7 +63,7 @@
"pad.colorpicker.save": "Išsaugoti",
"pad.colorpicker.cancel": "Atšaukti",
"pad.loading": "Įkraunama...",
"pad.noCookie": "Slapuko nepavyko rasti. Prašome leisti slapukus interneto naršyklėje!",
"pad.noCookie": "Slapuko rasti nepavyko. Prašome leisti slapukus savo naršyklėje! Jūsų sesija ir nustatymai nebus išsaugoti tarp apsilankymų. Taip gali būti dėl to, kad kai kuriose naršyklėse Etherpad yra įtrauktas į iFrame. Įsitikinkite, kad Etherpad yra tame pačiame padomenyje / domene kaip ir pirminis iFrame.",
"pad.permissionDenied": "Jūs neturite leidimo patekti į šį bloknotą",
"pad.settings.padSettings": "Bloknoto nustatymai",
"pad.settings.myView": "Mano Vaizdas",
@ -75,6 +75,8 @@
"pad.settings.fontType": "Šrifto tipas:",
"pad.settings.fontType.normal": "Normalus",
"pad.settings.language": "Kalba:",
"pad.settings.deletePad": "Ištrinti bloką",
"pad.delete.confirm": "Ar tikrai norite ištrinti šį bloką?",
"pad.settings.about": "Apie",
"pad.settings.poweredBy": "Palaiko",
"pad.importExport.import_export": "Importuoti/Eksportuoti",

View file

@ -9,6 +9,8 @@
"ਪ੍ਰਚਾਰਕ"
]
},
"admin_plugins.available_fetching": "ਲਿਆਉਣਾ ਪਿਆਂ...",
"admin_plugins.available_install.value": "ਜੜੋ",
"admin_plugins.description": "ਵੇਰਵਾ",
"admin_plugins.last-update": "ਆਖਰੀ ਵਾਰ ਨਵਿਆਈਆ ਗਿਆ",
"admin_plugins.name": "ਨਾਂ",
@ -48,7 +50,7 @@
"pad.settings.colorcheck": "ਲੇਖਕੀ ਰੰਗ",
"pad.settings.linenocheck": "ਲਕੀਰ ਨੰਬਰ",
"pad.settings.rtlcheck": "ਸਮੱਗਰੀ ਸੱਜੇ ਤੋਂ ਖੱਬੇ ਪੜ੍ਹਨੀ ਹੈ?",
"pad.settings.fontType": "ਫੋਂਟ ਕਿਸਮ:",
"pad.settings.fontType": "ਅੱਖਰ ਦੀ ਕਿਸਮ:",
"pad.settings.fontType.normal": "ਆਮ",
"pad.settings.language": "ਭਾਸ਼ਾ:",
"pad.settings.about": "ਬਾਬਤ",
@ -126,13 +128,13 @@
"pad.userlist.entername": "ਆਪਣਾ ਨਾਂ ਦਿਉ",
"pad.userlist.unnamed": "ਬੇਨਾਮ",
"pad.editbar.clearcolors": "ਪੂਰੇ ਦਸਾਤਵੇਜ਼ ਉੱਤੇ ਪਰਮਾਣਕਿਤਾ ਰੰਗ ਸਾਫ਼ ਕਰਨੇ ਹਨ?",
"pad.impexp.importbutton": "ਹੁਣੇ ਇੰਪੋਰਟ ਕਰੋ",
"pad.impexp.importbutton": "ਹੁਣੇ ਦਰਾਮਦ ਕਰੋ",
"pad.impexp.importing": "...ਇੰਪੋਰਟ ਕੀਤਾ ਜਾ ਰਿਹਾ ਹੈ",
"pad.impexp.confirmimport": "ਕੋਈ ਫ਼ਾਈਲ ਦਰਾਮਦ ਕਾਰਨ ਨਾਲ਼ ਪੈਡ ਦੀ ਮੌਜੂਦਾ ਲਿਖਤ ਉੱਤੇ ਲਿਖਿਆ ਜਾਵੇਗਾ। ਕੀ ਤੁਸੀਂ ਸੱਚੀਂ ਇਹ ਕਰਨਾ ਚਾਹੁੰਦੇ ਹੋ?",
"pad.impexp.convertFailed": "ਅਸੀਂ ਇਸ ਫ਼ਾਈਲ ਦੀ ਦਰਾਮਦ ਨਹੀਂ ਕਰ ਸਕੇ। ਮਿਹਰਬਾਨੀ ਕਰਕੇ ਕੋਈ ਵੱਖਰੀ ਦਸਤਾਵੇਜ਼ੀ ਰੂਪ-ਰੇਖਾ ਵਰਤੋ ਜਾਂ ਹੱਥੀਂ ਨਕਲ-ਚੇਪੀ ਕਰੋ।",
"pad.impexp.padHasData": "ਅਸੀ ਇਸ ਫਾਈਲ ਨੂੰ ਆਯਾਤ ਨਹੀੰ ਕਰ ਸਕੇ ਕਿਉੰਕਿ ਇਸ ਪੈਡ ਉੱਤੇ ਪਹਿਲਾੰ ਹੀ ਤਬਦੀਲੀਆੰ ਕੀਤੀਆੰ ਜਾ ਚੁਕੀਆੰ ਹਨ, ਕਿਰਪਾ ਕਰਕੇ ਨਵੇੰ ਪੈਡ ਵਿਚ ਆਯਾਤ ਕਰੋ",
"pad.impexp.padHasData": "ਅਸੀ ਇਸ ਫਾਈਲ ਨੂੰ ਦਰਾਮਦ ਨਹੀੰ ਕਰ ਸਕੇ ਕਿਉੰਕਿ ਇਸ ਕਾਗਜ਼ ਉੱਤੇ ਪਹਿਲਾਂ ਹੀ ਤਬਦੀਲੀਆਂ ਕੀਤੀਆਂ ਜਾ ਚੁਕੀਆਂ ਹਨ, ਕਿਰਪਾ ਕਰਕੇ ਨਵੇਂ ਕਾਗਜ਼ ਵਿਚ ਦਰਾਮਦ ਕਰੋ",
"pad.impexp.uploadFailed": "ਅੱਪਲੋਡ ਲਈ ਫੇਲ੍ਹ ਹੈ, ਫੇਰ ਕੋਸ਼ਿਸ਼ ਕਰੋ ਜੀ।",
"pad.impexp.importfailed": "ਇੰਪੋਰਟ ਫੇਲ੍ਹ ਹੈ",
"pad.impexp.importfailed": "ਦਰਾਮਦ ਨਾਕਾਮ",
"pad.impexp.copypaste": "ਕਾਪੀ ਕਰੋ ਚੇਪੋ ਜੀ",
"pad.impexp.exportdisabled": "{{type}} ਫਾਰਮੈਟ ਵਜੋਂ ਬਰਾਮਦ ਕਰਨਾ ਬੰਦ ਹੈ। ਵੇਰਵੇ ਵਾਸਤੇ ਆਪਣੇ ਸਿਸਟਮ ਦੇ ਪਰਬੰਧਕ ਨਾਲ ਸੰਪਰਕ ਕਰੋ।"
}

View file

@ -71,6 +71,8 @@
"pad.settings.rtlcheck": "Ël contnù, dev-lo esse lesù da drita a snistra?",
"pad.settings.fontType": "Sòrt ëd caràter:",
"pad.settings.language": "Lenga:",
"pad.settings.deletePad": "Eliminé ël blochet",
"pad.delete.confirm": "Veul-lo për da bon eliminé cost blochet?",
"pad.settings.about": "A propòsit",
"pad.settings.poweredBy": "Potensià da",
"pad.importExport.import_export": "Amporté/Esporté",

View file

@ -20,9 +20,10 @@
*/
import {MapArrayType} from "../types/MapType";
import { jwtDecode } from "jwt-decode";
const api = require('../db/API');
const padManager = require('../db/PadManager');
const settings = require('../utils/Settings');
import createHTTPError from 'http-errors';
import {Http2ServerRequest} from "node:http2";
import {publicKeyExported} from "../security/OAuth2Provider";
@ -182,8 +183,17 @@ exports.handle = async function (apiVersion: string, functionName: string, field
throw new createHTTPError.Unauthorized('no or wrong API Key');
}
try {
await jwtVerify(req.headers.authorization!.replace("Bearer ", ""), publicKeyExported!, {algorithms: ['RS256'],
requiredClaims: ["admin"]})
const clientIds: string[] = settings.sso.clients?.map((client: {client_id: string}) => client.client_id);
const jwtToCheck = req.headers.authorization.replace("Bearer ", "")
const payload = jwtDecode(jwtToCheck)
// client_credentials
if (clientIds.includes(<string>payload.sub)) {
await jwtVerify(jwtToCheck, publicKeyExported!, {algorithms: ['RS256']})
} else {
// authorization_code
await jwtVerify(jwtToCheck, publicKeyExported!, {algorithms: ['RS256'],
requiredClaims: ["admin"]})
}
} catch (e) {
throw new createHTTPError.Unauthorized('no or wrong OAuth token');
}

View file

@ -5,9 +5,10 @@ import {ErrorCaused} from "../../types/ErrorCaused";
import {QueryType} from "../../types/QueryType";
import {getAvailablePlugins, install, search, uninstall} from "../../../static/js/pluginfw/installer";
import {PackageData} from "../../types/PackageInfo";
import {PackageData, PackageInfo} from "../../types/PackageInfo";
import semver from 'semver';
import log4js from 'log4js';
import {MapArrayType} from "../../types/MapType";
const pluginDefs = require('../../../static/js/pluginfw/plugin_defs');
const logger = log4js.getLogger('adminPlugins');
@ -21,7 +22,13 @@ exports.socketio = (hookName:string, args:ArgsExpressType, cb:Function) => {
if (!isAdmin) return;
const checkPluginForUpdates = async () => {
const results = await getAvailablePlugins(/* maxCacheAge:*/ 60 * 10);
let results: MapArrayType<PackageInfo>
try {
results = await getAvailablePlugins(/* maxCacheAge:*/ 60 * 10);
} catch (error) {
console.error('Error checking for plugin updates:', error);
return [];
}
return Object.keys(pluginDefs.plugins).filter((plugin) => {
if (!results[plugin]) return false;

View file

@ -49,8 +49,21 @@ exports.userCanModify = (padId: string, req: SocketClientRequest) => {
// Exported so that tests can set this to 0 to avoid unnecessary test slowness.
exports.authnFailureDelayMs = 1000;
const staticResources = [
/^\/padbootstrap-[a-zA-Z0-9]+\.min\.js$/,
/^\/timeSliderBootstrap-[a-zA-Z0-9]+\.min\.js$/,
/^\/manifest.json$/
]
const checkAccess = async (req:any, res:any, next: Function) => {
const requireAdmin = req.path.toLowerCase().startsWith('/admin-auth');
for (const staticResource of staticResources) {
if (req.path.match(staticResource)) {
console.log(`Loading [${staticResource}] ${req.path}`);
return next()
}
}
// ///////////////////////////////////////////////////////////////////////////////////////////////
// Step 1: Check the preAuthorize hook for early permit/deny (permit is only allowed for non-admin

View file

@ -30,7 +30,7 @@ const configuration: Configuration = {
if(account === undefined) {
return undefined
}
if (account.is_admin) {
if (account.is_admin ) {
return {
accountId: id,
claims: () => ({

View file

@ -42,6 +42,10 @@ if (settings.dumpOnUncleanExit) {
const addProxyToAxios = (url: URL) => {
axios.defaults.proxy = {
host: url.hostname,
auth: {
username: url.username,
password: url.password,
},
port: Number(url.port),
protocol: url.protocol,
}

View file

@ -32,57 +32,58 @@
"dependencies": {
"@etherpad/express-session": "^1.18.4",
"async": "^3.2.6",
"axios": "^1.7.9",
"axios": "^1.8.4",
"cookie-parser": "^1.4.7",
"cross-env": "^7.0.3",
"cross-spawn": "^7.0.6",
"ejs": "^3.1.10",
"esbuild": "^0.24.1",
"esbuild": "^0.25.2",
"express": "4.21.2",
"express-rate-limit": "^7.5.0",
"fast-deep-equal": "^3.1.3",
"find-root": "1.1.0",
"formidable": "^3.5.2",
"http-errors": "^2.0.0",
"jose": "^5.9.6",
"jose": "^5.10.0",
"js-cookie": "^3.0.5",
"jsdom": "^25.0.1",
"jsdom": "^26.0.0",
"jsonminify": "0.4.2",
"jsonwebtoken": "^9.0.2",
"jwt-decode": "^4.0.0",
"languages4translatewiki": "0.1.3",
"live-plugin-manager": "^1.0.0",
"lodash.clonedeep": "4.5.0",
"log4js": "^6.9.1",
"lru-cache": "^11.0.2",
"lru-cache": "^11.1.0",
"measured-core": "^2.0.0",
"mime-types": "^2.1.35",
"oidc-provider": "^8.6.0",
"mime-types": "^3.0.1",
"oidc-provider": "^8.8.1",
"openapi-backend": "^5.11.1",
"proxy-addr": "^2.0.7",
"rate-limiter-flexible": "^5.0.4",
"rate-limiter-flexible": "^7.0.0",
"rehype": "^13.0.2",
"rehype-minify-whitespace": "^6.0.2",
"resolve": "1.22.10",
"rusty-store-kv": "^1.3.1",
"security": "1.0.0",
"semver": "^7.6.3",
"semver": "^7.7.1",
"socket.io": "^4.8.1",
"socket.io-client": "^4.8.1",
"superagent": "10.1.1",
"superagent": "10.2.0",
"swagger-ui-express": "^5.0.1",
"tinycon": "0.6.8",
"tsx": "4.19.2",
"tsx": "4.19.3",
"ueberdb2": "^5.0.6",
"underscore": "1.13.7",
"unorm": "1.6.0",
"wtfnode": "^0.9.4"
"wtfnode": "^0.10.0"
},
"bin": {
"etherpad-healthcheck": "../bin/etherpad-healthcheck",
"etherpad-lite": "node/server.ts"
},
"devDependencies": {
"@playwright/test": "^1.49.1",
"@playwright/test": "^1.52.0",
"@types/async": "^3.2.24",
"@types/express": "^4.17.21",
"@types/formidable": "^3.4.5",
@ -90,31 +91,31 @@
"@types/jquery": "^3.5.32",
"@types/js-cookie": "^3.0.6",
"@types/jsdom": "^21.1.7",
"@types/jsonwebtoken": "^9.0.7",
"@types/jsonwebtoken": "^9.0.9",
"@types/mime-types": "^2.1.4",
"@types/mocha": "^10.0.9",
"@types/node": "^22.10.2",
"@types/oidc-provider": "^8.5.2",
"@types/semver": "^7.5.8",
"@types/node": "^22.14.1",
"@types/oidc-provider": "^8.8.1",
"@types/semver": "^7.7.0",
"@types/sinon": "^17.0.3",
"@types/supertest": "^6.0.2",
"@types/swagger-ui-express": "^4.1.7",
"@types/swagger-ui-express": "^4.1.8",
"@types/underscore": "^1.13.0",
"@types/whatwg-mimetype": "^3.0.2",
"chokidar": "^4.0.3",
"eslint": "^9.17.0",
"eslint": "^9.23.0",
"eslint-config-etherpad": "^4.0.4",
"etherpad-cli-client": "^3.0.2",
"mocha": "^11.0.1",
"mocha": "^11.1.0",
"mocha-froth": "^0.2.10",
"nodeify": "^1.0.1",
"openapi-schema-validation": "^0.4.2",
"set-cookie-parser": "^2.7.1",
"sinon": "^19.0.2",
"sinon": "^20.0.0",
"split-grid": "^1.0.11",
"supertest": "^7.0.0",
"typescript": "^5.7.2",
"vitest": "^2.1.8"
"supertest": "^7.1.0",
"typescript": "^5.8.2",
"vitest": "^3.1.1"
},
"engines": {
"node": ">=18.18.2",
@ -141,6 +142,6 @@
"debug:socketio": "cross-env DEBUG=socket.io* node --require tsx/cjs node/server.ts",
"test:vitest": "vitest"
},
"version": "2.2.7",
"version": "2.3.0",
"license": "Apache-2.0"
}

View file

@ -186,7 +186,7 @@ const paduserlist = (() => {
const tr = input.closest('tr');
if (tr.length > 0) {
const index = tr.parent().children().index(tr);
if (index >= 0) {
if (index >= 0 && rowsPresent.length > index) {
const userId = rowsPresent[index].data.id;
rowManagerMakeNameEditor($(this), userId);
}

View file

@ -162,23 +162,18 @@ export const install = async (pluginName: string, cb:Function|null = null) => {
export let availablePlugins:MapArrayType<PackageInfo>|null = null;
let cacheTimestamp = 0;
export const getAvailablePlugins = (maxCacheAge: number|false) => {
export const getAvailablePlugins = async (maxCacheAge: number | false) => {
const nowTimestamp = Math.round(Date.now() / 1000);
return new Promise<MapArrayType<PackageInfo>>(async (resolve, reject) => {
// check cache age before making any request
if (availablePlugins && maxCacheAge && (nowTimestamp - cacheTimestamp) <= maxCacheAge) {
return resolve(availablePlugins);
}
// check cache age before making any request
if (availablePlugins && maxCacheAge && (nowTimestamp - cacheTimestamp) <= maxCacheAge) {
return availablePlugins;
}
await axios.get(`${settings.updateServer}/plugins.json`, {headers})
.then((pluginsLoaded:AxiosResponse<MapArrayType<PackageInfo>>) => {
availablePlugins = pluginsLoaded.data;
cacheTimestamp = nowTimestamp;
resolve(availablePlugins);
})
.catch(async (err) => reject(err));
});
const pluginsLoaded: AxiosResponse<MapArrayType<PackageInfo>> = await axios.get(`${settings.updateServer}/plugins.json`, {headers})
availablePlugins = pluginsLoaded.data;
cacheTimestamp = nowTimestamp;
return availablePlugins;
};
@ -211,4 +206,7 @@ export const search = (searchTerm: string, maxCacheAge: number) => getAvailableP
return res;
}
);
).catch((err)=>{
logger.error(`Error searching plugins: ${err}`);
return {} as MapArrayType<PackageInfo>;
});

View file

@ -24,7 +24,7 @@ const connect = (etherpadBaseUrl, namespace = '/', options = {}) => {
let socketOptions = {
path: socketioUrl.pathname,
upgrade: true,
transports: ['websocket'],
transports: ['polling', 'websocket'],
};
socketOptions = Object.assign(options, socketOptions);

View file

@ -11,7 +11,7 @@
},
"devDependencies": {
"ep_etherpad-lite": "workspace:../src",
"typescript": "^5.7.2",
"vite": "^6.0.5"
"typescript": "^5.8.2",
"vite": "^6.3.2"
}
}