From fa40bdaf17a5f92dfeb58bbebcaf402c03d5e7ba Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=EC=9D=B4=EA=B0=95=EC=A4=80?= Date: Sat, 26 Nov 2022 18:09:05 +0900 Subject: [PATCH] ref(frontend): apply eslint simple import sort --- frontend/.eslintrc.json | 42 +++++++++++++++- frontend/components/RouteGuard.js | 6 ++- frontend/components/analytics/posthog.js | 1 + frontend/components/basic/Error.js | 2 +- frontend/components/basic/InputField.js | 9 ++-- frontend/components/basic/Listbox.js | 6 +-- frontend/components/basic/buttons/Button.js | 4 +- .../basic/dialog/AddIncidentContactDialog.js | 6 ++- .../basic/dialog/AddProjectMemberDialog.js | 5 +- .../basic/dialog/AddServiceTokenDialog.js | 18 ++++--- .../components/basic/dialog/AddUserDialog.js | 7 +-- .../basic/dialog/AddWorkspaceDialog.js | 7 +-- .../basic/dialog/DeleteUserDialog.js | 3 +- frontend/components/basic/layout.js | 26 +++++----- .../basic/popups/BottomRightPopup.js | 2 +- .../basic/table/ServiceTokenTable.js | 3 +- frontend/components/basic/table/UserTable.js | 16 +++--- frontend/components/billing/Card.js | 4 +- frontend/components/billing/Plan.js | 1 + .../dashboard/DashboardInputField.js | 3 +- frontend/components/dashboard/DropZone.js | 9 ++-- .../components/navigation/NavBarDashboard.js | 24 ++++----- frontend/components/navigation/NavHeader.js | 7 +-- .../components/utilities/SecurityClient.js | 1 + frontend/components/utilities/attemptLogin.js | 9 ++-- .../components/utilities/changePassword.js | 5 +- .../utilities/getSecretsForProject.js | 1 + .../components/utilities/issueBackupKey.js | 5 +- frontend/components/utilities/pushKeys.js | 2 +- frontend/package.json | 1 + frontend/pages/_app.js | 15 +++--- frontend/pages/api/auth/ChangePassword2.js | 1 + frontend/pages/api/auth/CheckAuth.js | 1 + .../pages/api/auth/IssueBackupPrivateKey.js | 1 + frontend/pages/api/auth/Logout.js | 1 + frontend/pages/api/auth/SRP1.js | 1 + frontend/pages/api/files/GetSecrets.js | 1 + frontend/pages/api/files/UploadSecrets.js | 1 + .../integrations/ChangeHerokuConfigVars.js | 1 + .../api/integrations/DeleteIntegration.js | 1 + .../api/integrations/DeleteIntegrationAuth.js | 1 + .../api/integrations/GetIntegrationApps.js | 1 + .../pages/api/integrations/GetIntegrations.js | 1 + .../api/integrations/StartIntegration.js | 1 + .../api/integrations/authorizeIntegration.js | 1 + .../getWorkspaceAuthorizations.js | 1 + .../integrations/getWorkspaceIntegrations.js | 1 + frontend/pages/api/organization/GetOrg.js | 1 + .../pages/api/organization/GetOrgProjects.js | 1 + .../api/organization/GetOrgSubscription.js | 1 + .../api/organization/GetOrgUserProjects.js | 1 + .../pages/api/organization/GetOrgUsers.js | 1 + .../pages/api/organization/StripeRedirect.js | 1 + .../api/organization/addIncidentContact.js | 1 + .../pages/api/organization/addUserToOrg.js | 1 + .../api/organization/deleteIncidentContact.js | 1 + .../deleteUserFromOrganization.js | 1 + .../api/organization/getIncidentContacts.js | 1 + frontend/pages/api/organization/getOrgs.js | 1 + frontend/pages/api/organization/renameOrg.js | 1 + .../pages/api/serviceToken/addServiceToken.js | 1 + .../api/serviceToken/getServiceTokens.js | 1 + frontend/pages/api/user/getUser.js | 1 + .../pages/api/userActions/checkUserAction.js | 1 + .../api/userActions/registerUserAction.js | 1 + .../pages/api/workspace/addUserToWorkspace.js | 1 + .../workspace/changeUserRoleInWorkspace.js | 1 + .../pages/api/workspace/createWorkspace.js | 1 + .../api/workspace/deleteUserFromWorkspace.js | 1 + .../pages/api/workspace/deleteWorkspace.js | 1 + .../pages/api/workspace/getLatestFileKey.js | 1 + .../pages/api/workspace/getWorkspaceInfo.js | 1 + .../pages/api/workspace/getWorkspaceKeys.js | 1 + .../pages/api/workspace/getWorkspaceUsers.js | 1 + frontend/pages/api/workspace/getWorkspaces.js | 1 + .../pages/api/workspace/renameWorkspace.js | 1 + frontend/pages/api/workspace/uploadKeys.js | 1 + frontend/pages/dashboard.js | 2 +- frontend/pages/dashboard/[id].js | 49 ++++++++++--------- frontend/pages/integrations/[id].js | 24 ++++----- frontend/pages/login.js | 16 +++--- frontend/pages/noprojects.js | 2 +- frontend/pages/settings/billing/[id].js | 8 +-- frontend/pages/settings/org/[id].js | 28 ++++++----- frontend/pages/settings/personal/[id].js | 12 +++-- frontend/pages/settings/project/[id].js | 19 +++---- frontend/pages/signup.js | 26 +++++----- frontend/pages/signupinvite.js | 16 +++--- frontend/pages/users/[id].js | 21 ++++---- frontend/yarn.lock | 5 ++ 90 files changed, 326 insertions(+), 198 deletions(-) diff --git a/frontend/.eslintrc.json b/frontend/.eslintrc.json index dfc128b2ae..0c5504b90d 100644 --- a/frontend/.eslintrc.json +++ b/frontend/.eslintrc.json @@ -1,6 +1,46 @@ { "extends": "next/core-web-vitals", + "plugins": [ + "simple-import-sort" + ], "rules": { - "react-hooks/exhaustive-deps": "off" + "react-hooks/exhaustive-deps": "off", + "simple-import-sort/exports": "warn", + "simple-import-sort/imports": [ + "warn", + { + "groups": [ + // Node.js builtins. You could also generate this regex if you use a `.js` config. + // For example: `^(${require("module").builtinModules.join("|")})(/|$)` + // Note that if you use the `node:` prefix for Node.js builtins, + // you can avoid this complexity: You can simply use "^node:". + [ + "^(assert|buffer|child_process|cluster|console|constants|crypto|dgram|dns|domain|events|fs|http|https|module|net|os|path|punycode|querystring|readline|repl|stream|string_decoder|sys|timers|tls|tty|url|util|vm|zlib|freelist|v8|process|async_hooks|http2|perf_hooks)(/.*|$)" + ], + // Packages `react` related packages + [ + "^react", + "^next", + "^@?\\w" + ], + // Internal packages. + [ + "^~(/.*|$)" + ], + // Relative imports + [ + "^\\.\\.(?!/?$)", + "^\\.\\./?$", + "^\\./(?=.*/)(?!/?$)", + "^\\.(?!/?$)", + "^\\./?$" + ], + // Style imports. + [ + "^.+\\.?(css|scss)$" + ] + ] + } + ] } } \ No newline at end of file diff --git a/frontend/components/RouteGuard.js b/frontend/components/RouteGuard.js index 51890c7a46..71bfd25624 100644 --- a/frontend/components/RouteGuard.js +++ b/frontend/components/RouteGuard.js @@ -1,7 +1,9 @@ -import { useState, useEffect } from "react"; +import { useEffect,useState } from "react"; +import Image from "next/image"; import { useRouter } from "next/router"; + import checkAuth from "~/pages/api/auth/CheckAuth"; -import Image from "next/image"; + import { publicPaths } from "../const"; // #TODO: finish spinner only when the data loads fully diff --git a/frontend/components/analytics/posthog.js b/frontend/components/analytics/posthog.js index 5eda4de3a2..c480c4e6b2 100644 --- a/frontend/components/analytics/posthog.js +++ b/frontend/components/analytics/posthog.js @@ -1,4 +1,5 @@ import posthog from "posthog-js"; + import { ENV, POSTHOG_API_KEY, POSTHOG_HOST, TELEMETRY_ENABLED } from "../utilities/config"; export const initPostHog = () => { diff --git a/frontend/components/basic/Error.js b/frontend/components/basic/Error.js index ad058b701e..11b9c6dd31 100644 --- a/frontend/components/basic/Error.js +++ b/frontend/components/basic/Error.js @@ -1,6 +1,6 @@ import React, { useState } from "react"; -import { FontAwesomeIcon } from "@fortawesome/react-fontawesome"; import { faExclamationTriangle } from "@fortawesome/free-solid-svg-icons"; +import { FontAwesomeIcon } from "@fortawesome/react-fontawesome"; export default function Error({ text }) { return ( diff --git a/frontend/components/basic/InputField.js b/frontend/components/basic/InputField.js index c61c148a5a..a339b139a4 100644 --- a/frontend/components/basic/InputField.js +++ b/frontend/components/basic/InputField.js @@ -1,6 +1,6 @@ import React from "react"; -import Error from "./Error"; -import { FontAwesomeIcon } from "@fortawesome/react-fontawesome"; +import { useState } from "react"; +import { useRouter } from "next/router"; import { faCircle, faCircleExclamation, @@ -8,9 +8,10 @@ import { faEye, faEyeSlash, } from "@fortawesome/free-solid-svg-icons"; +import { FontAwesomeIcon } from "@fortawesome/react-fontawesome"; + import guidGenerator from "../utilities/randomId"; -import { useState } from "react"; -import { useRouter } from "next/router"; +import Error from "./Error"; const InputField = (props) => { const [passwordVisible, setPasswordVisible] = useState(false); diff --git a/frontend/components/basic/Listbox.js b/frontend/components/basic/Listbox.js index c9365c243e..eeb444aa5f 100644 --- a/frontend/components/basic/Listbox.js +++ b/frontend/components/basic/Listbox.js @@ -1,9 +1,9 @@ import React from "react"; -import { Listbox, Transition } from "@headlessui/react"; -import { FontAwesomeIcon } from "@fortawesome/react-fontawesome"; -import { faCheck, faPlus, faAngleDown } from "@fortawesome/free-solid-svg-icons"; import { Fragment } from "react"; import { useRouter } from "next/router"; +import { faAngleDown,faCheck, faPlus } from "@fortawesome/free-solid-svg-icons"; +import { FontAwesomeIcon } from "@fortawesome/react-fontawesome"; +import { Listbox, Transition } from "@headlessui/react"; /** * This is the component that we use for drop down lists. diff --git a/frontend/components/basic/buttons/Button.js b/frontend/components/basic/buttons/Button.js index cd24f13180..c66a9b990b 100644 --- a/frontend/components/basic/buttons/Button.js +++ b/frontend/components/basic/buttons/Button.js @@ -1,8 +1,8 @@ import React from "react"; -import Link from "next/link"; import Image from "next/image"; -import { FontAwesomeIcon } from "@fortawesome/react-fontawesome"; +import Link from "next/link"; import { faPlus } from "@fortawesome/free-solid-svg-icons"; +import { FontAwesomeIcon } from "@fortawesome/react-fontawesome"; var classNames = require("classnames"); diff --git a/frontend/components/basic/dialog/AddIncidentContactDialog.js b/frontend/components/basic/dialog/AddIncidentContactDialog.js index 5188289855..4e5004db8c 100644 --- a/frontend/components/basic/dialog/AddIncidentContactDialog.js +++ b/frontend/components/basic/dialog/AddIncidentContactDialog.js @@ -1,8 +1,10 @@ -import { Dialog, Transition } from "@headlessui/react"; import { Fragment, useState } from "react"; -import InputField from "../InputField"; +import { Dialog, Transition } from "@headlessui/react"; + import addIncidentContact from "~/pages/api/organization/addIncidentContact"; + import Button from "../buttons/Button"; +import InputField from "../InputField"; const AddIncidentContactDialog = ({ isOpen, diff --git a/frontend/components/basic/dialog/AddProjectMemberDialog.js b/frontend/components/basic/dialog/AddProjectMemberDialog.js index 60712e21cb..a170a4d498 100644 --- a/frontend/components/basic/dialog/AddProjectMemberDialog.js +++ b/frontend/components/basic/dialog/AddProjectMemberDialog.js @@ -1,8 +1,9 @@ -import { Dialog, Transition } from "@headlessui/react"; import { Fragment, useState } from "react"; -import ListBox from "../Listbox"; import { useRouter } from "next/router"; +import { Dialog, Transition } from "@headlessui/react"; + import Button from "../buttons/Button"; +import ListBox from "../Listbox"; const AddProjectMemberDialog = ({ isOpen, diff --git a/frontend/components/basic/dialog/AddServiceTokenDialog.js b/frontend/components/basic/dialog/AddServiceTokenDialog.js index 4623ecb844..0e084d29db 100644 --- a/frontend/components/basic/dialog/AddServiceTokenDialog.js +++ b/frontend/components/basic/dialog/AddServiceTokenDialog.js @@ -1,15 +1,17 @@ -import { Dialog, Transition } from "@headlessui/react"; import { Fragment, useState } from "react"; -import ListBox from "../Listbox"; import { useRouter } from "next/router"; -import Button from "../buttons/Button"; -import InputField from "../InputField"; -import getLatestFileKey from "~/pages/api/workspace/getLatestFileKey"; -import { decryptAssymmetric, encryptAssymmetric } from "../../utilities/crypto"; -import addServiceToken from "~/pages/api/serviceToken/addServiceToken"; -import nacl from "tweetnacl"; import { faCheck, faCopy } from "@fortawesome/free-solid-svg-icons"; import { FontAwesomeIcon } from "@fortawesome/react-fontawesome"; +import { Dialog, Transition } from "@headlessui/react"; +import nacl from "tweetnacl"; + +import addServiceToken from "~/pages/api/serviceToken/addServiceToken"; +import getLatestFileKey from "~/pages/api/workspace/getLatestFileKey"; + +import { decryptAssymmetric, encryptAssymmetric } from "../../utilities/crypto"; +import Button from "../buttons/Button"; +import InputField from "../InputField"; +import ListBox from "../Listbox"; const envMapping = { Development: "dev", diff --git a/frontend/components/basic/dialog/AddUserDialog.js b/frontend/components/basic/dialog/AddUserDialog.js index eeec682b38..59cc2ec58b 100644 --- a/frontend/components/basic/dialog/AddUserDialog.js +++ b/frontend/components/basic/dialog/AddUserDialog.js @@ -1,9 +1,10 @@ -import { Dialog, Transition } from "@headlessui/react"; import { Fragment } from "react"; -import InputField from "../InputField"; import { useRouter } from "next/router"; -import Button from "../buttons/Button"; +import { Dialog, Transition } from "@headlessui/react"; + import { STRIPE_PRODUCT_STARTER } from "../../utilities/config"; +import Button from "../buttons/Button"; +import InputField from "../InputField"; const AddUserDialog = ({ isOpen, diff --git a/frontend/components/basic/dialog/AddWorkspaceDialog.js b/frontend/components/basic/dialog/AddWorkspaceDialog.js index 7f2908e0af..361aa3f8b4 100644 --- a/frontend/components/basic/dialog/AddWorkspaceDialog.js +++ b/frontend/components/basic/dialog/AddWorkspaceDialog.js @@ -1,9 +1,10 @@ -import { Dialog, Transition } from "@headlessui/react"; import { Fragment, useState } from "react"; -import InputField from "../InputField"; import Image from "next/image"; -import { Checkbox } from "../table/Checkbox"; +import { Dialog, Transition } from "@headlessui/react"; + import Button from "../buttons/Button"; +import InputField from "../InputField"; +import { Checkbox } from "../table/Checkbox"; /** * The dialog modal for when the user wants to create a new workspace diff --git a/frontend/components/basic/dialog/DeleteUserDialog.js b/frontend/components/basic/dialog/DeleteUserDialog.js index 60cad3a7b7..2d97b0ff04 100644 --- a/frontend/components/basic/dialog/DeleteUserDialog.js +++ b/frontend/components/basic/dialog/DeleteUserDialog.js @@ -1,5 +1,6 @@ -import { Dialog, Transition } from '@headlessui/react' import { Fragment, useState } from 'react' +import { Dialog, Transition } from '@headlessui/react' + import InputField from '../InputField'; // #TODO: USE THIS. Currently it's not. Kinda complicated to set up because of state. diff --git a/frontend/components/basic/layout.js b/frontend/components/basic/layout.js index 20a5c824ca..382eb2777e 100644 --- a/frontend/components/basic/layout.js +++ b/frontend/components/basic/layout.js @@ -1,29 +1,29 @@ /* eslint-disable react-hooks/exhaustive-deps */ +import { useEffect, useState } from "react"; import Link from "next/link"; import { useRouter } from "next/router"; -import { useEffect, useState } from "react"; - -import NavBarDashboard from "../navigation/NavBarDashboard"; -import Listbox from "./Listbox"; -import getWorkspaces from "~/pages/api/workspace/getWorkspaces"; -import { FontAwesomeIcon } from "@fortawesome/react-fontawesome"; import { - faHouse, - faUser, faGear, - faMobile, + faHouse, faLink, + faMobile, + faUser, } from "@fortawesome/free-solid-svg-icons"; -import AddWorkspaceDialog from "./dialog/AddWorkspaceDialog"; -import createWorkspace from "~/pages/api/workspace/createWorkspace"; +import { faPlus } from "@fortawesome/free-solid-svg-icons"; +import { FontAwesomeIcon } from "@fortawesome/react-fontawesome"; + +import getOrganizations from "~/pages/api/organization/getOrgs"; import getOrganizationUserProjects from "~/pages/api/organization/GetOrgUserProjects"; import getOrganizationUsers from "~/pages/api/organization/GetOrgUsers"; import addUserToWorkspace from "~/pages/api/workspace/addUserToWorkspace"; -import getOrganizations from "~/pages/api/organization/getOrgs"; -import { faPlus } from "@fortawesome/free-solid-svg-icons"; +import createWorkspace from "~/pages/api/workspace/createWorkspace"; +import getWorkspaces from "~/pages/api/workspace/getWorkspaces"; +import NavBarDashboard from "../navigation/NavBarDashboard"; import { decryptAssymmetric, encryptAssymmetric } from "../utilities/crypto"; import Button from "./buttons/Button"; +import AddWorkspaceDialog from "./dialog/AddWorkspaceDialog"; +import Listbox from "./Listbox"; export default function Layout({ children }) { const router = useRouter(); diff --git a/frontend/components/basic/popups/BottomRightPopup.js b/frontend/components/basic/popups/BottomRightPopup.js index 4db24fb825..d756992907 100644 --- a/frontend/components/basic/popups/BottomRightPopup.js +++ b/frontend/components/basic/popups/BottomRightPopup.js @@ -1,6 +1,6 @@ import React from "react"; -import { FontAwesomeIcon } from "@fortawesome/react-fontawesome"; import { faXmark } from "@fortawesome/free-solid-svg-icons"; +import { FontAwesomeIcon } from "@fortawesome/react-fontawesome"; export default function BottonRightPopup({ buttonText, diff --git a/frontend/components/basic/table/ServiceTokenTable.js b/frontend/components/basic/table/ServiceTokenTable.js index 40ee899f38..acf4aa576c 100644 --- a/frontend/components/basic/table/ServiceTokenTable.js +++ b/frontend/components/basic/table/ServiceTokenTable.js @@ -1,8 +1,9 @@ import React, { useEffect, useState } from "react"; import { useRouter } from "next/router"; import { faX } from "@fortawesome/free-solid-svg-icons"; -import Button from "../buttons/Button"; + import guidGenerator from "../../utilities/randomId"; +import Button from "../buttons/Button"; const roles = ["admin", "user"]; diff --git a/frontend/components/basic/table/UserTable.js b/frontend/components/basic/table/UserTable.js index 215d9a953f..a09ff6e167 100644 --- a/frontend/components/basic/table/UserTable.js +++ b/frontend/components/basic/table/UserTable.js @@ -1,14 +1,16 @@ import React, { useEffect, useMemo, useState } from "react"; import { useRouter } from "next/router"; -import Listbox from "../Listbox"; -import uploadKeys from "~/pages/api/workspace/uploadKeys"; -import getLatestFileKey from "~/pages/api/workspace/getLatestFileKey"; -import deleteUserFromWorkspace from "~/pages/api/workspace/deleteUserFromWorkspace"; -import changeUserRoleInWorkspace from "~/pages/api/workspace/changeUserRoleInWorkspace"; -import deleteUserFromOrganization from "~/pages/api/organization/deleteUserFromOrganization"; import { faX } from "@fortawesome/free-solid-svg-icons"; -import Button from "../buttons/Button"; + +import deleteUserFromOrganization from "~/pages/api/organization/deleteUserFromOrganization"; +import changeUserRoleInWorkspace from "~/pages/api/workspace/changeUserRoleInWorkspace"; +import deleteUserFromWorkspace from "~/pages/api/workspace/deleteUserFromWorkspace"; +import getLatestFileKey from "~/pages/api/workspace/getLatestFileKey"; +import uploadKeys from "~/pages/api/workspace/uploadKeys"; + import guidGenerator from "../../utilities/randomId"; +import Button from "../buttons/Button"; +import Listbox from "../Listbox"; const { decryptAssymmetric, diff --git a/frontend/components/billing/Card.js b/frontend/components/billing/Card.js index 2e73531a50..07f91b07a0 100644 --- a/frontend/components/billing/Card.js +++ b/frontend/components/billing/Card.js @@ -1,8 +1,8 @@ import React from "react"; -import { FontAwesomeIcon } from "@fortawesome/react-fontawesome"; -import { faCheck, faQuestionCircle } from "@fortawesome/free-solid-svg-icons"; import { faCcMastercard, faCcVisa } from "@fortawesome/free-brands-svg-icons"; +import { faCheck, faQuestionCircle } from "@fortawesome/free-solid-svg-icons"; import { faCircle } from "@fortawesome/free-solid-svg-icons"; +import { FontAwesomeIcon } from "@fortawesome/react-fontawesome"; export default function Card({ card, changeSelectedCard, selected }) { function creditCardBrandIcon(cc) { diff --git a/frontend/components/billing/Plan.js b/frontend/components/billing/Plan.js index 7ed35aca39..2dcf3bc1ce 100644 --- a/frontend/components/billing/Plan.js +++ b/frontend/components/billing/Plan.js @@ -1,4 +1,5 @@ import React from "react"; + import StripeRedirect from "~/pages/api/organization/StripeRedirect"; export default function Plan({ plan }) { diff --git a/frontend/components/dashboard/DashboardInputField.js b/frontend/components/dashboard/DashboardInputField.js index f03f09278f..9073fe5acb 100644 --- a/frontend/components/dashboard/DashboardInputField.js +++ b/frontend/components/dashboard/DashboardInputField.js @@ -1,6 +1,7 @@ import React, { Fragment } from "react"; -import { FontAwesomeIcon } from "@fortawesome/react-fontawesome"; import { faCircle } from "@fortawesome/free-solid-svg-icons"; +import { FontAwesomeIcon } from "@fortawesome/react-fontawesome"; + import guidGenerator from "../utilities/randomId"; /** diff --git a/frontend/components/dashboard/DropZone.js b/frontend/components/dashboard/DropZone.js index 5549e08219..762371c4b7 100644 --- a/frontend/components/dashboard/DropZone.js +++ b/frontend/components/dashboard/DropZone.js @@ -1,13 +1,12 @@ import { useState } from "react"; - -import { FontAwesomeIcon } from "@fortawesome/react-fontawesome"; +import Image from "next/image"; import { faUpload } from "@fortawesome/free-solid-svg-icons"; -import guidGenerator from "../utilities/randomId"; +import { FontAwesomeIcon } from "@fortawesome/react-fontawesome"; +import Button from "../basic/buttons/Button"; import Error from "../basic/Error"; -import Image from "next/image"; import parse from "../utilities/file"; -import Button from "../basic/buttons/Button"; +import guidGenerator from "../utilities/randomId"; const DropZone = ({ setData, diff --git a/frontend/components/navigation/NavBarDashboard.js b/frontend/components/navigation/NavBarDashboard.js index 5809e57b05..154bf0a55b 100644 --- a/frontend/components/navigation/NavBarDashboard.js +++ b/frontend/components/navigation/NavBarDashboard.js @@ -1,27 +1,27 @@ /* eslint-disable react-hooks/exhaustive-deps */ /* eslint-disable react/jsx-key */ -import React, { useState, Fragment, useEffect } from "react"; -import { useRouter } from "next/router"; - +import React, { Fragment, useEffect,useState } from "react"; import Image from "next/image"; - -import logout from "~/pages/api/auth/Logout"; -import { FontAwesomeIcon } from "@fortawesome/react-fontawesome"; +import { useRouter } from "next/router"; +import { faGithub,faSlack } from "@fortawesome/free-brands-svg-icons"; import { faCircleQuestion } from "@fortawesome/free-regular-svg-icons"; import { + faAngleDown, faBook, - faGear, faCoins, - faRightFromBracket, faEnvelope, + faGear, faPlus, - faAngleDown, + faRightFromBracket, } from "@fortawesome/free-solid-svg-icons"; -import { faSlack, faGithub } from "@fortawesome/free-brands-svg-icons"; +import { FontAwesomeIcon } from "@fortawesome/react-fontawesome"; import { Menu, Transition } from "@headlessui/react"; -import getUser from "~/pages/api/user/getUser"; -import getOrganizations from "~/pages/api/organization/getOrgs"; + +import logout from "~/pages/api/auth/Logout"; import getOrganization from "~/pages/api/organization/GetOrg"; +import getOrganizations from "~/pages/api/organization/getOrgs"; +import getUser from "~/pages/api/user/getUser"; + import guidGenerator from "../utilities/randomId"; const supportOptions = [ diff --git a/frontend/components/navigation/NavHeader.js b/frontend/components/navigation/NavHeader.js index b04f0d4926..58527aa567 100644 --- a/frontend/components/navigation/NavHeader.js +++ b/frontend/components/navigation/NavHeader.js @@ -1,14 +1,15 @@ import React, { useEffect, useState } from "react"; -import { FontAwesomeIcon } from "@fortawesome/react-fontawesome"; +import { useRouter } from "next/router"; +import { faCcMastercard, faCcVisa } from "@fortawesome/free-brands-svg-icons"; import { faAngleRight, faQuestionCircle, } from "@fortawesome/free-solid-svg-icons"; -import { faCcMastercard, faCcVisa } from "@fortawesome/free-brands-svg-icons"; import { faCircle } from "@fortawesome/free-solid-svg-icons"; +import { FontAwesomeIcon } from "@fortawesome/react-fontawesome"; + import getOrganization from "~/pages/api/organization/GetOrg"; import getWorkspaceInfo from "~/pages/api/workspace/getWorkspaceInfo"; -import { useRouter } from "next/router"; export default function NavHeader({ pageName, isProjectRelated }) { const [orgName, setOrgName] = useState(""); diff --git a/frontend/components/utilities/SecurityClient.js b/frontend/components/utilities/SecurityClient.js index fdcb5d7431..783b44633c 100644 --- a/frontend/components/utilities/SecurityClient.js +++ b/frontend/components/utilities/SecurityClient.js @@ -1,4 +1,5 @@ import token from "~/pages/api/auth/Token"; + import { PATH } from "../../const"; export default class SecurityClient { diff --git a/frontend/components/utilities/attemptLogin.js b/frontend/components/utilities/attemptLogin.js index 443ffc0b01..bbf0ba72c8 100644 --- a/frontend/components/utilities/attemptLogin.js +++ b/frontend/components/utilities/attemptLogin.js @@ -1,12 +1,13 @@ +import Aes256Gcm from "~/components/aes-256-gcm"; import login1 from "~/pages/api/auth/Login1"; import login2 from "~/pages/api/auth/Login2"; -import Aes256Gcm from "~/components/aes-256-gcm"; -import pushKeys from "./pushKeys"; -import { initPostHog } from "../analytics/posthog"; import getOrganizations from "~/pages/api/organization/getOrgs"; import getOrganizationUserProjects from "~/pages/api/organization/GetOrgUserProjects"; -import SecurityClient from "./SecurityClient"; + +import { initPostHog } from "../analytics/posthog"; import { ENV } from "./config"; +import pushKeys from "./pushKeys"; +import SecurityClient from "./SecurityClient"; const nacl = require("tweetnacl"); nacl.util = require("tweetnacl-util"); diff --git a/frontend/components/utilities/changePassword.js b/frontend/components/utilities/changePassword.js index 9d213e2c07..4e2b375aa7 100644 --- a/frontend/components/utilities/changePassword.js +++ b/frontend/components/utilities/changePassword.js @@ -1,6 +1,7 @@ -import Aes256Gcm from "../aes-256-gcm"; -import SRP1 from "~/pages/api/auth/SRP1"; import changePassword2 from "~/pages/api/auth/ChangePassword2"; +import SRP1 from "~/pages/api/auth/SRP1"; + +import Aes256Gcm from "../aes-256-gcm"; const nacl = require("tweetnacl"); nacl.util = require("tweetnacl-util"); diff --git a/frontend/components/utilities/getSecretsForProject.js b/frontend/components/utilities/getSecretsForProject.js index f229404e70..bec41b15f4 100644 --- a/frontend/components/utilities/getSecretsForProject.js +++ b/frontend/components/utilities/getSecretsForProject.js @@ -1,4 +1,5 @@ import getSecrets from "~/pages/api/files/GetSecrets"; + import guidGenerator from "./randomId"; const { diff --git a/frontend/components/utilities/issueBackupKey.js b/frontend/components/utilities/issueBackupKey.js index 92f4b2f702..cd2bc6a2d9 100644 --- a/frontend/components/utilities/issueBackupKey.js +++ b/frontend/components/utilities/issueBackupKey.js @@ -1,6 +1,7 @@ -import Aes256Gcm from "../aes-256-gcm"; -import SRP1 from "~/pages/api/auth/SRP1"; import issueBackupPrivateKey from "~/pages/api/auth/IssueBackupPrivateKey"; +import SRP1 from "~/pages/api/auth/SRP1"; + +import Aes256Gcm from "../aes-256-gcm"; import generateBackupPDF from "./generateBackupPDF"; const nacl = require("tweetnacl"); diff --git a/frontend/components/utilities/pushKeys.js b/frontend/components/utilities/pushKeys.js index 37261f3423..c43b1cc1d6 100644 --- a/frontend/components/utilities/pushKeys.js +++ b/frontend/components/utilities/pushKeys.js @@ -1,6 +1,6 @@ +import uploadSecrets from "~/pages/api/files/UploadSecrets"; import getLatestFileKey from "~/pages/api/workspace/getLatestFileKey"; import getWorkspaceKeys from "~/pages/api/workspace/getWorkspaceKeys"; -import uploadSecrets from "~/pages/api/files/UploadSecrets"; const crypto = require("crypto"); const { diff --git a/frontend/package.json b/frontend/package.json index e7bd071e1f..bfc2b3ef94 100644 --- a/frontend/package.json +++ b/frontend/package.json @@ -58,6 +58,7 @@ "autoprefixer": "^10.4.7", "eslint": "^8.28.0", "eslint-config-next": "^13.0.5", + "eslint-plugin-simple-import-sort": "^8.0.0", "postcss": "^8.4.14", "prettier": "2.7.1", "tailwindcss": "^3.1.4", diff --git a/frontend/pages/_app.js b/frontend/pages/_app.js index 18e6d4548e..838d407b98 100644 --- a/frontend/pages/_app.js +++ b/frontend/pages/_app.js @@ -1,14 +1,17 @@ -import "../styles/globals.css"; -import "@fortawesome/fontawesome-svg-core/styles.css"; -import { config } from "@fortawesome/fontawesome-svg-core"; -import Layout from "~/components/basic/layout"; -import RouteGuard from "~/components/RouteGuard"; -import { publicPaths } from "../const.js"; import { useEffect } from "react"; import { useRouter } from "next/router"; +import { config } from "@fortawesome/fontawesome-svg-core"; + import { initPostHog } from "~/components/analytics/posthog"; +import Layout from "~/components/basic/layout"; +import RouteGuard from "~/components/RouteGuard"; import { ENV } from "~/utilities/config"; +import { publicPaths } from "../const.js"; + +import "@fortawesome/fontawesome-svg-core/styles.css"; +import "../styles/globals.css"; + config.autoAddCss = false; const App = ({ Component, pageProps, ...appProps }) => { diff --git a/frontend/pages/api/auth/ChangePassword2.js b/frontend/pages/api/auth/ChangePassword2.js index 9618c21a8a..a60a9dd925 100644 --- a/frontend/pages/api/auth/ChangePassword2.js +++ b/frontend/pages/api/auth/ChangePassword2.js @@ -1,4 +1,5 @@ import SecurityClient from "~/utilities/SecurityClient"; + import { PATH } from "../../../const"; /** diff --git a/frontend/pages/api/auth/CheckAuth.js b/frontend/pages/api/auth/CheckAuth.js index 36f678b704..fef7ba9d1f 100644 --- a/frontend/pages/api/auth/CheckAuth.js +++ b/frontend/pages/api/auth/CheckAuth.js @@ -1,4 +1,5 @@ import SecurityClient from "~/utilities/SecurityClient.js"; + import { PATH } from "../../../const.js"; /** diff --git a/frontend/pages/api/auth/IssueBackupPrivateKey.js b/frontend/pages/api/auth/IssueBackupPrivateKey.js index 76205efcba..b644064a9a 100644 --- a/frontend/pages/api/auth/IssueBackupPrivateKey.js +++ b/frontend/pages/api/auth/IssueBackupPrivateKey.js @@ -1,4 +1,5 @@ import SecurityClient from "~/utilities/SecurityClient"; + import { PATH } from "../../../const"; /** diff --git a/frontend/pages/api/auth/Logout.js b/frontend/pages/api/auth/Logout.js index e00394c261..063c577090 100644 --- a/frontend/pages/api/auth/Logout.js +++ b/frontend/pages/api/auth/Logout.js @@ -1,4 +1,5 @@ import SecurityClient from "~/utilities/SecurityClient"; + import { PATH } from "../../../const"; /** diff --git a/frontend/pages/api/auth/SRP1.js b/frontend/pages/api/auth/SRP1.js index 78692f5966..838fc096d6 100644 --- a/frontend/pages/api/auth/SRP1.js +++ b/frontend/pages/api/auth/SRP1.js @@ -1,4 +1,5 @@ import SecurityClient from "~/utilities/SecurityClient"; + import { PATH } from "../../../const"; /** diff --git a/frontend/pages/api/files/GetSecrets.js b/frontend/pages/api/files/GetSecrets.js index f153e7fb2e..e024609000 100644 --- a/frontend/pages/api/files/GetSecrets.js +++ b/frontend/pages/api/files/GetSecrets.js @@ -1,4 +1,5 @@ import SecurityClient from "~/utilities/SecurityClient.js"; + import { PATH } from "../../../const.js"; /** diff --git a/frontend/pages/api/files/UploadSecrets.js b/frontend/pages/api/files/UploadSecrets.js index a34ca3df72..6497a5e1e4 100644 --- a/frontend/pages/api/files/UploadSecrets.js +++ b/frontend/pages/api/files/UploadSecrets.js @@ -1,4 +1,5 @@ import SecurityClient from "~/utilities/SecurityClient"; + import { PATH } from "../../../const"; /** diff --git a/frontend/pages/api/integrations/ChangeHerokuConfigVars.js b/frontend/pages/api/integrations/ChangeHerokuConfigVars.js index e3a93c52e4..398a417a38 100644 --- a/frontend/pages/api/integrations/ChangeHerokuConfigVars.js +++ b/frontend/pages/api/integrations/ChangeHerokuConfigVars.js @@ -1,4 +1,5 @@ import SecurityClient from "~/utilities/SecurityClient"; + import { PATH } from "../../../const"; const changeHerokuConfigVars = ({ integrationId, key, secrets }) => { diff --git a/frontend/pages/api/integrations/DeleteIntegration.js b/frontend/pages/api/integrations/DeleteIntegration.js index b35066509d..2c58cdfe7b 100644 --- a/frontend/pages/api/integrations/DeleteIntegration.js +++ b/frontend/pages/api/integrations/DeleteIntegration.js @@ -1,4 +1,5 @@ import SecurityClient from "~/utilities/SecurityClient"; + import { PATH } from "../../../const"; /** diff --git a/frontend/pages/api/integrations/DeleteIntegrationAuth.js b/frontend/pages/api/integrations/DeleteIntegrationAuth.js index 2b81b3f022..ac38c2ab74 100644 --- a/frontend/pages/api/integrations/DeleteIntegrationAuth.js +++ b/frontend/pages/api/integrations/DeleteIntegrationAuth.js @@ -1,4 +1,5 @@ import SecurityClient from "~/utilities/SecurityClient"; + import { PATH } from "../../../const"; /** diff --git a/frontend/pages/api/integrations/GetIntegrationApps.js b/frontend/pages/api/integrations/GetIntegrationApps.js index a938319a38..3a483e618e 100644 --- a/frontend/pages/api/integrations/GetIntegrationApps.js +++ b/frontend/pages/api/integrations/GetIntegrationApps.js @@ -1,4 +1,5 @@ import SecurityClient from "~/utilities/SecurityClient"; + import { PATH } from "../../../const"; const getIntegrationApps = ({ integrationAuthId }) => { diff --git a/frontend/pages/api/integrations/GetIntegrations.js b/frontend/pages/api/integrations/GetIntegrations.js index 92bd598c15..4f2608469b 100644 --- a/frontend/pages/api/integrations/GetIntegrations.js +++ b/frontend/pages/api/integrations/GetIntegrations.js @@ -1,4 +1,5 @@ import SecurityClient from "~/utilities/SecurityClient"; + import { PATH } from "../../../const"; const getIntegrations = () => { diff --git a/frontend/pages/api/integrations/StartIntegration.js b/frontend/pages/api/integrations/StartIntegration.js index e1cbcef4e1..820e21e1df 100644 --- a/frontend/pages/api/integrations/StartIntegration.js +++ b/frontend/pages/api/integrations/StartIntegration.js @@ -1,4 +1,5 @@ import SecurityClient from "~/utilities/SecurityClient"; + import { PATH } from "../../../const"; /** diff --git a/frontend/pages/api/integrations/authorizeIntegration.js b/frontend/pages/api/integrations/authorizeIntegration.js index 4ecb13a6ac..efddf6f20d 100644 --- a/frontend/pages/api/integrations/authorizeIntegration.js +++ b/frontend/pages/api/integrations/authorizeIntegration.js @@ -1,4 +1,5 @@ import SecurityClient from "~/utilities/SecurityClient"; + import { PATH } from "../../../const"; /** diff --git a/frontend/pages/api/integrations/getWorkspaceAuthorizations.js b/frontend/pages/api/integrations/getWorkspaceAuthorizations.js index ca80911316..a7ff51c4c7 100644 --- a/frontend/pages/api/integrations/getWorkspaceAuthorizations.js +++ b/frontend/pages/api/integrations/getWorkspaceAuthorizations.js @@ -1,4 +1,5 @@ import SecurityClient from "~/utilities/SecurityClient"; + import { PATH } from "../../../const"; /** diff --git a/frontend/pages/api/integrations/getWorkspaceIntegrations.js b/frontend/pages/api/integrations/getWorkspaceIntegrations.js index fd54da004e..8789eb7ba9 100644 --- a/frontend/pages/api/integrations/getWorkspaceIntegrations.js +++ b/frontend/pages/api/integrations/getWorkspaceIntegrations.js @@ -1,4 +1,5 @@ import SecurityClient from "~/utilities/SecurityClient"; + import { PATH } from "../../../const"; /** diff --git a/frontend/pages/api/organization/GetOrg.js b/frontend/pages/api/organization/GetOrg.js index 2f93a8f328..a977c8bb55 100644 --- a/frontend/pages/api/organization/GetOrg.js +++ b/frontend/pages/api/organization/GetOrg.js @@ -1,4 +1,5 @@ import SecurityClient from "~/utilities/SecurityClient"; + import { PATH } from "../../../const"; /** diff --git a/frontend/pages/api/organization/GetOrgProjects.js b/frontend/pages/api/organization/GetOrgProjects.js index d901782e64..60ab3a6ce6 100644 --- a/frontend/pages/api/organization/GetOrgProjects.js +++ b/frontend/pages/api/organization/GetOrgProjects.js @@ -1,4 +1,5 @@ import SecurityClient from "~/utilities/SecurityClient"; + import { PATH } from "../../../const"; /** diff --git a/frontend/pages/api/organization/GetOrgSubscription.js b/frontend/pages/api/organization/GetOrgSubscription.js index 9bb54f4f9c..bd71464a62 100644 --- a/frontend/pages/api/organization/GetOrgSubscription.js +++ b/frontend/pages/api/organization/GetOrgSubscription.js @@ -1,4 +1,5 @@ import SecurityClient from "~/utilities/SecurityClient"; + import { PATH } from "../../../const"; /** diff --git a/frontend/pages/api/organization/GetOrgUserProjects.js b/frontend/pages/api/organization/GetOrgUserProjects.js index 5a9be5de70..abff1f88cb 100644 --- a/frontend/pages/api/organization/GetOrgUserProjects.js +++ b/frontend/pages/api/organization/GetOrgUserProjects.js @@ -1,4 +1,5 @@ import SecurityClient from "~/utilities/SecurityClient"; + import { PATH } from "../../../const"; /** diff --git a/frontend/pages/api/organization/GetOrgUsers.js b/frontend/pages/api/organization/GetOrgUsers.js index fb3dd6fb75..584e29de20 100644 --- a/frontend/pages/api/organization/GetOrgUsers.js +++ b/frontend/pages/api/organization/GetOrgUsers.js @@ -1,4 +1,5 @@ import SecurityClient from "~/utilities/SecurityClient"; + import { PATH } from "../../../const"; /** diff --git a/frontend/pages/api/organization/StripeRedirect.js b/frontend/pages/api/organization/StripeRedirect.js index 70d17d0230..158c1c8114 100644 --- a/frontend/pages/api/organization/StripeRedirect.js +++ b/frontend/pages/api/organization/StripeRedirect.js @@ -1,4 +1,5 @@ import SecurityClient from "~/utilities/SecurityClient"; + import { PATH } from "../../../const"; /** diff --git a/frontend/pages/api/organization/addIncidentContact.js b/frontend/pages/api/organization/addIncidentContact.js index 3e4556d7d4..db0b98d337 100644 --- a/frontend/pages/api/organization/addIncidentContact.js +++ b/frontend/pages/api/organization/addIncidentContact.js @@ -1,4 +1,5 @@ import SecurityClient from "~/utilities/SecurityClient"; + import { PATH } from "../../../const"; /** diff --git a/frontend/pages/api/organization/addUserToOrg.js b/frontend/pages/api/organization/addUserToOrg.js index 44feb793dc..e20a1676bc 100644 --- a/frontend/pages/api/organization/addUserToOrg.js +++ b/frontend/pages/api/organization/addUserToOrg.js @@ -1,4 +1,5 @@ import SecurityClient from "~/utilities/SecurityClient"; + import { PATH } from "../../../const"; /** diff --git a/frontend/pages/api/organization/deleteIncidentContact.js b/frontend/pages/api/organization/deleteIncidentContact.js index 04d0a53fff..3035c55ffe 100644 --- a/frontend/pages/api/organization/deleteIncidentContact.js +++ b/frontend/pages/api/organization/deleteIncidentContact.js @@ -1,4 +1,5 @@ import SecurityClient from "~/utilities/SecurityClient"; + import { PATH } from "../../../const"; /** diff --git a/frontend/pages/api/organization/deleteUserFromOrganization.js b/frontend/pages/api/organization/deleteUserFromOrganization.js index 86ff688128..b9fcf15e6a 100644 --- a/frontend/pages/api/organization/deleteUserFromOrganization.js +++ b/frontend/pages/api/organization/deleteUserFromOrganization.js @@ -1,4 +1,5 @@ import SecurityClient from "~/utilities/SecurityClient"; + import { PATH } from "../../../const"; /** diff --git a/frontend/pages/api/organization/getIncidentContacts.js b/frontend/pages/api/organization/getIncidentContacts.js index a46650bb95..f5d54aa0a6 100644 --- a/frontend/pages/api/organization/getIncidentContacts.js +++ b/frontend/pages/api/organization/getIncidentContacts.js @@ -1,4 +1,5 @@ import SecurityClient from "~/utilities/SecurityClient"; + import { PATH } from "../../../const"; /** diff --git a/frontend/pages/api/organization/getOrgs.js b/frontend/pages/api/organization/getOrgs.js index 21127be679..80847664a6 100644 --- a/frontend/pages/api/organization/getOrgs.js +++ b/frontend/pages/api/organization/getOrgs.js @@ -1,4 +1,5 @@ import SecurityClient from "~/utilities/SecurityClient"; + import { PATH } from "../../../const"; /** diff --git a/frontend/pages/api/organization/renameOrg.js b/frontend/pages/api/organization/renameOrg.js index 81c9e16dbb..afcc94981d 100644 --- a/frontend/pages/api/organization/renameOrg.js +++ b/frontend/pages/api/organization/renameOrg.js @@ -1,4 +1,5 @@ import SecurityClient from "~/utilities/SecurityClient"; + import { PATH } from "../../../const"; /** diff --git a/frontend/pages/api/serviceToken/addServiceToken.js b/frontend/pages/api/serviceToken/addServiceToken.js index e41fa11b6e..fec30ec951 100644 --- a/frontend/pages/api/serviceToken/addServiceToken.js +++ b/frontend/pages/api/serviceToken/addServiceToken.js @@ -1,4 +1,5 @@ import SecurityClient from "~/utilities/SecurityClient"; + import { PATH } from "../../../const"; /** diff --git a/frontend/pages/api/serviceToken/getServiceTokens.js b/frontend/pages/api/serviceToken/getServiceTokens.js index aa066e69ce..39674e7115 100644 --- a/frontend/pages/api/serviceToken/getServiceTokens.js +++ b/frontend/pages/api/serviceToken/getServiceTokens.js @@ -1,4 +1,5 @@ import SecurityClient from "~/utilities/SecurityClient"; + import { PATH } from "../../../const"; /** diff --git a/frontend/pages/api/user/getUser.js b/frontend/pages/api/user/getUser.js index 870eb85cdd..3491810f5c 100644 --- a/frontend/pages/api/user/getUser.js +++ b/frontend/pages/api/user/getUser.js @@ -1,4 +1,5 @@ import SecurityClient from "~/utilities/SecurityClient"; + import { PATH } from "../../../const"; /** diff --git a/frontend/pages/api/userActions/checkUserAction.js b/frontend/pages/api/userActions/checkUserAction.js index d50202ce23..ae71ddbe21 100644 --- a/frontend/pages/api/userActions/checkUserAction.js +++ b/frontend/pages/api/userActions/checkUserAction.js @@ -1,4 +1,5 @@ import SecurityClient from "~/utilities/SecurityClient"; + import { PATH } from "../../../const"; /** diff --git a/frontend/pages/api/userActions/registerUserAction.js b/frontend/pages/api/userActions/registerUserAction.js index cc1053a243..64d937015e 100644 --- a/frontend/pages/api/userActions/registerUserAction.js +++ b/frontend/pages/api/userActions/registerUserAction.js @@ -1,4 +1,5 @@ import SecurityClient from "~/utilities/SecurityClient"; + import { PATH } from "../../../const"; /** diff --git a/frontend/pages/api/workspace/addUserToWorkspace.js b/frontend/pages/api/workspace/addUserToWorkspace.js index 20608fc002..a598a6a4da 100644 --- a/frontend/pages/api/workspace/addUserToWorkspace.js +++ b/frontend/pages/api/workspace/addUserToWorkspace.js @@ -1,4 +1,5 @@ import SecurityClient from "~/utilities/SecurityClient"; + import { PATH } from "../../../const"; /** diff --git a/frontend/pages/api/workspace/changeUserRoleInWorkspace.js b/frontend/pages/api/workspace/changeUserRoleInWorkspace.js index 3faa882923..3d9f4a36a7 100644 --- a/frontend/pages/api/workspace/changeUserRoleInWorkspace.js +++ b/frontend/pages/api/workspace/changeUserRoleInWorkspace.js @@ -1,4 +1,5 @@ import SecurityClient from "~/utilities/SecurityClient"; + import { PATH } from "../../../const"; /** diff --git a/frontend/pages/api/workspace/createWorkspace.js b/frontend/pages/api/workspace/createWorkspace.js index 2b6ee4e771..13c57245b4 100644 --- a/frontend/pages/api/workspace/createWorkspace.js +++ b/frontend/pages/api/workspace/createWorkspace.js @@ -1,4 +1,5 @@ import SecurityClient from "~/utilities/SecurityClient"; + import { PATH } from "../../../const"; /** diff --git a/frontend/pages/api/workspace/deleteUserFromWorkspace.js b/frontend/pages/api/workspace/deleteUserFromWorkspace.js index bebc032a0e..6aa2559a3f 100644 --- a/frontend/pages/api/workspace/deleteUserFromWorkspace.js +++ b/frontend/pages/api/workspace/deleteUserFromWorkspace.js @@ -1,4 +1,5 @@ import SecurityClient from "~/utilities/SecurityClient"; + import { PATH } from "../../../const"; /** diff --git a/frontend/pages/api/workspace/deleteWorkspace.js b/frontend/pages/api/workspace/deleteWorkspace.js index ed0787c221..f2e415c058 100644 --- a/frontend/pages/api/workspace/deleteWorkspace.js +++ b/frontend/pages/api/workspace/deleteWorkspace.js @@ -1,4 +1,5 @@ import SecurityClient from "~/utilities/SecurityClient"; + import { PATH } from "../../../const"; /** diff --git a/frontend/pages/api/workspace/getLatestFileKey.js b/frontend/pages/api/workspace/getLatestFileKey.js index a3f1b5620b..f6f61b64fb 100644 --- a/frontend/pages/api/workspace/getLatestFileKey.js +++ b/frontend/pages/api/workspace/getLatestFileKey.js @@ -1,4 +1,5 @@ import SecurityClient from "~/utilities/SecurityClient"; + import { PATH } from "../../../const"; /** diff --git a/frontend/pages/api/workspace/getWorkspaceInfo.js b/frontend/pages/api/workspace/getWorkspaceInfo.js index f528a319ec..5e510447de 100644 --- a/frontend/pages/api/workspace/getWorkspaceInfo.js +++ b/frontend/pages/api/workspace/getWorkspaceInfo.js @@ -1,4 +1,5 @@ import SecurityClient from "~/utilities/SecurityClient"; + import { PATH } from "../../../const"; /** diff --git a/frontend/pages/api/workspace/getWorkspaceKeys.js b/frontend/pages/api/workspace/getWorkspaceKeys.js index b366fb5ef7..334f1a8783 100644 --- a/frontend/pages/api/workspace/getWorkspaceKeys.js +++ b/frontend/pages/api/workspace/getWorkspaceKeys.js @@ -1,4 +1,5 @@ import SecurityClient from "~/utilities/SecurityClient"; + import { PATH } from "../../../const"; /** diff --git a/frontend/pages/api/workspace/getWorkspaceUsers.js b/frontend/pages/api/workspace/getWorkspaceUsers.js index 6bbdc633bd..3dc05a2f5a 100644 --- a/frontend/pages/api/workspace/getWorkspaceUsers.js +++ b/frontend/pages/api/workspace/getWorkspaceUsers.js @@ -1,4 +1,5 @@ import SecurityClient from "~/utilities/SecurityClient"; + import { PATH } from "../../../const"; /** diff --git a/frontend/pages/api/workspace/getWorkspaces.js b/frontend/pages/api/workspace/getWorkspaces.js index 0bc213e622..0e751a319b 100644 --- a/frontend/pages/api/workspace/getWorkspaces.js +++ b/frontend/pages/api/workspace/getWorkspaces.js @@ -1,4 +1,5 @@ import SecurityClient from "~/utilities/SecurityClient"; + import { PATH } from "../../../const"; /** diff --git a/frontend/pages/api/workspace/renameWorkspace.js b/frontend/pages/api/workspace/renameWorkspace.js index da3cf83bcd..0547c481b2 100644 --- a/frontend/pages/api/workspace/renameWorkspace.js +++ b/frontend/pages/api/workspace/renameWorkspace.js @@ -1,4 +1,5 @@ import SecurityClient from "~/utilities/SecurityClient"; + import { PATH } from "../../../const"; /** diff --git a/frontend/pages/api/workspace/uploadKeys.js b/frontend/pages/api/workspace/uploadKeys.js index b1e6385552..3b2593cb86 100644 --- a/frontend/pages/api/workspace/uploadKeys.js +++ b/frontend/pages/api/workspace/uploadKeys.js @@ -1,4 +1,5 @@ import SecurityClient from "~/utilities/SecurityClient"; + import { PATH } from "../../../const"; /** diff --git a/frontend/pages/dashboard.js b/frontend/pages/dashboard.js index 2dabdf07e8..11a2164b56 100644 --- a/frontend/pages/dashboard.js +++ b/frontend/pages/dashboard.js @@ -1,6 +1,6 @@ import React, { useEffect } from "react"; -import { useRouter } from "next/router"; import Head from "next/head"; +import { useRouter } from "next/router"; import getWorkspaces from "./api/workspace/getWorkspaces"; diff --git a/frontend/pages/dashboard/[id].js b/frontend/pages/dashboard/[id].js index 0d55dc2cbd..0fc665ef36 100644 --- a/frontend/pages/dashboard/[id].js +++ b/frontend/pages/dashboard/[id].js @@ -1,42 +1,43 @@ -import React, { useState, useEffect, useCallback, Fragment } from "react"; -import { useRouter } from "next/router"; +import React, { Fragment, useCallback, useEffect, useState } from "react"; import Head from "next/head"; import Image from "next/image"; -import guidGenerator from "~/utilities/randomId"; -import getSecretsForProject from "~/utilities/getSecretsForProject"; -import pushKeys from "~/utilities/pushKeys"; -import getWorkspaces from "../api/workspace/getWorkspaces"; -import getUser from "../api/user/getUser"; -import NavHeader from "~/components/navigation/NavHeader"; - -import DashboardInputField from "~/components/dashboard/DashboardInputField"; -import { FontAwesomeIcon } from "@fortawesome/react-fontawesome"; +import { useRouter } from "next/router"; import { - faMagnifyingGlass, - faEye, - faEyeSlash, - faPlus, - faFolderOpen, faArrowDownAZ, faArrowDownZA, + faCheck, + faCircleInfo, + faCopy, faDownload, faEllipsis, - faPerson, + faEye, + faEyeSlash, + faFolderOpen, + faMagnifyingGlass, faPeopleGroup, - faCheck, - faCopy, - faCircleInfo, + faPerson, + faPlus, faX, } from "@fortawesome/free-solid-svg-icons"; +import { FontAwesomeIcon } from "@fortawesome/react-fontawesome"; +import { Menu, Transition } from "@headlessui/react"; + +import Button from "~/components/basic/buttons/Button"; import ListBox from "~/components/basic/Listbox"; +import BottonRightPopup from "~/components/basic/popups/BottomRightPopup"; +import DashboardInputField from "~/components/dashboard/DashboardInputField"; import DropZone from "~/components/dashboard/DropZone"; -import { Menu, Transition } from "@headlessui/react"; +import NavHeader from "~/components/navigation/NavHeader"; +import getSecretsForProject from "~/utilities/getSecretsForProject"; +import pushKeys from "~/utilities/pushKeys"; +import pushKeysIntegration from "~/utilities/pushKeysIntegration"; +import guidGenerator from "~/utilities/randomId"; + import getWorkspaceIntegrations from "../api/integrations/getWorkspaceIntegrations"; -import BottonRightPopup from "~/components/basic/popups/BottomRightPopup"; +import getUser from "../api/user/getUser"; import checkUserAction from "../api/userActions/checkUserAction"; import registerUserAction from "../api/userActions/registerUserAction"; -import pushKeysIntegration from "~/utilities/pushKeysIntegration"; -import Button from "~/components/basic/buttons/Button"; +import getWorkspaces from "../api/workspace/getWorkspaces"; const KeyPair = ({ keyPair, diff --git a/frontend/pages/integrations/[id].js b/frontend/pages/integrations/[id].js index 7622ceb84f..35a9a6f06a 100644 --- a/frontend/pages/integrations/[id].js +++ b/frontend/pages/integrations/[id].js @@ -1,27 +1,29 @@ -import React, { useState, useEffect } from "react"; -import { useRouter } from "next/router"; +import React, { useEffect,useState } from "react"; import Head from "next/head"; import Image from "next/image"; -import { FontAwesomeIcon } from "@fortawesome/react-fontawesome"; +import { useRouter } from "next/router"; import { - faCheck, faArrowRight, + faCheck, faRotate, faX, } from "@fortawesome/free-solid-svg-icons"; +import { FontAwesomeIcon } from "@fortawesome/react-fontawesome"; + +import Button from "~/components/basic/buttons/Button"; import ListBox from "~/components/basic/Listbox"; import NavHeader from "~/components/navigation/NavHeader"; -import getIntegrations from "../api/integrations/GetIntegrations"; +import getSecretsForProject from "~/utilities/getSecretsForProject"; +import pushKeysIntegration from "~/utilities/pushKeysIntegration"; +import guidGenerator from "~/utilities/randomId"; + +import deleteIntegration from "../api/integrations/DeleteIntegration"; +import deleteIntegrationAuth from "../api/integrations/DeleteIntegrationAuth"; import getIntegrationApps from "../api/integrations/GetIntegrationApps"; +import getIntegrations from "../api/integrations/GetIntegrations"; import getWorkspaceAuthorizations from "../api/integrations/getWorkspaceAuthorizations"; import getWorkspaceIntegrations from "../api/integrations/getWorkspaceIntegrations"; import startIntegration from "../api/integrations/StartIntegration"; -import deleteIntegration from "../api/integrations/DeleteIntegration"; -import getSecretsForProject from "~/utilities/getSecretsForProject"; -import pushKeysIntegration from "~/utilities/pushKeysIntegration"; -import deleteIntegrationAuth from "../api/integrations/DeleteIntegrationAuth"; -import Button from "~/components/basic/buttons/Button"; -import guidGenerator from "~/utilities/randomId"; const crypto = require("crypto"); diff --git a/frontend/pages/login.js b/frontend/pages/login.js index ed13db377e..aed4a7e940 100644 --- a/frontend/pages/login.js +++ b/frontend/pages/login.js @@ -1,17 +1,17 @@ -import React, { useState, useEffect } from "react"; -import { useRouter } from "next/router"; - +import React, { useEffect,useState } from "react"; import Head from "next/head"; import Image from "next/image"; import Link from "next/link"; +import { useRouter } from "next/router"; +import { faWarning } from "@fortawesome/free-solid-svg-icons"; +import { FontAwesomeIcon } from "@fortawesome/react-fontawesome"; -import InputField from "~/components/basic/InputField"; -import Error from "~/components/basic/Error"; import Button from "~/components/basic/buttons/Button"; -import getWorkspaces from "./api/workspace/getWorkspaces"; +import Error from "~/components/basic/Error"; +import InputField from "~/components/basic/InputField"; import attemptLogin from "~/utilities/attemptLogin"; -import { FontAwesomeIcon } from "@fortawesome/react-fontawesome"; -import { faWarning } from "@fortawesome/free-solid-svg-icons"; + +import getWorkspaces from "./api/workspace/getWorkspaces"; export default function Login() { const [email, setEmail] = useState(""); diff --git a/frontend/pages/noprojects.js b/frontend/pages/noprojects.js index fd415ac9f7..4634ac2c62 100644 --- a/frontend/pages/noprojects.js +++ b/frontend/pages/noprojects.js @@ -1,6 +1,6 @@ import React from "react"; -import { FontAwesomeIcon } from "@fortawesome/react-fontawesome"; import { faFolderOpen } from "@fortawesome/free-regular-svg-icons"; +import { FontAwesomeIcon } from "@fortawesome/react-fontawesome"; export default function NoProjects() { return ( diff --git a/frontend/pages/settings/billing/[id].js b/frontend/pages/settings/billing/[id].js index 1e28964a64..18a87353b3 100644 --- a/frontend/pages/settings/billing/[id].js +++ b/frontend/pages/settings/billing/[id].js @@ -1,11 +1,13 @@ -import React, { useState, useEffect } from "react"; +import React, { useEffect,useState } from "react"; import Head from "next/head"; + import Plan from "~/components/billing/Plan"; -import getOrganizationSubscriptions from "../../api/organization/GetOrgSubscription"; -import getOrganizationUsers from "../../api/organization/GetOrgUsers"; import NavHeader from "~/components/navigation/NavHeader"; import { STRIPE_PRODUCT_PRO, STRIPE_PRODUCT_STARTER } from "~/utilities/config"; +import getOrganizationSubscriptions from "../../api/organization/GetOrgSubscription"; +import getOrganizationUsers from "../../api/organization/GetOrgUsers"; + export default function SettingsBilling() { let [currentPlan, setCurrentPlan] = useState(""); let [numUsers, setNumUsers] = useState(""); diff --git a/frontend/pages/settings/org/[id].js b/frontend/pages/settings/org/[id].js index 604bb7ef37..7030bd0b1c 100644 --- a/frontend/pages/settings/org/[id].js +++ b/frontend/pages/settings/org/[id].js @@ -1,30 +1,32 @@ -import React, { useState, useEffect } from "react"; -import { useRouter } from "next/router"; +import React, { useEffect,useState } from "react"; import Head from "next/head"; -import { FontAwesomeIcon } from "@fortawesome/react-fontawesome"; +import { useRouter } from "next/router"; import { faMagnifyingGlass, faPlus, faX, } from "@fortawesome/free-solid-svg-icons"; import { faCheck } from "@fortawesome/free-solid-svg-icons"; -import InputField from "~/components/basic/InputField"; -import getWorkspaces from "../../api/workspace/getWorkspaces"; +import { FontAwesomeIcon } from "@fortawesome/react-fontawesome"; + +import Button from "~/components/basic/buttons/Button"; import AddIncidentContactDialog from "~/components/basic/dialog/AddIncidentContactDialog"; -import getIncidentContacts from "../../api/organization/getIncidentContacts"; -import deleteIncidentContact from "../../api/organization/deleteIncidentContact"; -import deleteWorkspace from "../../api/workspace/deleteWorkspace"; import AddUserDialog from "~/components/basic/dialog/AddUserDialog"; +import InputField from "~/components/basic/InputField"; import UserTable from "~/components/basic/table/UserTable"; -import getUser from "../../api/user/getUser"; +import NavHeader from "~/components/navigation/NavHeader"; import guidGenerator from "~/utilities/randomId"; + import addUserToOrg from "../../api/organization/addUserToOrg"; -import getOrganizationUsers from "../../api/organization/GetOrgUsers"; -import renameOrg from "../../api/organization/renameOrg"; +import deleteIncidentContact from "../../api/organization/deleteIncidentContact"; +import getIncidentContacts from "../../api/organization/getIncidentContacts"; import getOrganization from "../../api/organization/GetOrg"; import getOrganizationSubscriptions from "../../api/organization/GetOrgSubscription"; -import NavHeader from "~/components/navigation/NavHeader"; -import Button from "~/components/basic/buttons/Button"; +import getOrganizationUsers from "../../api/organization/GetOrgUsers"; +import renameOrg from "../../api/organization/renameOrg"; +import getUser from "../../api/user/getUser"; +import deleteWorkspace from "../../api/workspace/deleteWorkspace"; +import getWorkspaces from "../../api/workspace/getWorkspaces"; export default function SettingsOrg() { const [buttonReady, setButtonReady] = useState(false); diff --git a/frontend/pages/settings/personal/[id].js b/frontend/pages/settings/personal/[id].js index 5093fe11d9..2b5b90a359 100644 --- a/frontend/pages/settings/personal/[id].js +++ b/frontend/pages/settings/personal/[id].js @@ -1,14 +1,16 @@ -import React, { useState, useEffect } from "react"; +import React, { useEffect,useState } from "react"; import Head from "next/head"; -import { FontAwesomeIcon } from "@fortawesome/react-fontawesome"; import { faCheck, faX } from "@fortawesome/free-solid-svg-icons"; +import { FontAwesomeIcon } from "@fortawesome/react-fontawesome"; + +import Button from "~/components/basic/buttons/Button"; import InputField from "~/components/basic/InputField"; -import getUser from "../../api/user/getUser"; import NavHeader from "~/components/navigation/NavHeader"; -import passwordCheck from "~/utilities/checks/PasswordCheck"; import changePassword from "~/utilities/changePassword"; +import passwordCheck from "~/utilities/checks/PasswordCheck"; import issueBackupKey from "~/utilities/issueBackupKey"; -import Button from "~/components/basic/buttons/Button"; + +import getUser from "../../api/user/getUser"; export default function PersonalSettings() { const [personalEmail, setPersonalEmail] = useState(""); diff --git a/frontend/pages/settings/project/[id].js b/frontend/pages/settings/project/[id].js index 466ff0023f..b04f4a81e5 100644 --- a/frontend/pages/settings/project/[id].js +++ b/frontend/pages/settings/project/[id].js @@ -1,17 +1,18 @@ -import React, { useState, useRef, useEffect } from "react"; -import { useRouter } from "next/router"; +import React, { useEffect,useRef, useState } from "react"; import Head from "next/head"; - +import { useRouter } from "next/router"; import { faCheck, faPlus } from "@fortawesome/free-solid-svg-icons"; -import InputField from "~/components/basic/InputField"; -import getWorkspaces from "../../api/workspace/getWorkspaces"; -import renameWorkspace from "../../api/workspace/renameWorkspace"; -import deleteWorkspace from "../../api/workspace/deleteWorkspace"; -import NavHeader from "~/components/navigation/NavHeader"; + import Button from "~/components/basic/buttons/Button"; +import AddServiceTokenDialog from "~/components/basic/dialog/AddServiceTokenDialog"; +import InputField from "~/components/basic/InputField"; import ServiceTokenTable from "~/components/basic/table/ServiceTokenTable"; +import NavHeader from "~/components/navigation/NavHeader"; + import getServiceTokens from "../../api/serviceToken/getServiceTokens"; -import AddServiceTokenDialog from "~/components/basic/dialog/AddServiceTokenDialog"; +import deleteWorkspace from "../../api/workspace/deleteWorkspace"; +import getWorkspaces from "../../api/workspace/getWorkspaces"; +import renameWorkspace from "../../api/workspace/renameWorkspace"; export default function SettingsBasic() { const [buttonReady, setButtonReady] = useState(false); diff --git a/frontend/pages/signup.js b/frontend/pages/signup.js index 5ac95a465f..24dafed59a 100644 --- a/frontend/pages/signup.js +++ b/frontend/pages/signup.js @@ -1,24 +1,24 @@ -import React, { useState, useRef, useEffect } from "react"; -import { useRouter } from "next/router"; - +import React, { useEffect,useRef, useState } from "react"; +import dynamic from "next/dynamic"; import Head from "next/head"; import Image from "next/image"; import Link from "next/link"; -import dynamic from "next/dynamic"; +import { useRouter } from "next/router"; +import { faCheck, faWarning,faX } from "@fortawesome/free-solid-svg-icons"; +import { FontAwesomeIcon } from "@fortawesome/react-fontawesome"; -import InputField from "~/compoennts/basic/InputField"; -import Error from "~/compoennts/basic/Error"; +import Aes256Gcm from "~/compoennts/aes-256-gcm"; import Button from "~/compoennts/basic/buttons/Button"; -import sendVerificationEmail from "./api/auth/SendVerificationEmail"; +import Error from "~/compoennts/basic/Error"; +import InputField from "~/compoennts/basic/InputField"; +import attemptLogin from "~/compoennts/utilities/attemptLogin"; +import passwordCheck from "~/compoennts/utilities/checks/PasswordCheck"; +import issueBackupKey from "~/compoennts/utilities/issueBackupKey"; + import checkEmailVerificationCode from "./api/auth/CheckEmailVerificationCode"; import completeAccountInformationSignup from "./api/auth/CompleteAccountInformationSignup"; -import Aes256Gcm from "~/compoennts/aes-256-gcm"; -import passwordCheck from "~/compoennts/utilities/checks/PasswordCheck"; +import sendVerificationEmail from "./api/auth/SendVerificationEmail"; import getWorkspaces from "./api/workspace/getWorkspaces"; -import attemptLogin from "~/compoennts/utilities/attemptLogin"; -import { FontAwesomeIcon } from "@fortawesome/react-fontawesome"; -import { faCheck, faX, faWarning } from "@fortawesome/free-solid-svg-icons"; -import issueBackupKey from "~/compoennts/utilities/issueBackupKey"; const ReactCodeInput = dynamic(import("react-code-input")); const nacl = require("tweetnacl"); diff --git a/frontend/pages/signupinvite.js b/frontend/pages/signupinvite.js index cb1a10b8a5..0f6a5c1c42 100644 --- a/frontend/pages/signupinvite.js +++ b/frontend/pages/signupinvite.js @@ -1,19 +1,19 @@ import React, { useState } from "react"; -import { useRouter } from "next/router"; - import Head from "next/head"; import Image from "next/image"; import Link from "next/link"; +import { useRouter } from "next/router"; +import { faCheck, faWarning,faX } from "@fortawesome/free-solid-svg-icons"; +import { FontAwesomeIcon } from "@fortawesome/react-fontawesome"; -import InputField from "~/components/basic/InputField"; -import Button from "~/components/basic/buttons/Button"; -import completeAccountInformationSignupInvite from "./api/auth/CompleteAccountInformationSignupInvite"; import Aes256Gcm from "~/components/aes-256-gcm"; -import passwordCheck from "~/utilities/checks/PasswordCheck"; +import Button from "~/components/basic/buttons/Button"; +import InputField from "~/components/basic/InputField"; import attemptLogin from "~/utilities/attemptLogin"; -import { FontAwesomeIcon } from "@fortawesome/react-fontawesome"; -import { faCheck, faX, faWarning } from "@fortawesome/free-solid-svg-icons"; +import passwordCheck from "~/utilities/checks/PasswordCheck"; import issueBackupKey from "~/utilities/issueBackupKey"; + +import completeAccountInformationSignupInvite from "./api/auth/CompleteAccountInformationSignupInvite"; import verifySignupInvite from "./api/auth/VerifySignupInvite"; const nacl = require("tweetnacl"); diff --git a/frontend/pages/users/[id].js b/frontend/pages/users/[id].js index cd341f7486..0d1fd7d3da 100644 --- a/frontend/pages/users/[id].js +++ b/frontend/pages/users/[id].js @@ -1,21 +1,22 @@ -import React, { useState, useEffect } from "react"; -import { useRouter } from "next/router"; +import React, { useEffect, useState } from "react"; import Head from "next/head"; import Image from "next/image"; - -import { FontAwesomeIcon } from "@fortawesome/react-fontawesome"; +import { useRouter } from "next/router"; import { faMagnifyingGlass, faPlus } from "@fortawesome/free-solid-svg-icons"; +import { FontAwesomeIcon } from "@fortawesome/react-fontawesome"; + +import Button from "~/components/basic/buttons/Button"; +import AddProjectMemberDialog from "~/components/basic/dialog/AddProjectMemberDialog"; import UserTable from "~/components/basic/table/UserTable"; -import getWorkspaceUsers from "../api/workspace/getWorkspaceUsers"; +import NavHeader from "~/components/navigation/NavHeader"; import guidGenerator from "~/utilities/randomId"; -import AddProjectMemberDialog from "~/components/basic/dialog/AddProjectMemberDialog"; + +import getOrganizationUsers from "../api/organization/GetOrgUsers"; +import getUser from "../api/user/getUser"; // import DeleteUserDialog from '~/components/basic/dialog/DeleteUserDialog'; import addUserToWorkspace from "../api/workspace/addUserToWorkspace"; -import getUser from "../api/user/getUser"; +import getWorkspaceUsers from "../api/workspace/getWorkspaceUsers"; import uploadKeys from "../api/workspace/uploadKeys"; -import getOrganizationUsers from "../api/organization/GetOrgUsers"; -import NavHeader from "~/components/navigation/NavHeader"; -import Button from "~/components/basic/buttons/Button"; // #TODO: Update all the workspaceIds const crypto = require("crypto"); diff --git a/frontend/yarn.lock b/frontend/yarn.lock index 51d255299b..4c5103300c 100644 --- a/frontend/yarn.lock +++ b/frontend/yarn.lock @@ -1555,6 +1555,11 @@ eslint-plugin-react@^7.31.7: semver "^6.3.0" string.prototype.matchall "^4.0.8" +eslint-plugin-simple-import-sort@^8.0.0: + version "8.0.0" + resolved "https://registry.yarnpkg.com/eslint-plugin-simple-import-sort/-/eslint-plugin-simple-import-sort-8.0.0.tgz#9d9a2372b0606e999ea841b10458a370a6ccc160" + integrity sha512-bXgJQ+lqhtQBCuWY/FUWdB27j4+lqcvXv5rUARkzbeWLwea+S5eBZEQrhnO+WgX3ZoJHVj0cn943iyXwByHHQw== + eslint-scope@^7.1.1: version "7.1.1" resolved "https://registry.yarnpkg.com/eslint-scope/-/eslint-scope-7.1.1.tgz#fff34894c2f65e5226d3041ac480b4513a163642"