Patsagorn Y.
2025-01-16 8cf3e3001f2cbd18da73fcc92ae5f4b76d3ecf21
quartz/components/scripts/clipboard.inline.ts
@@ -8,13 +8,15 @@
  for (let i = 0; i < els.length; i++) {
    const codeBlock = els[i].getElementsByTagName("code")[0]
    if (codeBlock) {
      const source = codeBlock.innerText.replace(/\n\n/g, "\n")
      const source = (
        codeBlock.dataset.clipboard ? JSON.parse(codeBlock.dataset.clipboard) : codeBlock.innerText
      ).replace(/\n\n/g, "\n")
      const button = document.createElement("button")
      button.className = "clipboard-button"
      button.type = "button"
      button.innerHTML = svgCopy
      button.ariaLabel = "Copy source"
      button.addEventListener("click", () => {
      function onClick() {
        navigator.clipboard.writeText(source).then(
          () => {
            button.blur()
@@ -26,7 +28,9 @@
          },
          (error) => console.error(error),
        )
      })
      }
      button.addEventListener("click", onClick)
      window.addCleanup(() => button.removeEventListener("click", onClick))
      els[i].prepend(button)
    }
  }