diff --git a/frontend/src/components/Emboldened.tsx b/frontend/src/components/Emboldened.tsx new file mode 100644 index 0000000..522b813 --- /dev/null +++ b/frontend/src/components/Emboldened.tsx @@ -0,0 +1,30 @@ +import { cn, type ClassValue } from "@/util"; + +type EmboldenedProps = { + children: string | number; + className?: ClassValue; + copyable?: boolean; +}; + +const Emboldened = ({ children, copyable }: EmboldenedProps) => { + function copyToClipboard() { + // Copy to clipboard + navigator.clipboard.writeText(children.toString()); + } + + return ( + + {children} + + ); +}; + +export default Emboldened; diff --git a/frontend/src/components/StatefulDemo.tsx b/frontend/src/components/StatefulDemo.tsx index c2030a7..308f993 100644 --- a/frontend/src/components/StatefulDemo.tsx +++ b/frontend/src/components/StatefulDemo.tsx @@ -1,4 +1,5 @@ import Badge from "@/components/Badge"; +import Emboldened from "@/components/Emboldened"; import { cn, plural, type ClassValue } from "@/util"; import { useState } from "preact/hooks"; @@ -32,9 +33,11 @@ const StatefulDemo = ({ class: className }: StatefulDemoProps) => {
{session != null ? ( <> - Your session is {session.id} - . You have{" "} - {session.downloads.length}{" "} + Your session is{" "} + {session.id}. You have{" "} + + {session.downloads.length} + {" "} known {plural("download", session.downloads.length)}. ) : null}