static / assets /ClipboardHistory-CLvZGDee.js
admin08077's picture
Upload 131 files
777dff7 verified
import{r,j as e}from"./react-_fH1j4AW.js";import{F as u}from"./index-Nqm_ElTk.js";import"./@braintree-9Zuj5s7N.js";import"./react-dom-B47xkeQg.js";import"./scheduler-DYLXRpC5.js";import"./mermaid-CwNlsT42.js";import"./dayjs-LlU9W_sF.js";import"./d3-transition-593SbTzI.js";import"./d3-timer-DdKHrDhs.js";import"./d3-dispatch-kxCwF96_.js";import"./d3-interpolate-CfLzPKWk.js";import"./d3-color-amxIadob.js";import"./d3-selection-C52G7wmG.js";import"./d3-ease-DRPgKoYJ.js";import"./d3-zoom-Dc8HCWOS.js";import"./dompurify-J5RlrwSC.js";import"./dagre-d3-es-CXvdFQqV.js";import"./lodash-es-CKQobiyk.js";import"./d3-shape-C6amFesj.js";import"./d3-path-CimkQT29.js";import"./d3-fetch-BOsq7VnW.js";import"./khroma-DUX6PT6k.js";import"./uuid-DhYbOkY1.js";import"./d3-scale-BchcX-lF.js";import"./internmap-BkD7Hj8s.js";import"./d3-array-DGRYoJHh.js";import"./d3-format-CzD4bSOQ.js";import"./d3-time-format-CUNN4Ell.js";import"./d3-time-6cSPyVSY.js";import"./d3-axis-DSWTncID.js";import"./elkjs-BS_sNva5.js";import"./cytoscape-Copgxxlq.js";import"./cytoscape-cose-bilkent-DNVwk4oY.js";import"./cose-base-HlRMd3jM.js";import"./layout-base-BVPXtQQC.js";import"./d3-sankey-DgqkLiUE.js";import"./d3-scale-chromatic-B-NsZVaP.js";import"./ts-dedent-DrFu-skq.js";import"./stylis-D5iaQeiq.js";import"./mdast-util-from-markdown-CLAsVoWb.js";import"./micromark-CTBPIv-_.js";import"./micromark-util-combine-extensions-Bka6Sc1c.js";import"./micromark-util-chunked-DrRIdSP-.js";import"./micromark-factory-space-x2vfxbz5.js";import"./micromark-util-character-Bcm1tP9o.js";import"./micromark-core-commonmark-AH8VCgT7.js";import"./micromark-util-classify-character-Cq7Fg3xE.js";import"./micromark-util-resolve-all-PQCKh0dx.js";import"./decode-named-character-reference-C3-224fz.js";import"./micromark-util-subtokenize-QwsxNXk2.js";import"./micromark-factory-destination-CypD_wgM.js";import"./micromark-factory-label-CRHH4ZHP.js";import"./micromark-factory-title-B7kCBvC9.js";import"./micromark-factory-whitespace-B322EA6O.js";import"./micromark-util-normalize-identifier-C9ANKk3v.js";import"./micromark-util-html-tag-name-DbKNfynz.js";import"./micromark-util-decode-numeric-character-reference-DRnCnno4.js";import"./micromark-util-decode-string-DJl8Y_PO.js";import"./unist-util-stringify-position-Ch_qCilz.js";import"./mdast-util-to-string-C_aolqmU.js";const wt=()=>{const[o,n]=r.useState([]),[a,i]=r.useState("prompt"),[l,p]=r.useState(""),m=r.useCallback(async()=>{if(!navigator.permissions){p("Clipboard API not supported in this browser."),i("denied");return}try{const t=await navigator.permissions.query({name:"clipboard-read"});i(t.state),t.onchange=()=>i(t.state)}catch{p("Clipboard API not supported or permission could not be queried."),i("denied")}},[]);r.useEffect(()=>{m()},[m]),r.useEffect(()=>{const t=async()=>{if(a==="granted")try{const s=await navigator.clipboard.readText();s&&(o.length===0||o[0].text!==s)&&n(x=>[{id:Date.now(),text:s},...x.slice(0,49)])}catch(s){console.error("Could not read from clipboard on focus",s)}};return window.addEventListener("focus",t),()=>{window.removeEventListener("focus",t)}},[a,o]);const c=t=>{navigator.clipboard.writeText(t)},d=async()=>{try{await navigator.clipboard.readText(),m()}catch{p("Permission was not granted."),i("denied")}};return e.jsxs("div",{className:"h-full flex flex-col p-4 sm:p-6 lg:p-8",children:[e.jsxs("header",{className:"mb-6",children:[e.jsxs("h1",{className:"text-3xl font-bold text-slate-100 flex items-center",children:[e.jsx(u,{}),e.jsx("span",{className:"ml-3",children:"Clipboard History"})]}),e.jsx("p",{className:"text-slate-400 mt-1",children:"View and reuse items you've recently copied to your clipboard. (Updates on window focus)"})]}),a!=="granted"?e.jsxs("div",{className:"flex-grow flex flex-col items-center justify-center bg-slate-800/50 rounded-lg p-8",children:[e.jsx("p",{className:"text-lg text-slate-300 mb-4",children:l||"This feature requires permission to read from your clipboard."}),a==="prompt"&&e.jsx("button",{onClick:d,className:"px-6 py-2 bg-cyan-500 text-slate-900 font-bold rounded-md hover:bg-cyan-400",children:"Grant Permission"})]}):e.jsx("div",{className:"flex-grow overflow-y-auto space-y-3 pr-2",children:o.length>0?o.map(t=>e.jsxs("div",{className:"bg-slate-800 p-3 rounded-md flex items-center justify-between gap-4",children:[e.jsx("pre",{className:"text-sm text-slate-300 truncate",children:t.text}),e.jsx("button",{onClick:()=>c(t.text),className:"text-xs bg-slate-700 hover:bg-slate-600 text-slate-200 px-3 py-1 rounded-md flex-shrink-0",children:"Copy"})]},t.id)):e.jsx("div",{className:"text-slate-500 h-full flex items-center justify-center",children:"Copy some text to start building your history..."})})]})};export{wt as ClipboardHistory};
//# sourceMappingURL=ClipboardHistory-CLvZGDee.js.map