Commit graph

16 commits

Author SHA1 Message Date
lucasgarfield
61c25e8331 Router: Hotfix to update experimental flag
We failed to update the experimental flag in the routing to use the new
useExperimentalFlag hook. This led to the V2 wizard being exposed in
stage-stable. This commit fixes the bug.
2024-03-07 16:24:21 +01:00
Amir
45d50b2440 Blueprints: Add blueprint editing 2024-03-04 14:48:32 +01:00
Thomas Lavocat
9a1b823eed wizard: prepare a dev env to create the new wizard
Developing a new wizard will require many pull requests and some of them
might even be worked on in parallel. To allow to develop all of that
without interfering with the legacy wizard this commit introduces a new
dev environment alongside an unleash flag when we later want to do the
switch.

To use the new dev en use `npm run stage-beta:experimental` or `npm run
stage-beta:msw+experimental` depending on what you want.

Then unleash flag to toggle in stage and prod is: `image-builder.new-wizard.enabled`

fixes: HMS-2859
2023-11-09 12:43:01 +01:00
Thomas Lavocat
cbe710e75e wizard: don't show the form as a modal
When the user clicks on the "create an image" button, the image wizard
shows up replacing the landing page. This allows to keep the quickstart
guides to the right of the wizard while the user is interacting with it.
2023-10-09 11:40:40 +02:00
Thomas Lavocat
178791f2ad router: lazy loading needs a suspense tag
According to the React documentation[0], a suspense tag is needed to
encapsulate a lazy loaded component. Some bad behavior have been fix in
the UI thanks to that tag (i.e notification popup unclosable after
wizard creation).

[0] https://react.dev/reference/react/lazy#suspense-for-code-splitting
2023-08-17 15:37:21 +02:00
Djebran Lezzoum
f332dff5b9 edgeImageDetails: Implement manage edge image details page.
In the context of HMS parity stage 1, implement federated manage edge image page at route manage-edge-image.
2023-06-13 20:46:37 +02:00
lucasgarfield
bc1435994d Router: Modify /share and /imagewizard routing
Insights offers 'quickstarts', which can be used to provide
mini-tutorials in a sidebar.

Unfortunately, these quickstarts change our URL... they add an optional
query parameter related to the quickstart. The process of doing so
destroys our router's `location`, setting it to undefined.

We have been using the location state to store the GUID of the image,
needed when opening the wizard via the `Recreate image` action or when
opening the share modal.

As a workaround, we can simply accept that the quickstarts will change
our URL and destroy our router's location. Instead, we now put the image
id (its UUID) in the route itself. We can access it in the components as
necessary via the useParams hook.
2023-04-20 14:59:12 +02:00
Martin Maroši
0f89ced2a0 Change routing to consume chrome history context. 2023-01-12 15:41:26 +01:00
regexowl
ab1a7f4aab ESLint: Use --fix with updated rules to order imports
This applies the updated sorting rules to the files by running `npm run lint:js:fix`
2022-12-02 16:29:58 +01:00
lucasgarfield
a42a6a220f ShareImageModal: Add ShareImageModal to clone (share) AWS composes 2022-11-08 11:29:31 +01:00
Sanne Raymaekers
03421acc74 src/Router: use release as a basename in BrowserRouter
The insights platform is moving to react router v6, meaning router
contexts can no longer be nested. As a result all applications will end
up sharing the same `BrowserRouter`.

Switch to using the release (`/` or `/beta/`) as a basename for the
BrowserRouter, and offload the full path (`/insights/$appname`) to the
individual routes. This makes it easier to drop the BrowserRouter in
image builder for the platform one in future.
2022-10-17 15:53:21 +02:00
Jacob Kozol
4fa71cede8 update style across the project
The eslint updates require style changes in all components.
2022-05-23 12:47:20 +02:00
Sanne Raymaekers
6567323ef6 Router: Replace landing with catch-all route
This also mitigates the issue where clicking the image-builder nav link
would redirect you to `image-builder/image-builder` if image-builder was
already opened. And `/` didn't catch that path.
2021-11-30 16:12:43 +01:00
Jacob Kozol
50a515db1e Router: change Redirect to a Navigate
React router is moving away from redirects in favor of server side
redirecting since redirects are confusing because the initial "invalid"
route will still return a 200 status and redirecting unnecessarily
wastes resources. Instead of server routing we can also place our
Redirect inside of a Route as an element. Also, instead of using a
Redirect we use a Navigate. This is due to changes in how React Router
handles the history.
2021-11-18 19:06:56 +01:00
Jacob Kozol
81acb2bb57 Router: update Route components
In React Router v6 the Route paramater 'exact' is replaced by using a
trailing * to indicate the path matches deeply. Also, elements are now
preferred over components. React, itself, has also been making this
switch. Using elements is simpler than components and integrates
better with hooks.
2021-11-18 19:06:56 +01:00
Jacob Kozol
c6f2ed227f Router: change the Switch component to a Routes component
In React Router v6 the Switch element is replaced by Routes. All links
inside a <Routes> are relative and routes can be placed in any order
now.
2021-11-18 19:06:56 +01:00
Renamed from src/Routes.js (Browse further)