fix: eslint fixes and file formatting

This commit is contained in:
sriram veeraghanta 2024-03-19 20:08:35 +05:30
parent 473dfc7a5b
commit 53ddef1cd5
954 changed files with 3921 additions and 3809 deletions

View file

@ -2,12 +2,12 @@ import React, { useState } from "react";
import { useRouter } from "next/router";
import { useTheme } from "next-themes";
import { mutate } from "swr";
import { Dialog, Transition } from "@headlessui/react";
import { Trash2 } from "lucide-react";
import { Dialog, Transition } from "@headlessui/react";
// hooks
// ui
import { Button, TOAST_TYPE, setToast } from "@plane/ui";
import { useUser } from "hooks/store";
import { useUser } from "@/hooks/store";
type Props = {
isOpen: boolean;

View file

@ -2,11 +2,11 @@ import { observer } from "mobx-react-lite";
// ui
import { TOAST_TYPE, setToast } from "@plane/ui";
// components
import { GitHubSignInButton, GoogleSignInButton } from "components/account";
import { GitHubSignInButton, GoogleSignInButton } from "@/components/account";
// hooks
import { useApplication } from "hooks/store";
import { useApplication } from "@/hooks/store";
// services
import { AuthService } from "services/auth.service";
import { AuthService } from "@/services/auth.service";
type Props = {
handleSignInRedirection: () => Promise<void>;

View file

@ -1,15 +1,15 @@
import React from "react";
import { observer } from "mobx-react-lite";
import { Controller, useForm } from "react-hook-form";
import { XCircle } from "lucide-react";
import { observer } from "mobx-react-lite";
// services
import { AuthService } from "services/auth.service";
// ui
import { Button, Input, TOAST_TYPE, setToast } from "@plane/ui";
// helpers
import { checkEmailValidity } from "helpers/string.helper";
// types
import { IEmailCheckData } from "@plane/types";
// services
import { Button, Input, TOAST_TYPE, setToast } from "@plane/ui";
import { checkEmailValidity } from "@/helpers/string.helper";
import { AuthService } from "@/services/auth.service";
// ui
// helpers
// types
type Props = {
onSubmit: (isPasswordAutoset: boolean) => void;

View file

@ -1,7 +1,7 @@
import { Fragment, useState } from "react";
import { usePopper } from "react-popper";
import { Popover } from "@headlessui/react";
import { X } from "lucide-react";
import { Popover } from "@headlessui/react";
export const ForgotPasswordPopover = () => {
// popper-js refs

View file

@ -1,16 +1,16 @@
import React, { useState } from "react";
import { Controller, useForm } from "react-hook-form";
// services
import { AuthService } from "services/auth.service";
// hooks
import { useEventTracker } from "hooks/store";
// ui
import { Eye, EyeOff } from "lucide-react";
import { Button, Input, TOAST_TYPE, setToast } from "@plane/ui";
// helpers
import { checkEmailValidity } from "helpers/string.helper";
import { PASSWORD_CREATE_SELECTED, PASSWORD_CREATE_SKIPPED } from "@/constants/event-tracker";
import { checkEmailValidity } from "@/helpers/string.helper";
// icons
import { Eye, EyeOff } from "lucide-react";
import { PASSWORD_CREATE_SELECTED, PASSWORD_CREATE_SKIPPED } from "constants/event-tracker";
import { useEventTracker } from "@/hooks/store";
import { AuthService } from "@/services/auth.service";
type Props = {
email: string;

View file

@ -3,19 +3,19 @@ import { observer } from "mobx-react-lite";
import Link from "next/link";
import { Controller, useForm } from "react-hook-form";
import { Eye, EyeOff, XCircle } from "lucide-react";
import { IPasswordSignInData } from "@plane/types";
// services
import { Button, Input, TOAST_TYPE, setToast } from "@plane/ui";
import { ESignInSteps, ForgotPasswordPopover } from "components/account";
import { FORGOT_PASSWORD, SIGN_IN_WITH_PASSWORD } from "constants/event-tracker";
import { checkEmailValidity } from "helpers/string.helper";
import { useApplication, useEventTracker } from "hooks/store";
import { AuthService } from "services/auth.service";
import { ESignInSteps, ForgotPasswordPopover } from "@/components/account";
import { FORGOT_PASSWORD, SIGN_IN_WITH_PASSWORD } from "@/constants/event-tracker";
import { checkEmailValidity } from "@/helpers/string.helper";
import { useApplication, useEventTracker } from "@/hooks/store";
import { AuthService } from "@/services/auth.service";
// hooks
// components
// ui
// helpers
// types
import { IPasswordSignInData } from "@plane/types";
// constants
type Props = {

View file

@ -8,11 +8,11 @@ import {
SignInPasswordForm,
OAuthOptions,
SignInOptionalSetPasswordForm,
} from "components/account";
import { LatestFeatureBlock } from "components/common";
import { NAVIGATE_TO_SIGNUP } from "constants/event-tracker";
import { useApplication, useEventTracker } from "hooks/store";
import useSignInRedirection from "hooks/use-sign-in-redirection";
} from "@/components/account";
import { LatestFeatureBlock } from "@/components/common";
import { NAVIGATE_TO_SIGNUP } from "@/constants/event-tracker";
import { useApplication, useEventTracker } from "@/hooks/store";
import useSignInRedirection from "@/hooks/use-sign-in-redirection";
// components
// constants

View file

@ -1,21 +1,21 @@
import React, { useState } from "react";
import { Controller, useForm } from "react-hook-form";
import { XCircle } from "lucide-react";
import { IEmailCheckData, IMagicSignInData } from "@plane/types";
// services
import { Button, Input, TOAST_TYPE, setToast } from "@plane/ui";
import { CODE_VERIFIED } from "constants/event-tracker";
import { checkEmailValidity } from "helpers/string.helper";
import { useEventTracker } from "hooks/store";
import { CODE_VERIFIED } from "@/constants/event-tracker";
import { checkEmailValidity } from "@/helpers/string.helper";
import { useEventTracker } from "@/hooks/store";
import useTimer from "hooks/use-timer";
import { AuthService } from "services/auth.service";
import { UserService } from "services/user.service";
import useTimer from "@/hooks/use-timer";
import { AuthService } from "@/services/auth.service";
import { UserService } from "@/services/user.service";
// hooks
// ui
// helpers
// types
import { IEmailCheckData, IMagicSignInData } from "@plane/types";
// constants
type Props = {

View file

@ -2,14 +2,14 @@ import React from "react";
import { observer } from "mobx-react-lite";
import { Controller, useForm } from "react-hook-form";
import { XCircle } from "lucide-react";
import { IEmailCheckData } from "@plane/types";
// services
import { Button, Input, TOAST_TYPE, setToast } from "@plane/ui";
import { checkEmailValidity } from "helpers/string.helper";
import { AuthService } from "services/auth.service";
import { checkEmailValidity } from "@/helpers/string.helper";
import { AuthService } from "@/services/auth.service";
// ui
// helpers
// types
import { IEmailCheckData } from "@plane/types";
type Props = {
onSubmit: () => void;

View file

@ -3,11 +3,11 @@ import { Controller, useForm } from "react-hook-form";
// services
import { Eye, EyeOff } from "lucide-react";
import { Button, Input, TOAST_TYPE, setToast } from "@plane/ui";
import { ESignUpSteps } from "components/account";
import { PASSWORD_CREATE_SKIPPED, SETUP_PASSWORD } from "constants/event-tracker";
import { checkEmailValidity } from "helpers/string.helper";
import { useEventTracker } from "hooks/store";
import { AuthService } from "services/auth.service";
import { ESignUpSteps } from "@/components/account";
import { PASSWORD_CREATE_SKIPPED, SETUP_PASSWORD } from "@/constants/event-tracker";
import { checkEmailValidity } from "@/helpers/string.helper";
import { useEventTracker } from "@/hooks/store";
import { AuthService } from "@/services/auth.service";
// hooks
// ui
// helpers

View file

@ -3,14 +3,14 @@ import { observer } from "mobx-react-lite";
import Link from "next/link";
import { Controller, useForm } from "react-hook-form";
import { Eye, EyeOff, XCircle } from "lucide-react";
import { IPasswordSignInData } from "@plane/types";
// services
// ui
import { Button, Input, TOAST_TYPE, setToast } from "@plane/ui";
// helpers
import { checkEmailValidity } from "helpers/string.helper";
import { AuthService } from "services/auth.service";
import { checkEmailValidity } from "@/helpers/string.helper";
import { AuthService } from "@/services/auth.service";
// types
import { IPasswordSignInData } from "@plane/types";
type Props = {
onSubmit: () => Promise<void>;

View file

@ -8,10 +8,10 @@ import {
SignUpOptionalSetPasswordForm,
SignUpPasswordForm,
SignUpUniqueCodeForm,
} from "components/account";
import { NAVIGATE_TO_SIGNIN } from "constants/event-tracker";
import { useApplication, useEventTracker } from "hooks/store";
import useSignInRedirection from "hooks/use-sign-in-redirection";
} from "@/components/account";
import { NAVIGATE_TO_SIGNIN } from "@/constants/event-tracker";
import { useApplication, useEventTracker } from "@/hooks/store";
import useSignInRedirection from "@/hooks/use-sign-in-redirection";
// components
// constants

View file

@ -2,20 +2,20 @@ import React, { useState } from "react";
import Link from "next/link";
import { Controller, useForm } from "react-hook-form";
import { XCircle } from "lucide-react";
import { IEmailCheckData, IMagicSignInData } from "@plane/types";
// services
import { Button, Input, TOAST_TYPE, setToast } from "@plane/ui";
import { CODE_VERIFIED } from "constants/event-tracker";
import { checkEmailValidity } from "helpers/string.helper";
import { useEventTracker } from "hooks/store";
import useTimer from "hooks/use-timer";
import { AuthService } from "services/auth.service";
import { UserService } from "services/user.service";
import { CODE_VERIFIED } from "@/constants/event-tracker";
import { checkEmailValidity } from "@/helpers/string.helper";
import { useEventTracker } from "@/hooks/store";
import useTimer from "@/hooks/use-timer";
import { AuthService } from "@/services/auth.service";
import { UserService } from "@/services/user.service";
// hooks
// ui
// helpers
// types
import { IEmailCheckData, IMagicSignInData } from "@plane/types";
// constants
type Props = {

View file

@ -2,16 +2,16 @@ import { observer } from "mobx-react-lite";
import { useRouter } from "next/router";
import { useForm } from "react-hook-form";
import useSWR from "swr";
import { IAnalyticsParams } from "@plane/types";
// services
// components
import { CustomAnalyticsSelectBar, CustomAnalyticsMainContent, CustomAnalyticsSidebar } from "components/analytics";
import { CustomAnalyticsSelectBar, CustomAnalyticsMainContent, CustomAnalyticsSidebar } from "@/components/analytics";
// types
// fetch-keys
import { ANALYTICS } from "constants/fetch-keys";
import { cn } from "helpers/common.helper";
import { useApplication } from "hooks/store";
import { AnalyticsService } from "services/analytics.service";
import { IAnalyticsParams } from "@plane/types";
import { ANALYTICS } from "@/constants/fetch-keys";
import { cn } from "@/helpers/common.helper";
import { useApplication } from "@/hooks/store";
import { AnalyticsService } from "@/services/analytics.service";
type Props = {
additionalParams?: Partial<IAnalyticsParams>;

View file

@ -1,9 +1,9 @@
// nivo
import { BarTooltipProps } from "@nivo/bar";
import { DATE_KEYS } from "constants/analytics";
import { renderMonthAndYear } from "helpers/analytics.helper";
// types
import { IAnalyticsParams, IAnalyticsResponse } from "@plane/types";
import { DATE_KEYS } from "@/constants/analytics";
import { renderMonthAndYear } from "@/helpers/analytics.helper";
// types
type Props = {
datum: BarTooltipProps<any>;

View file

@ -1,14 +1,14 @@
// nivo
import { BarDatum } from "@nivo/bar";
// components
import { IAnalyticsParams, IAnalyticsResponse } from "@plane/types";
import { Tooltip } from "@plane/ui";
// ui
import { BarGraph } from "components/ui";
import { BarGraph } from "@/components/ui";
// helpers
import { generateBarColor, generateDisplayName } from "helpers/analytics.helper";
import { findStringWithMostCharacters } from "helpers/array.helper";
import { generateBarColor, generateDisplayName } from "@/helpers/analytics.helper";
import { findStringWithMostCharacters } from "@/helpers/array.helper";
// types
import { IAnalyticsParams, IAnalyticsResponse } from "@plane/types";
import { CustomTooltip } from "./custom-tooltip";
type Props = {

View file

@ -1,15 +1,15 @@
import { useRouter } from "next/router";
import { mutate } from "swr";
import { IAnalyticsParams, IAnalyticsResponse } from "@plane/types";
// components
import { Button, Loader } from "@plane/ui";
import { AnalyticsGraph, AnalyticsTable } from "components/analytics";
import { AnalyticsGraph, AnalyticsTable } from "@/components/analytics";
// ui
// helpers
import { ANALYTICS } from "constants/fetch-keys";
import { convertResponseToBarGraphData } from "helpers/analytics.helper";
import { ANALYTICS } from "@/constants/fetch-keys";
import { convertResponseToBarGraphData } from "@/helpers/analytics.helper";
// types
import { IAnalyticsParams, IAnalyticsResponse } from "@plane/types";
// fetch-keys
type Props = {

View file

@ -1,11 +1,11 @@
import { observer } from "mobx-react-lite";
import { Control, Controller, UseFormSetValue } from "react-hook-form";
import { IAnalyticsParams } from "@plane/types";
// hooks
import { SelectProject, SelectSegment, SelectXAxis, SelectYAxis } from "components/analytics";
import { useProject } from "hooks/store";
import { SelectProject, SelectSegment, SelectXAxis, SelectYAxis } from "@/components/analytics";
import { useProject } from "@/hooks/store";
// components
// types
import { IAnalyticsParams } from "@plane/types";
type Props = {
control: Control<IAnalyticsParams, any>;

View file

@ -1,7 +1,7 @@
import { observer } from "mobx-react-lite";
// hooks
import { CustomSearchSelect } from "@plane/ui";
import { useProject } from "hooks/store";
import { useProject } from "@/hooks/store";
// ui
type Props = {

View file

@ -1,10 +1,10 @@
import { useRouter } from "next/router";
import { IAnalyticsParams, TXAxisValues } from "@plane/types";
// ui
import { CustomSelect } from "@plane/ui";
// types
import { ANALYTICS_X_AXIS_VALUES } from "constants/analytics";
import { IAnalyticsParams, TXAxisValues } from "@plane/types";
import { ANALYTICS_X_AXIS_VALUES } from "@/constants/analytics";
// constants
type Props = {

View file

@ -1,10 +1,10 @@
import { useRouter } from "next/router";
import { IAnalyticsParams, TXAxisValues } from "@plane/types";
// ui
import { CustomSelect } from "@plane/ui";
// types
import { ANALYTICS_X_AXIS_VALUES } from "constants/analytics";
import { IAnalyticsParams, TXAxisValues } from "@plane/types";
import { ANALYTICS_X_AXIS_VALUES } from "@/constants/analytics";
// constants
type Props = {

View file

@ -1,8 +1,8 @@
// ui
import { TYAxisValues } from "@plane/types";
import { CustomSelect } from "@plane/ui";
// types
import { ANALYTICS_Y_AXIS_VALUES } from "constants/analytics";
import { TYAxisValues } from "@plane/types";
import { ANALYTICS_Y_AXIS_VALUES } from "@/constants/analytics";
// constants
type Props = {

View file

@ -3,9 +3,9 @@ import { observer } from "mobx-react-lite";
// icons
import { Contrast, LayoutGrid, Users } from "lucide-react";
// helpers
import { truncateText } from "helpers/string.helper";
import { useProject } from "hooks/store";
import { ProjectLogo } from "components/project";
import { ProjectLogo } from "@/components/project";
import { truncateText } from "@/helpers/string.helper";
import { useProject } from "@/hooks/store";
type Props = {
projectIds: string[];

View file

@ -1,11 +1,11 @@
import { observer } from "mobx-react-lite";
import { useRouter } from "next/router";
// hooks
import { NETWORK_CHOICES } from "constants/project";
import { renderFormattedDate } from "helpers/date-time.helper";
import { useCycle, useMember, useModule, useProject } from "hooks/store";
import { ProjectLogo } from "@/components/project";
import { NETWORK_CHOICES } from "@/constants/project";
import { renderFormattedDate } from "@/helpers/date-time.helper";
import { useCycle, useMember, useModule, useProject } from "@/hooks/store";
// components
import { ProjectLogo } from "components/project";
// helpers
// constants

View file

@ -7,18 +7,18 @@ import { mutate } from "swr";
// components
// ui
import { CalendarDays, Download, RefreshCw } from "lucide-react";
import { IAnalyticsParams, IAnalyticsResponse, IExportAnalyticsFormData, IWorkspace } from "@plane/types";
import { Button, LayersIcon, TOAST_TYPE, setToast } from "@plane/ui";
// icons
import { CustomAnalyticsSidebarHeader, CustomAnalyticsSidebarProjectsList } from "components/analytics";
import { CustomAnalyticsSidebarHeader, CustomAnalyticsSidebarProjectsList } from "@/components/analytics";
// helpers
// types
// fetch-keys
import { ANALYTICS } from "constants/fetch-keys";
import { cn } from "helpers/common.helper";
import { renderFormattedDate } from "helpers/date-time.helper";
import { useCycle, useModule, useProject, useUser, useWorkspace } from "hooks/store";
import { AnalyticsService } from "services/analytics.service";
import { IAnalyticsParams, IAnalyticsResponse, IExportAnalyticsFormData, IWorkspace } from "@plane/types";
import { ANALYTICS } from "@/constants/fetch-keys";
import { cn } from "@/helpers/common.helper";
import { renderFormattedDate } from "@/helpers/date-time.helper";
import { useCycle, useModule, useProject, useUser, useWorkspace } from "@/hooks/store";
import { AnalyticsService } from "@/services/analytics.service";
type Props = {
analytics: IAnalyticsResponse | undefined;

View file

@ -1,12 +1,12 @@
import { BarDatum } from "@nivo/bar";
// icons
import { IAnalyticsParams, IAnalyticsResponse, TIssuePriorities } from "@plane/types";
import { PriorityIcon } from "@plane/ui";
// helpers
import { ANALYTICS_X_AXIS_VALUES, ANALYTICS_Y_AXIS_VALUES } from "constants/analytics";
import { generateBarColor, generateDisplayName } from "helpers/analytics.helper";
import { ANALYTICS_X_AXIS_VALUES, ANALYTICS_Y_AXIS_VALUES } from "@/constants/analytics";
import { generateBarColor, generateDisplayName } from "@/helpers/analytics.helper";
// types
import { IAnalyticsParams, IAnalyticsResponse, TIssuePriorities } from "@plane/types";
// constants
type Props = {

View file

@ -1,11 +1,11 @@
import React from "react";
import { observer } from "mobx-react-lite";
import { Tab } from "@headlessui/react";
// components
import { CustomAnalytics, ScopeAndDemand } from "components/analytics";
// types
import { ANALYTICS_TABS } from "constants/analytics";
import { ICycle, IModule, IProject } from "@plane/types";
// components
import { CustomAnalytics, ScopeAndDemand } from "@/components/analytics";
// types
import { ANALYTICS_TABS } from "@/constants/analytics";
// constants
type Props = {

View file

@ -1,11 +1,11 @@
import React, { useState } from "react";
import { observer } from "mobx-react-lite";
import { Dialog, Transition } from "@headlessui/react";
import { ICycle, IModule, IProject } from "@plane/types";
// components
import { ProjectAnalyticsModalHeader, ProjectAnalyticsModalMainContent } from "components/analytics";
import { ProjectAnalyticsModalHeader, ProjectAnalyticsModalMainContent } from "@/components/analytics";
// types
import { ICycle, IModule, IProject } from "@plane/types";
type Props = {
isOpen: boolean;

View file

@ -1,8 +1,8 @@
// icons
import { Triangle } from "lucide-react";
// types
import { STATE_GROUPS } from "constants/state";
import { IDefaultAnalyticsResponse, TStateGroups } from "@plane/types";
// types
import { STATE_GROUPS } from "@/constants/state";
// constants
type Props = {

View file

@ -1,5 +1,5 @@
// ui
import { ProfileEmptyState } from "components/ui";
import { ProfileEmptyState } from "@/components/ui";
// image
import emptyUsers from "public/empty-state/empty_users.svg";

View file

@ -5,11 +5,11 @@ import useSWR from "swr";
// services
// components
import { Button, Loader } from "@plane/ui";
import { AnalyticsDemand, AnalyticsLeaderBoard, AnalyticsScope, AnalyticsYearWiseIssues } from "components/analytics";
import { AnalyticsDemand, AnalyticsLeaderBoard, AnalyticsScope, AnalyticsYearWiseIssues } from "@/components/analytics";
// ui
// fetch-keys
import { DEFAULT_ANALYTICS } from "constants/fetch-keys";
import { AnalyticsService } from "services/analytics.service";
import { DEFAULT_ANALYTICS } from "@/constants/fetch-keys";
import { AnalyticsService } from "@/services/analytics.service";
type Props = {
fullScreen?: boolean;

View file

@ -1,9 +1,9 @@
// ui
import { BarGraph, ProfileEmptyState } from "components/ui";
import { IDefaultAnalyticsResponse } from "@plane/types";
import { BarGraph, ProfileEmptyState } from "@/components/ui";
// image
import emptyBarGraph from "public/empty-state/empty_bar_graph.svg";
// types
import { IDefaultAnalyticsResponse } from "@plane/types";
type Props = {
defaultAnalytics: IDefaultAnalyticsResponse;

View file

@ -1,10 +1,10 @@
// ui
import { LineGraph, ProfileEmptyState } from "components/ui";
import { IDefaultAnalyticsResponse } from "@plane/types";
import { LineGraph, ProfileEmptyState } from "@/components/ui";
// image
import { MONTHS_LIST } from "constants/calendar";
import { MONTHS_LIST } from "@/constants/calendar";
import emptyGraph from "public/empty-state/empty_graph.svg";
// types
import { IDefaultAnalyticsResponse } from "@plane/types";
// constants
type Props = {

View file

@ -2,13 +2,13 @@ import { useState, Fragment, FC } from "react";
import { useRouter } from "next/router";
import { mutate } from "swr";
import { Dialog, Transition } from "@headlessui/react";
import { IApiToken } from "@plane/types";
// services
import { Button, TOAST_TYPE, setToast } from "@plane/ui";
import { API_TOKENS_LIST } from "constants/fetch-keys";
import { APITokenService } from "services/api_token.service";
import { API_TOKENS_LIST } from "@/constants/fetch-keys";
import { APITokenService } from "@/services/api_token.service";
// ui
// types
import { IApiToken } from "@plane/types";
// fetch-keys
type Props = {

View file

@ -2,19 +2,19 @@ import React, { useState } from "react";
import { useRouter } from "next/router";
import { mutate } from "swr";
import { Dialog, Transition } from "@headlessui/react";
import { IApiToken } from "@plane/types";
// services
import { TOAST_TYPE, setToast } from "@plane/ui";
import { CreateApiTokenForm, GeneratedTokenDetails } from "components/api-token";
import { API_TOKENS_LIST } from "constants/fetch-keys";
import { renderFormattedDate } from "helpers/date-time.helper";
import { csvDownload } from "helpers/download.helper";
import { APITokenService } from "services/api_token.service";
import { CreateApiTokenForm, GeneratedTokenDetails } from "@/components/api-token";
import { API_TOKENS_LIST } from "@/constants/fetch-keys";
import { renderFormattedDate } from "@/helpers/date-time.helper";
import { csvDownload } from "@/helpers/download.helper";
import { APITokenService } from "@/services/api_token.service";
// ui
// components
// helpers
// types
import { IApiToken } from "@plane/types";
// fetch-keys
type Props = {

View file

@ -1,14 +1,14 @@
import { useState } from "react";
import { add } from "date-fns";
import { Controller, useForm } from "react-hook-form";
import { DateDropdown } from "components/dropdowns";
import { Calendar } from "lucide-react";
import { IApiToken } from "@plane/types";
// ui
import { Button, CustomSelect, Input, TextArea, ToggleSwitch, TOAST_TYPE, setToast } from "@plane/ui";
import { DateDropdown } from "@/components/dropdowns";
// helpers
import { renderFormattedDate, renderFormattedPayloadDate } from "helpers/date-time.helper";
import { renderFormattedDate, renderFormattedPayloadDate } from "@/helpers/date-time.helper";
// types
import { IApiToken } from "@plane/types";
type Props = {
handleClose: () => void;

View file

@ -1,13 +1,13 @@
import { Copy } from "lucide-react";
import { IApiToken } from "@plane/types";
// ui
import { Button, Tooltip, TOAST_TYPE, setToast } from "@plane/ui";
// helpers
import { renderFormattedDate } from "helpers/date-time.helper";
import { copyTextToClipboard } from "helpers/string.helper";
import { renderFormattedDate } from "@/helpers/date-time.helper";
import { copyTextToClipboard } from "@/helpers/string.helper";
// types
import { IApiToken } from "@plane/types";
import { usePlatformOS } from "@/hooks/use-platform-os";
// hooks
import { usePlatformOS } from "hooks/use-platform-os";
type Props = {
handleClose: () => void;

View file

@ -1,14 +1,14 @@
import { useState } from "react";
import { XCircle } from "lucide-react";
import { IApiToken } from "@plane/types";
// components
import { Tooltip } from "@plane/ui";
import { DeleteApiTokenModal } from "components/api-token";
import { usePlatformOS } from "hooks/use-platform-os";
import { DeleteApiTokenModal } from "@/components/api-token";
import { renderFormattedDate, calculateTimeAgo } from "@/helpers/date-time.helper";
import { usePlatformOS } from "@/hooks/use-platform-os";
// ui
// helpers
import { renderFormattedDate, calculateTimeAgo } from "helpers/date-time.helper";
// types
import { IApiToken } from "@plane/types";
type Props = {
token: IApiToken;
@ -36,8 +36,9 @@ export const ApiTokenListItem: React.FC<Props> = (props) => {
<div className="flex w-4/5 items-center">
<h5 className="truncate text-sm font-medium">{token.label}</h5>
<span
className={`${token.is_active ? "bg-green-500/10 text-green-500" : "bg-custom-background-80 text-custom-text-400"
} ml-2 flex h-4 max-h-fit items-center rounded-sm px-2 text-xs font-medium`}
className={`${
token.is_active ? "bg-green-500/10 text-green-500" : "bg-custom-background-80 text-custom-text-400"
} ml-2 flex h-4 max-h-fit items-center rounded-sm px-2 text-xs font-medium`}
>
{token.is_active ? "Active" : "Expired"}
</span>

View file

@ -4,9 +4,9 @@ import Image from "next/image";
import Link from "next/link";
import { useRouter } from "next/router";
// hooks
import { useUser } from "hooks/store";
import { useUser } from "@/hooks/store";
// layouts
import DefaultLayout from "layouts/default-layout";
import DefaultLayout from "@/layouts/default-layout";
// images
import ProjectNotAuthorizedImg from "public/auth/project-not-authorized.svg";
import WorkspaceNotAuthorizedImg from "public/auth/workspace-not-authorized.svg";

View file

@ -4,7 +4,7 @@ import { useRouter } from "next/router";
// hooks
import { ClipboardList } from "lucide-react";
import { Button } from "@plane/ui";
import { useProject, useUser } from "hooks/store";
import { useProject, useUser } from "@/hooks/store";
// ui
// icons
// images

View file

@ -2,7 +2,7 @@ import Link from "next/link";
// layouts
import { Button } from "@plane/ui";
import DefaultLayout from "layouts/default-layout";
import DefaultLayout from "@/layouts/default-layout";
// ui
export const NotAWorkspaceMember = () => (

View file

@ -3,14 +3,14 @@ import { observer } from "mobx-react-lite";
// hooks
// component
import { ArchiveRestore } from "lucide-react";
import { IProject } from "@plane/types";
import { CustomSelect, Loader, ToggleSwitch } from "@plane/ui";
import { SelectMonthModal } from "components/automation";
import { SelectMonthModal } from "@/components/automation";
// icon
// constants
import { EUserProjectRoles, PROJECT_AUTOMATION_MONTHS } from "constants/project";
import { useProject, useUser } from "hooks/store";
import { EUserProjectRoles, PROJECT_AUTOMATION_MONTHS } from "@/constants/project";
import { useProject, useUser } from "@/hooks/store";
// types
import { IProject } from "@plane/types";
type Props = {
handleChange: (formData: Partial<IProject>) => Promise<void>;

View file

@ -2,14 +2,14 @@ import React, { useState } from "react";
import { observer } from "mobx-react-lite";
// hooks
import { ArchiveX } from "lucide-react";
import { IProject } from "@plane/types";
import { CustomSelect, CustomSearchSelect, ToggleSwitch, StateGroupIcon, DoubleCircleIcon, Loader } from "@plane/ui";
import { SelectMonthModal } from "components/automation";
import { EUserProjectRoles, PROJECT_AUTOMATION_MONTHS } from "constants/project";
import { useProject, useProjectState, useUser } from "hooks/store";
import { SelectMonthModal } from "@/components/automation";
import { EUserProjectRoles, PROJECT_AUTOMATION_MONTHS } from "@/constants/project";
import { useProject, useProjectState, useUser } from "@/hooks/store";
// component
// icons
// types
import { IProject } from "@plane/types";
// constants
type Props = {

View file

@ -4,10 +4,10 @@ import { useRouter } from "next/router";
import { Controller, useForm } from "react-hook-form";
// headless ui
import { Dialog, Transition } from "@headlessui/react";
import type { IProject } from "@plane/types";
// ui
import { Button, Input } from "@plane/ui";
// types
import type { IProject } from "@plane/types";
// types
type Props = {

View file

@ -2,7 +2,7 @@ import { Command } from "cmdk";
import { FileText, GithubIcon, MessageSquare, Rocket } from "lucide-react";
// hooks
import { DiscordIcon } from "@plane/ui";
import { useApplication } from "hooks/store";
import { useApplication } from "@/hooks/store";
// ui
type Props = {

View file

@ -2,15 +2,15 @@ import { Command } from "cmdk";
import { observer } from "mobx-react-lite";
import { useRouter } from "next/router";
import { LinkIcon, Signal, Trash2, UserMinus2, UserPlus2 } from "lucide-react";
import { TIssue } from "@plane/types";
// hooks
import { DoubleCircleIcon, UserGroupIcon, TOAST_TYPE, setToast } from "@plane/ui";
import { EIssuesStoreType } from "constants/issue";
import { copyTextToClipboard } from "helpers/string.helper";
import { useApplication, useUser, useIssues } from "hooks/store";
import { EIssuesStoreType } from "@/constants/issue";
import { copyTextToClipboard } from "@/helpers/string.helper";
import { useApplication, useUser, useIssues } from "@/hooks/store";
// ui
// helpers
// types
import { TIssue } from "@plane/types";
type Props = {
closePalette: () => void;

View file

@ -2,13 +2,13 @@ import { Command } from "cmdk";
import { observer } from "mobx-react-lite";
import { useRouter } from "next/router";
import { Check } from "lucide-react";
import { TIssue } from "@plane/types";
// mobx store
import { Avatar } from "@plane/ui";
import { EIssuesStoreType } from "constants/issue";
import { useIssues, useMember } from "hooks/store";
import { EIssuesStoreType } from "@/constants/issue";
import { useIssues, useMember } from "@/hooks/store";
// ui
// types
import { TIssue } from "@plane/types";
type Props = {
closePalette: () => void;

View file

@ -2,13 +2,13 @@ import { Command } from "cmdk";
import { observer } from "mobx-react-lite";
import { useRouter } from "next/router";
import { Check } from "lucide-react";
import { TIssue, TIssuePriorities } from "@plane/types";
// mobx store
import { PriorityIcon } from "@plane/ui";
import { EIssuesStoreType, ISSUE_PRIORITIES } from "constants/issue";
import { useIssues } from "hooks/store";
import { EIssuesStoreType, ISSUE_PRIORITIES } from "@/constants/issue";
import { useIssues } from "@/hooks/store";
// ui
// types
import { TIssue, TIssuePriorities } from "@plane/types";
// constants
type Props = {

View file

@ -3,13 +3,13 @@ import { observer } from "mobx-react-lite";
import { useRouter } from "next/router";
// hooks
import { Check } from "lucide-react";
import { TIssue } from "@plane/types";
import { Spinner, StateGroupIcon } from "@plane/ui";
import { EIssuesStoreType } from "constants/issue";
import { useProjectState, useIssues } from "hooks/store";
import { EIssuesStoreType } from "@/constants/issue";
import { useProjectState, useIssues } from "@/hooks/store";
// ui
// icons
// types
import { TIssue } from "@plane/types";
type Props = {
closePalette: () => void;

View file

@ -2,7 +2,7 @@ import { Command } from "cmdk";
import { ContrastIcon, FileText } from "lucide-react";
// hooks
import { DiceIcon, PhotoFilterIcon } from "@plane/ui";
import { useApplication, useEventTracker } from "hooks/store";
import { useApplication, useEventTracker } from "@/hooks/store";
// ui
type Props = {

View file

@ -1,9 +1,9 @@
import { Command } from "cmdk";
import { useRouter } from "next/router";
// helpers
import { commandGroups } from "components/command-palette";
// types
import { IWorkspaceSearchResults } from "@plane/types";
// helpers
import { commandGroups } from "@/components/command-palette";
// types
type Props = {
closePalette: () => void;

View file

@ -5,8 +5,8 @@ import { useTheme } from "next-themes";
import { Settings } from "lucide-react";
// hooks
import { TOAST_TYPE, setToast } from "@plane/ui";
import { THEME_OPTIONS } from "constants/themes";
import { useUser } from "hooks/store";
import { THEME_OPTIONS } from "@/constants/themes";
import { useUser } from "@/hooks/store";
// ui
// constants

View file

@ -3,8 +3,8 @@ import { Command } from "cmdk";
import Link from "next/link";
import { useRouter } from "next/router";
// constants
import { EUserWorkspaceRoles, WORKSPACE_SETTINGS_LINKS } from "constants/workspace";
import { useUser } from "hooks/store";
import { EUserWorkspaceRoles, WORKSPACE_SETTINGS_LINKS } from "@/constants/workspace";
import { useUser } from "@/hooks/store";
type Props = {
closePalette: () => void;

View file

@ -3,20 +3,12 @@ import { Command } from "cmdk";
import { observer } from "mobx-react-lite";
import { useRouter } from "next/router";
import useSWR from "swr";
import { FolderPlus, Search, Settings } from "lucide-react";
import { Dialog, Transition } from "@headlessui/react";
// icons
import { FolderPlus, Search, Settings } from "lucide-react";
import { IWorkspaceSearchResults } from "@plane/types";
// hooks
import { useApplication, useEventTracker, useProject } from "hooks/store";
import { usePlatformOS } from "hooks/use-platform-os";
import useDebounce from "hooks/use-debounce";
// services
import { IssueService } from "services/issue";
import { WorkspaceService } from "services/workspace.service";
// ui
import { LayersIcon, Loader, ToggleSwitch, Tooltip } from "@plane/ui";
// components
import { EmptyState } from "components/empty-state";
import {
CommandPaletteThemeActions,
ChangeIssueAssignee,
@ -27,13 +19,21 @@ import {
CommandPaletteProjectActions,
CommandPaletteWorkspaceSettingsActions,
CommandPaletteSearchResults,
} from "components/command-palette";
} from "@/components/command-palette";
import { EmptyState } from "@/components/empty-state";
import { EmptyStateType } from "@/constants/empty-state";
import { ISSUE_DETAILS } from "@/constants/fetch-keys";
import { useApplication, useEventTracker, useProject } from "@/hooks/store";
import useDebounce from "@/hooks/use-debounce";
import { usePlatformOS } from "@/hooks/use-platform-os";
// services
import { IssueService } from "@/services/issue";
import { WorkspaceService } from "@/services/workspace.service";
// ui
// components
// types
import { IWorkspaceSearchResults } from "@plane/types";
// fetch-keys
// constants
import { EmptyStateType } from "constants/empty-state";
import { ISSUE_DETAILS } from "constants/fetch-keys";
const workspaceService = new WorkspaceService();
const issueService = new IssueService();

View file

@ -5,26 +5,26 @@ import useSWR from "swr";
// hooks
import { TOAST_TYPE, setToast } from "@plane/ui";
import { CommandModal, ShortcutsModal } from "components/command-palette";
import { CommandModal, ShortcutsModal } from "@/components/command-palette";
// ui
// components
import { BulkDeleteIssuesModal } from "components/core";
import { CycleCreateUpdateModal } from "components/cycles";
import { CreateUpdateIssueModal, DeleteIssueModal } from "components/issues";
import { CreateUpdateModuleModal } from "components/modules";
import { CreateUpdatePageModal } from "components/pages";
import { CreateProjectModal } from "components/project";
import { CreateUpdateProjectViewModal } from "components/views";
import { BulkDeleteIssuesModal } from "@/components/core";
import { CycleCreateUpdateModal } from "@/components/cycles";
import { CreateUpdateIssueModal, DeleteIssueModal } from "@/components/issues";
import { CreateUpdateModuleModal } from "@/components/modules";
import { CreateUpdatePageModal } from "@/components/pages";
import { CreateProjectModal } from "@/components/project";
import { CreateUpdateProjectViewModal } from "@/components/views";
// helpers
// services
// fetch keys
import { ISSUE_DETAILS } from "constants/fetch-keys";
import { EIssuesStoreType } from "constants/issue";
import { copyTextToClipboard } from "helpers/string.helper";
import { useApplication, useEventTracker, useIssues, useUser } from "hooks/store";
import { IssueService } from "services/issue";
import { EUserProjectRoles } from "constants/project";
import { EUserWorkspaceRoles } from "constants/workspace";
import { ISSUE_DETAILS } from "@/constants/fetch-keys";
import { EIssuesStoreType } from "@/constants/issue";
import { EUserProjectRoles } from "@/constants/project";
import { EUserWorkspaceRoles } from "@/constants/workspace";
import { copyTextToClipboard } from "@/helpers/string.helper";
import { useApplication, useEventTracker, useIssues, useUser } from "@/hooks/store";
import { IssueService } from "@/services/issue";
// services
const issueService = new IssueService();

View file

@ -1,12 +1,12 @@
// types
import { Briefcase, FileText, LayoutGrid } from "lucide-react";
import { ContrastIcon, DiceIcon, LayersIcon, PhotoFilterIcon } from "@plane/ui";
import {
IWorkspaceDefaultSearchResult,
IWorkspaceIssueSearchResult,
IWorkspaceProjectSearchResult,
IWorkspaceSearchResult,
} from "@plane/types";
import { ContrastIcon, DiceIcon, LayersIcon, PhotoFilterIcon } from "@plane/ui";
export const commandGroups: {
[key: string]: {

View file

@ -1,6 +1,6 @@
import { Command } from "lucide-react";
// helpers
import { substringMatch } from "helpers/string.helper";
import { substringMatch } from "@/helpers/string.helper";
type Props = {
searchQuery: string;

View file

@ -1,9 +1,9 @@
import { FC, useState, Fragment } from "react";
import { Dialog, Transition } from "@headlessui/react";
import { Search, X } from "lucide-react";
import { Dialog, Transition } from "@headlessui/react";
// components
import { Input } from "@plane/ui";
import { ShortcutCommandsList } from "components/command-palette";
import { ShortcutCommandsList } from "@/components/command-palette";
// ui
type Props = {

View file

@ -1,6 +1,6 @@
import Link from "next/link";
import { Tooltip } from "@plane/ui";
import { usePlatformOS } from "hooks/use-platform-os";
import { usePlatformOS } from "@/hooks/use-platform-os";
type Props = {
label?: string;

View file

@ -1,16 +1,16 @@
import React from "react";
import useSWR from "swr";
// headless ui
import { X } from "lucide-react";
import { Dialog, Transition } from "@headlessui/react";
// services
// components
import { X } from "lucide-react";
import { Loader } from "@plane/ui";
import { MarkdownRenderer } from "components/ui";
import { MarkdownRenderer } from "@/components/ui";
// icons
// helpers
import { renderFormattedDate } from "helpers/date-time.helper";
import { WorkspaceService } from "services/workspace.service";
import { renderFormattedDate } from "@/helpers/date-time.helper";
import { WorkspaceService } from "@/services/workspace.service";
type Props = {
isOpen: boolean;

View file

@ -1,7 +1,6 @@
import { useEffect } from "react";
import { observer } from "mobx-react-lite";
import { useRouter } from "next/router";
import { usePlatformOS } from "hooks/use-platform-os";
// store hooks
// icons
import {
@ -19,13 +18,14 @@ import {
MessageSquareIcon,
UsersIcon,
} from "lucide-react";
import { IIssueActivity } from "@plane/types";
import { Tooltip, BlockedIcon, BlockerIcon, RelatedIcon, LayersIcon, DiceIcon } from "@plane/ui";
// helpers
import { renderFormattedDate } from "helpers/date-time.helper";
import { capitalizeFirstLetter } from "helpers/string.helper";
import { useEstimate, useLabel } from "hooks/store";
import { renderFormattedDate } from "@/helpers/date-time.helper";
import { capitalizeFirstLetter } from "@/helpers/string.helper";
import { useEstimate, useLabel } from "@/hooks/store";
import { usePlatformOS } from "@/hooks/use-platform-os";
// types
import { IIssueActivity } from "@plane/types";
export const IssueLink = ({ activity }: { activity: IIssueActivity }) => {
const router = useRouter();

View file

@ -1,14 +1,15 @@
import { Fragment } from "react";
import { DayPicker } from "react-day-picker";
import { Controller, useForm } from "react-hook-form";
import { Dialog, Transition } from "@headlessui/react";
import { X } from "lucide-react";
// components
// ui
import { Dialog, Transition } from "@headlessui/react";
import { Button } from "@plane/ui";
// helpers
import { renderFormattedPayloadDate, renderFormattedDate, getDate } from "@/helpers/date-time.helper";
import { DateFilterSelect } from "./date-filter-select";
import { renderFormattedPayloadDate, renderFormattedDate, getDate } from "helpers/date-time.helper";
type Props = {
title: string;

View file

@ -8,12 +8,12 @@ import useSWR from "swr";
import { Tab, Popover } from "@headlessui/react";
// hooks
import { Button, Input, Loader } from "@plane/ui";
import { MAX_FILE_SIZE } from "constants/common";
import { useApplication, useWorkspace } from "hooks/store";
import { useDropdownKeyDown } from "hooks/use-dropdown-key-down";
import { MAX_FILE_SIZE } from "@/constants/common";
import { useApplication, useWorkspace } from "@/hooks/store";
import { useDropdownKeyDown } from "@/hooks/use-dropdown-key-down";
// services
import useOutsideClickDetector from "hooks/use-outside-click-detector";
import { FileService } from "services/file.service";
import useOutsideClickDetector from "@/hooks/use-outside-click-detector";
import { FileService } from "@/services/file.service";
// hooks
// components
// constants

View file

@ -1,7 +1,7 @@
import { observer } from "mobx-react-lite";
import { Combobox } from "@headlessui/react";
// hooks
import { useProjectState } from "hooks/store";
import { useProjectState } from "@/hooks/store";
export const BulkDeleteIssuesModalItem: React.FC<any> = observer((props) => {
const { issue, delete_issue_ids, identifier } = props;

View file

@ -3,24 +3,24 @@ import { observer } from "mobx-react-lite";
import { useRouter } from "next/router";
import { SubmitHandler, useForm } from "react-hook-form";
import useSWR from "swr";
import { Search } from "lucide-react";
import { Combobox, Dialog, Transition } from "@headlessui/react";
// services
import { IssueService } from "services/issue";
// ui
import { Button, TOAST_TYPE, setToast } from "@plane/ui";
// icons
import { Search } from "lucide-react";
// types
import { IUser, TIssue } from "@plane/types";
import { Button, TOAST_TYPE, setToast } from "@plane/ui";
import { EmptyState } from "@/components/empty-state";
import { EmptyStateType } from "@/constants/empty-state";
import { PROJECT_ISSUES_LIST } from "@/constants/fetch-keys";
import { EIssuesStoreType } from "@/constants/issue";
import { useIssues, useProject } from "@/hooks/store";
import { IssueService } from "@/services/issue";
// ui
// icons
// types
// store hooks
import { useIssues, useProject } from "hooks/store";
// components
import { BulkDeleteIssuesModalItem } from "./bulk-delete-issues-modal-item";
import { EmptyState } from "components/empty-state";
// constants
import { PROJECT_ISSUES_LIST } from "constants/fetch-keys";
import { EIssuesStoreType } from "constants/issue";
import { EmptyStateType } from "constants/empty-state";
type FormInput = {
delete_issue_ids: string[];

View file

@ -1,17 +1,17 @@
import React, { useEffect, useState } from "react";
import { Combobox, Dialog, Transition } from "@headlessui/react";
import { Rocket, Search, X } from "lucide-react";
import { Combobox, Dialog, Transition } from "@headlessui/react";
import { ISearchIssueResponse, TProjectIssuesSearchParams } from "@plane/types";
// services
import { ProjectService } from "services/project";
import { Button, Loader, ToggleSwitch, Tooltip, TOAST_TYPE, setToast } from "@plane/ui";
import useDebounce from "@/hooks/use-debounce";
import { usePlatformOS } from "@/hooks/use-platform-os";
import { ProjectService } from "@/services/project";
// hooks
import useDebounce from "hooks/use-debounce";
import { usePlatformOS } from "hooks/use-platform-os";
// components
import { IssueSearchModalEmptyState } from "./issue-search-modal-empty-state";
// ui
import { Button, Loader, ToggleSwitch, Tooltip, TOAST_TYPE, setToast } from "@plane/ui";
// types
import { ISearchIssueResponse, TProjectIssuesSearchParams } from "@plane/types";
type Props = {
workspaceSlug: string | undefined;

View file

@ -4,14 +4,14 @@ import { useRouter } from "next/router";
import { Controller, useForm } from "react-hook-form"; // services
import { usePopper } from "react-popper";
// ui
import { AlertCircle } from "lucide-react";
import { Popover, Transition } from "@headlessui/react";
import { RichReadOnlyEditorWithRef } from "@plane/rich-text-editor";
import { Button, Input, TOAST_TYPE, setToast } from "@plane/ui";
// icons
import { AlertCircle } from "lucide-react";
// components
import { RichReadOnlyEditorWithRef } from "@plane/rich-text-editor";
import { Popover, Transition } from "@headlessui/react";
// hooks
import { AIService } from "services/ai.service";
import { AIService } from "@/services/ai.service";
type Props = {
isOpen: boolean;
@ -173,8 +173,8 @@ export const GptAssistantPopover: React.FC<Props> = (props) => {
const generateResponseButtonText = isSubmitting
? "Generating response..."
: response === ""
? "Generate response"
: "Generate again";
? "Generate response"
: "Generate again";
return (
<Popover as="div" className={`relative w-min text-left`}>

View file

@ -1,10 +1,10 @@
import React from "react";
// components
import { EmptyState } from "components/empty-state";
// types
import { ISearchIssueResponse } from "@plane/types";
import { EmptyState } from "@/components/empty-state";
// types
import { EmptyStateType } from "@/constants/empty-state";
// constants
import { EmptyStateType } from "constants/empty-state";
interface EmptyStateProps {
issues: ISearchIssueResponse[];
@ -29,8 +29,8 @@ export const IssueSearchModalEmptyState: React.FC<EmptyStateProps> = ({
issues.length === 0 && searchTerm !== "" && debouncedSearchTerm !== "" && !isSearching
? renderEmptyState(EmptyStateType.ISSUE_RELATION_SEARCH_EMPTY_STATE)
: issues.length === 0
? renderEmptyState(EmptyStateType.ISSUE_RELATION_EMPTY_STATE)
: null;
? renderEmptyState(EmptyStateType.ISSUE_RELATION_EMPTY_STATE)
: null;
return emptyState;
};

View file

@ -4,10 +4,10 @@ import { FC, useEffect, Fragment } from "react";
import { Controller, useForm } from "react-hook-form";
// headless ui
import { Dialog, Transition } from "@headlessui/react";
import type { IIssueLink, ILinkDetails, ModuleLink } from "@plane/types";
// ui
import { Button, Input } from "@plane/ui";
// types
import type { IIssueLink, ILinkDetails, ModuleLink } from "@plane/types";
type Props = {
isOpen: boolean;

View file

@ -1,15 +1,15 @@
import React, { useState } from "react";
import { observer } from "mobx-react-lite";
import { useDropzone } from "react-dropzone";
import { UserCircle2 } from "lucide-react";
import { Transition, Dialog } from "@headlessui/react";
// hooks
import { UserCircle2 } from "lucide-react";
import { Button, TOAST_TYPE, setToast } from "@plane/ui";
import { MAX_FILE_SIZE } from "constants/common";
import { useApplication } from "hooks/store";
import { MAX_FILE_SIZE } from "@/constants/common";
import { useApplication } from "@/hooks/store";
// services
import { FileService } from "services/file.service";
import { FileService } from "@/services/file.service";
// ui
// icons
// constants

View file

@ -2,14 +2,14 @@ import React, { useState } from "react";
import { observer } from "mobx-react-lite";
import { useRouter } from "next/router";
import { useDropzone } from "react-dropzone";
import { UserCircle2 } from "lucide-react";
import { Transition, Dialog } from "@headlessui/react";
// hooks
import { UserCircle2 } from "lucide-react";
import { Button, TOAST_TYPE, setToast } from "@plane/ui";
import { MAX_FILE_SIZE } from "constants/common";
import { useApplication, useWorkspace } from "hooks/store";
import { MAX_FILE_SIZE } from "@/constants/common";
import { useApplication, useWorkspace } from "@/hooks/store";
// services
import { FileService } from "services/file.service";
import { FileService } from "@/services/file.service";
// ui
// icons
// constants

View file

@ -1,5 +1,5 @@
import React, { useState, useRef, useEffect, ReactNode, MutableRefObject } from "react";
import { cn } from "helpers/common.helper";
import { cn } from "@/helpers/common.helper";
type Props = {
defaultHeight?: string;

View file

@ -1,15 +1,15 @@
import { observer } from "mobx-react";
// icons
import { Pencil, Trash2, LinkIcon } from "lucide-react";
import { ILinkDetails, UserAuth } from "@plane/types";
// ui
import { ExternalLinkIcon, Tooltip, TOAST_TYPE, setToast } from "@plane/ui";
// helpers
import { calculateTimeAgo } from "helpers/date-time.helper";
import { calculateTimeAgo } from "@/helpers/date-time.helper";
// hooks
import { useMember } from "hooks/store";
import { usePlatformOS } from "hooks/use-platform-os";
import { useMember } from "@/hooks/store";
import { usePlatformOS } from "@/hooks/use-platform-os";
// types
import { ILinkDetails, UserAuth } from "@plane/types";
type Props = {
links: ILinkDetails[];

View file

@ -1,11 +1,11 @@
import React from "react";
import { eachDayOfInterval, isValid } from "date-fns";
// ui
import { LineGraph } from "components/ui";
// helpers
import { getDate, renderFormattedDateWithoutYear } from "helpers/date-time.helper";
//types
import { TCompletionChartDistribution } from "@plane/types";
// ui
import { LineGraph } from "@/components/ui";
// helpers
import { getDate, renderFormattedDateWithoutYear } from "@/helpers/date-time.helper";
//types
type Props = {
distribution: TCompletionChartDistribution;

View file

@ -1,7 +1,7 @@
import { FC } from "react";
import { observer } from "mobx-react";
import { Menu } from "lucide-react";
import { useApplication } from "hooks/store";
import { useApplication } from "@/hooks/store";
type Props = {
onClick?: () => void;

View file

@ -3,16 +3,6 @@ import React from "react";
import Image from "next/image";
// headless ui
import { Tab } from "@headlessui/react";
// hooks
import { Avatar, StateGroupIcon } from "@plane/ui";
import { SingleProgressStats } from "components/core";
import useLocalStorage from "hooks/use-local-storage";
// images
import emptyLabel from "public/empty-state/empty_label.svg";
import emptyMembers from "public/empty-state/empty_members.svg";
// components
// ui
// types
import {
IModule,
TAssigneesDistribution,
@ -20,6 +10,16 @@ import {
TLabelsDistribution,
TStateGroups,
} from "@plane/types";
// hooks
import { Avatar, StateGroupIcon } from "@plane/ui";
import { SingleProgressStats } from "@/components/core";
import useLocalStorage from "@/hooks/use-local-storage";
// images
import emptyLabel from "public/empty-state/empty_label.svg";
import emptyMembers from "public/empty-state/empty_members.svg";
// components
// ui
// types
type Props = {
distribution: {

View file

@ -13,12 +13,12 @@ import {
} from "react-hook-form";
// react-color
// component
import { Popover, Transition } from "@headlessui/react";
import { Palette } from "lucide-react";
import { Popover, Transition } from "@headlessui/react";
import { IUserTheme } from "@plane/types";
import { Input } from "@plane/ui";
// icons
// types
import { IUserTheme } from "@plane/types";
type Props = {
name: keyof IUserTheme;

View file

@ -1,12 +1,12 @@
import { observer } from "mobx-react-lite";
import { useTheme } from "next-themes";
import { Controller, useForm } from "react-hook-form";
import { IUserTheme } from "@plane/types";
// hooks
import { Button, InputColorPicker } from "@plane/ui";
import { useUser } from "hooks/store";
import { useUser } from "@/hooks/store";
// ui
// types
import { IUserTheme } from "@plane/types";
const inputRules = {
required: "Background color is required",

View file

@ -1,7 +1,7 @@
import { FC } from "react";
// constants
import { CustomSelect } from "@plane/ui";
import { THEME_OPTIONS, I_THEME_OPTION } from "constants/themes";
import { THEME_OPTIONS, I_THEME_OPTION } from "@/constants/themes";
// ui
type Props = {

View file

@ -3,10 +3,8 @@ import { observer } from "mobx-react-lite";
import Link from "next/link";
import useSWR from "swr";
// hooks
import { useCycle, useCycleFilter, useIssues, useMember, useProject } from "hooks/store";
import { usePlatformOS } from "hooks/use-platform-os";
// ui
import { SingleProgressStats } from "components/core";
import { ArrowRight, CalendarCheck, CalendarDays, Star, Target } from "lucide-react";
import { ICycle, TCycleGroups } from "@plane/types";
import {
AvatarGroup,
Loader,
@ -20,29 +18,31 @@ import {
setPromiseToast,
getButtonStyling,
} from "@plane/ui";
import { SingleProgressStats } from "@/components/core";
// ui
// components
import ProgressChart from "components/core/sidebar/progress-chart";
import { ActiveCycleProgressStats, UpcomingCyclesList } from "components/cycles";
import { StateDropdown } from "components/dropdowns";
import { EmptyState } from "components/empty-state";
import ProgressChart from "@/components/core/sidebar/progress-chart";
import { ActiveCycleProgressStats, UpcomingCyclesList } from "@/components/cycles";
import { StateDropdown } from "@/components/dropdowns";
import { EmptyState } from "@/components/empty-state";
// icons
import { ArrowRight, CalendarCheck, CalendarDays, Star, Target } from "lucide-react";
// helpers
// types
// constants
import { CYCLE_STATE_GROUPS_DETAILS } from "@/constants/cycle";
import { EmptyStateType } from "@/constants/empty-state";
import { CYCLE_ISSUES_WITH_PARAMS } from "@/constants/fetch-keys";
import { EIssuesStoreType } from "@/constants/issue";
import { cn } from "@/helpers/common.helper";
import {
renderFormattedDate,
findHowManyDaysLeft,
renderFormattedDateWithoutYear,
getDate,
} from "helpers/date-time.helper";
import { truncateText } from "helpers/string.helper";
import { cn } from "helpers/common.helper";
// types
import { ICycle, TCycleGroups } from "@plane/types";
// constants
import { EIssuesStoreType } from "constants/issue";
import { CYCLE_ISSUES_WITH_PARAMS } from "constants/fetch-keys";
import { CYCLE_STATE_GROUPS_DETAILS } from "constants/cycle";
import { EmptyStateType } from "constants/empty-state";
} from "@/helpers/date-time.helper";
import { truncateText } from "@/helpers/string.helper";
import { useCycle, useCycleFilter, useIssues, useMember, useProject } from "@/hooks/store";
import { usePlatformOS } from "@/hooks/use-platform-os";
interface IActiveCycleDetails {
workspaceSlug: string;

View file

@ -1,13 +1,13 @@
import React, { Fragment } from "react";
import { Tab } from "@headlessui/react";
import { ICycle } from "@plane/types";
// hooks
import { Avatar } from "@plane/ui";
import { SingleProgressStats } from "components/core";
import useLocalStorage from "hooks/use-local-storage";
import { SingleProgressStats } from "@/components/core";
import useLocalStorage from "@/hooks/use-local-storage";
// components
// ui
// types
import { ICycle } from "@plane/types";
type Props = {
cycle: ICycle;

View file

@ -1,17 +1,17 @@
import { observer } from "mobx-react";
import Link from "next/link";
import { useRouter } from "next/router";
import { observer } from "mobx-react";
import { Star, User2 } from "lucide-react";
// hooks
import { useCycle, useEventTracker, useMember } from "hooks/store";
// components
import { CycleQuickActions } from "components/cycles";
// ui
import { Avatar, AvatarGroup, setPromiseToast } from "@plane/ui";
import { CycleQuickActions } from "@/components/cycles";
import { CYCLE_FAVORITED, CYCLE_UNFAVORITED } from "@/constants/event-tracker";
import { renderFormattedDate } from "@/helpers/date-time.helper";
import { useCycle, useEventTracker, useMember } from "@/hooks/store";
// components
// ui
// helpers
import { renderFormattedDate } from "helpers/date-time.helper";
// constants
import { CYCLE_FAVORITED, CYCLE_UNFAVORITED } from "constants/event-tracker";
type Props = {
cycleId: string;

View file

@ -1,8 +1,8 @@
import { observer } from "mobx-react";
// hooks
import { useCycle } from "hooks/store";
import { UpcomingCycleListItem } from "@/components/cycles";
import { useCycle } from "@/hooks/store";
// components
import { UpcomingCycleListItem } from "components/cycles";
export const UpcomingCyclesList = observer(() => {
// store hooks

View file

@ -1,10 +1,10 @@
import { observer } from "mobx-react-lite";
import { X } from "lucide-react";
// helpers
import { renderFormattedDate } from "helpers/date-time.helper";
import { capitalizeFirstLetter } from "helpers/string.helper";
import { DATE_AFTER_FILTER_OPTIONS } from "@/constants/filters";
import { renderFormattedDate } from "@/helpers/date-time.helper";
import { capitalizeFirstLetter } from "@/helpers/string.helper";
// constants
import { DATE_AFTER_FILTER_OPTIONS } from "constants/filters";
type Props = {
editable: boolean | undefined;

View file

@ -1,15 +1,15 @@
import { observer } from "mobx-react-lite";
import { X } from "lucide-react";
// hooks
import { useUser } from "hooks/store";
// components
import { AppliedDateFilters, AppliedStatusFilters } from "components/cycles";
// helpers
import { replaceUnderscoreIfSnakeCase } from "helpers/string.helper";
// types
import { TCycleFilters } from "@plane/types";
// hooks
import { AppliedDateFilters, AppliedStatusFilters } from "@/components/cycles";
import { EUserProjectRoles } from "@/constants/project";
import { replaceUnderscoreIfSnakeCase } from "@/helpers/string.helper";
import { useUser } from "@/hooks/store";
// components
// helpers
// types
// constants
import { EUserProjectRoles } from "constants/project";
type Props = {
appliedFilters: TCycleFilters;

View file

@ -1,7 +1,7 @@
import { observer } from "mobx-react-lite";
import { X } from "lucide-react";
import { CYCLE_STATUS } from "constants/cycle";
import { cn } from "helpers/common.helper";
import { CYCLE_STATUS } from "@/constants/cycle";
import { cn } from "@/helpers/common.helper";
type Props = {
handleRemove: (val: string) => void;

View file

@ -2,25 +2,25 @@ import { FC, MouseEvent } from "react";
import { observer } from "mobx-react";
import Link from "next/link";
import { useRouter } from "next/router";
// hooks
import { usePlatformOS } from "hooks/use-platform-os";
// components
import { Info, Star } from "lucide-react";
import type { TCycleGroups } from "@plane/types";
import { Avatar, AvatarGroup, Tooltip, LayersIcon, CycleGroupIcon, setPromiseToast } from "@plane/ui";
import { CycleQuickActions } from "components/cycles";
import { CycleQuickActions } from "@/components/cycles";
// hooks
// ui
// icons
// helpers
import { findHowManyDaysLeft, getDate, renderFormattedDate } from "helpers/date-time.helper";
// import { copyTextToClipboard } from "helpers/string.helper";
// import { copyTextToClipboard } from "@/helpers/string.helper";
// constants
import { CYCLE_STATUS } from "constants/cycle";
import { CYCLE_FAVORITED, CYCLE_UNFAVORITED } from "constants/event-tracker";
import { EUserWorkspaceRoles } from "constants/workspace";
import { CYCLE_STATUS } from "@/constants/cycle";
import { CYCLE_FAVORITED, CYCLE_UNFAVORITED } from "@/constants/event-tracker";
import { EUserWorkspaceRoles } from "@/constants/workspace";
import { findHowManyDaysLeft, getDate, renderFormattedDate } from "@/helpers/date-time.helper";
// constants
import { useEventTracker, useCycle, useUser, useMember } from "hooks/store";
import { useEventTracker, useCycle, useUser, useMember } from "@/hooks/store";
import { usePlatformOS } from "@/hooks/use-platform-os";
//.types
import { TCycleGroups } from "@plane/types";
export interface ICyclesBoardCard {
workspaceSlug: string;
@ -69,8 +69,8 @@ export const CyclesBoardCard: FC<ICyclesBoardCard> = observer((props) => {
? cycleTotalIssues === 0
? "0 Issue"
: cycleTotalIssues === cycleDetails.completed_issues
? `${cycleTotalIssues} Issue${cycleTotalIssues > 1 ? "s" : ""}`
: `${cycleDetails.completed_issues}/${cycleTotalIssues} Issues`
? `${cycleTotalIssues} Issue${cycleTotalIssues > 1 ? "s" : ""}`
: `${cycleDetails.completed_issues}/${cycleTotalIssues} Issues`
: "0 Issue";
const handleAddToFavorites = (e: MouseEvent<HTMLButtonElement>) => {

View file

@ -1,5 +1,5 @@
// components
import { CyclesBoardCard } from "components/cycles";
import { CyclesBoardCard } from "@/components/cycles";
type Props = {
cycleIds: string[];

View file

@ -1,11 +1,11 @@
import { FC } from "react";
import { observer } from "mobx-react-lite";
import { Disclosure } from "@headlessui/react";
import { ChevronRight } from "lucide-react";
import { Disclosure } from "@headlessui/react";
// components
import { CyclePeekOverview, CyclesBoardMap } from "components/cycles";
import { CyclePeekOverview, CyclesBoardMap } from "@/components/cycles";
// helpers
import { cn } from "helpers/common.helper";
import { cn } from "@/helpers/common.helper";
export interface ICyclesBoard {
completedCycleIds: string[];

View file

@ -3,14 +3,14 @@ import router from "next/router";
//components
// icons
import { Calendar, ChevronDown, Kanban, List } from "lucide-react";
import { IIssueDisplayFilterOptions, IIssueDisplayProperties, IIssueFilterOptions, TIssueLayouts } from "@plane/types";
import { CustomMenu } from "@plane/ui";
// hooks
// constants
import { ProjectAnalyticsModal } from "components/analytics";
import { DisplayFiltersSelection, FilterSelection, FiltersDropdown } from "components/issues";
import { EIssueFilterType, EIssuesStoreType, ISSUE_DISPLAY_FILTERS_BY_LAYOUT, ISSUE_LAYOUTS } from "constants/issue";
import { useIssues, useCycle, useProjectState, useLabel, useMember } from "hooks/store";
import { IIssueDisplayFilterOptions, IIssueDisplayProperties, IIssueFilterOptions, TIssueLayouts } from "@plane/types";
import { ProjectAnalyticsModal } from "@/components/analytics";
import { DisplayFiltersSelection, FilterSelection, FiltersDropdown } from "@/components/issues";
import { EIssueFilterType, EIssuesStoreType, ISSUE_DISPLAY_FILTERS_BY_LAYOUT, ISSUE_LAYOUTS } from "@/constants/issue";
import { useIssues, useCycle, useProjectState, useLabel, useMember } from "@/hooks/store";
export const CycleMobileHeader = () => {
const [analyticsModal, setAnalyticsModal] = useState(false);

View file

@ -2,7 +2,7 @@ import React, { useEffect } from "react";
import { observer } from "mobx-react-lite";
import { useRouter } from "next/router";
// hooks
import { useCycle } from "hooks/store";
import { useCycle } from "@/hooks/store";
// components
import { CycleDetailsSidebar } from "./sidebar";

View file

@ -1,12 +1,12 @@
import { observer } from "mobx-react";
// ui
import { List } from "lucide-react";
import { CustomMenu } from "@plane/ui";
// icon
import { List } from "lucide-react";
// constants
import { CYCLE_VIEW_LAYOUTS } from "constants/cycle";
import { CYCLE_VIEW_LAYOUTS } from "@/constants/cycle";
// hooks
import { useCycleFilter, useProject } from "hooks/store";
import { useCycleFilter, useProject } from "@/hooks/store";
const CyclesListMobileHeader = observer(() => {
const { currentProjectDetails } = useProject();

View file

@ -1,22 +1,22 @@
import { useCallback, useRef, useState } from "react";
import { observer } from "mobx-react";
import { Tab } from "@headlessui/react";
import { ListFilter, Search, X } from "lucide-react";
// hooks
import { useCycleFilter } from "hooks/store";
import useOutsideClickDetector from "hooks/use-outside-click-detector";
import { usePlatformOS } from "hooks/use-platform-os";
// components
import { CycleFiltersSelection } from "components/cycles";
import { FiltersDropdown } from "components/issues";
// ui
import { Tooltip } from "@plane/ui";
// helpers
import { cn } from "helpers/common.helper";
// types
import { Tab } from "@headlessui/react";
import { TCycleFilters } from "@plane/types";
// hooks
import { Tooltip } from "@plane/ui";
import { CycleFiltersSelection } from "@/components/cycles";
import { FiltersDropdown } from "@/components/issues";
import { CYCLE_TABS_LIST, CYCLE_VIEW_LAYOUTS } from "@/constants/cycle";
import { cn } from "@/helpers/common.helper";
import { useCycleFilter } from "@/hooks/store";
import useOutsideClickDetector from "@/hooks/use-outside-click-detector";
import { usePlatformOS } from "@/hooks/use-platform-os";
// components
// ui
// helpers
// types
// constants
import { CYCLE_TABS_LIST, CYCLE_VIEW_LAYOUTS } from "constants/cycle";
type Props = {
projectId: string;

View file

@ -1,17 +1,17 @@
import { FC } from "react";
import Image from "next/image";
import { observer } from "mobx-react-lite";
// hooks
import { useCycle, useCycleFilter } from "hooks/store";
// components
import { CyclesBoard, CyclesList, CyclesListGanttChartView } from "components/cycles";
// ui
import { CycleModuleBoardLayout, CycleModuleListLayout, GanttLayoutLoader } from "components/ui";
// assets
import NameFilterImage from "public/empty-state/cycle/name-filter.svg";
import AllFiltersImage from "public/empty-state/cycle/all-filters.svg";
// types
import Image from "next/image";
import { TCycleLayoutOptions } from "@plane/types";
// hooks
// components
import { CyclesBoard, CyclesList, CyclesListGanttChartView } from "@/components/cycles";
// ui
import { CycleModuleBoardLayout, CycleModuleListLayout, GanttLayoutLoader } from "@/components/ui";
import { useCycle, useCycleFilter } from "@/hooks/store";
// assets
import AllFiltersImage from "public/empty-state/cycle/all-filters.svg";
import NameFilterImage from "public/empty-state/cycle/name-filter.svg";
// types
export interface ICyclesView {
layout: TCycleLayoutOptions;

View file

@ -1,15 +1,15 @@
import { Fragment, useState } from "react";
import { observer } from "mobx-react-lite";
import { useRouter } from "next/router";
import { Dialog, Transition } from "@headlessui/react";
import { AlertTriangle } from "lucide-react";
import { Dialog, Transition } from "@headlessui/react";
import { ICycle } from "@plane/types";
// hooks
import { Button, TOAST_TYPE, setToast } from "@plane/ui";
import { CYCLE_DELETED } from "constants/event-tracker";
import { useEventTracker, useCycle } from "hooks/store";
import { CYCLE_DELETED } from "@/constants/event-tracker";
import { useEventTracker, useCycle } from "@/hooks/store";
// components
// types
import { ICycle } from "@plane/types";
// constants
interface ICycleDelete {

View file

@ -2,10 +2,10 @@ import React, { useState } from "react";
import { observer } from "mobx-react-lite";
// components
import { DateFilterModal } from "components/core";
import { FilterHeader, FilterOption } from "components/issues";
import { DateFilterModal } from "@/components/core";
import { FilterHeader, FilterOption } from "@/components/issues";
// constants
import { DATE_AFTER_FILTER_OPTIONS } from "constants/filters";
import { DATE_AFTER_FILTER_OPTIONS } from "@/constants/filters";
type Props = {
appliedFilters: string[] | null;

View file

@ -1,10 +1,10 @@
import { useState } from "react";
import { observer } from "mobx-react-lite";
import { Search, X } from "lucide-react";
// components
import { FilterEndDate, FilterStartDate, FilterStatus } from "components/cycles";
// types
import { TCycleFilters, TCycleGroups } from "@plane/types";
// components
import { FilterEndDate, FilterStartDate, FilterStatus } from "@/components/cycles";
// types
type Props = {
filters: TCycleFilters;

View file

@ -2,10 +2,10 @@ import React, { useState } from "react";
import { observer } from "mobx-react-lite";
// components
import { DateFilterModal } from "components/core";
import { FilterHeader, FilterOption } from "components/issues";
import { DateFilterModal } from "@/components/core";
import { FilterHeader, FilterOption } from "@/components/issues";
// constants
import { DATE_AFTER_FILTER_OPTIONS } from "constants/filters";
import { DATE_AFTER_FILTER_OPTIONS } from "@/constants/filters";
type Props = {
appliedFilters: string[] | null;

View file

@ -1,11 +1,11 @@
import React, { useState } from "react";
import { observer } from "mobx-react-lite";
// components
import { FilterHeader, FilterOption } from "components/issues";
// types
import { TCycleGroups } from "@plane/types";
// components
import { FilterHeader, FilterOption } from "@/components/issues";
// types
import { CYCLE_STATUS } from "@/constants/cycle";
// constants
import { CYCLE_STATUS } from "constants/cycle";
type Props = {
appliedFilters: TCycleGroups[] | null;

View file

@ -1,15 +1,15 @@
import { useEffect } from "react";
import { Controller, useForm } from "react-hook-form";
// components
import { Button, Input, TextArea } from "@plane/ui";
import { DateRangeDropdown, ProjectDropdown } from "components/dropdowns";
// ui
// helpers
import { shouldRenderProject } from "helpers/project.helper";
import { getDate, renderFormattedPayloadDate } from "helpers/date-time.helper";
// types
import { ICycle } from "@plane/types";
import { Button, Input, TextArea } from "@plane/ui";
import { DateRangeDropdown, ProjectDropdown } from "@/components/dropdowns";
import { getDate, renderFormattedPayloadDate } from "@/helpers/date-time.helper";
import { shouldRenderProject } from "@/helpers/project.helper";
type Props = {
handleFormSubmit: (values: Partial<ICycle>, dirtyFields: any) => Promise<void>;
handleClose: () => void;

Some files were not shown because too many files have changed in this diff Show more