From efeeb10746332d5b6e78ff0771eedc7e54e846a3 Mon Sep 17 00:00:00 2001 From: Pijus Kamandulis Date: Sun, 13 Oct 2024 17:18:12 +0300 Subject: [PATCH] Added ticket content with rich editor --- bun.lockb | Bin 163950 -> 199730 bytes package.json | 1 + src/components/Card.tsx | 24 ++++- src/components/Drawer.tsx | 2 +- src/components/HtmlEmbed.tsx | 72 +++++++++++++ src/components/RichEditor.tsx | 102 ++++++++++++++++++ .../forms/CreateEstimationSessionForm.tsx | 3 - src/components/icons/PencilIcon.tsx | 21 ++++ src/components/icons/index.ts | 3 + src/lib/context/estimation.tsx | 47 ++++++-- src/lib/context/estimationsList.tsx | 4 +- src/lib/types/entityModels.ts | 1 + src/lib/types/requestModels.ts | 10 ++ src/pages/Estimation/Estimation.tsx | 54 ++++++---- ...reateTicketForm.tsx => EditTicketForm.tsx} | 38 +++++-- .../Estimation/components/PlayerList.tsx | 10 ++ .../Estimation/components/TaskSidebar.tsx | 4 +- 17 files changed, 348 insertions(+), 48 deletions(-) create mode 100644 src/components/HtmlEmbed.tsx create mode 100644 src/components/RichEditor.tsx create mode 100644 src/components/icons/PencilIcon.tsx create mode 100644 src/components/icons/index.ts create mode 100644 src/lib/types/requestModels.ts rename src/pages/Estimation/components/{CreateTicketForm.tsx => EditTicketForm.tsx} (53%) diff --git a/bun.lockb b/bun.lockb index 5187839250ba22ae97d1ce66d84ce3d50505d397..31f7911fe224c701d3f51f63de51e8f946d5a68e 100755 GIT binary patch delta 55872 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ॾ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 void; + onEdit?: () => void; } -const Card: React.FC = ({ title, description, onClick }) => { +const Card: React.FC = ({ title, description, onClick, onEdit }) => { const className = classNames( 'p-4 border rounded-lg shadow-sm transition', { @@ -19,8 +21,22 @@ const Card: React.FC = ({ title, description, onClick }) => { return (
-

{title}

-

{description}

+
+

{title}

+ {onEdit && ( + + )} +
+ {description &&

{description}

}
); }; diff --git a/src/components/Drawer.tsx b/src/components/Drawer.tsx index 5d32b90..3a93a3d 100644 --- a/src/components/Drawer.tsx +++ b/src/components/Drawer.tsx @@ -32,7 +32,7 @@ const Drawer: React.FC = ({ isOpen, onClose, children }) => {
= ({ body, className }) => { + if (!body) { + return null; + } + + const styles = ` + body { + font-family: Inter, system-ui, Avenir, Helvetica, Arial, sans-serif; + line-height: 1.5; + font-weight: 400; + + color-scheme: light dark; + color: rgba(255, 255, 255, 0.87); + background-color: #242424; + + font-synthesis: none; + text-rendering: optimizeLegibility; + -webkit-font-smoothing: antialiased; + -moz-osx-font-smoothing: grayscale; + + overflow-y: hidden; + } + + @media (prefers-color-scheme: light) { + body { + color: #213547; + background-color: #ffffff; + } + } + + html:not(.x),body:not(.x){height:auto!important} + p:first-child{margin-top:0;} + p:last-child{margin-bottom:0;} + a[href]{color: #3781B8;text-decoration:none;} + a[href]:hover{text-decoration:underline;} + blockquote[type=cite] {margin:0 0 0 .8ex;border-left: 1px #ccc solid;padding-left: 1ex;} + img { max-width: 100%; } + ul, ol { padding: 0; margin: 0 0 10px 25px; } + ul { list-style-type: disc; }`; + + const cnt = ` + + + + + + + ${body} + `; + + const props = { + csp: "script-src 'none'", + }; + + return ( +