The frontend component library decoupled notifications from redux.
Dispatching notifications via the notifications middleware was replaced
by a new `useAddNotifications` hook.
We mostly used the notifications middleware outside of React Components
in our `enhancedImageBuilderApi` store for mutation events. I created a
wrapper around the RTK hooks that uses the `useAddNotification` hook
and created a directory for the new hooks.
In other places, where we were using the notification dispatcher inside
React components, I replaced the call with the new hook.
[1] b1d4973144/packages/notifications/doc/migration.md
bump @redhat-cloud-services/frontend-components-notifications
---
updated-dependencies:
- dependency-name: "@redhat-cloud-services/frontend-components-notifications"
dependency-version: 6.0.2
dependency-type: direct:production
update-type: version-update:semver-major
...
Co-authored-by: dependabot[bot] <support@github.com>
Assisted-by: cursor ide for generalizing the `useMutationWithNotification`
hook.
- Add required distribution field to RecommendPackageRequest
- Add modelVersion field to RecommendationsResponse
- Update frontend to send RHEL major version to API
- Add analytics tracking for distribution and modelVersion
Enables version-specific package recommendations and model usage tracking.
Split out the unit tests into their own action. This decouples the unit tests
from the other tests. This means the gitlab schutzbot tests don't have to
wait until the unit tests are completed before they are triggered. This
also a step towards splitting out the tests so it is more obvious to see
which step is failing and why.
This adds a mock handler for the templates/:uuid end point to resolve following warning in the test output:
```
[MSW] Error: intercepted a request without a matching request handler:
• GET /api/content-sources/v1/templates/c40e221b-93d6-4f7e-a704-f3041b8d75c3
```
This moves the `ManageRepositoriesButton` component to its own file and deduplicates it in the code base.
Tooltip for Upload repositories was also fixed and is now readable again.
In order to fix the flakiness in cockpit plugin tests introduced by the single login, the tests need a check if they are authenticated at the start of their execution and relog in case the session expired.
This adds mock handler for newly used `repository_parameters` end point, ensuring the warning about missing handler is not being printed to test output when runnning `npm run test`.
Disable a package if it's a conflicting module stream or if it's a non-modular package whose base name is already covered by an enabled module stream.
Disable a module if anouther package with the same name was selected.
Fixes#3274
This adds more information to the recommended packages expandable to highlight that:
- all needed dependencies will be included by default
- recommendations are optional and based on choices of other users
Add a single login for all tests in the form of a global setup. This commit also removes the login from all tests and replaces it with navigation to landing page and revamps the popup closing logic from being applied in logging step into a separate fixture.
The `onChange` event for the selectable cards needed to be placed
inside the `selectableActions` of the `CardHeader`. Since the
`onChange` action was not implemented we were getting warnings
in the test output for that a component was changing an uncontrolled
input to controlled.
A setState action was occuring in during render in the customStatusNavItem
component of the CreateImageWizard. We just needed to wrap this setState
call in a useEffect hook. I also renamed the component to CustomStatusNavItem
for React component naming conventions.
See: https://reactjs.org/link/setstate-in-render