Added UI KIT changes for Identity server version 11.4.0 - #288
Conversation
Merge/11.3/dev/2026 06 05
…k-self-contained IS-11407 Make haapi-react-sdk self-contained (relocate SDK-owned files)
Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Merge/11.3/dev/2026 06 10
…tion-react-portal IS-11428 Render HAAPI error notification via React portal
IS-11431 Add meaningful alt text to Logo image
Move the SDK out of the app into a standalone workspace at src/haapi-react-sdk with its own lint/test/typecheck tooling (no build). The app consumes it transparently via the npm workspace symlink — no Vite alias or tsconfig paths. CI gains SDK steps + a path trigger. App setupTests slimmed (dialog mocks now SDK-only). 312 tests preserved. Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
…viewer-hashes IS-9816: updates previewer hashes with the 1.3 values
Merge/11.3/dev/2026 06 12
…a-uri Fix/dev/is 7660 csp img src data uri
…_path-stylesheet-link-to-api-driven-ui-template IS-11474 Add theme css path stylesheet link to API driven UI and Self Service Portal templates
…encies IS-11486 Update dependencies
The theme_css_path variable (set in settings-defaults.vm, default /assets/css/curity-theme.css) already renders the curity-theme.css stylesheet link via the #if ($theme_css_path) block, so the hardcoded link produced a duplicate stylesheet on every SSP page. Removing it also makes the SSP respect $_staticResourceRootPath and a configured theme css path, consistent with core fragments/css.vm and the api-driven-ui template. Co-Authored-By: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
…te-curity-theme-css-link IS-11474 Remove redundant curity-theme.css link from SSP loader template
…es it Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
…ct-haapi-react-sdk-workspace
…react-sdk-workspace IS-11406 Extract haapi-react-sdk into its own npm workspace library
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
Co-authored-by: Copilot Autofix powered by AI <175728472+Copilot@users.noreply.github.com>
…nsent IS-6007 Add skeleton of support for the logos section in HAAPI user c…
…loyment-guide IS-11604 Fix SSP app README deployment guide (asset hash stripping, .env handling)
Improves the BankID failure flow, avoiding the redundant step.
…e-flow IS-11632 Auto-follow redirect/continue action in failed polling steps.
Merge/11 4/dev/2026 08 05
Added UI KIT Previewer for Identity server version 11.4.0
Version/11.4
There was a problem hiding this comment.
Pull request overview
This PR updates the UI Kit assets/templates and HAAPI React components to align with Identity Server 11.4.0, including new runtime theming/cache-busting behavior and expanded HAAPI Stepper functionality (BankID UX, user-consent view, WebAuthn registration attachment selection), plus deployment/CI updates.
Changes:
- Updated Velocity templates (SSP + API-driven UI) for cache-busting query handling, theme CSS injection, and improved page titles.
- Introduced a new
@curity/haapi-react-sdkworkspace package and refactoredhaapi-react-appto consume it (with new UI + step handling behaviors and tests). - Updated deployment script and GitHub Actions workflow to build/lint/test the new SDK and deploy HAAPI React App assets via a template fragment.
Reviewed changes
Copilot reviewed 117 out of 174 changed files in this pull request and generated 2 comments.
Show a summary per file
| File | Description |
|---|---|
| src/self-service-portal/templates/apps/self-service-portal/index.vm | Adds cache-busting query handling and optional theme CSS link. |
| src/self-service-portal/app/src/error-handling/RouteErrorBoundary.tsx | Updates error message extraction via getErrorMessage. |
| src/self-service-portal/app/README.md | Clarifies build/deploy flows and .env usage for SSP. |
| src/self-service-portal/app/package.json | Bumps React/router/i18n and tooling dependencies. |
| src/identity-server/templates/core/views/api-driven-ui/index.vm | Adds localized <title>, shared assets fragment, cache-busting query, optional theme CSS. |
| src/identity-server/templates/core/settings-defaults.vm | Merges CSP img-src sources when both are configured. |
| src/identity-server/templates/core/fragments/api-driven-ui/assets.vm | New shared loader fragment for API-driven UI assets with cache busting. |
| src/identity-server/templates/core/authentication-action/opt-in-mfa/setup-confirm.vm | Replaces inline style with utility classes. |
| src/identity-server/previewer-checksums.json | Updates previewer version + checksums. |
| src/identity-server/messages/core/sv/messages | Adds new meta.signin* message keys. |
| src/identity-server/messages/core/sv/authenticator/messages | Adds external browser window-open failure message. |
| src/identity-server/messages/core/pt/messages | Adds new meta.signin* message keys. |
| src/identity-server/messages/core/pt/authenticator/messages | Adds external browser window-open failure message. |
| src/identity-server/messages/core/pt-pt/messages | Adds new meta.signin* message keys. |
| src/identity-server/messages/core/pt-pt/authenticator/messages | Adds external browser window-open failure message. |
| src/identity-server/messages/core/en/messages | Adds new meta.signin* message keys. |
| src/identity-server/messages/core/en/authenticator/messages | Adds external browser window-open failure message. |
| src/haapi-react-sdk/vitest.config.ts | Adds Vitest config for the new SDK workspace. |
| src/haapi-react-sdk/vite-env.d.ts | Replaces prior stub with vite/client reference. |
| src/haapi-react-sdk/tsconfig.json | Adds strict SDK TS config including vitest globals. |
| src/haapi-react-sdk/setupTests.ts | Adds shared test setup (e.g., <dialog> mocks). |
| src/haapi-react-sdk/package.json | Introduces new SDK workspace package metadata/scripts/deps. |
| src/haapi-react-sdk/haapi-stepper/util/useThrowErrorToAppErrorBoundary.ts | Adds hook to rethrow async errors into React error boundaries. |
| src/haapi-react-sdk/haapi-stepper/util/useRefCallBack.tsx | Adds stable-callback hook to avoid stale closures. |
| src/haapi-react-sdk/haapi-stepper/util/types/helpers.ts | Adds StringWithAutocomplete helper type. |
| src/haapi-react-sdk/haapi-stepper/util/tests/mocks.ts | Updates HAAPI step/action mocks and adds new helper step builders. |
| src/haapi-react-sdk/haapi-stepper/util/tests/api-responses.ts | Updates imports, renames fixtures, adds completed-step form-post fixtures, adds default case. |
| src/haapi-react-sdk/haapi-stepper/util/link-predicates.ts | Adds isHaapiLink and centralizes link subtype/media checks. |
| src/haapi-react-sdk/haapi-stepper/util/link-predicates.spec.ts | Adds tests for link predicate behavior. |
| src/haapi-react-sdk/haapi-stepper/util/isMobileDevice.ts | Adds mobile detection helper for BankID deep-link choice. |
| src/haapi-react-sdk/haapi-stepper/util/index.ts | Exposes selected util exports for SDK consumers. |
| src/haapi-react-sdk/haapi-stepper/util/generic-render-interceptor.tsx | Adds generic render-interceptor utility for list rendering customization. |
| src/haapi-react-sdk/haapi-stepper/ui/spinner/Spinner.tsx | Adds SDK-local spinner component. |
| src/haapi-react-sdk/haapi-stepper/ui/spinner/spinner.module.css | Adds spinner CSS module animation. |
| src/haapi-react-sdk/haapi-stepper/ui/messages/HaapiStepperMessageUI.tsx | Adds message rendering with class-based variants (heading/userCode/userName). |
| src/haapi-react-sdk/haapi-stepper/ui/messages/HaapiStepperMessagesUI.tsx | Adds messages container with render interception support. |
| src/haapi-react-sdk/haapi-stepper/ui/messages/defaultHaapiStepperMessageElementFactory.tsx | Adds default message element factory wrapper. |
| src/haapi-react-sdk/haapi-stepper/ui/links/HaapiStepperQrCodeLinkDialog.tsx | Adds QR-code fullscreen dialog with focus restore. |
| src/haapi-react-sdk/haapi-stepper/ui/links/HaapiStepperLinkUI.tsx | Updates QR-code detection import to link predicates. |
| src/haapi-react-sdk/haapi-stepper/ui/links/HaapiStepperLinkUI.spec.tsx | Updates tests to cover undefined subtype and HAAPI media types. |
| src/haapi-react-sdk/haapi-stepper/ui/links/HaapiStepperLinksUI.tsx | Opens non-HAAPI links in new tab; HAAPI links call onClick; QR links open dialog. |
| src/haapi-react-sdk/haapi-stepper/ui/links/HaapiStepperLinksUI.spec.tsx | Adds tests for external links via window.open and HAAPI link routing. |
| src/haapi-react-sdk/haapi-stepper/ui/links/defaultHaapiStepperLinkElementFactory.tsx | Adds default link element factory wrapper. |
| src/haapi-react-sdk/haapi-stepper/ui/index.ts | Exposes SDK UI components and factories. |
| src/haapi-react-sdk/haapi-stepper/ui/icons/authenticator-icons.ts | Adds authenticator-icon resolution mapping for UI rendering. |
| src/haapi-react-sdk/haapi-stepper/ui/actions/HaapiStepperActionsUI.tsx | Adds actions container with per-action-type render interception. |
| src/haapi-react-sdk/haapi-stepper/ui/actions/HaapiStepperActionsUI.spec.tsx | Updates tests to use new media type import path. |
| src/haapi-react-sdk/haapi-stepper/ui/actions/defaultHaapiStepperActionElementFactory.tsx | Adds default action element factory for form/selector/client-operation actions. |
| src/haapi-react-sdk/haapi-stepper/README.md | Updates SDK docs, viewName built-in UI explanation, CSS customization notes, class list. |
| src/haapi-react-sdk/haapi-stepper/feature/viewnames/viewname.types.ts | Adds USER_CONSENT viewName built-in UI enum entry. |
| src/haapi-react-sdk/haapi-stepper/feature/viewnames/viewname-built-in-uis.ts | Registers new built-in UI mapping for user consent view. |
| src/haapi-react-sdk/haapi-stepper/feature/viewnames/UserConsentViewNameBuiltInUI.tsx | Adds consent view built-in UI with logo association header. |
| src/haapi-react-sdk/haapi-stepper/feature/viewnames/typings.ts | Introduces shared props type for viewName built-in UIs. |
| src/haapi-react-sdk/haapi-stepper/feature/viewnames/index.ts | Exposes viewname helpers/components for SDK consumers. |
| src/haapi-react-sdk/haapi-stepper/feature/viewnames/HaapiStepperBankIdQrCodeAccessibilityMessages.tsx | Adds BankID QR-code accessibility <details> sections based on viewData messages. |
| src/haapi-react-sdk/haapi-stepper/feature/viewnames/HaapiStepperBankIdPollingProgressUI.tsx | Adds BankID session countdown progress bar + localized readout. |
| src/haapi-react-sdk/haapi-stepper/feature/viewnames/BankIdViewNameBuiltInUI.tsx | Enhances BankID view rendering (QR link placement + progress + accessibility messages). |
| src/haapi-react-sdk/haapi-stepper/feature/steps/typings.ts | Extracts Step UI prop types to avoid runtime cycles with viewnames package. |
| src/haapi-react-sdk/haapi-stepper/feature/steps/step-element-factories.tsx | Switches spinner import to SDK-local spinner implementation. |
| src/haapi-react-sdk/haapi-stepper/feature/stepper/step-handlers/polling-step.ts | Adds auto-advance on failed polling step when next action is redirect/continue. |
| src/haapi-react-sdk/haapi-stepper/feature/stepper/step-handlers/completed-step.ts | Adds completed-step auto redirect handling including form-post response mode. |
| src/haapi-react-sdk/haapi-stepper/feature/stepper/step-handlers/authentication-or-registration-step.ts | Adds handler that triggers WebAuthn autostart on configured steps. |
| src/haapi-react-sdk/haapi-stepper/feature/stepper/HaapiStepperHook.ts | Adds useHaapiStepper hook using React use() and enforced provider usage. |
| src/haapi-react-sdk/haapi-stepper/feature/stepper/HaapiStepperErrorNotifier.tsx | Moves toast to a portal (document.body) for layout correctness. |
| src/haapi-react-sdk/haapi-stepper/feature/stepper/HaapiStepperContext.tsx | Introduces context via createContext. |
| src/haapi-react-sdk/haapi-stepper/feature/stepper/HaapiStepper.tsx | Updates stepper context value to include config; supports no-action client-operation results. |
| src/haapi-react-sdk/haapi-stepper/feature/stepper/haapi-stepper.types.ts | Extends config/theme types (logos/page symbols) and WebAuthn attachment typing. |
| src/haapi-react-sdk/haapi-stepper/feature/stepper/data-formatters/problem-step.ts | Adds formatting for error steps into app/input error buckets. |
| src/haapi-react-sdk/haapi-stepper/feature/stepper/data-formatters/format-next-step-data.ts | Removes polling client-operation maxWait injection from actions. |
| src/haapi-react-sdk/haapi-stepper/feature/stepper/data-formatters/continue-same-step.ts | Adds support for HAAPI continue-same-step responses. |
| src/haapi-react-sdk/haapi-stepper/feature/index.ts | Re-exports additional stepper/viewname utilities. |
| src/haapi-react-sdk/haapi-stepper/feature/actions/selector/HaapiStepperSelectorUI.tsx | Ensures selector rendering returns null for non-form options. |
| src/haapi-react-sdk/haapi-stepper/feature/actions/form/HaapiStepperFormValidationErrorInputWrapper.tsx | Adds wrapper to show per-field invalid input errors. |
| src/haapi-react-sdk/haapi-stepper/feature/actions/form/HaapiStepperFormSubmitButton.tsx | Switches authenticator-icon resolver import to SDK-local icons mapping. |
| src/haapi-react-sdk/haapi-stepper/feature/actions/form/HaapiStepperFormHook.ts | Adds form state hook supporting checkbox/select/text semantics. |
| src/haapi-react-sdk/haapi-stepper/feature/actions/form/HaapiStepperFormContext.ts | Adds form context + hook using React use(). |
| src/haapi-react-sdk/haapi-stepper/feature/actions/form/fields/HaapiStepperTextFormFieldUI.tsx | Adds text/username field component with autocomplete handling. |
| src/haapi-react-sdk/haapi-stepper/feature/actions/form/fields/HaapiStepperSelectFormFieldUI.tsx | Adds select field component. |
| src/haapi-react-sdk/haapi-stepper/feature/actions/form/fields/HaapiStepperPasswordFormFieldUI.tsx | Adds password field component with show/hide toggle. |
| src/haapi-react-sdk/haapi-stepper/feature/actions/form/fields/HaapiStepperFormFieldUI.tsx | Adds field dispatcher for visible HAAPI form fields. |
| src/haapi-react-sdk/haapi-stepper/feature/actions/form/fields/HaapiStepperCheckboxFormFieldUI.tsx | Adds checkbox field component. |
| src/haapi-react-sdk/haapi-stepper/feature/actions/form/fields/defaultHaapiStepperFormFieldElementFactory.tsx | Wraps fields with validation-error wrapper by default. |
| src/haapi-react-sdk/haapi-stepper/feature/actions/client-operation/useIsClientOperationAvailable.ts | Adds capability gating for client operations (WebAuthn availability etc.). |
| src/haapi-react-sdk/haapi-stepper/feature/actions/client-operation/operations/webauthn/webauthn.ts | Improves WebAuthn error handling and adds localized viewData message lookup. |
| src/haapi-react-sdk/haapi-stepper/feature/actions/client-operation/operations/webauthn/webauthn-registration-attachment.ts | Adds attachment metadata builder for any-device WebAuthn registration actions. |
| src/haapi-react-sdk/haapi-stepper/feature/actions/client-operation/operations/webauthn/webauthn-registration-attachment.spec.ts | Adds tests for attachment metadata resolution. |
| src/haapi-react-sdk/haapi-stepper/feature/actions/client-operation/operations/webauthn/webauthn-registration-attachment-icon-map.tsx | Adds icon mapping for attachment kinds. |
| src/haapi-react-sdk/haapi-stepper/feature/actions/client-operation/operations/webauthn/utils.ts | Refactors WebAuthn utils and adds attachment-kind helpers and type guards. |
| src/haapi-react-sdk/haapi-stepper/feature/actions/client-operation/operations/webauthn/utils.spec.ts | Adds tests for WebAuthn attachment-kind helpers. |
| src/haapi-react-sdk/haapi-stepper/feature/actions/client-operation/operations/webauthn/useIsWebAuthnPlatformAuthenticatorAvailable.ts | Adds hook to detect platform authenticator availability. |
| src/haapi-react-sdk/haapi-stepper/feature/actions/client-operation/operations/webauthn/typings.ts | Adds NOT_SUPPORTED WebAuthn error type. |
| src/haapi-react-sdk/haapi-stepper/feature/actions/client-operation/operations/webauthn/index.ts | Re-exports new WebAuthn helpers/components. |
| src/haapi-react-sdk/haapi-stepper/feature/actions/client-operation/operations/webauthn/HaapiStepperWebAuthnRegistrationAttachmentCard.tsx | Adds UI card for attachment selection. |
| src/haapi-react-sdk/haapi-stepper/feature/actions/client-operation/operations/webauthn/HaapiStepperWebAuthnRegistrationAttachmentCard.spec.tsx | Adds tests for attachment card rendering/copy lookup. |
| src/haapi-react-sdk/haapi-stepper/feature/actions/client-operation/operations/webauthn/auto-start.ts | Adds WebAuthn autostart logic for eligible steps. |
| src/haapi-react-sdk/haapi-stepper/feature/actions/client-operation/operations/typings.ts | Extends client-operation result type to support { action: null } “no action”. |
| src/haapi-react-sdk/haapi-stepper/feature/actions/client-operation/operations/helpers.ts | Adds helper for synthesizing stepper errors from client-side failures. |
| src/haapi-react-sdk/haapi-stepper/feature/actions/client-operation/operations/external-browser-flow/index.ts | Removes export of deleted EBF typings. |
| src/haapi-react-sdk/haapi-stepper/feature/actions/client-operation/operations/external-browser-flow/external-browser-flow.ts | Updates EBF error handling + cancellation behavior and window-open localization. |
| src/haapi-react-sdk/haapi-stepper/feature/actions/client-operation/operations/external-browser-flow/external-browser-flow.spec.ts | Updates tests for new EBF behavior and localized window-open message usage. |
| src/haapi-react-sdk/haapi-stepper/feature/actions/client-operation/operations/client-operations.ts | Adds unified client-operation dispatcher (WebAuthn/EBF/BankID). |
| src/haapi-react-sdk/haapi-stepper/feature/actions/client-operation/operations/bankid/utils.ts | Adds BankID client-operation type guard. |
| src/haapi-react-sdk/haapi-stepper/feature/actions/client-operation/operations/bankid/open-bankid-app.ts | Adds BankID deep-link navigation logic (mobile vs desktop). |
| src/haapi-react-sdk/haapi-stepper/feature/actions/client-operation/operations/bankid/index.ts | Exposes BankID operation helpers. |
| src/haapi-react-sdk/haapi-stepper/feature/actions/client-operation/operations/bankid/bankid.ts | Adds BankID operation runner that triggers app open and continues flow. |
| src/haapi-react-sdk/haapi-stepper/feature/actions/client-operation/HaapiStepperClientOperationUI.tsx | Adds WebAuthn attachment-card rendering path for any-device registration actions. |
| src/haapi-react-sdk/haapi-stepper/data-access/useHaapiFetch.ts | Adds cached singleton driver wrapper for HAAPI web-driver fetch. |
| src/haapi-react-sdk/haapi-stepper/data-access/useHaapiFetch.spec.ts | Updates media type import and tests for fetch behavior. |
| src/haapi-react-sdk/haapi-stepper/data-access/types/media.types.ts | Introduces consolidated HAAPI media type constants. |
| src/haapi-react-sdk/haapi-stepper/data-access/types/index.ts | Adds types barrel export for data-access types. |
| src/haapi-react-sdk/haapi-stepper/data-access/types/haapi-step.types.ts | Adds viewData typing and completed-step actions support for form-post response mode. |
| src/haapi-react-sdk/haapi-stepper/data-access/types/haapi-form.types.ts | Moves media type import to local SDK types. |
| src/haapi-react-sdk/haapi-stepper/data-access/types/haapi-fetch.types.ts | Adds typed HAAPI fetch action/payload wrappers. |
| src/haapi-react-sdk/haapi-stepper/data-access/types/haapi-action.types.ts | Adds AUTHORIZATION_RESPONSE form action kind. |
| src/haapi-react-sdk/haapi-stepper/data-access/index.ts | Adds data-access barrel exports including new hook. |
| src/haapi-react-sdk/haapi-stepper/data-access/haapi-fetch-utils.ts | Updates media type import and keeps request builder logic in SDK. |
| src/haapi-react-sdk/haapi-stepper/data-access/haapi-fetch-utils.spec.ts | Updates media type import for request-builder tests. |
| src/haapi-react-sdk/haapi-stepper/data-access/haapi-fetch-request.ts | Updates media type import for request sending. |
| src/haapi-react-sdk/eslint.config.js | Adds SDK-specific typed ESLint config. |
| src/haapi-react-sdk/.prettierrc | Adds SDK Prettier configuration. |
| src/haapi-react-sdk/.prettierignore | Adds SDK Prettier ignore rules. |
| src/haapi-react-app/vite.config.ts | Removes local alias to embedded SDK source. |
| src/haapi-react-app/tsconfig.app.json | Removes TS path mapping for embedded SDK alias. |
| src/haapi-react-app/src/shared/util/page-symbol-utils.ts | Updates page symbol resolution to SDK types and adds showPageSymbol rule. |
| src/haapi-react-app/src/shared/util/css/styles.css | Adds styles for consent logos, BankID accessibility, WebAuthn cards, and polling progress bar. |
| src/haapi-react-app/src/shared/ui/Well.tsx | Adds local Well component (moved from SDK consumption). |
| src/haapi-react-app/src/shared/ui/SuccessCheckmark.tsx | Removes unused SuccessCheckmark component. |
| src/haapi-react-app/src/shared/ui/PageSymbol/PageSymbol.tsx | Fixes imports after folder reorg and updated util path. |
| src/haapi-react-app/src/shared/ui/PageSymbol/PageSymbol.spec.tsx | Updates tests to new types + moved imports. |
| src/haapi-react-app/src/shared/ui/Logo/Logo.tsx | Fixes import path and improves accessibility by adding alt text. |
| src/haapi-react-app/src/shared/ui/Logo/Logo.spec.tsx | Updates tests for img role + alt text. |
| src/haapi-react-app/src/shared/ui/Layout/Layout.tsx | Refactors layout imports and hides page symbol for user consent step. |
| src/haapi-react-app/src/shared/ui/Layout/Layout.spec.tsx | Updates layout tests for new stepper config/type behavior. |
| src/haapi-react-app/src/shared/feature/error-handling/default-error-fallback.tsx | Switches Well import to local Well. |
| src/haapi-react-app/src/shared/feature/app-config/types.ts | Simplifies app config to SDK bootstrap config type alias. |
| src/haapi-react-app/src/shared/feature/app-config/HaapiAppConfigProvider.tsx | Removes explicit HaapiAppConfig cast and relies on window.__CONFIG__. |
| src/haapi-react-app/src/haapi-react-sdk/haapi-stepper/feature/viewnames/BankIdViewNameBuiltInUI.tsx | Removes embedded SDK BankID built-in UI duplicate. |
| src/haapi-react-app/src/haapi-react-sdk/haapi-stepper/feature/stepper/step-handlers/completed-step.ts | Removes embedded SDK completed-step handler duplicate. |
| src/haapi-react-app/src/haapi-react-sdk/haapi-stepper/feature/actions/client-operation/operations/external-browser-flow/typings.ts | Removes embedded SDK EBF typings duplicate. |
| src/haapi-react-app/src/haapi-react-sdk/haapi-stepper/feature/actions/client-operation/HaapiStepperClientOperationUI.spec.tsx | Removes embedded SDK client-operation UI tests duplicate. |
| src/haapi-react-app/src/App.tsx | Updates Layout import after refactor. |
| src/haapi-react-app/setupTests.ts | Removes <dialog> mocks (now provided by SDK test setup). |
| src/haapi-react-app/previewer/vite.config.ts | Removes embedded SDK alias usage. |
| src/haapi-react-app/previewer/shared/ui/preview/Preview.tsx | Updates imports and hides page symbol for user consent step. |
| src/haapi-react-app/previewer/shared/ui/json-representation/pretty-print.css | Improves string wrapping in JSON pretty-print. |
| src/haapi-react-app/previewer/Previewer.tsx | Adds stepper config to previewer context value. |
| src/haapi-react-app/previewer/examples.authenticators.ts | Updates media type import to SDK. |
| src/haapi-react-app/previewer/examples.authentication-actions.ts | Updates media type import to SDK. |
| src/haapi-react-app/package.json | Adds dependency on @curity/haapi-react-sdk and bumps jsdom/react-dom. |
| src/haapi-react-app/.prettierignore | Normalizes indentation/formatting. |
| src/common/icons/src/components/authenticator/index.ts | Exposes new WebAuthn platform/cross-platform icons. |
| src/common/icons/src/components/authenticator/IconAuthenticatorWebauthnPlatform.tsx | Adds platform authenticator icon component. |
| src/common/icons/src/components/authenticator/IconAuthenticatorWebauthnCrossPlatform.tsx | Adds cross-platform authenticator icon component. |
| src/common/css/lib/src/base/base-buttons.css | Forces default button text color to white. |
| src/common/css/docs/package.json | Bumps Astro/react-dom and type deps. |
| src/common/component-library/package.json | Tightens React peer deps and bumps router/jsdom/stylelint-config versions. |
| README.md | Documents per-project builds and HAAPI React App deployment outputs. |
| package.json | Adds src/haapi-react-sdk to workspace list. |
| deploy.sh | Adds template-area assertion helper and HAAPI React App asset + fragment deployment flow. |
| .github/workflows/lwa-github-ci-workflow.yml | Runs format/lint/typecheck/test for the new SDK workspace in CI. |
Suppressed comments (3)
src/haapi-react-sdk/haapi-stepper/feature/stepper/HaapiStepper.tsx:365
HaapiStepperContextis a context object created viacreateContext, so it must be used via.Provider. Rendering it as<HaapiStepperContext ...>will throw at runtime and prevents the stepper from providing context to consumers.
src/haapi-react-app/src/shared/ui/Layout/Layout.spec.tsx:141HaapiStepperContextis a React context object, so tests must render its Provider. Using<HaapiStepperContext value=...>will throw and make this test suite fail.
src/haapi-react-sdk/haapi-stepper/feature/actions/client-operation/operations/external-browser-flow/external-browser-flow.ts:36ClientOperationResultis documented/typed as “runners always resolve”, but this implementation rejects the Promise on unexpected message origin/data. SinceperformClientOperationis awaited without a try/catch, this will bubble into the app error boundary instead of producing a normalclientOperationErrorviauseHaapiStepper().error.app.
💡 Add a code-review agent skill or configure MCP servers for context-aware, tailored reviews. Learn more in the docs.
There was a problem hiding this comment.
The FE changes make sense.
Claude has some concerns:
- CSP img-src merging (IS-7660) —
settings-defaults.vm: the configured Look-and-Feelimg-srcused to replace the page'simg-src; now they're combined via$CspUtil.combine(...). Intentional (inlinedata:QR codes broke), but it widens the effective policy versus what an admin explicitly configured. A security-minded reviewer should confirm this is the desired precedence. - Deployment script rewrite (IS-11461) —
deploy.shnow deploys the HAAPI React App to the globalwebroot/assetsand generates anassets.vmfragment pointing at hash-renamed bundles, while the shipped core fragment (templates/core/fragments/api-driven-ui/assets.vm) references non-hashedapi-driven-ui.js/.css. Someone who knows the server packaging should confirm the product build really emits those un-hashed names, and that overrides-vs-template-area precedence behaves. - Velocity template changes (IS-11474 + title) —
api-driven-ui/index.vmand SSPindex.vm: new$_cacheBustingQuerypattern, newtheme_css_pathlink, and a dynamic<title>using#message("meta.signin-to") $_tr.encodeHtml($_apiDrivenApplicationName). Encoding is applied (good); reviewer should verify the title renders without stray whitespace and thattheme_css_pathcan't be attacker-influenced (it's admin config, so presumably fine).
@urre Are you familiar with these?
|
This is just a back-merge PR from |
|
this is back merge and would not contain any changes from dev. So all comments need to be targeted to dev or be fixed in dev. |
Added UI KIT changes for Identity server version 11.4.0