From b7605f21666ff9bb82dcc17650b072c5abeff081 Mon Sep 17 00:00:00 2001 From: Ryan Feigenbaum <48868107+royalfig@users.noreply.github.com> Date: Tue, 4 Jun 2024 12:50:40 -0400 Subject: [PATCH] chore: Remove unused files and update share-button component --- .../cache/deps/@royalfig_share-button.js | 4 +- .../cache/deps/@royalfig_share-button.js.map | 2 +- docs/.vitepress/cache/deps/@theme_index.js | 258 ------------------ .../.vitepress/cache/deps/@theme_index.js.map | 7 - docs/.vitepress/cache/deps/_metadata.json | 26 +- docs/.vitepress/config.mts | 111 +++----- docs/.vitepress/theme/custom.css | 52 ++++ docs/.vitepress/theme/index.ts | 7 + docs/api-examples.md | 49 ---- docs/basics.md | 27 +- docs/customization/attributes.md | 148 +++++++++- docs/customization/dark-mode.md | 28 +- docs/examples/atomic.md | 25 -- docs/examples/color.md | 46 ---- docs/examples/icon.md | 5 - docs/examples/networks.md | 40 --- docs/examples/text.md | 36 --- docs/galaxy.avif | Bin 0 -> 97215 bytes docs/hero.png | Bin 0 -> 356065 bytes docs/icon.avif | Bin 0 -> 4460 bytes docs/index.md | 19 +- docs/install.md | 43 ++- docs/markdown-examples.md | 85 ------ docs/public/favicon.ico | Bin 0 -> 1150 bytes index.html | 1 + src/main.ts | 23 +- src/style.css | 9 - src/user-styles.ts | 11 +- 28 files changed, 341 insertions(+), 721 deletions(-) delete mode 100644 docs/.vitepress/cache/deps/@theme_index.js delete mode 100644 docs/.vitepress/cache/deps/@theme_index.js.map create mode 100644 docs/.vitepress/theme/custom.css create mode 100644 docs/.vitepress/theme/index.ts delete mode 100644 docs/api-examples.md delete mode 100644 docs/examples/atomic.md delete mode 100644 docs/examples/color.md delete mode 100644 docs/examples/icon.md delete mode 100644 docs/examples/networks.md delete mode 100644 docs/examples/text.md create mode 100644 docs/galaxy.avif create mode 100644 docs/hero.png create mode 100644 docs/icon.avif delete mode 100644 docs/markdown-examples.md create mode 100644 docs/public/favicon.ico diff --git a/docs/.vitepress/cache/deps/@royalfig_share-button.js b/docs/.vitepress/cache/deps/@royalfig_share-button.js index 79d2cce..294c5df 100644 --- a/docs/.vitepress/cache/deps/@royalfig_share-button.js +++ b/docs/.vitepress/cache/deps/@royalfig_share-button.js @@ -2,7 +2,7 @@ var S = Object.defineProperty; var V = (n, o, e) => o in n ? S(n, o, { enumerable: true, configurable: true, writable: true, value: e }) : n[o] = e; var m = (n, o, e) => (V(n, typeof o != "symbol" ? o + "" : o, e), e); -var k = ".wrapper{--color-popover-bg: hsl(242deg 55.5% 2.74%);--color-popover-text: hsl(242deg 9.58% 98%);--color-button-bg: hsl(242deg 9.58% 98%);--color-button-text: hsl(242deg 55.5% 2.74%);--color-copy-success: hsl(120deg 99% 43%)}"; +var k = ".wrapper{--color-popover-bg: hsl(242deg 55.5% 2.74%);--color-popover-text: hsl(242deg 9.58% 98%);--color-button-bg: hsl(242deg 9.58% 98%);--color-button-text: hsl(242deg 55.5% 2.74%);--color-green: hsl(120deg 99% 43%)}"; function A(n) { let o = n.getAttribute("dark-mode"); if (o ?? (o = "auto"), o === "auto") @@ -136,7 +136,7 @@ function I({ const x = document.createElement("div"); return x.classList.add("triangle-down"), r.append(x), t ? u : r; } -var z = ':host{font-size:16px;font-size:max(16px,clamp(.875rem,.85rem + .125vw,1rem))}.wrapper{--color-popover-border: hsl(0deg 0 100% / 7.5%);--color-popover-bg: hsl(242deg 9.58% 98%);--color-popover-text: hsl(242deg 55.5% 2.74%);--color-button-bg: hsl(242deg 55.5% 2.74%);--color-button-text: hsl(242deg 9.58% 98%);--border-radius-lg: 8px;--border-radius-md: 5px;--border-radius-sm: 2.5px;--border-radius-pill: 9999px;--padding-button: .375em 1em;--padding-box: 1em;--gap-sm: .5em;--gap-md: .75em;--gap-lg: 2em;--gap-icon: .5rem;--font-sm: max(15px, .875em);--font-lg: max(18px, 1.05em);--box-shadow: inset 0 0 .5px 1px hsl(0deg 0% 100% / 7.5%), 0 0 0 1px hsl(0deg 0% 0% / 5%), 0 .3px .4px hsl(0deg 0% 0% / 2%), 0 .9px 1.5px hsl(0deg 0% 0% / 4.5%), 0 3.5px 6px hsl(0deg 0% 0% / 9%);--filter: drop-shadow(0 0 .5px hsl(0deg 0 100% / 7.5%)) drop-shadow(0 0 1px rgb(0 0 0 / 5%)) drop-shadow(0 .3px .4px rgb(0 0 0 / 2%)) drop-shadow(0 .9px 1.5px rgb(0 0 0 / 4.5%)) drop-shadow(0 3.5px 6px rgb(0 0 0 / 9%));--color-copy-success: green;--aspect-ratio: 1.65 / 1;--triangle: 20px}button{display:inline-flex;gap:var(--gap-icon);align-items:center;justify-content:center;padding:var(--padding-button);font-family:inherit;font-size:1em;line-height:1.5;color:var(--color-button-text);text-align:center;white-space:nowrap;vertical-align:middle;cursor:pointer;background-color:var(--color-button-bg);border:none;border-radius:var(--border-radius-pill);transition:filter .2s ease-out}button:hover:not(.copy-button){filter:brightness(1.2)}button svg{display:inline-block;width:1.15em;height:1.15em;fill:currentcolor}[aria-label=Share] svg{margin-inline-end:0;line-height:1}[popover]{opacity:0;transition:opacity .1s ease-in,scale .1s ease-in}:popover-open,.popover-clone{position:absolute;max-width:min(100% - 16px,31.25em);height:fit-content;padding:0;padding-block:var(--triangle);margin:0;font-family:inherit;color:var(--color-popover-text);background-color:transparent;filter:var(--filter);border:none;opacity:1;transition:opacity .1s ease-out,scale .1s ease-out}.popover-clone{position:fixed;width:fit-content;height:fit-content}.popover-inner{position:relative}.social-media-container{display:flex;flex-direction:column;padding:.75rem;background-color:var(--color-popover-bg);border:1px solid var(--color-popover-border);border-radius:var(--border-radius-lg)}:where(.triangle-up,.triangle-down){position:absolute;left:50%;display:none;height:20px;aspect-ratio:var(--aspect-ratio);clip-path:polygon(50% 0%,0 100%,100% 100%);background-color:var(--color-popover-border);translate:-50% -1.5px}.triangle-down{clip-path:polygon(100% 0%,0% 0,50% 100%)}.triangle-down:after{position:absolute;top:0;right:0;bottom:0;left:0;z-index:2;height:var(--triangle);aspect-ratio:var(--aspect-ratio);clip-path:polygon(100% 0%,0% 0,50% 100%);content:"";background-color:var(--color-popover-bg);translate:0 -1px}.triangle-up{translate:-50% calc(-100% + 1.5px)}.triangle-up:after{position:absolute;top:0;right:0;bottom:0;left:0;z-index:2;height:var(--triangle);aspect-ratio:var(--aspect-ratio);clip-path:polygon(50% 0%,0 100%,100% 100%);content:"";background-color:var(--color-popover-bg);translate:0 1px}.down .triangle-down,.up .triangle-up{display:block}.left-adjust :where(.triangle-down,.triangle-up){left:25%}.right-adjust :where(.triangle-down,.triangle-up){left:75%}.social-media{display:flex;flex:1;gap:var(--gap-md);align-items:center;justify-content:flex-start;min-width:7em;padding:1em .5em;font-size:1em;font-weight:400;line-height:1.25em;color:inherit;text-decoration:none;background:none;border-radius:var(--border-radius-lg)}.social-media:last-child{border-bottom-right-radius:var(--border-radius-lg);border-bottom-left-radius:var(--border-radius-lg)}.social-media svg{display:inline-block;width:max(22px,1.25em);height:max(22px,1.25em);line-height:1.25em;fill:currentcolor;transition:color .3s ease-out}.x:hover svg{color:#1da1f2}.facebook:hover svg{color:#1877f2}.linkedin:hover svg{color:#0a66c2}.telegram:hover svg{color:#229ed9}.whatsapp:hover svg{color:#25d366}:is(.email,.copy-button):hover svg{opacity:.8}.copy-button{background:none}.copy-button:hover{outline:none}.copy-button[disabled]{font-weight:700;color:var(--color-copy-success)}@media (width >=48rem){.social-media{min-width:9em}}.atomic{display:flex;flex-flow:row wrap;gap:var(--gap-sm);justify-content:space-between;background-color:transparent}.atomic .social-media{flex:0;width:min-content;min-width:min-content}.atomic .social-media svg{width:2em;height:2em}'; +var z = ':host{font-size:16px;font-size:max(16px,clamp(.875rem,.85rem + .125vw,1rem))}.wrapper{--color-popover-border: hsl(0deg 0 100% / 7.5%);--color-popover-bg: hsl(242deg 9.58% 98%);--color-popover-text: hsl(242deg 55.5% 2.74%);--color-button-bg: hsl(242deg 55.5% 2.74%);--color-button-text: hsl(242deg 9.58% 98%);--border-radius-lg: 8px;--border-radius-md: 5px;--border-radius-sm: 2.5px;--border-radius-pill: 9999px;--padding-button: .375em 1em;--padding-box: 1em;--gap-sm: .5em;--gap-md: .75em;--gap-lg: 2em;--gap-icon: .5rem;--font-sm: max(15px, .875em);--font-lg: max(18px, 1.05em);--box-shadow: inset 0 0 .5px 1px hsl(0deg 0% 100% / 7.5%), 0 0 0 1px hsl(0deg 0% 0% / 5%), 0 .3px .4px hsl(0deg 0% 0% / 2%), 0 .9px 1.5px hsl(0deg 0% 0% / 4.5%), 0 3.5px 6px hsl(0deg 0% 0% / 9%);--filter: drop-shadow(0 0 .5px hsl(0deg 0 100% / 7.5%)) drop-shadow(0 0 1px rgb(0 0 0 / 5%)) drop-shadow(0 .3px .4px rgb(0 0 0 / 2%)) drop-shadow(0 .9px 1.5px rgb(0 0 0 / 4.5%)) drop-shadow(0 3.5px 6px rgb(0 0 0 / 9%));--color-green: green;--aspect-ratio: 1.65 / 1;--triangle: 20px}button{display:inline-flex;gap:var(--gap-icon);align-items:center;justify-content:center;padding:var(--padding-button);font-family:inherit;font-size:1em;line-height:1.5;color:var(--color-button-text);text-align:center;white-space:nowrap;vertical-align:middle;cursor:pointer;background-color:var(--color-button-bg);border:none;border-radius:var(--border-radius-pill);transition:filter .2s ease-out}button:hover:not(.copy-button){filter:brightness(1.2)}button svg{display:inline-block;width:1.15em;height:1.15em;fill:currentcolor}[aria-label=Share] svg{margin-inline-end:0;line-height:1}[popover]{opacity:0;transition:opacity .1s ease-in,scale .1s ease-in}:popover-open,.popover-clone{position:absolute;max-width:min(100% - 16px,31.25em);height:fit-content;padding:0;padding-block:var(--triangle);margin:0;font-family:inherit;color:var(--color-popover-text);background-color:transparent;filter:var(--filter);border:none;opacity:1;transition:opacity .1s ease-out,scale .1s ease-out}.popover-clone{position:fixed;width:fit-content;height:fit-content}.popover-inner{position:relative}.social-media-container{display:flex;flex-direction:column;padding:.75rem;background-color:var(--color-popover-bg);border:1px solid var(--color-popover-border);border-radius:var(--border-radius-lg)}:where(.triangle-up,.triangle-down){position:absolute;left:50%;display:none;height:20px;aspect-ratio:var(--aspect-ratio);clip-path:polygon(50% 0%,0 100%,100% 100%);background-color:var(--color-popover-border);translate:-50% -1.5px}.triangle-down{clip-path:polygon(100% 0%,0% 0,50% 100%)}.triangle-down:after{position:absolute;top:0;right:0;bottom:0;left:0;z-index:2;height:var(--triangle);aspect-ratio:var(--aspect-ratio);clip-path:polygon(100% 0%,0% 0,50% 100%);content:"";background-color:var(--color-popover-bg);translate:0 -1px}.triangle-up{translate:-50% calc(-100% + 1.5px)}.triangle-up:after{position:absolute;top:0;right:0;bottom:0;left:0;z-index:2;height:var(--triangle);aspect-ratio:var(--aspect-ratio);clip-path:polygon(50% 0%,0 100%,100% 100%);content:"";background-color:var(--color-popover-bg);translate:0 1px}.down .triangle-down,.up .triangle-up{display:block}.left-adjust :where(.triangle-down,.triangle-up){left:25%}.right-adjust :where(.triangle-down,.triangle-up){left:75%}.social-media{display:flex;flex:1;gap:var(--gap-md);align-items:center;justify-content:flex-start;min-width:7em;padding:1em .5em;font-size:1em;font-weight:400;line-height:1.25em;color:inherit;text-decoration:none;background:none;border-radius:var(--border-radius-lg)}.social-media:last-child{border-bottom-right-radius:var(--border-radius-lg);border-bottom-left-radius:var(--border-radius-lg)}.social-media svg{display:inline-block;width:max(22px,1.25em);height:max(22px,1.25em);line-height:1.25em;fill:currentcolor;transition:color .3s ease-out}.x:hover svg{color:#1da1f2}.facebook:hover svg{color:#1877f2}.linkedin:hover svg{color:#0a66c2}.telegram:hover svg{color:#229ed9}.whatsapp:hover svg{color:#25d366}:is(.email,.copy-button):hover svg{opacity:.8}.copy-button{background:none}.copy-button:hover{outline:none}.copy-button[disabled]{font-weight:700;color:var(--color-green)}@media (width >=48rem){.social-media{min-width:9em}}.atomic{display:flex;flex-flow:row wrap;gap:var(--gap-sm);justify-content:space-between;background-color:transparent}.atomic .social-media{flex:0;width:min-content;min-width:min-content}.atomic .social-media svg{width:2em;height:2em}'; var j = ".share-button{display:flex;gap:8px;align-items:center;min-width:60px;height:60px;padding:0 16px;font-size:16px;box-shadow:#0000003d 0 8px 16px -2px}.share-button svg{width:24px;height:24px;margin-inline-end:0}"; function N(n) { const o = "28px", e = `position: fixed; bottom: ${o};`; diff --git a/docs/.vitepress/cache/deps/@royalfig_share-button.js.map b/docs/.vitepress/cache/deps/@royalfig_share-button.js.map index e9bb380..833e4e9 100644 --- a/docs/.vitepress/cache/deps/@royalfig_share-button.js.map +++ b/docs/.vitepress/cache/deps/@royalfig_share-button.js.map @@ -1,7 +1,7 @@ { "version": 3, "sources": ["../../../node_modules/@royalfig/share-button/dist/share-button.es.js"], - "sourcesContent": ["var S = Object.defineProperty;\nvar V = (n, o, e) => o in n ? S(n, o, { enumerable: !0, configurable: !0, writable: !0, value: e }) : n[o] = e;\nvar m = (n, o, e) => (V(n, typeof o != \"symbol\" ? o + \"\" : o, e), e);\nconst k = \".wrapper{--color-popover-bg: hsl(242deg 55.5% 2.74%);--color-popover-text: hsl(242deg 9.58% 98%);--color-button-bg: hsl(242deg 9.58% 98%);--color-button-text: hsl(242deg 55.5% 2.74%);--color-copy-success: hsl(120deg 99% 43%)}\";\nfunction A(n) {\n let o = n.getAttribute(\"dark-mode\");\n if (o ?? (o = \"auto\"), o === \"auto\")\n return `@media (prefers-color-scheme: dark) {\n\t\t\t${k}\n\t\t}`;\n if (o === \"false\")\n return \"\";\n if (o === \"true\")\n return k;\n}\nconst M = {\n 1: '',\n 2: '',\n 3: '',\n 4: '',\n 5: '',\n 6: '',\n 7: ''\n}, $ = '', L = '', f = '', B = '', E = '', Z = '', T = '', P = '';\nfunction I({\n url: n,\n title: o,\n networks: e,\n isAtomic: t\n}) {\n function l(p, h, v) {\n let i = v.replace(/{{url}}/g, n);\n o && (i = i.replace(/{{text}}/g, o));\n const a = document.createElement(\"a\");\n return a.classList.add(\"social-media\", h.toLowerCase()), a.href = encodeURI(i), a.setAttribute(\"aria-label\", `Share on ${h}`), a.setAttribute(\"target\", \"_blank\"), a.setAttribute(\"rel\", \"noopener noreferrer\"), a.setAttribute(\"part\", \"share-link\"), a.innerHTML = `${p} ${t ? \"\" : ` ${h}`}`, a;\n }\n const c = /* @__PURE__ */ new Map([\n [\n \"facebook\",\n {\n html: l(\n E,\n \"Facebook\",\n \"http://www.facebook.com/sharer.php?u={{url}}\"\n )\n }\n ],\n [\n \"x\",\n {\n html: l(\n $,\n \"X\",\n \"https://twitter.com/intent/tweet?url={{url}}&text={{text}}\"\n )\n }\n ],\n [\n \"linkedin\",\n {\n html: l(\n Z,\n \"LinkedIn\",\n \"https://www.linkedin.com/feed/?shareActive=true&text={{text}} {{url}}\"\n )\n }\n ],\n [\n \"email\",\n {\n html: l(\n T,\n \"Email\",\n \"mailto:?subject=Check out {{text}}&body={{text}} {{url}}\"\n )\n }\n ],\n [\n \"whatsapp\",\n {\n html: l(\n P,\n \"WhatsApp\",\n \"https://api.whatsapp.com/send?text={{text}} {{url}}\"\n )\n }\n ],\n [\n \"telegram\",\n {\n html: l(\n B,\n \"Telegram\",\n \"https://t.me/share/url?url={{url}}&text={{text}}\"\n )\n }\n ],\n [\"copy\", { html: l(L, \"copy\", \"\") }]\n ]), r = document.createElement(\"div\");\n r.classList.add(\"popover-inner\"), r.setAttribute(\"part\", \"popover-inner\");\n const C = e.split(\",\").map((p) => {\n const h = p.trim().toLowerCase();\n if (h === \"copy\") {\n const i = document.createElement(\"button\");\n i.classList.add(\"social-media\", \"copy-button\"), i.setAttribute(\"aria-label\", \"Copy link\"), i.setAttribute(\"part\", \"share-link\");\n const a = `${L} Copy link`, w = L;\n return i.innerHTML = t ? w : a, i.addEventListener(\"click\", async (d) => {\n if (!d.currentTarget) {\n console.error(\"Error copying. Element not found\");\n return;\n }\n try {\n await navigator.clipboard.writeText(window.location.href), i.disabled = !0, t ? (console.log(f), i.innerHTML = f) : i.innerHTML = `${f} Copied!`, setTimeout(() => {\n i.disabled = !1, i.innerHTML = t ? w : a;\n }, 5e3);\n } catch {\n console.log(\"[Share Button] We could not copy this\");\n }\n }), i;\n }\n const v = c.get(h);\n return v ? v.html : \"\";\n }), u = document.createElement(\"div\");\n t && u.classList.add(\"atomic\"), u.classList.add(\"social-media-container\"), u.append(...C), r.append(u);\n const g = document.createElement(\"div\");\n g.classList.add(\"triangle-up\"), r.prepend(g);\n const x = document.createElement(\"div\");\n return x.classList.add(\"triangle-down\"), r.append(x), t ? u : r;\n}\nconst z = ':host{font-size:16px;font-size:max(16px,clamp(.875rem,.85rem + .125vw,1rem))}.wrapper{--color-popover-border: hsl(0deg 0 100% / 7.5%);--color-popover-bg: hsl(242deg 9.58% 98%);--color-popover-text: hsl(242deg 55.5% 2.74%);--color-button-bg: hsl(242deg 55.5% 2.74%);--color-button-text: hsl(242deg 9.58% 98%);--border-radius-lg: 8px;--border-radius-md: 5px;--border-radius-sm: 2.5px;--border-radius-pill: 9999px;--padding-button: .375em 1em;--padding-box: 1em;--gap-sm: .5em;--gap-md: .75em;--gap-lg: 2em;--gap-icon: .5rem;--font-sm: max(15px, .875em);--font-lg: max(18px, 1.05em);--box-shadow: inset 0 0 .5px 1px hsl(0deg 0% 100% / 7.5%), 0 0 0 1px hsl(0deg 0% 0% / 5%), 0 .3px .4px hsl(0deg 0% 0% / 2%), 0 .9px 1.5px hsl(0deg 0% 0% / 4.5%), 0 3.5px 6px hsl(0deg 0% 0% / 9%);--filter: drop-shadow(0 0 .5px hsl(0deg 0 100% / 7.5%)) drop-shadow(0 0 1px rgb(0 0 0 / 5%)) drop-shadow(0 .3px .4px rgb(0 0 0 / 2%)) drop-shadow(0 .9px 1.5px rgb(0 0 0 / 4.5%)) drop-shadow(0 3.5px 6px rgb(0 0 0 / 9%));--color-copy-success: green;--aspect-ratio: 1.65 / 1;--triangle: 20px}button{display:inline-flex;gap:var(--gap-icon);align-items:center;justify-content:center;padding:var(--padding-button);font-family:inherit;font-size:1em;line-height:1.5;color:var(--color-button-text);text-align:center;white-space:nowrap;vertical-align:middle;cursor:pointer;background-color:var(--color-button-bg);border:none;border-radius:var(--border-radius-pill);transition:filter .2s ease-out}button:hover:not(.copy-button){filter:brightness(1.2)}button svg{display:inline-block;width:1.15em;height:1.15em;fill:currentcolor}[aria-label=Share] svg{margin-inline-end:0;line-height:1}[popover]{opacity:0;transition:opacity .1s ease-in,scale .1s ease-in}:popover-open,.popover-clone{position:absolute;max-width:min(100% - 16px,31.25em);height:fit-content;padding:0;padding-block:var(--triangle);margin:0;font-family:inherit;color:var(--color-popover-text);background-color:transparent;filter:var(--filter);border:none;opacity:1;transition:opacity .1s ease-out,scale .1s ease-out}.popover-clone{position:fixed;width:fit-content;height:fit-content}.popover-inner{position:relative}.social-media-container{display:flex;flex-direction:column;padding:.75rem;background-color:var(--color-popover-bg);border:1px solid var(--color-popover-border);border-radius:var(--border-radius-lg)}:where(.triangle-up,.triangle-down){position:absolute;left:50%;display:none;height:20px;aspect-ratio:var(--aspect-ratio);clip-path:polygon(50% 0%,0 100%,100% 100%);background-color:var(--color-popover-border);translate:-50% -1.5px}.triangle-down{clip-path:polygon(100% 0%,0% 0,50% 100%)}.triangle-down:after{position:absolute;top:0;right:0;bottom:0;left:0;z-index:2;height:var(--triangle);aspect-ratio:var(--aspect-ratio);clip-path:polygon(100% 0%,0% 0,50% 100%);content:\"\";background-color:var(--color-popover-bg);translate:0 -1px}.triangle-up{translate:-50% calc(-100% + 1.5px)}.triangle-up:after{position:absolute;top:0;right:0;bottom:0;left:0;z-index:2;height:var(--triangle);aspect-ratio:var(--aspect-ratio);clip-path:polygon(50% 0%,0 100%,100% 100%);content:\"\";background-color:var(--color-popover-bg);translate:0 1px}.down .triangle-down,.up .triangle-up{display:block}.left-adjust :where(.triangle-down,.triangle-up){left:25%}.right-adjust :where(.triangle-down,.triangle-up){left:75%}.social-media{display:flex;flex:1;gap:var(--gap-md);align-items:center;justify-content:flex-start;min-width:7em;padding:1em .5em;font-size:1em;font-weight:400;line-height:1.25em;color:inherit;text-decoration:none;background:none;border-radius:var(--border-radius-lg)}.social-media:last-child{border-bottom-right-radius:var(--border-radius-lg);border-bottom-left-radius:var(--border-radius-lg)}.social-media svg{display:inline-block;width:max(22px,1.25em);height:max(22px,1.25em);line-height:1.25em;fill:currentcolor;transition:color .3s ease-out}.x:hover svg{color:#1da1f2}.facebook:hover svg{color:#1877f2}.linkedin:hover svg{color:#0a66c2}.telegram:hover svg{color:#229ed9}.whatsapp:hover svg{color:#25d366}:is(.email,.copy-button):hover svg{opacity:.8}.copy-button{background:none}.copy-button:hover{outline:none}.copy-button[disabled]{font-weight:700;color:var(--color-copy-success)}@media (width >=48rem){.social-media{min-width:9em}}.atomic{display:flex;flex-flow:row wrap;gap:var(--gap-sm);justify-content:space-between;background-color:transparent}.atomic .social-media{flex:0;width:min-content;min-width:min-content}.atomic .social-media svg{width:2em;height:2em}', j = \".share-button{display:flex;gap:8px;align-items:center;min-width:60px;height:60px;padding:0 16px;font-size:16px;box-shadow:#0000003d 0 8px 16px -2px}.share-button svg{width:24px;height:24px;margin-inline-end:0}\";\nfunction N(n) {\n const o = \"28px\", e = `position: fixed; bottom: ${o};`;\n if (!n)\n return \"\";\n const t = n.toLowerCase();\n return t === \"left\" || t === \"right\" ? `${e} ${t}: ${o};` : t === \"center\" ? `${e} left: 50%; translate: -50% 0;` : (console.error(\n `[Share Button] It looks you specified an unknown value (${n}) for the fixed attribute. Available options are \"left,\" \"right,\" and \"center\"`\n ), \"\");\n}\nfunction U(n, o) {\n return o.map((e) => {\n const t = n.getAttribute(e);\n return t ? `--${e}: ${t};` : \"\";\n }).join(`\n`);\n}\nconst q = [\n \"color-button-text\",\n \"color-button-bg\",\n \"color-popover-bg\",\n \"color-popover-text\"\n];\nfunction R(n) {\n const o = n.getAttribute(\"position\"), e = N(o), t = U(n, q);\n return `\n.wrapper {\n\t${e}\n\t${t}\n\t${o && j}\n}`;\n}\nclass H extends HTMLElement {\n constructor() {\n super(...arguments);\n m(this, \"isPopoverSupport\", Object.prototype.hasOwnProperty.call(\n HTMLElement.prototype,\n \"popover\"\n ));\n m(this, \"isMobile\", (/android/i.test(navigator.userAgent) || /iPhone|iPad|iPod/i.test(navigator.userAgent)) && navigator.share);\n m(this, \"shadow\", this.attachShadow({ mode: \"open\" }));\n m(this, \"state\", !1);\n }\n connectedCallback() {\n this.render();\n }\n attributeChangedCallback() {\n this.render();\n }\n render() {\n var v, i;\n const e = ((v = document.querySelector(\"title\")) == null ? void 0 : v.textContent) || ((i = document.querySelector(\"h1\")) == null ? void 0 : i.textContent) || \"\", t = R(this), l = this.createIcon(), c = this.hasAttribute(\"atomic\"), r = this.createPopover(e, c), C = c ? \"\" : this.createButton(l), u = A(this), g = document.createElement(\"div\");\n g.setAttribute(\"class\", \"wrapper\"), g.setAttribute(\"part\", \"wrapper\");\n const x = this.isPopoverSupport ? r : \"
\";\n g.append(C, x), this.shadow.replaceChildren(g);\n let p = null;\n const h = new CSSStyleSheet();\n if (h.replaceSync(z + t + u), this.shadow.adoptedStyleSheets = [h], !c && C && C.addEventListener(\"click\", (a) => {\n const w = a.currentTarget;\n if (this.isMobile) {\n try {\n navigator.share({\n title: e,\n url: window.location.href\n }), w.removeAttribute(\"popover\");\n } catch (d) {\n console.log(d);\n }\n return;\n }\n if (this.isPopoverSupport) {\n const d = r.cloneNode(!0);\n d.removeAttribute(\"id\"), d.removeAttribute(\"popover\"), g.append(d), d.classList.add(\"up\", \"popover-clone\"), p = d.getBoundingClientRect(), console.log(p), d.remove();\n const s = w.getBoundingClientRect();\n let b = `${s.left + s.width / 2 - p.width / 2}px`;\n console.log(\n s.left,\n s.width,\n p.width,\n b\n ), s.left < 100 && (b = `${s.left + s.width / 2 - p.width * 0.25}px`, r.classList.add(\"left-adjust\")), s.right > window.innerWidth - 100 && (b = `${s.left + s.width / 2 - p.width * 0.75}px`, r.classList.add(\"right-adjust\"));\n const y = window.scrollY;\n r.style.left = b, document.documentElement.clientHeight / 2 > s.y ? (r.style.top = `${y + s.top + s.height}px`, r.classList.remove(\"down\"), r.classList.add(\"up\")) : (r.style.top = `${y + s.top - p.height}px`, r.classList.remove(\"up\"), r.classList.add(\"down\"));\n return;\n }\n navigator.clipboard.writeText(window.location.href), setTimeout(() => {\n this.textContent = \"Copied!\", this.createButton(f);\n }, 1e3);\n }), !c) {\n const a = () => {\n this.shadow.querySelector(\"[popover]\").hidePopover();\n };\n addEventListener(\"resize\", a), addEventListener(\"scroll\", a);\n }\n }\n createIcon() {\n const e = this.getAttribute(\"icon\") || \"1\";\n let t;\n return e === \"false\" ? t = \"\" : [\"1\", \"2\", \"3\", \"4\", \"5\", \"6\", \"7\"].includes(e) ? t = M[e] : (console.log(\n '[Share Button] It looks like you did not specify a valid icon. Please add an icon attribute with a value of \"1,\" \"2,\" \"3,\" \"4,\" \"5,\" \"6,\" or \"7\"'\n ), t = M[1]), t;\n }\n createButton(e) {\n const t = document.createElement(\"button\");\n t.setAttribute(\"part\", \"share-button\"), t.setAttribute(\"class\", \"share-button\");\n const l = this.hasAttribute(\"notext\");\n return this.isPopoverSupport && !this.isMobile && t.setAttribute(\"popovertarget\", \"share-popover\"), this.hasAttribute(\"circle\") || l ? (t.setAttribute(\"aria-label\", \"Share\"), t.setAttribute(\n \"style\",\n \"border-radius: 50%; padding: 0.75rem; line-height: 1;\"\n ), t.innerHTML = e) : t.innerHTML = `${e} ${this.textContent ? \"\" : \"Share\"}`, t;\n }\n createPopover(e, t = !1) {\n const l = this.getAttribute(\"networks\") || \"x, linkedin, facebook, email, whatsapp, telegram, copy\", c = I({\n url: window.location.href,\n title: e,\n shareText: this.textContent ?? \"Share\",\n networks: l,\n isAtomic: t\n });\n if (!t) {\n const r = document.createElement(\"div\");\n return r.setAttribute(\"id\", \"share-popover\"), r.setAttribute(\"part\", \"share-popover\"), r.setAttribute(\"popover\", \"\"), r.append(c), r;\n }\n return c;\n }\n}\nm(H, \"observedAttributes\", [\"dark-mode\"]);\ncustomElements.define(\"share-button\", H);\nexport {\n H as ShareButton\n};\n"], + "sourcesContent": ["var S = Object.defineProperty;\nvar V = (n, o, e) => o in n ? S(n, o, { enumerable: !0, configurable: !0, writable: !0, value: e }) : n[o] = e;\nvar m = (n, o, e) => (V(n, typeof o != \"symbol\" ? o + \"\" : o, e), e);\nconst k = \".wrapper{--color-popover-bg: hsl(242deg 55.5% 2.74%);--color-popover-text: hsl(242deg 9.58% 98%);--color-button-bg: hsl(242deg 9.58% 98%);--color-button-text: hsl(242deg 55.5% 2.74%);--color-green: hsl(120deg 99% 43%)}\";\nfunction A(n) {\n let o = n.getAttribute(\"dark-mode\");\n if (o ?? (o = \"auto\"), o === \"auto\")\n return `@media (prefers-color-scheme: dark) {\n\t\t\t${k}\n\t\t}`;\n if (o === \"false\")\n return \"\";\n if (o === \"true\")\n return k;\n}\nconst M = {\n 1: '',\n 2: '',\n 3: '',\n 4: '',\n 5: '',\n 6: '',\n 7: ''\n}, $ = '', L = '', f = '', B = '', E = '', Z = '', T = '', P = '';\nfunction I({\n url: n,\n title: o,\n networks: e,\n isAtomic: t\n}) {\n function l(p, h, v) {\n let i = v.replace(/{{url}}/g, n);\n o && (i = i.replace(/{{text}}/g, o));\n const a = document.createElement(\"a\");\n return a.classList.add(\"social-media\", h.toLowerCase()), a.href = encodeURI(i), a.setAttribute(\"aria-label\", `Share on ${h}`), a.setAttribute(\"target\", \"_blank\"), a.setAttribute(\"rel\", \"noopener noreferrer\"), a.setAttribute(\"part\", \"share-link\"), a.innerHTML = `${p} ${t ? \"\" : ` ${h}`}`, a;\n }\n const c = /* @__PURE__ */ new Map([\n [\n \"facebook\",\n {\n html: l(\n E,\n \"Facebook\",\n \"http://www.facebook.com/sharer.php?u={{url}}\"\n )\n }\n ],\n [\n \"x\",\n {\n html: l(\n $,\n \"X\",\n \"https://twitter.com/intent/tweet?url={{url}}&text={{text}}\"\n )\n }\n ],\n [\n \"linkedin\",\n {\n html: l(\n Z,\n \"LinkedIn\",\n \"https://www.linkedin.com/feed/?shareActive=true&text={{text}} {{url}}\"\n )\n }\n ],\n [\n \"email\",\n {\n html: l(\n T,\n \"Email\",\n \"mailto:?subject=Check out {{text}}&body={{text}} {{url}}\"\n )\n }\n ],\n [\n \"whatsapp\",\n {\n html: l(\n P,\n \"WhatsApp\",\n \"https://api.whatsapp.com/send?text={{text}} {{url}}\"\n )\n }\n ],\n [\n \"telegram\",\n {\n html: l(\n B,\n \"Telegram\",\n \"https://t.me/share/url?url={{url}}&text={{text}}\"\n )\n }\n ],\n [\"copy\", { html: l(L, \"copy\", \"\") }]\n ]), r = document.createElement(\"div\");\n r.classList.add(\"popover-inner\"), r.setAttribute(\"part\", \"popover-inner\");\n const C = e.split(\",\").map((p) => {\n const h = p.trim().toLowerCase();\n if (h === \"copy\") {\n const i = document.createElement(\"button\");\n i.classList.add(\"social-media\", \"copy-button\"), i.setAttribute(\"aria-label\", \"Copy link\"), i.setAttribute(\"part\", \"share-link\");\n const a = `${L} Copy link`, w = L;\n return i.innerHTML = t ? w : a, i.addEventListener(\"click\", async (d) => {\n if (!d.currentTarget) {\n console.error(\"Error copying. Element not found\");\n return;\n }\n try {\n await navigator.clipboard.writeText(window.location.href), i.disabled = !0, t ? (console.log(f), i.innerHTML = f) : i.innerHTML = `${f} Copied!`, setTimeout(() => {\n i.disabled = !1, i.innerHTML = t ? w : a;\n }, 5e3);\n } catch {\n console.log(\"[Share Button] We could not copy this\");\n }\n }), i;\n }\n const v = c.get(h);\n return v ? v.html : \"\";\n }), u = document.createElement(\"div\");\n t && u.classList.add(\"atomic\"), u.classList.add(\"social-media-container\"), u.append(...C), r.append(u);\n const g = document.createElement(\"div\");\n g.classList.add(\"triangle-up\"), r.prepend(g);\n const x = document.createElement(\"div\");\n return x.classList.add(\"triangle-down\"), r.append(x), t ? u : r;\n}\nconst z = ':host{font-size:16px;font-size:max(16px,clamp(.875rem,.85rem + .125vw,1rem))}.wrapper{--color-popover-border: hsl(0deg 0 100% / 7.5%);--color-popover-bg: hsl(242deg 9.58% 98%);--color-popover-text: hsl(242deg 55.5% 2.74%);--color-button-bg: hsl(242deg 55.5% 2.74%);--color-button-text: hsl(242deg 9.58% 98%);--border-radius-lg: 8px;--border-radius-md: 5px;--border-radius-sm: 2.5px;--border-radius-pill: 9999px;--padding-button: .375em 1em;--padding-box: 1em;--gap-sm: .5em;--gap-md: .75em;--gap-lg: 2em;--gap-icon: .5rem;--font-sm: max(15px, .875em);--font-lg: max(18px, 1.05em);--box-shadow: inset 0 0 .5px 1px hsl(0deg 0% 100% / 7.5%), 0 0 0 1px hsl(0deg 0% 0% / 5%), 0 .3px .4px hsl(0deg 0% 0% / 2%), 0 .9px 1.5px hsl(0deg 0% 0% / 4.5%), 0 3.5px 6px hsl(0deg 0% 0% / 9%);--filter: drop-shadow(0 0 .5px hsl(0deg 0 100% / 7.5%)) drop-shadow(0 0 1px rgb(0 0 0 / 5%)) drop-shadow(0 .3px .4px rgb(0 0 0 / 2%)) drop-shadow(0 .9px 1.5px rgb(0 0 0 / 4.5%)) drop-shadow(0 3.5px 6px rgb(0 0 0 / 9%));--color-green: green;--aspect-ratio: 1.65 / 1;--triangle: 20px}button{display:inline-flex;gap:var(--gap-icon);align-items:center;justify-content:center;padding:var(--padding-button);font-family:inherit;font-size:1em;line-height:1.5;color:var(--color-button-text);text-align:center;white-space:nowrap;vertical-align:middle;cursor:pointer;background-color:var(--color-button-bg);border:none;border-radius:var(--border-radius-pill);transition:filter .2s ease-out}button:hover:not(.copy-button){filter:brightness(1.2)}button svg{display:inline-block;width:1.15em;height:1.15em;fill:currentcolor}[aria-label=Share] svg{margin-inline-end:0;line-height:1}[popover]{opacity:0;transition:opacity .1s ease-in,scale .1s ease-in}:popover-open,.popover-clone{position:absolute;max-width:min(100% - 16px,31.25em);height:fit-content;padding:0;padding-block:var(--triangle);margin:0;font-family:inherit;color:var(--color-popover-text);background-color:transparent;filter:var(--filter);border:none;opacity:1;transition:opacity .1s ease-out,scale .1s ease-out}.popover-clone{position:fixed;width:fit-content;height:fit-content}.popover-inner{position:relative}.social-media-container{display:flex;flex-direction:column;padding:.75rem;background-color:var(--color-popover-bg);border:1px solid var(--color-popover-border);border-radius:var(--border-radius-lg)}:where(.triangle-up,.triangle-down){position:absolute;left:50%;display:none;height:20px;aspect-ratio:var(--aspect-ratio);clip-path:polygon(50% 0%,0 100%,100% 100%);background-color:var(--color-popover-border);translate:-50% -1.5px}.triangle-down{clip-path:polygon(100% 0%,0% 0,50% 100%)}.triangle-down:after{position:absolute;top:0;right:0;bottom:0;left:0;z-index:2;height:var(--triangle);aspect-ratio:var(--aspect-ratio);clip-path:polygon(100% 0%,0% 0,50% 100%);content:\"\";background-color:var(--color-popover-bg);translate:0 -1px}.triangle-up{translate:-50% calc(-100% + 1.5px)}.triangle-up:after{position:absolute;top:0;right:0;bottom:0;left:0;z-index:2;height:var(--triangle);aspect-ratio:var(--aspect-ratio);clip-path:polygon(50% 0%,0 100%,100% 100%);content:\"\";background-color:var(--color-popover-bg);translate:0 1px}.down .triangle-down,.up .triangle-up{display:block}.left-adjust :where(.triangle-down,.triangle-up){left:25%}.right-adjust :where(.triangle-down,.triangle-up){left:75%}.social-media{display:flex;flex:1;gap:var(--gap-md);align-items:center;justify-content:flex-start;min-width:7em;padding:1em .5em;font-size:1em;font-weight:400;line-height:1.25em;color:inherit;text-decoration:none;background:none;border-radius:var(--border-radius-lg)}.social-media:last-child{border-bottom-right-radius:var(--border-radius-lg);border-bottom-left-radius:var(--border-radius-lg)}.social-media svg{display:inline-block;width:max(22px,1.25em);height:max(22px,1.25em);line-height:1.25em;fill:currentcolor;transition:color .3s ease-out}.x:hover svg{color:#1da1f2}.facebook:hover svg{color:#1877f2}.linkedin:hover svg{color:#0a66c2}.telegram:hover svg{color:#229ed9}.whatsapp:hover svg{color:#25d366}:is(.email,.copy-button):hover svg{opacity:.8}.copy-button{background:none}.copy-button:hover{outline:none}.copy-button[disabled]{font-weight:700;color:var(--color-green)}@media (width >=48rem){.social-media{min-width:9em}}.atomic{display:flex;flex-flow:row wrap;gap:var(--gap-sm);justify-content:space-between;background-color:transparent}.atomic .social-media{flex:0;width:min-content;min-width:min-content}.atomic .social-media svg{width:2em;height:2em}', j = \".share-button{display:flex;gap:8px;align-items:center;min-width:60px;height:60px;padding:0 16px;font-size:16px;box-shadow:#0000003d 0 8px 16px -2px}.share-button svg{width:24px;height:24px;margin-inline-end:0}\";\nfunction N(n) {\n const o = \"28px\", e = `position: fixed; bottom: ${o};`;\n if (!n)\n return \"\";\n const t = n.toLowerCase();\n return t === \"left\" || t === \"right\" ? `${e} ${t}: ${o};` : t === \"center\" ? `${e} left: 50%; translate: -50% 0;` : (console.error(\n `[Share Button] It looks you specified an unknown value (${n}) for the fixed attribute. Available options are \"left,\" \"right,\" and \"center\"`\n ), \"\");\n}\nfunction U(n, o) {\n return o.map((e) => {\n const t = n.getAttribute(e);\n return t ? `--${e}: ${t};` : \"\";\n }).join(`\n`);\n}\nconst q = [\n \"color-button-text\",\n \"color-button-bg\",\n \"color-popover-bg\",\n \"color-popover-text\"\n];\nfunction R(n) {\n const o = n.getAttribute(\"position\"), e = N(o), t = U(n, q);\n return `\n.wrapper {\n\t${e}\n\t${t}\n\t${o && j}\n}`;\n}\nclass H extends HTMLElement {\n constructor() {\n super(...arguments);\n m(this, \"isPopoverSupport\", Object.prototype.hasOwnProperty.call(\n HTMLElement.prototype,\n \"popover\"\n ));\n m(this, \"isMobile\", (/android/i.test(navigator.userAgent) || /iPhone|iPad|iPod/i.test(navigator.userAgent)) && navigator.share);\n m(this, \"shadow\", this.attachShadow({ mode: \"open\" }));\n m(this, \"state\", !1);\n }\n connectedCallback() {\n this.render();\n }\n attributeChangedCallback() {\n this.render();\n }\n render() {\n var v, i;\n const e = ((v = document.querySelector(\"title\")) == null ? void 0 : v.textContent) || ((i = document.querySelector(\"h1\")) == null ? void 0 : i.textContent) || \"\", t = R(this), l = this.createIcon(), c = this.hasAttribute(\"atomic\"), r = this.createPopover(e, c), C = c ? \"\" : this.createButton(l), u = A(this), g = document.createElement(\"div\");\n g.setAttribute(\"class\", \"wrapper\"), g.setAttribute(\"part\", \"wrapper\");\n const x = this.isPopoverSupport ? r : \"
\";\n g.append(C, x), this.shadow.replaceChildren(g);\n let p = null;\n const h = new CSSStyleSheet();\n if (h.replaceSync(z + t + u), this.shadow.adoptedStyleSheets = [h], !c && C && C.addEventListener(\"click\", (a) => {\n const w = a.currentTarget;\n if (this.isMobile) {\n try {\n navigator.share({\n title: e,\n url: window.location.href\n }), w.removeAttribute(\"popover\");\n } catch (d) {\n console.log(d);\n }\n return;\n }\n if (this.isPopoverSupport) {\n const d = r.cloneNode(!0);\n d.removeAttribute(\"id\"), d.removeAttribute(\"popover\"), g.append(d), d.classList.add(\"up\", \"popover-clone\"), p = d.getBoundingClientRect(), console.log(p), d.remove();\n const s = w.getBoundingClientRect();\n let b = `${s.left + s.width / 2 - p.width / 2}px`;\n console.log(\n s.left,\n s.width,\n p.width,\n b\n ), s.left < 100 && (b = `${s.left + s.width / 2 - p.width * 0.25}px`, r.classList.add(\"left-adjust\")), s.right > window.innerWidth - 100 && (b = `${s.left + s.width / 2 - p.width * 0.75}px`, r.classList.add(\"right-adjust\"));\n const y = window.scrollY;\n r.style.left = b, document.documentElement.clientHeight / 2 > s.y ? (r.style.top = `${y + s.top + s.height}px`, r.classList.remove(\"down\"), r.classList.add(\"up\")) : (r.style.top = `${y + s.top - p.height}px`, r.classList.remove(\"up\"), r.classList.add(\"down\"));\n return;\n }\n navigator.clipboard.writeText(window.location.href), setTimeout(() => {\n this.textContent = \"Copied!\", this.createButton(f);\n }, 1e3);\n }), !c) {\n const a = () => {\n this.shadow.querySelector(\"[popover]\").hidePopover();\n };\n addEventListener(\"resize\", a), addEventListener(\"scroll\", a);\n }\n }\n createIcon() {\n const e = this.getAttribute(\"icon\") || \"1\";\n let t;\n return e === \"false\" ? t = \"\" : [\"1\", \"2\", \"3\", \"4\", \"5\", \"6\", \"7\"].includes(e) ? t = M[e] : (console.log(\n '[Share Button] It looks like you did not specify a valid icon. Please add an icon attribute with a value of \"1,\" \"2,\" \"3,\" \"4,\" \"5,\" \"6,\" or \"7\"'\n ), t = M[1]), t;\n }\n createButton(e) {\n const t = document.createElement(\"button\");\n t.setAttribute(\"part\", \"share-button\"), t.setAttribute(\"class\", \"share-button\");\n const l = this.hasAttribute(\"notext\");\n return this.isPopoverSupport && !this.isMobile && t.setAttribute(\"popovertarget\", \"share-popover\"), this.hasAttribute(\"circle\") || l ? (t.setAttribute(\"aria-label\", \"Share\"), t.setAttribute(\n \"style\",\n \"border-radius: 50%; padding: 0.75rem; line-height: 1;\"\n ), t.innerHTML = e) : t.innerHTML = `${e} ${this.textContent ? \"\" : \"Share\"}`, t;\n }\n createPopover(e, t = !1) {\n const l = this.getAttribute(\"networks\") || \"x, linkedin, facebook, email, whatsapp, telegram, copy\", c = I({\n url: window.location.href,\n title: e,\n shareText: this.textContent ?? \"Share\",\n networks: l,\n isAtomic: t\n });\n if (!t) {\n const r = document.createElement(\"div\");\n return r.setAttribute(\"id\", \"share-popover\"), r.setAttribute(\"part\", \"share-popover\"), r.setAttribute(\"popover\", \"\"), r.append(c), r;\n }\n return c;\n }\n}\nm(H, \"observedAttributes\", [\"dark-mode\"]);\ncustomElements.define(\"share-button\", H);\nexport {\n H as ShareButton\n};\n"], "mappings": ";AAAA,IAAI,IAAI,OAAO;AACf,IAAI,IAAI,CAAC,GAAG,GAAG,MAAM,KAAK,IAAI,EAAE,GAAG,GAAG,EAAE,YAAY,MAAI,cAAc,MAAI,UAAU,MAAI,OAAO,EAAE,CAAC,IAAI,EAAE,CAAC,IAAI;AAC7G,IAAI,IAAI,CAAC,GAAG,GAAG,OAAO,EAAE,GAAG,OAAO,KAAK,WAAW,IAAI,KAAK,GAAG,CAAC,GAAG;AAClE,IAAM,IAAI;AACV,SAAS,EAAE,GAAG;AACZ,MAAI,IAAI,EAAE,aAAa,WAAW;AAClC,MAAI,MAAM,IAAI,SAAS,MAAM;AAC3B,WAAO;AAAA,KACN,CAAC;AAAA;AAEJ,MAAI,MAAM;AACR,WAAO;AACT,MAAI,MAAM;AACR,WAAO;AACX;AACA,IAAM,IAAI;AAAA,EACR,GAAG;AAAA,EACH,GAAG;AAAA,EACH,GAAG;AAAA,EACH,GAAG;AAAA,EACH,GAAG;AAAA,EACH,GAAG;AAAA,EACH,GAAG;AACL;AARA,IAQG,IAAI;AARP,IAQ+R,IAAI;AARnS,IAQgjB,IAAI;AARpjB,IAQ8wB,IAAI;AARlxB,IAQmrC,IAAI;AARvrC,IAQukD,IAAI;AAR3kD,IAQ+4E,IAAI;AARn5E,IAQquF,IAAI;AACzuF,SAAS,EAAE;AAAA,EACT,KAAK;AAAA,EACL,OAAO;AAAA,EACP,UAAU;AAAA,EACV,UAAU;AACZ,GAAG;AACD,WAAS,EAAE,GAAG,GAAG,GAAG;AAClB,QAAI,IAAI,EAAE,QAAQ,YAAY,CAAC;AAC/B,UAAM,IAAI,EAAE,QAAQ,aAAa,CAAC;AAClC,UAAM,IAAI,SAAS,cAAc,GAAG;AACpC,WAAO,EAAE,UAAU,IAAI,gBAAgB,EAAE,YAAY,CAAC,GAAG,EAAE,OAAO,UAAU,CAAC,GAAG,EAAE,aAAa,cAAc,YAAY,CAAC,EAAE,GAAG,EAAE,aAAa,UAAU,QAAQ,GAAG,EAAE,aAAa,OAAO,qBAAqB,GAAG,EAAE,aAAa,QAAQ,YAAY,GAAG,EAAE,YAAY,GAAG,CAAC,IAAI,IAAI,KAAK,IAAI,CAAC,EAAE,IAAI;AAAA,EACnS;AACA,QAAM,IAAoB,oBAAI,IAAI;AAAA,IAChC;AAAA,MACE;AAAA,MACA;AAAA,QACE,MAAM;AAAA,UACJ;AAAA,UACA;AAAA,UACA;AAAA,QACF;AAAA,MACF;AAAA,IACF;AAAA,IACA;AAAA,MACE;AAAA,MACA;AAAA,QACE,MAAM;AAAA,UACJ;AAAA,UACA;AAAA,UACA;AAAA,QACF;AAAA,MACF;AAAA,IACF;AAAA,IACA;AAAA,MACE;AAAA,MACA;AAAA,QACE,MAAM;AAAA,UACJ;AAAA,UACA;AAAA,UACA;AAAA,QACF;AAAA,MACF;AAAA,IACF;AAAA,IACA;AAAA,MACE;AAAA,MACA;AAAA,QACE,MAAM;AAAA,UACJ;AAAA,UACA;AAAA,UACA;AAAA,QACF;AAAA,MACF;AAAA,IACF;AAAA,IACA;AAAA,MACE;AAAA,MACA;AAAA,QACE,MAAM;AAAA,UACJ;AAAA,UACA;AAAA,UACA;AAAA,QACF;AAAA,MACF;AAAA,IACF;AAAA,IACA;AAAA,MACE;AAAA,MACA;AAAA,QACE,MAAM;AAAA,UACJ;AAAA,UACA;AAAA,UACA;AAAA,QACF;AAAA,MACF;AAAA,IACF;AAAA,IACA,CAAC,QAAQ,EAAE,MAAM,EAAE,GAAG,QAAQ,EAAE,EAAE,CAAC;AAAA,EACrC,CAAC,GAAG,IAAI,SAAS,cAAc,KAAK;AACpC,IAAE,UAAU,IAAI,eAAe,GAAG,EAAE,aAAa,QAAQ,eAAe;AACxE,QAAM,IAAI,EAAE,MAAM,GAAG,EAAE,IAAI,CAAC,MAAM;AAChC,UAAM,IAAI,EAAE,KAAK,EAAE,YAAY;AAC/B,QAAI,MAAM,QAAQ;AAChB,YAAM,IAAI,SAAS,cAAc,QAAQ;AACzC,QAAE,UAAU,IAAI,gBAAgB,aAAa,GAAG,EAAE,aAAa,cAAc,WAAW,GAAG,EAAE,aAAa,QAAQ,YAAY;AAC9H,YAAM,IAAI,GAAG,CAAC,2BAA2B,IAAI;AAC7C,aAAO,EAAE,YAAY,IAAI,IAAI,GAAG,EAAE,iBAAiB,SAAS,OAAO,MAAM;AACvE,YAAI,CAAC,EAAE,eAAe;AACpB,kBAAQ,MAAM,kCAAkC;AAChD;AAAA,QACF;AACA,YAAI;AACF,gBAAM,UAAU,UAAU,UAAU,OAAO,SAAS,IAAI,GAAG,EAAE,WAAW,MAAI,KAAK,QAAQ,IAAI,CAAC,GAAG,EAAE,YAAY,KAAK,EAAE,YAAY,GAAG,CAAC,yBAAyB,WAAW,MAAM;AAC9K,cAAE,WAAW,OAAI,EAAE,YAAY,IAAI,IAAI;AAAA,UACzC,GAAG,GAAG;AAAA,QACR,QAAQ;AACN,kBAAQ,IAAI,uCAAuC;AAAA,QACrD;AAAA,MACF,CAAC,GAAG;AAAA,IACN;AACA,UAAM,IAAI,EAAE,IAAI,CAAC;AACjB,WAAO,IAAI,EAAE,OAAO;AAAA,EACtB,CAAC,GAAG,IAAI,SAAS,cAAc,KAAK;AACpC,OAAK,EAAE,UAAU,IAAI,QAAQ,GAAG,EAAE,UAAU,IAAI,wBAAwB,GAAG,EAAE,OAAO,GAAG,CAAC,GAAG,EAAE,OAAO,CAAC;AACrG,QAAM,IAAI,SAAS,cAAc,KAAK;AACtC,IAAE,UAAU,IAAI,aAAa,GAAG,EAAE,QAAQ,CAAC;AAC3C,QAAM,IAAI,SAAS,cAAc,KAAK;AACtC,SAAO,EAAE,UAAU,IAAI,eAAe,GAAG,EAAE,OAAO,CAAC,GAAG,IAAI,IAAI;AAChE;AACA,IAAM,IAAI;AAAV,IAA05I,IAAI;AAC95I,SAAS,EAAE,GAAG;AACZ,QAAM,IAAI,QAAQ,IAAI,4BAA4B,CAAC;AACnD,MAAI,CAAC;AACH,WAAO;AACT,QAAM,IAAI,EAAE,YAAY;AACxB,SAAO,MAAM,UAAU,MAAM,UAAU,GAAG,CAAC,IAAI,CAAC,KAAK,CAAC,MAAM,MAAM,WAAW,GAAG,CAAC,oCAAoC,QAAQ;AAAA,IAC3H,2DAA2D,CAAC;AAAA,EAC9D,GAAG;AACL;AACA,SAAS,EAAE,GAAG,GAAG;AACf,SAAO,EAAE,IAAI,CAAC,MAAM;AAClB,UAAM,IAAI,EAAE,aAAa,CAAC;AAC1B,WAAO,IAAI,KAAK,CAAC,KAAK,CAAC,MAAM;AAAA,EAC/B,CAAC,EAAE,KAAK;AAAA,CACT;AACD;AACA,IAAM,IAAI;AAAA,EACR;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF;AACA,SAAS,EAAE,GAAG;AACZ,QAAM,IAAI,EAAE,aAAa,UAAU,GAAG,IAAI,EAAE,CAAC,GAAG,IAAI,EAAE,GAAG,CAAC;AAC1D,SAAO;AAAA;AAAA,GAEN,CAAC;AAAA,GACD,CAAC;AAAA,GACD,KAAK,CAAC;AAAA;AAET;AACA,IAAM,IAAN,cAAgB,YAAY;AAAA,EAC1B,cAAc;AACZ,UAAM,GAAG,SAAS;AAClB,MAAE,MAAM,oBAAoB,OAAO,UAAU,eAAe;AAAA,MAC1D,YAAY;AAAA,MACZ;AAAA,IACF,CAAC;AACD,MAAE,MAAM,aAAa,WAAW,KAAK,UAAU,SAAS,KAAK,oBAAoB,KAAK,UAAU,SAAS,MAAM,UAAU,KAAK;AAC9H,MAAE,MAAM,UAAU,KAAK,aAAa,EAAE,MAAM,OAAO,CAAC,CAAC;AACrD,MAAE,MAAM,SAAS,KAAE;AAAA,EACrB;AAAA,EACA,oBAAoB;AAClB,SAAK,OAAO;AAAA,EACd;AAAA,EACA,2BAA2B;AACzB,SAAK,OAAO;AAAA,EACd;AAAA,EACA,SAAS;AACP,QAAI,GAAG;AACP,UAAM,MAAM,IAAI,SAAS,cAAc,OAAO,MAAM,OAAO,SAAS,EAAE,kBAAkB,IAAI,SAAS,cAAc,IAAI,MAAM,OAAO,SAAS,EAAE,gBAAgB,IAAI,IAAI,EAAE,IAAI,GAAG,IAAI,KAAK,WAAW,GAAG,IAAI,KAAK,aAAa,QAAQ,GAAG,IAAI,KAAK,cAAc,GAAG,CAAC,GAAG,IAAI,IAAI,KAAK,KAAK,aAAa,CAAC,GAAG,IAAI,EAAE,IAAI,GAAG,IAAI,SAAS,cAAc,KAAK;AACtV,MAAE,aAAa,SAAS,SAAS,GAAG,EAAE,aAAa,QAAQ,SAAS;AACpE,UAAM,IAAI,KAAK,mBAAmB,IAAI;AACtC,MAAE,OAAO,GAAG,CAAC,GAAG,KAAK,OAAO,gBAAgB,CAAC;AAC7C,QAAI,IAAI;AACR,UAAM,IAAI,IAAI,cAAc;AAC5B,QAAI,EAAE,YAAY,IAAI,IAAI,CAAC,GAAG,KAAK,OAAO,qBAAqB,CAAC,CAAC,GAAG,CAAC,KAAK,KAAK,EAAE,iBAAiB,SAAS,CAAC,MAAM;AAChH,YAAM,IAAI,EAAE;AACZ,UAAI,KAAK,UAAU;AACjB,YAAI;AACF,oBAAU,MAAM;AAAA,YACd,OAAO;AAAA,YACP,KAAK,OAAO,SAAS;AAAA,UACvB,CAAC,GAAG,EAAE,gBAAgB,SAAS;AAAA,QACjC,SAAS,GAAG;AACV,kBAAQ,IAAI,CAAC;AAAA,QACf;AACA;AAAA,MACF;AACA,UAAI,KAAK,kBAAkB;AACzB,cAAM,IAAI,EAAE,UAAU,IAAE;AACxB,UAAE,gBAAgB,IAAI,GAAG,EAAE,gBAAgB,SAAS,GAAG,EAAE,OAAO,CAAC,GAAG,EAAE,UAAU,IAAI,MAAM,eAAe,GAAG,IAAI,EAAE,sBAAsB,GAAG,QAAQ,IAAI,CAAC,GAAG,EAAE,OAAO;AACpK,cAAM,IAAI,EAAE,sBAAsB;AAClC,YAAI,IAAI,GAAG,EAAE,OAAO,EAAE,QAAQ,IAAI,EAAE,QAAQ,CAAC;AAC7C,gBAAQ;AAAA,UACN,EAAE;AAAA,UACF,EAAE;AAAA,UACF,EAAE;AAAA,UACF;AAAA,QACF,GAAG,EAAE,OAAO,QAAQ,IAAI,GAAG,EAAE,OAAO,EAAE,QAAQ,IAAI,EAAE,QAAQ,IAAI,MAAM,EAAE,UAAU,IAAI,aAAa,IAAI,EAAE,QAAQ,OAAO,aAAa,QAAQ,IAAI,GAAG,EAAE,OAAO,EAAE,QAAQ,IAAI,EAAE,QAAQ,IAAI,MAAM,EAAE,UAAU,IAAI,cAAc;AAC7N,cAAM,IAAI,OAAO;AACjB,UAAE,MAAM,OAAO,GAAG,SAAS,gBAAgB,eAAe,IAAI,EAAE,KAAK,EAAE,MAAM,MAAM,GAAG,IAAI,EAAE,MAAM,EAAE,MAAM,MAAM,EAAE,UAAU,OAAO,MAAM,GAAG,EAAE,UAAU,IAAI,IAAI,MAAM,EAAE,MAAM,MAAM,GAAG,IAAI,EAAE,MAAM,EAAE,MAAM,MAAM,EAAE,UAAU,OAAO,IAAI,GAAG,EAAE,UAAU,IAAI,MAAM;AACjQ;AAAA,MACF;AACA,gBAAU,UAAU,UAAU,OAAO,SAAS,IAAI,GAAG,WAAW,MAAM;AACpE,aAAK,cAAc,WAAW,KAAK,aAAa,CAAC;AAAA,MACnD,GAAG,GAAG;AAAA,IACR,CAAC,GAAG,CAAC,GAAG;AACN,YAAM,IAAI,MAAM;AACd,aAAK,OAAO,cAAc,WAAW,EAAE,YAAY;AAAA,MACrD;AACA,uBAAiB,UAAU,CAAC,GAAG,iBAAiB,UAAU,CAAC;AAAA,IAC7D;AAAA,EACF;AAAA,EACA,aAAa;AACX,UAAM,IAAI,KAAK,aAAa,MAAM,KAAK;AACvC,QAAI;AACJ,WAAO,MAAM,UAAU,IAAI,KAAK,CAAC,KAAK,KAAK,KAAK,KAAK,KAAK,KAAK,GAAG,EAAE,SAAS,CAAC,IAAI,IAAI,EAAE,CAAC,KAAK,QAAQ;AAAA,MACpG;AAAA,IACF,GAAG,IAAI,EAAE,CAAC,IAAI;AAAA,EAChB;AAAA,EACA,aAAa,GAAG;AACd,UAAM,IAAI,SAAS,cAAc,QAAQ;AACzC,MAAE,aAAa,QAAQ,cAAc,GAAG,EAAE,aAAa,SAAS,cAAc;AAC9E,UAAM,IAAI,KAAK,aAAa,QAAQ;AACpC,WAAO,KAAK,oBAAoB,CAAC,KAAK,YAAY,EAAE,aAAa,iBAAiB,eAAe,GAAG,KAAK,aAAa,QAAQ,KAAK,KAAK,EAAE,aAAa,cAAc,OAAO,GAAG,EAAE;AAAA,MAC/K;AAAA,MACA;AAAA,IACF,GAAG,EAAE,YAAY,KAAK,EAAE,YAAY,GAAG,CAAC,IAAI,KAAK,cAAc,kBAAkB,OAAO,IAAI;AAAA,EAC9F;AAAA,EACA,cAAc,GAAG,IAAI,OAAI;AACvB,UAAM,IAAI,KAAK,aAAa,UAAU,KAAK,0DAA0D,IAAI,EAAE;AAAA,MACzG,KAAK,OAAO,SAAS;AAAA,MACrB,OAAO;AAAA,MACP,WAAW,KAAK,eAAe;AAAA,MAC/B,UAAU;AAAA,MACV,UAAU;AAAA,IACZ,CAAC;AACD,QAAI,CAAC,GAAG;AACN,YAAM,IAAI,SAAS,cAAc,KAAK;AACtC,aAAO,EAAE,aAAa,MAAM,eAAe,GAAG,EAAE,aAAa,QAAQ,eAAe,GAAG,EAAE,aAAa,WAAW,EAAE,GAAG,EAAE,OAAO,CAAC,GAAG;AAAA,IACrI;AACA,WAAO;AAAA,EACT;AACF;AACA,EAAE,GAAG,sBAAsB,CAAC,WAAW,CAAC;AACxC,eAAe,OAAO,gBAAgB,CAAC;", "names": [] } diff --git a/docs/.vitepress/cache/deps/@theme_index.js b/docs/.vitepress/cache/deps/@theme_index.js deleted file mode 100644 index 59495c6..0000000 --- a/docs/.vitepress/cache/deps/@theme_index.js +++ /dev/null @@ -1,258 +0,0 @@ -import { - useMediaQuery -} from "./chunk-7K4EPTTS.js"; -import { - computed, - ref, - shallowRef, - watch -} from "./chunk-JWA4H7QR.js"; - -// node_modules/vitepress/dist/client/theme-default/index.js -import "/Users/ryan/Projects/Personal/share-button/docs/node_modules/vitepress/dist/client/theme-default/styles/fonts.css"; - -// node_modules/vitepress/dist/client/theme-default/without-fonts.js -import "/Users/ryan/Projects/Personal/share-button/docs/node_modules/vitepress/dist/client/theme-default/styles/vars.css"; -import "/Users/ryan/Projects/Personal/share-button/docs/node_modules/vitepress/dist/client/theme-default/styles/base.css"; -import "/Users/ryan/Projects/Personal/share-button/docs/node_modules/vitepress/dist/client/theme-default/styles/icons.css"; -import "/Users/ryan/Projects/Personal/share-button/docs/node_modules/vitepress/dist/client/theme-default/styles/utils.css"; -import "/Users/ryan/Projects/Personal/share-button/docs/node_modules/vitepress/dist/client/theme-default/styles/components/custom-block.css"; -import "/Users/ryan/Projects/Personal/share-button/docs/node_modules/vitepress/dist/client/theme-default/styles/components/vp-code.css"; -import "/Users/ryan/Projects/Personal/share-button/docs/node_modules/vitepress/dist/client/theme-default/styles/components/vp-code-group.css"; -import "/Users/ryan/Projects/Personal/share-button/docs/node_modules/vitepress/dist/client/theme-default/styles/components/vp-doc.css"; -import "/Users/ryan/Projects/Personal/share-button/docs/node_modules/vitepress/dist/client/theme-default/styles/components/vp-sponsor.css"; -import VPBadge from "/Users/ryan/Projects/Personal/share-button/docs/node_modules/vitepress/dist/client/theme-default/components/VPBadge.vue"; -import Layout from "/Users/ryan/Projects/Personal/share-button/docs/node_modules/vitepress/dist/client/theme-default/Layout.vue"; -import { default as default2 } from "/Users/ryan/Projects/Personal/share-button/docs/node_modules/vitepress/dist/client/theme-default/components/VPBadge.vue"; -import { default as default3 } from "/Users/ryan/Projects/Personal/share-button/docs/node_modules/vitepress/dist/client/theme-default/components/VPImage.vue"; -import { default as default4 } from "/Users/ryan/Projects/Personal/share-button/docs/node_modules/vitepress/dist/client/theme-default/components/VPButton.vue"; -import { default as default5 } from "/Users/ryan/Projects/Personal/share-button/docs/node_modules/vitepress/dist/client/theme-default/components/VPHomeHero.vue"; -import { default as default6 } from "/Users/ryan/Projects/Personal/share-button/docs/node_modules/vitepress/dist/client/theme-default/components/VPHomeFeatures.vue"; -import { default as default7 } from "/Users/ryan/Projects/Personal/share-button/docs/node_modules/vitepress/dist/client/theme-default/components/VPHomeSponsors.vue"; -import { default as default8 } from "/Users/ryan/Projects/Personal/share-button/docs/node_modules/vitepress/dist/client/theme-default/components/VPDocAsideSponsors.vue"; -import { default as default9 } from "/Users/ryan/Projects/Personal/share-button/docs/node_modules/vitepress/dist/client/theme-default/components/VPSponsors.vue"; -import { default as default10 } from "/Users/ryan/Projects/Personal/share-button/docs/node_modules/vitepress/dist/client/theme-default/components/VPTeamPage.vue"; -import { default as default11 } from "/Users/ryan/Projects/Personal/share-button/docs/node_modules/vitepress/dist/client/theme-default/components/VPTeamPageTitle.vue"; -import { default as default12 } from "/Users/ryan/Projects/Personal/share-button/docs/node_modules/vitepress/dist/client/theme-default/components/VPTeamPageSection.vue"; -import { default as default13 } from "/Users/ryan/Projects/Personal/share-button/docs/node_modules/vitepress/dist/client/theme-default/components/VPTeamMembers.vue"; - -// node_modules/vitepress/dist/client/theme-default/support/utils.js -import { withBase } from "vitepress"; - -// node_modules/vitepress/dist/client/theme-default/composables/data.js -import { useData as useData$ } from "vitepress"; -var useData = useData$; - -// node_modules/vitepress/dist/client/theme-default/support/utils.js -function ensureStartingSlash(path) { - return /^\//.test(path) ? path : `/${path}`; -} - -// node_modules/vitepress/dist/client/theme-default/support/sidebar.js -function getSidebar(_sidebar, path) { - if (Array.isArray(_sidebar)) - return addBase(_sidebar); - if (_sidebar == null) - return []; - path = ensureStartingSlash(path); - const dir = Object.keys(_sidebar).sort((a, b) => { - return b.split("/").length - a.split("/").length; - }).find((dir2) => { - return path.startsWith(ensureStartingSlash(dir2)); - }); - const sidebar = dir ? _sidebar[dir] : []; - return Array.isArray(sidebar) ? addBase(sidebar) : addBase(sidebar.items, sidebar.base); -} -function getSidebarGroups(sidebar) { - const groups = []; - let lastGroupIndex = 0; - for (const index in sidebar) { - const item = sidebar[index]; - if (item.items) { - lastGroupIndex = groups.push(item); - continue; - } - if (!groups[lastGroupIndex]) { - groups.push({ items: [] }); - } - groups[lastGroupIndex].items.push(item); - } - return groups; -} -function addBase(items, _base) { - return [...items].map((_item) => { - const item = { ..._item }; - const base = item.base || _base; - if (base && item.link) - item.link = base + item.link; - if (item.items) - item.items = addBase(item.items, base); - return item; - }); -} - -// node_modules/vitepress/dist/client/theme-default/composables/sidebar.js -function useSidebar() { - const { frontmatter, page, theme: theme2 } = useData(); - const is960 = useMediaQuery("(min-width: 960px)"); - const isOpen = ref(false); - const _sidebar = computed(() => { - const sidebarConfig = theme2.value.sidebar; - const relativePath = page.value.relativePath; - return sidebarConfig ? getSidebar(sidebarConfig, relativePath) : []; - }); - const sidebar = ref(_sidebar.value); - watch(_sidebar, (next, prev) => { - if (JSON.stringify(next) !== JSON.stringify(prev)) - sidebar.value = _sidebar.value; - }); - const hasSidebar = computed(() => { - return frontmatter.value.sidebar !== false && sidebar.value.length > 0 && frontmatter.value.layout !== "home"; - }); - const leftAside = computed(() => { - if (hasAside) - return frontmatter.value.aside == null ? theme2.value.aside === "left" : frontmatter.value.aside === "left"; - return false; - }); - const hasAside = computed(() => { - if (frontmatter.value.layout === "home") - return false; - if (frontmatter.value.aside != null) - return !!frontmatter.value.aside; - return theme2.value.aside !== false; - }); - const isSidebarEnabled = computed(() => hasSidebar.value && is960.value); - const sidebarGroups = computed(() => { - return hasSidebar.value ? getSidebarGroups(sidebar.value) : []; - }); - function open() { - isOpen.value = true; - } - function close() { - isOpen.value = false; - } - function toggle() { - isOpen.value ? close() : open(); - } - return { - isOpen, - sidebar, - sidebarGroups, - hasSidebar, - hasAside, - leftAside, - isSidebarEnabled, - open, - close, - toggle - }; -} - -// node_modules/vitepress/dist/client/theme-default/composables/local-nav.js -import { onContentUpdated } from "vitepress"; - -// node_modules/vitepress/dist/client/theme-default/composables/outline.js -import { getScrollOffset } from "vitepress"; -var resolvedHeaders = []; -function getHeaders(range) { - const headers = [ - ...document.querySelectorAll(".VPDoc :where(h1,h2,h3,h4,h5,h6)") - ].filter((el) => el.id && el.hasChildNodes()).map((el) => { - const level = Number(el.tagName[1]); - return { - element: el, - title: serializeHeader(el), - link: "#" + el.id, - level - }; - }); - return resolveHeaders(headers, range); -} -function serializeHeader(h) { - let ret = ""; - for (const node of h.childNodes) { - if (node.nodeType === 1) { - if (node.classList.contains("VPBadge") || node.classList.contains("header-anchor") || node.classList.contains("ignore-header")) { - continue; - } - ret += node.textContent; - } else if (node.nodeType === 3) { - ret += node.textContent; - } - } - return ret.trim(); -} -function resolveHeaders(headers, range) { - if (range === false) { - return []; - } - const levelsRange = (typeof range === "object" && !Array.isArray(range) ? range.level : range) || 2; - const [high, low] = typeof levelsRange === "number" ? [levelsRange, levelsRange] : levelsRange === "deep" ? [2, 6] : levelsRange; - headers = headers.filter((h) => h.level >= high && h.level <= low); - resolvedHeaders.length = 0; - for (const { element, link } of headers) { - resolvedHeaders.push({ element, link }); - } - const ret = []; - outer: - for (let i = 0; i < headers.length; i++) { - const cur = headers[i]; - if (i === 0) { - ret.push(cur); - } else { - for (let j = i - 1; j >= 0; j--) { - const prev = headers[j]; - if (prev.level < cur.level) { - ; - (prev.children || (prev.children = [])).push(cur); - continue outer; - } - } - ret.push(cur); - } - } - return ret; -} - -// node_modules/vitepress/dist/client/theme-default/composables/local-nav.js -function useLocalNav() { - const { theme: theme2, frontmatter } = useData(); - const headers = shallowRef([]); - const hasLocalNav = computed(() => { - return headers.value.length > 0; - }); - onContentUpdated(() => { - headers.value = getHeaders(frontmatter.value.outline ?? theme2.value.outline); - }); - return { - headers, - hasLocalNav - }; -} - -// node_modules/vitepress/dist/client/theme-default/without-fonts.js -var theme = { - Layout, - enhanceApp: ({ app }) => { - app.component("Badge", VPBadge); - } -}; -var without_fonts_default = theme; -export { - default2 as VPBadge, - default4 as VPButton, - default8 as VPDocAsideSponsors, - default6 as VPHomeFeatures, - default5 as VPHomeHero, - default7 as VPHomeSponsors, - default3 as VPImage, - default9 as VPSponsors, - default13 as VPTeamMembers, - default10 as VPTeamPage, - default12 as VPTeamPageSection, - default11 as VPTeamPageTitle, - without_fonts_default as default, - useLocalNav, - useSidebar -}; -//# sourceMappingURL=@theme_index.js.map diff --git a/docs/.vitepress/cache/deps/@theme_index.js.map b/docs/.vitepress/cache/deps/@theme_index.js.map deleted file mode 100644 index 1dc503b..0000000 --- a/docs/.vitepress/cache/deps/@theme_index.js.map +++ /dev/null @@ -1,7 +0,0 @@ -{ - "version": 3, - "sources": ["../../../node_modules/vitepress/dist/client/theme-default/index.js", "../../../node_modules/vitepress/dist/client/theme-default/without-fonts.js", "../../../node_modules/vitepress/dist/client/theme-default/support/utils.js", "../../../node_modules/vitepress/dist/client/theme-default/composables/data.js", "../../../node_modules/vitepress/dist/client/theme-default/support/sidebar.js", "../../../node_modules/vitepress/dist/client/theme-default/composables/sidebar.js", "../../../node_modules/vitepress/dist/client/theme-default/composables/local-nav.js", "../../../node_modules/vitepress/dist/client/theme-default/composables/outline.js"], - "sourcesContent": ["import './styles/fonts.css';\nexport * from './without-fonts';\nexport { default as default } from './without-fonts';\n", "import './styles/vars.css';\nimport './styles/base.css';\nimport './styles/icons.css';\nimport './styles/utils.css';\nimport './styles/components/custom-block.css';\nimport './styles/components/vp-code.css';\nimport './styles/components/vp-code-group.css';\nimport './styles/components/vp-doc.css';\nimport './styles/components/vp-sponsor.css';\nimport VPBadge from './components/VPBadge.vue';\nimport Layout from './Layout.vue';\nexport { default as VPBadge } from './components/VPBadge.vue';\nexport { default as VPImage } from './components/VPImage.vue';\nexport { default as VPButton } from './components/VPButton.vue';\nexport { default as VPHomeHero } from './components/VPHomeHero.vue';\nexport { default as VPHomeFeatures } from './components/VPHomeFeatures.vue';\nexport { default as VPHomeSponsors } from './components/VPHomeSponsors.vue';\nexport { default as VPDocAsideSponsors } from './components/VPDocAsideSponsors.vue';\nexport { default as VPSponsors } from './components/VPSponsors.vue';\nexport { default as VPTeamPage } from './components/VPTeamPage.vue';\nexport { default as VPTeamPageTitle } from './components/VPTeamPageTitle.vue';\nexport { default as VPTeamPageSection } from './components/VPTeamPageSection.vue';\nexport { default as VPTeamMembers } from './components/VPTeamMembers.vue';\nexport { useSidebar } from './composables/sidebar';\nexport { useLocalNav } from './composables/local-nav';\nconst theme = {\n Layout,\n enhanceApp: ({ app }) => {\n app.component('Badge', VPBadge);\n }\n};\nexport default theme;\n", "import { withBase } from 'vitepress';\nimport { useData } from '../composables/data';\nimport { isExternal, treatAsHtml } from '../../shared';\nexport function throttleAndDebounce(fn, delay) {\n let timeoutId;\n let called = false;\n return () => {\n if (timeoutId)\n clearTimeout(timeoutId);\n if (!called) {\n fn();\n (called = true) && setTimeout(() => (called = false), delay);\n }\n else\n timeoutId = setTimeout(fn, delay);\n };\n}\nexport function ensureStartingSlash(path) {\n return /^\\//.test(path) ? path : `/${path}`;\n}\nexport function normalizeLink(url) {\n const { pathname, search, hash, protocol } = new URL(url, 'http://a.com');\n if (isExternal(url) ||\n url.startsWith('#') ||\n !protocol.startsWith('http') ||\n !treatAsHtml(pathname))\n return url;\n const { site } = useData();\n const normalizedPath = pathname.endsWith('/') || pathname.endsWith('.html')\n ? url\n : url.replace(/(?:(^\\.+)\\/)?.*$/, `$1${pathname.replace(/(\\.md)?$/, site.value.cleanUrls ? '' : '.html')}${search}${hash}`);\n return withBase(normalizedPath);\n}\n", "import { useData as useData$ } from 'vitepress';\nexport const useData = useData$;\n", "import { ensureStartingSlash } from './utils';\nimport { isActive } from '../../shared';\n/**\n * Get the `Sidebar` from sidebar option. This method will ensure to get correct\n * sidebar config from `MultiSideBarConfig` with various path combinations such\n * as matching `guide/` and `/guide/`. If no matching config was found, it will\n * return empty array.\n */\nexport function getSidebar(_sidebar, path) {\n if (Array.isArray(_sidebar))\n return addBase(_sidebar);\n if (_sidebar == null)\n return [];\n path = ensureStartingSlash(path);\n const dir = Object.keys(_sidebar)\n .sort((a, b) => {\n return b.split('/').length - a.split('/').length;\n })\n .find((dir) => {\n // make sure the multi sidebar key starts with slash too\n return path.startsWith(ensureStartingSlash(dir));\n });\n const sidebar = dir ? _sidebar[dir] : [];\n return Array.isArray(sidebar)\n ? addBase(sidebar)\n : addBase(sidebar.items, sidebar.base);\n}\n/**\n * Get or generate sidebar group from the given sidebar items.\n */\nexport function getSidebarGroups(sidebar) {\n const groups = [];\n let lastGroupIndex = 0;\n for (const index in sidebar) {\n const item = sidebar[index];\n if (item.items) {\n lastGroupIndex = groups.push(item);\n continue;\n }\n if (!groups[lastGroupIndex]) {\n groups.push({ items: [] });\n }\n groups[lastGroupIndex].items.push(item);\n }\n return groups;\n}\nexport function getFlatSideBarLinks(sidebar) {\n const links = [];\n function recursivelyExtractLinks(items) {\n for (const item of items) {\n if (item.text && item.link) {\n links.push({\n text: item.text,\n link: item.link,\n docFooterText: item.docFooterText\n });\n }\n if (item.items) {\n recursivelyExtractLinks(item.items);\n }\n }\n }\n recursivelyExtractLinks(sidebar);\n return links;\n}\n/**\n * Check if the given sidebar item contains any active link.\n */\nexport function hasActiveLink(path, items) {\n if (Array.isArray(items)) {\n return items.some((item) => hasActiveLink(path, item));\n }\n return isActive(path, items.link)\n ? true\n : items.items\n ? hasActiveLink(path, items.items)\n : false;\n}\nfunction addBase(items, _base) {\n return [...items].map((_item) => {\n const item = { ..._item };\n const base = item.base || _base;\n if (base && item.link)\n item.link = base + item.link;\n if (item.items)\n item.items = addBase(item.items, base);\n return item;\n });\n}\n", "import { useMediaQuery } from '@vueuse/core';\nimport { computed, onMounted, onUnmounted, ref, watch, watchEffect, watchPostEffect } from 'vue';\nimport { isActive } from '../../shared';\nimport { hasActiveLink as containsActiveLink, getSidebar, getSidebarGroups } from '../support/sidebar';\nimport { useData } from './data';\nexport function useSidebar() {\n const { frontmatter, page, theme } = useData();\n const is960 = useMediaQuery('(min-width: 960px)');\n const isOpen = ref(false);\n const _sidebar = computed(() => {\n const sidebarConfig = theme.value.sidebar;\n const relativePath = page.value.relativePath;\n return sidebarConfig ? getSidebar(sidebarConfig, relativePath) : [];\n });\n const sidebar = ref(_sidebar.value);\n watch(_sidebar, (next, prev) => {\n if (JSON.stringify(next) !== JSON.stringify(prev))\n sidebar.value = _sidebar.value;\n });\n const hasSidebar = computed(() => {\n return (frontmatter.value.sidebar !== false &&\n sidebar.value.length > 0 &&\n frontmatter.value.layout !== 'home');\n });\n const leftAside = computed(() => {\n if (hasAside)\n return frontmatter.value.aside == null\n ? theme.value.aside === 'left'\n : frontmatter.value.aside === 'left';\n return false;\n });\n const hasAside = computed(() => {\n if (frontmatter.value.layout === 'home')\n return false;\n if (frontmatter.value.aside != null)\n return !!frontmatter.value.aside;\n return theme.value.aside !== false;\n });\n const isSidebarEnabled = computed(() => hasSidebar.value && is960.value);\n const sidebarGroups = computed(() => {\n return hasSidebar.value ? getSidebarGroups(sidebar.value) : [];\n });\n function open() {\n isOpen.value = true;\n }\n function close() {\n isOpen.value = false;\n }\n function toggle() {\n isOpen.value ? close() : open();\n }\n return {\n isOpen,\n sidebar,\n sidebarGroups,\n hasSidebar,\n hasAside,\n leftAside,\n isSidebarEnabled,\n open,\n close,\n toggle\n };\n}\n/**\n * a11y: cache the element that opened the Sidebar (the menu button) then\n * focus that button again when Menu is closed with Escape key.\n */\nexport function useCloseSidebarOnEscape(isOpen, close) {\n let triggerElement;\n watchEffect(() => {\n triggerElement = isOpen.value\n ? document.activeElement\n : undefined;\n });\n onMounted(() => {\n window.addEventListener('keyup', onEscape);\n });\n onUnmounted(() => {\n window.removeEventListener('keyup', onEscape);\n });\n function onEscape(e) {\n if (e.key === 'Escape' && isOpen.value) {\n close();\n triggerElement?.focus();\n }\n }\n}\nexport function useSidebarControl(item) {\n const { page, hash } = useData();\n const collapsed = ref(false);\n const collapsible = computed(() => {\n return item.value.collapsed != null;\n });\n const isLink = computed(() => {\n return !!item.value.link;\n });\n const isActiveLink = ref(false);\n const updateIsActiveLink = () => {\n isActiveLink.value = isActive(page.value.relativePath, item.value.link);\n };\n watch([page, item, hash], updateIsActiveLink);\n onMounted(updateIsActiveLink);\n const hasActiveLink = computed(() => {\n if (isActiveLink.value) {\n return true;\n }\n return item.value.items\n ? containsActiveLink(page.value.relativePath, item.value.items)\n : false;\n });\n const hasChildren = computed(() => {\n return !!(item.value.items && item.value.items.length);\n });\n watchEffect(() => {\n collapsed.value = !!(collapsible.value && item.value.collapsed);\n });\n watchPostEffect(() => {\n ;\n (isActiveLink.value || hasActiveLink.value) && (collapsed.value = false);\n });\n function toggle() {\n if (collapsible.value) {\n collapsed.value = !collapsed.value;\n }\n }\n return {\n collapsed,\n collapsible,\n isLink,\n isActiveLink,\n hasActiveLink,\n hasChildren,\n toggle\n };\n}\n", "import { onContentUpdated } from 'vitepress';\nimport { computed, shallowRef } from 'vue';\nimport { getHeaders } from '../composables/outline';\nimport { useData } from './data';\nexport function useLocalNav() {\n const { theme, frontmatter } = useData();\n const headers = shallowRef([]);\n const hasLocalNav = computed(() => {\n return headers.value.length > 0;\n });\n onContentUpdated(() => {\n headers.value = getHeaders(frontmatter.value.outline ?? theme.value.outline);\n });\n return {\n headers,\n hasLocalNav\n };\n}\n", "import { getScrollOffset } from 'vitepress';\nimport { onMounted, onUnmounted, onUpdated } from 'vue';\nimport { throttleAndDebounce } from '../support/utils';\nimport { useAside } from './aside';\n// cached list of anchor elements from resolveHeaders\nconst resolvedHeaders = [];\nexport function resolveTitle(theme) {\n return ((typeof theme.outline === 'object' &&\n !Array.isArray(theme.outline) &&\n theme.outline.label) ||\n theme.outlineTitle ||\n 'On this page');\n}\nexport function getHeaders(range) {\n const headers = [\n ...document.querySelectorAll('.VPDoc :where(h1,h2,h3,h4,h5,h6)')\n ]\n .filter((el) => el.id && el.hasChildNodes())\n .map((el) => {\n const level = Number(el.tagName[1]);\n return {\n element: el,\n title: serializeHeader(el),\n link: '#' + el.id,\n level\n };\n });\n return resolveHeaders(headers, range);\n}\nfunction serializeHeader(h) {\n let ret = '';\n for (const node of h.childNodes) {\n if (node.nodeType === 1) {\n if (node.classList.contains('VPBadge') ||\n node.classList.contains('header-anchor') ||\n node.classList.contains('ignore-header')) {\n continue;\n }\n ret += node.textContent;\n }\n else if (node.nodeType === 3) {\n ret += node.textContent;\n }\n }\n return ret.trim();\n}\nexport function resolveHeaders(headers, range) {\n if (range === false) {\n return [];\n }\n const levelsRange = (typeof range === 'object' && !Array.isArray(range)\n ? range.level\n : range) || 2;\n const [high, low] = typeof levelsRange === 'number'\n ? [levelsRange, levelsRange]\n : levelsRange === 'deep'\n ? [2, 6]\n : levelsRange;\n headers = headers.filter((h) => h.level >= high && h.level <= low);\n // clear previous caches\n resolvedHeaders.length = 0;\n // update global header list for active link rendering\n for (const { element, link } of headers) {\n resolvedHeaders.push({ element, link });\n }\n const ret = [];\n outer: for (let i = 0; i < headers.length; i++) {\n const cur = headers[i];\n if (i === 0) {\n ret.push(cur);\n }\n else {\n for (let j = i - 1; j >= 0; j--) {\n const prev = headers[j];\n if (prev.level < cur.level) {\n ;\n (prev.children || (prev.children = [])).push(cur);\n continue outer;\n }\n }\n ret.push(cur);\n }\n }\n return ret;\n}\nexport function useActiveAnchor(container, marker) {\n const { isAsideEnabled } = useAside();\n const onScroll = throttleAndDebounce(setActiveLink, 100);\n let prevActiveLink = null;\n onMounted(() => {\n requestAnimationFrame(setActiveLink);\n window.addEventListener('scroll', onScroll);\n });\n onUpdated(() => {\n // sidebar update means a route change\n activateLink(location.hash);\n });\n onUnmounted(() => {\n window.removeEventListener('scroll', onScroll);\n });\n function setActiveLink() {\n if (!isAsideEnabled.value) {\n return;\n }\n const scrollY = window.scrollY;\n const innerHeight = window.innerHeight;\n const offsetHeight = document.body.offsetHeight;\n const isBottom = Math.abs(scrollY + innerHeight - offsetHeight) < 1;\n // resolvedHeaders may be repositioned, hidden or fix positioned\n const headers = resolvedHeaders\n .map(({ element, link }) => ({\n link,\n top: getAbsoluteTop(element)\n }))\n .filter(({ top }) => !Number.isNaN(top))\n .sort((a, b) => a.top - b.top);\n // no headers available for active link\n if (!headers.length) {\n activateLink(null);\n return;\n }\n // page top\n if (scrollY < 1) {\n activateLink(null);\n return;\n }\n // page bottom - highlight last link\n if (isBottom) {\n activateLink(headers[headers.length - 1].link);\n return;\n }\n // find the last header above the top of viewport\n let activeLink = null;\n for (const { link, top } of headers) {\n if (top > scrollY + getScrollOffset() + 4) {\n break;\n }\n activeLink = link;\n }\n activateLink(activeLink);\n }\n function activateLink(hash) {\n if (prevActiveLink) {\n prevActiveLink.classList.remove('active');\n }\n if (hash == null) {\n prevActiveLink = null;\n }\n else {\n prevActiveLink = container.value.querySelector(`a[href=\"${decodeURIComponent(hash)}\"]`);\n }\n const activeLink = prevActiveLink;\n if (activeLink) {\n activeLink.classList.add('active');\n marker.value.style.top = activeLink.offsetTop + 39 + 'px';\n marker.value.style.opacity = '1';\n }\n else {\n marker.value.style.top = '33px';\n marker.value.style.opacity = '0';\n }\n }\n}\nfunction getAbsoluteTop(element) {\n let offsetTop = 0;\n while (element !== document.body) {\n if (element === null) {\n // child element is:\n // - not attached to the DOM (display: none)\n // - set to fixed position (not scrollable)\n // - body or html element (null offsetParent)\n return NaN;\n }\n offsetTop += element.offsetTop;\n element = element.offsetParent;\n }\n return offsetTop;\n}\n"], - "mappings": "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", - "names": ["default", "dir", "theme", "theme"] -} diff --git a/docs/.vitepress/cache/deps/_metadata.json b/docs/.vitepress/cache/deps/_metadata.json index 538ffd6..0c91457 100644 --- a/docs/.vitepress/cache/deps/_metadata.json +++ b/docs/.vitepress/cache/deps/_metadata.json @@ -1,55 +1,49 @@ { - "hash": "e71b8f6c", - "configHash": "3276595c", + "hash": "1c5ea000", + "configHash": "520c33ad", "lockfileHash": "f32476c5", - "browserHash": "d8133560", + "browserHash": "a822aa3b", "optimized": { "vue": { "src": "../../../node_modules/vue/dist/vue.runtime.esm-bundler.js", "file": "vue.js", - "fileHash": "62ce1fc5", + "fileHash": "9843b331", "needsInterop": false }, "vitepress > @vue/devtools-api": { "src": "../../../node_modules/@vue/devtools-api/dist/index.js", "file": "vitepress___@vue_devtools-api.js", - "fileHash": "2e0aa744", + "fileHash": "87be02b1", "needsInterop": false }, "vitepress > @vueuse/core": { "src": "../../../node_modules/@vueuse/core/index.mjs", "file": "vitepress___@vueuse_core.js", - "fileHash": "78dce1ab", + "fileHash": "10da2960", "needsInterop": false }, "vitepress > @vueuse/integrations/useFocusTrap": { "src": "../../../node_modules/@vueuse/integrations/useFocusTrap.mjs", "file": "vitepress___@vueuse_integrations_useFocusTrap.js", - "fileHash": "d5bf3ae8", + "fileHash": "9c8e424f", "needsInterop": false }, "vitepress > mark.js/src/vanilla.js": { "src": "../../../node_modules/mark.js/src/vanilla.js", "file": "vitepress___mark__js_src_vanilla__js.js", - "fileHash": "dc34aa8a", + "fileHash": "37d7a4e2", "needsInterop": false }, "vitepress > minisearch": { "src": "../../../node_modules/minisearch/dist/es/index.js", "file": "vitepress___minisearch.js", - "fileHash": "f4e9e7e6", - "needsInterop": false - }, - "@theme/index": { - "src": "../../../node_modules/vitepress/dist/client/theme-default/index.js", - "file": "@theme_index.js", - "fileHash": "35da2138", + "fileHash": "42ef56a1", "needsInterop": false }, "@royalfig/share-button": { "src": "../../../node_modules/@royalfig/share-button/dist/share-button.es.js", "file": "@royalfig_share-button.js", - "fileHash": "95ece686", + "fileHash": "1656fcd6", "needsInterop": false } }, diff --git a/docs/.vitepress/config.mts b/docs/.vitepress/config.mts index 219e880..5faf2b4 100644 --- a/docs/.vitepress/config.mts +++ b/docs/.vitepress/config.mts @@ -2,73 +2,50 @@ import { defineConfig } from "vitepress"; // https://vitepress.dev/reference/site-config export default defineConfig({ - base: "/share-button/", - vue: { - template: { - compilerOptions: { - // treat all tags with a dash as custom elements - isCustomElement: (tag) => tag.includes("-"), - }, - }, - }, - cleanUrls: true, - title: "Share Button ", - description: "A custom web component for seamless sharing", - head: [ - [ - "style", - {}, - ` .sb-container { - display: flex; - gap: 1rem; - justify-content: center; - flex-wrap: wrap; - padding: 2rem; - border: 1px solid var(--vp-c-divider); - border-radius: 8px; - }`, - ], - ], - lastUpdated: true, - themeConfig: { - // https://vitepress.dev/reference/default-theme-config - search: { provider: "local" }, - externalLinkIcon: true, - nav: [ - { text: "Home", link: "/" }, - { text: "Examples", link: "/markdown-examples" }, - ], + base: "/share-button/", + vue: { + template: { + compilerOptions: { + // treat all tags with a dash as custom elements + isCustomElement: (tag) => tag.includes("-"), + }, + }, + }, + cleanUrls: true, + title: "Share Button ", + description: "A custom web component for seamless sharing", + head: [["link", { rel: "icon", href: "/share-button/icon.avif", type: "image/avif"}]], + lastUpdated: true, + themeConfig: { + // https://vitepress.dev/reference/default-theme-config + search: { provider: "local" }, + externalLinkIcon: true, + nav: [ + { text: "Home", link: "/" }, + { text: "Install", link: "/install" }, + ], - sidebar: [ - { - text: "Get started", - items: [ - { text: "Install", link: "/install" }, - { text: "Basic usage", link: "/basics" }, - ], - }, - { - text: "Customization", - items: [ - { text: "Attributes", link: "customization/attributes" }, - { text: "Dark mode", link: "customization/dark-mode" }, - { text: "Advanced", link: "customization/advanced" }, - ], - }, - { - text: "Examples", - items: [ - { text: "Color", link: "/examples/color" }, - { text: "Text", link: "/examples/text" }, - { text: "Networks", link: "/examples/networks" }, - { text: "Icons only", link: "/examples/atomic" }, - { text: "Floating", link: "/examples/floating" }, - ], - }, - ], + sidebar: [ + { + text: "Get started", + items: [ + { text: "Install", link: "/install" }, + { text: "Basic usage", link: "/basics" }, + ], + }, + { + text: "Customization", + items: [ + { text: "Attributes", link: "/customization/attributes" }, + { text: "Dark mode", link: "/customization/dark-mode" }, + { text: "Advanced", link: "/customization/advanced" }, + ], + }, + + ], - socialLinks: [ - { icon: "github", link: "https://github.com/royalfig/share-button" }, - ], - }, + socialLinks: [ + { icon: "github", link: "https://github.com/royalfig/share-button" }, + ], + }, }); diff --git a/docs/.vitepress/theme/custom.css b/docs/.vitepress/theme/custom.css new file mode 100644 index 0000000..4dbe956 --- /dev/null +++ b/docs/.vitepress/theme/custom.css @@ -0,0 +1,52 @@ +.sb-container { + display: flex; + flex-wrap: wrap; + gap: 1rem; + justify-content: center; + padding: 2rem; + border: 1px solid var(--vp-c-divider); + border-radius: 8px; +} + +.sb-button:is(a, button) { + display: inline-block; + padding: 0 20px; + font-size: 14px; + font-weight: 600; + line-height: 38px; + color: var(--vp-button-alt-text); + text-align: center; + text-decoration: none; + white-space: nowrap; + background-color: var(--vp-button-alt-bg); + border: 1px solid transparent; + border-color: var(--vp-button-alt-border); + border-radius: 20px; + transition: color 0.25s, border-color 0.25s, background-color 0.25s; + + &:hover { + color: var(--vp-button-alt-hover-text); + background-color: var(--vp-button-alt-hover-bg); + border-color: var(--vp-button-alt-hover-border); + } + + &::after { + display: none !important; + } +} + +:root { + --vp-button-brand-bg: #f02c69; + --vp-c-brand-1: hsl(341deg 87% 56%); + --vp-button-brand-hover-bg: hsl(341deg 100% 65%); + --vp-c-brand-2: hsl(341deg 100% 65%); +} + +.dark { + --vp-button-brand-bg: #ffaec8; + --vp-c-brand-1: #ffaec8; + --vp-c-brand-2: hsl(341deg 100% 95%); + --vp-button-brand-text: #000; + --vp-button-brand-hover-bg: hsl(341deg 100% 95%); + --vp-button-brand-hover-text: #000; +} \ No newline at end of file diff --git a/docs/.vitepress/theme/index.ts b/docs/.vitepress/theme/index.ts new file mode 100644 index 0000000..4c2878f --- /dev/null +++ b/docs/.vitepress/theme/index.ts @@ -0,0 +1,7 @@ +// .vitepress/theme/index.js +import "@royalfig/share-button"; +import DefaultTheme from 'vitepress/theme' + +import './custom.css' + +export default DefaultTheme; \ No newline at end of file diff --git a/docs/api-examples.md b/docs/api-examples.md deleted file mode 100644 index 6bd8bb5..0000000 --- a/docs/api-examples.md +++ /dev/null @@ -1,49 +0,0 @@ ---- -outline: deep ---- - -# Runtime API Examples - -This page demonstrates usage of some of the runtime APIs provided by VitePress. - -The main `useData()` API can be used to access site, theme, and page data for the current page. It works in both `.md` and `.vue` files: - -```md - - -## Results - -### Theme Data -
{{ theme }}
- -### Page Data -
{{ page }}
- -### Page Frontmatter -
{{ frontmatter }}
-``` - - - -## Results - -### Theme Data -
{{ theme }}
- -### Page Data -
{{ page }}
- -### Page Frontmatter -
{{ frontmatter }}
- -## More - -Check out the documentation for the [full list of runtime APIs](https://vitepress.dev/reference/runtime-api#usedata). diff --git a/docs/basics.md b/docs/basics.md index 4a52cec..d69dda8 100644 --- a/docs/basics.md +++ b/docs/basics.md @@ -2,4 +2,29 @@ title: The basics of using the share button --- -# Basics +# Basic usage + +After [installing](./install.md) the button, add the `share-button` whereever you want it to appear. + +```html + +``` + +
+ +
+ + +## How it works + +When on an iOS or Android device, clicking the share button triggers the [native share menu](https://developer.mozilla.org/en-US/docs/Web/API/Web_Share_API), which provides a wide range of sharing opportunities and seamless experience. + +When on other platforms, where the share menu isn't as well implemented, the button triggers a popover menu that supports sharing to X, Facebook, LinkedIn, WhatsApp, Telegram, Email, and copying the link (or [any mixture of these you choose](./customization/attributes#networks)). + +## Fully customizable + +The share button is almost completely customizable via [attributes](./customization/attributes.md) and [CSS](./customization/advanced.md). + +::: info Tip 💁 +Use `attributes` for basic changes like customizing the button's color, text, and social media networks. For more advanced changes, use CSS. +::: diff --git a/docs/customization/attributes.md b/docs/customization/attributes.md index dc0fd37..9bea930 100644 --- a/docs/customization/attributes.md +++ b/docs/customization/attributes.md @@ -2,9 +2,9 @@ title: Customizing the share button with attributes --- -Use `attributes` for quick changes to the share button. +# Attributes -[[toc]] +Use `attributes` to make quick changes to the share button. ## Icon @@ -26,23 +26,145 @@ Change the icon attribute to the icon you want to use: ``` -By default, the button uses icon `1`. +By default, the button uses icon `1`. The share button uses the fantastic [Remix Icon Library](https://remixicon.com/). +## Text + +The button defaults to "Share." Customize text by adding it between the tags: + +```html +Compartir +``` + +
+Compartir +
+ +For a button without text, use the `circle` attribute. The attribute makes the button round, omitting the text and keeping the icon centered. + +```html + +``` + +
+ +
+ +For a button without an icon, set the `icon` attribute to `false`. + +```html + +``` + +
+ +
+ ## Color -There are several +Use the `color-button` attribute to change the button's color. Any valid CSS value works. + +```html + +``` + +
+ +
+ +You can also change the color of the button's text with `color-button-text`: +```html + +``` - +
+ +
+ +Change the popover color and text like this: + +```html + +``` + +
+ +
+ +Here is the full list of color attributes and their default values: + +| Attribute | Description | Default | +| -------------------- | ---------------------------- | ----------------------------------------------------------------------------------------------------------------------- | +| `color-button-bg` | The button background color | hsl(242deg 55.5% 2.74%) | +| `color-button-text` | The button text color | hsl(242deg 9.58% 98%) | +| `color-popover-bg` | The popover background color | hsl(242deg 9.58% 98%) | +| `color-popover-text` | The popover text color | hsl(242deg 55.5% 2.74%) | + +## Networks + +You can specify which social networks your share button shows as well as their order. + +Available networks include: + +- X (formerly Twitter) +- LinkedIn +- Facebook +- Email (opens an email client if configured) +- WhatsApp +- Telegram +- Copy (copies the current URL to the user's clipboard) + +By default, all options are present, in the order above. + +To customize networks and their order, use the `networks` attribute and pass in the desired networks in a comma-separated list. Networks will appear in the same order as entered. + +```html + +``` + +
+ +
+ +::: tip Hey there! +Don't see a network you want to use? File a [GitHub issue](https://github.com/royalfig/share-button/issues) to get it added! +::: + +### Inline share buttons + +It's also possible to only display the social media icons and omit the button altogether using the `atomic` attribute: + +```html + +``` + + +
+ +
+ + +## Sticky share button + +By default, the button appears wherever you add it to the page. However, it's also possible to make give it a fixed or sticky position at the bottom of the page. + +Use the `position` attribute with `left`, `center`, or `right` to customize the button's position. + +```html + +``` - \ No newline at end of file diff --git a/docs/customization/dark-mode.md b/docs/customization/dark-mode.md index ff05c71..a0535f3 100644 --- a/docs/customization/dark-mode.md +++ b/docs/customization/dark-mode.md @@ -36,41 +36,15 @@ If you site has a dark mode toggle, you can also control the button's dark mode
- +
- - \ No newline at end of file diff --git a/docs/examples/color.md b/docs/examples/color.md deleted file mode 100644 index 4ad13ff..0000000 --- a/docs/examples/color.md +++ /dev/null @@ -1,46 +0,0 @@ ---- -title: Color ---- - -# Color customization - -## Change button color - -Use the `color-button` attribute to change the button's color. Any valid CSS value works. - -```html - -``` - -
- -
- - -You can also change the color of the button's text with `color-button-text`: - -```html - -``` - -
- -
- -## Change popover color - -```html - -``` - -
- -
- - \ No newline at end of file diff --git a/docs/examples/icon.md b/docs/examples/icon.md deleted file mode 100644 index 7f936e5..0000000 --- a/docs/examples/icon.md +++ /dev/null @@ -1,5 +0,0 @@ ---- -title: Icons ---- - -# Icons \ No newline at end of file diff --git a/docs/examples/networks.md b/docs/examples/networks.md deleted file mode 100644 index ad7162b..0000000 --- a/docs/examples/networks.md +++ /dev/null @@ -1,40 +0,0 @@ ---- -title: Networks ---- - -# Networks - -You can specify which social networks your share button shows as well as their order. - -Available networks include: -- X (formerly Twitter) -- LinkedIn -- Facebook -- Email (opens an email client if configured) -- WhatsApp -- Telegram -- Copy link (copies the current URL to the user's clipboard) - -By default, all options will be present, in the order above. - -To customize networks and their order, use the `networks` attribute and pass in the desired networks in a comma-separated list. Networks will appear in the same order as entered. - -```html - -``` - -
- -
- -::: tip Hey there! -Don't see a network you want to use? File a GitHub issue to get it added! -::: - - \ No newline at end of file diff --git a/docs/examples/text.md b/docs/examples/text.md deleted file mode 100644 index 899422f..0000000 --- a/docs/examples/text.md +++ /dev/null @@ -1,36 +0,0 @@ ---- -title: Customize text ---- - -# Customize text - -Add text between the `share-button` tags to make your button say whatever you want. The button falls back to "Share" as its default text. - -```html -Share on the web -``` - -
-Share on the web -
- -## Icon button - -To omit text altogether, use the `circle` attribute. The button will render without text and become round to maintain its styling. - - -
- -
- -::: tip Icon -Use the [`icon`](/examples/icon.md) attribute to change the icon. -::: - - \ No newline at end of file diff --git a/docs/galaxy.avif b/docs/galaxy.avif new file mode 100644 index 0000000000000000000000000000000000000000..ef00710cce87b49c7789a0f5b5717875b2a02e0c GIT binary patch literal 97215 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