diff options
author | 2021-08-10 01:24:25 +0100 | |
---|---|---|
committer | 2021-09-06 01:21:39 -0700 | |
commit | d321d8366b597e46ff8e3fc63d17622a9297505c (patch) | |
tree | 339775403be469fdc9c53c4f9484c8ba7c23811a /docs/src/components/Examples/Codebar.tsx | |
parent | e686c3c50469d18db93da7ce79ddcac8659c3166 (diff) | |
download | astro-d321d8366b597e46ff8e3fc63d17622a9297505c.tar.gz astro-d321d8366b597e46ff8e3fc63d17622a9297505c.tar.zst astro-d321d8366b597e46ff8e3fc63d17622a9297505c.zip |
Adds examples page
Diffstat (limited to 'docs/src/components/Examples/Codebar.tsx')
-rw-r--r-- | docs/src/components/Examples/Codebar.tsx | 43 |
1 files changed, 43 insertions, 0 deletions
diff --git a/docs/src/components/Examples/Codebar.tsx b/docs/src/components/Examples/Codebar.tsx new file mode 100644 index 000000000..f2bca6b8d --- /dev/null +++ b/docs/src/components/Examples/Codebar.tsx @@ -0,0 +1,43 @@ +import type { FunctionalComponent } from 'preact'; +import { h, Fragment } from 'preact'; +import{useState,useRef,useEffect} from 'preact/hooks' + +export type CodeBar ={ + content:string + command:string +} + +const CodeBar:FunctionalComponent=({content,command})=>{ + const [clicked,setClicked]=useState(false) + const [titleTxt,setTitleTxt] = useState("Copy Command to Clipboard") + useEffect(()=>{ + const timeout = setTimeout(()=>{ + setClicked(false) + setTitleTxt("Copy Command to Clipboard") + },1500) + return ()=> clearTimeout(timeout) + },[clicked]) + /** + * + */ + function onClick(e){ + setClicked(true) + setTitleTxt("Copied to Clipboard!") + const titleAttr= e.target + const clipboard = navigator.clipboard + return clipboard.writeText(`${command}`) + } + + return( + <div style="cursor:pointer;" onClick={onClick} title={titleTxt} > + <code > + {content} + </code> + </div> + ) +} + +export default CodeBar + + + |