forked from github/plane
Merge pull request #61 from aaryan610/master
style: projects settings page
This commit is contained in:
commit
5856e2c477
@ -66,7 +66,7 @@ const ProjectMemberInvitations: React.FC<Props> = ({
|
|||||||
return (
|
return (
|
||||||
<>
|
<>
|
||||||
<div
|
<div
|
||||||
className={`w-full h-full flex flex-col px-4 py-3 rounded-md bg-white ${
|
className={`w-full h-full flex flex-col px-4 py-3 rounded-md border bg-white ${
|
||||||
selected ? "ring-2 ring-indigo-400" : ""
|
selected ? "ring-2 ring-indigo-400" : ""
|
||||||
}`}
|
}`}
|
||||||
>
|
>
|
||||||
|
@ -15,11 +15,8 @@ const SettingsSidebar: React.FC<Props> = ({ links }) => {
|
|||||||
|
|
||||||
return (
|
return (
|
||||||
<nav className="h-screen w-72 border-r border-gray-200">
|
<nav className="h-screen w-72 border-r border-gray-200">
|
||||||
<div className="h-full p-2 pl-6 mt-16">
|
<div className="p-2 pl-6 mt-16">
|
||||||
<h2 className="flex items-center gap-2 text-lg font-medium leading-5">
|
<h2 className="flex items-center gap-2 text-lg font-medium leading-5">Settings</h2>
|
||||||
<ArrowLeftIcon className="h-4 w-4" />
|
|
||||||
Settings
|
|
||||||
</h2>
|
|
||||||
<div className="mt-6 space-y-1">
|
<div className="mt-6 space-y-1">
|
||||||
{links.map((link, index) => (
|
{links.map((link, index) => (
|
||||||
<h4 key={index}>
|
<h4 key={index}>
|
||||||
|
@ -104,7 +104,7 @@ const SettingsLayout: React.FC<Props> = ({
|
|||||||
<main className="h-screen w-full flex flex-col overflow-y-auto min-w-0">
|
<main className="h-screen w-full flex flex-col overflow-y-auto min-w-0">
|
||||||
{noHeader ? null : <Header breadcrumbs={breadcrumbs} left={left} right={right} />}
|
{noHeader ? null : <Header breadcrumbs={breadcrumbs} left={left} right={right} />}
|
||||||
<div
|
<div
|
||||||
className={`w-full flex-grow ${noPadding ? "" : "p-5 px-16 pt-16"} ${
|
className={`w-full flex-grow ${noPadding ? "" : "p-5 px-16"} ${
|
||||||
bg === "primary" ? "bg-primary" : bg === "secondary" ? "bg-secondary" : "bg-primary"
|
bg === "primary" ? "bg-primary" : bg === "secondary" ? "bg-secondary" : "bg-primary"
|
||||||
}`}
|
}`}
|
||||||
>
|
>
|
||||||
|
@ -306,7 +306,7 @@ const SingleCycle: React.FC = () => {
|
|||||||
leaveFrom="opacity-100 translate-y-0"
|
leaveFrom="opacity-100 translate-y-0"
|
||||||
leaveTo="opacity-0 translate-y-1"
|
leaveTo="opacity-0 translate-y-1"
|
||||||
>
|
>
|
||||||
<Popover.Panel className="absolute right-0 z-10 mt-1 w-screen max-w-xs transform p-3 bg-white rounded-lg shadow-lg overflow-hidden">
|
<Popover.Panel className="absolute right-0 z-20 mt-1 w-screen max-w-xs transform p-3 bg-white rounded-lg shadow-lg overflow-hidden">
|
||||||
<div className="relative flex flex-col gap-1 gap-y-4">
|
<div className="relative flex flex-col gap-1 gap-y-4">
|
||||||
<div className="flex justify-between items-center">
|
<div className="flex justify-between items-center">
|
||||||
<h4 className="text-sm text-gray-600">Group by</h4>
|
<h4 className="text-sm text-gray-600">Group by</h4>
|
||||||
|
@ -15,7 +15,7 @@ import useUser from "lib/hooks/useUser";
|
|||||||
// headless ui
|
// headless ui
|
||||||
import { Listbox, Transition } from "@headlessui/react";
|
import { Listbox, Transition } from "@headlessui/react";
|
||||||
// ui
|
// ui
|
||||||
import { Button } from "ui";
|
import { BreadcrumbItem, Breadcrumbs, Button } from "ui";
|
||||||
// icons
|
// icons
|
||||||
import { CheckIcon, ChevronDownIcon } from "@heroicons/react/24/outline";
|
import { CheckIcon, ChevronDownIcon } from "@heroicons/react/24/outline";
|
||||||
// types
|
// types
|
||||||
@ -101,7 +101,18 @@ const ControlSettings = () => {
|
|||||||
}, [projectDetails, reset]);
|
}, [projectDetails, reset]);
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<SettingsLayout type="project" noHeader>
|
<SettingsLayout
|
||||||
|
type="project"
|
||||||
|
breadcrumbs={
|
||||||
|
<Breadcrumbs>
|
||||||
|
<BreadcrumbItem
|
||||||
|
title={`${activeProject?.name ?? "Project"}`}
|
||||||
|
link={`/projects/${activeProject?.id}/issues`}
|
||||||
|
/>
|
||||||
|
<BreadcrumbItem title="Control Settings" />
|
||||||
|
</Breadcrumbs>
|
||||||
|
}
|
||||||
|
>
|
||||||
<form onSubmit={handleSubmit(onSubmit)}>
|
<form onSubmit={handleSubmit(onSubmit)}>
|
||||||
<div className="space-y-8">
|
<div className="space-y-8">
|
||||||
<div>
|
<div>
|
||||||
|
@ -12,7 +12,7 @@ import projectService from "lib/services/project.service";
|
|||||||
import useUser from "lib/hooks/useUser";
|
import useUser from "lib/hooks/useUser";
|
||||||
import useToast from "lib/hooks/useToast";
|
import useToast from "lib/hooks/useToast";
|
||||||
// ui
|
// ui
|
||||||
import { Button, EmojiIconPicker, Input, Select, TextArea } from "ui";
|
import { BreadcrumbItem, Breadcrumbs, Button, EmojiIconPicker, Input, Select, TextArea } from "ui";
|
||||||
// types
|
// types
|
||||||
import { IProject, IWorkspace } from "types";
|
import { IProject, IWorkspace } from "types";
|
||||||
// fetch-keys
|
// fetch-keys
|
||||||
@ -116,7 +116,18 @@ const GeneralSettings = () => {
|
|||||||
}, [projectDetails, reset]);
|
}, [projectDetails, reset]);
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<SettingsLayout type="project" noHeader>
|
<SettingsLayout
|
||||||
|
type="project"
|
||||||
|
breadcrumbs={
|
||||||
|
<Breadcrumbs>
|
||||||
|
<BreadcrumbItem
|
||||||
|
title={`${activeProject?.name ?? "Project"}`}
|
||||||
|
link={`/projects/${activeProject?.id}/issues`}
|
||||||
|
/>
|
||||||
|
<BreadcrumbItem title="General Settings" />
|
||||||
|
</Breadcrumbs>
|
||||||
|
}
|
||||||
|
>
|
||||||
<form onSubmit={handleSubmit(onSubmit)}>
|
<form onSubmit={handleSubmit(onSubmit)}>
|
||||||
<div className="space-y-8">
|
<div className="space-y-8">
|
||||||
<div>
|
<div>
|
||||||
|
@ -17,7 +17,7 @@ import SingleLabel from "components/project/settings/single-label";
|
|||||||
// headless ui
|
// headless ui
|
||||||
import { Popover, Transition } from "@headlessui/react";
|
import { Popover, Transition } from "@headlessui/react";
|
||||||
// ui
|
// ui
|
||||||
import { Button, Input, Spinner } from "ui";
|
import { BreadcrumbItem, Breadcrumbs, Button, Input, Spinner } from "ui";
|
||||||
// icons
|
// icons
|
||||||
import { PlusIcon } from "@heroicons/react/24/outline";
|
import { PlusIcon } from "@heroicons/react/24/outline";
|
||||||
// fetch-keys
|
// fetch-keys
|
||||||
@ -103,7 +103,18 @@ const LabelsSettings = () => {
|
|||||||
};
|
};
|
||||||
|
|
||||||
return (
|
return (
|
||||||
<SettingsLayout type="project" noHeader>
|
<SettingsLayout
|
||||||
|
type="project"
|
||||||
|
breadcrumbs={
|
||||||
|
<Breadcrumbs>
|
||||||
|
<BreadcrumbItem
|
||||||
|
title={`${activeProject?.name ?? "Project"}`}
|
||||||
|
link={`/projects/${activeProject?.id}/issues`}
|
||||||
|
/>
|
||||||
|
<BreadcrumbItem title="Labels Settings" />
|
||||||
|
</Breadcrumbs>
|
||||||
|
}
|
||||||
|
>
|
||||||
<section className="space-y-8">
|
<section className="space-y-8">
|
||||||
<div>
|
<div>
|
||||||
<h3 className="text-3xl font-bold leading-6 text-gray-900">Labels</h3>
|
<h3 className="text-3xl font-bold leading-6 text-gray-900">Labels</h3>
|
||||||
|
@ -15,7 +15,7 @@ import SettingsLayout from "layouts/settings-layout";
|
|||||||
import ConfirmProjectMemberRemove from "components/project/confirm-project-member-remove";
|
import ConfirmProjectMemberRemove from "components/project/confirm-project-member-remove";
|
||||||
import SendProjectInvitationModal from "components/project/send-project-invitation-modal";
|
import SendProjectInvitationModal from "components/project/send-project-invitation-modal";
|
||||||
// ui
|
// ui
|
||||||
import { Button, CustomListbox, CustomMenu, Spinner } from "ui";
|
import { BreadcrumbItem, Breadcrumbs, Button, CustomListbox, CustomMenu, Spinner } from "ui";
|
||||||
// icons
|
// icons
|
||||||
import { PlusIcon } from "@heroicons/react/24/outline";
|
import { PlusIcon } from "@heroicons/react/24/outline";
|
||||||
// fetch-keys
|
// fetch-keys
|
||||||
@ -128,7 +128,18 @@ const MembersSettings = () => {
|
|||||||
setIsOpen={setInviteModal}
|
setIsOpen={setInviteModal}
|
||||||
members={members}
|
members={members}
|
||||||
/>
|
/>
|
||||||
<SettingsLayout type="project" noHeader>
|
<SettingsLayout
|
||||||
|
type="project"
|
||||||
|
breadcrumbs={
|
||||||
|
<Breadcrumbs>
|
||||||
|
<BreadcrumbItem
|
||||||
|
title={`${activeProject?.name ?? "Project"}`}
|
||||||
|
link={`/projects/${activeProject?.id}/issues`}
|
||||||
|
/>
|
||||||
|
<BreadcrumbItem title="Members Settings" />
|
||||||
|
</Breadcrumbs>
|
||||||
|
}
|
||||||
|
>
|
||||||
<section className="space-y-8">
|
<section className="space-y-8">
|
||||||
<div>
|
<div>
|
||||||
<h3 className="text-3xl font-bold leading-6 text-gray-900">Members</h3>
|
<h3 className="text-3xl font-bold leading-6 text-gray-900">Members</h3>
|
||||||
|
@ -11,7 +11,7 @@ import {
|
|||||||
StateGroup,
|
StateGroup,
|
||||||
} from "components/project/issues/BoardView/state/create-update-state-inline";
|
} from "components/project/issues/BoardView/state/create-update-state-inline";
|
||||||
// ui
|
// ui
|
||||||
import { Spinner } from "ui";
|
import { BreadcrumbItem, Breadcrumbs, Spinner } from "ui";
|
||||||
// icons
|
// icons
|
||||||
import { PencilSquareIcon, PlusIcon, TrashIcon } from "@heroicons/react/24/outline";
|
import { PencilSquareIcon, PlusIcon, TrashIcon } from "@heroicons/react/24/outline";
|
||||||
// types
|
// types
|
||||||
@ -37,7 +37,18 @@ const StatesSettings = () => {
|
|||||||
data={states?.find((state) => state.id === selectDeleteState) ?? null}
|
data={states?.find((state) => state.id === selectDeleteState) ?? null}
|
||||||
onClose={() => setSelectDeleteState(null)}
|
onClose={() => setSelectDeleteState(null)}
|
||||||
/>
|
/>
|
||||||
<SettingsLayout type="project" noHeader>
|
<SettingsLayout
|
||||||
|
type="project"
|
||||||
|
breadcrumbs={
|
||||||
|
<Breadcrumbs>
|
||||||
|
<BreadcrumbItem
|
||||||
|
title={`${activeProject?.name ?? "Project"}`}
|
||||||
|
link={`/projects/${activeProject?.id}/issues`}
|
||||||
|
/>
|
||||||
|
<BreadcrumbItem title="States Settings" />
|
||||||
|
</Breadcrumbs>
|
||||||
|
}
|
||||||
|
>
|
||||||
<div className="space-y-8">
|
<div className="space-y-8">
|
||||||
<div>
|
<div>
|
||||||
<h3 className="text-3xl font-bold leading-6 text-gray-900">States</h3>
|
<h3 className="text-3xl font-bold leading-6 text-gray-900">States</h3>
|
||||||
|
Loading…
Reference in New Issue
Block a user