From 5c9acb1cb3bfe341378b91bbed344dd7202a00d7 Mon Sep 17 00:00:00 2001 From: MohamedBassem Date: Sun, 14 Apr 2024 01:39:30 +0300 Subject: fix(web): Fix some JS console errors in the preview page --- .../components/dashboard/bookmarks/TagsEditor.tsx | 8 +-- .../web/components/dashboard/preview/ActionBar.tsx | 6 +-- .../dashboard/preview/BookmarkPreview.tsx | 15 ++++-- apps/web/components/ui/action-button.tsx | 57 ++++++++++++---------- 4 files changed, 50 insertions(+), 36 deletions(-) (limited to 'apps/web/components') diff --git a/apps/web/components/dashboard/bookmarks/TagsEditor.tsx b/apps/web/components/dashboard/bookmarks/TagsEditor.tsx index c1a4cc70..ab7dd754 100644 --- a/apps/web/components/dashboard/bookmarks/TagsEditor.tsx +++ b/apps/web/components/dashboard/bookmarks/TagsEditor.tsx @@ -111,7 +111,7 @@ export function TagsEditor({ bookmark }: { bookmark: ZBookmark }) { })} styles={{ multiValueRemove: () => ({ - "background-color": "transparent", + backgroundColor: "transparent", }), valueContainer: (styles) => ({ ...styles, @@ -122,10 +122,10 @@ export function TagsEditor({ bookmark }: { bookmark: ZBookmark }) { }), control: (styles) => ({ ...styles, - "background-color": "hsl(var(--background))", - "border-color": "hsl(var(--border))", + backgroundColor: "hsl(var(--background))", + borderColor: "hsl(var(--border))", ":hover": { - "border-color": "hsl(var(--border))", + borderColor: "hsl(var(--border))", }, }), }} diff --git a/apps/web/components/dashboard/preview/ActionBar.tsx b/apps/web/components/dashboard/preview/ActionBar.tsx index 45d67b34..d2048cad 100644 --- a/apps/web/components/dashboard/preview/ActionBar.tsx +++ b/apps/web/components/dashboard/preview/ActionBar.tsx @@ -53,7 +53,7 @@ export default function ActionBar({ bookmark }: { bookmark: ZBookmark }) { return (
- + - + - + { + setFromNow(dayjs(createdAt).fromNow()); + setLocalCreatedAt(createdAt.toLocaleString()); + }, [createdAt]); return ( - {dayjs(createdAt).fromNow()} + {fromNow} - {createdAt.toLocaleString()} + {localCreatedAt} ); @@ -127,7 +136,7 @@ export default function BookmarkPreview({ ); return ( -
+
{isBookmarkStillCrawling(bookmark) ? : content}
diff --git a/apps/web/components/ui/action-button.tsx b/apps/web/components/ui/action-button.tsx index 5b862e07..e9cdc3c9 100644 --- a/apps/web/components/ui/action-button.tsx +++ b/apps/web/components/ui/action-button.tsx @@ -1,33 +1,38 @@ +import React from "react"; import { useClientConfig } from "@/lib/clientConfig"; import type { ButtonProps } from "./button"; import { Button } from "./button"; import LoadingSpinner from "./spinner"; -export function ActionButton({ - children, - loading, - spinner, - disabled, - ignoreDemoMode = false, - ...props -}: ButtonProps & { - loading: boolean; - spinner?: React.ReactNode; - ignoreDemoMode?: boolean; -}) { - const clientConfig = useClientConfig(); - spinner ||= ; - if (!ignoreDemoMode && clientConfig.demoMode) { - disabled = true; - } else if (disabled !== undefined) { - disabled ||= loading; - } else if (loading) { - disabled = true; +const ActionButton = React.forwardRef< + HTMLButtonElement, + ButtonProps & { + loading: boolean; + spinner?: React.ReactNode; + ignoreDemoMode?: boolean; } - return ( - - ); -} +>( + ( + { children, loading, spinner, disabled, ignoreDemoMode = false, ...props }, + ref, + ) => { + const clientConfig = useClientConfig(); + spinner ||= ; + if (!ignoreDemoMode && clientConfig.demoMode) { + disabled = true; + } else if (disabled !== undefined) { + disabled ||= loading; + } else if (loading) { + disabled = true; + } + return ( + + ); + }, +); +ActionButton.displayName = "ActionButton"; + +export { ActionButton }; -- cgit v1.2.3-70-g09d2