diff --git a/packages/editor/src/styles/editor.css b/packages/editor/src/styles/editor.css index 7c4737d3e6..53c9b89a94 100644 --- a/packages/editor/src/styles/editor.css +++ b/packages/editor/src/styles/editor.css @@ -79,6 +79,7 @@ -moz-appearance: textfield; } +/* Placeholder only for the first line in an empty editor. */ .ProseMirror p.is-editor-empty:first-child::before { content: attr(data-placeholder); float: left; @@ -87,6 +88,15 @@ height: 0; } +/* Display Placeholders on every new line. */ +.ProseMirror p.is-empty::before { + content: attr(data-placeholder); + float: left; + color: rgb(var(--color-text-400)); + pointer-events: none; + height: 0; +} + .ProseMirror li blockquote { margin-top: 10px; padding-inline-start: 1em; @@ -110,14 +120,6 @@ display: none; } -.ProseMirror .is-empty::before { - content: attr(data-placeholder); - float: left; - color: rgb(var(--color-text-400)); - pointer-events: none; - height: 0; -} - /* Custom image styles */ .ProseMirror img { transition: filter 0.1s ease-in-out; diff --git a/web/core/components/issues/issue-modal/form.tsx b/web/core/components/issues/issue-modal/form.tsx index e6a3f22194..5a496087de 100644 --- a/web/core/components/issues/issue-modal/form.tsx +++ b/web/core/components/issues/issue-modal/form.tsx @@ -25,7 +25,7 @@ import { getTabIndex } from "@/helpers/issue-modal.helper"; import { getChangedIssuefields } from "@/helpers/issue.helper"; // hooks import { useIssueModal } from "@/hooks/context/use-issue-modal"; -import { useIssueDetail, useProject } from "@/hooks/store"; +import { useIssueDetail, useProject, useProjectState } from "@/hooks/store"; import { useProjectIssueProperties } from "@/hooks/use-project-issue-properties"; // plane web components import { IssueAdditionalProperties, IssueTypeSelect } from "@/plane-web/components/issues/issue-modal"; @@ -89,6 +89,7 @@ export const IssueFormRoot: FC = observer((props) => { issue: { getIssueById }, } = useIssueDetail(); const { fetchCycles } = useProjectIssueProperties(); + const { getStateById } = useProjectState(); // form info const { formState: { errors, isDirty, isSubmitting, dirtyFields }, @@ -220,6 +221,8 @@ export const IssueFormRoot: FC = observer((props) => { const projectDetails = getProjectById(issue.project_id); if (!projectDetails) return; + const stateDetails = getStateById(issue.state_id); + setSelectedParentIssue({ id: issue.id, name: issue.name, @@ -227,8 +230,10 @@ export const IssueFormRoot: FC = observer((props) => { project__identifier: projectDetails.identifier, project__name: projectDetails.name, sequence_id: issue.sequence_id, + type_id: issue.type_id, + state__color: stateDetails?.color, } as ISearchIssueResponse); - }, [watch, getIssueById, getProjectById, selectedParentIssue]); + }, [watch, getIssueById, getProjectById, selectedParentIssue, getStateById]); // executing this useEffect when isDirty changes useEffect(() => {