Repository navigation
Release v1.27.0
v1.27.0
Changelog
Auth pages on the UiKit 2.2 page contract (REQ-UI-003): every security page on the auth scaffold and guest layout, reset-password field order fixed, override-friendly QR login page, translated validation messages; deprecated templates.* / css.* keys mapped to web_ui.* / UiKit theme. See UPGRADING.
UiKit 2.2 page contract (REQ-UI-003, phase 2): every auth page is the UiKit auth scaffold on the host's guest layout.
See UPGRADING — Template contract and TEMPLATES.md.
Added
- Page contract: requires
nowo-tech/ui-kit-bundle^2.2. Login, register, reset request / password / code, magic
link request / confirm, QR challenge and QR approve extend@NowoUiKit/page/auth.html.twig(through
security/_auth_page.html.twig) onnowo_ui_kit.layouts.guest; controllers build a UiKitAuthPage
(View\AuthPageFactory: heading, intro, brand, security error, form, submit label, footer links). - Per-profile
web_uinode:layout_template(null = UiKit guest layout),templates.<page>(now also
qr_login_show/qr_login_approve),form_themes,brand,qr_login.stimulus_controller. - QR challenge page: state / URL / timing data attributes, translated state texts, regions and blocks (status,
countdown, continue, retry), optional Stimulus values and targets, bundled CSP-safe poller
js/nowo-auth-kit-qr-login.js(countdown, status, redirect on approval,nowo-auth-kit:qr-stateevent); no-JS
Continue and "Generate a new code". validatorscatalogues (7 locales) for the form constraint messages; translations for the QR states.- AuthKit PasswordToggle form theme on the UiKit
inputslot (@NowoAuthKitBundle/form/password_toggle_widget.html.twig). - Page contract test (
Tests\Integration\Contract\PageContractTest) and real-kernel tests of the login (CSRF and
credential errors), password reset by link / code and QR pages.
Changed
- Default form themes: UiKit form theme (
input,check,check_inputslots) + the AuthKit PasswordToggle theme
when NowoPasswordToggleBundle is registered (it was the PasswordToggle theme only, also when the bundle was not
registered). The seeded FormKitauth_kitprofile no longer adds Bootstrap classes. - Embedded widget (
auth_kit_dropdown()): native<details>disclosure and UiKit theme slots / tabs runtime instead
of Bootstrap dropdown / tab markup and JavaScript. - Widget scripts (SlideToConfirm, Device Intelligence, OTP input) carry the CSP nonce and load on
nowo_ui_scripts;
stylesheets onnowo_ui_styles. The PasswordToggle stylesheet loads only when that bundle is registered.
Fixed
- New-password pages rendered the confirmation field (and CSRF token) after the submit button; every field now
renders before the actions. - Validation messages (
reset.password.mismatch,*.required, …) were printed as raw keys (novalidators
catalogue); the invalid reset code error is translated; form-level errors (invalid CSRF token) are shown. - SlideToConfirm assets no longer break the pages when the package is installed but not enabled.
Deprecated
profiles.<p>.templates.layout→web_ui.layout_template;templates.<page>→web_ui.templates.<page>;
templates.form_theme→web_ui.form_themes(mapped;templates.*stays readable as a resolved mirror).css.button_class/css.secondary_button_class→nowo_ui_kit.theme.bundles.NowoAuthKitBundle.classes.btn_primary
/btn_secondary(bridged automatically); Twig globalsnowo_auth_kit_button_class/
nowo_auth_kit_secondary_button_class.@NowoAuthKitBundle/layout.html.twig(now a bridge to the UiKit guest layout for 1.x page templates); blocks
auth_panel_heading,auth_brand.
Full Changelog: v1.26.0...v1.27.0