web/a11y: Modals, Command Palette (Merge branch)#17812
Conversation
✅ Deploy Preview for authentik-docs ready!
To edit notification comments on pull requests, go to your Netlify project configuration. |
✅ Deploy Preview for authentik-integrations ready!
To edit notification comments on pull requests, go to your Netlify project configuration. |
✅ Deploy Preview for authentik-storybook ready!
To edit notification comments on pull requests, go to your Netlify project configuration. |
Codecov Report✅ All modified and coverable lines are covered by tests. Additional details and impacted files@@ Coverage Diff @@
## main #17812 +/- ##
=======================================
Coverage 92.81% 92.82%
=======================================
Files 1000 1000
Lines 56589 56589
Branches 425 425
=======================================
+ Hits 52525 52526 +1
+ Misses 4064 4063 -1
Flags with carried forward coverage won't be shown. Click here to find out more. ☔ View full report in Codecov by Sentry. |
c7e2d9f to
9d7ce51
Compare
|
authentik PR Installation instructions Instructions for docker-composeAdd the following block to your AUTHENTIK_IMAGE=ghcr.io/goauthentik/dev-server
AUTHENTIK_TAG=gh-170904cf1ac2e4e623283b2160b4512bf867caf5
AUTHENTIK_OUTPOSTS__CONTAINER_IMAGE_BASE=ghcr.io/goauthentik/dev-%(type)s:gh-%(build_hash)sAfterwards, run the upgrade commands from the latest release notes. Instructions for KubernetesAdd the following block to your authentik:
outposts:
container_image_base: ghcr.io/goauthentik/dev-%(type)s:gh-%(build_hash)s
global:
image:
repository: ghcr.io/goauthentik/dev-server
tag: gh-170904cf1ac2e4e623283b2160b4512bf867caf5Afterwards, run the upgrade commands from the latest release notes. |
kensternberg-authentik
left a comment
There was a problem hiding this comment.
Overall, this looks good, and I've run it to see that it doesn't seem broken. :-)
9d7ce51 to
2d6dbd3
Compare
b604703 to
978e587
Compare
739e34a to
95aa93b
Compare
cec7b36 to
6176aef
Compare
* main: (42 commits) endpoints/connectors: fix enabled flag not respected (#21144) web: bump vite from 7.3.1 to 8.0.2 in /web (#21109) website/docs: add a single page about our user interface, document Consent stage (#20533) website: bump the build group across 1 directory with 9 updates (#21127) web: bump knip from 5.88.1 to 6.0.5 in /web (#21129) core: bump drf-spectacular from 0.28.0 to 0.29.0 (#19420) packages/client-go: init (#21139) providers/proxy: Add a default maxResponseBodySize to Traefik Middleware (#21111) core: bump library/nginx from `dec7a90` to `7150b3a` in /website (#21137) core: bump gunicorn from 25.1.0 to 25.2.0 (#21134) core: bump github.com/getsentry/sentry-go from 0.43.0 to 0.44.1 (#21122) core: bump astral-sh/uv from 0.11.0 to 0.11.1 in /lifecycle/container (#21135) ci: bump taiki-e/install-action from 2.69.8 to 2.69.9 in /.github/actions/setup (#21136) web/a11y: Modals, Command Palette (Merge branch) (#17812) website/docs: document file picker values (#20994) packages/client-rust: init (#21117) core: bump sentry-sdk from 2.55.0 to 2.56.0 (#21124) events: add helper to log deprecation configuration_warning message (#21115) core: bump djangorestframework from 3.17.0 to 3.17.1 (#21126) core: bump twilio from 9.10.3 to 9.10.4 (#21123) ...
* main: (42 commits) endpoints/connectors: fix enabled flag not respected (#21144) web: bump vite from 7.3.1 to 8.0.2 in /web (#21109) website/docs: add a single page about our user interface, document Consent stage (#20533) website: bump the build group across 1 directory with 9 updates (#21127) web: bump knip from 5.88.1 to 6.0.5 in /web (#21129) core: bump drf-spectacular from 0.28.0 to 0.29.0 (#19420) packages/client-go: init (#21139) providers/proxy: Add a default maxResponseBodySize to Traefik Middleware (#21111) core: bump library/nginx from `dec7a90` to `7150b3a` in /website (#21137) core: bump gunicorn from 25.1.0 to 25.2.0 (#21134) core: bump github.com/getsentry/sentry-go from 0.43.0 to 0.44.1 (#21122) core: bump astral-sh/uv from 0.11.0 to 0.11.1 in /lifecycle/container (#21135) ci: bump taiki-e/install-action from 2.69.8 to 2.69.9 in /.github/actions/setup (#21136) web/a11y: Modals, Command Palette (Merge branch) (#17812) website/docs: document file picker values (#20994) packages/client-rust: init (#21117) core: bump sentry-sdk from 2.55.0 to 2.56.0 (#21124) events: add helper to log deprecation configuration_warning message (#21115) core: bump djangorestframework from 3.17.0 to 3.17.1 (#21126) core: bump twilio from 9.10.3 to 9.10.4 (#21123) ...
This PR is a merge branch for
<ak-modal>, a custom element built on the native<dialog>element, with support for lazy-loading and screen-reader compatibility.Given our heavy use of modals in the UI, the new component is fully backwards compatible with existing implementations. To illustrate the migration path, this PR applies
<ak-modal>to a few examples: About authentik, Create Application, and Edit Application.renderModalutility function to trigger a modal from an event listener, with the same lazy-loading behaviour.Details
Introduces
<ak-modal>, a new custom element built on the native<dialog>element, with support for lazy-loading, screen-reader accessibility (delegatesFocus, proper ARIA labeling), and arenderModal/modalInvokerutility API for programmatic and declarative usage.<ak-modal>, replacing the legacyTableModalandModalButton-based patterns. Affected areas include: application create/edit, user management (password reset, impersonation, bulk revoke, activate/deactivate), group/role member selection, provider selection, permission selection, RAC launch endpoint, policy bindings, About authentik, and more.TableModal,ProviderSelectModal,PermissionSelectModal,GroupSelectModal, and the oldModal/modal.cssstyles. Replaces them with leaner form-based equivalents (ProviderSelectForm,PermissionSelectForm,UserGroupSelectForm,MemberSelectForm).serialization.tsmodule and validation error reporting intoerrors.ts, simplifyingForm.ts.<ak-command-palette>) with admin and user variants, including keyboard navigation and search.WizardStep.ts,ak-wizard-steps.ts) and the application wizard to align with the new modal system, cleaning up step types and provider form composition.policies/utils.ts,sources/utils.ts,events/ObjectChangelog.ts,events/UserEvents.tsintoadmin/orcommon/).Migration highlights
TableModalsubclass with embedded tablerenderModal()/modalInvokerdirective with a plain form*SelectModalextendingTableModal*SelectFormrendered inside<ak-modal>renderModal(MyForm, init)returns aPromise<void>Misc changes
TableModalis removed — any downstream subclasses must migrate to<ak-modal>+ form pattern.AkControlElementrenamed toControlElement.