Move trusted issuer feature into the configure-connections package#4286
Move trusted issuer feature into the configure-connections package#4286JayaShakthi97 wants to merge 1 commit into
Conversation
|
No actionable comments were generated in the recent review. 🎉 ℹ️ Recent review info⚙️ Run configurationConfiguration used: Path: .coderabbit.yaml Review profile: CHILL Plan: Pro Plus Run ID: 📒 Files selected for processing (29)
💤 Files with no reviewable changes (8)
🚧 Files skipped from review as they are similar to previous changes (18)
📝 WalkthroughWalkthroughThe PR moves trusted-issuer wizard and detail behavior into ChangesTrusted issuer flow
Estimated code review effort: 3 (Moderate) | ~20 minutes Sequence Diagram(s)sequenceDiagram
participant User
participant ConnectionCreateWizardPage
participant TrustedIssuerCreateForm
participant useCreateTrustedIssuer
User->>ConnectionCreateWizardPage: Select trusted-idp
ConnectionCreateWizardPage->>TrustedIssuerCreateForm: Render trusted issuer form
TrustedIssuerCreateForm->>useCreateTrustedIssuer: Submit issuer configuration
useCreateTrustedIssuer-->>TrustedIssuerCreateForm: Return created issuer or conflict
Possibly related PRs
Suggested reviewers: 🚥 Pre-merge checks | ✅ 4 | ❌ 1❌ Failed checks (1 warning)
✅ Passed checks (4 passed)
✨ Finishing Touches🧪 Generate unit tests (beta)
Warning There were issues while running some tools. Please review the errors and either fix the tool's configuration or disable the tool if it's a critical failure. 🔧 ESLint
frontend/apps/console/src/App.tsxESLint skipped: missing config or dependency (missing-dependency). The ESLint configuration references a package that is not available in the sandbox. frontend/apps/console/src/__tests__/App.test.tsxESLint skipped: the ESLint configuration for this file references a package that is not available in the sandbox. frontend/packages/configure-connections/src/api/useCreateTrustedIssuer.tsESLint skipped: missing config or dependency (missing-dependency). The ESLint configuration references a package that is not available in the sandbox.
Thanks for using CodeRabbit! It's free for OSS, and your support helps us grow. If you like it, consider giving us a shout-out. Comment |
There was a problem hiding this comment.
Actionable comments posted: 4
Caution
Some comments are outside the diff and can’t be posted inline due to platform limitations.
⚠️ Outside diff range comments (1)
frontend/packages/configure-connections/src/components/TrustedIssuerCreateForm.tsx (1)
121-125: 📐 Maintainability & Code Quality | 🟡 Minor | ⚡ Quick winAvoid raw
ThunderIDliterals. Is this hardcoded brand name intentional?
frontend/packages/configure-connections/src/components/TrustedIssuerCreateForm.tsx#L121-L125: use the existingproductNameconfig value as an interpolation variable in the fallback string.frontend/packages/configure-connections/src/pages/__tests__/ConnectionCreateWizardPage.test.tsx#L33-L36: use a neutral fixture product name, since this test does not assert branding.As per path instructions, hardcoded product names should be sourced from configuration where replaceable.
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the rest with a brief reason, keep changes minimal, and validate. In `@frontend/packages/configure-connections/src/components/TrustedIssuerCreateForm.tsx` around lines 121 - 125, The TrustedIssuerCreateForm subtitle hardcodes the ThunderID brand instead of using configured branding. Update the translation fallback around the subtitle Typography to interpolate the existing productName configuration value, and update ConnectionCreateWizardPage.test.tsx lines 33-36 to use a neutral fixture product name because branding is not under test.Source: Path instructions
🧹 Nitpick comments (1)
frontend/packages/configure-connections/src/pages/TrustedIssuerWizardStep.tsx (1)
29-34: 📐 Maintainability & Code Quality | 🔵 Trivial | ⚡ Quick winRemove the obsolete
customConfigureStepsreference.That API was removed from
ConnectionCreateWizardPage; the comment now points maintainers to a nonexistent extension point.🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the rest with a brief reason, keep changes minimal, and validate. In `@frontend/packages/configure-connections/src/pages/TrustedIssuerWizardStep.tsx` around lines 29 - 34, Remove the obsolete reference to customConfigureSteps from the documentation comment for TrustedIssuerWizardStep, while preserving the remaining description of the wizard integration and collected name step.
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
Inline comments:
In
`@frontend/packages/configure-connections/src/components/TrustedIssuerCreateForm.tsx`:
- Around line 103-105: Update the post-create navigation in
TrustedIssuerCreateForm and resolve the destination through the package’s
use<Domain>Routes() hook instead of hardcoding `/trusted-issuers/${created.id}`.
Use the hook-provided trusted-issuer detail route with created.id, while
preserving the existing navigate behavior.
In
`@frontend/packages/configure-connections/src/components/TrustedIssuerDeleteDialog.tsx`:
- Around line 99-110: Update the i18n calls in TrustedIssuerDeleteDialog’s
cancel and confirm buttons to provide fallback default strings for
common:actions.cancel, common:status.deleting, and common:actions.delete, while
preserving the existing pending-state selection and button behavior.
In
`@frontend/packages/configure-connections/src/pages/TrustedIssuerDetailPage.tsx`:
- Line 131: The reusable TrustedIssuerDetailPage currently hardcodes the
console-specific /connections route in both the back action at
frontend/packages/configure-connections/src/pages/TrustedIssuerDetailPage.tsx:131-131
and the post-deletion navigation at
frontend/packages/configure-connections/src/pages/TrustedIssuerDetailPage.tsx:312-312.
Use useConnectionRoutes() to obtain connectionRoutes and navigate to
connectionRoutes.list() in both callbacks.
In
`@frontend/packages/configure-connections/src/utils/validateTrustedIssuerForm.ts`:
- Around line 39-65: Add unit tests for validateTrustedIssuerForm covering
whitespace-only names, empty issuer and jwksEndpoint fields, malformed and
non-HTTPS URLs, and valid HTTPS URLs. Assert the returned field error map for
each branch, including valid input producing no errors, and ensure coverage
reaches at least 80%.
---
Outside diff comments:
In
`@frontend/packages/configure-connections/src/components/TrustedIssuerCreateForm.tsx`:
- Around line 121-125: The TrustedIssuerCreateForm subtitle hardcodes the
ThunderID brand instead of using configured branding. Update the translation
fallback around the subtitle Typography to interpolate the existing productName
configuration value, and update ConnectionCreateWizardPage.test.tsx lines 33-36
to use a neutral fixture product name because branding is not under test.
---
Nitpick comments:
In
`@frontend/packages/configure-connections/src/pages/TrustedIssuerWizardStep.tsx`:
- Around line 29-34: Remove the obsolete reference to customConfigureSteps from
the documentation comment for TrustedIssuerWizardStep, while preserving the
remaining description of the wizard integration and collected name step.
🪄 Autofix (Beta)
Fix all unresolved CodeRabbit comments on this PR:
- Push a commit to this branch (recommended)
- Create a new PR with the fixes
ℹ️ Review info
⚙️ Run configuration
Configuration used: Path: .coderabbit.yaml
Review profile: CHILL
Plan: Pro Plus
Run ID: 2931fd16-9ae8-4a05-8905-3bb96b89ece2
📒 Files selected for processing (27)
frontend/apps/console/src/App.tsxfrontend/apps/console/src/features/connections/pages/ConnectionCreateWizardRoute.tsxfrontend/apps/console/src/features/connections/pages/__tests__/ConnectionCreateWizardRoute.test.tsxfrontend/apps/console/src/features/trusted-issuers/constants/query-keys.tsfrontend/packages/configure-connections/src/api/useCreateTrustedIssuer.tsfrontend/packages/configure-connections/src/api/useDeleteTrustedIssuer.tsfrontend/packages/configure-connections/src/api/useTrustedIssuer.tsfrontend/packages/configure-connections/src/api/useUpdateTrustedIssuer.tsfrontend/packages/configure-connections/src/components/TrustedIssuerCreateForm.tsxfrontend/packages/configure-connections/src/components/TrustedIssuerDeleteDialog.tsxfrontend/packages/configure-connections/src/components/__tests__/TrustedIssuerCreateForm.test.tsxfrontend/packages/configure-connections/src/components/create-connection/SelectConnectionType.tsxfrontend/packages/configure-connections/src/components/create-connection/__tests__/SelectConnectionType.test.tsxfrontend/packages/configure-connections/src/constants/query-keys.tsfrontend/packages/configure-connections/src/index.tsfrontend/packages/configure-connections/src/models/trusted-issuer.tsfrontend/packages/configure-connections/src/pages/ConnectionCreateWizardPage.tsxfrontend/packages/configure-connections/src/pages/TrustedIssuerDetailPage.tsxfrontend/packages/configure-connections/src/pages/TrustedIssuerWizardStep.tsxfrontend/packages/configure-connections/src/pages/__tests__/ConnectionCreateWizardPage.test.tsxfrontend/packages/configure-connections/src/pages/__tests__/TrustedIssuerDetailPage.test.tsxfrontend/packages/configure-connections/src/pages/__tests__/TrustedIssuerWizardStep.test.tsxfrontend/packages/configure-connections/src/utils/__tests__/isTrustedIssuerFormDirty.test.tsfrontend/packages/configure-connections/src/utils/__tests__/mapConnectionToTrustedIssuer.test.tsfrontend/packages/configure-connections/src/utils/isTrustedIssuerFormDirty.tsfrontend/packages/configure-connections/src/utils/mapConnectionToTrustedIssuer.tsfrontend/packages/configure-connections/src/utils/validateTrustedIssuerForm.ts
💤 Files with no reviewable changes (3)
- frontend/apps/console/src/features/connections/pages/tests/ConnectionCreateWizardRoute.test.tsx
- frontend/apps/console/src/features/trusted-issuers/constants/query-keys.ts
- frontend/apps/console/src/features/connections/pages/ConnectionCreateWizardRoute.tsx
There was a problem hiding this comment.
Caution
Inline review comments failed to post. This is likely due to GitHub's internal server error or limits when posting large numbers of comments. If you are seeing this consistently it is likely a permissions issue. Please check "Moderation" -> "Code review limits" under your organization settings.
Actionable comments posted: 4
Caution
Some comments are outside the diff and can’t be posted inline due to platform limitations.
⚠️ Outside diff range comments (1)
frontend/packages/configure-connections/src/components/TrustedIssuerCreateForm.tsx (1)
121-125: 📐 Maintainability & Code Quality | 🟡 Minor | ⚡ Quick winAvoid raw
ThunderIDliterals. Is this hardcoded brand name intentional?
frontend/packages/configure-connections/src/components/TrustedIssuerCreateForm.tsx#L121-L125: use the existingproductNameconfig value as an interpolation variable in the fallback string.frontend/packages/configure-connections/src/pages/__tests__/ConnectionCreateWizardPage.test.tsx#L33-L36: use a neutral fixture product name, since this test does not assert branding.As per path instructions, hardcoded product names should be sourced from configuration where replaceable.
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the rest with a brief reason, keep changes minimal, and validate. In `@frontend/packages/configure-connections/src/components/TrustedIssuerCreateForm.tsx` around lines 121 - 125, The TrustedIssuerCreateForm subtitle hardcodes the ThunderID brand instead of using configured branding. Update the translation fallback around the subtitle Typography to interpolate the existing productName configuration value, and update ConnectionCreateWizardPage.test.tsx lines 33-36 to use a neutral fixture product name because branding is not under test.Source: Path instructions
🧹 Nitpick comments (1)
frontend/packages/configure-connections/src/pages/TrustedIssuerWizardStep.tsx (1)
29-34: 📐 Maintainability & Code Quality | 🔵 Trivial | ⚡ Quick winRemove the obsolete
customConfigureStepsreference.That API was removed from
ConnectionCreateWizardPage; the comment now points maintainers to a nonexistent extension point.🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the rest with a brief reason, keep changes minimal, and validate. In `@frontend/packages/configure-connections/src/pages/TrustedIssuerWizardStep.tsx` around lines 29 - 34, Remove the obsolete reference to customConfigureSteps from the documentation comment for TrustedIssuerWizardStep, while preserving the remaining description of the wizard integration and collected name step.
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
Inline comments:
In
`@frontend/packages/configure-connections/src/components/TrustedIssuerCreateForm.tsx`:
- Around line 103-105: Update the post-create navigation in
TrustedIssuerCreateForm and resolve the destination through the package’s
use<Domain>Routes() hook instead of hardcoding `/trusted-issuers/${created.id}`.
Use the hook-provided trusted-issuer detail route with created.id, while
preserving the existing navigate behavior.
In
`@frontend/packages/configure-connections/src/components/TrustedIssuerDeleteDialog.tsx`:
- Around line 99-110: Update the i18n calls in TrustedIssuerDeleteDialog’s
cancel and confirm buttons to provide fallback default strings for
common:actions.cancel, common:status.deleting, and common:actions.delete, while
preserving the existing pending-state selection and button behavior.
In
`@frontend/packages/configure-connections/src/pages/TrustedIssuerDetailPage.tsx`:
- Line 131: The reusable TrustedIssuerDetailPage currently hardcodes the
console-specific /connections route in both the back action at
frontend/packages/configure-connections/src/pages/TrustedIssuerDetailPage.tsx:131-131
and the post-deletion navigation at
frontend/packages/configure-connections/src/pages/TrustedIssuerDetailPage.tsx:312-312.
Use useConnectionRoutes() to obtain connectionRoutes and navigate to
connectionRoutes.list() in both callbacks.
In
`@frontend/packages/configure-connections/src/utils/validateTrustedIssuerForm.ts`:
- Around line 39-65: Add unit tests for validateTrustedIssuerForm covering
whitespace-only names, empty issuer and jwksEndpoint fields, malformed and
non-HTTPS URLs, and valid HTTPS URLs. Assert the returned field error map for
each branch, including valid input producing no errors, and ensure coverage
reaches at least 80%.
---
Outside diff comments:
In
`@frontend/packages/configure-connections/src/components/TrustedIssuerCreateForm.tsx`:
- Around line 121-125: The TrustedIssuerCreateForm subtitle hardcodes the
ThunderID brand instead of using configured branding. Update the translation
fallback around the subtitle Typography to interpolate the existing productName
configuration value, and update ConnectionCreateWizardPage.test.tsx lines 33-36
to use a neutral fixture product name because branding is not under test.
---
Nitpick comments:
In
`@frontend/packages/configure-connections/src/pages/TrustedIssuerWizardStep.tsx`:
- Around line 29-34: Remove the obsolete reference to customConfigureSteps from
the documentation comment for TrustedIssuerWizardStep, while preserving the
remaining description of the wizard integration and collected name step.
🪄 Autofix (Beta)
Fix all unresolved CodeRabbit comments on this PR:
- Push a commit to this branch (recommended)
- Create a new PR with the fixes
ℹ️ Review info
⚙️ Run configuration
Configuration used: Path: .coderabbit.yaml
Review profile: CHILL
Plan: Pro Plus
Run ID: 2931fd16-9ae8-4a05-8905-3bb96b89ece2
📒 Files selected for processing (27)
frontend/apps/console/src/App.tsxfrontend/apps/console/src/features/connections/pages/ConnectionCreateWizardRoute.tsxfrontend/apps/console/src/features/connections/pages/__tests__/ConnectionCreateWizardRoute.test.tsxfrontend/apps/console/src/features/trusted-issuers/constants/query-keys.tsfrontend/packages/configure-connections/src/api/useCreateTrustedIssuer.tsfrontend/packages/configure-connections/src/api/useDeleteTrustedIssuer.tsfrontend/packages/configure-connections/src/api/useTrustedIssuer.tsfrontend/packages/configure-connections/src/api/useUpdateTrustedIssuer.tsfrontend/packages/configure-connections/src/components/TrustedIssuerCreateForm.tsxfrontend/packages/configure-connections/src/components/TrustedIssuerDeleteDialog.tsxfrontend/packages/configure-connections/src/components/__tests__/TrustedIssuerCreateForm.test.tsxfrontend/packages/configure-connections/src/components/create-connection/SelectConnectionType.tsxfrontend/packages/configure-connections/src/components/create-connection/__tests__/SelectConnectionType.test.tsxfrontend/packages/configure-connections/src/constants/query-keys.tsfrontend/packages/configure-connections/src/index.tsfrontend/packages/configure-connections/src/models/trusted-issuer.tsfrontend/packages/configure-connections/src/pages/ConnectionCreateWizardPage.tsxfrontend/packages/configure-connections/src/pages/TrustedIssuerDetailPage.tsxfrontend/packages/configure-connections/src/pages/TrustedIssuerWizardStep.tsxfrontend/packages/configure-connections/src/pages/__tests__/ConnectionCreateWizardPage.test.tsxfrontend/packages/configure-connections/src/pages/__tests__/TrustedIssuerDetailPage.test.tsxfrontend/packages/configure-connections/src/pages/__tests__/TrustedIssuerWizardStep.test.tsxfrontend/packages/configure-connections/src/utils/__tests__/isTrustedIssuerFormDirty.test.tsfrontend/packages/configure-connections/src/utils/__tests__/mapConnectionToTrustedIssuer.test.tsfrontend/packages/configure-connections/src/utils/isTrustedIssuerFormDirty.tsfrontend/packages/configure-connections/src/utils/mapConnectionToTrustedIssuer.tsfrontend/packages/configure-connections/src/utils/validateTrustedIssuerForm.ts
💤 Files with no reviewable changes (3)
- frontend/apps/console/src/features/connections/pages/tests/ConnectionCreateWizardRoute.test.tsx
- frontend/apps/console/src/features/trusted-issuers/constants/query-keys.ts
- frontend/apps/console/src/features/connections/pages/ConnectionCreateWizardRoute.tsx
🛑 Comments failed to post (4)
frontend/packages/configure-connections/src/components/TrustedIssuerCreateForm.tsx (1)
103-105: 🗄️ Data Integrity & Integration | 🟠 Major | 🏗️ Heavy lift
Use package-provided routes for post-create navigation.
🔴 Hardcoded route in a reusable package: resolve this destination through a
use<Domain>Routes()hook instead of a literal path string — otherwise a host application cannot mount this package under a different URL without editing the package itself.🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the rest with a brief reason, keep changes minimal, and validate. In `@frontend/packages/configure-connections/src/components/TrustedIssuerCreateForm.tsx` around lines 103 - 105, Update the post-create navigation in TrustedIssuerCreateForm and resolve the destination through the package’s use<Domain>Routes() hook instead of hardcoding `/trusted-issuers/${created.id}`. Use the hook-provided trusted-issuer detail route with created.id, while preserving the existing navigate behavior.Source: Path instructions
frontend/packages/configure-connections/src/components/TrustedIssuerDeleteDialog.tsx (1)
99-110: 🎯 Functional Correctness | 🟡 Minor | ⚡ Quick win
Add fallbacks for common action labels.
common:actions.cancel,common:status.deleting, andcommon:actions.deleteomit default strings, so a missing translation can expose raw keys in the dialog.As per coding guidelines, every i18n
t('key')call must provide a fallback default string.🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the rest with a brief reason, keep changes minimal, and validate. In `@frontend/packages/configure-connections/src/components/TrustedIssuerDeleteDialog.tsx` around lines 99 - 110, Update the i18n calls in TrustedIssuerDeleteDialog’s cancel and confirm buttons to provide fallback default strings for common:actions.cancel, common:status.deleting, and common:actions.delete, while preserving the existing pending-state selection and button behavior.Source: Coding guidelines
frontend/packages/configure-connections/src/pages/TrustedIssuerDetailPage.tsx (1)
131-131: 🎯 Functional Correctness | 🟠 Major | ⚡ Quick win
Remove console-specific route literals from this reusable page. Both callbacks assume the host mounts connections at
/connections; useuseConnectionRoutes()and itslist()destination instead.
frontend/packages/configure-connections/src/pages/TrustedIssuerDetailPage.tsx#L131-L131: navigate toconnectionRoutes.list()for the back action.frontend/packages/configure-connections/src/pages/TrustedIssuerDetailPage.tsx#L312-L312: navigate toconnectionRoutes.list()after deletion.📍 Affects 1 file
frontend/packages/configure-connections/src/pages/TrustedIssuerDetailPage.tsx#L131-L131(this comment)frontend/packages/configure-connections/src/pages/TrustedIssuerDetailPage.tsx#L312-L312🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the rest with a brief reason, keep changes minimal, and validate. In `@frontend/packages/configure-connections/src/pages/TrustedIssuerDetailPage.tsx` at line 131, The reusable TrustedIssuerDetailPage currently hardcodes the console-specific /connections route in both the back action at frontend/packages/configure-connections/src/pages/TrustedIssuerDetailPage.tsx:131-131 and the post-deletion navigation at frontend/packages/configure-connections/src/pages/TrustedIssuerDetailPage.tsx:312-312. Use useConnectionRoutes() to obtain connectionRoutes and navigate to connectionRoutes.list() in both callbacks.Source: Path instructions
frontend/packages/configure-connections/src/utils/validateTrustedIssuerForm.ts (1)
39-65: 📐 Maintainability & Code Quality | 🟠 Major | ⚡ Quick win
Add unit tests for the validation branches.
This new validator has no accompanying tests. Cover whitespace-only names, empty fields, malformed or HTTP URLs, and valid HTTPS URLs, targeting at least 80% coverage.
As per coding guidelines, write tests for new features and bug fixes, targeting at least 80% coverage.
🤖 Prompt for AI Agents
Verify each finding against current code. Fix only still-valid issues, skip the rest with a brief reason, keep changes minimal, and validate. In `@frontend/packages/configure-connections/src/utils/validateTrustedIssuerForm.ts` around lines 39 - 65, Add unit tests for validateTrustedIssuerForm covering whitespace-only names, empty issuer and jwksEndpoint fields, malformed and non-HTTPS URLs, and valid HTTPS URLs. Assert the returned field error map for each branch, including valid input producing no errors, and ensure coverage reaches at least 80%.Source: Coding guidelines
Codecov Report❌ Patch coverage is
📢 Thoughts on this report? Let us know! |
ae423ba to
baa0ea9
Compare
There was a problem hiding this comment.
Actionable comments posted: 2
🤖 Prompt for all review comments with AI agents
Verify each finding against current code. Fix only still-valid issues, skip the
rest with a brief reason, keep changes minimal, and validate.
Inline comments:
In
`@frontend/packages/configure-connections/src/components/TrustedIssuerCreateForm.tsx`:
- Line 112: Replace the literal destination in TrustedIssuerCreateForm with the
appropriate use<Domain>Routes() hook, obtaining the trusted-issuer detail route
through its route resolver before calling navigate. Preserve navigation to the
newly created issuer while allowing host applications to configure the package’s
URL prefix.
In
`@frontend/packages/configure-connections/src/pages/TrustedIssuerDetailPage.tsx`:
- Line 134: Replace both hardcoded /connections destinations in
TrustedIssuerDetailPage.tsx at lines 134 and 322 with the appropriate values
from the package’s use<Domain>Routes() hook, using the same route abstraction
for back navigation and post-delete navigation.
🪄 Autofix (Beta)
Fix all unresolved CodeRabbit comments on this PR:
- Push a commit to this branch (recommended)
- Create a new PR with the fixes
ℹ️ Review info
⚙️ Run configuration
Configuration used: Path: .coderabbit.yaml
Review profile: CHILL
Plan: Pro Plus
Run ID: c9d2630e-31ea-46e2-967e-ca20499ab3ba
📒 Files selected for processing (28)
frontend/apps/console/src/App.tsxfrontend/apps/console/src/__tests__/App.test.tsxfrontend/apps/console/src/features/connections/pages/ConnectionCreateWizardRoute.tsxfrontend/apps/console/src/features/connections/pages/__tests__/ConnectionCreateWizardRoute.test.tsxfrontend/apps/console/src/features/trusted-issuers/api/useDeleteTrustedIssuer.tsfrontend/apps/console/src/features/trusted-issuers/components/TrustedIssuerDeleteDialog.tsxfrontend/apps/console/src/features/trusted-issuers/pages/TrustedIssuerWizardStep.tsxfrontend/apps/console/src/features/trusted-issuers/pages/__tests__/TrustedIssuerWizardStep.test.tsxfrontend/packages/configure-connections/src/api/useCreateTrustedIssuer.tsfrontend/packages/configure-connections/src/api/useTrustedIssuer.tsfrontend/packages/configure-connections/src/api/useUpdateTrustedIssuer.tsfrontend/packages/configure-connections/src/components/TrustedIssuerCreateForm.tsxfrontend/packages/configure-connections/src/components/__tests__/TrustedIssuerCreateForm.test.tsxfrontend/packages/configure-connections/src/components/create-connection/SelectConnectionType.tsxfrontend/packages/configure-connections/src/components/create-connection/__tests__/SelectConnectionType.test.tsxfrontend/packages/configure-connections/src/constants/query-keys.tsfrontend/packages/configure-connections/src/index.tsfrontend/packages/configure-connections/src/models/trusted-issuer.tsfrontend/packages/configure-connections/src/pages/ConnectionCreateWizardPage.tsxfrontend/packages/configure-connections/src/pages/TrustedIssuerDetailPage.tsxfrontend/packages/configure-connections/src/pages/__tests__/ConnectionCreateWizardPage.test.tsxfrontend/packages/configure-connections/src/pages/__tests__/TrustedIssuerDetailPage.test.tsxfrontend/packages/configure-connections/src/utils/__tests__/isTrustedIssuerFormDirty.test.tsfrontend/packages/configure-connections/src/utils/__tests__/mapConnectionToTrustedIssuer.test.tsfrontend/packages/configure-connections/src/utils/isTrustedIssuerFormDirty.tsfrontend/packages/configure-connections/src/utils/mapConnectionToTrustedIssuer.tsfrontend/packages/configure-connections/src/utils/validateTrustedIssuerForm.tsfrontend/packages/i18n/src/locales/en-US.ts
💤 Files with no reviewable changes (6)
- frontend/apps/console/src/features/trusted-issuers/pages/tests/TrustedIssuerWizardStep.test.tsx
- frontend/apps/console/src/features/trusted-issuers/api/useDeleteTrustedIssuer.ts
- frontend/apps/console/src/features/connections/pages/tests/ConnectionCreateWizardRoute.test.tsx
- frontend/apps/console/src/features/connections/pages/ConnectionCreateWizardRoute.tsx
- frontend/apps/console/src/features/trusted-issuers/pages/TrustedIssuerWizardStep.tsx
- frontend/apps/console/src/features/trusted-issuers/components/TrustedIssuerDeleteDialog.tsx
🚧 Files skipped from review as they are similar to previous changes (15)
- frontend/packages/configure-connections/src/utils/mapConnectionToTrustedIssuer.ts
- frontend/packages/configure-connections/src/api/useCreateTrustedIssuer.ts
- frontend/packages/configure-connections/src/api/useTrustedIssuer.ts
- frontend/packages/configure-connections/src/constants/query-keys.ts
- frontend/packages/configure-connections/src/utils/isTrustedIssuerFormDirty.ts
- frontend/packages/configure-connections/src/utils/validateTrustedIssuerForm.ts
- frontend/packages/configure-connections/src/index.ts
- frontend/packages/configure-connections/src/pages/tests/TrustedIssuerDetailPage.test.tsx
- frontend/packages/configure-connections/src/utils/tests/isTrustedIssuerFormDirty.test.ts
- frontend/packages/configure-connections/src/models/trusted-issuer.ts
- frontend/packages/configure-connections/src/pages/ConnectionCreateWizardPage.tsx
- frontend/packages/configure-connections/src/api/useUpdateTrustedIssuer.ts
- frontend/packages/configure-connections/src/pages/tests/ConnectionCreateWizardPage.test.tsx
- frontend/packages/configure-connections/src/components/create-connection/tests/SelectConnectionType.test.tsx
- frontend/apps/console/src/App.tsx
Consolidate the trusted issuer UI alongside the rest of the connection management code by relocating it from the console app into the `@thunderid/configure-connections` package. - Move the trusted issuer API hooks, models, utils, components, pages, and their tests from `apps/console/src/features/trusted-issuers` into `packages/configure-connections/src`. - Move the connection create wizard route out of `apps/console/src/features/connections` and fold it into the package's `ConnectionCreateWizardPage`, wiring the trusted issuer step in directly. - Export `TrustedIssuerDetailPage` from the package and update the console to lazy-load `ConnectionCreateWizardPage` and `TrustedIssuerDetailPage` from `@thunderid/configure-connections`. - Add the `TRUSTED_ISSUER` query key to the package's connection query keys and drop the now-unused console-local copies. - Resolve the trusted-issuer navigation destinations through `useConnectionRoutes()` instead of hardcoding `/trusted-issuers/:id` and `/connections`, so host applications can remount this package under a different URL prefix.
baa0ea9 to
e248167
Compare
Purpose
Consolidate the trusted issuer UI alongside the rest of the connection management code by moving it out of the console app and into the
@thunderid/configure-connectionspackage. This keeps all connection related screens, hooks, and models in one package so the console only wires up routes.Approach
frontend/apps/console/src/features/trusted-issuersintofrontend/packages/configure-connections/src.frontend/apps/console/src/features/connectionsand folded it into the package'sConnectionCreateWizardPage, wiring the trusted issuer step in directly.TrustedIssuerDetailPagefrom the package and updated the console to lazy-loadConnectionCreateWizardPageandTrustedIssuerDetailPagefrom@thunderid/configure-connections.TRUSTED_ISSUERquery key to the package's connection query keys and removed the now-unused console-local copies.No behavior change: routes and navigation targets are unchanged; this is a structural move.
Related Issues
Related PRs
Checklist
breaking changelabel added.Security checks
Summary by CodeRabbit