Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
10 changes: 4 additions & 6 deletions src/app/dashboard/_components/DashboardArticleList.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -133,7 +133,7 @@ const DashboardArticleList = () => {
<div className="flex flex-col divide-y divide-dashed divide-border-color mt-2">
{feedInfiniteQuery.isFetching &&
Array.from({ length: 10 }).map((_, i) => (
<article key={i} className=" bg-muted h-20 animate-pulse" />
<article key={i} className=" bg-muted h-20 animate-pulse" suppressHydrationWarning />
))}

{feedInfiniteQuery.data?.pages.map((page) => {
Expand Down Expand Up @@ -207,11 +207,9 @@ const DashboardArticleList = () => {
</div> */}
</div>
<DropdownMenu>
<DropdownMenuTrigger>
<button className="flex items-center gap-2">
<p className="text-sm md:hidden">{_t("Actions")}</p>
<DotsHorizontalIcon className="h-5 w-5" />
</button>
<DropdownMenuTrigger className="flex items-center gap-2">
<p className="text-sm md:hidden">{_t("Actions")}</p>
<DotsHorizontalIcon className="h-5 w-5" />
</DropdownMenuTrigger>
<DropdownMenuContent>
<DropdownMenuItem asChild>
Expand Down
2 changes: 1 addition & 1 deletion src/app/dashboard/_components/DashboardScaffold.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -70,7 +70,7 @@ const DashboardScaffold: React.FC<
<div className="p-4 flex items-center gap-2 justify-between">
<TooltipProvider>
<Tooltip>
<TooltipTrigger>
<TooltipTrigger asChild>
<SidebarTrigger />
</TooltipTrigger>
<TooltipContent>
Expand Down
4 changes: 2 additions & 2 deletions src/app/dashboard/_components/MatrixReport.tsx
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,7 @@ const MatrixReport = () => {
<CardContent className="flex flex-col gap-2">
<p className="text-3xl font-semibold h-9">
{query.isFetching && (
<LoaderIcon className="animate-spin size-8 text-muted-foreground" />
<LoaderIcon className="animate-spin size-8 text-muted-foreground" suppressHydrationWarning />
)}
{query.data?.total_articles}
</p>
Expand All @@ -38,7 +38,7 @@ const MatrixReport = () => {
<CardContent className="flex flex-col gap-2">
<p className="text-3xl font-semibold h-9">
{query.isFetching && (
<LoaderIcon className="animate-spin size-8 text-muted-foreground" />
<LoaderIcon className="animate-spin size-8 text-muted-foreground" suppressHydrationWarning />
)}
{query.data?.total_comments}
</p>
Expand Down
44 changes: 38 additions & 6 deletions src/components/Editor/MarkdownEditorContent.tsx
Original file line number Diff line number Diff line change
@@ -1,6 +1,14 @@
"use client";

import { HeadingIcon, FontBoldIcon, FontItalicIcon, Link2Icon, UploadIcon } from "@radix-ui/react-icons";
import { useTranslation } from "@/i18n/use-translation";
import {
FontBoldIcon,
FontItalicIcon,
HeadingIcon,
Link2Icon,
UploadIcon,
} from "@radix-ui/react-icons";
import { Loader } from "lucide-react";
import React from "react";
import EditorCommandButton from "./EditorCommandButton";
import { useMarkdownEditor } from "./useMarkdownEditor";
Expand All @@ -10,7 +18,11 @@ interface MarkdownEditorContentProps {
onChange: (value: string) => void;
}

export function MarkdownEditorContent({ bodyRef, onChange }: MarkdownEditorContentProps) {
export function MarkdownEditorContent({
bodyRef,
onChange,
}: MarkdownEditorContentProps) {
const { _t } = useTranslation();
const editor = useMarkdownEditor({
ref: bodyRef,
onChange,
Expand Down Expand Up @@ -40,15 +52,35 @@ export function MarkdownEditorContent({ bodyRef, onChange }: MarkdownEditorConte
/>
<EditorCommandButton
onClick={() => editor?.executeCommand("upload-image")}
Icon={<UploadIcon />}
Icon={
editor?.isUploading ? (
<Loader className="w-4 h-4 animate-spin" />
) : (
<UploadIcon />
)
}
title="Upload Image (Ctrl/Cmd + U)"
isDisabled={editor?.isUploading}
/>

{editor?.isUploading && (
<div className="flex items-center gap-2 text-sm text-muted-foreground">
<Loader className="w-4 h-4 animate-spin" />
<span>{_t("Uploading image")}...</span>
</div>
)}
</div>
);

return (
<div className="flex flex-col justify-between md:items-center md:flex-row">
{renderEditorToolbar()}
<div className="flex flex-col justify-between">
<div className="flex flex-col md:flex-row md:items-center md:justify-between">
{renderEditorToolbar()}

<div className="text-xs text-muted-foreground mt-2 md:mt-0 md:ml-4">
{_t("Tip: Drag & drop or paste images directly into the editor")}
</div>
</div>
</div>
);
}
}
Loading
Loading