Quentin Gliech
ee1a104705
Render the CAPTCHA widgets with React on server-rendered pages
...
Instead of provider-specific markup and script tags in the head, the
captcha.form() template macro now emits a placeholder element carrying
the CAPTCHA configuration in data attributes, on which a new entrypoint
mounts the React Captcha component. The widget still injects its hidden
response field inside the form, so the server-side verification flow is
unchanged.
This is the first use of inline React components to progressively
enhance server-rendered pages.
2026-08-14 15:47:19 +02:00
Quentin Gliech
d0370a6b3f
Simplify the Captcha component back down
...
The previous commit grew a load timeout, script-tag eviction, an error
boundary and a retry button, and swapped the imperative `CaptchaHandle`
ref for an `onValidChange` callback. None of that is needed to mount a
widget on a server-rendered page, and some of it does not work: removing
the `<script>` tag does not stop a load the browser has already started,
and the timeout deletes the global onload callback, so an SDK which is
merely slow ends up calling into nothing.
Go back to exposing validity through a ref, and keep only the
per-provider placeholder heights, which are what stops the page jumping
once the widget renders. Whatever a React form needs to react to the
captcha being solved belongs with that form.
2026-08-14 15:47:19 +02:00
github-actions[bot]
ac35bc7d9b
1.23.0-rc.0
v1.23.0-rc.0
2026-08-11 17:17:51 +00:00
Quentin Gliech
182e08d0cb
Add a React component to render CAPTCHA widgets
...
Adds a reusable Captcha React component along with the type
definitions for the supported providers (hCaptcha, Cloudflare
Turnstile, Google reCAPTCHA). The provider SDKs are lazy-loaded by the
component itself, suspending the tree while they load, and evicted on
failure so a retry can re-attempt the load. The widgets report
solved/expired state through an `onValidChange` callback.
2026-08-10 16:51:37 +02:00
Quentin Gliech
2085f1097f
Rename the WithCaptcha template context field to captcha_config
...
The field name is now more descriptive of what it actually is – the
configuration of the CAPTCHA provider – and aligns with the key used
when passing it to the client-side React form.
2026-08-10 15:01:55 +02:00
Quentin Gliech
ed45464b9f
Load frontend translations with JS dynamic imports rather than fetching as JSON ( #5915 )
2026-08-10 15:01:36 +02:00
Quentin Gliech
8892cc7eb8
Remove the GraphQL playground ( #5914 )
2026-08-10 14:57:59 +02:00
Quentin Gliech
cacc757cef
Emit a modulepreload for dynamically imported chunks in include_asset
...
Now that the translations are lazily imported JS chunks rather than plain JSON
assets, `include_asset('locales/<lang>.json')` resolves to a manifest entry
flagged `isDynamicEntry`. Those must not be evaluated eagerly with a `<script>`
tag, so emit the same `modulepreload` hint we already use for imported chunks,
integrity included, and drop the now-unreachable top-level JSON preload.
2026-08-07 17:59:27 +02:00
Quentin Gliech
5d7a66557a
Load frontend translations with dynamic imports instead of fetch
...
`import.meta.glob` now generates lazy loaders for the locale JSON modules
rather than hashed asset URLs, so `Backend.read` awaits an `import()` instead
of doing a `fetch`. This puts translation loading under the `script-src` CSP
directive instead of `connect-src`, and lets the browser preload them as
modules, which the `<link rel="preload" as="fetch">` hint never really did
because of the credentials-mode mismatch.
Dynamic imports are cached for the lifetime of the page, so locale
hot-reloading now triggers a full page reload in dev instead of asking i18next
to re-read its resources.
2026-08-07 17:59:26 +02:00
Quentin Gliech
c3b5fa3b0c
Remove the GraphQL playground
...
The interactive playground page and its route/config option are gone; the GraphQL API itself (POST /graphql) is unaffected. External GraphQL usage is deprecated anyway in favour of the REST admin API.
2026-08-07 12:26:42 +02:00
Quentin Gliech
28ffb064bf
Move the Swagger UI OAuth2 redirect script to a frontend entrypoint
2026-08-07 12:24:36 +02:00
Quentin Gliech
ded9de23db
Move the form_post auto-submit script to a frontend entrypoint
2026-08-07 10:25:04 +02:00
Quentin Gliech
682b8d26d3
build(deps): bump the sentry group across 1 directory with 3 updates ( #5894 )
2026-08-07 10:23:54 +02:00
Quentin Gliech
28338969e1
build(deps-dev): bump storybook from 10.4.6 to 10.5.3 in the storybook group across 1 directory ( #5897 )
2026-08-07 10:23:10 +02:00
Quentin Gliech
2df5d84439
build(deps): bump EmbarkStudios/cargo-deny-action from 2.0.20 to 2.1.1 ( #5891 )
2026-08-07 10:19:05 +02:00
Quentin Gliech
146b7fe379
Update the Sentry transport to use the new options API
2026-08-07 10:07:38 +02:00
dependabot[bot]
e7cb472bc8
build(deps): bump EmbarkStudios/cargo-deny-action from 2.0.20 to 2.1.1
...
Bumps [EmbarkStudios/cargo-deny-action](https://github.com/embarkstudios/cargo-deny-action ) from 2.0.20 to 2.1.1.
- [Release notes](https://github.com/embarkstudios/cargo-deny-action/releases )
- [Commits](https://github.com/embarkstudios/cargo-deny-action/compare/bb137d7af7e4fb67e5f82a49c4fce4fad40782fe...3c6349835b2b7b196a839186cb8b78e02f7b5f25 )
---
updated-dependencies:
- dependency-name: EmbarkStudios/cargo-deny-action
dependency-version: 2.1.1
dependency-type: direct:production
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com >
2026-08-07 08:03:01 +00:00
dependabot[bot]
bc2587bd2e
build(deps-dev): bump storybook
...
Bumps the storybook group with 1 update in the / directory: [storybook](https://github.com/storybookjs/storybook/tree/HEAD/code/core ).
Updates `storybook` from 10.4.6 to 10.5.3
- [Release notes](https://github.com/storybookjs/storybook/releases )
- [Changelog](https://github.com/storybookjs/storybook/blob/next/CHANGELOG.md )
- [Commits](https://github.com/storybookjs/storybook/commits/v10.5.3/code/core )
---
updated-dependencies:
- dependency-name: storybook
dependency-version: 10.5.2
dependency-type: direct:development
update-type: version-update:semver-minor
dependency-group: storybook
...
Signed-off-by: dependabot[bot] <support@github.com >
2026-08-07 07:59:31 +00:00
Quentin Gliech
63cb828dea
build(deps): bump the tanstack-router group across 1 directory with 2 updates ( #5901 )
2026-08-07 09:55:13 +02:00
Quentin Gliech
300ede9fe8
Regenerate src/routeTree.gen.ts
2026-08-07 09:39:09 +02:00
Kai A. Hiller
5647b8a8a4
Update schema
2026-08-07 02:08:51 +02:00
dependabot[bot]
6ed06dde73
build(deps): bump the tanstack-router group across 1 directory with 2 updates
...
Bumps the tanstack-router group with 2 updates in the / directory: [@tanstack/react-router](https://github.com/TanStack/router/tree/HEAD/packages/react-router ) and [@tanstack/router-plugin](https://github.com/TanStack/router/tree/HEAD/packages/router-plugin ).
Updates `@tanstack/react-router` from 1.170.17 to 1.170.18
- [Release notes](https://github.com/TanStack/router/releases )
- [Changelog](https://github.com/TanStack/router/blob/main/packages/react-router/CHANGELOG.md )
- [Commits](https://github.com/TanStack/router/commits/@tanstack/react-router@1.170.18/packages/react-router )
Updates `@tanstack/router-plugin` from 1.168.19 to 1.168.23
- [Release notes](https://github.com/TanStack/router/releases )
- [Changelog](https://github.com/TanStack/router/blob/main/packages/router-plugin/CHANGELOG.md )
- [Commits](https://github.com/TanStack/router/commits/@tanstack/router-plugin@1.168.23/packages/router-plugin )
---
updated-dependencies:
- dependency-name: "@tanstack/react-router"
dependency-version: 1.170.18
dependency-type: direct:production
update-type: version-update:semver-patch
dependency-group: tanstack-router
- dependency-name: "@tanstack/router-plugin"
dependency-version: 1.168.22
dependency-type: direct:development
update-type: version-update:semver-patch
dependency-group: tanstack-router
...
Signed-off-by: dependabot[bot] <support@github.com >
2026-08-06 19:51:31 +00:00
Kai A. Hiller
ecc3fc54a6
Merge error docs for existing and reserved users
2026-08-06 19:22:50 +02:00
Quentin Gliech
205d31d109
Revert "build(deps-dev): bump the graphql-codegen group" ( #5909 )
2026-08-06 18:44:06 +02:00
Quentin Gliech
e58527d807
Revert "build(deps-dev): bump the graphql-codegen group across 1 directory with 2 updates"
...
This reverts commit dca32d3871 .
2026-08-06 17:03:04 +02:00
Quentin Gliech
c8609fbce5
build(deps-dev): bump the graphql-codegen group with 2 updates ( #5900 )
2026-08-05 13:48:20 +02:00
Quentin Gliech
a5800983b8
build(deps): bump softprops/action-gh-release from 3.0.0 to 3.0.2 ( #5888 )
2026-08-05 13:37:38 +02:00
Quentin Gliech
ee0db1548a
build(deps): bump the i18next group with 3 updates ( #5899 )
2026-08-05 13:37:14 +02:00
dependabot[bot]
dca32d3871
build(deps-dev): bump the graphql-codegen group across 1 directory with 2 updates
...
Bumps the graphql-codegen group with 2 updates in the / directory: [@graphql-codegen/cli](https://github.com/dotansimha/graphql-code-generator/tree/HEAD/packages/graphql-codegen-cli ) and [@graphql-codegen/client-preset](https://github.com/dotansimha/graphql-code-generator/tree/HEAD/packages/presets/client ).
Updates `@graphql-codegen/cli` from 7.1.3 to 7.2.0
- [Release notes](https://github.com/dotansimha/graphql-code-generator/releases )
- [Changelog](https://github.com/dotansimha/graphql-code-generator/blob/master/packages/graphql-codegen-cli/CHANGELOG.md )
- [Commits](https://github.com/dotansimha/graphql-code-generator/commits/@graphql-codegen/cli@7.2.0/packages/graphql-codegen-cli )
Updates `@graphql-codegen/client-preset` from 6.0.1 to 6.1.0
- [Release notes](https://github.com/dotansimha/graphql-code-generator/releases )
- [Changelog](https://github.com/dotansimha/graphql-code-generator/blob/master/packages/presets/client/CHANGELOG.md )
- [Commits](https://github.com/dotansimha/graphql-code-generator/commits/@graphql-codegen/client-preset@6.1.0/packages/presets/client )
---
updated-dependencies:
- dependency-name: "@graphql-codegen/cli"
dependency-version: 7.2.0
dependency-type: direct:development
update-type: version-update:semver-minor
dependency-group: graphql-codegen
- dependency-name: "@graphql-codegen/client-preset"
dependency-version: 6.1.0
dependency-type: direct:development
update-type: version-update:semver-minor
dependency-group: graphql-codegen
...
Signed-off-by: dependabot[bot] <support@github.com >
2026-08-05 11:34:26 +00:00
dependabot[bot]
93977aa119
build(deps): bump the sentry group across 1 directory with 3 updates
...
Bumps the sentry group with 1 update in the / directory: [sentry](https://github.com/getsentry/sentry-rust ).
Updates `sentry` from 0.48.2 to 0.48.5
- [Release notes](https://github.com/getsentry/sentry-rust/releases )
- [Changelog](https://github.com/getsentry/sentry-rust/blob/master/CHANGELOG.md )
- [Commits](https://github.com/getsentry/sentry-rust/compare/0.48.2...0.48.5 )
Updates `sentry-tower` from 0.48.2 to 0.48.5
- [Release notes](https://github.com/getsentry/sentry-rust/releases )
- [Changelog](https://github.com/getsentry/sentry-rust/blob/master/CHANGELOG.md )
- [Commits](https://github.com/getsentry/sentry-rust/compare/0.48.2...0.48.5 )
Updates `sentry-tracing` from 0.48.2 to 0.48.5
- [Release notes](https://github.com/getsentry/sentry-rust/releases )
- [Changelog](https://github.com/getsentry/sentry-rust/blob/master/CHANGELOG.md )
- [Commits](https://github.com/getsentry/sentry-rust/compare/0.48.2...0.48.5 )
---
updated-dependencies:
- dependency-name: sentry
dependency-version: 0.48.5
dependency-type: direct:production
update-type: version-update:semver-patch
dependency-group: sentry
- dependency-name: sentry-tower
dependency-version: 0.48.5
dependency-type: direct:production
update-type: version-update:semver-patch
dependency-group: sentry
- dependency-name: sentry-tracing
dependency-version: 0.48.5
dependency-type: direct:production
update-type: version-update:semver-patch
dependency-group: sentry
...
Signed-off-by: dependabot[bot] <support@github.com >
2026-08-05 11:31:54 +00:00
Quentin Gliech
396f4419ca
build(deps): bump opentelemetry-semantic-conventions from 0.32.0 to 0.32.1 in the opentelemetry group ( #5892 )
2026-08-05 13:31:09 +02:00
Quentin Gliech
5258872dad
build(deps-dev): bump the vite group across 1 directory with 2 updates ( #5906 )
2026-08-05 13:30:32 +02:00
Quentin Gliech
b58efe2a73
build(deps): bump docker/login-action from 4.2.0 to 4.4.0 ( #5889 )
2026-08-05 13:28:31 +02:00
Quentin Gliech
0a6564d4cd
build(deps): bump socket2 from 0.6.4 to 0.6.5 ( #5895 )
2026-08-05 13:28:08 +02:00
Quentin Gliech
9dcd8ad254
build(deps): bump actions/setup-node from 6.4.0 to 7.0.0 ( #5890 )
2026-08-05 13:25:16 +02:00
Quentin Gliech
5ede8ad3ab
build(deps): bump docker/metadata-action from 6.1.0 to 6.2.0 ( #5887 )
2026-08-05 13:24:00 +02:00
dependabot[bot]
c9e44c8bb8
build(deps): bump the i18next group across 1 directory with 3 updates
...
Bumps the i18next group with 3 updates in the / directory: [i18next](https://github.com/i18next/i18next ), [react-i18next](https://github.com/i18next/react-i18next ) and [i18next-cli](https://github.com/i18next/i18next-cli ).
Updates `i18next` from 26.3.4 to 26.3.6
- [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/v26.3.4...v26.3.6 )
Updates `react-i18next` from 17.0.8 to 17.0.10
- [Changelog](https://github.com/i18next/react-i18next/blob/master/CHANGELOG.md )
- [Commits](https://github.com/i18next/react-i18next/compare/v17.0.8...v17.0.10 )
Updates `i18next-cli` from 1.65.0 to 1.66.2
- [Changelog](https://github.com/i18next/i18next-cli/blob/main/CHANGELOG.md )
- [Commits](https://github.com/i18next/i18next-cli/compare/v1.65.0...v1.66.2 )
---
updated-dependencies:
- dependency-name: i18next
dependency-version: 26.3.6
dependency-type: direct:production
update-type: version-update:semver-patch
dependency-group: i18next
- dependency-name: i18next-cli
dependency-version: 1.66.2
dependency-type: direct:development
update-type: version-update:semver-minor
dependency-group: i18next
- dependency-name: react-i18next
dependency-version: 17.0.10
dependency-type: direct:production
update-type: version-update:semver-patch
dependency-group: i18next
...
Signed-off-by: dependabot[bot] <support@github.com >
2026-08-05 11:12:26 +00:00
dependabot[bot]
3c1c0705b8
build(deps-dev): bump the vite group across 1 directory with 2 updates
...
Bumps the vite group with 2 updates in the / directory: [@vitejs/plugin-react](https://github.com/vitejs/vite-plugin-react/tree/HEAD/packages/plugin-react ) and [vite](https://github.com/vitejs/vite/tree/HEAD/packages/vite ).
Updates `@vitejs/plugin-react` from 6.0.3 to 6.0.4
- [Release notes](https://github.com/vitejs/vite-plugin-react/releases )
- [Changelog](https://github.com/vitejs/vite-plugin-react/blob/main/packages/plugin-react/CHANGELOG.md )
- [Commits](https://github.com/vitejs/vite-plugin-react/commits/plugin-react@6.0.4/packages/plugin-react )
Updates `vite` from 8.1.3 to 8.1.5
- [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/v8.1.5/packages/vite )
---
updated-dependencies:
- dependency-name: "@vitejs/plugin-react"
dependency-version: 6.0.4
dependency-type: direct:development
update-type: version-update:semver-patch
dependency-group: vite
- dependency-name: vite
dependency-version: 8.1.5
dependency-type: direct:development
update-type: version-update:semver-patch
dependency-group: vite
...
Signed-off-by: dependabot[bot] <support@github.com >
2026-08-05 11:11:26 +00:00
dependabot[bot]
0949eb68f0
build(deps): bump opentelemetry-semantic-conventions
...
Bumps the opentelemetry group with 1 update in the / directory: [opentelemetry-semantic-conventions](https://github.com/open-telemetry/opentelemetry-rust ).
Updates `opentelemetry-semantic-conventions` from 0.32.0 to 0.32.1
- [Release notes](https://github.com/open-telemetry/opentelemetry-rust/releases )
- [Changelog](https://github.com/open-telemetry/opentelemetry-rust/blob/main/docs/release_0.32.md )
- [Commits](https://github.com/open-telemetry/opentelemetry-rust/compare/opentelemetry-semantic-conventions-0.32.0...opentelemetry-semantic-conventions-0.32.1 )
---
updated-dependencies:
- dependency-name: opentelemetry-semantic-conventions
dependency-version: 0.32.1
dependency-type: direct:production
update-type: version-update:semver-patch
dependency-group: opentelemetry
...
Signed-off-by: dependabot[bot] <support@github.com >
2026-08-05 11:09:55 +00:00
dependabot[bot]
a288db8d80
build(deps): bump socket2 from 0.6.4 to 0.6.5
...
Bumps [socket2](https://github.com/rust-lang/socket2 ) from 0.6.4 to 0.6.5.
- [Release notes](https://github.com/rust-lang/socket2/releases )
- [Changelog](https://github.com/rust-lang/socket2/blob/master/CHANGELOG.md )
- [Commits](https://github.com/rust-lang/socket2/commits/v0.6.5 )
---
updated-dependencies:
- dependency-name: socket2
dependency-version: 0.6.5
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com >
2026-08-05 11:09:45 +00:00
Quentin Gliech
7084ae1752
build(deps): bump clap from 4.5.50 to 4.5.60 ( #5896 )
2026-08-05 13:08:25 +02:00
dependabot[bot]
54d8cfcc45
build(deps): bump actions/setup-node from 6.4.0 to 7.0.0
...
Bumps [actions/setup-node](https://github.com/actions/setup-node ) from 6.4.0 to 7.0.0.
- [Release notes](https://github.com/actions/setup-node/releases )
- [Commits](https://github.com/actions/setup-node/compare/v6.4.0...v7 )
---
updated-dependencies:
- dependency-name: actions/setup-node
dependency-version: 7.0.0
dependency-type: direct:production
update-type: version-update:semver-major
...
Signed-off-by: dependabot[bot] <support@github.com >
2026-08-05 11:08:05 +00:00
dependabot[bot]
e47779f8ef
build(deps): bump docker/login-action from 4.2.0 to 4.4.0
...
Bumps [docker/login-action](https://github.com/docker/login-action ) from 4.2.0 to 4.4.0.
- [Release notes](https://github.com/docker/login-action/releases )
- [Commits](https://github.com/docker/login-action/compare/650006c6eb7dba73a995cc03b0b2d7f5ca915bee...af1e73f918a031802d376d3c8bbc3fe56130a9b0 )
---
updated-dependencies:
- dependency-name: docker/login-action
dependency-version: 4.4.0
dependency-type: direct:production
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com >
2026-08-05 11:07:36 +00:00
dependabot[bot]
cbf91149d5
build(deps): bump softprops/action-gh-release from 3.0.0 to 3.0.2
...
Bumps [softprops/action-gh-release](https://github.com/softprops/action-gh-release ) from 3.0.0 to 3.0.2.
- [Release notes](https://github.com/softprops/action-gh-release/releases )
- [Changelog](https://github.com/softprops/action-gh-release/blob/master/CHANGELOG.md )
- [Commits](https://github.com/softprops/action-gh-release/compare/b4309332981a82ec1c5618f44dd2e27cc8bfbfda...3d0d9888cb7fd7b750713d6e236d1fcb99157228 )
---
updated-dependencies:
- dependency-name: softprops/action-gh-release
dependency-version: 3.0.2
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com >
2026-08-05 11:07:17 +00:00
dependabot[bot]
6e77139c37
build(deps): bump docker/metadata-action from 6.1.0 to 6.2.0
...
Bumps [docker/metadata-action](https://github.com/docker/metadata-action ) from 6.1.0 to 6.2.0.
- [Release notes](https://github.com/docker/metadata-action/releases )
- [Commits](https://github.com/docker/metadata-action/compare/80c7e94dd9b9319bd5eb7a0e0fe9291e23a2a2e9...dc802804100637a589fabce1cb79ff13a1411302 )
---
updated-dependencies:
- dependency-name: docker/metadata-action
dependency-version: 6.2.0
dependency-type: direct:production
update-type: version-update:semver-minor
...
Signed-off-by: dependabot[bot] <support@github.com >
2026-08-05 11:07:07 +00:00
Quentin Gliech
2a2741ee00
Read javascript entrypoints configuration from data attributes ( #5886 )
2026-08-05 13:05:37 +02:00
dependabot[bot]
313ba9f72f
build(deps): bump clap from 4.5.50 to 4.5.60
...
Bumps [clap](https://github.com/clap-rs/clap ) from 4.5.50 to 4.5.60.
- [Release notes](https://github.com/clap-rs/clap/releases )
- [Changelog](https://github.com/clap-rs/clap/blob/master/CHANGELOG.md )
- [Commits](https://github.com/clap-rs/clap/compare/clap_complete-v4.5.50...clap_complete-v4.5.60 )
---
updated-dependencies:
- dependency-name: clap
dependency-version: 4.5.60
dependency-type: direct:production
update-type: version-update:semver-patch
...
Signed-off-by: dependabot[bot] <support@github.com >
2026-08-04 19:07:05 +00:00
matrixbot
6193fc3569
Automatic merge back to main ( #5905 )
2026-08-04 21:04:07 +02:00
github-actions[bot]
f28451c4e5
1.22.0
v1.22.0
2026-08-04 18:47:51 +00:00
matrixbot
0ed1f96c27
Translations updates for v1.22 ( #5904 )
2026-08-04 20:24:11 +02:00