Quellcode durchsuchen

Fork off legacy components into subdirectory (#4665)

Feroze Mohideen vor 2 Jahren
Ursprung
Commit
3bf3112ee6
100 geänderte Dateien mit 1014 neuen und 1 gelöschten Zeilen
  1. 1 0
      dashboard/.eslintignore
  2. 2 1
      dashboard/.prettierignore
  3. 185 0
      dashboard/legacy/main/home/cluster-dashboard/DashboardRouter.tsx
  4. 60 0
      dashboard/src/legacy/App.tsx
  5. 1 0
      dashboard/src/legacy/__mocks__/fileMock.js
  6. 27 0
      dashboard/src/legacy/__tests__/CreateProject.test.tsx
  7. 24 0
      dashboard/src/legacy/assets/GithubIcon.tsx
  8. 123 0
      dashboard/src/legacy/assets/GoogleIcon.tsx
  9. BIN
      dashboard/src/legacy/assets/Light Gradient 08.png
  10. BIN
      dashboard/src/legacy/assets/add-circle.png
  11. 9 0
      dashboard/src/legacy/assets/add-on-grad.svg
  12. BIN
      dashboard/src/legacy/assets/add-ons-bold.png
  13. BIN
      dashboard/src/legacy/assets/add-ons.png
  14. 3 0
      dashboard/src/legacy/assets/add-ons.svg
  15. 3 0
      dashboard/src/legacy/assets/alert-red.svg
  16. 3 0
      dashboard/src/legacy/assets/alert-triangle.svg
  17. 3 0
      dashboard/src/legacy/assets/alert-warning.svg
  18. 3 0
      dashboard/src/legacy/assets/alert_square.svg
  19. BIN
      dashboard/src/legacy/assets/amazon-rds.png
  20. BIN
      dashboard/src/legacy/assets/app_event.png
  21. 9 0
      dashboard/src/legacy/assets/application-grad.svg
  22. BIN
      dashboard/src/legacy/assets/applications.png
  23. 5 0
      dashboard/src/legacy/assets/applications.svg
  24. 3 0
      dashboard/src/legacy/assets/arrow-down.svg
  25. 3 0
      dashboard/src/legacy/assets/arrow-left-square-contained.svg
  26. BIN
      dashboard/src/legacy/assets/aws-elasticache.png
  27. BIN
      dashboard/src/legacy/assets/aws-normal.png
  28. BIN
      dashboard/src/legacy/assets/aws-white.png
  29. BIN
      dashboard/src/legacy/assets/aws.png
  30. BIN
      dashboard/src/legacy/assets/azure.png
  31. BIN
      dashboard/src/legacy/assets/back_arrow.png
  32. 3 0
      dashboard/src/legacy/assets/bar-group-03.svg
  33. BIN
      dashboard/src/legacy/assets/blog.png
  34. 9 0
      dashboard/src/legacy/assets/bolt.svg
  35. BIN
      dashboard/src/legacy/assets/box.png
  36. BIN
      dashboard/src/legacy/assets/branch.png
  37. BIN
      dashboard/src/legacy/assets/build.png
  38. 3 0
      dashboard/src/legacy/assets/calendar-02.svg
  39. 3 0
      dashboard/src/legacy/assets/calendar-number.svg
  40. 5 0
      dashboard/src/legacy/assets/cancel.svg
  41. 3 0
      dashboard/src/legacy/assets/canceled.svg
  42. 4 0
      dashboard/src/legacy/assets/category.svg
  43. 3 0
      dashboard/src/legacy/assets/chat.svg
  44. BIN
      dashboard/src/legacy/assets/check.png
  45. 3 0
      dashboard/src/legacy/assets/check.svg
  46. BIN
      dashboard/src/legacy/assets/close-rounded.png
  47. BIN
      dashboard/src/legacy/assets/close.png
  48. BIN
      dashboard/src/legacy/assets/close_rounded.png
  49. BIN
      dashboard/src/legacy/assets/cloud-formation-stack-complete.png
  50. 54 0
      dashboard/src/legacy/assets/cluster.svg
  51. 15 0
      dashboard/src/legacy/assets/code-branch-icon.tsx
  52. 3 0
      dashboard/src/legacy/assets/collapse-sidebar.svg
  53. 35 0
      dashboard/src/legacy/assets/command-line-icon.tsx
  54. BIN
      dashboard/src/legacy/assets/community.png
  55. 9 0
      dashboard/src/legacy/assets/compliance-grad.svg
  56. BIN
      dashboard/src/legacy/assets/compliance.png
  57. 3 0
      dashboard/src/legacy/assets/compliance.svg
  58. 3 0
      dashboard/src/legacy/assets/computer-chip.svg
  59. 3 0
      dashboard/src/legacy/assets/connect.svg
  60. 3 0
      dashboard/src/legacy/assets/copy-left.svg
  61. 3 0
      dashboard/src/legacy/assets/copy.svg
  62. 1 0
      dashboard/src/legacy/assets/credit-card.svg
  63. BIN
      dashboard/src/legacy/assets/creds.png
  64. 4 0
      dashboard/src/legacy/assets/danger.svg
  65. 9 0
      dashboard/src/legacy/assets/database-grad.svg
  66. 3 0
      dashboard/src/legacy/assets/database.svg
  67. BIN
      dashboard/src/legacy/assets/deploy.png
  68. 279 0
      dashboard/src/legacy/assets/devicons-name-list.ts
  69. 1 0
      dashboard/src/legacy/assets/discord.svg
  70. BIN
      dashboard/src/legacy/assets/do.png
  71. BIN
      dashboard/src/legacy/assets/docs.png
  72. 6 0
      dashboard/src/legacy/assets/document.svg
  73. BIN
      dashboard/src/legacy/assets/doppler.png
  74. 5 0
      dashboard/src/legacy/assets/dot-vertical.svg
  75. 4 0
      dashboard/src/legacy/assets/down-arrow.svg
  76. BIN
      dashboard/src/legacy/assets/drawer-bg.png
  77. 1 0
      dashboard/src/legacy/assets/edit-button.svg
  78. 3 0
      dashboard/src/legacy/assets/edit-contained.svg
  79. 4 0
      dashboard/src/legacy/assets/edit.svg
  80. 9 0
      dashboard/src/legacy/assets/env-group-grad.svg
  81. 3 0
      dashboard/src/legacy/assets/env-groups.svg
  82. BIN
      dashboard/src/legacy/assets/expand.png
  83. 3 0
      dashboard/src/legacy/assets/external-link.svg
  84. 1 0
      dashboard/src/legacy/assets/eye-off.svg
  85. 1 0
      dashboard/src/legacy/assets/eye.svg
  86. BIN
      dashboard/src/legacy/assets/failure.png
  87. 3 0
      dashboard/src/legacy/assets/failure.svg
  88. 4 0
      dashboard/src/legacy/assets/fast-backward.svg
  89. 1 0
      dashboard/src/legacy/assets/file-branch.svg
  90. 1 0
      dashboard/src/legacy/assets/file-diff.svg
  91. 4 0
      dashboard/src/legacy/assets/file.svg
  92. 3 0
      dashboard/src/legacy/assets/file_v2.svg
  93. 1 0
      dashboard/src/legacy/assets/filter-outline-icon.svg
  94. BIN
      dashboard/src/legacy/assets/filter-outline-new.png
  95. 3 0
      dashboard/src/legacy/assets/filter-outline-white.svg
  96. 3 0
      dashboard/src/legacy/assets/filter-outline.svg
  97. 3 0
      dashboard/src/legacy/assets/filter.svg
  98. 9 0
      dashboard/src/legacy/assets/fire.svg
  99. 4 0
      dashboard/src/legacy/assets/folder-outline.svg
  100. 4 0
      dashboard/src/legacy/assets/folder.svg

+ 1 - 0
dashboard/.eslintignore

@@ -0,0 +1 @@
+src/legacy/

+ 2 - 1
dashboard/.prettierignore

@@ -1,3 +1,4 @@
 # Ignore artifacts:
 build
-coverage
+coverage
+src/legacy/

+ 185 - 0
dashboard/legacy/main/home/cluster-dashboard/DashboardRouter.tsx

@@ -0,0 +1,185 @@
+import React, { useContext, useEffect, useState } from "react";
+import loadable from "@loadable/component";
+import { RouteComponentProps, withRouter } from "react-router";
+import { Route, Switch } from "react-router-dom";
+import styled from "styled-components";
+
+import Loading from "components/Loading";
+
+import api from "shared/api";
+import { withAuth, WithAuthProps } from "shared/auth/AuthorizationHoc";
+import GuardedRoute from "shared/auth/RouteGuard";
+import { Context } from "shared/Context";
+import { getQueryParam, PorterUrl, pushQueryParams } from "shared/routing";
+import { ClusterType } from "shared/types";
+
+import AppDashboard from "./apps/AppDashboard.ts";
+import DashboardRoutes from "./dashboard/Routes.ts";
+import EnvGroupDashboard from "./env-groups/EnvGroupDashboard.ts";
+import ExpandedEnvGroupDashboard from "./env-groups/ExpandedEnvGroupDashboard.ts";
+import ExpandedChartWrapper from "./expanded-chart/ExpandedChartWrapper.ts";
+import JobDashboard from "./jobs/JobDashboard.ts";
+
+const LazyPreviewEnvironmentsRoutes = loadable(
+  // @ts-ignore
+  () => import("./preview-environments/routes.tsx"),
+  {
+    fallback: <Loading />,
+  }
+);
+
+const LazyStackRoutes = loadable(
+  // @ts-ignore
+  () => import("./stacks/routes.tsx"),
+  {
+    fallback: <Loading />,
+  }
+);
+
+type Props = RouteComponentProps &
+  WithAuthProps & {
+    currentCluster: ClusterType;
+    setSidebar: (x: boolean) => void;
+    currentView: PorterUrl;
+  };
+
+// TODO: should try to maintain single source of truth b/w router and context/state (ex: namespace -> being managed in parallel right now so highly inextensible and routing is fragile)
+const DashboardRouter: React.FC<Props> = ({
+  setSidebar,
+  currentView,
+  ...props
+}) => {
+  const { currentProject, currentCluster } = useContext(Context);
+  const [namespace, setNamespace] = useState(null);
+  const [sortType, setSortType] = useState(
+    localStorage.getItem("SortType") || "Newest"
+  );
+  const [currentChart, setCurrentChart] = useState(null);
+  const [isMetricsInstalled, setIsMetricsInstalled] = useState(false);
+
+  useEffect(() => {
+    // Don't add cluster as query param if present in path
+    const { cluster } = props.match?.params as any;
+    if (!cluster) {
+      pushQueryParams(props, { cluster: currentCluster.name });
+    }
+    api
+      .getPrometheusIsInstalled(
+        "<token>",
+        {},
+        {
+          id: currentProject.id,
+          cluster_id: currentCluster.id,
+        }
+      )
+      .then((res) => {
+        setIsMetricsInstalled(true);
+      })
+      .catch(() => {
+        setIsMetricsInstalled(false);
+      });
+  }, []);
+
+  // Reset namespace filter and close expanded chart on cluster change
+  useEffect(() => {
+    let namespace = "default";
+    let localStorageNamespace = localStorage.getItem(
+      `${currentProject.id}-${currentCluster.id}-namespace`
+    );
+    if (localStorageNamespace) {
+      namespace = localStorageNamespace;
+    }
+    setNamespace(namespace);
+    setSortType(localStorage.getItem("SortType") || "Newest");
+    setCurrentChart(null);
+
+    // ret2
+    pushQueryParams(props, { namespace });
+  }, [currentCluster]);
+
+  useEffect(() => {
+    let { currentNamespace } =
+      currentProject?.simplified_view_enabled &&
+      currentProject?.capi_provisioner_enabled
+        ? "porter-env-group"
+        : (props.match?.params as any);
+    if (!currentNamespace) {
+      currentNamespace =
+        currentProject?.simplified_view_enabled &&
+        currentProject?.capi_provisioner_enabled
+          ? "porter-env-group"
+          : getQueryParam(props, "namespace");
+    }
+    setSortType("Newest");
+    setCurrentChart(null);
+    setNamespace(currentNamespace || "default");
+    pushQueryParams(props, { namespace: currentNamespace || "default" });
+  }, [currentView]);
+
+  return (
+    <Switch>
+      <Route path={"/stacks"}>
+        <LazyStackRoutes />
+      </Route>
+      <Route path={"/preview-environments"}>
+        <LazyPreviewEnvironmentsRoutes />
+      </Route>
+      <Route path="/:baseRoute/:clusterName+/:namespace/:chartName">
+        <ExpandedChartWrapper
+          setSidebar={setSidebar}
+          isMetricsInstalled={isMetricsInstalled}
+        />
+      </Route>
+      <GuardedRoute
+        path={"/applications"}
+        scope="application"
+        resource=""
+        verb={["get", "list"]}
+      >
+        <AppDashboard
+          currentView={currentView}
+          namespace={namespace}
+          setNamespace={setNamespace}
+          sortType={sortType}
+          setSortType={setSortType}
+        />
+      </GuardedRoute>
+      <GuardedRoute
+        path={"/jobs"}
+        scope="job"
+        resource=""
+        verb={["get", "list"]}
+      >
+        <JobDashboard
+          currentView={currentView}
+          namespace={namespace}
+          setNamespace={setNamespace}
+          sortType={sortType}
+        />
+      </GuardedRoute>
+      <GuardedRoute
+        path={"/env-groups/:name"}
+        scope="env_group"
+        resource=""
+        verb={["get", "list"]}
+      >
+        <ExpandedEnvGroupDashboard currentCluster={currentCluster} />
+      </GuardedRoute>
+      <GuardedRoute
+        path={"/env-groups"}
+        scope="env_group"
+        resource=""
+        verb={["get", "list"]}
+      >
+        <EnvGroupDashboard currentCluster={currentCluster} />
+      </GuardedRoute>
+      <Route path={["/cluster-dashboard"]}>
+        <DashboardRoutes />
+      </Route>
+    </Switch>
+  );
+};
+
+export default withRouter(withAuth(DashboardRouter));
+
+const StyledTemplateComponent = styled.div``;

+ 60 - 0
dashboard/src/legacy/App.tsx

@@ -0,0 +1,60 @@
+import React, { Component } from "react";
+import { QueryClient, QueryClientProvider } from "@tanstack/react-query";
+import PorterErrorBoundary from "legacy/shared/error_handling/PorterErrorBoundary";
+import midnight from "legacy/shared/themes/midnight";
+import standard from "legacy/shared/themes/standard";
+import { BrowserRouter } from "react-router-dom";
+import styled, { createGlobalStyle, ThemeProvider } from "styled-components";
+
+import MainWrapper from "./main/MainWrapper";
+
+const queryClient = new QueryClient();
+
+export default class App extends Component {
+  render() {
+    return (
+      <QueryClientProvider client={queryClient}>
+        <ThemeProvider theme={standard}>
+          <StyledMain>
+            <GlobalStyle />
+            <PorterErrorBoundary errorBoundaryLocation="globalErrorBoundary">
+              <BrowserRouter>
+                <MainWrapper />
+              </BrowserRouter>
+            </PorterErrorBoundary>
+          </StyledMain>
+        </ThemeProvider>
+      </QueryClientProvider>
+    );
+  }
+}
+
+const GlobalStyle = createGlobalStyle`
+  * {
+    box-sizing: border-box;
+    font-family: 'Work Sans', sans-serif;
+    color-scheme: dark;
+  }
+  
+  body {
+    overscroll-behavior-x: none;
+  }
+
+  a {
+    color: #949eff;
+    text-decoration: none;
+  }
+
+  img {
+    max-width: 100%;
+  }
+`;
+
+const StyledMain = styled.div`
+  height: 100vh;
+  width: 100vw;
+  position: fixed;
+  top: 0;
+  left: 0;
+  color: white;
+`;

+ 1 - 0
dashboard/src/legacy/__mocks__/fileMock.js

@@ -0,0 +1 @@
+module.exports = "";

+ 27 - 0
dashboard/src/legacy/__tests__/CreateProject.test.tsx

@@ -0,0 +1,27 @@
+import React from "react";
+
+import { fireEvent, render, screen } from "../test-utils";
+
+import "@testing-library/jest-dom";
+
+import { NewProjectFC } from "../main/home/new-project/NewProject";
+
+/**
+ * @jest-environment jsdom
+ */
+test("create new project with no name", async () => {
+  render(<NewProjectFC />);
+  fireEvent.click(screen.getByText("Create project"));
+  await screen.findByText(/^the name cannot be empty/i);
+});
+
+/**
+ * @jest-environment jsdom
+ */
+test("create new project", async () => {
+  render(<NewProjectFC />);
+  const input = screen.getByPlaceholderText("ex: perspective-vortex");
+  fireEvent.change(input, { target: { value: "hello-world-project" } });
+  fireEvent.click(screen.getByText("Create project"));
+  await screen.findByText(/^creating project/i);
+});

+ 24 - 0
dashboard/src/legacy/assets/GithubIcon.tsx

@@ -0,0 +1,24 @@
+import React, { Component } from "react";
+import styled from "styled-components";
+
+type PropsType = {};
+
+type StateType = {};
+
+export default class GHIcon extends Component<PropsType, StateType> {
+  render() {
+    return (
+      <Svg height="18" width="18" viewBox="0 0 16 16">
+        <path
+          fillRule="evenodd"
+          d="M8 0C3.58 0 0 3.58 0 8c0 3.54 2.29 6.53 5.47 7.59.4.07.55-.17.55-.38 0-.19-.01-.82-.01-1.49-2.01.37-2.53-.49-2.69-.94-.09-.23-.48-.94-.82-1.13-.28-.15-.68-.52-.01-.53.63-.01 1.08.58 1.23.82.72 1.21 1.87.87 2.33.66.07-.52.28-.87.51-1.07-1.78-.2-3.64-.89-3.64-3.95 0-.87.31-1.59.82-2.15-.08-.2-.36-1.02.08-2.12 0 0 .67-.21 2.2.82.64-.18 1.32-.27 2-.27.68 0 1.36.09 2 .27 1.53-1.04 2.2-.82 2.2-.82.44 1.1.16 1.92.08 2.12.51.56.82 1.27.82 2.15 0 3.07-1.87 3.75-3.65 3.95.29.25.54.73.54 1.48 0 1.07-.01 1.93-.01 2.2 0 .21.15.46.55.38A8.013 8.013 0 0016 8c0-4.42-3.58-8-8-8z"
+        />
+      </Svg>
+    );
+  }
+}
+
+const Svg = styled.svg`
+  fill: white;
+  margin-right: 6px;
+`;

+ 123 - 0
dashboard/src/legacy/assets/GoogleIcon.tsx

@@ -0,0 +1,123 @@
+import React, { Component } from "react";
+import styled from "styled-components";
+
+type PropsType = {};
+
+type StateType = {};
+
+export default class GHIcon extends Component<PropsType, StateType> {
+  render() {
+    return (
+      <Svg width="46px" height="46px" viewBox="0 0 46 46" {...this.props}>
+        <title>btn_google_light_normal_ios</title>
+        <desc>Created with Sketch.</desc>
+        <defs>
+          <filter
+            x="-50%"
+            y="-50%"
+            width="200%"
+            height="200%"
+            filterUnits="objectBoundingBox"
+            id="filter-1"
+          >
+            <feOffset
+              dx="0"
+              dy="1"
+              in="SourceAlpha"
+              result="shadowOffsetOuter1"
+            ></feOffset>
+            <feGaussianBlur
+              stdDeviation="0.5"
+              in="shadowOffsetOuter1"
+              result="shadowBlurOuter1"
+            ></feGaussianBlur>
+            <feColorMatrix
+              values="0 0 0 0 0   0 0 0 0 0   0 0 0 0 0  0 0 0 0.168 0"
+              in="shadowBlurOuter1"
+              type="matrix"
+              result="shadowMatrixOuter1"
+            ></feColorMatrix>
+            <feOffset
+              dx="0"
+              dy="0"
+              in="SourceAlpha"
+              result="shadowOffsetOuter2"
+            ></feOffset>
+            <feGaussianBlur
+              stdDeviation="0.5"
+              in="shadowOffsetOuter2"
+              result="shadowBlurOuter2"
+            ></feGaussianBlur>
+            <feColorMatrix
+              values="0 0 0 0 0   0 0 0 0 0   0 0 0 0 0  0 0 0 0.084 0"
+              in="shadowBlurOuter2"
+              type="matrix"
+              result="shadowMatrixOuter2"
+            ></feColorMatrix>
+            <feMerge>
+              <feMergeNode in="shadowMatrixOuter1"></feMergeNode>
+              <feMergeNode in="shadowMatrixOuter2"></feMergeNode>
+              <feMergeNode in="SourceGraphic"></feMergeNode>
+            </feMerge>
+          </filter>
+          <rect id="path-2" x="0" y="0" width="40" height="40" rx="2"></rect>
+        </defs>
+        <g
+          id="Google-Button"
+          stroke="none"
+          stroke-width="1"
+          fill="none"
+          fill-rule="evenodd"
+        >
+          <g id="9-PATCH" transform="translate(-608.000000, -160.000000)"></g>
+          <g
+            id="btn_google_light_normal"
+            transform="translate(-1.000000, -1.000000)"
+          >
+            <g
+              id="button"
+              transform="translate(4.000000, 4.000000)"
+              filter="url(#filter-1)"
+            >
+              <g id="button-bg">
+                <use fill="#FFFFFF" fill-rule="evenodd"></use>
+                <use fill="none"></use>
+                <use fill="none"></use>
+                <use fill="none"></use>
+              </g>
+            </g>
+            <g
+              id="logo_googleg_48dp"
+              transform="translate(15.000000, 15.000000)"
+            >
+              <path
+                d="M17.64,9.20454545 C17.64,8.56636364 17.5827273,7.95272727 17.4763636,7.36363636 L9,7.36363636 L9,10.845 L13.8436364,10.845 C13.635,11.97 13.0009091,12.9231818 12.0477273,13.5613636 L12.0477273,15.8195455 L14.9563636,15.8195455 C16.6581818,14.2527273 17.64,11.9454545 17.64,9.20454545 L17.64,9.20454545 Z"
+                id="Shape"
+                fill="#4285F4"
+              ></path>
+              <path
+                d="M9,18 C11.43,18 13.4672727,17.1940909 14.9563636,15.8195455 L12.0477273,13.5613636 C11.2418182,14.1013636 10.2109091,14.4204545 9,14.4204545 C6.65590909,14.4204545 4.67181818,12.8372727 3.96409091,10.71 L0.957272727,10.71 L0.957272727,13.0418182 C2.43818182,15.9831818 5.48181818,18 9,18 L9,18 Z"
+                id="Shape"
+                fill="#34A853"
+              ></path>
+              <path
+                d="M3.96409091,10.71 C3.78409091,10.17 3.68181818,9.59318182 3.68181818,9 C3.68181818,8.40681818 3.78409091,7.83 3.96409091,7.29 L3.96409091,4.95818182 L0.957272727,4.95818182 C0.347727273,6.17318182 0,7.54772727 0,9 C0,10.4522727 0.347727273,11.8268182 0.957272727,13.0418182 L3.96409091,10.71 L3.96409091,10.71 Z"
+                id="Shape"
+                fill="#FBBC05"
+              ></path>
+              <path
+                d="M9,3.57954545 C10.3213636,3.57954545 11.5077273,4.03363636 12.4404545,4.92545455 L15.0218182,2.34409091 C13.4631818,0.891818182 11.4259091,0 9,0 C5.48181818,0 2.43818182,2.01681818 0.957272727,4.95818182 L3.96409091,7.29 C4.67181818,5.16272727 6.65590909,3.57954545 9,3.57954545 L9,3.57954545 Z"
+                id="Shape"
+                fill="#EA4335"
+              ></path>
+              <path d="M0,0 L18,0 L18,18 L0,18 L0,0 Z" id="Shape"></path>
+            </g>
+            <g id="handles_square"></g>
+          </g>
+        </g>
+      </Svg>
+    );
+  }
+}
+
+const Svg = styled.svg``;

BIN
dashboard/src/legacy/assets/Light Gradient 08.png


BIN
dashboard/src/legacy/assets/add-circle.png


+ 9 - 0
dashboard/src/legacy/assets/add-on-grad.svg

@@ -0,0 +1,9 @@
+<svg width="17" height="18" viewBox="0 0 17 18" fill="none" xmlns="http://www.w3.org/2000/svg">
+<path d="M1 12.875L8.5 17.25L16 12.875M1 9.125L8.5 13.5L16 9.125M1 5.375L8.5 9.75L16 5.375L8.5 1L1 5.375Z" stroke="url(#paint0_linear_851_144)" stroke-width="1.25" stroke-linecap="round" stroke-linejoin="round"/>
+<defs>
+<linearGradient id="paint0_linear_851_144" x1="3" y1="1" x2="16" y2="19.5" gradientUnits="userSpaceOnUse">
+<stop stop-color="#F8F8F8"/>
+<stop offset="1" stop-color="#3C3C3C"/>
+</linearGradient>
+</defs>
+</svg>

BIN
dashboard/src/legacy/assets/add-ons-bold.png


BIN
dashboard/src/legacy/assets/add-ons.png


+ 3 - 0
dashboard/src/legacy/assets/add-ons.svg

@@ -0,0 +1,3 @@
+<svg width="20" height="20" viewBox="0 0 20 20" fill="none" xmlns="http://www.w3.org/2000/svg">
+<path d="M2.5 13.75L10 18.125L17.5 13.75M2.5 10L10 14.375L17.5 10M2.5 6.25L10 10.625L17.5 6.25L10 1.875L2.5 6.25Z" stroke="white" stroke-width="1.25" stroke-linecap="round" stroke-linejoin="round"/>
+</svg>

+ 3 - 0
dashboard/src/legacy/assets/alert-red.svg

@@ -0,0 +1,3 @@
+<svg width="22" height="20" viewBox="0 0 22 20" fill="none" xmlns="http://www.w3.org/2000/svg">
+<path d="M11 10.9708V6.13251M11 14.5571V14.5996M17.0479 18.6292H4.9521C3.29987 18.6292 1.90554 17.525 1.46685 16.0143C1.27959 15.3694 1.50969 14.6977 1.86163 14.1257L7.90956 3.09779C9.32653 0.7952 12.6735 0.795203 14.0905 3.0978L20.1384 14.1257C20.4904 14.6977 20.7205 15.3694 20.5332 16.0143C20.0945 17.525 18.7002 18.6292 17.0479 18.6292Z" stroke="#FF6060" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/>
+</svg>

+ 3 - 0
dashboard/src/legacy/assets/alert-triangle.svg

@@ -0,0 +1,3 @@
+<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
+<path d="M12 12.9708V8.13251M12 16.5571V16.5996M18.0479 20.6292H5.9521C4.29987 20.6292 2.90554 19.525 2.46685 18.0143C2.27959 17.3694 2.50969 16.6977 2.86163 16.1257L8.90956 5.09779C10.3265 2.7952 13.6735 2.7952 15.0905 5.0978L21.1384 16.1257C21.4904 16.6977 21.7205 17.3694 21.5332 18.0143C21.0945 19.525 19.7002 20.6292 18.0479 20.6292Z" stroke="white" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/>
+</svg>

+ 3 - 0
dashboard/src/legacy/assets/alert-warning.svg

@@ -0,0 +1,3 @@
+<svg width="22" height="20" viewBox="0 0 22 20" fill="none" xmlns="http://www.w3.org/2000/svg">
+<path d="M11 10.9708V6.13251M11 14.5571V14.5996M17.0479 18.6292H4.9521C3.29987 18.6292 1.90554 17.525 1.46685 16.0143C1.27959 15.3694 1.50969 14.6977 1.86163 14.1257L7.90956 3.09779C9.32653 0.7952 12.6735 0.795203 14.0905 3.0978L20.1384 14.1257C20.4904 14.6977 20.7205 15.3694 20.5332 16.0143C20.0945 17.525 18.7002 18.6292 17.0479 18.6292Z" stroke="#FFBF00" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/>
+</svg>

+ 3 - 0
dashboard/src/legacy/assets/alert_square.svg

@@ -0,0 +1,3 @@
+<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
+<path d="M12 11.9999V7.1999M12 15.5577V15.5999M21.6 5.9999L21.6 18C21.6 19.9882 19.9882 21.6 18 21.6H6.00002C4.0118 21.6 2.40002 19.9882 2.40002 18V5.9999C2.40002 4.01168 4.0118 2.3999 6.00002 2.3999H18C19.9882 2.3999 21.6 4.01168 21.6 5.9999Z" stroke="white" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/>
+</svg>

BIN
dashboard/src/legacy/assets/amazon-rds.png


BIN
dashboard/src/legacy/assets/app_event.png


+ 9 - 0
dashboard/src/legacy/assets/application-grad.svg

@@ -0,0 +1,9 @@
+<svg width="35" height="34" viewBox="0 0 35 34" fill="none" xmlns="http://www.w3.org/2000/svg">
+<path d="M12.2654 10.332V9.23203H10.0654V10.332H12.2654ZM10.0654 31.9987V33.0987H12.2654V31.9987H10.0654ZM2 9.23398C1.39249 9.23398 0.9 9.72647 0.9 10.334C0.9 10.9415 1.39249 11.434 2 11.434V9.23398ZM33.6667 11.434C34.2742 11.434 34.7667 10.9415 34.7667 10.334C34.7667 9.72647 34.2742 9.23398 33.6667 9.23398V11.434ZM30.3333 30.9H5.33333V33.1H30.3333V30.9ZM5.33333 30.9C4.09918 30.9 3.1 29.9008 3.1 28.6667H0.9C0.9 31.1158 2.88415 33.1 5.33333 33.1V30.9ZM3.1 28.6667V5.33333H0.9V28.6667H3.1ZM3.1 5.33333C3.1 4.09918 4.09918 3.1 5.33333 3.1V0.9C2.88415 0.9 0.9 2.88415 0.9 5.33333H3.1ZM5.33333 3.1H30.3333V0.9H5.33333V3.1ZM30.3333 3.1C31.5675 3.1 32.5667 4.09918 32.5667 5.33333H34.7667C34.7667 2.88415 32.7825 0.9 30.3333 0.9V3.1ZM32.5667 5.33333V28.6667H34.7667V5.33333H32.5667ZM32.5667 28.6667C32.5667 29.9008 31.5675 30.9 30.3333 30.9V33.1C32.7825 33.1 34.7667 31.1158 34.7667 28.6667H32.5667ZM10.0654 10.332V31.9987H12.2654V10.332H10.0654ZM2 11.434H33.6667V9.23398H2V11.434Z" fill="url(#paint0_linear_813_134)"/>
+<defs>
+<linearGradient id="paint0_linear_813_134" x1="2" y1="2" x2="34" y2="32" gradientUnits="userSpaceOnUse">
+<stop stop-color="#F8F8F8"/>
+<stop offset="1" stop-color="#484849"/>
+</linearGradient>
+</defs>
+</svg>

BIN
dashboard/src/legacy/assets/applications.png


+ 5 - 0
dashboard/src/legacy/assets/applications.svg

@@ -0,0 +1,5 @@
+<svg width="20" height="20" viewBox="0 0 20 20" fill="none" xmlns="http://www.w3.org/2000/svg">
+<path fill-rule="evenodd" clip-rule="evenodd" d="M16.2507 17.5H3.75065C2.82982 17.5 2.08398 16.7542 2.08398 15.8333V4.16667C2.08398 3.24583 2.82982 2.5 3.75065 2.5H16.2507C17.1715 2.5 17.9173 3.24583 17.9173 4.16667V15.8333C17.9173 16.7542 17.1715 17.5 16.2507 17.5Z" stroke="white" stroke-width="1.25" stroke-linecap="round" stroke-linejoin="round"/>
+<path d="M6.66667 6.66602V17.4993" stroke="white" stroke-width="1.25" stroke-linecap="square"/>
+<path d="M2.08398 6.66667H17.9173" stroke="white" stroke-width="1.25" stroke-linecap="round" stroke-linejoin="round"/>
+</svg>

+ 3 - 0
dashboard/src/legacy/assets/arrow-down.svg

@@ -0,0 +1,3 @@
+<svg width="16" height="10" viewBox="0 0 16 10" fill="none" xmlns="http://www.w3.org/2000/svg">
+<path d="M15 1.5L8 8.5L1 1.5" stroke="white" stroke-width="1.5" stroke-linecap="round" strokeLinejoin="round"/>
+</svg>

+ 3 - 0
dashboard/src/legacy/assets/arrow-left-square-contained.svg

@@ -0,0 +1,3 @@
+<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
+<path d="M11.3345 16.2426L7.20002 12M7.20002 12L11.3345 7.75729M7.20002 12H16.2843M21.6 5.9999L21.6 18C21.6 19.9882 19.9882 21.6 18 21.6H6.00002C4.0118 21.6 2.40002 19.9882 2.40002 18V5.9999C2.40002 4.01168 4.0118 2.3999 6.00002 2.3999H18C19.9882 2.3999 21.6 4.01168 21.6 5.9999Z" stroke="white" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/>
+</svg>

BIN
dashboard/src/legacy/assets/aws-elasticache.png


BIN
dashboard/src/legacy/assets/aws-normal.png


BIN
dashboard/src/legacy/assets/aws-white.png


BIN
dashboard/src/legacy/assets/aws.png


BIN
dashboard/src/legacy/assets/azure.png


BIN
dashboard/src/legacy/assets/back_arrow.png


+ 3 - 0
dashboard/src/legacy/assets/bar-group-03.svg

@@ -0,0 +1,3 @@
+<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
+<path d="M14.9435 21.0881V3.91211C14.9435 3.35982 14.4958 2.91211 13.9435 2.91211H9.88528C9.333 2.91211 8.88528 3.35982 8.88528 3.91211V21.0881M14.9435 21.0881L14.9419 10.7683C14.9418 10.2159 15.3896 9.76811 15.9419 9.76811H20C20.5523 9.76811 21 10.2158 21 10.7681V20.0881C21 20.6404 20.5523 21.0881 20 21.0881H14.9435ZM14.9435 21.0881H8.88528M8.88528 21.0881V16.0881C8.88528 15.5358 8.43757 15.0881 7.88528 15.0881H4C3.44771 15.0881 3 15.5358 3 16.0881V20.0881C3 20.6404 3.44771 21.0881 4 21.0881H8.88528Z" stroke="white" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/>
+</svg>

BIN
dashboard/src/legacy/assets/blog.png


+ 9 - 0
dashboard/src/legacy/assets/bolt.svg

@@ -0,0 +1,9 @@
+<svg width="27" height="34" viewBox="0 0 27 34" fill="none" xmlns="http://www.w3.org/2000/svg">
+<path d="M24.8382 15.5729L13.6457 31.5627C13.082 32.3573 11.7555 32.0005 11.7555 31.0437L11.7389 21.8974C11.7389 20.8434 10.8269 20.0001 9.69938 19.9839L3.01705 19.9028C2.20457 19.8866 1.72371 19.0595 2.17141 18.4271L13.3639 2.43734C13.9276 1.64272 15.2541 1.9995 15.2541 2.95629L15.2707 12.1026C15.2707 13.1566 16.1827 13.9999 17.3102 14.0161L23.9925 14.0972C24.7884 14.0972 25.2693 14.9405 24.8382 15.5729Z" stroke="url(#paint0_linear_1402_6)" stroke-width="2.2" stroke-linecap="round" stroke-linejoin="round"/>
+<defs>
+<linearGradient id="paint0_linear_1402_6" x1="2" y1="-2.6875" x2="24.2493" y2="32.475" gradientUnits="userSpaceOnUse">
+<stop stop-color="#F8F8F8"/>
+<stop offset="1" stop-color="#484849"/>
+</linearGradient>
+</defs>
+</svg>

BIN
dashboard/src/legacy/assets/box.png


BIN
dashboard/src/legacy/assets/branch.png


BIN
dashboard/src/legacy/assets/build.png


+ 3 - 0
dashboard/src/legacy/assets/calendar-02.svg

@@ -0,0 +1,3 @@
+<svg width="25" height="24" viewBox="0 0 25 24" fill="none" xmlns="http://www.w3.org/2000/svg">
+<path d="M7.5 17.5534V17.4688M12.5625 17.5534V17.4688M12.5625 12.9688V12.8842M17.0625 12.9688V12.8842M4.125 8.46875H19.875M6.16071 2V3.68771M17.625 2V3.6875M17.625 3.6875H6.375C4.51104 3.6875 3 5.19854 3 7.0625V18.3126C3 20.1766 4.51104 21.6876 6.375 21.6876H17.625C19.489 21.6876 21 20.1766 21 18.3126L21 7.0625C21 5.19854 19.489 3.6875 17.625 3.6875Z" stroke="white" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/>
+</svg>

+ 3 - 0
dashboard/src/legacy/assets/calendar-number.svg

@@ -0,0 +1,3 @@
+<svg width="25" height="24" viewBox="0 0 25 24" fill="none" xmlns="http://www.w3.org/2000/svg">
+<path d="M5.125 8.46875H20.875M7.16071 2V3.68771M18.625 2V3.6875M18.625 3.6875H7.375C5.51104 3.6875 4 5.19854 4 7.0625V18.3126C4 20.1766 5.51104 21.6876 7.375 21.6876H18.625C20.489 21.6876 22 20.1766 22 18.3126L22 7.0625C22 5.19854 20.489 3.6875 18.625 3.6875ZM11.875 13.5313L13.5625 11.8438V17.4688M13.5625 17.4688H11.875M13.5625 17.4688H15.25" stroke="white" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/>
+</svg>

+ 5 - 0
dashboard/src/legacy/assets/cancel.svg

@@ -0,0 +1,5 @@
+<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
+<g opacity="0.9">
+<path d="M8.4001 15.5999L15.6001 8.3999M12.0001 21.5999C6.69816 21.5999 2.4001 17.3018 2.4001 11.9999C2.4001 6.69797 6.69816 2.3999 12.0001 2.3999C17.302 2.3999 21.6001 6.69797 21.6001 11.9999C21.6001 17.3018 17.302 21.5999 12.0001 21.5999Z" stroke="white" stroke-width="2" stroke-linecap="round"/>
+</g>
+</svg>

+ 3 - 0
dashboard/src/legacy/assets/canceled.svg

@@ -0,0 +1,3 @@
+<svg width="12" height="12" viewBox="0 0 12 12" fill="none" xmlns="http://www.w3.org/2000/svg">
+<path d="M11 1L1 11M11 11L1 0.999998" stroke="#FFBF00" stroke-width="1" stroke-linecap="round"/>
+</svg>

+ 4 - 0
dashboard/src/legacy/assets/category.svg

@@ -0,0 +1,4 @@
+<svg width="30" height="30" viewBox="0 0 30 30" fill="none" xmlns="http://www.w3.org/2000/svg">
+<path opacity="0.4" d="M20.0943 2.5H24.3268C26.0796 2.5 27.4999 3.93231 27.4999 5.69995V9.96816C27.4999 11.7358 26.0796 13.1681 24.3268 13.1681H20.0943C18.3415 13.1681 16.9211 11.7358 16.9211 9.96816V5.69995C16.9211 3.93231 18.3415 2.5 20.0943 2.5Z" fill="white"/>
+<path fill-rule="evenodd" clip-rule="evenodd" d="M5.67316 2.5H9.90561C11.6584 2.5 13.0788 3.93231 13.0788 5.69995V9.96816C13.0788 11.7358 11.6584 13.1681 9.90561 13.1681H5.67316C3.92032 13.1681 2.5 11.7358 2.5 9.96816V5.69995C2.5 3.93231 3.92032 2.5 5.67316 2.5ZM5.67316 16.8319H9.90561C11.6584 16.8319 13.0788 18.2642 13.0788 20.0318V24.3C13.0788 26.0665 11.6584 27.5 9.90561 27.5H5.67316C3.92032 27.5 2.5 26.0665 2.5 24.3V20.0318C2.5 18.2642 3.92032 16.8319 5.67316 16.8319ZM24.3268 16.8319H20.0944C18.3415 16.8319 16.9212 18.2642 16.9212 20.0318V24.3C16.9212 26.0665 18.3415 27.5 20.0944 27.5H24.3268C26.0797 27.5 27.5 26.0665 27.5 24.3V20.0318C27.5 18.2642 26.0797 16.8319 24.3268 16.8319Z" fill="white"/>
+</svg>

+ 3 - 0
dashboard/src/legacy/assets/chat.svg

@@ -0,0 +1,3 @@
+<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
+<path d="M19.4666 9.86644V5.06644C19.4666 3.88823 18.5114 2.93311 17.3332 2.93311H4.53324C3.35503 2.93311 2.3999 3.88823 2.3999 5.06644V13.4143C2.3999 14.5925 3.35503 15.5476 4.53324 15.5476H6.2028V19.9998L10.655 15.5476H10.9332M16.4405 18.2838L19.2231 21.0664V18.2838H19.4666C20.6448 18.2838 21.5999 17.3287 21.5999 16.1505V12.5331C21.5999 11.3549 20.6448 10.3998 19.4666 10.3998H13.0666C11.8884 10.3998 10.9332 11.3549 10.9332 12.5331V16.1505C10.9332 17.3287 11.8884 18.2838 13.0666 18.2838H16.4405Z" stroke="white" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/>
+</svg>

BIN
dashboard/src/legacy/assets/check.png


+ 3 - 0
dashboard/src/legacy/assets/check.svg

@@ -0,0 +1,3 @@
+<svg width="12" height="10" viewBox="0 0 12 10" fill="none" xmlns="http://www.w3.org/2000/svg">
+<path d="M10.6 1L3.44048 8.2L1 5.74572" stroke="white" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/>
+</svg>

BIN
dashboard/src/legacy/assets/close-rounded.png


BIN
dashboard/src/legacy/assets/close.png


BIN
dashboard/src/legacy/assets/close_rounded.png


BIN
dashboard/src/legacy/assets/cloud-formation-stack-complete.png


+ 54 - 0
dashboard/src/legacy/assets/cluster.svg

@@ -0,0 +1,54 @@
+<svg
+  width="23"
+  height="23"
+  viewBox="0 0 19 19"
+  fill="none"
+  xmlns="http://www.w3.org/2000/svg"
+>
+  <path
+    d="M15.207 12.4403C16.8094 12.4403 18.1092 11.1414 18.1092 9.53907C18.1092 7.93673 16.8094 6.63782 15.207 6.63782"
+    stroke="white"
+    strokeWidth="1.5"
+    strokeLinecap="round"
+    strokeLinejoin="round"
+  />
+  <path
+    d="M3.90217 12.4403C2.29983 12.4403 1 11.1414 1 9.53907C1 7.93673 2.29983 6.63782 3.90217 6.63782"
+    stroke="white"
+    strokeWidth="1.5"
+    strokeLinecap="round"
+    strokeLinejoin="round"
+  />
+  <path
+    fillRule="evenodd"
+    clipRule="evenodd"
+    d="M9.54993 13.4133C7.4086 13.4133 5.69168 11.6964 5.69168 9.55417C5.69168 7.41284 7.4086 5.69592 9.54993 5.69592C11.6913 5.69592 13.4082 7.41284 13.4082 9.55417C13.4082 11.6964 11.6913 13.4133 9.54993 13.4133Z"
+    stroke="white"
+    strokeWidth="1.5"
+    strokeLinecap="round"
+    strokeLinejoin="round"
+  />
+  <path
+    d="M6.66895 15.207C6.66895 16.8094 7.96787 18.1092 9.5702 18.1092C11.1725 18.1092 12.4715 16.8094 12.4715 15.207"
+    stroke="white"
+    strokeWidth="1.5"
+    strokeLinecap="round"
+    strokeLinejoin="round"
+  />
+  <path
+    d="M6.66895 3.90217C6.66895 2.29983 7.96787 1 9.5702 1C11.1725 1 12.4715 2.29983 12.4715 3.90217"
+    stroke="white"
+    strokeWidth="1.5"
+    strokeLinecap="round"
+    strokeLinejoin="round"
+  />
+  <path
+    fillRule="evenodd"
+    clipRule="evenodd"
+    d="M5.69591 9.54996C5.69591 7.40863 7.41283 5.69171 9.55508 5.69171C11.6964 5.69171 13.4133 7.40863 13.4133 9.54996C13.4133 11.6913 11.6964 13.4082 9.55508 13.4082C7.41283 13.4082 5.69591 11.6913 5.69591 9.54996Z"
+    stroke="white"
+    strokeWidth="1.5"
+    strokeLinecap="round"
+    strokeLinejoin="round"
+  />
+</svg>

+ 15 - 0
dashboard/src/legacy/assets/code-branch-icon.tsx

@@ -0,0 +1,15 @@
+import React, { SVGProps } from "react";
+
+function Icon(props: SVGProps<SVGElement>) {
+  return (
+    <svg
+      xmlns="http://www.w3.org/2000/svg"
+      viewBox="0 0 448 512"
+      className={props.className}
+    >
+      <path d="M160 80c0 32.8-19.7 60.1-48 73.3v87.8c18.8-10.9 40.7-17.1 64-17.1h96c35.3 0 64-28.7 64-64v-6.7c-28.3-13.2-48-40.5-48-73.3 0-44.18 35.8-80 80-80s80 35.82 80 80c0 32.8-19.7 60.1-48 73.3v6.7c0 70.7-57.3 128-128 128h-96c-35.3 0-64 28.7-64 64v6.7c28.3 12.3 48 40.5 48 73.3 0 44.2-35.8 80-80 80-44.18 0-80-35.8-80-80 0-32.8 19.75-61 48-73.3V153.3C19.75 140.1 0 112.8 0 80 0 35.82 35.82 0 80 0c44.2 0 80 35.82 80 80zm-80 24c13.25 0 24-10.75 24-24S93.25 56 80 56 56 66.75 56 80s10.75 24 24 24zm288-48c-13.3 0-24 10.75-24 24s10.7 24 24 24 24-10.75 24-24-10.7-24-24-24zM80 456c13.25 0 24-10.7 24-24s-10.75-24-24-24-24 10.7-24 24 10.75 24 24 24z"></path>
+    </svg>
+  );
+}
+
+export default Icon;

+ 3 - 0
dashboard/src/legacy/assets/collapse-sidebar.svg

@@ -0,0 +1,3 @@
+<svg width="18" height="16" viewBox="0 0 18 16" fill="none" xmlns="http://www.w3.org/2000/svg">
+<path d="M5.875 1.25V14.75M2.125 1.25H15.875C16.2202 1.25 16.5 1.52982 16.5 1.875V14.125C16.5 14.4702 16.2202 14.75 15.875 14.75H2.125C1.77982 14.75 1.5 14.4702 1.5 14.125V1.875C1.5 1.52982 1.77982 1.25 2.125 1.25Z" stroke="white" stroke-width="1.25" stroke-linecap="round" stroke-linejoin="round"/>
+</svg>

+ 35 - 0
dashboard/src/legacy/assets/command-line-icon.tsx

@@ -0,0 +1,35 @@
+import React, { SVGProps } from "react";
+import styled from "styled-components";
+
+function CommandLineIcon(props: SVGProps<SVGElement>) {
+  return (
+    <svg
+      xmlns="http://www.w3.org/2000/svg"
+      x="0"
+      y="0"
+      version="1.1"
+      viewBox="0 0 24 24"
+      xmlSpace="preserve"
+      className={props.className}
+      onClick={props.onClick}
+    >
+      <linearGradient
+        x1="825.344"
+        x2="825.344"
+        y1="-528.502"
+        y2="-529.502"
+        gradientUnits="userSpaceOnUse"
+      >
+        <stop offset="0" stopColor="#656565"></stop>
+        <stop offset="0.618" stopColor="#1b1b1b"></stop>
+        <stop offset="0.629" stopColor="#545454"></stop>
+        <stop offset="0.983" stopColor="#3e3e3e"></stop>
+      </linearGradient>
+      <path d="M3.2 17.3L2 15.9c-.2-.2-.2-.6.1-.7l5.4-4.5c.3-.2.3-.6 0-.8L2 5.4c-.2-.2-.2-.5 0-.8l1.2-1.5c.2-.1.5-.2.7 0l7.6 6.3c.5.4.5 1.3 0 1.7l-7.6 6.3c-.2.2-.5.2-.7-.1zM21.6 21H9.4c-.3 0-.6-.2-.6-.5v-1.9c0-.3.2-.5.6-.5h12.2c.3 0 .6.2.6.5v1.9c-.1.3-.3.5-.6.5z"></path>
+    </svg>
+  );
+}
+
+export default CommandLineIcon;
+
+const SVG = styled.svg``;

BIN
dashboard/src/legacy/assets/community.png


+ 9 - 0
dashboard/src/legacy/assets/compliance-grad.svg

@@ -0,0 +1,9 @@
+<svg width="28" height="34" viewBox="0 0 28 34" fill="none" xmlns="http://www.w3.org/2000/svg">
+<path d="M10 15.7018L13 18.578L19 12.8256M2 7.07334L11.3167 2.60729C13.0059 1.79757 14.9941 1.79757 16.6833 2.60729L26 7.07334C26 7.07334 26 15.4717 26 19.901C26 24.3303 21.7293 27.3202 14 32C6.27067 27.3202 2 23.3715 2 19.901V7.07334Z" stroke="url(#paint0_linear_1298_6)" stroke-width="2.2" stroke-linecap="round" stroke-linejoin="round"/>
+<defs>
+<linearGradient id="paint0_linear_1298_6" x1="2" y1="2" x2="45" y2="64.5" gradientUnits="userSpaceOnUse">
+<stop stop-color="#F8F8F8"/>
+<stop offset="1" stop-color="#484849" stop-opacity="0"/>
+</linearGradient>
+</defs>
+</svg>

BIN
dashboard/src/legacy/assets/compliance.png


+ 3 - 0
dashboard/src/legacy/assets/compliance.svg

@@ -0,0 +1,3 @@
+<svg width="33" height="38" viewBox="0 0 33 38" fill="none" xmlns="http://www.w3.org/2000/svg">
+<path d="M13.5895 17.5287L16.8105 20.7883L23.2526 14.2691M5 7.74978L15.0032 2.68826C16.8168 1.77058 18.9516 1.77058 20.7652 2.68826L30.7684 7.74978C30.7684 7.74978 30.7684 17.2679 30.7684 22.2878C30.7684 27.3076 26.1831 30.6962 17.8842 36C9.58535 30.6962 5 26.2211 5 22.2878V7.74978Z" stroke="white" stroke-width="2.5" stroke-linecap="round" stroke-linejoin="round"/>
+</svg>

+ 3 - 0
dashboard/src/legacy/assets/computer-chip.svg

@@ -0,0 +1,3 @@
+<svg width="20" height="20" viewBox="0 0 20 20" fill="none" xmlns="http://www.w3.org/2000/svg">
+<path d="M7.5 15.4167H12.5M7.5 15.4167C5.88917 15.4167 4.58333 14.1108 4.58333 12.5M7.5 15.4167L7.5 17.5M4.58333 12.5V7.5M4.58333 12.5H2.5M15.4167 12.5V7.5M15.4167 12.5C15.4167 14.1108 14.1108 15.4167 12.5 15.4167M15.4167 12.5L17.5 12.5M12.5 15.4167V17.5M12.5 4.58333H7.5M12.5 4.58333C14.1108 4.58333 15.4167 5.88917 15.4167 7.5M12.5 4.58333L12.5 2.5M15.4167 7.5L17.5 7.5M7.5 4.58333C5.88917 4.58333 4.58333 5.88917 4.58333 7.5M7.5 4.58333L7.5 2.5M4.58333 7.5L2.5 7.5M17.5 10H15.4167M4.58333 10H2.5M10 2.5V4.58333M10 15.4167V17.5M8.75 12.5H11.25C11.9404 12.5 12.5 11.9404 12.5 11.25V8.75C12.5 8.05964 11.9404 7.5 11.25 7.5H8.75C8.05964 7.5 7.5 8.05964 7.5 8.75V11.25C7.5 11.9404 8.05964 12.5 8.75 12.5Z" stroke="white" stroke-linecap="round" stroke-linejoin="round"/>
+</svg>

+ 3 - 0
dashboard/src/legacy/assets/connect.svg

@@ -0,0 +1,3 @@
+<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
+<path d="M7.37851 10.1907L5.14505 12.4242C4.31092 13.2583 3.83124 14.3933 3.84001 15.5861C3.84877 16.7789 4.31796 17.9208 5.19167 18.7675C6.03836 19.6413 7.18048 20.1104 8.3731 20.1192C9.59293 20.1282 10.701 19.6755 11.5352 18.8414L13.7687 16.6079M16.6215 13.8097L18.8549 11.5762C19.6891 10.7421 20.1688 9.60711 20.16 8.4143C20.1512 7.22149 19.682 6.0796 18.8083 5.23287C17.9618 4.38638 16.8199 3.91717 15.6271 3.90841C14.4343 3.89964 13.2992 4.35209 12.465 5.18625L10.2315 7.4197M8.6131 15.3274L15.3135 8.62701" stroke="white" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/>
+</svg>

+ 3 - 0
dashboard/src/legacy/assets/copy-left.svg

@@ -0,0 +1,3 @@
+<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
+<path d="M18 9.5999H20.4C21.0628 9.5999 21.6 10.1372 21.6 10.7999L21.6 19.5999C21.6 20.7045 20.7046 21.5999 19.6 21.5999L10.8 21.5999C10.1373 21.5999 9.60003 21.0626 9.60003 20.3999V17.9999M12 2.3999L4.80003 2.3999C3.47454 2.3999 2.40003 3.47442 2.40003 4.7999L2.40002 11.9999C2.40002 13.3254 3.47454 14.3999 4.80002 14.3999L12 14.3999C13.3255 14.3999 14.4 13.3254 14.4 11.9999L14.4 4.7999C14.4 3.47442 13.3255 2.3999 12 2.3999Z" stroke="white" stroke-width="2" stroke-linecap="round"/>
+</svg>

+ 3 - 0
dashboard/src/legacy/assets/copy.svg

@@ -0,0 +1,3 @@
+<svg width="22" height="22" viewBox="0 0 22 22" fill="none" xmlns="http://www.w3.org/2000/svg">
+<path d="M17.25 13.5H19.75C20.4404 13.5 21 12.9404 21 12.25L21 3C21 1.89543 20.1046 1 19 1L9.75 1C9.05965 1 8.5 1.55964 8.5 2.25V4.75M11 21L3.5 21C2.11929 21 1 19.8807 1 18.5L1 11C1 9.61929 2.11929 8.5 3.5 8.5L11 8.5C12.3807 8.5 13.5 9.61929 13.5 11L13.5 18.5C13.5 19.8807 12.3807 21 11 21Z" stroke="white" stroke-width="2" stroke-linecap="round"/>
+</svg>

+ 1 - 0
dashboard/src/legacy/assets/credit-card.svg

@@ -0,0 +1 @@
+<svg xmlns="http://www.w3.org/2000/svg" viewBox="0 0 576 512"><!--!Font Awesome Free 6.5.1 by @fontawesome - https://fontawesome.com License - https://fontawesome.com/license/free Copyright 2024 Fonticons, Inc.--><path fill="white" d="M64 32C28.7 32 0 60.7 0 96v32H576V96c0-35.3-28.7-64-64-64H64zM576 224H0V416c0 35.3 28.7 64 64 64H512c35.3 0 64-28.7 64-64V224zM112 352h64c8.8 0 16 7.2 16 16s-7.2 16-16 16H112c-8.8 0-16-7.2-16-16s7.2-16 16-16zm112 16c0-8.8 7.2-16 16-16H368c8.8 0 16 7.2 16 16s-7.2 16-16 16H240c-8.8 0-16-7.2-16-16z"/></svg>

BIN
dashboard/src/legacy/assets/creds.png


+ 4 - 0
dashboard/src/legacy/assets/danger.svg

@@ -0,0 +1,4 @@
+<svg width="88" height="88" viewBox="0 0 88 88" fill="none" xmlns="http://www.w3.org/2000/svg">
+<path opacity="0.4" d="M17.3164 77.6135C17.2687 77.6135 17.2247 77.6135 17.1734 77.6098C16.0184 77.5511 14.8854 77.3018 13.8074 76.8655C8.50171 74.7095 5.94237 68.6485 8.09471 63.3465L34.9384 16.3178C35.8624 14.6458 37.263 13.2451 38.9717 12.2991C43.9767 9.52715 50.3054 11.3495 53.0737 16.3508L79.7414 63.0201C80.3354 64.4171 80.5884 65.5538 80.6507 66.7125C80.7937 69.4845 79.8477 72.1428 77.9924 74.1998C76.137 76.2568 73.5887 77.4705 70.8204 77.6098L17.5804 77.6135H17.3164Z" fill="white"/>
+<path fill-rule="evenodd" clip-rule="evenodd" d="M40.79 36.743C40.79 34.9757 42.231 33.5347 43.9984 33.5347C45.7657 33.5347 47.2067 34.9757 47.2067 36.743V47.1123C47.2067 48.8833 45.7657 50.3207 43.9984 50.3207C42.231 50.3207 40.79 48.8833 40.79 47.1123V36.743ZM40.79 59.6564C40.79 57.878 42.231 56.4297 43.9984 56.4297C45.7657 56.4297 47.2067 57.8597 47.2067 59.616C47.2067 61.4237 45.7657 62.8647 43.9984 62.8647C42.231 62.8647 40.79 61.4237 40.79 59.6564Z" fill="white"/>
+</svg>

+ 9 - 0
dashboard/src/legacy/assets/database-grad.svg

@@ -0,0 +1,9 @@
+<svg width="16" height="17" viewBox="0 0 16 17" fill="none" xmlns="http://www.w3.org/2000/svg">
+<path d="M14.75 4.75C14.75 6.82107 11.672 8.5 7.875 8.5C4.07804 8.5 1 6.82107 1 4.75M14.75 4.75C14.75 2.67893 11.672 1 7.875 1C4.07804 1 1 2.67893 1 4.75M14.75 4.75V8.5M1 4.75V8.5M14.75 8.5C14.75 10.5703 11.6719 12.25 7.875 12.25C4.07813 12.25 1 10.5703 1 8.5M14.75 8.5V12.25C14.75 14.3203 11.6719 16 7.875 16C4.07813 16 1 14.3203 1 12.25V8.5" stroke="url(#paint0_linear_849_138)" stroke-width="1.25" stroke-linecap="round" stroke-linejoin="round"/>
+<defs>
+<linearGradient id="paint0_linear_849_138" x1="1" y1="1" x2="26" y2="27.5" gradientUnits="userSpaceOnUse">
+<stop stop-color="#F8F8F8"/>
+<stop offset="1" stop-color="#484849" stop-opacity="0"/>
+</linearGradient>
+</defs>
+</svg>

+ 3 - 0
dashboard/src/legacy/assets/database.svg

@@ -0,0 +1,3 @@
+<svg width="20" height="20" viewBox="0 0 20 20" fill="none" xmlns="http://www.w3.org/2000/svg">
+<path d="M16.875 6.25C16.875 8.32107 13.797 10 10 10C6.20304 10 3.125 8.32107 3.125 6.25M16.875 6.25C16.875 4.17893 13.797 2.5 10 2.5C6.20304 2.5 3.125 4.17893 3.125 6.25M16.875 6.25V10M3.125 6.25V10M3.125 10C3.125 12.0703 6.20313 13.75 10 13.75C13.7969 13.75 16.875 12.0703 16.875 10M3.125 10V13.75C3.125 15.8203 6.20313 17.5 10 17.5C13.7969 17.5 16.875 15.8203 16.875 13.75V10" stroke="white" stroke-width="1.25" stroke-linecap="round" stroke-linejoin="round"/>
+</svg>

BIN
dashboard/src/legacy/assets/deploy.png


+ 279 - 0
dashboard/src/legacy/assets/devicons-name-list.ts

@@ -0,0 +1,279 @@
+export const DeviconsNameList = [
+  { name: "adonisjs" },
+  { name: "aftereffects" },
+  { name: "amazonwebservices" },
+  { name: "android" },
+  { name: "androidstudio" },
+  { name: "aarch64" },
+  { name: "angularjs" },
+  { name: "ansible" },
+  { name: "apache" },
+  { name: "apachekafka" },
+  { name: "appcelerator" },
+  { name: "apple" },
+  { name: "appwrite" },
+  { name: "arduino" },
+  { name: "atom" },
+  { name: "azure" },
+  { name: "babel" },
+  { name: "backbonejs" },
+  { name: "bamboo" },
+  { name: "bash" },
+  { name: "behance" },
+  { name: "bitbucket" },
+  { name: "bootstrap" },
+  { name: "bulma" },
+  { name: "bower" },
+  { name: "c" },
+  { name: "cakephp" },
+  { name: "canva" },
+  { name: "centos" },
+  { name: "ceylon" },
+  { name: "chrome" },
+  { name: "circleci" },
+  { name: "clojure" },
+  { name: "cmake" },
+  { name: "clojurescript" },
+  { name: "codecov" },
+  { name: "codeigniter" },
+  { name: "codepen" },
+  { name: "coffeescript" },
+  { name: "composer" },
+  { name: "confluence" },
+  { name: "couchdb" },
+  { name: "cplusplus" },
+  { name: "csharp" },
+  { name: "css3" },
+  { name: "cucumber" },
+  { name: "crystal" },
+  { name: "d3js" },
+  { name: "dart" },
+  { name: "debian" },
+  { name: "denojs" },
+  { name: "devicon" },
+  { name: "django" },
+  { name: "docker" },
+  { name: "doctrine" },
+  { name: "dot-net" },
+  { name: "dotnetcore" },
+  { name: "drupal" },
+  { name: "digitalocean" },
+  { name: "discordjs" },
+  { name: "electron" },
+  { name: "eleventy" },
+  { name: "elixir" },
+  { name: "elm" },
+  { name: "ember" },
+  { name: "embeddedc" },
+  { name: "erlang" },
+  { name: "eslint" },
+  { name: "express" },
+  { name: "facebook" },
+  { name: "feathersjs" },
+  { name: "figma" },
+  { name: "filezilla" },
+  { name: "firebase" },
+  { name: "firefox" },
+  { name: "flask" },
+  { name: "flutter" },
+  { name: "foundation" },
+  { name: "fsharp" },
+  { name: "gatling" },
+  { name: "gatsby" },
+  { name: "rect" },
+  { name: "gcc" },
+  { name: "gentoo" },
+  { name: "gimp" },
+  { name: "git" },
+  { name: "github" },
+  { name: "gitlab" },
+  { name: "gitter" },
+  { name: "go" },
+  { name: "google" },
+  { name: "googlecloud" },
+  { name: "gradle" },
+  { name: "grafana" },
+  { name: "grails" },
+  { name: "graphql" },
+  { name: "groovy" },
+  { name: "grunt" },
+  { name: "gulp" },
+  { name: "godot" },
+  { name: "haskell" },
+  { name: "handlebars" },
+  { name: "haxe" },
+  { name: "heroku" },
+  { name: "html5" },
+  { name: "hugo" },
+  { name: "ie10" },
+  { name: "ifttt" },
+  { name: "illustrator" },
+  { name: "inkscape" },
+  { name: "intellij" },
+  { name: "ionic" },
+  { name: "jamstack" },
+  { name: "jasmine" },
+  { name: "java" },
+  { name: "javascript" },
+  { name: "jeet" },
+  { name: "jest" },
+  { name: "jenkins" },
+  { name: "jetbrains" },
+  { name: "jira" },
+  { name: "jquery" },
+  { name: "julia" },
+  { name: "jupyter" },
+  { name: "kaggle" },
+  { name: "karma" },
+  { name: "kotlin" },
+  { name: "knockout" },
+  { name: "krakenjs" },
+  { name: "kubernetes" },
+  { name: "labview" },
+  { name: "laravel" },
+  { name: "latex" },
+  { name: "less" },
+  { name: "linkedin" },
+  { name: "lua" },
+  { name: "linux" },
+  { name: "materialui" },
+  { name: "matlab" },
+  { name: "magento" },
+  { name: "markdown" },
+  { name: "maya" },
+  { name: "meteor" },
+  { name: "minitab" },
+  { name: "mocha" },
+  { name: "modx" },
+  { name: "mongodb" },
+  { name: "moodle" },
+  { name: "msdos" },
+  { name: "mysql" },
+  { name: "neo4j" },
+  { name: "nestjs" },
+  { name: "networkx" },
+  { name: "nextjs" },
+  { name: "nginx" },
+  { name: "nixos" },
+  { name: "nodejs" },
+  { name: "nodewebkit" },
+  { name: "npm" },
+  { name: "nuget" },
+  { name: "numpy" },
+  { name: "nuxtjs" },
+  { name: "objectivec" },
+  { name: "opera" },
+  { name: "ocaml" },
+  { name: "openal" },
+  { name: "opengl" },
+  { name: "opensuse" },
+  { name: "oracle" },
+  { name: "pandas" },
+  { name: "perl" },
+  { name: "phalcon" },
+  { name: "photoshop" },
+  { name: "php" },
+  { name: "phpstorm" },
+  { name: "podman" },
+  { name: "polygon" },
+  { name: "postgresql" },
+  { name: "premierepro" },
+  { name: "processing" },
+  { name: "protractor" },
+  { name: "putty" },
+  { name: "pycharm" },
+  { name: "python" },
+  { name: "pytorch" },
+  { name: "raspberrypi" },
+  { name: "phoenix" },
+  { name: "qt" },
+  { name: "r" },
+  { name: "rails" },
+  { name: "react" },
+  { name: "redhat" },
+  { name: "redis" },
+  { name: "redux" },
+  { name: "rocksdb" },
+  { name: "ruby" },
+  { name: "rubymine" },
+  { name: "rust" },
+  { name: "safari" },
+  { name: "salesforce" },
+  { name: "sdl" },
+  { name: "rstudio" },
+  { name: "sass" },
+  { name: "scala" },
+  { name: "selenium" },
+  { name: "sequelize" },
+  { name: "shopware" },
+  { name: "shotgrid" },
+  { name: "sketch" },
+  { name: "slack" },
+  { name: "socketio" },
+  { name: "solidity" },
+  { name: "sourcetree" },
+  { name: "spring" },
+  { name: "spss" },
+  { name: "sqlalchemy" },
+  { name: "sqlite" },
+  { name: "subversion" },
+  { name: "microsoftsqlserver" },
+  { name: "ssh" },
+  { name: "stylus" },
+  { name: "svelte" },
+  { name: "swift" },
+  { name: "symfony" },
+  { name: "storybook" },
+  { name: "tailwindcss" },
+  { name: "tensorflow" },
+  { name: "terraform" },
+  { name: "threejs" },
+  { name: "tomcat" },
+  { name: "tortoisegit" },
+  { name: "towergit" },
+  { name: "travis" },
+  { name: "thealgorithms" },
+  { name: "trello" },
+  { name: "twitter" },
+  { name: "typescript" },
+  { name: "typo3" },
+  { name: "ubuntu" },
+  { name: "unity" },
+  { name: "unix" },
+  { name: "unrealengine" },
+  { name: "uwsgi" },
+  { name: "vagrant" },
+  { name: "vim" },
+  { name: "visualstudio" },
+  { name: "vuejs" },
+  { name: "vuestorefront" },
+  { name: "vscode" },
+  { name: "webflow" },
+  { name: "weblate" },
+  { name: "webpack" },
+  { name: "webstorm" },
+  { name: "windows8" },
+  { name: "woocommerce" },
+  { name: "wordpress" },
+  { name: "xamarin" },
+  { name: "xcode" },
+  { name: "xd" },
+  { name: "yarn" },
+  { name: "yii" },
+  { name: "yunohost" },
+  { name: "zend" },
+  { name: "zig" },
+  { name: "pytest" },
+  { name: "opencv" },
+  { name: "fastapi" },
+  { name: "k3s" },
+  { name: "packer" },
+  { name: "anaconda" },
+  { name: "rspec" },
+  { name: "argocd" },
+  { name: "prometheus" },
+  { name: "blender" },
+  { name: "dropwizard" },
+  { name: "vuetify" },
+  { name: "fedora" },
+];

+ 1 - 0
dashboard/src/legacy/assets/discord.svg

@@ -0,0 +1 @@
+<svg id="Layer_1" xmlns="http://www.w3.org/2000/svg" viewBox="0 0 245 240"><style>.st0{fill:#FFFFFF;}</style><path class="st0" d="M104.4 103.9c-5.7 0-10.2 5-10.2 11.1s4.6 11.1 10.2 11.1c5.7 0 10.2-5 10.2-11.1.1-6.1-4.5-11.1-10.2-11.1zM140.9 103.9c-5.7 0-10.2 5-10.2 11.1s4.6 11.1 10.2 11.1c5.7 0 10.2-5 10.2-11.1s-4.5-11.1-10.2-11.1z"/><path class="st0" d="M189.5 20h-134C44.2 20 35 29.2 35 40.6v135.2c0 11.4 9.2 20.6 20.5 20.6h113.4l-5.3-18.5 12.8 11.9 12.1 11.2 21.5 19V40.6c0-11.4-9.2-20.6-20.5-20.6zm-38.6 130.6s-3.6-4.3-6.6-8.1c13.1-3.7 18.1-11.9 18.1-11.9-4.1 2.7-8 4.6-11.5 5.9-5 2.1-9.8 3.5-14.5 4.3-9.6 1.8-18.4 1.3-25.9-.1-5.7-1.1-10.6-2.7-14.7-4.3-2.3-.9-4.8-2-7.3-3.4-.3-.2-.6-.3-.9-.5-.2-.1-.3-.2-.4-.3-1.8-1-2.8-1.7-2.8-1.7s4.8 8 17.5 11.8c-3 3.8-6.7 8.3-6.7 8.3-22.1-.7-30.5-15.2-30.5-15.2 0-32.2 14.4-58.3 14.4-58.3 14.4-10.8 28.1-10.5 28.1-10.5l1 1.2c-18 5.2-26.3 13.1-26.3 13.1s2.2-1.2 5.9-2.9c10.7-4.7 19.2-6 22.7-6.3.6-.1 1.1-.2 1.7-.2 6.1-.8 13-1 20.2-.2 9.5 1.1 19.7 3.9 30.1 9.6 0 0-7.9-7.5-24.9-12.7l1.4-1.6s13.7-.3 28.1 10.5c0 0 14.4 26.1 14.4 58.3 0 0-8.5 14.5-30.6 15.2z"/></svg>

BIN
dashboard/src/legacy/assets/do.png


BIN
dashboard/src/legacy/assets/docs.png


+ 6 - 0
dashboard/src/legacy/assets/document.svg

@@ -0,0 +1,6 @@
+<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
+<path d="M15.7162 16.2234H8.49622" stroke="white" stroke-width="1.5" stroke-linecap="round" strokeLinejoin="round"/>
+<path d="M15.7162 12.0369H8.49622" stroke="white" stroke-width="1.5" stroke-linecap="round" strokeLinejoin="round"/>
+<path d="M11.2513 7.86011H8.49631" stroke="white" stroke-width="1.5" stroke-linecap="round" strokeLinejoin="round"/>
+<path fill-rule="evenodd" clip-rule="evenodd" d="M15.9086 2.74982C15.9086 2.74982 8.23161 2.75382 8.21961 2.75382C5.45961 2.77082 3.75061 4.58682 3.75061 7.35682V16.5528C3.75061 19.3368 5.47261 21.1598 8.25661 21.1598C8.25661 21.1598 15.9326 21.1568 15.9456 21.1568C18.7056 21.1398 20.4156 19.3228 20.4156 16.5528V7.35682C20.4156 4.57282 18.6926 2.74982 15.9086 2.74982Z" stroke="white" stroke-width="1.5" stroke-linecap="round" strokeLinejoin="round"/>
+</svg>

BIN
dashboard/src/legacy/assets/doppler.png


+ 5 - 0
dashboard/src/legacy/assets/dot-vertical.svg

@@ -0,0 +1,5 @@
+<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
+<path d="M12.0001 7.1999C10.6746 7.1999 9.6001 6.12539 9.6001 4.7999C9.6001 3.47442 10.6746 2.3999 12.0001 2.3999C13.3256 2.3999 14.4001 3.47442 14.4001 4.7999C14.4001 6.12539 13.3256 7.1999 12.0001 7.1999Z" stroke="white" stroke-width="2"/>
+<path d="M12.0001 14.3999C10.6746 14.3999 9.6001 13.3254 9.6001 11.9999C9.6001 10.6744 10.6746 9.5999 12.0001 9.5999C13.3256 9.5999 14.4001 10.6744 14.4001 11.9999C14.4001 13.3254 13.3256 14.3999 12.0001 14.3999Z" stroke="white" stroke-width="2"/>
+<path d="M12.0001 21.5999C10.6746 21.5999 9.6001 20.5254 9.6001 19.1999C9.6001 17.8744 10.6746 16.7999 12.0001 16.7999C13.3256 16.7999 14.4001 17.8744 14.4001 19.1999C14.4001 20.5254 13.3256 21.5999 12.0001 21.5999Z" stroke="white" stroke-width="2"/>
+</svg>

+ 4 - 0
dashboard/src/legacy/assets/down-arrow.svg

@@ -0,0 +1,4 @@
+<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
+<path d="M12.2743 19.75V4.75" stroke="white" stroke-width="1.5" stroke-linecap="round" strokeLinejoin="round"/>
+<path d="M18.2987 13.7002L12.2747 19.7502L6.24969 13.7002" stroke="white" stroke-width="1.5" stroke-linecap="round" strokeLinejoin="round"/>
+</svg>

BIN
dashboard/src/legacy/assets/drawer-bg.png


+ 1 - 0
dashboard/src/legacy/assets/edit-button.svg

@@ -0,0 +1 @@
+<svg fill="#FFFFFF" xmlns="http://www.w3.org/2000/svg"  viewBox="0 0 48 48" width="48px" height="48px"><path d="M 36 5.0097656 C 34.205301 5.0097656 32.410791 5.6901377 31.050781 7.0507812 L 8.9160156 29.183594 C 8.4960384 29.603571 8.1884588 30.12585 8.0253906 30.699219 L 5.0585938 41.087891 A 1.50015 1.50015 0 0 0 6.9121094 42.941406 L 17.302734 39.974609 A 1.50015 1.50015 0 0 0 17.304688 39.972656 C 17.874212 39.808939 18.39521 39.50518 18.816406 39.083984 L 40.949219 16.949219 C 43.670344 14.228094 43.670344 9.7719064 40.949219 7.0507812 C 39.589209 5.6901377 37.794699 5.0097656 36 5.0097656 z M 36 7.9921875 C 37.020801 7.9921875 38.040182 8.3855186 38.826172 9.171875 A 1.50015 1.50015 0 0 0 38.828125 9.171875 C 40.403 10.74675 40.403 13.25325 38.828125 14.828125 L 36.888672 16.767578 L 31.232422 11.111328 L 33.171875 9.171875 C 33.957865 8.3855186 34.979199 7.9921875 36 7.9921875 z M 29.111328 13.232422 L 34.767578 18.888672 L 16.693359 36.962891 C 16.634729 37.021121 16.560472 37.065723 16.476562 37.089844 L 8.6835938 39.316406 L 10.910156 31.521484 A 1.50015 1.50015 0 0 0 10.910156 31.519531 C 10.933086 31.438901 10.975086 31.366709 11.037109 31.304688 L 29.111328 13.232422 z"/></svg>

+ 3 - 0
dashboard/src/legacy/assets/edit-contained.svg

@@ -0,0 +1,3 @@
+<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
+<path d="M11.0487 3.35143H5.04873C3.06051 3.35143 1.44873 4.96321 1.44873 6.95143V18.9515C1.44873 20.9398 3.06051 22.5515 5.04873 22.5515H17.0487C19.037 22.5515 20.6487 20.9398 20.6487 18.9515L20.6487 12.9515M7.44873 16.5514L11.8147 15.6717C12.0465 15.625 12.2593 15.5109 12.4264 15.3437L22.2001 5.56461C22.6687 5.09576 22.6684 4.33577 22.1994 3.86731L20.129 1.79923C19.6602 1.33097 18.9006 1.33129 18.4322 1.79995L8.65749 11.58C8.49068 11.7469 8.37678 11.9593 8.33003 12.1906L7.44873 16.5514Z" stroke="white" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/>
+</svg>

+ 4 - 0
dashboard/src/legacy/assets/edit.svg

@@ -0,0 +1,4 @@
+<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
+<path opacity="0.4" d="M16.6643 21.9897H7.33488C5.88835 22.0796 4.46781 21.5781 3.3989 20.6011C2.4219 19.5312 1.92041 18.1107 2.01032 16.6652V7.33482C1.92041 5.88932 2.4209 4.46878 3.3979 3.39889C4.46781 2.42189 5.88835 1.92041 7.33488 2.01032H16.6643C18.1089 1.92041 19.5284 2.4209 20.5973 3.39789C21.5733 4.46878 22.0758 5.88832 21.9899 7.33482V16.6652C22.0788 18.1107 21.5783 19.5312 20.6013 20.6011C19.5314 21.5781 18.1109 22.0796 16.6643 21.9897Z" fill="white"/>
+<path d="M17.0545 10.3976L10.5018 16.9829C10.161 17.3146 9.7131 17.5 9.24574 17.5H6.95762C6.83105 17.5 6.71421 17.4512 6.62658 17.3634C6.53895 17.2756 6.5 17.1585 6.5 17.0317L6.55842 14.7195C6.56816 14.261 6.75315 13.8317 7.07446 13.5098L11.7189 8.8561C11.7967 8.77805 11.9331 8.77805 12.011 8.8561L13.6399 10.4785C13.747 10.5849 13.9028 10.6541 14.0683 10.6541C14.4286 10.6541 14.7109 10.3615 14.7109 10.0102C14.7109 9.83463 14.6428 9.67854 14.5357 9.56146C14.5065 9.52244 12.9554 7.97805 12.9554 7.97805C12.858 7.88049 12.858 7.71463 12.9554 7.61707L13.6078 6.95366C14.2114 6.34878 15.1851 6.34878 15.7888 6.95366L17.0545 8.22195C17.6485 8.81707 17.6485 9.79268 17.0545 10.3976Z" fill="white"/>
+</svg>

+ 9 - 0
dashboard/src/legacy/assets/env-group-grad.svg

@@ -0,0 +1,9 @@
+<svg width="16" height="18" viewBox="0 0 16 18" fill="none" xmlns="http://www.w3.org/2000/svg">
+<path d="M10.1484 4.85156L5.60156 7.77344M5.60156 10.4766L10.1484 13.3984M6 9.125C6 10.5057 4.88071 11.625 3.5 11.625C2.11929 11.625 1 10.5057 1 9.125C1 7.74429 2.11929 6.625 3.5 6.625C4.88071 6.625 6 7.74429 6 9.125ZM14.75 14.75C14.75 16.1307 13.6307 17.25 12.25 17.25C10.8693 17.25 9.75 16.1307 9.75 14.75C9.75 13.3693 10.8693 12.25 12.25 12.25C13.6307 12.25 14.75 13.3693 14.75 14.75ZM14.75 3.5C14.75 4.88071 13.6307 6 12.25 6C10.8693 6 9.75 4.88071 9.75 3.5C9.75 2.11929 10.8693 1 12.25 1C13.6307 1 14.75 2.11929 14.75 3.5Z" stroke="url(#paint0_linear_851_147)" stroke-width="1.2" stroke-linecap="round" stroke-linejoin="round"/>
+<defs>
+<linearGradient id="paint0_linear_851_147" x1="3.5" y1="1" x2="19" y2="22" gradientUnits="userSpaceOnUse">
+<stop stop-color="#F8F8F8"/>
+<stop offset="1" stop-color="#464646"/>
+</linearGradient>
+</defs>
+</svg>

+ 3 - 0
dashboard/src/legacy/assets/env-groups.svg

@@ -0,0 +1,3 @@
+<svg width="16" height="18" viewBox="0 0 16 18" fill="none" xmlns="http://www.w3.org/2000/svg">
+<path d="M10.6484 4.72656L6.10156 7.64844M6.10156 10.3516L10.6484 13.2734M6.5 9C6.5 10.3807 5.38071 11.5 4 11.5C2.61929 11.5 1.5 10.3807 1.5 9C1.5 7.61929 2.61929 6.5 4 6.5C5.38071 6.5 6.5 7.61929 6.5 9ZM15.25 14.625C15.25 16.0057 14.1307 17.125 12.75 17.125C11.3693 17.125 10.25 16.0057 10.25 14.625C10.25 13.2443 11.3693 12.125 12.75 12.125C14.1307 12.125 15.25 13.2443 15.25 14.625ZM15.25 3.375C15.25 4.75571 14.1307 5.875 12.75 5.875C11.3693 5.875 10.25 4.75571 10.25 3.375C10.25 1.99429 11.3693 0.875 12.75 0.875C14.1307 0.875 15.25 1.99429 15.25 3.375Z" stroke="white" stroke-width="1.25" stroke-linecap="round" stroke-linejoin="round"/>
+</svg>

BIN
dashboard/src/legacy/assets/expand.png


+ 3 - 0
dashboard/src/legacy/assets/external-link.svg

@@ -0,0 +1,3 @@
+<svg width="22" height="22" viewBox="0 0 22 22" fill="none" xmlns="http://www.w3.org/2000/svg">
+<path d="M9.7999 1.3999H4.9999C3.01168 1.3999 1.3999 3.01168 1.3999 4.9999V17C1.3999 18.9882 3.01168 20.6 4.9999 20.6H16.9999C18.9881 20.6 20.5999 18.9882 20.5999 17V12.1999M14.5993 1.40019L20.5999 1.3999M20.5999 1.3999V6.80005M20.5999 1.3999L10.399 11.5996" stroke="white" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/>
+</svg>

+ 1 - 0
dashboard/src/legacy/assets/eye-off.svg

@@ -0,0 +1 @@
+<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="#ffffff" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-eye-off"><path d="M9.88 9.88a3 3 0 1 0 4.24 4.24"/><path d="M10.73 5.08A10.43 10.43 0 0 1 12 5c7 0 10 7 10 7a13.16 13.16 0 0 1-1.67 2.68"/><path d="M6.61 6.61A13.526 13.526 0 0 0 2 12s3 7 10 7a9.74 9.74 0 0 0 5.39-1.61"/><line x1="2" x2="22" y1="2" y2="22"/></svg>

+ 1 - 0
dashboard/src/legacy/assets/eye.svg

@@ -0,0 +1 @@
+<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="#ffffff" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-eye"><path d="M2 12s3-7 10-7 10 7 10 7-3 7-10 7-10-7-10-7Z"/><circle cx="12" cy="12" r="3"/></svg>

BIN
dashboard/src/legacy/assets/failure.png


+ 3 - 0
dashboard/src/legacy/assets/failure.svg

@@ -0,0 +1,3 @@
+<svg width="12" height="12" viewBox="0 0 12 12" fill="none" xmlns="http://www.w3.org/2000/svg">
+<path d="M11 1L1 11M11 11L1 0.999998" stroke="#FF6060" stroke-width="1" stroke-linecap="round"/>
+</svg>

+ 4 - 0
dashboard/src/legacy/assets/fast-backward.svg

@@ -0,0 +1,4 @@
+<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
+<path d="M13.9189 12.481L20.4389 19.001C20.8674 19.4295 21.6 19.126 21.6 18.5201L21.6 5.48012C21.6 4.87415 20.8674 4.57068 20.4389 4.99917L13.9189 11.5191C13.6533 11.7848 13.6533 12.2154 13.9189 12.481Z" stroke="white" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/>
+<path d="M2.59924 12.481L9.11921 19.001C9.5477 19.4295 10.2803 19.126 10.2803 18.5201L10.2803 5.48012C10.2803 4.87415 9.5477 4.57068 9.11921 4.99917L2.59924 11.5191C2.33362 11.7848 2.33362 12.2154 2.59924 12.481Z" stroke="white" stroke-width="2" stroke-linecap="round" stroke-linejoin="round"/>
+</svg>

Datei-Diff unterdrückt, da er zu groß ist
+ 1 - 0
dashboard/src/legacy/assets/file-branch.svg


+ 1 - 0
dashboard/src/legacy/assets/file-diff.svg

@@ -0,0 +1 @@
+<svg xmlns="http://www.w3.org/2000/svg" width="24" height="24" viewBox="0 0 24 24" fill="none" stroke="white" stroke-width="2" stroke-linecap="round" stroke-linejoin="round" class="lucide lucide-file-diff"><path d="M15 2H6a2 2 0 0 0-2 2v16a2 2 0 0 0 2 2h12a2 2 0 0 0 2-2V7Z"/><path d="M9 10h6"/><path d="M12 13V7"/><path d="M9 17h6"/></svg>

+ 4 - 0
dashboard/src/legacy/assets/file.svg

@@ -0,0 +1,4 @@
+<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
+<path opacity="0.4" d="M16.191 2H7.81C4.77 2 3 3.78 3 6.83V17.16C3 20.26 4.77 22 7.81 22H16.191C19.28 22 21 20.26 21 17.16V6.83C21 3.78 19.28 2 16.191 2Z" fill="white"/>
+<path fill-rule="evenodd" clip-rule="evenodd" d="M8.07999 6.65V6.66C7.64899 6.66 7.29999 7.01 7.29999 7.44C7.29999 7.87 7.64899 8.22 8.07999 8.22H11.069C11.5 8.22 11.85 7.87 11.85 7.429C11.85 7 11.5 6.65 11.069 6.65H8.07999ZM15.92 12.74H8.07999C7.64899 12.74 7.29999 12.39 7.29999 11.96C7.29999 11.53 7.64899 11.179 8.07999 11.179H15.92C16.35 11.179 16.7 11.53 16.7 11.96C16.7 12.39 16.35 12.74 15.92 12.74ZM15.92 17.31H8.07999C7.77999 17.35 7.48999 17.2 7.32999 16.95C7.16999 16.69 7.16999 16.36 7.32999 16.11C7.48999 15.85 7.77999 15.71 8.07999 15.74H15.92C16.319 15.78 16.62 16.12 16.62 16.53C16.62 16.929 16.319 17.27 15.92 17.31Z" fill="white"/>
+</svg>

+ 3 - 0
dashboard/src/legacy/assets/file_v2.svg

@@ -0,0 +1,3 @@
+<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
+<path d="M15.0002 2.3999V5.9999C15.0002 6.66264 15.5374 7.1999 16.2002 7.1999H19.8002M18.0002 4.1999C17.4661 3.72204 16.9119 3.15528 16.562 2.78718C16.3292 2.54224 16.0075 2.3999 15.6696 2.3999H6.59989C5.27441 2.3999 4.1999 3.47441 4.19989 4.79989L4.1998 19.1998C4.19979 20.5253 5.2743 21.5998 6.59979 21.5998L17.3998 21.5999C18.7253 21.5999 19.7998 20.5254 19.7998 19.2L19.8002 6.47773C19.8002 6.1709 19.6831 5.87594 19.4702 5.65503C19.0764 5.24655 18.4188 4.57442 18.0002 4.1999Z" stroke="white" stroke-width="1.5" stroke-linecap="round" stroke-linejoin="round"/>
+</svg>

+ 1 - 0
dashboard/src/legacy/assets/filter-outline-icon.svg

@@ -0,0 +1 @@
+<svg xmlns="http://www.w3.org/2000/svg" shape-rendering="geometricPrecision" text-rendering="geometricPrecision" image-rendering="optimizeQuality" fill-rule="evenodd" clip-rule="evenodd" viewBox="0 0 512 410.73"><path fill-rule="nonzero" d="M335.62 410.73H164.96V239.89L13.31 59.96C7.33 52.52 3.19 44.79 1.29 37.65c-1.79-6.72-1.76-13.28.34-19.1 2.3-6.44 6.92-11.63 13.91-14.9C20.35 1.41 26.3.13 33.4.1L472.7.04c7.93-.29 14.95.96 20.74 3.44 7.02 2.97 12.28 7.87 15.44 14.17 3.05 6.1 3.93 13.27 2.34 21.06-1.5 7.24-5.17 15.11-11.32 23.16l-151.94 178.1v170.76h-12.34zm95.61-347.71-69.16 81.05-18.67-16.01 69.16-81.05 18.67 16.01zm-84.8 99.39-24.45 28.66-18.68-16.01 24.45-28.66 18.68 16.01zM189.64 386.06h133.64V235.48l3-8L480.45 46.79c3.77-4.97 5.94-9.39 6.7-13.04.45-2.2.35-3.95-.24-5.12-.49-.97-1.58-1.87-3.19-2.55-2.53-1.13-6.06-1.64-10.44-1.42l-439.84.06c-3.33-.05-5.83.41-7.5 1.18-.68.32-1.09.65-1.18.92-.32.91-.2 2.48.33 4.46 1.05 3.96 3.61 8.57 7.38 13.28L186.7 227.59l2.94 7.89v150.58z"/></svg>

BIN
dashboard/src/legacy/assets/filter-outline-new.png


+ 3 - 0
dashboard/src/legacy/assets/filter-outline-white.svg

@@ -0,0 +1,3 @@
+<svg width="24" height="24" viewBox="0 0 24 24" fill="white" xmlns="http://www.w3.org/2000/svg">
+      <path fill-rule="evenodd" clip-rule="evenodd" d="M9.29332 22L14.0696 19.7519V13.8603L21.5593 6.26456C21.8416 5.97995 22 5.58933 22 5.18027V3.51754C22 2.67869 21.3417 2 20.5295 2H3.47049C2.65826 2 2 2.67869 2 3.51754V5.2183C2 5.60431 2.14169 5.97534 2.39719 6.2565L9.29332 13.8603V22Z" stroke="white" stroke-width="1.5" stroke-linecap="round" strokeLinejoin="round"/>
+</svg>

+ 3 - 0
dashboard/src/legacy/assets/filter-outline.svg

@@ -0,0 +1,3 @@
+<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
+    <path fill-rule="evenodd" clip-rule="evenodd" d="M9.29332 22L14.0696 19.7519V13.8603L21.5593 6.26456C21.8416 5.97995 22 5.58933 22 5.18027V3.51754C22 2.67869 21.3417 2 20.5295 2H3.47049C2.65826 2 2 2.67869 2 3.51754V5.2183C2 5.60431 2.14169 5.97534 2.39719 6.2565L9.29332 13.8603V22Z" stroke="white" stroke-width="1.5" stroke-linecap="round" strokeLinejoin="round"/>
+</svg>

+ 3 - 0
dashboard/src/legacy/assets/filter.svg

@@ -0,0 +1,3 @@
+<svg className="w-6 h-6 text-gray-800 dark:text-white" aria-hidden="true" xmlns="http://www.w3.org/2000/svg" fill="none" viewBox="0 0 20 18">
+  <path stroke="#ffffff" stroke-linecap="round" stroke-linejoin="round" stroke-width="1.6" d="m2.133 2.6 5.856 6.9L8 14l4 3 .011-7.5 5.856-6.9a1 1 0 0 0-.804-1.6H2.937a1 1 0 0 0-.804 1.6Z"/>
+</svg>

+ 9 - 0
dashboard/src/legacy/assets/fire.svg

@@ -0,0 +1,9 @@
+<svg width="18" height="22" viewBox="0 0 18 22" fill="none" xmlns="http://www.w3.org/2000/svg">
+    <defs>
+        <linearGradient id="Gradient" x1="0" x2="0" y1="0" y2="1">
+            <stop offset="0%" stop-color="red"/>
+            <stop offset="100%" stop-color="#f78600"/>
+        </linearGradient>
+    </defs>
+    <path d="M9.00004 20.5999C5.02999 20.5999 1.79999 17.5578 1.79999 13.8186C1.79999 8.5999 9.00009 1.3999 9.00009 1.3999C9.00009 1.3999 16.2 8.5999 16.2 13.8186C16.2 17.5579 12.9701 20.5999 9.00004 20.5999ZM9.00004 20.5999C7.01502 20.5999 5.39999 19.0789 5.39999 17.2093C5.39999 14.5999 9.00004 10.9999 9.00004 10.9999C9.00004 10.9999 12.6 14.5999 12.6 17.2093C12.6 19.0789 10.9851 20.5999 9.00004 20.5999Z" stroke="url(#Gradient)" stroke-width="2" stroke-linejoin="round"/>
+</svg>

+ 4 - 0
dashboard/src/legacy/assets/folder-outline.svg

@@ -0,0 +1,4 @@
+<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
+<path fill-rule="evenodd" clip-rule="evenodd" d="M21.4446 15.7579C21.4446 19.336 19.336 21.4446 15.7579 21.4446H7.97172C4.38443 21.4446 2.27588 19.336 2.27588 15.7579V7.9626C2.27588 4.38444 3.5903 2.27588 7.16846 2.27588H9.16749C9.88576 2.27588 10.5621 2.61406 10.9931 3.18868L11.9059 4.40269C12.3378 4.97618 13.0135 5.31406 13.7315 5.31549H16.5611C20.1484 5.31549 21.472 7.14108 21.472 10.7923L21.4446 15.7579Z" stroke="white" stroke-width="1.5" stroke-linecap="round" strokeLinejoin="round"/>
+<path d="M7.05893 14.4891H16.6524" stroke="white" stroke-width="1.5" stroke-linecap="round" strokeLinejoin="round"/>
+</svg>

+ 4 - 0
dashboard/src/legacy/assets/folder.svg

@@ -0,0 +1,4 @@
+<svg width="24" height="24" viewBox="0 0 24 24" fill="none" xmlns="http://www.w3.org/2000/svg">
+<path opacity="0.4" d="M16.8843 5.11485H13.9413C13.2081 5.11969 12.512 4.79355 12.0474 4.22751L11.0782 2.88762C10.6214 2.31661 9.9253 1.98894 9.19321 2.00028H7.11261C3.37819 2.00028 2.00001 4.19201 2.00001 7.91884V11.9474C1.99536 12.3904 21.9956 12.3898 21.9969 11.9474V10.7761C22.0147 7.04924 20.6721 5.11485 16.8843 5.11485Z" fill="white"/>
+<path fill-rule="evenodd" clip-rule="evenodd" d="M20.8321 6.54346C21.1521 6.91754 21.3993 7.34785 21.5612 7.81235C21.8798 8.76704 22.0273 9.77029 21.9969 10.7761V16.0291C21.9956 16.4716 21.963 16.9134 21.8991 17.3512C21.7775 18.124 21.5057 18.8655 21.0989 19.5341C20.9119 19.8571 20.6849 20.1552 20.4231 20.4214C19.2383 21.5089 17.665 22.0749 16.0574 21.992H7.93061C6.32049 22.0743 4.74462 21.5085 3.55601 20.4214C3.2974 20.1547 3.07337 19.8566 2.88915 19.5341C2.48475 18.866 2.21869 18.1237 2.1067 17.3512C2.03549 16.9141 1.99981 16.472 2 16.0291V10.7761C1.99983 10.3373 2.02357 9.89895 2.07113 9.4628C2.08113 9.38628 2.09614 9.31101 2.11098 9.23652C2.13573 9.11233 2.16005 8.99031 2.16005 8.86829C2.25031 8.34196 2.41496 7.83108 2.64908 7.35094C3.34261 5.86908 4.76525 5.11484 7.09481 5.11484H16.8754C18.1802 5.01393 19.4753 5.40673 20.5032 6.21514C20.6215 6.31552 20.7316 6.42532 20.8321 6.54346ZM6.97033 15.5411H17.0355H17.0533C17.2741 15.5507 17.4896 15.4716 17.6517 15.3216C17.8137 15.1715 17.9088 14.963 17.9157 14.7425C17.9282 14.5487 17.8644 14.3576 17.7379 14.2101C17.5924 14.0118 17.3618 13.8934 17.1155 13.8906H6.97033C6.51365 13.8906 6.14343 14.2601 6.14343 14.7159C6.14343 15.1716 6.51365 15.5411 6.97033 15.5411Z" fill="white"/>
+</svg>

Einige Dateien werden nicht angezeigt, da zu viele Dateien in diesem Diff geändert wurden.