refactor: remove barrel exports from web app (#7577)
* refactor: remove barrel exports from some compoennt modules * refactor: remove barrel exports from issue components * refactor: remove barrel exports from page components * chore: update type improts * refactor: remove barrel exports from cycle components * refactor: remove barrel exports from dropdown components * refactor: remove barrel exports from ce components * refactor: remove barrel exports from some more components * refactor: remove barrel exports from profile and sidebar components * chore: update type imports * refactor: remove barrel exports from store hooks * chore: dynamically load sticky editor * fix: lint * chore: revert sticky dynamic import * refactor: remove barrel exports from ce issue components * refactor: remove barrel exports from ce issue components * refactor: remove barrel exports from ce issue components --------- Co-authored-by: sriramveeraghanta <veeraghanta.sriram@gmail.com>
This commit is contained in:
parent
9cf564caae
commit
3391e8580c
1103 changed files with 3036 additions and 3286 deletions
|
|
@ -9,7 +9,7 @@ import { TDeDupeIssue, TIssue } from "@plane/types";
|
|||
// ui
|
||||
import { Button, TOAST_TYPE, setToast } from "@plane/ui";
|
||||
// hooks
|
||||
import { useProject } from "@/hooks/store";
|
||||
import { useProject } from "@/hooks/store/use-project";
|
||||
import { useIssues } from "@/hooks/store/use-issues";
|
||||
|
||||
type Props = {
|
||||
|
|
|
|||
|
|
@ -15,10 +15,14 @@ import {
|
|||
// components
|
||||
import { isIssueFilterActive } from "@plane/utils";
|
||||
import { ArchiveTabsList } from "@/components/archives";
|
||||
import { DisplayFiltersSelection, FilterSelection, FiltersDropdown } from "@/components/issues";
|
||||
import { DisplayFiltersSelection, FilterSelection, FiltersDropdown } from "@/components/issues/issue-layouts/filters";
|
||||
// helpers
|
||||
// hooks
|
||||
import { useIssues, useLabel, useMember, useProject, useProjectState } from "@/hooks/store";
|
||||
import { useIssues } from "@/hooks/store/use-issues"
|
||||
import { useLabel } from "@/hooks/store/use-label"
|
||||
import { useMember } from "@/hooks/store/use-member"
|
||||
import { useProject } from "@/hooks/store/use-project"
|
||||
import { useProjectState } from "@/hooks/store/use-project-state";
|
||||
|
||||
export const ArchivedIssuesHeader: FC = observer(() => {
|
||||
// router
|
||||
|
|
|
|||
|
|
@ -18,10 +18,11 @@ import {
|
|||
//
|
||||
import { getFileIcon } from "@/components/icons";
|
||||
// components
|
||||
import { IssueAttachmentDeleteModal } from "@/components/issues";
|
||||
import { IssueAttachmentDeleteModal } from "@/components/issues/attachment/delete-attachment-modal";
|
||||
// helpers
|
||||
// hooks
|
||||
import { useIssueDetail, useMember } from "@/hooks/store";
|
||||
import { useIssueDetail } from "@/hooks/store/use-issue-detail"
|
||||
import { useMember } from "@/hooks/store/use-member";
|
||||
import { usePlatformOS } from "@/hooks/use-platform-os";
|
||||
// types
|
||||
import { TAttachmentHelpers } from "../issue-detail-widgets/attachments/helper";
|
||||
|
|
|
|||
|
|
@ -6,7 +6,7 @@ import { useTranslation } from "@plane/i18n";
|
|||
import { EIssueServiceType, TIssueServiceType } from "@plane/types";
|
||||
// hooks
|
||||
import { TOAST_TYPE, setToast } from "@plane/ui";
|
||||
import { useIssueDetail } from "@/hooks/store";
|
||||
import { useIssueDetail } from "@/hooks/store/use-issue-detail";
|
||||
// plane web hooks
|
||||
import { useFileSize } from "@/plane-web/hooks/use-file-size";
|
||||
// types
|
||||
|
|
|
|||
|
|
@ -14,7 +14,8 @@ import { ButtonAvatars } from "@/components/dropdowns/member/avatar";
|
|||
import { getFileIcon } from "@/components/icons";
|
||||
// helpers
|
||||
// hooks
|
||||
import { useIssueDetail, useMember } from "@/hooks/store";
|
||||
import { useIssueDetail } from "@/hooks/store/use-issue-detail"
|
||||
import { useMember } from "@/hooks/store/use-member";
|
||||
import { usePlatformOS } from "@/hooks/use-platform-os";
|
||||
|
||||
type TIssueAttachmentsListItem = {
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
import { FC } from "react";
|
||||
import { observer } from "mobx-react";
|
||||
// hooks
|
||||
import { useIssueDetail } from "@/hooks/store";
|
||||
import { useIssueDetail } from "@/hooks/store/use-issue-detail";
|
||||
// types
|
||||
import { TAttachmentHelpers } from "../issue-detail-widgets/attachments/helper";
|
||||
// components
|
||||
|
|
|
|||
|
|
@ -9,7 +9,7 @@ import { AlertModalCore } from "@plane/ui";
|
|||
// helper
|
||||
import { getFileName } from "@plane/utils";
|
||||
// hooks
|
||||
import { useIssueDetail } from "@/hooks/store";
|
||||
import { useIssueDetail } from "@/hooks/store/use-issue-detail";
|
||||
// types
|
||||
import { TAttachmentOperations } from "../issue-detail-widgets/attachments/helper";
|
||||
|
||||
|
|
|
|||
|
|
@ -1,9 +1 @@
|
|||
export * from "./attachment-detail";
|
||||
export * from "./attachment-item-list";
|
||||
export * from "./attachment-list-item";
|
||||
export * from "./attachment-list-upload-item";
|
||||
export * from "./attachment-upload-details";
|
||||
export * from "./attachment-upload";
|
||||
export * from "./attachments-list";
|
||||
export * from "./delete-attachment-modal";
|
||||
export * from "./root";
|
||||
|
|
|
|||
|
|
@ -1 +0,0 @@
|
|||
export * from "./upgrade-banner";
|
||||
|
|
@ -5,7 +5,8 @@ import { copyUrlToClipboard, generateWorkItemLink } from "@plane/utils";
|
|||
// plane imports
|
||||
// helpers
|
||||
// hooks
|
||||
import { useIssueDetail, useProject } from "@/hooks/store";
|
||||
import { useIssueDetail } from "@/hooks/store/use-issue-detail"
|
||||
import { useProject } from "@/hooks/store/use-project";
|
||||
|
||||
type TCreateIssueToastActionItems = {
|
||||
workspaceSlug: string;
|
||||
|
|
|
|||
|
|
@ -11,7 +11,9 @@ import { TDeDupeIssue, TIssue } from "@plane/types";
|
|||
import { AlertModalCore, TOAST_TYPE, setToast } from "@plane/ui";
|
||||
// constants
|
||||
// hooks
|
||||
import { useIssues, useProject, useUser, useUserPermissions } from "@/hooks/store";
|
||||
import { useIssues } from "@/hooks/store/use-issues"
|
||||
import { useProject } from "@/hooks/store/use-project"
|
||||
import { useUser, useUserPermissions } from "@/hooks/store/user";
|
||||
// plane-web
|
||||
|
||||
type Props = {
|
||||
|
|
|
|||
|
|
@ -11,11 +11,12 @@ import { EFileAssetType, TIssue, TNameDescriptionLoader } from "@plane/types";
|
|||
import { Loader } from "@plane/ui";
|
||||
// components
|
||||
import { getDescriptionPlaceholderI18n } from "@plane/utils";
|
||||
import { RichTextEditor } from "@/components/editor";
|
||||
import { RichTextEditor } from "@/components/editor/rich-text";
|
||||
import { TIssueOperations } from "@/components/issues/issue-detail";
|
||||
// helpers
|
||||
// hooks
|
||||
import { useEditorAsset, useWorkspace } from "@/hooks/store";
|
||||
import { useEditorAsset } from "@/hooks/store/use-editor-asset"
|
||||
import { useWorkspace } from "@/hooks/store/use-workspace";
|
||||
// plane web services
|
||||
import { WorkspaceService } from "@/plane-web/services";
|
||||
const workspaceService = new WorkspaceService();
|
||||
|
|
|
|||
|
|
@ -2,6 +2,7 @@
|
|||
|
||||
import { useCallback, useState } from "react";
|
||||
import { observer } from "mobx-react";
|
||||
import { ChartNoAxesColumn, ListFilter, SlidersHorizontal } from "lucide-react";
|
||||
// plane constants
|
||||
import { EIssueFilterType, ISSUE_STORE_TO_FILTERS_MAP } from "@plane/constants";
|
||||
// i18n
|
||||
|
|
@ -17,21 +18,22 @@ import {
|
|||
import { Button } from "@plane/ui";
|
||||
// components
|
||||
import { isIssueFilterActive } from "@plane/utils";
|
||||
// helpers
|
||||
// hooks
|
||||
import { useLabel } from "@/hooks/store/use-label"
|
||||
import { useProjectState } from "@/hooks/store/use-project-state"
|
||||
import { useMember } from "@/hooks/store/use-member"
|
||||
import { useIssues } from "@/hooks/store/use-issues";
|
||||
// plane web types
|
||||
import { TProject } from "@/plane-web/types";
|
||||
import { WorkItemsModal } from "../analytics/work-items/modal";
|
||||
import {
|
||||
DisplayFiltersSelection,
|
||||
FiltersDropdown,
|
||||
FilterSelection,
|
||||
IssueLayoutIcon,
|
||||
LayoutSelection,
|
||||
MobileLayoutSelection,
|
||||
} from "@/components/issues";
|
||||
// helpers
|
||||
// hooks
|
||||
import { useLabel, useProjectState, useMember, useIssues } from "@/hooks/store";
|
||||
// plane web types
|
||||
import { TProject } from "@/plane-web/types";
|
||||
import { WorkItemsModal } from "../analytics/work-items/modal";
|
||||
import { ChartNoAxesColumn, ChevronDown, ListFilter, SlidersHorizontal } from "lucide-react";
|
||||
} from "./issue-layouts/filters";
|
||||
|
||||
type Props = {
|
||||
currentProjectDetails: TProject | undefined;
|
||||
|
|
@ -47,7 +49,8 @@ const LAYOUTS = [
|
|||
EIssueLayoutTypes.SPREADSHEET,
|
||||
EIssueLayoutTypes.GANTT,
|
||||
];
|
||||
const HeaderFilters = observer((props: Props) => {
|
||||
|
||||
export const HeaderFilters = observer((props: Props) => {
|
||||
const {
|
||||
currentProjectDetails,
|
||||
projectId,
|
||||
|
|
@ -193,5 +196,3 @@ const HeaderFilters = observer((props: Props) => {
|
|||
</>
|
||||
);
|
||||
});
|
||||
|
||||
export default HeaderFilters;
|
||||
|
|
|
|||
|
|
@ -1,23 +0,0 @@
|
|||
export * from "./attachment";
|
||||
export * from "./bulk-operations";
|
||||
export * from "./issue-modal";
|
||||
export * from "./delete-issue-modal";
|
||||
export * from "./issue-layouts";
|
||||
export * from "./description-input";
|
||||
export * from "./title-input";
|
||||
export * from "./parent-issues-list-modal";
|
||||
export * from "./label";
|
||||
export * from "./confirm-issue-discard";
|
||||
export * from "./issue-update-status";
|
||||
export * from "./create-issue-toast-action-items";
|
||||
export * from "./relations";
|
||||
export * from "./issue-detail-widgets";
|
||||
|
||||
// issue details
|
||||
export * from "./issue-detail";
|
||||
|
||||
export * from "./peek-overview";
|
||||
|
||||
// archived issue
|
||||
export * from "./archive-issue-modal";
|
||||
export * from "./archived-issues-header";
|
||||
|
|
@ -5,16 +5,14 @@ import { Layers, Link, Paperclip, Waypoints } from "lucide-react";
|
|||
// plane imports
|
||||
import { useTranslation } from "@plane/i18n";
|
||||
import { TIssueServiceType, TWorkItemWidgets } from "@plane/types";
|
||||
// components
|
||||
import {
|
||||
IssueAttachmentActionButton,
|
||||
IssueLinksActionButton,
|
||||
RelationActionButton,
|
||||
SubIssuesActionButton,
|
||||
IssueDetailWidgetButton,
|
||||
} from "@/components/issues/issue-detail-widgets";
|
||||
// plane web imports
|
||||
import { WorkItemAdditionalWidgetActionButtons } from "@/plane-web/components/issues/issue-detail-widgets/action-buttons";
|
||||
// local imports
|
||||
import { IssueAttachmentActionButton } from "./attachments";
|
||||
import { IssueLinksActionButton } from "./links";
|
||||
import { RelationActionButton } from "./relations";
|
||||
import { SubIssuesActionButton } from "./sub-issues";
|
||||
import { IssueDetailWidgetButton } from "./widget-button";
|
||||
|
||||
type Props = {
|
||||
workspaceSlug: string;
|
||||
|
|
|
|||
|
|
@ -2,9 +2,8 @@
|
|||
import React, { FC } from "react";
|
||||
import { observer } from "mobx-react";
|
||||
import { EIssueServiceType, TIssueServiceType } from "@plane/types";
|
||||
// components
|
||||
import { IssueAttachmentItemList } from "@/components/issues/attachment";
|
||||
// helper
|
||||
// local imports
|
||||
import { IssueAttachmentItemList } from "../../attachment/attachment-item-list";
|
||||
import { useAttachmentOperations } from "./helper";
|
||||
|
||||
type Props = {
|
||||
|
|
|
|||
|
|
@ -6,7 +6,7 @@ import { EIssueServiceType, TIssueServiceType } from "@plane/types";
|
|||
import { TOAST_TYPE, setPromiseToast, setToast } from "@plane/ui";
|
||||
// hooks
|
||||
import { captureError, captureSuccess } from "@/helpers/event-tracker.helper";
|
||||
import { useIssueDetail } from "@/hooks/store";
|
||||
import { useIssueDetail } from "@/hooks/store/use-issue-detail";
|
||||
// types
|
||||
import { TAttachmentUploadStatus } from "@/store/issue/issue-details/attachment.store";
|
||||
|
||||
|
|
|
|||
|
|
@ -8,7 +8,7 @@ import { Plus } from "lucide-react";
|
|||
import { TIssueServiceType } from "@plane/types";
|
||||
import { TOAST_TYPE, setToast } from "@plane/ui";
|
||||
// hooks
|
||||
import { useIssueDetail } from "@/hooks/store";
|
||||
import { useIssueDetail } from "@/hooks/store/use-issue-detail";
|
||||
// plane web hooks
|
||||
import { useFileSize } from "@/plane-web/hooks/use-file-size";
|
||||
// local imports
|
||||
|
|
|
|||
|
|
@ -4,13 +4,11 @@ import { observer } from "mobx-react";
|
|||
// plane imports
|
||||
import { TIssueServiceType } from "@plane/types";
|
||||
import { Collapsible } from "@plane/ui";
|
||||
// components
|
||||
import {
|
||||
IssueAttachmentsCollapsibleContent,
|
||||
IssueAttachmentsCollapsibleTitle,
|
||||
} from "@/components/issues/issue-detail-widgets";
|
||||
// hooks
|
||||
import { useIssueDetail } from "@/hooks/store";
|
||||
import { useIssueDetail } from "@/hooks/store/use-issue-detail";
|
||||
// local imports
|
||||
import { IssueAttachmentsCollapsibleContent } from "./content";
|
||||
import { IssueAttachmentsCollapsibleTitle } from "./title";
|
||||
|
||||
type Props = {
|
||||
workspaceSlug: string;
|
||||
|
|
|
|||
|
|
@ -4,10 +4,10 @@ import { observer } from "mobx-react";
|
|||
import { useTranslation } from "@plane/i18n";
|
||||
import { EIssueServiceType, TIssueServiceType } from "@plane/types";
|
||||
import { CollapsibleButton } from "@plane/ui";
|
||||
// components
|
||||
import { IssueAttachmentActionButton } from "@/components/issues/issue-detail-widgets";
|
||||
// hooks
|
||||
import { useIssueDetail } from "@/hooks/store";
|
||||
import { useIssueDetail } from "@/hooks/store/use-issue-detail";
|
||||
// local imports
|
||||
import { IssueAttachmentActionButton } from "./quick-action-button";
|
||||
|
||||
type Props = {
|
||||
isOpen: boolean;
|
||||
|
|
|
|||
|
|
@ -1,9 +1 @@
|
|||
export * from "./attachments";
|
||||
export * from "./links";
|
||||
export * from "./relations";
|
||||
export * from "./root";
|
||||
export * from "./sub-issues";
|
||||
export * from "./widget-button";
|
||||
export * from "./issue-detail-widget-collapsibles";
|
||||
export * from "./action-buttons";
|
||||
export * from "./issue-detail-widget-modals";
|
||||
|
|
|
|||
|
|
@ -3,18 +3,16 @@ import React, { FC } from "react";
|
|||
import { observer } from "mobx-react";
|
||||
// plane imports
|
||||
import { TIssueServiceType, TWorkItemWidgets } from "@plane/types";
|
||||
// components
|
||||
import {
|
||||
AttachmentsCollapsible,
|
||||
LinksCollapsible,
|
||||
RelationsCollapsible,
|
||||
SubIssuesCollapsible,
|
||||
} from "@/components/issues/issue-detail-widgets";
|
||||
// hooks
|
||||
import { useIssueDetail } from "@/hooks/store";
|
||||
import { useIssueDetail } from "@/hooks/store/use-issue-detail";
|
||||
// Plane-web
|
||||
import { WorkItemAdditionalWidgetCollapsibles } from "@/plane-web/components/issues/issue-detail-widgets/collapsibles";
|
||||
import { useTimeLineRelationOptions } from "@/plane-web/components/relations";
|
||||
// local imports
|
||||
import { AttachmentsCollapsible } from "./attachments";
|
||||
import { LinksCollapsible } from "./links";
|
||||
import { RelationsCollapsible } from "./relations";
|
||||
import { SubIssuesCollapsible } from "./sub-issues";
|
||||
|
||||
type Props = {
|
||||
workspaceSlug: string;
|
||||
|
|
|
|||
|
|
@ -3,15 +3,15 @@ import { observer } from "mobx-react";
|
|||
import { ISearchIssueResponse, TIssue, TIssueServiceType, TWorkItemWidgets } from "@plane/types";
|
||||
import { setToast, TOAST_TYPE } from "@plane/ui";
|
||||
// components
|
||||
import { ExistingIssuesListModal } from "@/components/core";
|
||||
import { CreateUpdateIssueModal } from "@/components/issues/issue-modal";
|
||||
import { ExistingIssuesListModal } from "@/components/core/modals/existing-issues-list-modal";
|
||||
// hooks
|
||||
import { useIssueDetail } from "@/hooks/store";
|
||||
import { useIssueDetail } from "@/hooks/store/use-issue-detail";
|
||||
// plane web imports
|
||||
import { WorkItemAdditionalWidgetModals } from "@/plane-web/components/issues/issue-detail-widgets/modals";
|
||||
// local imports
|
||||
import { IssueLinkCreateUpdateModal } from "../issue-detail/links/create-update-link-modal";
|
||||
// helpers
|
||||
import { CreateUpdateIssueModal } from "../issue-modal/modal";
|
||||
import { useLinkOperations } from "./links/helper";
|
||||
import { useSubIssueOperations } from "./sub-issues/helper";
|
||||
|
||||
|
|
|
|||
|
|
@ -5,7 +5,7 @@ import { useTranslation } from "@plane/i18n";
|
|||
import { TIssueLink, TIssueServiceType } from "@plane/types";
|
||||
import { TOAST_TYPE, setToast } from "@plane/ui";
|
||||
// hooks
|
||||
import { useIssueDetail } from "@/hooks/store";
|
||||
import { useIssueDetail } from "@/hooks/store/use-issue-detail";
|
||||
// local imports
|
||||
import { TLinkOperations } from "../../issue-detail/links";
|
||||
|
||||
|
|
|
|||
|
|
@ -5,7 +5,7 @@ import { Plus } from "lucide-react";
|
|||
// plane imports
|
||||
import { TIssueServiceType } from "@plane/types";
|
||||
// hooks
|
||||
import { useIssueDetail } from "@/hooks/store";
|
||||
import { useIssueDetail } from "@/hooks/store/use-issue-detail";
|
||||
|
||||
type Props = {
|
||||
customButton?: React.ReactNode;
|
||||
|
|
|
|||
|
|
@ -4,10 +4,11 @@ import { observer } from "mobx-react";
|
|||
// plane imports
|
||||
import { TIssueServiceType } from "@plane/types";
|
||||
import { Collapsible } from "@plane/ui";
|
||||
// components
|
||||
import { IssueLinksCollapsibleContent, IssueLinksCollapsibleTitle } from "@/components/issues/issue-detail-widgets";
|
||||
// hooks
|
||||
import { useIssueDetail } from "@/hooks/store";
|
||||
import { useIssueDetail } from "@/hooks/store/use-issue-detail";
|
||||
// local imports
|
||||
import { IssueLinksCollapsibleContent } from "./content";
|
||||
import { IssueLinksCollapsibleTitle } from "./title";
|
||||
|
||||
type Props = {
|
||||
workspaceSlug: string;
|
||||
|
|
|
|||
|
|
@ -5,10 +5,10 @@ import { observer } from "mobx-react";
|
|||
import { useTranslation } from "@plane/i18n";
|
||||
import { TIssueServiceType } from "@plane/types";
|
||||
import { CollapsibleButton } from "@plane/ui";
|
||||
// components
|
||||
import { IssueLinksActionButton } from "@/components/issues/issue-detail-widgets";
|
||||
// hooks
|
||||
import { useIssueDetail } from "@/hooks/store";
|
||||
import { useIssueDetail } from "@/hooks/store/use-issue-detail";
|
||||
// local imports
|
||||
import { IssueLinksActionButton } from "./quick-action-button";
|
||||
|
||||
type Props = {
|
||||
isOpen: boolean;
|
||||
|
|
|
|||
|
|
@ -6,16 +6,16 @@ import { useTranslation } from "@plane/i18n";
|
|||
import { EIssueServiceType, TIssue, TIssueServiceType } from "@plane/types";
|
||||
import { Collapsible } from "@plane/ui";
|
||||
// components
|
||||
import { RelationIssueList } from "@/components/issues";
|
||||
import { DeleteIssueModal } from "@/components/issues/delete-issue-modal";
|
||||
import { CreateUpdateIssueModal } from "@/components/issues/issue-modal";
|
||||
import { CreateUpdateIssueModal } from "@/components/issues/issue-modal/modal";
|
||||
// hooks
|
||||
import { useIssueDetail } from "@/hooks/store";
|
||||
import { useIssueDetail } from "@/hooks/store/use-issue-detail";
|
||||
// Plane-web
|
||||
import { CreateUpdateEpicModal } from "@/plane-web/components/epics";
|
||||
import { useTimeLineRelationOptions } from "@/plane-web/components/relations";
|
||||
import { TIssueRelationTypes } from "@/plane-web/types";
|
||||
// helper
|
||||
import { DeleteIssueModal } from "../../delete-issue-modal";
|
||||
import { RelationIssueList } from "../../relations/issue-list";
|
||||
import { useRelationOperations } from "./helper";
|
||||
|
||||
type Props = {
|
||||
|
|
|
|||
|
|
@ -8,7 +8,7 @@ import { TOAST_TYPE, setToast } from "@plane/ui";
|
|||
import { copyUrlToClipboard } from "@plane/utils";
|
||||
// hooks
|
||||
import { captureError, captureSuccess } from "@/helpers/event-tracker.helper";
|
||||
import { useIssueDetail } from "@/hooks/store";
|
||||
import { useIssueDetail } from "@/hooks/store/use-issue-detail";
|
||||
|
||||
export type TRelationIssueOperations = {
|
||||
copyLink: (path: string) => void;
|
||||
|
|
|
|||
|
|
@ -7,7 +7,7 @@ import { useTranslation } from "@plane/i18n";
|
|||
import { TIssueServiceType } from "@plane/types";
|
||||
import { CustomMenu } from "@plane/ui";
|
||||
// hooks
|
||||
import { useIssueDetail } from "@/hooks/store";
|
||||
import { useIssueDetail } from "@/hooks/store/use-issue-detail";
|
||||
// Plane-web
|
||||
import { useTimeLineRelationOptions } from "@/plane-web/components/relations";
|
||||
import { TIssueRelationTypes } from "@/plane-web/types";
|
||||
|
|
|
|||
|
|
@ -4,10 +4,11 @@ import { observer } from "mobx-react";
|
|||
// plane imports
|
||||
import { TIssueServiceType } from "@plane/types";
|
||||
import { Collapsible } from "@plane/ui";
|
||||
// components
|
||||
import { RelationsCollapsibleContent, RelationsCollapsibleTitle } from "@/components/issues/issue-detail-widgets";
|
||||
// hooks
|
||||
import { useIssueDetail } from "@/hooks/store";
|
||||
import { useIssueDetail } from "@/hooks/store/use-issue-detail";
|
||||
// local imports
|
||||
import { RelationsCollapsibleContent } from "./content";
|
||||
import { RelationsCollapsibleTitle } from "./title";
|
||||
|
||||
type Props = {
|
||||
workspaceSlug: string;
|
||||
|
|
|
|||
|
|
@ -4,12 +4,12 @@ import { observer } from "mobx-react";
|
|||
import { useTranslation } from "@plane/i18n";
|
||||
import { EIssueServiceType, TIssueServiceType } from "@plane/types";
|
||||
import { CollapsibleButton } from "@plane/ui";
|
||||
// components
|
||||
import { RelationActionButton } from "@/components/issues/issue-detail-widgets";
|
||||
// hooks
|
||||
import { useIssueDetail } from "@/hooks/store";
|
||||
import { useIssueDetail } from "@/hooks/store/use-issue-detail";
|
||||
// Plane-web
|
||||
import { useTimeLineRelationOptions } from "@/plane-web/components/relations";
|
||||
// local imports
|
||||
import { RelationActionButton } from "./quick-action-button";
|
||||
|
||||
type Props = {
|
||||
isOpen: boolean;
|
||||
|
|
|
|||
|
|
@ -3,12 +3,10 @@
|
|||
import React, { FC } from "react";
|
||||
// plane imports
|
||||
import { TIssueServiceType, TWorkItemWidgets } from "@plane/types";
|
||||
// components
|
||||
import {
|
||||
IssueDetailWidgetActionButtons,
|
||||
IssueDetailWidgetCollapsibles,
|
||||
IssueDetailWidgetModals,
|
||||
} from "@/components/issues/issue-detail-widgets";
|
||||
// local imports
|
||||
import { IssueDetailWidgetActionButtons } from "./action-buttons";
|
||||
import { IssueDetailWidgetCollapsibles } from "./issue-detail-widget-collapsibles";
|
||||
import { IssueDetailWidgetModals } from "./issue-detail-widget-modals";
|
||||
|
||||
type Props = {
|
||||
workspaceSlug: string;
|
||||
|
|
|
|||
|
|
@ -4,10 +4,10 @@ import { observer } from "mobx-react";
|
|||
import { EIssueServiceType, EIssuesStoreType, TIssue, TIssueServiceType } from "@plane/types";
|
||||
// components
|
||||
import { DeleteIssueModal } from "@/components/issues/delete-issue-modal";
|
||||
import { CreateUpdateIssueModal } from "@/components/issues/issue-modal";
|
||||
// hooks
|
||||
import { useIssueDetail } from "@/hooks/store";
|
||||
import { useIssueDetail } from "@/hooks/store/use-issue-detail";
|
||||
// local imports
|
||||
import { CreateUpdateIssueModal } from "../../issue-modal/modal";
|
||||
import { useSubIssueOperations } from "./helper";
|
||||
import { SubIssuesListRoot } from "./issues-list/root";
|
||||
|
||||
|
|
|
|||
|
|
@ -2,9 +2,16 @@ import { FC, useMemo } from "react";
|
|||
import isEmpty from "lodash/isEmpty";
|
||||
import { observer } from "mobx-react";
|
||||
import { SlidersHorizontal } from "lucide-react";
|
||||
// plane imports
|
||||
import { IIssueDisplayFilterOptions, ILayoutDisplayFiltersOptions, IIssueDisplayProperties } from "@plane/types";
|
||||
import { cn } from "@plane/utils";
|
||||
import { FilterDisplayProperties, FilterGroupBy, FilterOrderBy, FiltersDropdown } from "@/components/issues";
|
||||
// components
|
||||
import {
|
||||
FilterDisplayProperties,
|
||||
FilterGroupBy,
|
||||
FilterOrderBy,
|
||||
FiltersDropdown,
|
||||
} from "@/components/issues/issue-layouts/filters";
|
||||
import { isDisplayFiltersApplied } from "@/components/issues/issue-layouts/utils";
|
||||
|
||||
type TSubIssueDisplayFiltersProps = {
|
||||
|
|
|
|||
|
|
@ -13,7 +13,7 @@ import {
|
|||
FilterStartDate,
|
||||
FilterState,
|
||||
FilterStateGroup,
|
||||
} from "@/components/issues";
|
||||
} from "@/components/issues/issue-layouts/filters";
|
||||
import { isFiltersApplied } from "@/components/issues/issue-layouts/utils";
|
||||
import { FilterIssueTypes } from "@/plane-web/components/issues/filters/issue-types";
|
||||
|
||||
|
|
|
|||
|
|
@ -10,7 +10,8 @@ import { TOAST_TYPE, setToast } from "@plane/ui";
|
|||
import { copyUrlToClipboard } from "@plane/utils";
|
||||
// hooks
|
||||
import { captureError, captureSuccess } from "@/helpers/event-tracker.helper";
|
||||
import { useIssueDetail, useProjectState } from "@/hooks/store";
|
||||
import { useIssueDetail } from "@/hooks/store/use-issue-detail"
|
||||
import { useProjectState } from "@/hooks/store/use-project-state";
|
||||
// plane web helpers
|
||||
import { updateEpicAnalytics } from "@/plane-web/helpers/epic-analytics";
|
||||
|
||||
|
|
|
|||
|
|
@ -11,11 +11,12 @@ import { cn, generateWorkItemLink } from "@plane/utils";
|
|||
import { useSubIssueOperations } from "@/components/issues/issue-detail-widgets/sub-issues/helper";
|
||||
import { WithDisplayPropertiesHOC } from "@/components/issues/issue-layouts/properties/with-display-properties-HOC";
|
||||
// hooks
|
||||
import { useIssueDetail, useProject } from "@/hooks/store";
|
||||
import { useIssueDetail } from "@/hooks/store/use-issue-detail";
|
||||
import { useProject } from "@/hooks/store/use-project";
|
||||
import useIssuePeekOverviewRedirection from "@/hooks/use-issue-peek-overview-redirection";
|
||||
import { usePlatformOS } from "@/hooks/use-platform-os";
|
||||
// plane web components
|
||||
import { IssueIdentifier } from "@/plane-web/components/issues";
|
||||
import { IssueIdentifier } from "@/plane-web/components/issues/issue-details/issue-identifier";
|
||||
// local components
|
||||
import { SubIssuesListItemProperties } from "./properties";
|
||||
import { SubIssuesListRoot } from "./root";
|
||||
|
|
|
|||
|
|
@ -6,13 +6,11 @@ import { useTranslation } from "@plane/i18n";
|
|||
import { IIssueDisplayProperties, TIssue } from "@plane/types";
|
||||
import { getDate, renderFormattedPayloadDate, shouldHighlightIssueDueDate } from "@plane/utils";
|
||||
// components
|
||||
import {
|
||||
PriorityDropdown,
|
||||
MemberDropdown,
|
||||
StateDropdown,
|
||||
DateRangeDropdown,
|
||||
DateDropdown,
|
||||
} from "@/components/dropdowns";
|
||||
import { DateDropdown } from "@/components/dropdowns/date";
|
||||
import { DateRangeDropdown } from "@/components/dropdowns/date-range";
|
||||
import { MemberDropdown } from "@/components/dropdowns/member/dropdown";
|
||||
import { PriorityDropdown } from "@/components/dropdowns/priority";
|
||||
import { StateDropdown } from "@/components/dropdowns/state/dropdown";
|
||||
// hooks
|
||||
import { WithDisplayPropertiesHOC } from "@/components/issues/issue-layouts/properties/with-display-properties-HOC";
|
||||
import { useProjectState } from "@/hooks/store/use-project-state";
|
||||
|
|
|
|||
|
|
@ -13,9 +13,9 @@ import {
|
|||
} from "@plane/types";
|
||||
// hooks
|
||||
import { Button } from "@plane/ui";
|
||||
import { SectionEmptyState } from "@/components/empty-state";
|
||||
import { SectionEmptyState } from "@/components/empty-state/section-empty-state-root";
|
||||
import { getGroupByColumns, isWorkspaceLevel } from "@/components/issues/issue-layouts/utils";
|
||||
import { useIssueDetail } from "@/hooks/store";
|
||||
import { useIssueDetail } from "@/hooks/store/use-issue-detail";
|
||||
|
||||
import { SubIssuesListGroup } from "./list-group";
|
||||
type Props = {
|
||||
|
|
|
|||
|
|
@ -9,7 +9,7 @@ import { TIssue, TIssueServiceType } from "@plane/types";
|
|||
import { CustomMenu } from "@plane/ui";
|
||||
// hooks
|
||||
import { captureClick } from "@/helpers/event-tracker.helper";
|
||||
import { useIssueDetail } from "@/hooks/store";
|
||||
import { useIssueDetail } from "@/hooks/store/use-issue-detail";
|
||||
|
||||
type Props = {
|
||||
issueId: string;
|
||||
|
|
|
|||
|
|
@ -4,10 +4,11 @@ import { observer } from "mobx-react";
|
|||
// plane imports
|
||||
import { TIssueServiceType } from "@plane/types";
|
||||
import { Collapsible } from "@plane/ui";
|
||||
// components
|
||||
import { SubIssuesCollapsibleContent, SubIssuesCollapsibleTitle } from "@/components/issues/issue-detail-widgets";
|
||||
// hooks
|
||||
import { useIssueDetail } from "@/hooks/store";
|
||||
import { useIssueDetail } from "@/hooks/store/use-issue-detail";
|
||||
// local imports
|
||||
import { SubIssuesCollapsibleContent } from "./content";
|
||||
import { SubIssuesCollapsibleTitle } from "./title";
|
||||
|
||||
type Props = {
|
||||
workspaceSlug: string;
|
||||
|
|
|
|||
|
|
@ -9,7 +9,9 @@ import {
|
|||
IIssueFilterOptions,
|
||||
TIssueServiceType,
|
||||
} from "@plane/types";
|
||||
import { useIssueDetail, useMember, useProjectState } from "@/hooks/store";
|
||||
import { useIssueDetail } from "@/hooks/store/use-issue-detail"
|
||||
import { useMember } from "@/hooks/store/use-member"
|
||||
import { useProjectState } from "@/hooks/store/use-project-state";
|
||||
import { SubIssueDisplayFilters } from "./display-filters";
|
||||
import { SubIssueFilters } from "./filters";
|
||||
import { SubIssuesActionButton } from "./quick-action-button";
|
||||
|
|
|
|||
|
|
@ -7,7 +7,7 @@ import { useTranslation } from "@plane/i18n";
|
|||
import { EIssueServiceType, TIssueServiceType } from "@plane/types";
|
||||
import { CircularProgressIndicator, CollapsibleButton } from "@plane/ui";
|
||||
// hooks
|
||||
import { useIssueDetail } from "@/hooks/store";
|
||||
import { useIssueDetail } from "@/hooks/store/use-issue-detail";
|
||||
import { SubWorkItemTitleActions } from "./title-actions";
|
||||
|
||||
type Props = {
|
||||
|
|
|
|||
|
|
@ -4,10 +4,10 @@ import { useTranslation } from "@plane/i18n";
|
|||
// hooks
|
||||
// components
|
||||
import { cn } from "@plane/utils";
|
||||
import { CycleDropdown } from "@/components/dropdowns";
|
||||
import { CycleDropdown } from "@/components/dropdowns/cycle";
|
||||
// ui
|
||||
// helpers
|
||||
import { useIssueDetail } from "@/hooks/store";
|
||||
import { useIssueDetail } from "@/hooks/store/use-issue-detail";
|
||||
// types
|
||||
import type { TIssueOperations } from "./root";
|
||||
|
||||
|
|
|
|||
|
|
@ -1,14 +1 @@
|
|||
export * from "./issue-activity";
|
||||
export * from "./label";
|
||||
export * from "./links";
|
||||
export * from "./parent";
|
||||
export * from "./reactions";
|
||||
export * from "./cycle-select";
|
||||
export * from "./main-content";
|
||||
export * from "./module-select";
|
||||
export * from "./parent-select";
|
||||
export * from "./relation-select";
|
||||
export * from "./root";
|
||||
export * from "./sidebar";
|
||||
export * from "./subscription";
|
||||
export * from "./issue-detail-quick-actions";
|
||||
|
|
|
|||
|
|
@ -6,9 +6,9 @@ import { TCommentsOperations } from "@plane/types";
|
|||
// components
|
||||
import { CommentCard } from "@/components/comments/card/root";
|
||||
// hooks
|
||||
import { useIssueDetail } from "@/hooks/store";
|
||||
import { useIssueDetail } from "@/hooks/store/use-issue-detail";
|
||||
// plane web components
|
||||
import { IssueAdditionalPropertiesActivity } from "@/plane-web/components/issues";
|
||||
import { IssueAdditionalPropertiesActivity } from "@/plane-web/components/issues/issue-details/issue-properties-activity";
|
||||
import { IssueActivityWorklog } from "@/plane-web/components/issues/worklog/activity/root";
|
||||
// local imports
|
||||
import { IssueActivityItem } from "./activity/activity-list";
|
||||
|
|
|
|||
|
|
@ -5,7 +5,7 @@ import { observer } from "mobx-react";
|
|||
import { RotateCcw } from "lucide-react";
|
||||
// hooks
|
||||
import { ArchiveIcon } from "@plane/ui";
|
||||
import { useIssueDetail } from "@/hooks/store";
|
||||
import { useIssueDetail } from "@/hooks/store/use-issue-detail";
|
||||
// components
|
||||
import { IssueActivityBlockComponent } from "./";
|
||||
// ui
|
||||
|
|
|
|||
|
|
@ -3,7 +3,7 @@ import { observer } from "mobx-react";
|
|||
// icons
|
||||
import { Users } from "lucide-react";
|
||||
// hooks;
|
||||
import { useIssueDetail } from "@/hooks/store";
|
||||
import { useIssueDetail } from "@/hooks/store/use-issue-detail";
|
||||
// components
|
||||
import { IssueActivityBlockComponent, IssueLink } from "./";
|
||||
|
||||
|
|
|
|||
|
|
@ -2,7 +2,7 @@ import { FC } from "react";
|
|||
import { observer } from "mobx-react";
|
||||
import { Paperclip } from "lucide-react";
|
||||
// hooks
|
||||
import { useIssueDetail } from "@/hooks/store";
|
||||
import { useIssueDetail } from "@/hooks/store/use-issue-detail";
|
||||
// components
|
||||
import { IssueActivityBlockComponent, IssueLink } from "./";
|
||||
|
||||
|
|
|
|||
|
|
@ -4,7 +4,7 @@ import { FC } from "react";
|
|||
import { observer } from "mobx-react";
|
||||
// hooks
|
||||
import { ContrastIcon } from "@plane/ui";
|
||||
import { useIssueDetail } from "@/hooks/store";
|
||||
import { useIssueDetail } from "@/hooks/store/use-issue-detail";
|
||||
// components
|
||||
import { IssueActivityBlockComponent } from "./";
|
||||
// icons
|
||||
|
|
|
|||
|
|
@ -7,7 +7,7 @@ import { EInboxIssueSource } from "@plane/types";
|
|||
import { LayersIcon } from "@plane/ui";
|
||||
// hooks
|
||||
import { capitalizeFirstLetter } from "@plane/utils";
|
||||
import { useIssueDetail } from "@/hooks/store";
|
||||
import { useIssueDetail } from "@/hooks/store/use-issue-detail";
|
||||
// local imports
|
||||
import { IssueActivityBlockComponent } from "./";
|
||||
|
||||
|
|
|
|||
|
|
@ -2,7 +2,7 @@ import { FC } from "react";
|
|||
import { observer } from "mobx-react";
|
||||
import { MessageSquare } from "lucide-react";
|
||||
// hooks
|
||||
import { useIssueDetail } from "@/hooks/store";
|
||||
import { useIssueDetail } from "@/hooks/store/use-issue-detail";
|
||||
// components
|
||||
import { IssueActivityBlockComponent, IssueLink } from "./";
|
||||
|
||||
|
|
|
|||
|
|
@ -2,7 +2,7 @@ import { FC } from "react";
|
|||
import { observer } from "mobx-react";
|
||||
import { Triangle } from "lucide-react";
|
||||
// hooks
|
||||
import { useIssueDetail } from "@/hooks/store";
|
||||
import { useIssueDetail } from "@/hooks/store/use-issue-detail";
|
||||
// components
|
||||
import { IssueActivityBlockComponent, IssueLink } from "./";
|
||||
|
||||
|
|
|
|||
|
|
@ -2,16 +2,15 @@
|
|||
|
||||
import { FC, ReactNode } from "react";
|
||||
import { Network } from "lucide-react";
|
||||
// hooks
|
||||
// plane imports
|
||||
import { Tooltip } from "@plane/ui";
|
||||
import { renderFormattedTime, renderFormattedDate, calculateTimeAgo } from "@plane/utils";
|
||||
import { useIssueDetail } from "@/hooks/store";
|
||||
import { useIssueDetail } from "@/hooks/store/use-issue-detail";
|
||||
import { usePlatformOS } from "@/hooks/use-platform-os";
|
||||
// ui
|
||||
// components
|
||||
import { IssueCreatorDisplay } from "@/plane-web/components/issues";
|
||||
// plane web imports
|
||||
import { IssueCreatorDisplay } from "@/plane-web/components/issues/issue-details/issue-creator";
|
||||
// local imports
|
||||
import { IssueUser } from "../";
|
||||
// helpers
|
||||
|
||||
type TIssueActivityBlockComponent = {
|
||||
icon?: ReactNode;
|
||||
|
|
|
|||
|
|
@ -4,7 +4,7 @@ import { FC } from "react";
|
|||
// hooks
|
||||
import { Tooltip } from "@plane/ui";
|
||||
import { generateWorkItemLink } from "@plane/utils";
|
||||
import { useIssueDetail } from "@/hooks/store";
|
||||
import { useIssueDetail } from "@/hooks/store/use-issue-detail";
|
||||
import { usePlatformOS } from "@/hooks/use-platform-os";
|
||||
// ui
|
||||
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
import { FC } from "react";
|
||||
import Link from "next/link";
|
||||
// hooks
|
||||
import { useIssueDetail } from "@/hooks/store";
|
||||
import { useIssueDetail } from "@/hooks/store/use-issue-detail";
|
||||
|
||||
type TIssueUser = {
|
||||
activityId: string;
|
||||
|
|
|
|||
|
|
@ -2,7 +2,7 @@ import { FC } from "react";
|
|||
import { observer } from "mobx-react";
|
||||
// hooks
|
||||
import { Intake } from "@plane/ui";
|
||||
import { useIssueDetail } from "@/hooks/store";
|
||||
import { useIssueDetail } from "@/hooks/store/use-issue-detail";
|
||||
// components
|
||||
import { IssueActivityBlockComponent } from "./";
|
||||
// icons
|
||||
|
|
|
|||
|
|
@ -2,7 +2,8 @@ import { FC } from "react";
|
|||
import { observer } from "mobx-react";
|
||||
import { Tag } from "lucide-react";
|
||||
// hooks
|
||||
import { useIssueDetail, useLabel } from "@/hooks/store";
|
||||
import { useIssueDetail } from "@/hooks/store/use-issue-detail"
|
||||
import { useLabel } from "@/hooks/store/use-label";
|
||||
// components
|
||||
import { IssueActivityBlockComponent, IssueLink, LabelActivityChip } from "./";
|
||||
|
||||
|
|
|
|||
|
|
@ -2,7 +2,7 @@ import { FC } from "react";
|
|||
import { observer } from "mobx-react";
|
||||
import { MessageSquare } from "lucide-react";
|
||||
// hooks
|
||||
import { useIssueDetail } from "@/hooks/store";
|
||||
import { useIssueDetail } from "@/hooks/store/use-issue-detail";
|
||||
// components
|
||||
import { IssueActivityBlockComponent, IssueLink } from "./";
|
||||
|
||||
|
|
|
|||
|
|
@ -4,7 +4,7 @@ import { FC } from "react";
|
|||
import { observer } from "mobx-react";
|
||||
// hooks
|
||||
import { DiceIcon } from "@plane/ui";
|
||||
import { useIssueDetail } from "@/hooks/store";
|
||||
import { useIssueDetail } from "@/hooks/store/use-issue-detail";
|
||||
// components
|
||||
import { IssueActivityBlockComponent } from "./";
|
||||
// icons
|
||||
|
|
|
|||
|
|
@ -2,7 +2,7 @@ import { FC } from "react";
|
|||
import { observer } from "mobx-react";
|
||||
import { MessageSquare } from "lucide-react";
|
||||
// hooks
|
||||
import { useIssueDetail } from "@/hooks/store";
|
||||
import { useIssueDetail } from "@/hooks/store/use-issue-detail";
|
||||
// components
|
||||
import { IssueActivityBlockComponent } from "./";
|
||||
|
||||
|
|
|
|||
|
|
@ -2,7 +2,7 @@ import { FC } from "react";
|
|||
import { observer } from "mobx-react";
|
||||
import { LayoutPanelTop } from "lucide-react";
|
||||
// hooks
|
||||
import { useIssueDetail } from "@/hooks/store";
|
||||
import { useIssueDetail } from "@/hooks/store/use-issue-detail";
|
||||
// components
|
||||
import { IssueActivityBlockComponent, IssueLink } from "./";
|
||||
|
||||
|
|
|
|||
|
|
@ -2,7 +2,7 @@ import { FC } from "react";
|
|||
import { observer } from "mobx-react";
|
||||
import { Signal } from "lucide-react";
|
||||
// hooks
|
||||
import { useIssueDetail } from "@/hooks/store";
|
||||
import { useIssueDetail } from "@/hooks/store/use-issue-detail";
|
||||
// components
|
||||
import { IssueActivityBlockComponent, IssueLink } from "./";
|
||||
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
import { FC } from "react";
|
||||
import { observer } from "mobx-react";
|
||||
// hooks
|
||||
import { useIssueDetail } from "@/hooks/store";
|
||||
import { useIssueDetail } from "@/hooks/store/use-issue-detail";
|
||||
// Plane-web
|
||||
import { getRelationActivityContent, useTimeLineRelationOptions } from "@/plane-web/components/relations";
|
||||
import { TIssueRelationTypes } from "@/plane-web/types";
|
||||
|
|
|
|||
|
|
@ -3,7 +3,7 @@ import { observer } from "mobx-react";
|
|||
import { CalendarDays } from "lucide-react";
|
||||
// hooks
|
||||
import { renderFormattedDate } from "@plane/utils";
|
||||
import { useIssueDetail } from "@/hooks/store";
|
||||
import { useIssueDetail } from "@/hooks/store/use-issue-detail";
|
||||
// components
|
||||
import { IssueActivityBlockComponent, IssueLink } from "./";
|
||||
// helpers
|
||||
|
|
|
|||
|
|
@ -4,7 +4,7 @@ import { FC } from "react";
|
|||
import { observer } from "mobx-react";
|
||||
// hooks
|
||||
import { DoubleCircleIcon } from "@plane/ui";
|
||||
import { useIssueDetail } from "@/hooks/store";
|
||||
import { useIssueDetail } from "@/hooks/store/use-issue-detail";
|
||||
// components
|
||||
import { IssueActivityBlockComponent, IssueLink } from "./";
|
||||
// icons
|
||||
|
|
|
|||
|
|
@ -3,7 +3,7 @@ import { observer } from "mobx-react";
|
|||
import { CalendarDays } from "lucide-react";
|
||||
// hooks
|
||||
import { renderFormattedDate } from "@plane/utils";
|
||||
import { useIssueDetail } from "@/hooks/store";
|
||||
import { useIssueDetail } from "@/hooks/store/use-issue-detail";
|
||||
// components
|
||||
import { IssueActivityBlockComponent, IssueLink } from "./";
|
||||
// helpers
|
||||
|
|
|
|||
|
|
@ -3,7 +3,7 @@ import { observer } from "mobx-react";
|
|||
// helpers
|
||||
import { getValidKeysFromObject } from "@plane/utils";
|
||||
// hooks
|
||||
import { useIssueDetail } from "@/hooks/store";
|
||||
import { useIssueDetail } from "@/hooks/store/use-issue-detail";
|
||||
// plane web components
|
||||
import { IssueTypeActivity, AdditionalActivityRoot } from "@/plane-web/components/issues/issue-details";
|
||||
import { useTimeLineRelationOptions } from "@/plane-web/components/relations";
|
||||
|
|
|
|||
|
|
@ -3,7 +3,11 @@ import { useTranslation } from "@plane/i18n";
|
|||
import { EFileAssetType, type TCommentsOperations } from "@plane/types";
|
||||
import { setToast, TOAST_TYPE } from "@plane/ui";
|
||||
import { copyUrlToClipboard, formatTextList, generateWorkItemLink } from "@plane/utils";
|
||||
import { useEditorAsset, useIssueDetail, useMember, useProject, useUser } from "@/hooks/store";
|
||||
import { useEditorAsset } from "@/hooks/store/use-editor-asset"
|
||||
import { useIssueDetail } from "@/hooks/store/use-issue-detail"
|
||||
import { useMember } from "@/hooks/store/use-member"
|
||||
import { useProject } from "@/hooks/store/use-project"
|
||||
import { useUser } from "@/hooks/store/user";
|
||||
|
||||
export const useCommentOperations = (
|
||||
workspaceSlug: string | undefined,
|
||||
|
|
|
|||
|
|
@ -11,13 +11,16 @@ import { useTranslation } from "@plane/i18n";
|
|||
import { TFileSignedURLResponse, TIssueComment } from "@plane/types";
|
||||
// components
|
||||
import { CommentCreate } from "@/components/comments/comment-create";
|
||||
import { ActivitySortRoot, IssueActivityCommentRoot } from "@/components/issues/issue-detail";
|
||||
// constants
|
||||
// hooks
|
||||
import { useIssueDetail, useProject, useUser, useUserPermissions } from "@/hooks/store";
|
||||
import { useIssueDetail } from "@/hooks/store/use-issue-detail";
|
||||
import { useProject } from "@/hooks/store/use-project";
|
||||
import { useUser, useUserPermissions } from "@/hooks/store/user";
|
||||
// plane web components
|
||||
import { ActivityFilterRoot, IssueActivityWorklogCreateButton } from "@/plane-web/components/issues/worklog";
|
||||
import { ActivityFilterRoot } from "@/plane-web/components/issues/worklog/activity/filter-root";
|
||||
import { IssueActivityWorklogCreateButton } from "@/plane-web/components/issues/worklog/activity/worklog-create-button";
|
||||
import { IssueActivityCommentRoot } from "./activity-comment-root";
|
||||
import { useCommentOperations } from "./helper";
|
||||
import { ActivitySortRoot } from "./sort-root";
|
||||
|
||||
type TIssueActivity = {
|
||||
workspaceSlug: string;
|
||||
|
|
|
|||
|
|
@ -3,20 +3,24 @@
|
|||
import React, { FC, useRef } from "react";
|
||||
import { observer } from "mobx-react";
|
||||
import { LinkIcon } from "lucide-react";
|
||||
// plane imports
|
||||
import { WORK_ITEM_TRACKER_EVENTS } from "@plane/constants";
|
||||
import { useTranslation } from "@plane/i18n";
|
||||
import { EIssuesStoreType } from "@plane/types";
|
||||
import { TOAST_TYPE, Tooltip, setToast } from "@plane/ui";
|
||||
import { generateWorkItemLink, copyTextToClipboard } from "@plane/utils";
|
||||
// components
|
||||
import { IssueSubscription } from "@/components/issues";
|
||||
// helpers
|
||||
// hooks
|
||||
import { captureError, captureSuccess } from "@/helpers/event-tracker.helper";
|
||||
import { useIssueDetail, useIssues, useProject, useUser } from "@/hooks/store";
|
||||
// hooks
|
||||
import { useIssueDetail } from "@/hooks/store/use-issue-detail"
|
||||
import { useIssues } from "@/hooks/store/use-issues"
|
||||
import { useProject } from "@/hooks/store/use-project"
|
||||
import { useUser } from "@/hooks/store/user";
|
||||
import { useAppRouter } from "@/hooks/use-app-router";
|
||||
import { usePlatformOS } from "@/hooks/use-platform-os";
|
||||
// local imports
|
||||
import { WorkItemDetailQuickActions } from "../issue-layouts/quick-action-dropdowns";
|
||||
import { IssueSubscription } from "./subscription";
|
||||
|
||||
type Props = {
|
||||
workspaceSlug: string;
|
||||
|
|
|
|||
|
|
@ -2,7 +2,7 @@ import { FC } from "react";
|
|||
import { observer } from "mobx-react";
|
||||
import { X } from "lucide-react";
|
||||
// types
|
||||
import { useLabel } from "@/hooks/store";
|
||||
import { useLabel } from "@/hooks/store/use-label";
|
||||
import { TLabelOperations } from "./root";
|
||||
|
||||
type TLabelListItem = {
|
||||
|
|
|
|||
|
|
@ -7,7 +7,9 @@ import { EIssueServiceType, IIssueLabel, TIssue, TIssueServiceType } from "@plan
|
|||
// components
|
||||
import { TOAST_TYPE, setToast } from "@plane/ui";
|
||||
// hooks
|
||||
import { useIssueDetail, useLabel, useProjectInbox } from "@/hooks/store";
|
||||
import { useIssueDetail } from "@/hooks/store/use-issue-detail"
|
||||
import { useLabel } from "@/hooks/store/use-label"
|
||||
import { useProjectInbox } from "@/hooks/store/use-project-inbox";
|
||||
// ui
|
||||
// types
|
||||
import { LabelList, IssueLabelSelectRoot } from "./";
|
||||
|
|
|
|||
|
|
@ -10,7 +10,8 @@ import { EUserProjectRoles, IIssueLabel } from "@plane/types";
|
|||
// helpers
|
||||
import { getTabIndex } from "@plane/utils";
|
||||
// hooks
|
||||
import { useLabel, useUserPermissions } from "@/hooks/store";
|
||||
import { useLabel } from "@/hooks/store/use-label"
|
||||
import { useUserPermissions } from "@/hooks/store/user";
|
||||
import { usePlatformOS } from "@/hooks/use-platform-os";
|
||||
//constants
|
||||
export interface IIssueLabelSelect {
|
||||
|
|
|
|||
|
|
@ -9,7 +9,7 @@ import type { TIssueLinkEditableFields, TIssueServiceType } from "@plane/types";
|
|||
// plane ui
|
||||
import { Button, Input, ModalCore } from "@plane/ui";
|
||||
// hooks
|
||||
import { useIssueDetail } from "@/hooks/store";
|
||||
import { useIssueDetail } from "@/hooks/store/use-issue-detail";
|
||||
// types
|
||||
import { TLinkOperations } from "./root";
|
||||
|
||||
|
|
|
|||
|
|
@ -10,7 +10,8 @@ import { getIconForLink, copyTextToClipboard, calculateTimeAgo } from "@plane/ut
|
|||
// types
|
||||
// helpers
|
||||
//
|
||||
import { useIssueDetail, useMember } from "@/hooks/store";
|
||||
import { useIssueDetail } from "@/hooks/store/use-issue-detail"
|
||||
import { useMember } from "@/hooks/store/use-member";
|
||||
import { usePlatformOS } from "@/hooks/use-platform-os";
|
||||
import { TLinkOperationsModal } from "./create-update-link-modal";
|
||||
|
||||
|
|
|
|||
|
|
@ -10,7 +10,7 @@ import { Tooltip, TOAST_TYPE, setToast, CustomMenu } from "@plane/ui";
|
|||
import { calculateTimeAgo, copyTextToClipboard } from "@plane/utils";
|
||||
// helpers
|
||||
// hooks
|
||||
import { useIssueDetail } from "@/hooks/store";
|
||||
import { useIssueDetail } from "@/hooks/store/use-issue-detail";
|
||||
import { usePlatformOS } from "@/hooks/use-platform-os";
|
||||
import { TLinkOperationsModal } from "./create-update-link-modal";
|
||||
|
||||
|
|
|
|||
|
|
@ -3,7 +3,7 @@ import { observer } from "mobx-react";
|
|||
// plane imports
|
||||
import { TIssueServiceType } from "@plane/types";
|
||||
// computed
|
||||
import { useIssueDetail } from "@/hooks/store";
|
||||
import { useIssueDetail } from "@/hooks/store/use-issue-detail";
|
||||
// local imports
|
||||
import { IssueLinkItem } from "./link-item";
|
||||
import { TLinkOperations } from "./root";
|
||||
|
|
|
|||
|
|
@ -1,7 +1,7 @@
|
|||
import { FC } from "react";
|
||||
import { observer } from "mobx-react";
|
||||
// computed
|
||||
import { useIssueDetail } from "@/hooks/store";
|
||||
import { useIssueDetail } from "@/hooks/store/use-issue-detail";
|
||||
import { IssueLinkDetail } from "./link-detail";
|
||||
// hooks
|
||||
import { TLinkOperations } from "./root";
|
||||
|
|
|
|||
|
|
@ -6,7 +6,7 @@ import { Plus } from "lucide-react";
|
|||
import { EIssueServiceType, TIssueLink } from "@plane/types";
|
||||
import { TOAST_TYPE, setToast } from "@plane/ui";
|
||||
// hooks
|
||||
import { useIssueDetail } from "@/hooks/store";
|
||||
import { useIssueDetail } from "@/hooks/store/use-issue-detail";
|
||||
// local imports
|
||||
import { IssueLinkCreateUpdateModal } from "./create-update-link-modal";
|
||||
import { IssueLinkList } from "./links";
|
||||
|
|
|
|||
|
|
@ -3,33 +3,33 @@
|
|||
import { useEffect, useRef, useState } from "react";
|
||||
import { observer } from "mobx-react";
|
||||
// plane imports
|
||||
import { EditorRefApi } from "@plane/editor";
|
||||
import type { EditorRefApi } from "@plane/editor";
|
||||
import { EIssueServiceType, TNameDescriptionLoader } from "@plane/types";
|
||||
// components
|
||||
import { getTextContent } from "@plane/utils";
|
||||
// components
|
||||
import { DescriptionVersionsRoot } from "@/components/core/description-versions";
|
||||
import {
|
||||
IssueActivity,
|
||||
NameDescriptionUpdateStatus,
|
||||
IssueReaction,
|
||||
IssueParentDetail,
|
||||
IssueTitleInput,
|
||||
IssueDescriptionInput,
|
||||
IssueDetailWidgets,
|
||||
PeekOverviewProperties,
|
||||
} from "@/components/issues";
|
||||
// helpers
|
||||
// hooks
|
||||
import { useIssueDetail, useMember, useProject, useUser } from "@/hooks/store";
|
||||
import { useIssueDetail } from "@/hooks/store/use-issue-detail";
|
||||
import { useMember } from "@/hooks/store/use-member";
|
||||
import { useProject } from "@/hooks/store/use-project";
|
||||
import { useUser } from "@/hooks/store/user";
|
||||
import useReloadConfirmations from "@/hooks/use-reload-confirmation";
|
||||
import useSize from "@/hooks/use-window-size";
|
||||
// plane web components
|
||||
import { DeDupeIssuePopoverRoot } from "@/plane-web/components/de-dupe";
|
||||
import { IssueTypeSwitcher } from "@/plane-web/components/issues";
|
||||
import { IssueTypeSwitcher } from "@/plane-web/components/issues/issue-details/issue-type-switcher";
|
||||
import { useDebouncedDuplicateIssues } from "@/plane-web/hooks/use-debounced-duplicate-issues";
|
||||
// services
|
||||
import { WorkItemVersionService } from "@/services/issue";
|
||||
// local imports
|
||||
import { IssueDescriptionInput } from "../description-input";
|
||||
import { IssueDetailWidgets } from "../issue-detail-widgets";
|
||||
import { NameDescriptionUpdateStatus } from "../issue-update-status";
|
||||
import { PeekOverviewProperties } from "../peek-overview/properties";
|
||||
import { IssueTitleInput } from "../title-input";
|
||||
import { IssueActivity } from "./issue-activity";
|
||||
import { IssueParentDetail } from "./parent";
|
||||
import { IssueReaction } from "./reactions";
|
||||
import { TIssueOperations } from "./root";
|
||||
// services init
|
||||
const workItemVersionService = new WorkItemVersionService();
|
||||
|
|
|
|||
|
|
@ -5,10 +5,10 @@ import { useTranslation } from "@plane/i18n";
|
|||
// hooks
|
||||
// components
|
||||
import { cn } from "@plane/utils";
|
||||
import { ModuleDropdown } from "@/components/dropdowns";
|
||||
import { ModuleDropdown } from "@/components/dropdowns/module/dropdown";
|
||||
// ui
|
||||
// helpers
|
||||
import { useIssueDetail } from "@/hooks/store";
|
||||
import { useIssueDetail } from "@/hooks/store/use-issue-detail";
|
||||
// types
|
||||
import type { TIssueOperations } from "./root";
|
||||
|
||||
|
|
|
|||
|
|
@ -4,19 +4,18 @@ import React from "react";
|
|||
import { observer } from "mobx-react";
|
||||
import Link from "next/link";
|
||||
import { Pencil, X } from "lucide-react";
|
||||
// plane imports
|
||||
import { useTranslation } from "@plane/i18n";
|
||||
// ui
|
||||
import { Tooltip } from "@plane/ui";
|
||||
// components
|
||||
import { cn } from "@plane/utils";
|
||||
import { ParentIssuesListModal } from "@/components/issues";
|
||||
// helpers
|
||||
// hooks
|
||||
import { useIssueDetail, useProject } from "@/hooks/store";
|
||||
import { useIssueDetail } from "@/hooks/store/use-issue-detail";
|
||||
import { useProject } from "@/hooks/store/use-project";
|
||||
import { usePlatformOS } from "@/hooks/use-platform-os";
|
||||
// plane web components
|
||||
import { IssueIdentifier } from "@/plane-web/components/issues";
|
||||
// types
|
||||
import { IssueIdentifier } from "@/plane-web/components/issues/issue-details/issue-identifier";
|
||||
// local imports
|
||||
import { ParentIssuesListModal } from "../parent-issues-list-modal";
|
||||
|
||||
type TIssueParentSelect = {
|
||||
className?: string;
|
||||
|
|
|
|||
|
|
@ -12,11 +12,13 @@ import { ControlLink, CustomMenu } from "@plane/ui";
|
|||
// helpers
|
||||
import { generateWorkItemLink } from "@plane/utils";
|
||||
// hooks
|
||||
import { useIssues, useProject, useProjectState } from "@/hooks/store";
|
||||
import { useIssues } from "@/hooks/store/use-issues";
|
||||
import { useProject } from "@/hooks/store/use-project";
|
||||
import { useProjectState } from "@/hooks/store/use-project-state";
|
||||
import useIssuePeekOverviewRedirection from "@/hooks/use-issue-peek-overview-redirection";
|
||||
import { usePlatformOS } from "@/hooks/use-platform-os";
|
||||
// plane web components
|
||||
import { IssueIdentifier } from "@/plane-web/components/issues";
|
||||
import { IssueIdentifier } from "@/plane-web/components/issues/issue-details/issue-identifier";
|
||||
// types
|
||||
import { TIssueOperations } from "../root";
|
||||
import { IssueParentSiblings } from "./siblings";
|
||||
|
|
|
|||
|
|
@ -8,9 +8,10 @@ import { CustomMenu } from "@plane/ui";
|
|||
// helpers
|
||||
import { generateWorkItemLink } from "@plane/utils";
|
||||
// hooks
|
||||
import { useIssueDetail, useProject } from "@/hooks/store";
|
||||
import { useIssueDetail } from "@/hooks/store/use-issue-detail";
|
||||
import { useProject } from "@/hooks/store/use-project";
|
||||
// plane web components
|
||||
import { IssueIdentifier } from "@/plane-web/components/issues";
|
||||
import { IssueIdentifier } from "@/plane-web/components/issues/issue-details/issue-identifier";
|
||||
|
||||
type TIssueParentSiblingItem = {
|
||||
workspaceSlug: string;
|
||||
|
|
|
|||
|
|
@ -4,7 +4,7 @@ import useSWR from "swr";
|
|||
import { TIssue } from "@plane/types";
|
||||
// components
|
||||
// hooks
|
||||
import { useIssueDetail } from "@/hooks/store";
|
||||
import { useIssueDetail } from "@/hooks/store/use-issue-detail";
|
||||
// types
|
||||
import { IssueParentSiblingItem } from "./sibling-item";
|
||||
|
||||
|
|
|
|||
|
|
@ -9,7 +9,8 @@ import { cn, formatTextList } from "@plane/utils";
|
|||
// helper
|
||||
import { renderEmoji } from "@/helpers/emoji.helper";
|
||||
// hooks
|
||||
import { useIssueDetail, useMember } from "@/hooks/store";
|
||||
import { useIssueDetail } from "@/hooks/store/use-issue-detail"
|
||||
import { useMember } from "@/hooks/store/use-member";
|
||||
// types
|
||||
import { ReactionSelector } from "./reaction-selector";
|
||||
|
||||
|
|
|
|||
|
|
@ -9,7 +9,8 @@ import { TOAST_TYPE, Tooltip, setToast } from "@plane/ui";
|
|||
import { cn, formatTextList } from "@plane/utils";
|
||||
// helpers
|
||||
import { renderEmoji } from "@/helpers/emoji.helper";
|
||||
import { useIssueDetail, useMember } from "@/hooks/store";
|
||||
import { useIssueDetail } from "@/hooks/store/use-issue-detail"
|
||||
import { useMember } from "@/hooks/store/use-member";
|
||||
// types
|
||||
import { ReactionSelector } from "./reaction-selector";
|
||||
|
||||
|
|
|
|||
|
|
@ -3,22 +3,22 @@
|
|||
import React from "react";
|
||||
import { observer } from "mobx-react";
|
||||
import Link from "next/link";
|
||||
import { CircleDot, CopyPlus, Pencil, X, XCircle } from "lucide-react";
|
||||
import { Pencil, X } from "lucide-react";
|
||||
// Plane
|
||||
import { ISearchIssueResponse } from "@plane/types";
|
||||
import { RelatedIcon, Tooltip, TOAST_TYPE, setToast } from "@plane/ui";
|
||||
import { Tooltip, TOAST_TYPE, setToast } from "@plane/ui";
|
||||
import { cn, generateWorkItemLink } from "@plane/utils";
|
||||
// components
|
||||
import { ExistingIssuesListModal } from "@/components/core";
|
||||
// helpers
|
||||
import { ExistingIssuesListModal } from "@/components/core/modals/existing-issues-list-modal";
|
||||
// hooks
|
||||
import { useIssueDetail, useIssues, useProject } from "@/hooks/store";
|
||||
import { useIssueDetail } from "@/hooks/store/use-issue-detail"
|
||||
import { useIssues } from "@/hooks/store/use-issues"
|
||||
import { useProject } from "@/hooks/store/use-project";
|
||||
import { usePlatformOS } from "@/hooks/use-platform-os";
|
||||
// Plane-web
|
||||
// Plane web imports
|
||||
import { useTimeLineRelationOptions } from "@/plane-web/components/relations";
|
||||
import { TIssueRelationTypes } from "@/plane-web/types";
|
||||
//
|
||||
import { TRelationObject } from "../issue-detail-widgets";
|
||||
import type { TIssueRelationTypes } from "@/plane-web/types";
|
||||
import type { TRelationObject } from "../issue-detail-widgets/relations";
|
||||
|
||||
type TIssueRelationSelect = {
|
||||
className?: string;
|
||||
|
|
|
|||
|
|
@ -2,24 +2,26 @@
|
|||
|
||||
import { FC, useMemo } from "react";
|
||||
import { observer } from "mobx-react";
|
||||
// types
|
||||
// plane imports
|
||||
import { EUserPermissions, EUserPermissionsLevel, WORK_ITEM_TRACKER_EVENTS } from "@plane/constants";
|
||||
import { useTranslation } from "@plane/i18n";
|
||||
import { EIssuesStoreType, TIssue } from "@plane/types";
|
||||
// ui
|
||||
import { TOAST_TYPE, setPromiseToast, setToast } from "@plane/ui";
|
||||
// components
|
||||
import { EmptyState } from "@/components/common";
|
||||
import { IssueDetailsSidebar, IssuePeekOverview } from "@/components/issues";
|
||||
// constants
|
||||
import { EmptyState } from "@/components/common/empty-state";
|
||||
// hooks
|
||||
import { captureError, captureSuccess } from "@/helpers/event-tracker.helper";
|
||||
import { useAppTheme, useIssueDetail, useIssues, useUserPermissions } from "@/hooks/store";
|
||||
import { useAppTheme } from "@/hooks/store/use-app-theme"
|
||||
import { useIssueDetail } from "@/hooks/store/use-issue-detail"
|
||||
import { useIssues } from "@/hooks/store/use-issues"
|
||||
import { useUserPermissions } from "@/hooks/store/user";
|
||||
import { useAppRouter } from "@/hooks/use-app-router";
|
||||
// images
|
||||
import emptyIssue from "@/public/empty-state/issue.svg";
|
||||
// local components
|
||||
import { IssuePeekOverview } from "../peek-overview";
|
||||
import { IssueMainContent } from "./main-content";
|
||||
import { IssueDetailsSidebar } from "./sidebar";
|
||||
|
||||
export type TIssueOperations = {
|
||||
fetch: (workspaceSlug: string, projectId: string, issueId: string, loader?: boolean) => Promise<void>;
|
||||
|
|
|
|||
|
|
@ -9,22 +9,26 @@ import { useTranslation } from "@plane/i18n";
|
|||
import { ContrastIcon, DiceIcon, DoubleCircleIcon } from "@plane/ui";
|
||||
import { cn, getDate, renderFormattedPayloadDate, shouldHighlightIssueDueDate } from "@plane/utils";
|
||||
// components
|
||||
import {
|
||||
DateDropdown,
|
||||
EstimateDropdown,
|
||||
MemberDropdown,
|
||||
PriorityDropdown,
|
||||
StateDropdown,
|
||||
} from "@/components/dropdowns";
|
||||
import { DateDropdown } from "@/components/dropdowns/date";
|
||||
import { EstimateDropdown } from "@/components/dropdowns/estimate";
|
||||
import { ButtonAvatars } from "@/components/dropdowns/member/avatar";
|
||||
import { IssueCycleSelect, IssueLabel, IssueModuleSelect } from "@/components/issues";
|
||||
// helpers
|
||||
import { MemberDropdown } from "@/components/dropdowns/member/dropdown";
|
||||
import { PriorityDropdown } from "@/components/dropdowns/priority";
|
||||
import { StateDropdown } from "@/components/dropdowns/state/dropdown";
|
||||
// hooks
|
||||
import { useProjectEstimates, useIssueDetail, useProject, useProjectState, useMember } from "@/hooks/store";
|
||||
import { useProjectEstimates } from "@/hooks/store/estimates";
|
||||
import { useIssueDetail } from "@/hooks/store/use-issue-detail";
|
||||
import { useMember } from "@/hooks/store/use-member";
|
||||
import { useProject } from "@/hooks/store/use-project";
|
||||
import { useProjectState } from "@/hooks/store/use-project-state";
|
||||
// plane web components
|
||||
import { IssueParentSelectRoot, IssueWorklogProperty } from "@/plane-web/components/issues";
|
||||
// components
|
||||
import { WorkItemAdditionalSidebarProperties } from "@/plane-web/components/issues/issue-details/additional-properties";
|
||||
import { IssueParentSelectRoot } from "@/plane-web/components/issues/issue-details/parent-select-root";
|
||||
import { IssueWorklogProperty } from "@/plane-web/components/issues/worklog/property";
|
||||
import { IssueCycleSelect } from "./cycle-select";
|
||||
import { IssueLabel } from "./label";
|
||||
import { IssueModuleSelect } from "./module-select";
|
||||
import type { TIssueOperations } from "./root";
|
||||
|
||||
type Props = {
|
||||
|
|
|
|||
|
|
@ -11,7 +11,8 @@ import { useTranslation } from "@plane/i18n";
|
|||
import { EIssueServiceType } from "@plane/types";
|
||||
import { Button, Loader, TOAST_TYPE, setToast } from "@plane/ui";
|
||||
// hooks
|
||||
import { useIssueDetail, useUserPermissions } from "@/hooks/store";
|
||||
import { useIssueDetail } from "@/hooks/store/use-issue-detail"
|
||||
import { useUserPermissions } from "@/hooks/store/user";
|
||||
|
||||
export type TIssueSubscription = {
|
||||
workspaceSlug: string;
|
||||
|
|
|
|||
|
|
@ -3,19 +3,20 @@
|
|||
import { FC, useCallback, useEffect } from "react";
|
||||
import { observer } from "mobx-react";
|
||||
import { useParams } from "next/navigation";
|
||||
// plane imports
|
||||
import { EIssueGroupByToServerOptions, EUserPermissions, EUserPermissionsLevel } from "@plane/constants";
|
||||
import { EIssuesStoreType, TGroupedIssues } from "@plane/types";
|
||||
// components
|
||||
import { TOAST_TYPE, setToast } from "@plane/ui";
|
||||
import { CalendarChart } from "@/components/issues";
|
||||
//constants
|
||||
// hooks
|
||||
import { useIssues, useCalendarView, useUserPermissions } from "@/hooks/store";
|
||||
import { useIssues } from "@/hooks/store/use-issues"
|
||||
import { useCalendarView } from "@/hooks/store/use-calendar-view"
|
||||
import { useUserPermissions } from "@/hooks/store/user";
|
||||
import { useIssueStoreType } from "@/hooks/use-issue-layout-store";
|
||||
import { useIssuesActions } from "@/hooks/use-issues-actions";
|
||||
// types
|
||||
import { IQuickActionProps } from "../list/list-view-types";
|
||||
import { handleDragDrop } from "./utils";
|
||||
import { CalendarChart } from "./calendar";
|
||||
|
||||
export type CalendarStoreType =
|
||||
| EIssuesStoreType.PROJECT
|
||||
|
|
|
|||
|
|
@ -23,13 +23,11 @@ import {
|
|||
// ui
|
||||
import { Spinner } from "@plane/ui";
|
||||
import { renderFormattedPayloadDate, cn } from "@plane/utils";
|
||||
// components
|
||||
import { CalendarHeader, CalendarIssueBlocks, CalendarWeekDays, CalendarWeekHeader } from "@/components/issues";
|
||||
// constants
|
||||
import { MONTHS_LIST } from "@/constants/calendar";
|
||||
// helpers
|
||||
// hooks
|
||||
import { useIssues } from "@/hooks/store";
|
||||
import { useIssues } from "@/hooks/store/use-issues";
|
||||
import useSize from "@/hooks/use-window-size";
|
||||
// store
|
||||
import { IProjectEpicsFilter } from "@/plane-web/store/issue/epic";
|
||||
|
|
@ -38,8 +36,13 @@ import { ICalendarStore } from "@/store/issue/issue_calendar_view.store";
|
|||
import { IModuleIssuesFilter } from "@/store/issue/module";
|
||||
import { IProjectIssuesFilter } from "@/store/issue/project";
|
||||
import { IProjectViewIssuesFilter } from "@/store/issue/project-views";
|
||||
// local imports
|
||||
import { IssueLayoutHOC } from "../issue-layout-HOC";
|
||||
import { TRenderQuickActions } from "../list/list-view-types";
|
||||
import { CalendarHeader } from "./header";
|
||||
import { CalendarIssueBlocks } from "./issue-blocks";
|
||||
import { CalendarWeekDays } from "./week-days";
|
||||
import { CalendarWeekHeader } from "./week-header";
|
||||
|
||||
type Props = {
|
||||
issuesFilterStore:
|
||||
|
|
|
|||
|
|
@ -11,7 +11,6 @@ import { TGroupedIssues, TIssue, TIssueMap, TPaginationData, ICalendarDate } fro
|
|||
import { TOAST_TYPE, setToast } from "@plane/ui";
|
||||
// components
|
||||
import { cn, renderFormattedPayloadDate } from "@plane/utils";
|
||||
import { CalendarIssueBlocks } from "@/components/issues/issue-layouts/calendar";
|
||||
import { highlightIssueOnDrop } from "@/components/issues/issue-layouts/utils";
|
||||
// helpers
|
||||
import { MONTHS_LIST } from "@/constants/calendar";
|
||||
|
|
@ -23,6 +22,7 @@ import { IModuleIssuesFilter } from "@/store/issue/module";
|
|||
import { IProjectIssuesFilter } from "@/store/issue/project";
|
||||
import { IProjectViewIssuesFilter } from "@/store/issue/project-views";
|
||||
import { TRenderQuickActions } from "../list/list-view-types";
|
||||
import { CalendarIssueBlocks } from "./issue-blocks";
|
||||
|
||||
type Props = {
|
||||
issuesFilterStore:
|
||||
|
|
|
|||
|
|
@ -8,7 +8,7 @@ import { Popover, Transition } from "@headlessui/react";
|
|||
// constants
|
||||
import { getDate } from "@plane/utils";
|
||||
import { MONTHS_LIST } from "@/constants/calendar";
|
||||
import { useCalendarView } from "@/hooks/store";
|
||||
import { useCalendarView } from "@/hooks/store/use-calendar-view";
|
||||
import { IProjectEpicsFilter } from "@/plane-web/store/issue/epic";
|
||||
import { ICycleIssuesFilter } from "@/store/issue/cycle";
|
||||
import { IModuleIssuesFilter } from "@/store/issue/module";
|
||||
|
|
|
|||
|
|
@ -22,7 +22,7 @@ import { ToggleSwitch } from "@plane/ui";
|
|||
// types
|
||||
// constants
|
||||
import { CALENDAR_LAYOUTS } from "@/constants/calendar";
|
||||
import { useCalendarView } from "@/hooks/store";
|
||||
import { useCalendarView } from "@/hooks/store/use-calendar-view";
|
||||
import useSize from "@/hooks/use-window-size";
|
||||
import { IProjectEpicsFilter } from "@/plane-web/store/issue/epic";
|
||||
import { ICycleIssuesFilter } from "@/store/issue/cycle";
|
||||
|
|
|
|||
|
|
@ -11,7 +11,6 @@ import {
|
|||
TIssueKanbanFilters,
|
||||
} from "@plane/types";
|
||||
import { Row } from "@plane/ui";
|
||||
import { CalendarMonthsDropdown, CalendarOptionsDropdown } from "@/components/issues";
|
||||
// icons
|
||||
import { useCalendarView } from "@/hooks/store/use-calendar-view";
|
||||
import { IProjectEpicsFilter } from "@/plane-web/store/issue/epic";
|
||||
|
|
@ -19,6 +18,7 @@ import { ICycleIssuesFilter } from "@/store/issue/cycle";
|
|||
import { IModuleIssuesFilter } from "@/store/issue/module";
|
||||
import { IProjectIssuesFilter } from "@/store/issue/project";
|
||||
import { IProjectViewIssuesFilter } from "@/store/issue/project-views";
|
||||
import { CalendarMonthsDropdown, CalendarOptionsDropdown } from "./dropdowns";
|
||||
|
||||
interface ICalendarHeader {
|
||||
issuesFilterStore:
|
||||
|
|
|
|||
|
|
@ -1,11 +0,0 @@
|
|||
export * from "./dropdowns";
|
||||
export * from "./roots";
|
||||
export * from "./calendar";
|
||||
export * from "./day-tile";
|
||||
export * from "./header";
|
||||
export * from "./issue-blocks";
|
||||
export * from "./issue-block-root";
|
||||
export * from "./issue-block";
|
||||
export * from "./week-days";
|
||||
export * from "./week-header";
|
||||
export * from "./quick-add-issue-actions";
|
||||
Some files were not shown because too many files have changed in this diff Show more
Loading…
Add table
Add a link
Reference in a new issue