diff --git a/assets/index-BRr93AGl.css b/assets/index-BRr93AGl.css new file mode 100644 index 0000000..802fc35 --- /dev/null +++ b/assets/index-BRr93AGl.css @@ -0,0 +1 @@ +*,:before,:after{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }*,:before,:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:#e5e7eb}:before,:after{--tw-content: ""}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji";font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]{display:none}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.pointer-events-none{pointer-events:none}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.inset-0{top:0;right:0;bottom:0;left:0}.bottom-14{bottom:3.5rem}.bottom-6{bottom:1.5rem}.left-0{left:0}.left-1\/2{left:50%}.left-3{left:.75rem}.left-4{left:1rem}.right-0{right:0}.right-14{right:3.5rem}.right-4{right:1rem}.top-0{top:0}.top-1\/2{top:50%}.top-4{top:1rem}.z-10{z-index:10}.z-50{z-index:50}.mx-auto{margin-left:auto;margin-right:auto}.-ml-2{margin-left:-.5rem}.mb-2{margin-bottom:.5rem}.mb-4{margin-bottom:1rem}.mb-6{margin-bottom:1.5rem}.mb-8{margin-bottom:2rem}.ml-2{margin-left:.5rem}.mr-12{margin-right:3rem}.mt-2{margin-top:.5rem}.mt-4{margin-top:1rem}.mt-6{margin-top:1.5rem}.mt-8{margin-top:2rem}.block{display:block}.flex{display:flex}.grid{display:grid}.h-\[275px\]{height:275px}.h-auto{height:auto}.h-full{height:100%}.max-h-\[160vh\]{max-height:160vh}.max-h-\[90vh\]{max-height:90vh}.min-h-screen{min-height:100vh}.w-96{width:24rem}.w-\[600px\]{width:600px}.w-\[800px\]{width:800px}.w-\[900px\]{width:900px}.w-full{width:100%}.max-w-md{max-width:28rem}.-translate-x-1\/2{--tw-translate-x: -50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-translate-y-1\/2{--tw-translate-y: -50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-translate-y-full{--tw-translate-y: -100%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-y-0{--tw-translate-y: 0px;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-y-full{--tw-translate-y: 100%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}@keyframes spin{to{transform:rotate(360deg)}}.animate-spin{animation:spin 1s linear infinite}.cursor-pointer{cursor:pointer}.list-inside{list-style-position:inside}.list-disc{list-style-type:disc}.appearance-none{-webkit-appearance:none;-moz-appearance:none;appearance:none}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.flex-col{flex-direction:column}.items-end{align-items:flex-end}.items-center{align-items:center}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-2{gap:.5rem}.gap-4{gap:1rem}.gap-6{gap:1.5rem}.space-x-4>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(1rem * var(--tw-space-x-reverse));margin-left:calc(1rem * calc(1 - var(--tw-space-x-reverse)))}.space-y-2>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.5rem * var(--tw-space-y-reverse))}.space-y-4>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(1rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1rem * var(--tw-space-y-reverse))}.overflow-hidden{overflow:hidden}.overflow-y-auto{overflow-y:auto}.whitespace-nowrap{white-space:nowrap}.rounded{border-radius:.25rem}.rounded-full{border-radius:9999px}.rounded-lg{border-radius:.5rem}.rounded-xl{border-radius:.75rem}.rounded-t-lg{border-top-left-radius:.5rem;border-top-right-radius:.5rem}.border{border-width:1px}.border-0{border-width:0px}.border-gray-700{--tw-border-opacity: 1;border-color:rgb(55 65 81 / var(--tw-border-opacity))}.border-green-500{--tw-border-opacity: 1;border-color:rgb(34 197 94 / var(--tw-border-opacity))}.border-green-500\/20{border-color:#22c55e33}.border-green-500\/30{border-color:#22c55e4d}.border-purple-500{--tw-border-opacity: 1;border-color:rgb(168 85 247 / var(--tw-border-opacity))}.border-purple-500\/20{border-color:#a855f733}.border-purple-500\/30{border-color:#a855f74d}.border-teal-500{--tw-border-opacity: 1;border-color:rgb(20 184 166 / var(--tw-border-opacity))}.border-teal-500\/20{border-color:#14b8a633}.border-teal-500\/30{border-color:#14b8a64d}.bg-black\/50{background-color:#00000080}.bg-blue-500{--tw-bg-opacity: 1;background-color:rgb(59 130 246 / var(--tw-bg-opacity))}.bg-blue-500\/20{background-color:#3b82f633}.bg-gray-800\/20{background-color:#1f293733}.bg-gray-800\/30{background-color:#1f29374d}.bg-gray-800\/50{background-color:#1f293780}.bg-gray-900\/50{background-color:#11182780}.bg-gray-900\/90{background-color:#111827e6}.bg-green-500{--tw-bg-opacity: 1;background-color:rgb(34 197 94 / var(--tw-bg-opacity))}.bg-green-500\/20{background-color:#22c55e33}.bg-green-700\/50{background-color:#15803d80}.bg-green-900\/20{background-color:#14532d33}.bg-green-900\/30{background-color:#14532d4d}.bg-purple-700\/50{background-color:#7e22ce80}.bg-purple-900\/20{background-color:#581c8733}.bg-teal-700\/50{background-color:#0f766e80}.bg-teal-900\/20{background-color:#134e4a33}.bg-white{--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity))}.bg-opacity-10{--tw-bg-opacity: .1}.bg-\[url\(\'data\:image\/svg\+xml\;base64\,PHN2ZyB3aWR0aD0iNDAiIGhlaWdodD0iNDAiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI\+PGRlZnM\+PHBhdHRlcm4gaWQ9ImdyaWQiIHdpZHRoPSI0MCIgaGVpZ2h0PSI0MCIgcGF0dGVyblVuaXRzPSJ1c2VyU3BhY2VPblVzZSI\+PHBhdGggZD0iTSAwIDEwIEwgNDAgMTAgaTExMC0xMCBMMTAgaDQwIE0wIDIwIEwgNDAgMjAgaTExMC0yMCBMMTAgaDQwIE0wIDMwIEwgNDAgMzAgaTExMC0zMCBMMTAgaDQwIE0zMCAwIEwgMzA0MCBMMTAgaDQwIiBmaWxsPSJub25lIiBzdHJva2U9InJnYmEoMjU1LDI1NSwyNTUsMC4xKSIgc3Ryb2tlLXdpZHRoPSIxIi8\+PC9wYXR0ZXJuPjwvZGVmcz48cmVjdCB3aWR0aD0iMTAwJSIgaGVpZ2h0PSIxMDAlIiBmaWxsPSJ1cmwoI2dyaWQpIi8\+PC9zdmc\+\'\)\]{background-image:url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNDAiIGhlaWdodD0iNDAiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGRlZnM+PHBhdHRlcm4gaWQ9ImdyaWQiIHdpZHRoPSI0MCIgaGVpZ2h0PSI0MCIgcGF0dGVyblVuaXRzPSJ1c2VyU3BhY2VPblVzZSI+PHBhdGggZD0iTSAwIDEwIEwgNDAgMTAgaTExMC0xMCBMMTAgaDQwIE0wIDIwIEwgNDAgMjAgaTExMC0yMCBMMTAgaDQwIE0wIDMwIEwgNDAgMzAgaTExMC0zMCBMMTAgaDQwIE0zMCAwIEwgMzA0MCBMMTAgaDQwIiBmaWxsPSJub25lIiBzdHJva2U9InJnYmEoMjU1LDI1NSwyNTUsMC4xKSIgc3Ryb2tlLXdpZHRoPSIxIi8+PC9wYXR0ZXJuPjwvZGVmcz48cmVjdCB3aWR0aD0iMTAwJSIgaGVpZ2h0PSIxMDAlIiBmaWxsPSJ1cmwoI2dyaWQpIi8+PC9zdmc+)}.bg-gradient-to-br{background-image:linear-gradient(to bottom right,var(--tw-gradient-stops))}.from-gray-900{--tw-gradient-from: #111827 var(--tw-gradient-from-position);--tw-gradient-to: rgb(17 24 39 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.via-green-900{--tw-gradient-to: rgb(20 83 45 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), #14532d var(--tw-gradient-via-position), var(--tw-gradient-to)}.via-purple-900{--tw-gradient-to: rgb(88 28 135 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), #581c87 var(--tw-gradient-via-position), var(--tw-gradient-to)}.via-teal-900{--tw-gradient-to: rgb(19 78 74 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), #134e4a var(--tw-gradient-via-position), var(--tw-gradient-to)}.to-emerald-900{--tw-gradient-to: #064e3b var(--tw-gradient-to-position)}.to-violet-900{--tw-gradient-to: #4c1d95 var(--tw-gradient-to-position)}.p-1{padding:.25rem}.p-2{padding:.5rem}.p-3{padding:.75rem}.p-4{padding:1rem}.p-6{padding:1.5rem}.px-2{padding-left:.5rem;padding-right:.5rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-4{padding-left:1rem;padding-right:1rem}.py-1{padding-top:.25rem;padding-bottom:.25rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.pl-10{padding-left:2.5rem}.pr-4{padding-right:1rem}.pt-6{padding-top:1.5rem}.text-center{text-align:center}.font-mono{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.text-2xl{font-size:1.5rem;line-height:2rem}.text-6xl{font-size:3.75rem;line-height:1}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xl{font-size:1.25rem;line-height:1.75rem}.text-xs{font-size:.75rem;line-height:1rem}.font-bold{font-weight:700}.font-medium{font-weight:500}.font-semibold{font-weight:600}.leading-tight{line-height:1.25}.text-blue-300{--tw-text-opacity: 1;color:rgb(147 197 253 / var(--tw-text-opacity))}.text-blue-400{--tw-text-opacity: 1;color:rgb(96 165 250 / var(--tw-text-opacity))}.text-blue-500{--tw-text-opacity: 1;color:rgb(59 130 246 / var(--tw-text-opacity))}.text-cyan-400{--tw-text-opacity: 1;color:rgb(34 211 238 / var(--tw-text-opacity))}.text-emerald-400{--tw-text-opacity: 1;color:rgb(52 211 153 / var(--tw-text-opacity))}.text-fuchsia-400{--tw-text-opacity: 1;color:rgb(232 121 249 / var(--tw-text-opacity))}.text-gray-500{--tw-text-opacity: 1;color:rgb(107 114 128 / var(--tw-text-opacity))}.text-green-100{--tw-text-opacity: 1;color:rgb(220 252 231 / var(--tw-text-opacity))}.text-green-300{--tw-text-opacity: 1;color:rgb(134 239 172 / var(--tw-text-opacity))}.text-green-400{--tw-text-opacity: 1;color:rgb(74 222 128 / var(--tw-text-opacity))}.text-green-500{--tw-text-opacity: 1;color:rgb(34 197 94 / var(--tw-text-opacity))}.text-indigo-400{--tw-text-opacity: 1;color:rgb(129 140 248 / var(--tw-text-opacity))}.text-lime-400{--tw-text-opacity: 1;color:rgb(163 230 53 / var(--tw-text-opacity))}.text-orange-400{--tw-text-opacity: 1;color:rgb(251 146 60 / var(--tw-text-opacity))}.text-pink-400{--tw-text-opacity: 1;color:rgb(244 114 182 / var(--tw-text-opacity))}.text-purple-100{--tw-text-opacity: 1;color:rgb(243 232 255 / var(--tw-text-opacity))}.text-purple-300{--tw-text-opacity: 1;color:rgb(216 180 254 / var(--tw-text-opacity))}.text-purple-400{--tw-text-opacity: 1;color:rgb(192 132 252 / var(--tw-text-opacity))}.text-purple-500{--tw-text-opacity: 1;color:rgb(168 85 247 / var(--tw-text-opacity))}.text-red-400{--tw-text-opacity: 1;color:rgb(248 113 113 / var(--tw-text-opacity))}.text-red-500{--tw-text-opacity: 1;color:rgb(239 68 68 / var(--tw-text-opacity))}.text-teal-100{--tw-text-opacity: 1;color:rgb(204 251 241 / var(--tw-text-opacity))}.text-teal-300{--tw-text-opacity: 1;color:rgb(94 234 212 / var(--tw-text-opacity))}.text-teal-400{--tw-text-opacity: 1;color:rgb(45 212 191 / var(--tw-text-opacity))}.text-teal-500{--tw-text-opacity: 1;color:rgb(20 184 166 / var(--tw-text-opacity))}.text-violet-400{--tw-text-opacity: 1;color:rgb(167 139 250 / var(--tw-text-opacity))}.text-white{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity))}.placeholder-green-300\/50::-moz-placeholder{color:#86efac80}.placeholder-green-300\/50::placeholder{color:#86efac80}.placeholder-purple-300\/50::-moz-placeholder{color:#d8b4fe80}.placeholder-purple-300\/50::placeholder{color:#d8b4fe80}.placeholder-teal-300\/50::-moz-placeholder{color:#5eead480}.placeholder-teal-300\/50::placeholder{color:#5eead480}.opacity-0{opacity:0}.opacity-10{opacity:.1}.opacity-100{opacity:1}.opacity-20{opacity:.2}.opacity-50{opacity:.5}.opacity-75{opacity:.75}.opacity-90{opacity:.9}.shadow{--tw-shadow: 0 1px 3px 0 rgb(0 0 0 / .1), 0 1px 2px -1px rgb(0 0 0 / .1);--tw-shadow-colored: 0 1px 3px 0 var(--tw-shadow-color), 0 1px 2px -1px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-lg{--tw-shadow: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.outline{outline-style:solid}.outline-2{outline-width:2px}.outline-green-500{outline-color:#22c55e}.outline-purple-500{outline-color:#a855f7}.outline-teal-500{outline-color:#14b8a6}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.backdrop-blur-md{--tw-backdrop-blur: blur(12px);-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.backdrop-blur-sm{--tw-backdrop-blur: blur(4px);-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.transition-all{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-opacity{transition-property:opacity;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-transform{transition-property:transform;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.duration-300{transition-duration:.3s}:root{color-scheme:dark;--scrollbar-track-color: rgba(31, 41, 55, .5);--scrollbar-thumb-color: rgba(147, 51, 234, .5);--scrollbar-thumb-hover-color: rgba(147, 51, 234, .7)}body{margin:0;overflow:hidden}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--scrollbar-track-color)}::-webkit-scrollbar-thumb{background:var(--scrollbar-thumb-color);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--scrollbar-thumb-hover-color)}.purple{--scrollbar-thumb-color: rgba(147, 51, 234, .5);--scrollbar-thumb-hover-color: rgba(147, 51, 234, .7)}.green{--scrollbar-thumb-color: rgba(16, 185, 129, .5);--scrollbar-thumb-hover-color: rgba(16, 185, 129, .7)}.teal{--scrollbar-thumb-color: rgba(0, 128, 128, .5);--scrollbar-thumb-hover-color: rgba(0, 128, 128, .7)}.hover\:border-green-500\/40:hover{border-color:#22c55e66}.hover\:border-purple-500\/40:hover{border-color:#a855f766}.hover\:border-teal-500\/40:hover{border-color:#14b8a666}.hover\:bg-blue-700:hover{--tw-bg-opacity: 1;background-color:rgb(29 78 216 / var(--tw-bg-opacity))}.hover\:bg-gray-800\/30:hover{background-color:#1f29374d}.hover\:bg-gray-800\/50:hover{background-color:#1f293780}.hover\:bg-gray-800\/80:hover{background-color:#1f2937cc}.hover\:bg-opacity-40:hover{--tw-bg-opacity: .4}.hover\:opacity-100:hover{opacity:1}.focus\:border-green-500:focus{--tw-border-opacity: 1;border-color:rgb(34 197 94 / var(--tw-border-opacity))}.focus\:border-purple-400:focus{--tw-border-opacity: 1;border-color:rgb(192 132 252 / var(--tw-border-opacity))}.focus\:border-purple-500:focus{--tw-border-opacity: 1;border-color:rgb(168 85 247 / var(--tw-border-opacity))}.focus\:border-teal-500:focus{--tw-border-opacity: 1;border-color:rgb(20 184 166 / var(--tw-border-opacity))}.focus\:outline-none:focus{outline:2px solid transparent;outline-offset:2px}.focus\:ring-2:focus{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.focus\:ring-green-500\/50:focus{--tw-ring-color: rgb(34 197 94 / .5)}.focus\:ring-purple-500\/50:focus{--tw-ring-color: rgb(168 85 247 / .5)}.focus\:ring-teal-500\/50:focus{--tw-ring-color: rgb(20 184 166 / .5)}.group:hover .group-hover\:text-green-200{--tw-text-opacity: 1;color:rgb(187 247 208 / var(--tw-text-opacity))}.group:hover .group-hover\:text-purple-200{--tw-text-opacity: 1;color:rgb(233 213 255 / var(--tw-text-opacity))}.group:hover .group-hover\:text-teal-200{--tw-text-opacity: 1;color:rgb(153 246 228 / var(--tw-text-opacity))}.group:hover .group-hover\:opacity-100{opacity:1}@media (min-width: 768px){.md\:bottom-6{bottom:1.5rem}.md\:left-1\/2{left:50%}.md\:right-14{right:3.5rem}.md\:-mt-6{margin-top:-1.5rem}.md\:-translate-x-1\/2{--tw-translate-x: -50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.md\:translate-y-0{--tw-translate-y: 0px;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.md\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}.md\:flex-row{flex-direction:row}.md\:space-x-2>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(.5rem * var(--tw-space-x-reverse));margin-left:calc(.5rem * calc(1 - var(--tw-space-x-reverse)))}.md\:space-y-0>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(0px * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(0px * var(--tw-space-y-reverse))}}@media (min-width: 1024px){.lg\:grid-cols-6{grid-template-columns:repeat(6,minmax(0,1fr))}} diff --git a/assets/index-BSqY4HEL.css b/assets/index-BSqY4HEL.css deleted file mode 100644 index c948b2b..0000000 --- a/assets/index-BSqY4HEL.css +++ /dev/null @@ -1 +0,0 @@ -*,:before,:after{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }::backdrop{--tw-border-spacing-x: 0;--tw-border-spacing-y: 0;--tw-translate-x: 0;--tw-translate-y: 0;--tw-rotate: 0;--tw-skew-x: 0;--tw-skew-y: 0;--tw-scale-x: 1;--tw-scale-y: 1;--tw-pan-x: ;--tw-pan-y: ;--tw-pinch-zoom: ;--tw-scroll-snap-strictness: proximity;--tw-gradient-from-position: ;--tw-gradient-via-position: ;--tw-gradient-to-position: ;--tw-ordinal: ;--tw-slashed-zero: ;--tw-numeric-figure: ;--tw-numeric-spacing: ;--tw-numeric-fraction: ;--tw-ring-inset: ;--tw-ring-offset-width: 0px;--tw-ring-offset-color: #fff;--tw-ring-color: rgb(59 130 246 / .5);--tw-ring-offset-shadow: 0 0 #0000;--tw-ring-shadow: 0 0 #0000;--tw-shadow: 0 0 #0000;--tw-shadow-colored: 0 0 #0000;--tw-blur: ;--tw-brightness: ;--tw-contrast: ;--tw-grayscale: ;--tw-hue-rotate: ;--tw-invert: ;--tw-saturate: ;--tw-sepia: ;--tw-drop-shadow: ;--tw-backdrop-blur: ;--tw-backdrop-brightness: ;--tw-backdrop-contrast: ;--tw-backdrop-grayscale: ;--tw-backdrop-hue-rotate: ;--tw-backdrop-invert: ;--tw-backdrop-opacity: ;--tw-backdrop-saturate: ;--tw-backdrop-sepia: ;--tw-contain-size: ;--tw-contain-layout: ;--tw-contain-paint: ;--tw-contain-style: }*,:before,:after{box-sizing:border-box;border-width:0;border-style:solid;border-color:#e5e7eb}:before,:after{--tw-content: ""}html,:host{line-height:1.5;-webkit-text-size-adjust:100%;-moz-tab-size:4;-o-tab-size:4;tab-size:4;font-family:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji",Segoe UI Symbol,"Noto Color Emoji";font-feature-settings:normal;font-variation-settings:normal;-webkit-tap-highlight-color:transparent}body{margin:0;line-height:inherit}hr{height:0;color:inherit;border-top-width:1px}abbr:where([title]){-webkit-text-decoration:underline dotted;text-decoration:underline dotted}h1,h2,h3,h4,h5,h6{font-size:inherit;font-weight:inherit}a{color:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace;font-feature-settings:normal;font-variation-settings:normal;font-size:1em}small{font-size:80%}sub,sup{font-size:75%;line-height:0;position:relative;vertical-align:baseline}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}button,input,optgroup,select,textarea{font-family:inherit;font-feature-settings:inherit;font-variation-settings:inherit;font-size:100%;font-weight:inherit;line-height:inherit;letter-spacing:inherit;color:inherit;margin:0;padding:0}button,select{text-transform:none}button,input:where([type=button]),input:where([type=reset]),input:where([type=submit]){-webkit-appearance:button;background-color:transparent;background-image:none}:-moz-focusring{outline:auto}:-moz-ui-invalid{box-shadow:none}progress{vertical-align:baseline}::-webkit-inner-spin-button,::-webkit-outer-spin-button{height:auto}[type=search]{-webkit-appearance:textfield;outline-offset:-2px}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-file-upload-button{-webkit-appearance:button;font:inherit}summary{display:list-item}blockquote,dl,dd,h1,h2,h3,h4,h5,h6,hr,figure,p,pre{margin:0}fieldset{margin:0;padding:0}legend{padding:0}ol,ul,menu{list-style:none;margin:0;padding:0}dialog{padding:0}textarea{resize:vertical}input::-moz-placeholder,textarea::-moz-placeholder{opacity:1;color:#9ca3af}input::placeholder,textarea::placeholder{opacity:1;color:#9ca3af}button,[role=button]{cursor:pointer}:disabled{cursor:default}img,svg,video,canvas,audio,iframe,embed,object{display:block;vertical-align:middle}img,video{max-width:100%;height:auto}[hidden]{display:none}.sr-only{position:absolute;width:1px;height:1px;padding:0;margin:-1px;overflow:hidden;clip:rect(0,0,0,0);white-space:nowrap;border-width:0}.pointer-events-none{pointer-events:none}.fixed{position:fixed}.absolute{position:absolute}.relative{position:relative}.inset-0{top:0;right:0;bottom:0;left:0}.bottom-16{bottom:4rem}.bottom-6{bottom:1.5rem}.left-0{left:0}.left-1\/2{left:50%}.left-3{left:.75rem}.left-4{left:1rem}.right-0{right:0}.right-14{right:3.5rem}.right-4{right:1rem}.top-0{top:0}.top-1\/2{top:50%}.top-4{top:1rem}.z-10{z-index:10}.z-50{z-index:50}.mx-auto{margin-left:auto;margin-right:auto}.-ml-2{margin-left:-.5rem}.mb-2{margin-bottom:.5rem}.mb-4{margin-bottom:1rem}.mb-6{margin-bottom:1.5rem}.mb-8{margin-bottom:2rem}.ml-2{margin-left:.5rem}.mr-12{margin-right:3rem}.mr-2{margin-right:.5rem}.mt-2{margin-top:.5rem}.mt-4{margin-top:1rem}.mt-6{margin-top:1.5rem}.mt-8{margin-top:2rem}.block{display:block}.flex{display:flex}.grid{display:grid}.h-\[275px\]{height:275px}.h-auto{height:auto}.h-full{height:100%}.max-h-\[160vh\]{max-height:160vh}.max-h-\[90vh\]{max-height:90vh}.min-h-screen{min-height:100vh}.w-96{width:24rem}.w-\[600px\]{width:600px}.w-\[800px\]{width:800px}.w-\[900px\]{width:900px}.w-full{width:100%}.max-w-md{max-width:28rem}.-translate-x-1\/2{--tw-translate-x: -50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-translate-x-full{--tw-translate-x: -100%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.-translate-y-1\/2{--tw-translate-y: -50%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-y-0{--tw-translate-y: 0px;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.translate-y-full{--tw-translate-y: 100%;transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}.transform{transform:translate(var(--tw-translate-x),var(--tw-translate-y)) rotate(var(--tw-rotate)) skew(var(--tw-skew-x)) skewY(var(--tw-skew-y)) scaleX(var(--tw-scale-x)) scaleY(var(--tw-scale-y))}@keyframes spin{to{transform:rotate(360deg)}}.animate-spin{animation:spin 1s linear infinite}.cursor-pointer{cursor:pointer}.list-inside{list-style-position:inside}.list-disc{list-style-type:disc}.appearance-none{-webkit-appearance:none;-moz-appearance:none;appearance:none}.grid-cols-2{grid-template-columns:repeat(2,minmax(0,1fr))}.flex-col{flex-direction:column}.items-end{align-items:flex-end}.items-center{align-items:center}.justify-center{justify-content:center}.justify-between{justify-content:space-between}.gap-2{gap:.5rem}.gap-4{gap:1rem}.gap-6{gap:1.5rem}.space-x-4>:not([hidden])~:not([hidden]){--tw-space-x-reverse: 0;margin-right:calc(1rem * var(--tw-space-x-reverse));margin-left:calc(1rem * calc(1 - var(--tw-space-x-reverse)))}.space-y-2>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(.5rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(.5rem * var(--tw-space-y-reverse))}.space-y-4>:not([hidden])~:not([hidden]){--tw-space-y-reverse: 0;margin-top:calc(1rem * calc(1 - var(--tw-space-y-reverse)));margin-bottom:calc(1rem * var(--tw-space-y-reverse))}.overflow-hidden{overflow:hidden}.overflow-y-auto{overflow-y:auto}.whitespace-nowrap{white-space:nowrap}.rounded{border-radius:.25rem}.rounded-full{border-radius:9999px}.rounded-lg{border-radius:.5rem}.rounded-xl{border-radius:.75rem}.rounded-t-lg{border-top-left-radius:.5rem;border-top-right-radius:.5rem}.border{border-width:1px}.border-0{border-width:0px}.border-gray-700{--tw-border-opacity: 1;border-color:rgb(55 65 81 / var(--tw-border-opacity))}.border-green-500{--tw-border-opacity: 1;border-color:rgb(34 197 94 / var(--tw-border-opacity))}.border-green-500\/20{border-color:#22c55e33}.border-green-500\/30{border-color:#22c55e4d}.border-purple-500{--tw-border-opacity: 1;border-color:rgb(168 85 247 / var(--tw-border-opacity))}.border-purple-500\/20{border-color:#a855f733}.border-purple-500\/30{border-color:#a855f74d}.border-teal-500{--tw-border-opacity: 1;border-color:rgb(20 184 166 / var(--tw-border-opacity))}.border-teal-500\/20{border-color:#14b8a633}.border-teal-500\/30{border-color:#14b8a64d}.bg-black\/50{background-color:#00000080}.bg-blue-500{--tw-bg-opacity: 1;background-color:rgb(59 130 246 / var(--tw-bg-opacity))}.bg-blue-500\/20{background-color:#3b82f633}.bg-gray-800\/20{background-color:#1f293733}.bg-gray-800\/30{background-color:#1f29374d}.bg-gray-800\/50{background-color:#1f293780}.bg-gray-900\/50{background-color:#11182780}.bg-gray-900\/90{background-color:#111827e6}.bg-green-500{--tw-bg-opacity: 1;background-color:rgb(34 197 94 / var(--tw-bg-opacity))}.bg-green-500\/20{background-color:#22c55e33}.bg-green-700\/50{background-color:#15803d80}.bg-green-900\/20{background-color:#14532d33}.bg-green-900\/30{background-color:#14532d4d}.bg-purple-700\/50{background-color:#7e22ce80}.bg-purple-900\/20{background-color:#581c8733}.bg-teal-700\/50{background-color:#0f766e80}.bg-teal-900\/20{background-color:#134e4a33}.bg-white{--tw-bg-opacity: 1;background-color:rgb(255 255 255 / var(--tw-bg-opacity))}.bg-opacity-10{--tw-bg-opacity: .1}.bg-\[url\(\'data\:image\/svg\+xml\;base64\,PHN2ZyB3aWR0aD0iNDAiIGhlaWdodD0iNDAiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI\+PGRlZnM\+PHBhdHRlcm4gaWQ9ImdyaWQiIHdpZHRoPSI0MCIgaGVpZ2h0PSI0MCIgcGF0dGVyblVuaXRzPSJ1c2VyU3BhY2VPblVzZSI\+PHBhdGggZD0iTSAwIDEwIEwgNDAgMTAgaTExMC0xMCBMMTAgaDQwIE0wIDIwIEwgNDAgMjAgaTExMC0yMCBMMTAgaDQwIE0wIDMwIEwgNDAgMzAgaTExMC0zMCBMMTAgaDQwIE0zMCAwIEwgMzA0MCBMMTAgaDQwIiBmaWxsPSJub25lIiBzdHJva2U9InJnYmEoMjU1LDI1NSwyNTUsMC4xKSIgc3Ryb2tlLXdpZHRoPSIxIi8\+PC9wYXR0ZXJuPjwvZGVmcz48cmVjdCB3aWR0aD0iMTAwJSIgaGVpZ2h0PSIxMDAlIiBmaWxsPSJ1cmwoI2dyaWQpIi8\+PC9zdmc\+\'\)\]{background-image:url(data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNDAiIGhlaWdodD0iNDAiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGRlZnM+PHBhdHRlcm4gaWQ9ImdyaWQiIHdpZHRoPSI0MCIgaGVpZ2h0PSI0MCIgcGF0dGVyblVuaXRzPSJ1c2VyU3BhY2VPblVzZSI+PHBhdGggZD0iTSAwIDEwIEwgNDAgMTAgaTExMC0xMCBMMTAgaDQwIE0wIDIwIEwgNDAgMjAgaTExMC0yMCBMMTAgaDQwIE0wIDMwIEwgNDAgMzAgaTExMC0zMCBMMTAgaDQwIE0zMCAwIEwgMzA0MCBMMTAgaDQwIiBmaWxsPSJub25lIiBzdHJva2U9InJnYmEoMjU1LDI1NSwyNTUsMC4xKSIgc3Ryb2tlLXdpZHRoPSIxIi8+PC9wYXR0ZXJuPjwvZGVmcz48cmVjdCB3aWR0aD0iMTAwJSIgaGVpZ2h0PSIxMDAlIiBmaWxsPSJ1cmwoI2dyaWQpIi8+PC9zdmc+)}.bg-gradient-to-br{background-image:linear-gradient(to bottom right,var(--tw-gradient-stops))}.from-gray-900{--tw-gradient-from: #111827 var(--tw-gradient-from-position);--tw-gradient-to: rgb(17 24 39 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), var(--tw-gradient-to)}.via-green-900{--tw-gradient-to: rgb(20 83 45 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), #14532d var(--tw-gradient-via-position), var(--tw-gradient-to)}.via-purple-900{--tw-gradient-to: rgb(88 28 135 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), #581c87 var(--tw-gradient-via-position), var(--tw-gradient-to)}.via-teal-900{--tw-gradient-to: rgb(19 78 74 / 0) var(--tw-gradient-to-position);--tw-gradient-stops: var(--tw-gradient-from), #134e4a var(--tw-gradient-via-position), var(--tw-gradient-to)}.to-emerald-900{--tw-gradient-to: #064e3b var(--tw-gradient-to-position)}.to-violet-900{--tw-gradient-to: #4c1d95 var(--tw-gradient-to-position)}.p-1{padding:.25rem}.p-2{padding:.5rem}.p-3{padding:.75rem}.p-4{padding:1rem}.p-6{padding:1.5rem}.px-2{padding-left:.5rem;padding-right:.5rem}.px-3{padding-left:.75rem;padding-right:.75rem}.px-4{padding-left:1rem;padding-right:1rem}.py-1{padding-top:.25rem;padding-bottom:.25rem}.py-2{padding-top:.5rem;padding-bottom:.5rem}.pl-10{padding-left:2.5rem}.pr-4{padding-right:1rem}.pt-6{padding-top:1.5rem}.text-center{text-align:center}.font-mono{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.text-2xl{font-size:1.5rem;line-height:2rem}.text-6xl{font-size:3.75rem;line-height:1}.text-lg{font-size:1.125rem;line-height:1.75rem}.text-sm{font-size:.875rem;line-height:1.25rem}.text-xl{font-size:1.25rem;line-height:1.75rem}.text-xs{font-size:.75rem;line-height:1rem}.font-bold{font-weight:700}.font-medium{font-weight:500}.font-semibold{font-weight:600}.leading-tight{line-height:1.25}.text-blue-300{--tw-text-opacity: 1;color:rgb(147 197 253 / var(--tw-text-opacity))}.text-blue-400{--tw-text-opacity: 1;color:rgb(96 165 250 / var(--tw-text-opacity))}.text-blue-500{--tw-text-opacity: 1;color:rgb(59 130 246 / var(--tw-text-opacity))}.text-cyan-400{--tw-text-opacity: 1;color:rgb(34 211 238 / var(--tw-text-opacity))}.text-emerald-400{--tw-text-opacity: 1;color:rgb(52 211 153 / var(--tw-text-opacity))}.text-fuchsia-400{--tw-text-opacity: 1;color:rgb(232 121 249 / var(--tw-text-opacity))}.text-gray-500{--tw-text-opacity: 1;color:rgb(107 114 128 / var(--tw-text-opacity))}.text-green-100{--tw-text-opacity: 1;color:rgb(220 252 231 / var(--tw-text-opacity))}.text-green-300{--tw-text-opacity: 1;color:rgb(134 239 172 / var(--tw-text-opacity))}.text-green-400{--tw-text-opacity: 1;color:rgb(74 222 128 / var(--tw-text-opacity))}.text-green-500{--tw-text-opacity: 1;color:rgb(34 197 94 / var(--tw-text-opacity))}.text-indigo-400{--tw-text-opacity: 1;color:rgb(129 140 248 / var(--tw-text-opacity))}.text-lime-400{--tw-text-opacity: 1;color:rgb(163 230 53 / var(--tw-text-opacity))}.text-orange-400{--tw-text-opacity: 1;color:rgb(251 146 60 / var(--tw-text-opacity))}.text-pink-400{--tw-text-opacity: 1;color:rgb(244 114 182 / var(--tw-text-opacity))}.text-purple-100{--tw-text-opacity: 1;color:rgb(243 232 255 / var(--tw-text-opacity))}.text-purple-300{--tw-text-opacity: 1;color:rgb(216 180 254 / var(--tw-text-opacity))}.text-purple-400{--tw-text-opacity: 1;color:rgb(192 132 252 / var(--tw-text-opacity))}.text-purple-500{--tw-text-opacity: 1;color:rgb(168 85 247 / var(--tw-text-opacity))}.text-red-400{--tw-text-opacity: 1;color:rgb(248 113 113 / var(--tw-text-opacity))}.text-red-500{--tw-text-opacity: 1;color:rgb(239 68 68 / var(--tw-text-opacity))}.text-teal-100{--tw-text-opacity: 1;color:rgb(204 251 241 / var(--tw-text-opacity))}.text-teal-300{--tw-text-opacity: 1;color:rgb(94 234 212 / var(--tw-text-opacity))}.text-teal-400{--tw-text-opacity: 1;color:rgb(45 212 191 / var(--tw-text-opacity))}.text-teal-500{--tw-text-opacity: 1;color:rgb(20 184 166 / var(--tw-text-opacity))}.text-violet-400{--tw-text-opacity: 1;color:rgb(167 139 250 / var(--tw-text-opacity))}.text-white{--tw-text-opacity: 1;color:rgb(255 255 255 / var(--tw-text-opacity))}.placeholder-green-300\/50::-moz-placeholder{color:#86efac80}.placeholder-green-300\/50::placeholder{color:#86efac80}.placeholder-purple-300\/50::-moz-placeholder{color:#d8b4fe80}.placeholder-purple-300\/50::placeholder{color:#d8b4fe80}.placeholder-teal-300\/50::-moz-placeholder{color:#5eead480}.placeholder-teal-300\/50::placeholder{color:#5eead480}.opacity-0{opacity:0}.opacity-10{opacity:.1}.opacity-100{opacity:1}.opacity-20{opacity:.2}.opacity-50{opacity:.5}.opacity-75{opacity:.75}.opacity-90{opacity:.9}.shadow{--tw-shadow: 0 1px 3px 0 rgb(0 0 0 / .1), 0 1px 2px -1px rgb(0 0 0 / .1);--tw-shadow-colored: 0 1px 3px 0 var(--tw-shadow-color), 0 1px 2px -1px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.shadow-lg{--tw-shadow: 0 10px 15px -3px rgb(0 0 0 / .1), 0 4px 6px -4px rgb(0 0 0 / .1);--tw-shadow-colored: 0 10px 15px -3px var(--tw-shadow-color), 0 4px 6px -4px var(--tw-shadow-color);box-shadow:var(--tw-ring-offset-shadow, 0 0 #0000),var(--tw-ring-shadow, 0 0 #0000),var(--tw-shadow)}.outline{outline-style:solid}.outline-2{outline-width:2px}.outline-green-500{outline-color:#22c55e}.outline-purple-500{outline-color:#a855f7}.outline-teal-500{outline-color:#14b8a6}.filter{filter:var(--tw-blur) var(--tw-brightness) var(--tw-contrast) var(--tw-grayscale) var(--tw-hue-rotate) var(--tw-invert) var(--tw-saturate) var(--tw-sepia) var(--tw-drop-shadow)}.backdrop-blur-md{--tw-backdrop-blur: blur(12px);-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.backdrop-blur-sm{--tw-backdrop-blur: blur(4px);-webkit-backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia);backdrop-filter:var(--tw-backdrop-blur) var(--tw-backdrop-brightness) var(--tw-backdrop-contrast) var(--tw-backdrop-grayscale) var(--tw-backdrop-hue-rotate) var(--tw-backdrop-invert) var(--tw-backdrop-opacity) var(--tw-backdrop-saturate) var(--tw-backdrop-sepia)}.transition-all{transition-property:all;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-colors{transition-property:color,background-color,border-color,text-decoration-color,fill,stroke;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-opacity{transition-property:opacity;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.transition-transform{transition-property:transform;transition-timing-function:cubic-bezier(.4,0,.2,1);transition-duration:.15s}.duration-300{transition-duration:.3s}:root{color-scheme:dark;--scrollbar-track-color: rgba(31, 41, 55, .5);--scrollbar-thumb-color: rgba(147, 51, 234, .5);--scrollbar-thumb-hover-color: rgba(147, 51, 234, .7)}body{margin:0;overflow:hidden}::-webkit-scrollbar{width:8px;height:8px}::-webkit-scrollbar-track{background:var(--scrollbar-track-color)}::-webkit-scrollbar-thumb{background:var(--scrollbar-thumb-color);border-radius:4px}::-webkit-scrollbar-thumb:hover{background:var(--scrollbar-thumb-hover-color)}.purple{--scrollbar-thumb-color: rgba(147, 51, 234, .5);--scrollbar-thumb-hover-color: rgba(147, 51, 234, .7)}.green{--scrollbar-thumb-color: rgba(16, 185, 129, .5);--scrollbar-thumb-hover-color: rgba(16, 185, 129, .7)}.teal{--scrollbar-thumb-color: rgba(0, 128, 128, .5);--scrollbar-thumb-hover-color: rgba(0, 128, 128, .7)}.hover\:border-green-500\/40:hover{border-color:#22c55e66}.hover\:border-purple-500\/40:hover{border-color:#a855f766}.hover\:border-teal-500\/40:hover{border-color:#14b8a666}.hover\:bg-blue-700:hover{--tw-bg-opacity: 1;background-color:rgb(29 78 216 / var(--tw-bg-opacity))}.hover\:bg-gray-800\/30:hover{background-color:#1f29374d}.hover\:bg-gray-800\/50:hover{background-color:#1f293780}.hover\:bg-gray-800\/80:hover{background-color:#1f2937cc}.hover\:bg-opacity-40:hover{--tw-bg-opacity: .4}.hover\:opacity-100:hover{opacity:1}.focus\:border-green-500:focus{--tw-border-opacity: 1;border-color:rgb(34 197 94 / var(--tw-border-opacity))}.focus\:border-purple-400:focus{--tw-border-opacity: 1;border-color:rgb(192 132 252 / var(--tw-border-opacity))}.focus\:border-purple-500:focus{--tw-border-opacity: 1;border-color:rgb(168 85 247 / var(--tw-border-opacity))}.focus\:border-teal-500:focus{--tw-border-opacity: 1;border-color:rgb(20 184 166 / var(--tw-border-opacity))}.focus\:outline-none:focus{outline:2px solid transparent;outline-offset:2px}.focus\:ring-2:focus{--tw-ring-offset-shadow: var(--tw-ring-inset) 0 0 0 var(--tw-ring-offset-width) var(--tw-ring-offset-color);--tw-ring-shadow: var(--tw-ring-inset) 0 0 0 calc(2px + var(--tw-ring-offset-width)) var(--tw-ring-color);box-shadow:var(--tw-ring-offset-shadow),var(--tw-ring-shadow),var(--tw-shadow, 0 0 #0000)}.focus\:ring-green-500\/50:focus{--tw-ring-color: rgb(34 197 94 / .5)}.focus\:ring-purple-500\/50:focus{--tw-ring-color: rgb(168 85 247 / .5)}.focus\:ring-teal-500\/50:focus{--tw-ring-color: rgb(20 184 166 / .5)}.group:hover .group-hover\:text-green-200{--tw-text-opacity: 1;color:rgb(187 247 208 / var(--tw-text-opacity))}.group:hover .group-hover\:text-purple-200{--tw-text-opacity: 1;color:rgb(233 213 255 / var(--tw-text-opacity))}.group:hover .group-hover\:text-teal-200{--tw-text-opacity: 1;color:rgb(153 246 228 / var(--tw-text-opacity))}.group:hover .group-hover\:opacity-100{opacity:1}@media (min-width: 768px){.md\:grid-cols-4{grid-template-columns:repeat(4,minmax(0,1fr))}}@media (min-width: 1024px){.lg\:grid-cols-6{grid-template-columns:repeat(6,minmax(0,1fr))}} diff --git a/assets/index-CJnwh7tW.js b/assets/index-BWRVgFpF.js similarity index 82% rename from assets/index-CJnwh7tW.js rename to assets/index-BWRVgFpF.js index c8f87d5..6370156 100644 --- a/assets/index-CJnwh7tW.js +++ b/assets/index-BWRVgFpF.js @@ -325,4 +325,4 @@ Error generating stack: `+i.message+` `)}get[Symbol.toStringTag](){return"AxiosHeaders"}static from(t){return t instanceof this?t:new this(t)}static concat(t,...n){const r=new this(t);return n.forEach(o=>r.set(o)),r}static accessor(t){const r=(this[ru]=this[ru]={accessors:{}}).accessors,o=this.prototype;function i(l){const a=Vn(l);r[a]||(A0(o,l),r[a]=!0)}return E.isArray(t)?t.forEach(i):i(t),this}}je.accessor(["Content-Type","Content-Length","Accept","Accept-Encoding","User-Agent","Authorization"]);E.reduceDescriptors(je.prototype,({value:e},t)=>{let n=t[0].toUpperCase()+t.slice(1);return{get:()=>e,set(r){this[n]=r}}});E.freezeMethods(je);function Oi(e,t){const n=this||Mr,r=t||n,o=je.from(r.headers);let i=r.data;return E.forEach(e,function(a){i=a.call(n,i,o.normalize(),t?t.status:void 0)}),o.normalize(),i}function rf(e){return!!(e&&e.__CANCEL__)}function Dn(e,t,n){I.call(this,e??"canceled",I.ERR_CANCELED,t,n),this.name="CanceledError"}E.inherits(Dn,I,{__CANCEL__:!0});function of(e,t,n){const r=n.config.validateStatus;!n.status||!r||r(n.status)?e(n):t(new I("Request failed with status code "+n.status,[I.ERR_BAD_REQUEST,I.ERR_BAD_RESPONSE][Math.floor(n.status/100)-4],n.config,n.request,n))}function M0(e){const t=/^([-+\w]{1,25})(:?\/\/|:)/.exec(e);return t&&t[1]||""}function P0(e,t){e=e||10;const n=new Array(e),r=new Array(e);let o=0,i=0,l;return t=t!==void 0?t:1e3,function(u){const c=Date.now(),f=r[i];l||(l=c),n[o]=u,r[o]=c;let h=i,p=0;for(;h!==o;)p+=n[h++],h=h%e;if(o=(o+1)%e,o===i&&(i=(i+1)%e),c-l{n=f,o=null,i&&(clearTimeout(i),i=null),e.apply(null,c)};return[(...c)=>{const f=Date.now(),h=f-n;h>=r?l(c,f):(o=c,i||(i=setTimeout(()=>{i=null,l(o)},r-h)))},()=>o&&l(o)]}const Oo=(e,t,n=3)=>{let r=0;const o=P0(50,250);return L0(i=>{const l=i.loaded,a=i.lengthComputable?i.total:void 0,u=l-r,c=o(u),f=l<=a;r=l;const h={loaded:l,total:a,progress:a?l/a:void 0,bytes:u,rate:c||void 0,estimated:c&&a&&f?(a-l)/c:void 0,event:i,lengthComputable:a!=null,[t?"download":"upload"]:!0};e(h)},n)},ou=(e,t)=>{const n=e!=null;return[r=>t[0]({lengthComputable:n,total:e,loaded:r}),t[1]]},iu=e=>(...t)=>E.asap(()=>e(...t)),R0=Te.hasStandardBrowserEnv?function(){const t=Te.navigator&&/(msie|trident)/i.test(Te.navigator.userAgent),n=document.createElement("a");let r;function o(i){let l=i;return t&&(n.setAttribute("href",l),l=n.href),n.setAttribute("href",l),{href:n.href,protocol:n.protocol?n.protocol.replace(/:$/,""):"",host:n.host,search:n.search?n.search.replace(/^\?/,""):"",hash:n.hash?n.hash.replace(/^#/,""):"",hostname:n.hostname,port:n.port,pathname:n.pathname.charAt(0)==="/"?n.pathname:"/"+n.pathname}}return r=o(window.location.href),function(l){const a=E.isString(l)?o(l):l;return a.protocol===r.protocol&&a.host===r.host}}():function(){return function(){return!0}}(),D0=Te.hasStandardBrowserEnv?{write(e,t,n,r,o,i){const l=[e+"="+encodeURIComponent(t)];E.isNumber(n)&&l.push("expires="+new Date(n).toGMTString()),E.isString(r)&&l.push("path="+r),E.isString(o)&&l.push("domain="+o),i===!0&&l.push("secure"),document.cookie=l.join("; ")},read(e){const t=document.cookie.match(new RegExp("(^|;\\s*)("+e+")=([^;]*)"));return t?decodeURIComponent(t[3]):null},remove(e){this.write(e,"",Date.now()-864e5)}}:{write(){},read(){return null},remove(){}};function O0(e){return/^([a-z][a-z\d+\-.]*:)?\/\//i.test(e)}function _0(e,t){return t?e.replace(/\/?\/$/,"")+"/"+t.replace(/^\/+/,""):e}function lf(e,t){return e&&!O0(t)?_0(e,t):t}const lu=e=>e instanceof je?{...e}:e;function Xt(e,t){t=t||{};const n={};function r(c,f,h){return E.isPlainObject(c)&&E.isPlainObject(f)?E.merge.call({caseless:h},c,f):E.isPlainObject(f)?E.merge({},f):E.isArray(f)?f.slice():f}function o(c,f,h){if(E.isUndefined(f)){if(!E.isUndefined(c))return r(void 0,c,h)}else return r(c,f,h)}function i(c,f){if(!E.isUndefined(f))return r(void 0,f)}function l(c,f){if(E.isUndefined(f)){if(!E.isUndefined(c))return r(void 0,c)}else return r(void 0,f)}function a(c,f,h){if(h in t)return r(c,f);if(h in e)return r(void 0,c)}const u={url:i,method:i,data:i,baseURL:l,transformRequest:l,transformResponse:l,paramsSerializer:l,timeout:l,timeoutMessage:l,withCredentials:l,withXSRFToken:l,adapter:l,responseType:l,xsrfCookieName:l,xsrfHeaderName:l,onUploadProgress:l,onDownloadProgress:l,decompress:l,maxContentLength:l,maxBodyLength:l,beforeRedirect:l,transport:l,httpAgent:l,httpsAgent:l,cancelToken:l,socketPath:l,responseEncoding:l,validateStatus:a,headers:(c,f)=>o(lu(c),lu(f),!0)};return E.forEach(Object.keys(Object.assign({},e,t)),function(f){const h=u[f]||o,p=h(e[f],t[f],f);E.isUndefined(p)&&h!==a||(n[f]=p)}),n}const sf=e=>{const t=Xt({},e);let{data:n,withXSRFToken:r,xsrfHeaderName:o,xsrfCookieName:i,headers:l,auth:a}=t;t.headers=l=je.from(l),t.url=ef(lf(t.baseURL,t.url),e.params,e.paramsSerializer),a&&l.set("Authorization","Basic "+btoa((a.username||"")+":"+(a.password?unescape(encodeURIComponent(a.password)):"")));let u;if(E.isFormData(n)){if(Te.hasStandardBrowserEnv||Te.hasStandardBrowserWebWorkerEnv)l.setContentType(void 0);else if((u=l.getContentType())!==!1){const[c,...f]=u?u.split(";").map(h=>h.trim()).filter(Boolean):[];l.setContentType([c||"multipart/form-data",...f].join("; "))}}if(Te.hasStandardBrowserEnv&&(r&&E.isFunction(r)&&(r=r(t)),r||r!==!1&&R0(t.url))){const c=o&&i&&D0.read(i);c&&l.set(o,c)}return t},I0=typeof XMLHttpRequest<"u",F0=I0&&function(e){return new Promise(function(n,r){const o=sf(e);let i=o.data;const l=je.from(o.headers).normalize();let{responseType:a,onUploadProgress:u,onDownloadProgress:c}=o,f,h,p,y,m;function k(){y&&y(),m&&m(),o.cancelToken&&o.cancelToken.unsubscribe(f),o.signal&&o.signal.removeEventListener("abort",f)}let x=new XMLHttpRequest;x.open(o.method.toUpperCase(),o.url,!0),x.timeout=o.timeout;function g(){if(!x)return;const v=je.from("getAllResponseHeaders"in x&&x.getAllResponseHeaders()),N={data:!a||a==="text"||a==="json"?x.responseText:x.response,status:x.status,statusText:x.statusText,headers:v,config:e,request:x};of(function(j){n(j),k()},function(j){r(j),k()},N),x=null}"onloadend"in x?x.onloadend=g:x.onreadystatechange=function(){!x||x.readyState!==4||x.status===0&&!(x.responseURL&&x.responseURL.indexOf("file:")===0)||setTimeout(g)},x.onabort=function(){x&&(r(new I("Request aborted",I.ECONNABORTED,e,x)),x=null)},x.onerror=function(){r(new I("Network Error",I.ERR_NETWORK,e,x)),x=null},x.ontimeout=function(){let S=o.timeout?"timeout of "+o.timeout+"ms exceeded":"timeout exceeded";const N=o.transitional||tf;o.timeoutErrorMessage&&(S=o.timeoutErrorMessage),r(new I(S,N.clarifyTimeoutError?I.ETIMEDOUT:I.ECONNABORTED,e,x)),x=null},i===void 0&&l.setContentType(null),"setRequestHeader"in x&&E.forEach(l.toJSON(),function(S,N){x.setRequestHeader(N,S)}),E.isUndefined(o.withCredentials)||(x.withCredentials=!!o.withCredentials),a&&a!=="json"&&(x.responseType=o.responseType),c&&([p,m]=Oo(c,!0),x.addEventListener("progress",p)),u&&x.upload&&([h,y]=Oo(u),x.upload.addEventListener("progress",h),x.upload.addEventListener("loadend",y)),(o.cancelToken||o.signal)&&(f=v=>{x&&(r(!v||v.type?new Dn(null,e,x):v),x.abort(),x=null)},o.cancelToken&&o.cancelToken.subscribe(f),o.signal&&(o.signal.aborted?f():o.signal.addEventListener("abort",f)));const d=M0(o.url);if(d&&Te.protocols.indexOf(d)===-1){r(new I("Unsupported protocol "+d+":",I.ERR_BAD_REQUEST,e));return}x.send(i||null)})},B0=(e,t)=>{const{length:n}=e=e?e.filter(Boolean):[];if(t||n){let r=new AbortController,o;const i=function(c){if(!o){o=!0,a();const f=c instanceof Error?c:this.reason;r.abort(f instanceof I?f:new Dn(f instanceof Error?f.message:f))}};let l=t&&setTimeout(()=>{l=null,i(new I(`timeout ${t} of ms exceeded`,I.ETIMEDOUT))},t);const a=()=>{e&&(l&&clearTimeout(l),l=null,e.forEach(c=>{c.unsubscribe?c.unsubscribe(i):c.removeEventListener("abort",i)}),e=null)};e.forEach(c=>c.addEventListener("abort",i));const{signal:u}=r;return u.unsubscribe=()=>E.asap(a),u}},U0=function*(e,t){let n=e.byteLength;if(n{const o=W0(e,t);let i=0,l,a=u=>{l||(l=!0,r&&r(u))};return new ReadableStream({async pull(u){try{const{done:c,value:f}=await o.next();if(c){a(),u.close();return}let h=f.byteLength;if(n){let p=i+=h;n(p)}u.enqueue(new Uint8Array(f))}catch(c){throw a(c),c}},cancel(u){return a(u),o.return()}},{highWaterMark:2})},si=typeof fetch=="function"&&typeof Request=="function"&&typeof Response=="function",af=si&&typeof ReadableStream=="function",$0=si&&(typeof TextEncoder=="function"?(e=>t=>e.encode(t))(new TextEncoder):async e=>new Uint8Array(await new Response(e).arrayBuffer())),uf=(e,...t)=>{try{return!!e(...t)}catch{return!1}},V0=af&&uf(()=>{let e=!1;const t=new Request(Te.origin,{body:new ReadableStream,method:"POST",get duplex(){return e=!0,"half"}}).headers.has("Content-Type");return e&&!t}),au=64*1024,Fl=af&&uf(()=>E.isReadableStream(new Response("").body)),_o={stream:Fl&&(e=>e.body)};si&&(e=>{["text","arrayBuffer","blob","formData","stream"].forEach(t=>{!_o[t]&&(_o[t]=E.isFunction(e[t])?n=>n[t]():(n,r)=>{throw new I(`Response type '${t}' is not supported`,I.ERR_NOT_SUPPORT,r)})})})(new Response);const K0=async e=>{if(e==null)return 0;if(E.isBlob(e))return e.size;if(E.isSpecCompliantForm(e))return(await new Request(Te.origin,{method:"POST",body:e}).arrayBuffer()).byteLength;if(E.isArrayBufferView(e)||E.isArrayBuffer(e))return e.byteLength;if(E.isURLSearchParams(e)&&(e=e+""),E.isString(e))return(await $0(e)).byteLength},G0=async(e,t)=>{const n=E.toFiniteNumber(e.getContentLength());return n??K0(t)},Q0=si&&(async e=>{let{url:t,method:n,data:r,signal:o,cancelToken:i,timeout:l,onDownloadProgress:a,onUploadProgress:u,responseType:c,headers:f,withCredentials:h="same-origin",fetchOptions:p}=sf(e);c=c?(c+"").toLowerCase():"text";let y=B0([o,i&&i.toAbortSignal()],l),m;const k=y&&y.unsubscribe&&(()=>{y.unsubscribe()});let x;try{if(u&&V0&&n!=="get"&&n!=="head"&&(x=await G0(f,r))!==0){let N=new Request(t,{method:"POST",body:r,duplex:"half"}),T;if(E.isFormData(r)&&(T=N.headers.get("content-type"))&&f.setContentType(T),N.body){const[j,C]=ou(x,Oo(iu(u)));r=su(N.body,au,j,C)}}E.isString(h)||(h=h?"include":"omit");const g="credentials"in Request.prototype;m=new Request(t,{...p,signal:y,method:n.toUpperCase(),headers:f.normalize().toJSON(),body:r,duplex:"half",credentials:g?h:void 0});let d=await fetch(m);const v=Fl&&(c==="stream"||c==="response");if(Fl&&(a||v&&k)){const N={};["status","statusText","headers"].forEach(z=>{N[z]=d[z]});const T=E.toFiniteNumber(d.headers.get("content-length")),[j,C]=a&&ou(T,Oo(iu(a),!0))||[];d=new Response(su(d.body,au,j,()=>{C&&C(),k&&k()}),N)}c=c||"text";let S=await _o[E.findKey(_o,c)||"text"](d,e);return!v&&k&&k(),await new Promise((N,T)=>{of(N,T,{data:S,headers:je.from(d.headers),status:d.status,statusText:d.statusText,config:e,request:m})})}catch(g){throw k&&k(),g&&g.name==="TypeError"&&/fetch/i.test(g.message)?Object.assign(new I("Network Error",I.ERR_NETWORK,e,m),{cause:g.cause||g}):I.from(g,g&&g.code,e,m)}}),Bl={http:u0,xhr:F0,fetch:Q0};E.forEach(Bl,(e,t)=>{if(e){try{Object.defineProperty(e,"name",{value:t})}catch{}Object.defineProperty(e,"adapterName",{value:t})}});const uu=e=>`- ${e}`,q0=e=>E.isFunction(e)||e===null||e===!1,cf={getAdapter:e=>{e=E.isArray(e)?e:[e];const{length:t}=e;let n,r;const o={};for(let i=0;i`adapter ${a} `+(u===!1?"is not supported by the environment":"is not available in the build"));let l=t?i.length>1?`since : `+i.map(uu).join(` `):" "+uu(i[0]):"as no adapter specified";throw new I("There is no suitable adapter to dispatch the request "+l,"ERR_NOT_SUPPORT")}return r},adapters:Bl};function _i(e){if(e.cancelToken&&e.cancelToken.throwIfRequested(),e.signal&&e.signal.aborted)throw new Dn(null,e)}function cu(e){return _i(e),e.headers=je.from(e.headers),e.data=Oi.call(e,e.transformRequest),["post","put","patch"].indexOf(e.method)!==-1&&e.headers.setContentType("application/x-www-form-urlencoded",!1),cf.getAdapter(e.adapter||Mr.adapter)(e).then(function(r){return _i(e),r.data=Oi.call(e,e.transformResponse,r),r.headers=je.from(r.headers),r},function(r){return rf(r)||(_i(e),r&&r.response&&(r.response.data=Oi.call(e,e.transformResponse,r.response),r.response.headers=je.from(r.response.headers))),Promise.reject(r)})}const df="1.7.7",Bs={};["object","boolean","number","function","string","symbol"].forEach((e,t)=>{Bs[e]=function(r){return typeof r===e||"a"+(t<1?"n ":" ")+e}});const du={};Bs.transitional=function(t,n,r){function o(i,l){return"[Axios v"+df+"] Transitional option '"+i+"'"+l+(r?". "+r:"")}return(i,l,a)=>{if(t===!1)throw new I(o(l," has been removed"+(n?" in "+n:"")),I.ERR_DEPRECATED);return n&&!du[l]&&(du[l]=!0,console.warn(o(l," has been deprecated since v"+n+" and will be removed in the near future"))),t?t(i,l,a):!0}};function Z0(e,t,n){if(typeof e!="object")throw new I("options must be an object",I.ERR_BAD_OPTION_VALUE);const r=Object.keys(e);let o=r.length;for(;o-- >0;){const i=r[o],l=t[i];if(l){const a=e[i],u=a===void 0||l(a,i,e);if(u!==!0)throw new I("option "+i+" must be "+u,I.ERR_BAD_OPTION_VALUE);continue}if(n!==!0)throw new I("Unknown option "+i,I.ERR_BAD_OPTION)}}const Ul={assertOptions:Z0,validators:Bs},vt=Ul.validators;class Gt{constructor(t){this.defaults=t,this.interceptors={request:new nu,response:new nu}}async request(t,n){try{return await this._request(t,n)}catch(r){if(r instanceof Error){let o;Error.captureStackTrace?Error.captureStackTrace(o={}):o=new Error;const i=o.stack?o.stack.replace(/^.+\n/,""):"";try{r.stack?i&&!String(r.stack).endsWith(i.replace(/^.+\n.+\n/,""))&&(r.stack+=` -`+i):r.stack=i}catch{}}throw r}}_request(t,n){typeof t=="string"?(n=n||{},n.url=t):n=t||{},n=Xt(this.defaults,n);const{transitional:r,paramsSerializer:o,headers:i}=n;r!==void 0&&Ul.assertOptions(r,{silentJSONParsing:vt.transitional(vt.boolean),forcedJSONParsing:vt.transitional(vt.boolean),clarifyTimeoutError:vt.transitional(vt.boolean)},!1),o!=null&&(E.isFunction(o)?n.paramsSerializer={serialize:o}:Ul.assertOptions(o,{encode:vt.function,serialize:vt.function},!0)),n.method=(n.method||this.defaults.method||"get").toLowerCase();let l=i&&E.merge(i.common,i[n.method]);i&&E.forEach(["delete","get","head","post","put","patch","common"],m=>{delete i[m]}),n.headers=je.concat(l,i);const a=[];let u=!0;this.interceptors.request.forEach(function(k){typeof k.runWhen=="function"&&k.runWhen(n)===!1||(u=u&&k.synchronous,a.unshift(k.fulfilled,k.rejected))});const c=[];this.interceptors.response.forEach(function(k){c.push(k.fulfilled,k.rejected)});let f,h=0,p;if(!u){const m=[cu.bind(this),void 0];for(m.unshift.apply(m,a),m.push.apply(m,c),p=m.length,f=Promise.resolve(n);h{if(!r._listeners)return;let i=r._listeners.length;for(;i-- >0;)r._listeners[i](o);r._listeners=null}),this.promise.then=o=>{let i;const l=new Promise(a=>{r.subscribe(a),i=a}).then(o);return l.cancel=function(){r.unsubscribe(i)},l},t(function(i,l,a){r.reason||(r.reason=new Dn(i,l,a),n(r.reason))})}throwIfRequested(){if(this.reason)throw this.reason}subscribe(t){if(this.reason){t(this.reason);return}this._listeners?this._listeners.push(t):this._listeners=[t]}unsubscribe(t){if(!this._listeners)return;const n=this._listeners.indexOf(t);n!==-1&&this._listeners.splice(n,1)}toAbortSignal(){const t=new AbortController,n=r=>{t.abort(r)};return this.subscribe(n),t.signal.unsubscribe=()=>this.unsubscribe(n),t.signal}static source(){let t;return{token:new Us(function(o){t=o}),cancel:t}}}function J0(e){return function(n){return e.apply(null,n)}}function Y0(e){return E.isObject(e)&&e.isAxiosError===!0}const Wl={Continue:100,SwitchingProtocols:101,Processing:102,EarlyHints:103,Ok:200,Created:201,Accepted:202,NonAuthoritativeInformation:203,NoContent:204,ResetContent:205,PartialContent:206,MultiStatus:207,AlreadyReported:208,ImUsed:226,MultipleChoices:300,MovedPermanently:301,Found:302,SeeOther:303,NotModified:304,UseProxy:305,Unused:306,TemporaryRedirect:307,PermanentRedirect:308,BadRequest:400,Unauthorized:401,PaymentRequired:402,Forbidden:403,NotFound:404,MethodNotAllowed:405,NotAcceptable:406,ProxyAuthenticationRequired:407,RequestTimeout:408,Conflict:409,Gone:410,LengthRequired:411,PreconditionFailed:412,PayloadTooLarge:413,UriTooLong:414,UnsupportedMediaType:415,RangeNotSatisfiable:416,ExpectationFailed:417,ImATeapot:418,MisdirectedRequest:421,UnprocessableEntity:422,Locked:423,FailedDependency:424,TooEarly:425,UpgradeRequired:426,PreconditionRequired:428,TooManyRequests:429,RequestHeaderFieldsTooLarge:431,UnavailableForLegalReasons:451,InternalServerError:500,NotImplemented:501,BadGateway:502,ServiceUnavailable:503,GatewayTimeout:504,HttpVersionNotSupported:505,VariantAlsoNegotiates:506,InsufficientStorage:507,LoopDetected:508,NotExtended:510,NetworkAuthenticationRequired:511};Object.entries(Wl).forEach(([e,t])=>{Wl[t]=e});function ff(e){const t=new Gt(e),n=Wd(Gt.prototype.request,t);return E.extend(n,Gt.prototype,t,{allOwnKeys:!0}),E.extend(n,t,null,{allOwnKeys:!0}),n.create=function(o){return ff(Xt(e,o))},n}const oe=ff(Mr);oe.Axios=Gt;oe.CanceledError=Dn;oe.CancelToken=Us;oe.isCancel=rf;oe.VERSION=df;oe.toFormData=li;oe.AxiosError=I;oe.Cancel=oe.CanceledError;oe.all=function(t){return Promise.all(t)};oe.spread=J0;oe.isAxiosError=Y0;oe.mergeConfig=Xt;oe.AxiosHeaders=je;oe.formToJSON=e=>nf(E.isHTMLForm(e)?new FormData(e):e);oe.getAdapter=cf.getAdapter;oe.HttpStatusCode=Wl;oe.default=oe;const pf=({isOpen:e,onClose:t,theme:n})=>{if(!e)return null;const r={purple:"border-purple-500/30 bg-purple-900/20",green:"border-green-500/30 bg-green-900/20",teal:"border-teal-500/30 bg-teal-900/20"},o={purple:"text-purple-400",green:"text-green-400",teal:"text-teal-400"},i="font-bold",[l,a]=w.useState([]),[u,c]=w.useState(""),[f,h]=w.useState(!0),[p,y]=w.useState(null),[m,k]=w.useState(null),[x,g]=w.useState(null),d=w.useRef(null),v=w.useRef(null),S=w.useRef([]),N=["ethereum","optimism","bitcoin","matic-network","giveth","golem"],T=async()=>{h(!0),y(null),k(new Date().toISOString());try{const z=await oe.get(`https://api.coingecko.com/api/v3/simple/price?ids=${N.join(",")}&vs_currencies=usd&include_24hr_change=false`),M=N.map(_=>{const W=z.data[_].usd;let H,q;switch(_){case"ethereum":H="ETH",q="Ethereum";break;case"optimism":H="OP",q="Optimism";break;case"bitcoin":H="BTC",q="Bitcoin";break;case"matic-network":H="POL",q="Polygon";break;case"giveth":H="GIV",q="Giveth";break;case"golem":H="GLM",q="Golem";break;default:H="",q=""}return{id:_,symbol:H,name:q,current_price:W}});a(M),h(!1)}catch(z){console.error("Error fetching crypto prices:",z),y("Failed to fetch crypto prices."),h(!1)}},j=l.filter(z=>z.name.toLowerCase().includes(u.toLowerCase())||z.symbol.toLowerCase().includes(u.toLowerCase()));w.useEffect(()=>{T();const z=setInterval(T,3e5);return()=>clearInterval(z)},[]),w.useEffect(()=>{e&&d.current&&(d.current.focus(),g(null))},[e]),w.useEffect(()=>{const z=M=>{v.current&&!v.current.contains(M.target)&&t()};return document.addEventListener("mousedown",z),()=>{document.removeEventListener("mousedown",z)}},[t]),w.useEffect(()=>{const z=M=>{var _;M.key==="Escape"?t():M.key==="ArrowDown"?(M.preventDefault(),g(W=>W===null||W>=j.length-1?0:W+1)):M.key==="ArrowUp"?(M.preventDefault(),x===0?(g(null),(_=d.current)==null||_.focus()):x===null||g(W=>W===null||W<=0?j.length-1:W-1)):M.key==="Enter"&&x!==null&&M.preventDefault()};return document.addEventListener("keydown",z),()=>{document.removeEventListener("keydown",z)}},[j,x,t]),w.useEffect(()=>{x!==null&&S.current[x]&&S.current[x].focus()},[x]);const C=z=>{const M={day:"2-digit",month:"short",year:"2-digit",hour:"2-digit",minute:"2-digit",second:"2-digit",hour12:!1,timeZone:"UTC"};return new Intl.DateTimeFormat("en-US",M).format(z)+" UTC"};return s.jsx("div",{className:"fixed inset-0 bg-black/50 flex items-center justify-center z-50",children:s.jsxs("div",{ref:v,className:`w-[600px] max-h-[90vh] rounded-xl border ${r[n]} backdrop-blur-md p-6 overflow-y-auto`,children:[s.jsxs("div",{className:"flex justify-between items-center mb-6",children:[s.jsx("h2",{className:"text-2xl font-bold",children:"Token Prices"}),s.jsx("button",{onClick:t,className:"p-1 hover:bg-gray-800/50 rounded-lg",children:s.jsx(ze,{size:20})})]}),s.jsx("div",{className:"mb-6",children:s.jsx("input",{ref:d,type:"text",placeholder:"Search cryptos...",value:u,onChange:z=>c(z.target.value),className:"w-full p-4 rounded-lg border border-gray-700 bg-gray-800/50 focus:outline-none focus:border-purple-400"})}),f&&s.jsx("div",{className:"mt-6 text-sm opacity-75",children:s.jsx("p",{children:"Loading..."})}),p&&s.jsx("div",{className:"mt-6 text-sm opacity-75 text-red-500",children:s.jsx("p",{children:p})}),m&&s.jsx("div",{className:"mt-6 text-sm opacity-75",children:s.jsxs("p",{children:["Last fetch attempt: ",C(new Date(m))]})}),!f&&!p&&s.jsxs(s.Fragment,{children:[s.jsx("div",{className:"space-y-4",children:j.map((z,M)=>s.jsx("div",{ref:_=>S.current[M]=_,tabIndex:0,className:`flex items-center gap-4 p-4 rounded-lg hover:bg-gray-800/30 transition-colors ${x===M?"bg-gray-800/30":""}`,children:s.jsxs("div",{children:[s.jsxs("h3",{className:`font-semibold text-lg ${o[n]}`,children:[z.name," (",z.symbol.toUpperCase(),")"]}),s.jsxs("p",{className:`text-sm opacity-75 ${i}`,children:["Current Price: $",z.current_price.toFixed(4)]})]})},z.id))}),j.length===0&&s.jsx("div",{className:"mt-6 text-sm opacity-75",children:s.jsxs("p",{children:['No results found for "',u,'".']})})]}),s.jsx("div",{className:"mt-6 text-sm opacity-75",children:s.jsx("p",{children:"Information for selected cryptocurrencies."})})]})})},X0=({isOpen:e,onClose:t,theme:n})=>{if(!e)return null;const r={purple:"border-purple-500/30 bg-purple-900/20 text-purple-300",green:"border-green-500/30 bg-green-900/20 text-green-300",teal:"border-teal-500/30 bg-teal-900/20 text-teal-300"},o={purple:"border-purple-500/30 focus:border-purple-500",green:"border-green-500/30 focus:border-green-500",teal:"border-teal-500/30 focus:border-teal-500"},[i,l]=w.useState(""),[a,u]=w.useState("https://w3s.link/ipfs/"),[c,f]=w.useState(!1),h=[{label:"w3s.link",value:"https://w3s.link/ipfs/"},{label:"ipfs.io",value:"https://ipfs.io/ipfs/"}],p=w.useRef(null);w.useEffect(()=>{const x=g=>{p.current&&!p.current.contains(g.target)&&t()};return document.addEventListener("mousedown",x),()=>{document.removeEventListener("mousedown",x)}},[t]),w.useEffect(()=>{const x=g=>{g.key==="Escape"&&t()};return document.addEventListener("keydown",x),()=>{document.removeEventListener("keydown",x)}},[t]);const y=x=>{u(x.target.value)},m=x=>{l(x.target.value)},k=()=>{if(i){f(!0);const x=`${a}${i}`;window.open(x,"_blank"),f(!1)}};return s.jsx("div",{className:"fixed inset-0 bg-black/50 flex items-center justify-center z-50",children:s.jsxs("div",{ref:p,className:`w-[800px] rounded-xl border ${r[n]} backdrop-blur-md p-6`,children:[s.jsxs("div",{className:"flex justify-between items-center mb-6",children:[s.jsx("h2",{className:"text-2xl font-bold",children:"Check IPFS CID"}),s.jsx("button",{onClick:t,className:"p-1 hover:bg-gray-800/50 rounded-lg",children:s.jsx(ze,{size:20})})]}),s.jsxs("div",{className:"space-y-4",children:[s.jsxs("div",{className:"flex flex-col",children:[s.jsx("label",{className:`block ${r[n]} text-sm font-bold mb-2`,htmlFor:"gateway",children:"Select Gateway"}),s.jsx("select",{id:"gateway",className:`shadow appearance-none border rounded w-full py-2 px-3 leading-tight focus:outline-none focus:shadow-outline ${o[n]}`,value:a,onChange:y,children:h.map(x=>s.jsx("option",{value:x.value,children:x.label},x.value))})]}),s.jsxs("div",{className:"flex flex-col",children:[s.jsx("label",{className:`block ${r[n]} text-sm font-bold mb-2`,htmlFor:"cid",children:"CID"}),s.jsx("input",{id:"cid",type:"text",className:`shadow appearance-none border rounded w-full py-2 px-3 leading-tight focus:outline-none focus:shadow-outline ${r[n]}`,value:i,onChange:m})]}),s.jsx("button",{className:"bg-blue-500 hover:bg-blue-700 text-white font-bold py-2 px-4 rounded focus:outline-none focus:shadow-outline",onClick:k,disabled:c,children:c?s.jsx(nh,{className:"animate-spin",size:20}):"Check"})]})]})})},ey=({theme:e,setTheme:t,onPomodoroOpen:n,onTimeZonesOpen:r,showToolbar:o,toggleToolbar:i})=>{const[l,a]=w.useState(null),[u,c]=w.useState(!1),[f,h]=w.useState(!1),[p,y]=w.useState(!1),[m,k]=w.useState(!1),[x,g]=w.useState(!1),[d,v]=w.useState(!1),[S,N]=w.useState(!1),[T,j]=w.useState(!1),[C,z]=w.useState(!1),[M,_]=w.useState(!1),W=["purple","green","teal"],H=G=>{if(a(G),G==="theme"){const ot=W.indexOf(e);t(W[(ot+1)%W.length])}else G==="break"?n():G==="refi"?c(!0):G==="dao"?h(!0):G==="blockchain"?y(!0):G==="defi"?k(!0):G==="docs"?v(!0):G==="timezones"?r():G==="lensfeed"?N(!0):G==="terminal"?j(!0):G==="cryptoprices"?z(!0):G==="ipfs"&&_(!0)},q=[{id:"blockchain",icon:s.jsx(tt,{size:20}),label:"Networks"},{id:"dao",icon:s.jsx(ti,{size:20}),label:"Governance"},{id:"refi",icon:s.jsx(ei,{size:20}),label:"ReFi Projects"},{id:"defi",icon:s.jsx(zd,{size:20}),label:"DeFi Tools"},{id:"docs",icon:s.jsx(L,{size:20}),label:"Web3 Docs"},{id:"terminal",icon:s.jsx(ni,{size:20}),label:"GameB Console"},{id:"theme",icon:s.jsx(oh,{size:20}),label:"Theme"},{id:"break",icon:s.jsx(Jm,{size:20}),label:"Take a Break"},{id:"timezones",icon:s.jsx(jd,{size:20}),label:"World Clock"},{id:"lensfeed",icon:s.jsx(eh,{size:20}),label:"Lens Feed"},{id:"cryptoprices",icon:s.jsx(Do,{size:20}),label:"Token Prices"},{id:"ipfs",icon:s.jsx(tt,{size:20}),label:"IPFS CID Checker"}];return s.jsxs("div",{className:"fixed bottom-6 right-4 z-50",children:[s.jsxs("button",{onClick:i,className:"p-2 rounded-full bg-gray-800/50 hover:bg-gray-800/80 transition-colors duration-300",children:[s.jsx("span",{className:"sr-only",children:"Toggle Toolbar"}),"☰"]}),o&&s.jsx("div",{className:"absolute bottom-16 right-0 flex flex-col items-end space-y-2",children:q.map(G=>s.jsx("div",{className:"relative group",children:s.jsxs("button",{onClick:()=>H(G.id),className:"p-2 rounded-full bg-gray-800/50 hover:bg-gray-800/80 transition-colors duration-300",children:[G.icon,s.jsx("span",{className:"absolute left-0 top-1/2 transform -translate-x-full -translate-y-1/2 mr-2 px-2 py-1 text-xs bg-gray-900/90 text-white rounded opacity-0 group-hover:opacity-100 transition-opacity whitespace-nowrap -ml-2",children:G.label})]})},G.id))}),s.jsx(Fd,{isOpen:!1,onClose:()=>{},theme:e,onTimerUpdate:()=>{}}),s.jsx(yh,{isOpen:u,onClose:()=>c(!1),theme:e}),s.jsx(gh,{isOpen:f,onClose:()=>h(!1),theme:e}),s.jsx(vh,{isOpen:p,onClose:()=>y(!1),theme:e}),s.jsx(xh,{isOpen:m,onClose:()=>k(!1),theme:e}),s.jsx(Bd,{isOpen:d,onClose:()=>v(!1),theme:e}),s.jsx(Ud,{isOpen:x,onClose:()=>g(!1),theme:e}),s.jsx(Sh,{isOpen:S,onClose:()=>N(!1),theme:e}),s.jsx(Eh,{isOpen:T,onClose:()=>j(!1),theme:e,iframeUrl:"https://www.example.com"}),s.jsx(pf,{isOpen:C,onClose:()=>z(!1),theme:e}),s.jsx(X0,{isOpen:M,onClose:()=>_(!1),theme:e})]})},ty=({isOpen:e,onClose:t,theme:n})=>{if(!e)return null;const r={purple:"border-purple-500/30 bg-purple-900/20",green:"border-green-500/30 bg-green-900/20",teal:"border-teal-500/30 bg-teal-900/20"},[o,i]=w.useState(""),[l,a]=w.useState(null),u=w.useRef(null),c=w.useRef(null),f=w.useRef([]),p=[{name:"Lens",icon:s.jsx(Pd,{className:"text-purple-400",size:24}),url:"https://www.lens.xyz/",description:"Lens is a decentralized social graph protocol for web3."},{name:"Farcaster",icon:s.jsx(uh,{className:"text-green-400",size:24}),url:"https://www.farcaster.xyz/",description:"Farcaster is a decentralized social network built on the Bitcoin blockchain."},{name:"Paragraph.xyz",icon:s.jsx(Sr,{className:"text-emerald-400",size:24}),url:"https://paragraph.xyz/",description:"Paragraph is a decentralized blogging platform."},{name:"Mirror.xyz",icon:s.jsx(Er,{className:"text-blue-400",size:24}),url:"https://mirror.xyz/",description:"Mirror is a decentralized publishing platform for writers."},{name:"Warpcast",icon:s.jsx(Rd,{className:"text-pink-400",size:24}),url:"https://warpcast.com/",description:"Warpcast is a decentralized social network built on the Farcaster protocol."},{name:"Buttrfly",icon:s.jsx(bd,{className:"text-teal-400",size:24}),url:"https://buttrfly.app/",description:"Buttrfly is a decentralized platform for creators to share and monetize their content."},{name:"Bloomers",icon:s.jsx(Ad,{className:"text-orange-400",size:24}),url:"https://bloomers.tv/",description:"Bloomers is a decentralized video platform for creators."},{name:"Yup",icon:s.jsx(Td,{className:"text-cyan-400",size:24}),url:"https://yup.io/",description:"Yup is a decentralized social network for communities."},{name:"Phaver",icon:s.jsx(Dd,{className:"text-lime-400",size:24}),url:"https://phaver.com/",description:"Phaver is a decentralized social network for communities."},{name:"Hey",icon:s.jsx(ni,{className:"text-violet-400",size:24}),url:"https://hey.xyz/",description:"Hey is a decentralized social network on Lens."},{name:"Tape",icon:s.jsx(Sr,{className:"text-indigo-400",size:24}),url:"https://tape.xyz/",description:"Tape is a decentralized platform for sharing stories and content."},{name:"Lenspeer",icon:s.jsx(Er,{className:"text-fuchsia-400",size:24}),url:"https://lenspeer.com/",description:"Lenspeer is a decentralized social network for communities."}].filter(y=>y.name.toLowerCase().includes(o.toLowerCase()));return w.useEffect(()=>{e&&u.current&&(u.current.focus(),a(null))},[e]),w.useEffect(()=>{const y=m=>{c.current&&!c.current.contains(m.target)&&t()};return document.addEventListener("mousedown",y),()=>{document.removeEventListener("mousedown",y)}},[t]),w.useEffect(()=>{const y=m=>{var k;if(m.key==="Escape")t();else if(m.key==="ArrowDown")m.preventDefault(),a(x=>x===null||x>=p.length-1?0:x+1);else if(m.key==="ArrowUp")m.preventDefault(),l===0?(a(null),(k=u.current)==null||k.focus()):l===null||a(x=>x===null||x<=0?p.length-1:x-1);else if(m.key==="Enter"&&l!==null){m.preventDefault();const x=f.current[l];x&&x.click()}};return document.addEventListener("keydown",y),()=>{document.removeEventListener("keydown",y)}},[p,l,t]),w.useEffect(()=>{l!==null&&f.current[l]&&f.current[l].focus()},[l]),s.jsx("div",{className:"fixed inset-0 bg-black/50 flex items-center justify-center z-50",children:s.jsxs("div",{ref:c,className:`w-[600px] max-h-[90vh] rounded-xl border ${r[n]} backdrop-blur-md p-6 overflow-y-auto`,children:[s.jsxs("div",{className:"flex justify-between items-center mb-6",children:[s.jsx("h2",{className:"text-2xl font-bold",children:"Web3 Social Platforms"}),s.jsx("button",{onClick:t,className:"p-1 hover:bg-gray-800/50 rounded-lg",children:s.jsx(ze,{size:20})})]}),s.jsx("div",{className:"mb-6",children:s.jsx("input",{ref:u,type:"text",placeholder:"Search social platforms...",value:o,onChange:y=>i(y.target.value),className:"w-full p-4 rounded-lg border border-gray-700 bg-gray-800/50 focus:outline-none focus:border-purple-400"})}),s.jsx("div",{className:"space-y-4",children:p.map((y,m)=>s.jsxs("a",{href:y.url,target:"_blank",rel:"noopener noreferrer",className:`flex items-center gap-4 p-4 rounded-lg hover:bg-gray-800/30 transition-colors ${l===m?"bg-gray-800/30":""}`,ref:k=>f.current[m]=k,tabIndex:0,children:[s.jsx("div",{className:"p-2 rounded-lg bg-gray-800/50",children:y.icon}),s.jsxs("div",{children:[s.jsx("h3",{className:"font-semibold text-lg",children:y.name}),s.jsx("p",{className:"text-sm opacity-75",children:y.description})]})]},y.name))}),p.length===0&&s.jsx("div",{className:"mt-6 text-sm opacity-75",children:s.jsxs("p",{children:['No results found for "',o,'".']})}),s.jsx("div",{className:"mt-6 text-sm opacity-75",children:s.jsx("p",{children:"Explore a variety of Web3 social platforms for decentralized communication and content sharing."})})]})})},ny=[{name:"MetaMask",description:"A cryptocurrency wallet for buying, selling, and managing digital assets.",link:"https://metamask.io/",icon:"Wallet",iconClass:"text-green-400"},{name:"Coinbase Wallet",description:"A cryptocurrency wallet for buying, selling, and managing digital assets.",link:"https://www.coinbase.com/wallet",icon:"Wallet",iconClass:"text-green-400"},{name:"WalletConnect",description:"An open protocol for connecting decentralized applications to mobile wallets.",link:"https://walletconnect.com/",icon:"Wallet",iconClass:"text-green-400"},{name:"Safe",description:"A non-custodial, multi-signature wallet for Ethereum.",link:"https://gnosis-safe.io/",icon:"Wallet",iconClass:"text-green-400"},{name:"Trust Wallet",description:"A multi-chain cryptocurrency wallet for Android and iOS.",link:"https://trustwallet.com/",icon:"Wallet",iconClass:"text-green-400"},{name:"Ledger Live",description:"A cryptocurrency wallet that integrates with Ledger hardware wallets.",link:"https://www.ledger.com/ledger-live",icon:"Wallet",iconClass:"text-green-400"},{name:"Trezor Wallet",description:"A cryptocurrency wallet that integrates with Trezor hardware wallets.",link:"https://trezor.io/",icon:"Wallet",iconClass:"text-green-400"},{name:"Exodus",description:"A multi-asset cryptocurrency wallet for desktop and mobile.",link:"https://www.exodus.com/",icon:"Wallet",iconClass:"text-green-400"},{name:"Brave Wallet",description:"A cryptocurrency wallet built into the Brave browser.",link:"https://brave.com/wallet",icon:"Wallet",iconClass:"text-green-400"},{name:"Argent",description:"A non-custodial Ethereum wallet with a gasless user experience.",link:"https://argent.xyz/",icon:"Wallet",iconClass:"text-green-400"},{name:"Frame",description:"A non-custodial browser wallet for Ethereum and other networks.",link:"https://frame.sh/",icon:"Wallet",iconClass:"text-green-400"},{name:"Rainbow",description:"A mobile wallet for Ethereum and other networks.",link:"https://rainbow.me/",icon:"Wallet",iconClass:"text-green-400"},{name:"Zerion",description:"A multi-chain cryptocurrency wallet and portfolio tracker.",link:"https://zerion.io/",icon:"Wallet",iconClass:"text-green-400"}],ry=({isOpen:e,onClose:t,theme:n})=>{if(!e)return null;const r={purple:"border-purple-500/30 bg-purple-900/20",green:"border-green-500/30 bg-green-900/20",teal:"border-teal-500/30 bg-teal-900/20"},[o,i]=w.useState(""),[l,a]=w.useState(null),u=w.useRef(null),c=w.useRef(null),f=w.useRef([]),h=ny.filter(y=>y.name.toLowerCase().includes(o.toLowerCase()));w.useEffect(()=>{e&&u.current&&(u.current.focus(),a(null))},[e]),w.useEffect(()=>{const y=m=>{c.current&&!c.current.contains(m.target)&&t()};return document.addEventListener("mousedown",y),()=>{document.removeEventListener("mousedown",y)}},[t]),w.useEffect(()=>{const y=m=>{m.key==="Escape"&&t()};return document.addEventListener("keydown",y),()=>{document.removeEventListener("keydown",y)}},[t]),w.useEffect(()=>{const y=m=>{var k;if(m.key==="Escape")t();else if(m.key==="ArrowDown")m.preventDefault(),a(x=>x===null||x>=h.length-1?0:x+1);else if(m.key==="ArrowUp")m.preventDefault(),l===0?(a(null),(k=u.current)==null||k.focus()):l===null||a(x=>x===null||x<=0?h.length-1:x-1);else if(m.key==="Enter"&&l!==null){m.preventDefault();const x=f.current[l];x&&(x.focus(),x.click())}};return document.addEventListener("keydown",y),()=>{document.removeEventListener("keydown",y)}},[h,l,t]),w.useEffect(()=>{l!==null&&f.current[l]&&f.current[l].focus()},[l]);const p=(y,m)=>y==="Wallet"?s.jsx(ge,{className:m,size:24}):null;return s.jsx("div",{className:"fixed inset-0 bg-black/50 flex items-center justify-center z-50",children:s.jsxs("div",{ref:c,className:`w-[600px] max-h-[90vh] rounded-xl border ${r[n]} backdrop-blur-md p-6 overflow-y-auto`,children:[s.jsxs("div",{className:"flex justify-between items-center mb-6",children:[s.jsx("h2",{className:"text-2xl font-bold",children:"Wallets"}),s.jsx("button",{onClick:t,className:"p-1 hover:bg-gray-800/50 rounded-lg",children:s.jsx(ze,{size:20})})]}),s.jsx("div",{className:"mb-6",children:s.jsx("input",{ref:u,type:"text",placeholder:"Search wallets...",value:o,onChange:y=>i(y.target.value),className:"w-full p-4 rounded-lg border border-gray-700 bg-gray-800/50 focus:outline-none focus:border-purple-400"})}),s.jsx("div",{className:"space-y-4",children:h.map((y,m)=>s.jsxs("a",{ref:k=>f.current[m]=k,href:y.link,target:"_blank",rel:"noopener noreferrer",tabIndex:0,className:`flex items-center gap-4 p-4 rounded-lg hover:bg-gray-800/30 transition-colors ${l===m?"bg-gray-800/30":""}`,children:[s.jsx("div",{className:"p-2 rounded-lg bg-gray-800/50",children:p(y.icon,y.iconClass)}),s.jsxs("div",{children:[s.jsx("h3",{className:"font-semibold text-lg",children:y.name}),s.jsx("p",{className:"text-sm opacity-75",children:y.description})]})]},y.name))}),h.length===0&&s.jsx("div",{className:"mt-6 text-sm opacity-75",children:s.jsxs("p",{children:['No results found for "',o,'".']})}),s.jsx("div",{className:"mt-6 text-sm opacity-75",children:s.jsx("p",{children:"Information for various cryptocurrency wallets."})})]})})},oy=[{term:"Blockchain",description:"A distributed ledger technology that records transactions across many computers in such a way that the registered transactions cannot be altered retroactively."},{term:"Block",description:"A unit of data containing a set of transactions that are cryptographically linked to the previous block on a blockchain."},{term:"Consensus",description:"The process by which blockchain networks reach agreement on the validity of transactions and the state of the blockchain."},{term:"Consensus Mechanism",description:"A protocol used by blockchain networks to reach agreement on the validity of transactions and the state of the blockchain."},{term:"Cross-Chain",description:"The ability of blockchain networks to communicate and interact with each other."},{term:"Cross-Chain Bridge",description:"A protocol or mechanism that allows assets and data to be transferred between different blockchain networks."},{term:"Cross-Chain Protocol",description:"A protocol that enables interoperability between different blockchain networks, allowing for the transfer of assets and data."},{term:"DAO (Decentralized Autonomous Organization)",description:"An organization represented by rules encoded as a transparent, immutable program running on a blockchain."},{term:"Decentralized Application (dApp)",description:"An application that runs on a decentralized network, typically a blockchain, without a central authority."},{term:"Decentralized Exchange (DEX)",description:"A decentralized platform for trading cryptocurrencies and tokens without a central authority."},{term:"Decentralized Finance (DeFi)",description:"A financial system built on blockchain technology that allows for financial services without the need for traditional intermediaries."},{term:"Decentralized Governance",description:"A system of governance where decisions are made through decentralized means, often involving token holders voting on proposals."},{term:"Decentralized Identity (DID)",description:"A system that allows individuals to control their digital identities without relying on a central authority."},{term:"Decentralized Marketplace",description:"A platform that allows buyers and sellers to trade goods and services directly without a central authority."},{term:"Decentralized Oracle",description:"A decentralized network of nodes that provides real-world data to smart contracts without relying on a single authority."},{term:"Decentralized Storage",description:"A system for storing data across a network of decentralized nodes, ensuring data integrity and availability without a central authority."},{term:"Decentralized Storage Network",description:"A network of decentralized nodes that stores data across multiple locations, ensuring data availability and security."},{term:"Delegated Proof of Stake (DPoS)",description:"A consensus mechanism where token holders elect delegates to validate transactions and create new blocks."},{term:"ENS (Ethereum Name Service)",description:"A decentralized naming protocol for Ethereum."},{term:"Ethereum",description:"A decentralized, open-source blockchain with smart contract functionality."},{term:"Gas",description:"A unit that measures the amount of computational effort required to execute a transaction on the Ethereum blockchain."},{term:"Gas Efficiency",description:"The optimization of smart contracts to reduce the amount of gas required for execution, thereby lowering transaction costs."},{term:"Gas Limit",description:"The maximum amount of gas that can be used in a single block on the Ethereum blockchain."},{term:"Gas Optimization",description:"The process of improving the efficiency of smart contracts to reduce gas consumption and lower transaction costs."},{term:"Gas Price",description:"The price paid per unit of gas to execute a transaction on the Ethereum blockchain."},{term:"Gas Refund",description:"A mechanism that returns unused gas to the user, reducing transaction costs."},{term:"Governance Fork",description:"A split in a blockchain network where the community votes on a new set of rules or changes to the protocol."},{term:"Governance Token",description:"A token that grants its holders the right to participate in the governance of a decentralized project."},{term:"Hash",description:"A unique identifier created by a cryptographic hash function, used to verify data integrity on a blockchain."},{term:"Initial Coin Offering (ICO)",description:"A fundraising method where a new cryptocurrency project sells tokens to investors in exchange for funding."},{term:"Initial DEX Offering (IDO)",description:"A fundraising method where a new token is sold on a decentralized exchange."},{term:"IPFS (InterPlanetary File System)",description:"A decentralized file system that makes the web faster, safer, and more open."},{term:"Layer 1",description:"The base blockchain layer that provides the fundamental infrastructure for transactions and smart contracts."},{term:"Layer 2",description:"Scaling solutions built on top of existing blockchain networks to improve performance and reduce costs."},{term:"Liquidity Mining",description:"A rewards program that incentivizes users to provide liquidity to decentralized exchanges."},{term:"Liquidity Pool",description:"A collection of tokens that are locked in a smart contract to provide liquidity for decentralized exchanges."},{term:"Liquidity Token",description:"The availability of tokens in a decentralized exchange to facilitate trading and reduce price volatility."},{term:"Minting",description:"The process of creating a new NFT or token on a blockchain."},{term:"Metaverse",description:"A virtual world or universe that users can interact with in a virtual environment."},{term:"NFT (Non-Fungible Token)",description:"A unique digital asset that is not interchangeable with another token of the same type."},{term:"Oracle",description:"A bridge between blockchain and off-chain data sources, providing real-world data to smart contracts."},{term:"Proof of Stake (PoS)",description:"A consensus mechanism where validators are chosen to create new blocks based on the number of coins they hold and are willing to stake."},{term:"Proof of Work (PoW)",description:"A consensus mechanism where miners solve complex mathematical puzzles to validate transactions and create new blocks."},{term:"Quadratic Funding",description:"A funding mechanism that incentivizes diversity and quality in open source projects."},{term:"Sharding",description:"A method of splitting a blockchain's data and transactions across multiple nodes to improve scalability."},{term:"Sidechain",description:"A separate blockchain that is interoperable with a main blockchain and can handle specific use cases or transactions."},{term:"Smart Contract",description:"A self-executing contract with the terms of the agreement directly written into code."},{term:"Smart Contract Audit",description:"A security review of smart contracts to identify and fix vulnerabilities."},{term:"Staking",description:"The process of locking up cryptocurrency to validate transactions and earn rewards on a blockchain."},{term:"Token",description:"A digital or cryptographic asset built on blockchain technology that represents a certain value or utility."},{term:"Token Locking",description:"A mechanism that locks tokens for a specified period, often used for vesting or to prevent early selling."},{term:"Token Liquidity",description:"The availability of tokens in a decentralized exchange to facilitate trading and reduce price volatility."},{term:"Tokenomics",description:"The economic design and structure of a token, including supply, distribution, and utility."},{term:"Token Standard",description:"A set of rules and protocols that define how tokens behave on a blockchain, such as ERC-20 or ERC-721."},{term:"Token Staking",description:"The process of locking tokens to participate in the governance and security of a blockchain network."},{term:"Token Swap",description:"A process of exchanging one token for another on a decentralized exchange."},{term:"Token Vesting",description:"A schedule for releasing tokens to beneficiaries over time, often used in ICOs and other fundraising methods."},{term:"Transaction",description:"A record of a transfer of value or data on a blockchain."},{term:"Web3",description:"The third generation of the World Wide Web based on blockchain technology, enabling decentralized applications and data."},{term:"Web3 Wallet",description:"A software application that allows users to manage their cryptocurrency and interact with decentralized applications."},{term:"Wallet",description:"A software application that allows users to manage their cryptocurrency and interact with decentralized applications."}],mf=(e,t)=>{w.useEffect(()=>{const n=r=>{e.current&&!e.current.contains(r.target)&&t()};return document.addEventListener("mousedown",n),()=>{document.removeEventListener("mousedown",n)}},[e,t])},hf=({isOpen:e,onClose:t,theme:n})=>{if(!e)return null;const r={purple:"border-purple-500/30 bg-purple-900/20",green:"border-green-500/30 bg-green-900/20",teal:"border-teal-500/30 bg-teal-900/20"},[o,i]=w.useState(""),[l,a]=w.useState(null),u=w.useRef(null),c=w.useRef(null),f=w.useRef([]),h=oy.filter(p=>p.term.toLowerCase().includes(o.toLowerCase()));return w.useEffect(()=>{e&&u.current&&(u.current.focus(),a(null))},[e]),mf(c,t),w.useEffect(()=>{const p=y=>{var m;if(y.key==="Escape")t();else if(y.key==="ArrowDown")y.preventDefault(),a(k=>k===null||k>=h.length-1?0:k+1);else if(y.key==="ArrowUp")y.preventDefault(),l===0?(a(null),(m=u.current)==null||m.focus()):l===null||a(k=>k===null||k<=0?h.length-1:k-1);else if(y.key==="Enter"&&l!==null){y.preventDefault();const k=f.current[l];k&&k.focus()}};return document.addEventListener("keydown",p),()=>{document.removeEventListener("keydown",p)}},[h,l,t]),w.useEffect(()=>{l!==null&&f.current[l]&&f.current[l].focus()},[l]),s.jsx("div",{className:"fixed inset-0 bg-black/50 flex items-center justify-center z-50",children:s.jsxs("div",{ref:c,className:`w-[600px] max-h-[90vh] rounded-xl border ${r[n]} backdrop-blur-md p-6 overflow-y-auto`,children:[s.jsxs("div",{className:"flex justify-between items-center mb-6",children:[s.jsx("h2",{className:"text-2xl font-bold",children:"Web3 Lexicon"}),s.jsx("button",{onClick:t,className:"p-1 hover:bg-gray-800/50 rounded-lg",children:s.jsx(ze,{size:20})})]}),s.jsx("div",{className:"mb-6",children:s.jsx("input",{ref:u,type:"text",placeholder:"Search terms...",value:o,onChange:p=>i(p.target.value),className:"w-full p-4 rounded-lg border border-gray-700 bg-gray-800/50 focus:outline-none focus:border-purple-400"})}),s.jsx("div",{className:"space-y-4",children:h.map((p,y)=>s.jsxs("div",{ref:m=>f.current[y]=m,tabIndex:0,className:`flex items-center gap-4 p-4 rounded-lg hover:bg-gray-800/30 transition-colors ${l===y?"bg-gray-800/30":""}`,children:[s.jsx("div",{className:"p-2 rounded-lg bg-gray-800/50",children:s.jsx(L,{className:"text-purple-400",size:24})}),s.jsxs("div",{children:[s.jsx("h3",{className:"font-semibold text-lg",children:p.term}),s.jsx("p",{className:"text-sm opacity-75",children:p.description})]})]},p.term))}),h.length===0&&s.jsx("div",{className:"mt-6 text-sm opacity-75",children:s.jsxs("p",{children:['No results found for "',o,'".']})}),s.jsx("div",{className:"mt-6 text-sm opacity-75",children:s.jsx("p",{children:"Explore a variety of Web3, DeFi, blockchain, and decentralized governance terms."})})]})})},iy=({isPlaying:e,onOpen:t})=>e?s.jsx("div",{className:"fixed bottom-6 left-1/2 transform -translate-x-1/2 bg-gray-800/20 rounded-full p-3 shadow-lg cursor-pointer",onClick:t,children:s.jsx(rh,{size:16,color:"white"})}):null,yf=({isOpen:e,onClose:t,onOpen:n,theme:r})=>{const o={purple:"border-purple-500/30 bg-purple-900/20",green:"border-green-500/30 bg-green-900/20",teal:"border-teal-500/30 bg-teal-900/20"},i={purple:"bg-purple-700/50 border border-purple-500 text-white",green:"bg-green-700/50 border border-green-500 text-white",teal:"bg-teal-700/50 border border-teal-500 text-white"},l=w.useRef(null),a=w.useRef(null),[u,c]=w.useState([{id:"04697c8a-c967-44dd-a8ff-8531c7ef5194",src:"https://embed.sound.xyz/v1/release/04697c8a-c967-44dd-a8ff-8531c7ef5194?referral_source=embed-sound"},{id:"f93872e9-b6f1-49fa-becd-ab5433c39d7d",src:"https://embed.sound.xyz/v1/release/f93872e9-b6f1-49fa-becd-ab5433c39d7d?referral_source=embed-sound"},{id:"96cc4612-b6ca-4dc4-b728-a5a427bd608b",src:"https://embed.sound.xyz/v1/release/96cc4612-b6ca-4dc4-b728-a5a427bd608b?referral_source=embed-sound"}]),[f,h]=w.useState(""),[p,y]=w.useState(!1),[m,k]=w.useState(""),[x,g]=w.useState(""),[d,v]=w.useState(!1),[S,N]=w.useState(null);w.useEffect(()=>{e&&y(!0)},[e]),w.useEffect(()=>{e&&l.current&&l.current.focus()},[e]),w.useEffect(()=>{const C=z=>{a.current&&!a.current.contains(z.target)&&t()};return document.addEventListener("mousedown",C),()=>{document.removeEventListener("mousedown",C)}},[t]),w.useEffect(()=>{const C=z=>{z.key==="Escape"&&t()};return document.addEventListener("keydown",C),()=>{document.removeEventListener("keydown",C)}},[t]),w.useEffect(()=>{if(S){const C=setTimeout(()=>{N(null)},3e3);return()=>clearTimeout(C)}},[S]);const T=C=>{const _=new DOMParser().parseFromString(C,"text/html").querySelector("iframe");return _?_.getAttribute("src"):null},j=C=>{if(C.preventDefault(),f.trim()){const z=T(f.trim());if(z)try{new URL(z);const M={id:Date.now().toString(),src:z};c([...u,M]),h(""),k("");const _=u.length+1;g(`Embed link added successfully! You now have ${_} songs in the list.`);const W=setTimeout(()=>{g('Note: Songs will not autoplay in order. For more features, including playlists, visit sound.xyz.');const H=setTimeout(()=>{g("You can close this modal with ESC or clicking out, and the music will still play.");const q=setTimeout(()=>{g("")},3e3);return()=>clearTimeout(q)},8e3);return()=>clearTimeout(H)},3e3);return N(M.id),()=>clearTimeout(W)}catch{k("Invalid URL. Please enter a valid embed link.")}else k("Invalid iframe code. Please enter a valid iframe embed code.")}else k("Please enter a valid embed link.")};return w.useEffect(()=>{},[e]),s.jsxs(s.Fragment,{children:[s.jsx("div",{className:`fixed inset-0 bg-black/50 flex items-center justify-center z-50 transition-opacity duration-300 ${e?"opacity-100":"opacity-0 pointer-events-none"}`,children:s.jsxs("div",{ref:a,className:`w-[800px] max-h-[160vh] rounded-xl border ${o[r]} backdrop-blur-md p-2 overflow-y-auto transition-transform duration-300 ${e?"translate-y-0":"translate-y-full"}`,children:[s.jsx("div",{className:"h-[275px] overflow-y-auto",children:u.map(C=>s.jsx("div",{className:`p-4 rounded-lg hover:bg-gray-800/30 transition-colors ${C.id===S?"bg-green-900/30":""}`,children:s.jsx("iframe",{src:C.src,style:{borderRadius:"8px"},width:"100%",height:"260px",allow:"clipboard-write",sandbox:"allow-scripts allow-popups allow-popups-to-escape-sandbox"})},C.id))}),u.length===0&&s.jsx("div",{className:"mt-6 text-sm opacity-75",children:s.jsx("p",{children:"No music embed links available."})}),s.jsx("div",{className:"mt-4",children:s.jsxs("form",{onSubmit:j,children:[s.jsxs("div",{className:"flex items-center",children:[s.jsx("textarea",{value:f,onChange:C=>h(C.target.value),placeholder:"Paste embed code here",className:"w-full p-3 rounded-lg border border-gray-700 bg-gray-800/50 focus:outline-none focus:border-purple-400",rows:3}),s.jsx("button",{type:"submit",className:`ml-2 p-1 rounded-lg ${i[r]}`,children:d?"Loading...":"Add Link"})]}),m&&s.jsx("div",{className:"mt-2 text-red-500 text-sm",children:m}),x&&s.jsx("div",{className:"mt-2 text-green-500 text-sm",dangerouslySetInnerHTML:{__html:x}})]})})]})}),s.jsx(iy,{isPlaying:p,onOpen:n})]})},ly=({isPomodoroModalOpen:e,isTimeZonesModalOpen:t,isCryptoPricesModalOpen:n,isDocsModalOpen:r,isWeb3SocialModalOpen:o,isWalletsModalOpen:i,isLexiconModalOpen:l,isMusicModalOpen:a,onClosePomodoro:u,onCloseTimeZones:c,onCloseCryptoPrices:f,onCloseDocs:h,onCloseWeb3SocialModal:p,onCloseWalletsModal:y,onCloseLexiconModal:m,onCloseMusicModal:k,theme:x,onTimerUpdate:g})=>s.jsxs(s.Fragment,{children:[s.jsx(Fd,{isOpen:e,onClose:u,theme:x,onTimerUpdate:g}),s.jsx(Ud,{isOpen:t,onClose:c,theme:x}),s.jsx(pf,{isOpen:n,onClose:f,theme:x}),s.jsx(Bd,{isOpen:r,onClose:h,theme:x}),s.jsx(ty,{isOpen:o,onClose:p,theme:x}),s.jsx(ry,{isOpen:i,onClose:y,theme:x}),s.jsx(hf,{isOpen:l,onClose:m,theme:x}),s.jsx(yf,{isOpen:a,onClose:k,onOpen:()=>{},theme:x})]}),sy=({isOpen:e,onClose:t,theme:n})=>{if(!e)return null;const r={purple:"border-purple-500/30 bg-purple-900/20",green:"border-green-500/30 bg-green-900/20",teal:"border-teal-500/30 bg-teal-900/20"},[o,i]=w.useState(""),[l,a]=w.useState(!0),[u,c]=w.useState(""),f=w.useRef(null);return w.useEffect(()=>{e&&(async()=>{try{const p=await fetch("https://bafybeigsudocl4hqg5cprsqptrotnqxuz6pwko34nemjzt5coya76s5oou.ipfs.w3s.link/love.json");if(!p.ok)throw new Error("Network response was not ok");const y=await p.json();if(y&&y.statements&&y.statements.length>0){const m=Math.floor(Math.random()*y.statements.length);i(y.statements[m])}else throw new Error("No statements found in the JSON data")}catch(p){c("Failed to fetch statements"),console.error("Error fetching statements:",p)}finally{a(!1)}})()},[e]),w.useEffect(()=>{const h=p=>{f.current&&!f.current.contains(p.target)&&t()};return document.addEventListener("mousedown",h),()=>{document.removeEventListener("mousedown",h)}},[t]),w.useEffect(()=>{const h=p=>{p.key==="Escape"&&t()};return document.addEventListener("keydown",h),()=>{document.removeEventListener("keydown",h)}},[t]),s.jsx("div",{className:"fixed inset-0 bg-black/50 flex items-center justify-center z-50",children:s.jsxs("div",{ref:f,className:`max-w-md rounded-lg border ${r[n]} backdrop-blur-md p-6`,children:[s.jsx("div",{className:"flex justify-between items-center mb-4",children:s.jsx("h2",{className:"text-xl font-bold",children:"Love from IPFS"})}),s.jsx("div",{className:"text-lg opacity-90",children:l?s.jsx("p",{children:"Loading..."}):u?s.jsx("p",{children:u}):o})]})})},ay=({isOpen:e,onClose:t,theme:n})=>{if(!e)return null;const r={purple:"border-purple-500/30 bg-purple-900/20",green:"border-green-500/30 bg-green-900/20",teal:"border-teal-500/30 bg-teal-900/20"},o={"Ctrl+K":"focusSearchBar","Ctrl+B":"toggleToolbar",Escape:"closeModalsOrToolbar","Alt+T":"changeTheme","Alt+M":"toggleMusicModal","Alt+H":"toggleHelpModal"},i={isCryptoPricesModalOpen:"Open Crypto Prices",isTimeZonesModalOpen:"Open Time Zones",isDocsModalOpen:"Open Web3 Docs",isWeb3SocialModalOpen:"Open Web3 Social",isLexiconModalOpen:"Open Lexicon",isWalletsModalOpen:"Open Wallets",isMusicModalOpen:"Open Music",isHelpModalOpen:"Open Help"},l={isCryptoPricesModalOpen:["price"],isTimeZonesModalOpen:["clock","time","utc"],isDocsModalOpen:["docs"],isWeb3SocialModalOpen:["social"],isLexiconModalOpen:["words","dictionary","lexicon"],isWalletsModalOpen:["wallet"],isMusicModalOpen:["music","sound","tunes"],isHelpModalOpen:["help"]},a=w.useRef(null);return mf(a,t),s.jsx("div",{className:"fixed inset-0 bg-black/50 flex items-center justify-center z-50",children:s.jsxs("div",{ref:a,className:`w-[600px] max-h-[90vh] rounded-xl border ${r[n]} backdrop-blur-md p-6 overflow-y-auto`,children:[s.jsxs("div",{className:"flex justify-between items-center mb-6",children:[s.jsx("h2",{className:"text-2xl font-bold",children:"Help"}),s.jsx("button",{onClick:t,className:"p-1 hover:bg-gray-800/50 rounded-lg",children:s.jsx(ze,{size:20})})]}),s.jsx("div",{className:"grid grid-cols-2 gap-4",children:Object.entries(o).map(([u,c])=>s.jsxs("div",{className:"flex items-center justify-between p-4 rounded-lg bg-gray-800/30",children:[s.jsx("span",{className:"font-semibold",children:u}),s.jsx("span",{children:c.replace(/([A-Z])/g," $1").trim()})]},c))}),s.jsxs("div",{className:"mt-6",children:[s.jsx("h3",{className:"text-lg font-semibold mb-2",children:"Search Commands"}),s.jsx("ul",{className:"space-y-2",children:Object.entries(l).map(([u,c])=>s.jsxs("li",{className:"flex items-center justify-between",children:[s.jsx("span",{children:c.join(", ")}),s.jsx("span",{children:i[u]})]},u))})]}),s.jsx("div",{className:"mt-8 text-sm opacity-75",children:s.jsx("p",{children:"You can also search for web3-related things to find more links and shortcuts."})})]})})},uy=({search:e,theme:t,filteredShortcuts:n,filteredLinks:r,focusedIndex:o,setFocusedIndex:i,isTimerRunning:l,timerTimeLeft:a,setIsTimerRunning:u,setTimerTimeLeft:c,showToolbar:f,toggleToolbar:h,isPomodoroModalOpen:p,isTimeZonesModalOpen:y,isCryptoPricesModalOpen:m,isDocsModalOpen:k,isWeb3SocialModalOpen:x,isWalletsModalOpen:g,isLexiconModalOpen:d,isMusicModalOpen:v,isHelpModalOpen:S,setIsMusicModalOpen:N,setIsHelpModalOpen:T,openModal:j,closeModal:C,navigateToSearchBar:z,onNavigateToGrid:M,onTimerUpdate:_,isModalvateOpen:W,setIsModalvateOpen:H,closeLexiconModal:q,handleOpenMusicModal:G,searchBarRef:ot,linkGridRef:yt,shortcutGridRef:A})=>{const R=()=>{H(!0)},O=()=>{H(!1)};return s.jsxs(s.Fragment,{children:[s.jsx(ph,{shortcuts:n,theme:t,onNavigateToSearchBar:z,ref:A,onLastRowDown:z,searchBarRef:ot}),e&&s.jsx(mh,{links:r,theme:t,ref:yt,focusedIndex:o,setFocusedIndex:i,onNavigateToGrid:z}),s.jsx(hh,{isTimerRunning:l,timerTimeLeft:a,onClick:()=>j("isPomodoroModalOpen")}),s.jsx(ey,{theme:t,setTheme:()=>{},onPomodoroOpen:()=>j("isPomodoroModalOpen"),onTimeZonesOpen:()=>j("isTimeZonesModalOpen"),showToolbar:f,toggleToolbar:h}),s.jsx(ly,{isPomodoroModalOpen:p,isTimeZonesModalOpen:y,isCryptoPricesModalOpen:m,isDocsModalOpen:k,isWeb3SocialModalOpen:x,isWalletsModalOpen:g,isLexiconModalOpen:d,isMusicModalOpen:v,onCloseLexiconModal:q,onCloseMusicModal:()=>N(!1),onClosePomodoro:()=>C("isPomodoroModalOpen"),onCloseTimeZones:()=>C("isTimeZonesModalOpen"),onCloseCryptoPrices:()=>C("isCryptoPricesModalOpen"),onCloseDocs:()=>C("isDocsModalOpen"),onCloseWeb3SocialModal:()=>C("isWeb3SocialModalOpen"),onCloseWalletsModal:()=>C("isWalletsModalOpen"),theme:t,onTimerUpdate:_}),s.jsx("button",{onClick:R,className:"absolute bottom-6 left-4 p-2 bg-white bg-opacity-10 rounded-full text-white opacity-10 z-50 hover:opacity-100 transition-opacity",children:s.jsx(ei,{size:24})}),s.jsx(sy,{isOpen:W,onClose:O,theme:t}),s.jsx(hf,{isOpen:d,onClose:q,theme:t}),s.jsx(yf,{isOpen:v,onClose:()=>N(!1),onOpen:G,theme:t}),s.jsx(ay,{isOpen:S,onClose:()=>T(!1),theme:t})]})},cy=[{id:"1",name:"GitHub",icon:s.jsx(Xm,{size:32}),url:"https://github.com",category:"dev"},{id:"2",name:"CodeSandbox",icon:s.jsx(qm,{size:32}),url:"https://codesandbox.io",category:"dev"},{id:"3",name:"CodePen",icon:s.jsx(Zm,{size:32}),url:"https://codepen.io",category:"dev"},{id:"4",name:"Etherscan",icon:s.jsx(Gm,{size:32}),url:"https://etherscan.io",category:"web3"},{id:"5",name:"Gitcoin",icon:s.jsx(zd,{size:32}),url:"https://gitcoin.co",category:"web3"},{id:"6",name:"Karma",icon:s.jsx(Ym,{size:32}),url:"https://gap.karmahq.xyz",category:"web3"},{id:"7",name:"Giveth",icon:s.jsx(ei,{size:32}),url:"https://giveth.io",category:"refi"},{id:"8",name:"Snapshot",icon:s.jsx(ti,{size:32}),url:"https://snapshot.org",category:"dao"},{id:"9",name:"Safe",icon:s.jsx(ge,{size:32}),url:"https://safe.global",category:"web3"},{id:"10",name:"ENS",icon:s.jsx(Pd,{size:32}),url:"https://app.ens.domains",category:"web3"},{id:"11",name:"Charmverse",icon:s.jsx(Qm,{size:32}),url:"https://app.charmverse.io",category:"docs"},{id:"12",name:"Remix",icon:s.jsx(ni,{size:32}),url:"https://remix.ethereum.org",category:"dev"}],dy=[{id:"13",name:"Arbitrum One",icon:s.jsx(Dl,{className:"text-green-400",size:24}),url:"https://arbiscan.io/",category:"Networks",description:"A layer 2 scaling solution for Ethereum"},{id:"14",name:"Base",icon:s.jsx(Ll,{className:"text-orange-400",size:24}),url:"https://basescan.org/",category:"Networks",description:"A high-throughput, low-cost Ethereum L2"},{id:"15",name:"Celo Mainnet",icon:s.jsx(Al,{className:"text-blue-400",size:24}),url:"https://celoscan.io/",category:"Networks",description:"A blockchain for mobile payments and financial inclusion"},{id:"16",name:"Ethereum Mainnet",icon:s.jsx(Ml,{className:"text-pink-400",size:24}),url:"https://etherscan.io/",category:"Networks",description:"The main network of the Ethereum blockchain"},{id:"17",name:"Gnosis",icon:s.jsx(Pl,{className:"text-teal-400",size:24}),url:"https://gnosisscan.io/",category:"Networks",description:"A blockchain for trustless smart contracts"},{id:"18",name:"OP Mainnet",icon:s.jsx(Do,{className:"text-purple-400",size:24}),url:"https://optimistic.etherscan.io/",category:"Networks",description:"A layer 2 scaling solution for Ethereum"},{id:"19",name:"Polygon Mainnet",icon:s.jsx(Rl,{className:"text-cyan-400",size:24}),url:"https://polygonscan.com/",category:"Networks",description:"A layer 2 scaling solution for Ethereum"},{id:"20",name:"Polygon zkEVM",icon:s.jsx(tt,{className:"text-purple-400",size:24}),url:"https://zkevm.polygonscan.com/",category:"Networks",description:"A zk-rollup solution for Ethereum"},{id:"21",name:"Alchemy",icon:s.jsx(L,{className:"text-purple-400",size:24}),url:"https://docs.alchemy.com/",category:"Docs",description:"A web3 developer platform providing powerful tools for building blockchain applications"},{id:"22",name:"Chainlink",icon:s.jsx(L,{className:"text-purple-400",size:24}),url:"https://docs.chain.link/",category:"Docs",description:"A decentralized oracle network that provides real-world data to smart contracts"},{id:"23",name:"Ethereum",icon:s.jsx(L,{className:"text-emerald-400",size:24}),url:"https://ethereum.org/en/developers/docs/",category:"Docs",description:"Ethereum resources for developers, covering smart contracts, wallets, and more"},{id:"24",name:"ENS",icon:s.jsx(L,{className:"text-emerald-400",size:24}),url:"https://docs.ens.domains/",category:"Docs",description:"A decentralized naming system for cryptocurrency addresses"},{id:"25",name:"Foundry",icon:s.jsx(L,{className:"text-emerald-400",size:24}),url:"https://book.getfoundry.sh/",category:"Docs",description:"A fast, portable, and modular toolkit for Ethereum development"},{id:"26",name:"Hardhat",icon:s.jsx(L,{className:"text-green-400",size:24}),url:"https://hardhat.org/hardhat-runner/docs/getting-started",category:"Docs",description:"A development environment for Ethereum with local blockchain development, testing, and deployment"},{id:"27",name:"Infura",icon:s.jsx(L,{className:"text-purple-400",size:24}),url:"https://docs.infura.io/",category:"Docs",description:"Blockchain infrastructure for dapps, providing access to Ethereum and other blockchains"},{id:"28",name:"IPFS",icon:s.jsx(L,{className:"text-purple-400",size:24}),url:"https://docs.ipfs.tech/",category:"Docs",description:"A decentralized file system for building distributed applications"},{id:"29",name:"OpenZeppelin",icon:s.jsx(L,{className:"text-purple-400",size:24}),url:"https://docs.openzeppelin.com/contracts/",category:"Docs",description:"A library of secure and community-audited smart contracts for Ethereum"},{id:"30",name:"RainbowKit",icon:s.jsx(L,{className:"text-green-400",size:24}),url:"https://www.rainbowkit.com/docs/",category:"Docs",description:"Beautiful, modular, and extensible wallet connection UIs for Ethereum dapps"},{id:"31",name:"Reown",icon:s.jsx(L,{className:"text-green-400",size:24}),url:"https://docs.reown.io/",category:"Docs",description:"A platform for building and managing decentralized applications"},{id:"32",name:"Remix IDE",icon:s.jsx(L,{className:"text-emerald-400",size:24}),url:"https://remix-ide.readthedocs.io/en/latest/",category:"Docs",description:"An in-browser Solidity IDE for writing, testing, and deploying smart contracts"},{id:"33",name:"Solidity",icon:s.jsx(L,{className:"text-purple-400",size:24}),url:"https://docs.soliditylang.org/en/latest/",category:"Docs",description:"The programming language for writing smart contracts on Ethereum"},{id:"34",name:"Scaffold-ETH 2",icon:s.jsx(L,{className:"text-green-400",size:24}),url:"https://github.com/scaffold-eth/scaffold-eth-2",category:"Docs",description:"A full-stack Ethereum development scaffold to build and deploy dapps quickly"},{id:"35",name:"The Graph",icon:s.jsx(L,{className:"text-green-400",size:24}),url:"https://thegraph.com/docs/en/",category:"Docs",description:"A decentralized indexing protocol for building subgraphs to query blockchain data"},{id:"36",name:"ThirdWeb",icon:s.jsx(L,{className:"text-emerald-400",size:24}),url:"https://portal.thirdweb.com/",category:"Docs",description:"A platform for building web3 apps with the most intuitive SDK and tools"},{id:"37",name:"Viem",icon:s.jsx(L,{className:"text-purple-400",size:24}),url:"https://viem.sh/",category:"Docs",description:"A lightweight, powerful, and type-safe Ethereum JavaScript library for building dapps"},{id:"38",name:"Wagmi",icon:s.jsx(L,{className:"text-purple-400",size:24}),url:"https://wagmi.sh/",category:"Docs",description:"React Hooks for Ethereum that simplifies building dapps"},{id:"39",name:"Web3.js",icon:s.jsx(L,{className:"text-green-400",size:24}),url:"https://web3js.readthedocs.io/en/v1.7.0/",category:"Docs",description:"A JavaScript library for interacting with the Ethereum blockchain and smart contracts"},{id:"40",name:"Ethers.js",icon:s.jsx(L,{className:"text-emerald-400",size:24}),url:"https://docs.ethers.io/v5/",category:"Docs",description:"A JavaScript library for interacting with the Ethereum blockchain and smart contracts, providing a simple and powerful API"},{id:"42",name:"Tally",icon:s.jsx(ti,{className:"text-purple-400",size:24}),url:"https://www.tally.xyz",category:"DAO Governance",description:"DAO governance dashboard and voting interface"},{id:"43",name:"Commonwealth",icon:s.jsx(Er,{className:"text-green-400",size:24}),url:"https://commonwealth.im",category:"DAO Governance",description:"Discussion forum and governance platform for Web3 communities"},{id:"44",name:"Discourse",icon:s.jsx(Sr,{className:"text-orange-400",size:24}),url:"https://www.discourse.org",category:"DAO Governance",description:"Community discussion and governance forum"},{id:"45",name:"Gardens",icon:s.jsx(Md,{className:"text-pink-400",size:24}),url:"https://www.gardens.fund/",category:"DAO Governance",description:"Gardens is a coordination platform"},{id:"46",name:"GreenPill Network",icon:s.jsx(_d,{className:"text-green-400",size:24}),url:"https://greenpill.network",category:"Refi",description:"Turning degens to regens."},{id:"47",name:"Letʼs GROW DAO",icon:s.jsx(Id,{className:"text-emerald-400",size:24}),url:"https://www.letsgrow.network/",category:"Refi",description:"On a mission to unite & GROW the Regen Movement"},{id:"48",name:"ReFi DAO",icon:s.jsx(Od,{className:"text-purple-400",size:24}),url:"https://www.refidao.com/",category:"Refi",description:"The home of the regenerative finance ecosystem."},{id:"49",name:"Klima DAO",icon:s.jsx(Ld,{className:"text-green-400",size:24}),url:"https://www.klimadao.finance",category:"Refi",description:"Driving climate action through tokenized carbon credits"},{id:"50",name:"Aave",icon:s.jsx(Dl,{className:"text-green-400",size:24}),url:"https://aave.com",category:"Defi",description:"A decentralized lending and borrowing protocol"},{id:"51",name:"Balancer",icon:s.jsx(Ll,{className:"text-orange-400",size:24}),url:"https://balancer.fi",category:"Defi",description:"A decentralized exchange and automated market maker"},{id:"52",name:"Compound",icon:s.jsx(Al,{className:"text-blue-400",size:24}),url:"https://compound.finance",category:"Defi",description:"A decentralized lending protocol on Ethereum"},{id:"53",name:"Curve",icon:s.jsx(Ml,{className:"text-pink-400",size:24}),url:"https://curve.fi",category:"Defi",description:"A decentralized exchange for stablecoins"},{id:"54",name:"Rari Capital",icon:s.jsx(Pl,{className:"text-teal-400",size:24}),url:"https://rari.capital",category:"Defi",description:"A decentralized lending and borrowing protocol with smart yield farming"},{id:"55",name:"Uniswap",icon:s.jsx(Do,{className:"text-purple-400",size:24}),url:"https://uniswap.org",category:"Defi",description:"A decentralized exchange (DEX) for ERC-20 tokens"},{id:"56",name:"Yearn",icon:s.jsx(Rl,{className:"text-cyan-400",size:24}),url:"https://yearn.finance",category:"Defi",description:"A suite of DeFi tools for managing decentralized assets"},{id:"57",name:"1inch",icon:s.jsx(tt,{className:"text-purple-400",size:24}),url:"https://1inch.exchange/",category:"Defi",description:"A decentralized exchange (DEX) aggregator"},{id:"58",name:"Jumper.Exchange",icon:s.jsx(tt,{className:"text-purple-400",size:24}),url:"https://jumper.exchange/",category:"Defi",description:"A decentralized exchange (DEX)"},{id:"59",name:"QuickSwap",icon:s.jsx(tt,{className:"text-purple-400",size:24}),url:"https://quickswap.exchange/",category:"Defi",description:"A decentralized exchange (DEX) on the Polygon network"},{id:"60",name:"Optimism",icon:s.jsx(L,{className:"text-green-400",size:24}),url:"https://docs.optimism.io/builders",category:"Docs",description:"Optimism documentation for builders, covering various aspects of the Optimism network"},{id:"61",name:"Lens",icon:s.jsx(L,{className:"text-purple-400",size:24}),url:"https://www.lens.xyz/docs",category:"Docs",description:"Lens documentation for developers, providing tools and resources for building on the Lens protocol"},{id:"62",name:"Moralis",icon:s.jsx(L,{className:"text-emerald-400",size:24}),url:"https://docs.moralis.com/",category:"Docs",description:"Moralis documentation for developers, offering services and tools for blockchain applications"},{id:"63",name:"Warpcast",icon:s.jsx(Rd,{className:"text-pink-400",size:24}),url:"https://warpcast.com/",category:"Web3 Social",description:"Warpcast is a decentralized social network built on the Farcaster protocol"},{id:"64",name:"Buttrfly",icon:s.jsx(bd,{className:"text-teal-400",size:24}),url:"https://buttrfly.app/",category:"Web3 Social",description:"Buttrfly is a decentralized platform for creators to share and monetize their content"},{id:"65",name:"Bloomers",icon:s.jsx(Ad,{className:"text-orange-400",size:24}),url:"https://bloomers.tv/",category:"Web3 Social",description:"Bloomers is a decentralized video platform for creators"},{id:"66",name:"Yup",icon:s.jsx(Td,{className:"text-cyan-400",size:24}),url:"https://yup.io/",category:"Web3 Social",description:"Yup is a decentralized social network for communities"},{id:"67",name:"Phaver",icon:s.jsx(Dd,{className:"text-lime-400",size:24}),url:"https://phaver.com/",category:"Web3 Social",description:"Phaver is a decentralized social network for communities"},{id:"68",name:"Hey",icon:s.jsx(ni,{className:"text-violet-400",size:24}),url:"https://hey.xyz/",category:"Web3 Social",description:"Hey is a decentralized social network for writers and creators"},{id:"69",name:"Tape",icon:s.jsx(Sr,{className:"text-indigo-400",size:24}),url:"https://tape.xyz/",category:"Web3 Social",description:"Tape is a decentralized platform for sharing stories and content"},{id:"70",name:"Lenspeer",icon:s.jsx(Er,{className:"text-fuchsia-400",size:24}),url:"https://lenspeer.com/",category:"Web3 Social",description:"Lenspeer is a decentralized social network for communities"},{id:"71",name:"MetaMask",icon:s.jsx(ge,{className:"text-green-400",size:24}),url:"https://metamask.io/",category:"Wallets",description:"A cryptocurrency wallet for buying, selling, and managing digital assets."},{id:"72",name:"Coinbase Wallet",icon:s.jsx(ge,{className:"text-green-400",size:24}),url:"https://www.coinbase.com/wallet",category:"Wallets",description:"A cryptocurrency wallet for buying, selling, and managing digital assets."},{id:"73",name:"WalletConnect",icon:s.jsx(ge,{className:"text-green-400",size:24}),url:"https://walletconnect.com/",category:"Wallets",description:"An open protocol for connecting decentralized applications to mobile wallets."},{id:"74",name:"Safe",icon:s.jsx(ge,{className:"text-green-400",size:24}),url:"https://gnosis-safe.io/",category:"Wallets",description:"A non-custodial, multi-signature wallet for Ethereum."},{id:"75",name:"Trust Wallet",icon:s.jsx(ge,{className:"text-green-400",size:24}),url:"https://trustwallet.com/",category:"Wallets",description:"A multi-chain cryptocurrency wallet for Android and iOS."},{id:"76",name:"Ledger Live",icon:s.jsx(ge,{className:"text-green-400",size:24}),url:"https://www.ledger.com/ledger-live",category:"Wallets",description:"A cryptocurrency wallet that integrates with Ledger hardware wallets."},{id:"77",name:"Trezor Wallet",icon:s.jsx(ge,{className:"text-green-400",size:24}),url:"https://trezor.io/",category:"Wallets",description:"A cryptocurrency wallet that integrates with Trezor hardware wallets."},{id:"78",name:"Exodus",icon:s.jsx(ge,{className:"text-green-400",size:24}),url:"https://www.exodus.com/",category:"Wallets",description:"A multi-asset cryptocurrency wallet for desktop and mobile."},{id:"79",name:"Brave Wallet",icon:s.jsx(ge,{className:"text-green-400",size:24}),url:"https://brave.com/wallet",category:"Wallets",description:"A cryptocurrency wallet built into the Brave browser."},{id:"80",name:"Argent",icon:s.jsx(ge,{className:"text-green-400",size:24}),url:"https://argent.xyz/",category:"Wallets",description:"A non-custodial Ethereum wallet with a gasless user experience."},{id:"81",name:"Frame",icon:s.jsx(ge,{className:"text-green-400",size:24}),url:"https://frame.sh/",category:"Wallets",description:"A non-custodial browser wallet for Ethereum and other networks."},{id:"82",name:"Rainbow",icon:s.jsx(ge,{className:"text-green-400",size:24}),url:"https://rainbow.me/",category:"Wallets",description:"A mobile wallet for Ethereum and other networks."},{id:"83",name:"Zerion",icon:s.jsx(ge,{className:"text-green-400",size:24}),url:"https://zerion.io/",category:"Wallets",description:"A multi-chain cryptocurrency wallet and portfolio tracker."}],fy=e=>cy.filter(t=>t.name.toLowerCase().includes(e.toLowerCase())||t.category.toLowerCase().includes(e.toLowerCase())),py=(e,t)=>{const n=e.toLowerCase();return t.filter(r=>{const o=r.name.toLowerCase(),i=r.description.toLowerCase(),l=r.category.toLowerCase();return o.includes(n)||i.includes(n)||l.includes(n)})},my=dy,hy=()=>{const[e,t]=w.useState({isPomodoroModalOpen:!1,isTimeZonesModalOpen:!1,isCryptoPricesModalOpen:!1,isDocsModalOpen:!1,isWeb3SocialModalOpen:!1,isWalletsModalOpen:!1,isLexiconModalOpen:!1,isMusicModalOpen:!1,isHelpModalOpen:!1});return{...e,openModal:o=>{t(i=>({...i,[o]:!0}))},closeModal:o=>{t(i=>({...i,[o]:!1}))}}},yy=e=>{w.useEffect(()=>{const t=e(),n=r=>{var i,l,a,u,c,f,h,p;let o=!1;r.ctrlKey&&r.key==="k"?((i=t.onCtrlK)==null||i.call(t),o=!0):r.ctrlKey&&r.key==="b"?((l=t.onCtrlB)==null||l.call(t),o=!0):r.key==="Escape"?((a=t.onEscape)==null||a.call(t),o=!0):r.key==="ArrowUp"?((u=t.onArrowUp)==null||u.call(t),o=!0):r.key==="ArrowDown"?((c=t.onArrowDown)==null||c.call(t),o=!0):r.altKey&&r.key==="t"?(f=t.onAltT)==null||f.call(t):r.altKey&&r.key==="m"?(h=t.onAltM)==null||h.call(t):r.altKey&&r.key==="h"&&((p=t.onAltH)==null||p.call(t)),o&&r.preventDefault()};return window.addEventListener("keydown",n),()=>{window.removeEventListener("keydown",n)}},[e])},fu={price:"isCryptoPricesModalOpen",clock:"isTimeZonesModalOpen",time:"isTimeZonesModalOpen",utc:"isTimeZonesModalOpen",docs:"isDocsModalOpen",social:"isWeb3SocialModalOpen",words:"isLexiconModalOpen",dictionary:"isLexiconModalOpen",lexicon:"isLexiconModalOpen",wallet:"isWalletsModalOpen",music:"isMusicModalOpen",sound:"isMusicModalOpen",tunes:"isMusicModalOpen",help:"isHelpModalOpen"},gy=()=>{const[e,t]=w.useState(""),[n,r]=w.useState("purple"),[o,i]=w.useState(!1),[l,a]=w.useState(0),[u,c]=w.useState(!1),[f,h]=w.useState(null),[p,y]=w.useState(!1),[m,k]=w.useState(!1),[x,g]=w.useState(!1),[d,v]=w.useState(!1),{isPomodoroModalOpen:S,isTimeZonesModalOpen:N,isCryptoPricesModalOpen:T,isDocsModalOpen:j,isWeb3SocialModalOpen:C,isWalletsModalOpen:z,openModal:M,closeModal:_}=hy(),W=w.useRef(null),H=w.useRef(null),q=w.useRef(null),G=w.useRef(null),ot=fy(e),yt=py(e,my),A={purple:"bg-gradient-to-br from-gray-900 via-purple-900 to-violet-900",green:"bg-gradient-to-br from-gray-900 via-green-900 to-emerald-900",teal:"bg-gradient-to-br from-gray-900 via-teal-900 to-emerald-900"},R=()=>{c(!u)},O=["purple","green","teal"],Z=()=>{const ue=O.indexOf(n);r(O[(ue+1)%O.length])},ne=()=>{if(yt.length>0&&(h(0),q.current&&q.current.gridItemsRef.current)){const ue=q.current.gridItemsRef.current[0];ue&&ue.focus()}},nn=()=>{var ue;(ue=W.current)==null||ue.focus(),h(null)},Je=()=>{if(H.current&&H.current.gridItemsRef.current){const ue=H.current.gridItemsRef.current[0];ue&&(ue.focus(),h(0))}},On=()=>{k(!0)},it=()=>{k(!1)},rn=()=>{g(!0)},gf=w.useCallback(()=>{T?_("isCryptoPricesModalOpen"):N?_("isTimeZonesModalOpen"):S?_("isPomodoroModalOpen"):j?_("isDocsModalOpen"):C?_("isWeb3SocialModalOpen"):z?_("isWalletsModalOpen"):x?g(!1):d?v(!1):u&&R()},[T,N,S,j,C,z,x,d,u,_,g,v,R]),Ws={onCtrlK:()=>{var ue;(ue=W.current)==null||ue.focus(),h(null)},onCtrlB:R,onEscape:gf,onAltT:Z,onAltM:()=>g(!x),onAltH:()=>v(!d)},vf=w.useCallback(()=>Ws,[Ws]);return yy(vf),w.useEffect(()=>{const ue=e.toLowerCase(),Pr=Object.keys(fu).find(It=>ue.includes(It));if(Pr){const It=fu[Pr];It==="isLexiconModalOpen"?k(!0):It==="isWalletsModalOpen"?M("isWalletsModalOpen"):It==="isMusicModalOpen"?g(!0):It==="isHelpModalOpen"?v(!0):M(It),t("")}},[e,M]),s.jsxs("div",{className:`relative min-h-screen ${A[n]} p-6 overflow-hidden ${n}`,children:[s.jsx("div",{className:"absolute inset-0 bg-[url('data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNDAiIGhlaWdodD0iNDAiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGRlZnM+PHBhdHRlcm4gaWQ9ImdyaWQiIHdpZHRoPSI0MCIgaGVpZ2h0PSI0MCIgcGF0dGVyblVuaXRzPSJ1c2VyU3BhY2VPblVzZSI+PHBhdGggZD0iTSAwIDEwIEwgNDAgMTAgaTExMC0xMCBMMTAgaDQwIE0wIDIwIEwgNDAgMjAgaTExMC0yMCBMMTAgaDQwIE0wIDMwIEwgNDAgMzAgaTExMC0zMCBMMTAgaDQwIE0zMCAwIEwgMzA0MCBMMTAgaDQwIiBmaWxsPSJub25lIiBzdHJva2U9InJnYmEoMjU1LDI1NSwyNTUsMC4xKSIgc3Ryb2tlLXdpZHRoPSIxIi8+PC9wYXR0ZXJuPjwvZGVmcz48cmVjdCB3aWR0aD0iMTAwJSIgaGVpZ2h0PSIxMDAlIiBmaWxsPSJ1cmwoI2dyaWQpIi8+PC9zdmc+')] opacity-20"}),s.jsxs("div",{className:"relative",children:[s.jsx(fh,{search:e,setSearch:t,theme:n,inputRef:W,onNavigateToLinks:ne,onNavigateToGrid:Je}),s.jsx("button",{onClick:On,className:"absolute top-1/2 right-0 transform -translate-y-1/2 p-2 bg-white bg-opacity-10 rounded-full text-white opacity-10 z-50 hover:opacity-100 transition-opacity",children:s.jsx(L,{size:24})}),s.jsx("button",{onClick:()=>v(!0),className:"absolute top-1/2 right-14 transform -translate-y-1/2 p-2 bg-white bg-opacity-10 rounded-full text-white opacity-10 z-50 hover:opacity-100 transition-opacity",children:s.jsx(th,{size:24})})]}),s.jsx(uy,{search:e,theme:n,filteredShortcuts:ot,filteredLinks:yt,focusedIndex:f,setFocusedIndex:h,isTimerRunning:o,timerTimeLeft:l,setIsTimerRunning:i,setTimerTimeLeft:a,showToolbar:u,toggleToolbar:R,isPomodoroModalOpen:S,isTimeZonesModalOpen:N,isCryptoPricesModalOpen:T,isDocsModalOpen:j,isWeb3SocialModalOpen:C,isWalletsModalOpen:z,isLexiconModalOpen:m,isMusicModalOpen:x,isHelpModalOpen:d,setIsMusicModalOpen:g,setIsHelpModalOpen:v,openModal:M,closeModal:_,navigateToSearchBar:nn,onNavigateToGrid:Je,onTimerUpdate:(ue,Pr)=>{i(ue),a(Pr)},isModalvateOpen:p,setIsModalvateOpen:y,closeLexiconModal:it,handleOpenMusicModal:rn,searchBarRef:G,linkGridRef:q,shortcutGridRef:H})]})};function vy(){return s.jsx(gy,{})}Cd(document.getElementById("root")).render(s.jsx(w.StrictMode,{children:s.jsx(vy,{})})); +`+i):r.stack=i}catch{}}throw r}}_request(t,n){typeof t=="string"?(n=n||{},n.url=t):n=t||{},n=Xt(this.defaults,n);const{transitional:r,paramsSerializer:o,headers:i}=n;r!==void 0&&Ul.assertOptions(r,{silentJSONParsing:vt.transitional(vt.boolean),forcedJSONParsing:vt.transitional(vt.boolean),clarifyTimeoutError:vt.transitional(vt.boolean)},!1),o!=null&&(E.isFunction(o)?n.paramsSerializer={serialize:o}:Ul.assertOptions(o,{encode:vt.function,serialize:vt.function},!0)),n.method=(n.method||this.defaults.method||"get").toLowerCase();let l=i&&E.merge(i.common,i[n.method]);i&&E.forEach(["delete","get","head","post","put","patch","common"],m=>{delete i[m]}),n.headers=je.concat(l,i);const a=[];let u=!0;this.interceptors.request.forEach(function(k){typeof k.runWhen=="function"&&k.runWhen(n)===!1||(u=u&&k.synchronous,a.unshift(k.fulfilled,k.rejected))});const c=[];this.interceptors.response.forEach(function(k){c.push(k.fulfilled,k.rejected)});let f,h=0,p;if(!u){const m=[cu.bind(this),void 0];for(m.unshift.apply(m,a),m.push.apply(m,c),p=m.length,f=Promise.resolve(n);h{if(!r._listeners)return;let i=r._listeners.length;for(;i-- >0;)r._listeners[i](o);r._listeners=null}),this.promise.then=o=>{let i;const l=new Promise(a=>{r.subscribe(a),i=a}).then(o);return l.cancel=function(){r.unsubscribe(i)},l},t(function(i,l,a){r.reason||(r.reason=new Dn(i,l,a),n(r.reason))})}throwIfRequested(){if(this.reason)throw this.reason}subscribe(t){if(this.reason){t(this.reason);return}this._listeners?this._listeners.push(t):this._listeners=[t]}unsubscribe(t){if(!this._listeners)return;const n=this._listeners.indexOf(t);n!==-1&&this._listeners.splice(n,1)}toAbortSignal(){const t=new AbortController,n=r=>{t.abort(r)};return this.subscribe(n),t.signal.unsubscribe=()=>this.unsubscribe(n),t.signal}static source(){let t;return{token:new Us(function(o){t=o}),cancel:t}}}function J0(e){return function(n){return e.apply(null,n)}}function Y0(e){return E.isObject(e)&&e.isAxiosError===!0}const Wl={Continue:100,SwitchingProtocols:101,Processing:102,EarlyHints:103,Ok:200,Created:201,Accepted:202,NonAuthoritativeInformation:203,NoContent:204,ResetContent:205,PartialContent:206,MultiStatus:207,AlreadyReported:208,ImUsed:226,MultipleChoices:300,MovedPermanently:301,Found:302,SeeOther:303,NotModified:304,UseProxy:305,Unused:306,TemporaryRedirect:307,PermanentRedirect:308,BadRequest:400,Unauthorized:401,PaymentRequired:402,Forbidden:403,NotFound:404,MethodNotAllowed:405,NotAcceptable:406,ProxyAuthenticationRequired:407,RequestTimeout:408,Conflict:409,Gone:410,LengthRequired:411,PreconditionFailed:412,PayloadTooLarge:413,UriTooLong:414,UnsupportedMediaType:415,RangeNotSatisfiable:416,ExpectationFailed:417,ImATeapot:418,MisdirectedRequest:421,UnprocessableEntity:422,Locked:423,FailedDependency:424,TooEarly:425,UpgradeRequired:426,PreconditionRequired:428,TooManyRequests:429,RequestHeaderFieldsTooLarge:431,UnavailableForLegalReasons:451,InternalServerError:500,NotImplemented:501,BadGateway:502,ServiceUnavailable:503,GatewayTimeout:504,HttpVersionNotSupported:505,VariantAlsoNegotiates:506,InsufficientStorage:507,LoopDetected:508,NotExtended:510,NetworkAuthenticationRequired:511};Object.entries(Wl).forEach(([e,t])=>{Wl[t]=e});function ff(e){const t=new Gt(e),n=Wd(Gt.prototype.request,t);return E.extend(n,Gt.prototype,t,{allOwnKeys:!0}),E.extend(n,t,null,{allOwnKeys:!0}),n.create=function(o){return ff(Xt(e,o))},n}const oe=ff(Mr);oe.Axios=Gt;oe.CanceledError=Dn;oe.CancelToken=Us;oe.isCancel=rf;oe.VERSION=df;oe.toFormData=li;oe.AxiosError=I;oe.Cancel=oe.CanceledError;oe.all=function(t){return Promise.all(t)};oe.spread=J0;oe.isAxiosError=Y0;oe.mergeConfig=Xt;oe.AxiosHeaders=je;oe.formToJSON=e=>nf(E.isHTMLForm(e)?new FormData(e):e);oe.getAdapter=cf.getAdapter;oe.HttpStatusCode=Wl;oe.default=oe;const pf=({isOpen:e,onClose:t,theme:n})=>{if(!e)return null;const r={purple:"border-purple-500/30 bg-purple-900/20",green:"border-green-500/30 bg-green-900/20",teal:"border-teal-500/30 bg-teal-900/20"},o={purple:"text-purple-400",green:"text-green-400",teal:"text-teal-400"},i="font-bold",[l,a]=w.useState([]),[u,c]=w.useState(""),[f,h]=w.useState(!0),[p,y]=w.useState(null),[m,k]=w.useState(null),[x,g]=w.useState(null),d=w.useRef(null),v=w.useRef(null),S=w.useRef([]),N=["ethereum","optimism","bitcoin","matic-network","giveth","golem"],T=async()=>{h(!0),y(null),k(new Date().toISOString());try{const z=await oe.get(`https://api.coingecko.com/api/v3/simple/price?ids=${N.join(",")}&vs_currencies=usd&include_24hr_change=false`),M=N.map(_=>{const W=z.data[_].usd;let H,q;switch(_){case"ethereum":H="ETH",q="Ethereum";break;case"optimism":H="OP",q="Optimism";break;case"bitcoin":H="BTC",q="Bitcoin";break;case"matic-network":H="POL",q="Polygon";break;case"giveth":H="GIV",q="Giveth";break;case"golem":H="GLM",q="Golem";break;default:H="",q=""}return{id:_,symbol:H,name:q,current_price:W}});a(M),h(!1)}catch(z){console.error("Error fetching crypto prices:",z),y("Failed to fetch crypto prices."),h(!1)}},j=l.filter(z=>z.name.toLowerCase().includes(u.toLowerCase())||z.symbol.toLowerCase().includes(u.toLowerCase()));w.useEffect(()=>{T();const z=setInterval(T,3e5);return()=>clearInterval(z)},[]),w.useEffect(()=>{e&&d.current&&(d.current.focus(),g(null))},[e]),w.useEffect(()=>{const z=M=>{v.current&&!v.current.contains(M.target)&&t()};return document.addEventListener("mousedown",z),()=>{document.removeEventListener("mousedown",z)}},[t]),w.useEffect(()=>{const z=M=>{var _;M.key==="Escape"?t():M.key==="ArrowDown"?(M.preventDefault(),g(W=>W===null||W>=j.length-1?0:W+1)):M.key==="ArrowUp"?(M.preventDefault(),x===0?(g(null),(_=d.current)==null||_.focus()):x===null||g(W=>W===null||W<=0?j.length-1:W-1)):M.key==="Enter"&&x!==null&&M.preventDefault()};return document.addEventListener("keydown",z),()=>{document.removeEventListener("keydown",z)}},[j,x,t]),w.useEffect(()=>{x!==null&&S.current[x]&&S.current[x].focus()},[x]);const C=z=>{const M={day:"2-digit",month:"short",year:"2-digit",hour:"2-digit",minute:"2-digit",second:"2-digit",hour12:!1,timeZone:"UTC"};return new Intl.DateTimeFormat("en-US",M).format(z)+" UTC"};return s.jsx("div",{className:"fixed inset-0 bg-black/50 flex items-center justify-center z-50",children:s.jsxs("div",{ref:v,className:`w-[600px] max-h-[90vh] rounded-xl border ${r[n]} backdrop-blur-md p-6 overflow-y-auto`,children:[s.jsxs("div",{className:"flex justify-between items-center mb-6",children:[s.jsx("h2",{className:"text-2xl font-bold",children:"Token Prices"}),s.jsx("button",{onClick:t,className:"p-1 hover:bg-gray-800/50 rounded-lg",children:s.jsx(ze,{size:20})})]}),s.jsx("div",{className:"mb-6",children:s.jsx("input",{ref:d,type:"text",placeholder:"Search cryptos...",value:u,onChange:z=>c(z.target.value),className:"w-full p-4 rounded-lg border border-gray-700 bg-gray-800/50 focus:outline-none focus:border-purple-400"})}),f&&s.jsx("div",{className:"mt-6 text-sm opacity-75",children:s.jsx("p",{children:"Loading..."})}),p&&s.jsx("div",{className:"mt-6 text-sm opacity-75 text-red-500",children:s.jsx("p",{children:p})}),m&&s.jsx("div",{className:"mt-6 text-sm opacity-75",children:s.jsxs("p",{children:["Last fetch attempt: ",C(new Date(m))]})}),!f&&!p&&s.jsxs(s.Fragment,{children:[s.jsx("div",{className:"space-y-4",children:j.map((z,M)=>s.jsx("div",{ref:_=>S.current[M]=_,tabIndex:0,className:`flex items-center gap-4 p-4 rounded-lg hover:bg-gray-800/30 transition-colors ${x===M?"bg-gray-800/30":""}`,children:s.jsxs("div",{children:[s.jsxs("h3",{className:`font-semibold text-lg ${o[n]}`,children:[z.name," (",z.symbol.toUpperCase(),")"]}),s.jsxs("p",{className:`text-sm opacity-75 ${i}`,children:["Current Price: $",z.current_price.toFixed(4)]})]})},z.id))}),j.length===0&&s.jsx("div",{className:"mt-6 text-sm opacity-75",children:s.jsxs("p",{children:['No results found for "',u,'".']})})]}),s.jsx("div",{className:"mt-6 text-sm opacity-75",children:s.jsx("p",{children:"Information for selected cryptocurrencies."})})]})})},X0=({isOpen:e,onClose:t,theme:n})=>{if(!e)return null;const r={purple:"border-purple-500/30 bg-purple-900/20 text-purple-300",green:"border-green-500/30 bg-green-900/20 text-green-300",teal:"border-teal-500/30 bg-teal-900/20 text-teal-300"},o={purple:"border-purple-500/30 focus:border-purple-500",green:"border-green-500/30 focus:border-green-500",teal:"border-teal-500/30 focus:border-teal-500"},[i,l]=w.useState(""),[a,u]=w.useState("https://w3s.link/ipfs/"),[c,f]=w.useState(!1),h=[{label:"w3s.link",value:"https://w3s.link/ipfs/"},{label:"ipfs.io",value:"https://ipfs.io/ipfs/"}],p=w.useRef(null);w.useEffect(()=>{const x=g=>{p.current&&!p.current.contains(g.target)&&t()};return document.addEventListener("mousedown",x),()=>{document.removeEventListener("mousedown",x)}},[t]),w.useEffect(()=>{const x=g=>{g.key==="Escape"&&t()};return document.addEventListener("keydown",x),()=>{document.removeEventListener("keydown",x)}},[t]);const y=x=>{u(x.target.value)},m=x=>{l(x.target.value)},k=()=>{if(i){f(!0);const x=`${a}${i}`;window.open(x,"_blank"),f(!1)}};return s.jsx("div",{className:"fixed inset-0 bg-black/50 flex items-center justify-center z-50",children:s.jsxs("div",{ref:p,className:`w-[800px] rounded-xl border ${r[n]} backdrop-blur-md p-6`,children:[s.jsxs("div",{className:"flex justify-between items-center mb-6",children:[s.jsx("h2",{className:"text-2xl font-bold",children:"Check IPFS CID"}),s.jsx("button",{onClick:t,className:"p-1 hover:bg-gray-800/50 rounded-lg",children:s.jsx(ze,{size:20})})]}),s.jsxs("div",{className:"space-y-4",children:[s.jsxs("div",{className:"flex flex-col",children:[s.jsx("label",{className:`block ${r[n]} text-sm font-bold mb-2`,htmlFor:"gateway",children:"Select Gateway"}),s.jsx("select",{id:"gateway",className:`shadow appearance-none border rounded w-full py-2 px-3 leading-tight focus:outline-none focus:shadow-outline ${o[n]}`,value:a,onChange:y,children:h.map(x=>s.jsx("option",{value:x.value,children:x.label},x.value))})]}),s.jsxs("div",{className:"flex flex-col",children:[s.jsx("label",{className:`block ${r[n]} text-sm font-bold mb-2`,htmlFor:"cid",children:"CID"}),s.jsx("input",{id:"cid",type:"text",className:`shadow appearance-none border rounded w-full py-2 px-3 leading-tight focus:outline-none focus:shadow-outline ${r[n]}`,value:i,onChange:m})]}),s.jsx("button",{className:"bg-blue-500 hover:bg-blue-700 text-white font-bold py-2 px-4 rounded focus:outline-none focus:shadow-outline",onClick:k,disabled:c,children:c?s.jsx(nh,{className:"animate-spin",size:20}):"Check"})]})]})})},ey=({theme:e,setTheme:t,onPomodoroOpen:n,onTimeZonesOpen:r,showToolbar:o,toggleToolbar:i})=>{const[l,a]=w.useState(null),[u,c]=w.useState(!1),[f,h]=w.useState(!1),[p,y]=w.useState(!1),[m,k]=w.useState(!1),[x,g]=w.useState(!1),[d,v]=w.useState(!1),[S,N]=w.useState(!1),[T,j]=w.useState(!1),[C,z]=w.useState(!1),[M,_]=w.useState(!1),W=["purple","green","teal"],H=G=>{if(a(G),G==="theme"){const ot=W.indexOf(e);t(W[(ot+1)%W.length])}else G==="break"?n():G==="refi"?c(!0):G==="dao"?h(!0):G==="blockchain"?y(!0):G==="defi"?k(!0):G==="docs"?v(!0):G==="timezones"?r():G==="lensfeed"?N(!0):G==="terminal"?j(!0):G==="cryptoprices"?z(!0):G==="ipfs"&&_(!0)},q=[{id:"blockchain",icon:s.jsx(tt,{size:20}),label:"Networks"},{id:"dao",icon:s.jsx(ti,{size:20}),label:"Governance"},{id:"refi",icon:s.jsx(ei,{size:20}),label:"ReFi Projects"},{id:"defi",icon:s.jsx(zd,{size:20}),label:"DeFi Tools"},{id:"docs",icon:s.jsx(L,{size:20}),label:"Web3 Docs"},{id:"terminal",icon:s.jsx(ni,{size:20}),label:"GameB Console"},{id:"theme",icon:s.jsx(oh,{size:20}),label:"Theme"},{id:"break",icon:s.jsx(Jm,{size:20}),label:"Take a Break"},{id:"timezones",icon:s.jsx(jd,{size:20}),label:"World Clock"},{id:"lensfeed",icon:s.jsx(eh,{size:20}),label:"Lens Feed"},{id:"cryptoprices",icon:s.jsx(Do,{size:20}),label:"Token Prices"},{id:"ipfs",icon:s.jsx(tt,{size:20}),label:"IPFS CID Checker"}];return s.jsxs("div",{className:"fixed bottom-6 right-4 z-50",children:[o&&s.jsx("div",{className:"absolute bottom-14 right-0 flex flex-col items-end space-y-2 md:flex-row md:space-y-0 md:space-x-2 md:bottom-6 md:right-14",children:q.map(G=>s.jsxs("div",{className:"relative group",children:[s.jsxs("span",{className:"absolute left-0 top-0 transform -translate-x-1/2 -translate-y-full px-2 py-1 text-xs bg-gray-900/90 text-white rounded opacity-0 group-hover:opacity-100 transition-opacity whitespace-nowrap -ml-2 md:left-1/2 md:-translate-x-1/2 md:translate-y-0 md:-mt-6",children:[" ",G.label]}),s.jsx("button",{onClick:()=>H(G.id),className:"p-2 rounded-full bg-gray-800/50 hover:bg-gray-800/80 transition-colors duration-300",children:G.icon})]},G.id))}),s.jsxs("button",{onClick:i,className:"p-2 rounded-full bg-gray-800/50 hover:bg-gray-800/80 transition-colors duration-300",children:[s.jsx("span",{className:"sr-only",children:"Toggle Toolbar"}),"☰"]}),s.jsx(Fd,{isOpen:!1,onClose:()=>{},theme:e,onTimerUpdate:()=>{}}),s.jsx(yh,{isOpen:u,onClose:()=>c(!1),theme:e}),s.jsx(gh,{isOpen:f,onClose:()=>h(!1),theme:e}),s.jsx(vh,{isOpen:p,onClose:()=>y(!1),theme:e}),s.jsx(xh,{isOpen:m,onClose:()=>k(!1),theme:e}),s.jsx(Bd,{isOpen:d,onClose:()=>v(!1),theme:e}),s.jsx(Ud,{isOpen:x,onClose:()=>g(!1),theme:e}),s.jsx(Sh,{isOpen:S,onClose:()=>N(!1),theme:e}),s.jsx(Eh,{isOpen:T,onClose:()=>j(!1),theme:e,iframeUrl:"https://www.example.com"}),s.jsx(pf,{isOpen:C,onClose:()=>z(!1),theme:e}),s.jsx(X0,{isOpen:M,onClose:()=>_(!1),theme:e})]})},ty=({isOpen:e,onClose:t,theme:n})=>{if(!e)return null;const r={purple:"border-purple-500/30 bg-purple-900/20",green:"border-green-500/30 bg-green-900/20",teal:"border-teal-500/30 bg-teal-900/20"},[o,i]=w.useState(""),[l,a]=w.useState(null),u=w.useRef(null),c=w.useRef(null),f=w.useRef([]),p=[{name:"Lens",icon:s.jsx(Pd,{className:"text-purple-400",size:24}),url:"https://www.lens.xyz/",description:"Lens is a decentralized social graph protocol for web3."},{name:"Farcaster",icon:s.jsx(uh,{className:"text-green-400",size:24}),url:"https://www.farcaster.xyz/",description:"Farcaster is a decentralized social network built on the Bitcoin blockchain."},{name:"Paragraph.xyz",icon:s.jsx(Sr,{className:"text-emerald-400",size:24}),url:"https://paragraph.xyz/",description:"Paragraph is a decentralized blogging platform."},{name:"Mirror.xyz",icon:s.jsx(Er,{className:"text-blue-400",size:24}),url:"https://mirror.xyz/",description:"Mirror is a decentralized publishing platform for writers."},{name:"Warpcast",icon:s.jsx(Rd,{className:"text-pink-400",size:24}),url:"https://warpcast.com/",description:"Warpcast is a decentralized social network built on the Farcaster protocol."},{name:"Buttrfly",icon:s.jsx(bd,{className:"text-teal-400",size:24}),url:"https://buttrfly.app/",description:"Buttrfly is a decentralized platform for creators to share and monetize their content."},{name:"Bloomers",icon:s.jsx(Ad,{className:"text-orange-400",size:24}),url:"https://bloomers.tv/",description:"Bloomers is a decentralized video platform for creators."},{name:"Yup",icon:s.jsx(Td,{className:"text-cyan-400",size:24}),url:"https://yup.io/",description:"Yup is a decentralized social network for communities."},{name:"Phaver",icon:s.jsx(Dd,{className:"text-lime-400",size:24}),url:"https://phaver.com/",description:"Phaver is a decentralized social network for communities."},{name:"Hey",icon:s.jsx(ni,{className:"text-violet-400",size:24}),url:"https://hey.xyz/",description:"Hey is a decentralized social network on Lens."},{name:"Tape",icon:s.jsx(Sr,{className:"text-indigo-400",size:24}),url:"https://tape.xyz/",description:"Tape is a decentralized platform for sharing stories and content."},{name:"Lenspeer",icon:s.jsx(Er,{className:"text-fuchsia-400",size:24}),url:"https://lenspeer.com/",description:"Lenspeer is a decentralized social network for communities."}].filter(y=>y.name.toLowerCase().includes(o.toLowerCase()));return w.useEffect(()=>{e&&u.current&&(u.current.focus(),a(null))},[e]),w.useEffect(()=>{const y=m=>{c.current&&!c.current.contains(m.target)&&t()};return document.addEventListener("mousedown",y),()=>{document.removeEventListener("mousedown",y)}},[t]),w.useEffect(()=>{const y=m=>{var k;if(m.key==="Escape")t();else if(m.key==="ArrowDown")m.preventDefault(),a(x=>x===null||x>=p.length-1?0:x+1);else if(m.key==="ArrowUp")m.preventDefault(),l===0?(a(null),(k=u.current)==null||k.focus()):l===null||a(x=>x===null||x<=0?p.length-1:x-1);else if(m.key==="Enter"&&l!==null){m.preventDefault();const x=f.current[l];x&&x.click()}};return document.addEventListener("keydown",y),()=>{document.removeEventListener("keydown",y)}},[p,l,t]),w.useEffect(()=>{l!==null&&f.current[l]&&f.current[l].focus()},[l]),s.jsx("div",{className:"fixed inset-0 bg-black/50 flex items-center justify-center z-50",children:s.jsxs("div",{ref:c,className:`w-[600px] max-h-[90vh] rounded-xl border ${r[n]} backdrop-blur-md p-6 overflow-y-auto`,children:[s.jsxs("div",{className:"flex justify-between items-center mb-6",children:[s.jsx("h2",{className:"text-2xl font-bold",children:"Web3 Social Platforms"}),s.jsx("button",{onClick:t,className:"p-1 hover:bg-gray-800/50 rounded-lg",children:s.jsx(ze,{size:20})})]}),s.jsx("div",{className:"mb-6",children:s.jsx("input",{ref:u,type:"text",placeholder:"Search social platforms...",value:o,onChange:y=>i(y.target.value),className:"w-full p-4 rounded-lg border border-gray-700 bg-gray-800/50 focus:outline-none focus:border-purple-400"})}),s.jsx("div",{className:"space-y-4",children:p.map((y,m)=>s.jsxs("a",{href:y.url,target:"_blank",rel:"noopener noreferrer",className:`flex items-center gap-4 p-4 rounded-lg hover:bg-gray-800/30 transition-colors ${l===m?"bg-gray-800/30":""}`,ref:k=>f.current[m]=k,tabIndex:0,children:[s.jsx("div",{className:"p-2 rounded-lg bg-gray-800/50",children:y.icon}),s.jsxs("div",{children:[s.jsx("h3",{className:"font-semibold text-lg",children:y.name}),s.jsx("p",{className:"text-sm opacity-75",children:y.description})]})]},y.name))}),p.length===0&&s.jsx("div",{className:"mt-6 text-sm opacity-75",children:s.jsxs("p",{children:['No results found for "',o,'".']})}),s.jsx("div",{className:"mt-6 text-sm opacity-75",children:s.jsx("p",{children:"Explore a variety of Web3 social platforms for decentralized communication and content sharing."})})]})})},ny=[{name:"MetaMask",description:"A cryptocurrency wallet for buying, selling, and managing digital assets.",link:"https://metamask.io/",icon:"Wallet",iconClass:"text-green-400"},{name:"Coinbase Wallet",description:"A cryptocurrency wallet for buying, selling, and managing digital assets.",link:"https://www.coinbase.com/wallet",icon:"Wallet",iconClass:"text-green-400"},{name:"WalletConnect",description:"An open protocol for connecting decentralized applications to mobile wallets.",link:"https://walletconnect.com/",icon:"Wallet",iconClass:"text-green-400"},{name:"Safe",description:"A non-custodial, multi-signature wallet for Ethereum.",link:"https://gnosis-safe.io/",icon:"Wallet",iconClass:"text-green-400"},{name:"Trust Wallet",description:"A multi-chain cryptocurrency wallet for Android and iOS.",link:"https://trustwallet.com/",icon:"Wallet",iconClass:"text-green-400"},{name:"Ledger Live",description:"A cryptocurrency wallet that integrates with Ledger hardware wallets.",link:"https://www.ledger.com/ledger-live",icon:"Wallet",iconClass:"text-green-400"},{name:"Trezor Wallet",description:"A cryptocurrency wallet that integrates with Trezor hardware wallets.",link:"https://trezor.io/",icon:"Wallet",iconClass:"text-green-400"},{name:"Exodus",description:"A multi-asset cryptocurrency wallet for desktop and mobile.",link:"https://www.exodus.com/",icon:"Wallet",iconClass:"text-green-400"},{name:"Brave Wallet",description:"A cryptocurrency wallet built into the Brave browser.",link:"https://brave.com/wallet",icon:"Wallet",iconClass:"text-green-400"},{name:"Argent",description:"A non-custodial Ethereum wallet with a gasless user experience.",link:"https://argent.xyz/",icon:"Wallet",iconClass:"text-green-400"},{name:"Frame",description:"A non-custodial browser wallet for Ethereum and other networks.",link:"https://frame.sh/",icon:"Wallet",iconClass:"text-green-400"},{name:"Rainbow",description:"A mobile wallet for Ethereum and other networks.",link:"https://rainbow.me/",icon:"Wallet",iconClass:"text-green-400"},{name:"Zerion",description:"A multi-chain cryptocurrency wallet and portfolio tracker.",link:"https://zerion.io/",icon:"Wallet",iconClass:"text-green-400"}],ry=({isOpen:e,onClose:t,theme:n})=>{if(!e)return null;const r={purple:"border-purple-500/30 bg-purple-900/20",green:"border-green-500/30 bg-green-900/20",teal:"border-teal-500/30 bg-teal-900/20"},[o,i]=w.useState(""),[l,a]=w.useState(null),u=w.useRef(null),c=w.useRef(null),f=w.useRef([]),h=ny.filter(y=>y.name.toLowerCase().includes(o.toLowerCase()));w.useEffect(()=>{e&&u.current&&(u.current.focus(),a(null))},[e]),w.useEffect(()=>{const y=m=>{c.current&&!c.current.contains(m.target)&&t()};return document.addEventListener("mousedown",y),()=>{document.removeEventListener("mousedown",y)}},[t]),w.useEffect(()=>{const y=m=>{m.key==="Escape"&&t()};return document.addEventListener("keydown",y),()=>{document.removeEventListener("keydown",y)}},[t]),w.useEffect(()=>{const y=m=>{var k;if(m.key==="Escape")t();else if(m.key==="ArrowDown")m.preventDefault(),a(x=>x===null||x>=h.length-1?0:x+1);else if(m.key==="ArrowUp")m.preventDefault(),l===0?(a(null),(k=u.current)==null||k.focus()):l===null||a(x=>x===null||x<=0?h.length-1:x-1);else if(m.key==="Enter"&&l!==null){m.preventDefault();const x=f.current[l];x&&(x.focus(),x.click())}};return document.addEventListener("keydown",y),()=>{document.removeEventListener("keydown",y)}},[h,l,t]),w.useEffect(()=>{l!==null&&f.current[l]&&f.current[l].focus()},[l]);const p=(y,m)=>y==="Wallet"?s.jsx(ge,{className:m,size:24}):null;return s.jsx("div",{className:"fixed inset-0 bg-black/50 flex items-center justify-center z-50",children:s.jsxs("div",{ref:c,className:`w-[600px] max-h-[90vh] rounded-xl border ${r[n]} backdrop-blur-md p-6 overflow-y-auto`,children:[s.jsxs("div",{className:"flex justify-between items-center mb-6",children:[s.jsx("h2",{className:"text-2xl font-bold",children:"Wallets"}),s.jsx("button",{onClick:t,className:"p-1 hover:bg-gray-800/50 rounded-lg",children:s.jsx(ze,{size:20})})]}),s.jsx("div",{className:"mb-6",children:s.jsx("input",{ref:u,type:"text",placeholder:"Search wallets...",value:o,onChange:y=>i(y.target.value),className:"w-full p-4 rounded-lg border border-gray-700 bg-gray-800/50 focus:outline-none focus:border-purple-400"})}),s.jsx("div",{className:"space-y-4",children:h.map((y,m)=>s.jsxs("a",{ref:k=>f.current[m]=k,href:y.link,target:"_blank",rel:"noopener noreferrer",tabIndex:0,className:`flex items-center gap-4 p-4 rounded-lg hover:bg-gray-800/30 transition-colors ${l===m?"bg-gray-800/30":""}`,children:[s.jsx("div",{className:"p-2 rounded-lg bg-gray-800/50",children:p(y.icon,y.iconClass)}),s.jsxs("div",{children:[s.jsx("h3",{className:"font-semibold text-lg",children:y.name}),s.jsx("p",{className:"text-sm opacity-75",children:y.description})]})]},y.name))}),h.length===0&&s.jsx("div",{className:"mt-6 text-sm opacity-75",children:s.jsxs("p",{children:['No results found for "',o,'".']})}),s.jsx("div",{className:"mt-6 text-sm opacity-75",children:s.jsx("p",{children:"Information for various cryptocurrency wallets."})})]})})},oy=[{term:"Blockchain",description:"A distributed ledger technology that records transactions across many computers in such a way that the registered transactions cannot be altered retroactively."},{term:"Block",description:"A unit of data containing a set of transactions that are cryptographically linked to the previous block on a blockchain."},{term:"Consensus",description:"The process by which blockchain networks reach agreement on the validity of transactions and the state of the blockchain."},{term:"Consensus Mechanism",description:"A protocol used by blockchain networks to reach agreement on the validity of transactions and the state of the blockchain."},{term:"Cross-Chain",description:"The ability of blockchain networks to communicate and interact with each other."},{term:"Cross-Chain Bridge",description:"A protocol or mechanism that allows assets and data to be transferred between different blockchain networks."},{term:"Cross-Chain Protocol",description:"A protocol that enables interoperability between different blockchain networks, allowing for the transfer of assets and data."},{term:"DAO (Decentralized Autonomous Organization)",description:"An organization represented by rules encoded as a transparent, immutable program running on a blockchain."},{term:"Decentralized Application (dApp)",description:"An application that runs on a decentralized network, typically a blockchain, without a central authority."},{term:"Decentralized Exchange (DEX)",description:"A decentralized platform for trading cryptocurrencies and tokens without a central authority."},{term:"Decentralized Finance (DeFi)",description:"A financial system built on blockchain technology that allows for financial services without the need for traditional intermediaries."},{term:"Decentralized Governance",description:"A system of governance where decisions are made through decentralized means, often involving token holders voting on proposals."},{term:"Decentralized Identity (DID)",description:"A system that allows individuals to control their digital identities without relying on a central authority."},{term:"Decentralized Marketplace",description:"A platform that allows buyers and sellers to trade goods and services directly without a central authority."},{term:"Decentralized Oracle",description:"A decentralized network of nodes that provides real-world data to smart contracts without relying on a single authority."},{term:"Decentralized Storage",description:"A system for storing data across a network of decentralized nodes, ensuring data integrity and availability without a central authority."},{term:"Decentralized Storage Network",description:"A network of decentralized nodes that stores data across multiple locations, ensuring data availability and security."},{term:"Delegated Proof of Stake (DPoS)",description:"A consensus mechanism where token holders elect delegates to validate transactions and create new blocks."},{term:"ENS (Ethereum Name Service)",description:"A decentralized naming protocol for Ethereum."},{term:"Ethereum",description:"A decentralized, open-source blockchain with smart contract functionality."},{term:"Gas",description:"A unit that measures the amount of computational effort required to execute a transaction on the Ethereum blockchain."},{term:"Gas Efficiency",description:"The optimization of smart contracts to reduce the amount of gas required for execution, thereby lowering transaction costs."},{term:"Gas Limit",description:"The maximum amount of gas that can be used in a single block on the Ethereum blockchain."},{term:"Gas Optimization",description:"The process of improving the efficiency of smart contracts to reduce gas consumption and lower transaction costs."},{term:"Gas Price",description:"The price paid per unit of gas to execute a transaction on the Ethereum blockchain."},{term:"Gas Refund",description:"A mechanism that returns unused gas to the user, reducing transaction costs."},{term:"Governance Fork",description:"A split in a blockchain network where the community votes on a new set of rules or changes to the protocol."},{term:"Governance Token",description:"A token that grants its holders the right to participate in the governance of a decentralized project."},{term:"Hash",description:"A unique identifier created by a cryptographic hash function, used to verify data integrity on a blockchain."},{term:"Initial Coin Offering (ICO)",description:"A fundraising method where a new cryptocurrency project sells tokens to investors in exchange for funding."},{term:"Initial DEX Offering (IDO)",description:"A fundraising method where a new token is sold on a decentralized exchange."},{term:"IPFS (InterPlanetary File System)",description:"A decentralized file system that makes the web faster, safer, and more open."},{term:"Layer 1",description:"The base blockchain layer that provides the fundamental infrastructure for transactions and smart contracts."},{term:"Layer 2",description:"Scaling solutions built on top of existing blockchain networks to improve performance and reduce costs."},{term:"Liquidity Mining",description:"A rewards program that incentivizes users to provide liquidity to decentralized exchanges."},{term:"Liquidity Pool",description:"A collection of tokens that are locked in a smart contract to provide liquidity for decentralized exchanges."},{term:"Liquidity Token",description:"The availability of tokens in a decentralized exchange to facilitate trading and reduce price volatility."},{term:"Minting",description:"The process of creating a new NFT or token on a blockchain."},{term:"Metaverse",description:"A virtual world or universe that users can interact with in a virtual environment."},{term:"NFT (Non-Fungible Token)",description:"A unique digital asset that is not interchangeable with another token of the same type."},{term:"Oracle",description:"A bridge between blockchain and off-chain data sources, providing real-world data to smart contracts."},{term:"Proof of Stake (PoS)",description:"A consensus mechanism where validators are chosen to create new blocks based on the number of coins they hold and are willing to stake."},{term:"Proof of Work (PoW)",description:"A consensus mechanism where miners solve complex mathematical puzzles to validate transactions and create new blocks."},{term:"Quadratic Funding",description:"A funding mechanism that incentivizes diversity and quality in open source projects."},{term:"Sharding",description:"A method of splitting a blockchain's data and transactions across multiple nodes to improve scalability."},{term:"Sidechain",description:"A separate blockchain that is interoperable with a main blockchain and can handle specific use cases or transactions."},{term:"Smart Contract",description:"A self-executing contract with the terms of the agreement directly written into code."},{term:"Smart Contract Audit",description:"A security review of smart contracts to identify and fix vulnerabilities."},{term:"Staking",description:"The process of locking up cryptocurrency to validate transactions and earn rewards on a blockchain."},{term:"Token",description:"A digital or cryptographic asset built on blockchain technology that represents a certain value or utility."},{term:"Token Locking",description:"A mechanism that locks tokens for a specified period, often used for vesting or to prevent early selling."},{term:"Token Liquidity",description:"The availability of tokens in a decentralized exchange to facilitate trading and reduce price volatility."},{term:"Tokenomics",description:"The economic design and structure of a token, including supply, distribution, and utility."},{term:"Token Standard",description:"A set of rules and protocols that define how tokens behave on a blockchain, such as ERC-20 or ERC-721."},{term:"Token Staking",description:"The process of locking tokens to participate in the governance and security of a blockchain network."},{term:"Token Swap",description:"A process of exchanging one token for another on a decentralized exchange."},{term:"Token Vesting",description:"A schedule for releasing tokens to beneficiaries over time, often used in ICOs and other fundraising methods."},{term:"Transaction",description:"A record of a transfer of value or data on a blockchain."},{term:"Web3",description:"The third generation of the World Wide Web based on blockchain technology, enabling decentralized applications and data."},{term:"Web3 Wallet",description:"A software application that allows users to manage their cryptocurrency and interact with decentralized applications."},{term:"Wallet",description:"A software application that allows users to manage their cryptocurrency and interact with decentralized applications."}],mf=(e,t)=>{w.useEffect(()=>{const n=r=>{e.current&&!e.current.contains(r.target)&&t()};return document.addEventListener("mousedown",n),()=>{document.removeEventListener("mousedown",n)}},[e,t])},hf=({isOpen:e,onClose:t,theme:n})=>{if(!e)return null;const r={purple:"border-purple-500/30 bg-purple-900/20",green:"border-green-500/30 bg-green-900/20",teal:"border-teal-500/30 bg-teal-900/20"},[o,i]=w.useState(""),[l,a]=w.useState(null),u=w.useRef(null),c=w.useRef(null),f=w.useRef([]),h=oy.filter(p=>p.term.toLowerCase().includes(o.toLowerCase()));return w.useEffect(()=>{e&&u.current&&(u.current.focus(),a(null))},[e]),mf(c,t),w.useEffect(()=>{const p=y=>{var m;if(y.key==="Escape")t();else if(y.key==="ArrowDown")y.preventDefault(),a(k=>k===null||k>=h.length-1?0:k+1);else if(y.key==="ArrowUp")y.preventDefault(),l===0?(a(null),(m=u.current)==null||m.focus()):l===null||a(k=>k===null||k<=0?h.length-1:k-1);else if(y.key==="Enter"&&l!==null){y.preventDefault();const k=f.current[l];k&&k.focus()}};return document.addEventListener("keydown",p),()=>{document.removeEventListener("keydown",p)}},[h,l,t]),w.useEffect(()=>{l!==null&&f.current[l]&&f.current[l].focus()},[l]),s.jsx("div",{className:"fixed inset-0 bg-black/50 flex items-center justify-center z-50",children:s.jsxs("div",{ref:c,className:`w-[600px] max-h-[90vh] rounded-xl border ${r[n]} backdrop-blur-md p-6 overflow-y-auto`,children:[s.jsxs("div",{className:"flex justify-between items-center mb-6",children:[s.jsx("h2",{className:"text-2xl font-bold",children:"Web3 Lexicon"}),s.jsx("button",{onClick:t,className:"p-1 hover:bg-gray-800/50 rounded-lg",children:s.jsx(ze,{size:20})})]}),s.jsx("div",{className:"mb-6",children:s.jsx("input",{ref:u,type:"text",placeholder:"Search terms...",value:o,onChange:p=>i(p.target.value),className:"w-full p-4 rounded-lg border border-gray-700 bg-gray-800/50 focus:outline-none focus:border-purple-400"})}),s.jsx("div",{className:"space-y-4",children:h.map((p,y)=>s.jsxs("div",{ref:m=>f.current[y]=m,tabIndex:0,className:`flex items-center gap-4 p-4 rounded-lg hover:bg-gray-800/30 transition-colors ${l===y?"bg-gray-800/30":""}`,children:[s.jsx("div",{className:"p-2 rounded-lg bg-gray-800/50",children:s.jsx(L,{className:"text-purple-400",size:24})}),s.jsxs("div",{children:[s.jsx("h3",{className:"font-semibold text-lg",children:p.term}),s.jsx("p",{className:"text-sm opacity-75",children:p.description})]})]},p.term))}),h.length===0&&s.jsx("div",{className:"mt-6 text-sm opacity-75",children:s.jsxs("p",{children:['No results found for "',o,'".']})}),s.jsx("div",{className:"mt-6 text-sm opacity-75",children:s.jsx("p",{children:"Explore a variety of Web3, DeFi, blockchain, and decentralized governance terms."})})]})})},iy=({isPlaying:e,onOpen:t})=>e?s.jsx("div",{className:"fixed bottom-6 left-1/2 transform -translate-x-1/2 bg-gray-800/20 rounded-full p-3 shadow-lg cursor-pointer",onClick:t,children:s.jsx(rh,{size:16,color:"white"})}):null,yf=({isOpen:e,onClose:t,onOpen:n,theme:r})=>{const o={purple:"border-purple-500/30 bg-purple-900/20",green:"border-green-500/30 bg-green-900/20",teal:"border-teal-500/30 bg-teal-900/20"},i={purple:"bg-purple-700/50 border border-purple-500 text-white",green:"bg-green-700/50 border border-green-500 text-white",teal:"bg-teal-700/50 border border-teal-500 text-white"},l=w.useRef(null),a=w.useRef(null),[u,c]=w.useState([{id:"04697c8a-c967-44dd-a8ff-8531c7ef5194",src:"https://embed.sound.xyz/v1/release/04697c8a-c967-44dd-a8ff-8531c7ef5194?referral_source=embed-sound"},{id:"f93872e9-b6f1-49fa-becd-ab5433c39d7d",src:"https://embed.sound.xyz/v1/release/f93872e9-b6f1-49fa-becd-ab5433c39d7d?referral_source=embed-sound"},{id:"96cc4612-b6ca-4dc4-b728-a5a427bd608b",src:"https://embed.sound.xyz/v1/release/96cc4612-b6ca-4dc4-b728-a5a427bd608b?referral_source=embed-sound"}]),[f,h]=w.useState(""),[p,y]=w.useState(!1),[m,k]=w.useState(""),[x,g]=w.useState(""),[d,v]=w.useState(!1),[S,N]=w.useState(null);w.useEffect(()=>{e&&y(!0)},[e]),w.useEffect(()=>{e&&l.current&&l.current.focus()},[e]),w.useEffect(()=>{const C=z=>{a.current&&!a.current.contains(z.target)&&t()};return document.addEventListener("mousedown",C),()=>{document.removeEventListener("mousedown",C)}},[t]),w.useEffect(()=>{const C=z=>{z.key==="Escape"&&t()};return document.addEventListener("keydown",C),()=>{document.removeEventListener("keydown",C)}},[t]),w.useEffect(()=>{if(S){const C=setTimeout(()=>{N(null)},3e3);return()=>clearTimeout(C)}},[S]);const T=C=>{const _=new DOMParser().parseFromString(C,"text/html").querySelector("iframe");return _?_.getAttribute("src"):null},j=C=>{if(C.preventDefault(),f.trim()){const z=T(f.trim());if(z)try{new URL(z);const M={id:Date.now().toString(),src:z};c([...u,M]),h(""),k("");const _=u.length+1;g(`Embed link added successfully! You now have ${_} songs in the list.`);const W=setTimeout(()=>{g('Note: Songs will not autoplay in order. For more features, including playlists, visit sound.xyz.');const H=setTimeout(()=>{g("You can close this modal with ESC or clicking out, and the music will still play.");const q=setTimeout(()=>{g("")},3e3);return()=>clearTimeout(q)},8e3);return()=>clearTimeout(H)},3e3);return N(M.id),()=>clearTimeout(W)}catch{k("Invalid URL. Please enter a valid embed link.")}else k("Invalid iframe code. Please enter a valid iframe embed code.")}else k("Please enter a valid embed link.")};return w.useEffect(()=>{},[e]),s.jsxs(s.Fragment,{children:[s.jsx("div",{className:`fixed inset-0 bg-black/50 flex items-center justify-center z-50 transition-opacity duration-300 ${e?"opacity-100":"opacity-0 pointer-events-none"}`,children:s.jsxs("div",{ref:a,className:`w-[800px] max-h-[160vh] rounded-xl border ${o[r]} backdrop-blur-md p-2 overflow-y-auto transition-transform duration-300 ${e?"translate-y-0":"translate-y-full"}`,children:[s.jsx("div",{className:"h-[275px] overflow-y-auto",children:u.map(C=>s.jsx("div",{className:`p-4 rounded-lg hover:bg-gray-800/30 transition-colors ${C.id===S?"bg-green-900/30":""}`,children:s.jsx("iframe",{src:C.src,style:{borderRadius:"8px"},width:"100%",height:"260px",allow:"clipboard-write",sandbox:"allow-scripts allow-popups allow-popups-to-escape-sandbox",loading:"lazy"})},C.id))}),u.length===0&&s.jsx("div",{className:"mt-6 text-sm opacity-75",children:s.jsx("p",{children:"No music embed links available."})}),s.jsx("div",{className:"mt-4",children:s.jsxs("form",{onSubmit:j,children:[s.jsxs("div",{className:"flex items-center",children:[s.jsx("textarea",{value:f,onChange:C=>h(C.target.value),placeholder:"Paste embed code here",className:"w-full p-3 rounded-lg border border-gray-700 bg-gray-800/50 focus:outline-none focus:border-purple-400",rows:3}),s.jsx("button",{type:"submit",className:`ml-2 p-1 rounded-lg ${i[r]}`,children:d?"Loading...":"Add Link"})]}),m&&s.jsx("div",{className:"mt-2 text-red-500 text-sm",children:m}),x&&s.jsx("div",{className:"mt-2 text-green-500 text-sm",dangerouslySetInnerHTML:{__html:x}})]})})]})}),s.jsx(iy,{isPlaying:p,onOpen:n})]})},ly=({isPomodoroModalOpen:e,isTimeZonesModalOpen:t,isCryptoPricesModalOpen:n,isDocsModalOpen:r,isWeb3SocialModalOpen:o,isWalletsModalOpen:i,isLexiconModalOpen:l,isMusicModalOpen:a,onClosePomodoro:u,onCloseTimeZones:c,onCloseCryptoPrices:f,onCloseDocs:h,onCloseWeb3SocialModal:p,onCloseWalletsModal:y,onCloseLexiconModal:m,onCloseMusicModal:k,theme:x,onTimerUpdate:g})=>s.jsxs(s.Fragment,{children:[s.jsx(Fd,{isOpen:e,onClose:u,theme:x,onTimerUpdate:g}),s.jsx(Ud,{isOpen:t,onClose:c,theme:x}),s.jsx(pf,{isOpen:n,onClose:f,theme:x}),s.jsx(Bd,{isOpen:r,onClose:h,theme:x}),s.jsx(ty,{isOpen:o,onClose:p,theme:x}),s.jsx(ry,{isOpen:i,onClose:y,theme:x}),s.jsx(hf,{isOpen:l,onClose:m,theme:x}),s.jsx(yf,{isOpen:a,onClose:k,onOpen:()=>{},theme:x})]}),sy=({isOpen:e,onClose:t,theme:n})=>{if(!e)return null;const r={purple:"border-purple-500/30 bg-purple-900/20",green:"border-green-500/30 bg-green-900/20",teal:"border-teal-500/30 bg-teal-900/20"},[o,i]=w.useState(""),[l,a]=w.useState(!0),[u,c]=w.useState(""),f=w.useRef(null);return w.useEffect(()=>{e&&(async()=>{try{const p=await fetch("https://bafybeigsudocl4hqg5cprsqptrotnqxuz6pwko34nemjzt5coya76s5oou.ipfs.w3s.link/love.json");if(!p.ok)throw new Error("Network response was not ok");const y=await p.json();if(y&&y.statements&&y.statements.length>0){const m=Math.floor(Math.random()*y.statements.length);i(y.statements[m])}else throw new Error("No statements found in the JSON data")}catch(p){c("Failed to fetch statements"),console.error("Error fetching statements:",p)}finally{a(!1)}})()},[e]),w.useEffect(()=>{const h=p=>{f.current&&!f.current.contains(p.target)&&t()};return document.addEventListener("mousedown",h),()=>{document.removeEventListener("mousedown",h)}},[t]),w.useEffect(()=>{const h=p=>{p.key==="Escape"&&t()};return document.addEventListener("keydown",h),()=>{document.removeEventListener("keydown",h)}},[t]),s.jsx("div",{className:"fixed inset-0 bg-black/50 flex items-center justify-center z-50",children:s.jsxs("div",{ref:f,className:`max-w-md rounded-lg border ${r[n]} backdrop-blur-md p-6`,children:[s.jsx("div",{className:"flex justify-between items-center mb-4",children:s.jsx("h2",{className:"text-xl font-bold",children:"Love from IPFS"})}),s.jsx("div",{className:"text-lg opacity-90",children:l?s.jsx("p",{children:"Loading..."}):u?s.jsx("p",{children:u}):o})]})})},ay=({isOpen:e,onClose:t,theme:n})=>{if(!e)return null;const r={purple:"border-purple-500/30 bg-purple-900/20",green:"border-green-500/30 bg-green-900/20",teal:"border-teal-500/30 bg-teal-900/20"},o={"Ctrl+K":"focusSearchBar","Ctrl+B":"toggleToolbar",Escape:"closeModalsOrToolbar","Alt+T":"changeTheme","Alt+M":"toggleMusicModal","Alt+H":"toggleHelpModal"},i={isCryptoPricesModalOpen:"Open Crypto Prices",isTimeZonesModalOpen:"Open Time Zones",isDocsModalOpen:"Open Web3 Docs",isWeb3SocialModalOpen:"Open Web3 Social",isLexiconModalOpen:"Open Lexicon",isWalletsModalOpen:"Open Wallets",isMusicModalOpen:"Open Music",isHelpModalOpen:"Open Help"},l={isCryptoPricesModalOpen:["price"],isTimeZonesModalOpen:["clock","time","utc"],isDocsModalOpen:["docs"],isWeb3SocialModalOpen:["social"],isLexiconModalOpen:["words","dictionary","lexicon"],isWalletsModalOpen:["wallet"],isMusicModalOpen:["music","sound","tunes"],isHelpModalOpen:["help"]},a=w.useRef(null);return mf(a,t),s.jsx("div",{className:"fixed inset-0 bg-black/50 flex items-center justify-center z-50",children:s.jsxs("div",{ref:a,className:`w-[600px] max-h-[90vh] rounded-xl border ${r[n]} backdrop-blur-md p-6 overflow-y-auto`,children:[s.jsxs("div",{className:"flex justify-between items-center mb-6",children:[s.jsx("h2",{className:"text-2xl font-bold",children:"Help"}),s.jsx("button",{onClick:t,className:"p-1 hover:bg-gray-800/50 rounded-lg",children:s.jsx(ze,{size:20})})]}),s.jsx("div",{className:"grid grid-cols-2 gap-4",children:Object.entries(o).map(([u,c])=>s.jsxs("div",{className:"flex items-center justify-between p-4 rounded-lg bg-gray-800/30",children:[s.jsx("span",{className:"font-semibold",children:u}),s.jsx("span",{children:c.replace(/([A-Z])/g," $1").trim()})]},c))}),s.jsxs("div",{className:"mt-6",children:[s.jsx("h3",{className:"text-lg font-semibold mb-2",children:"Search Commands"}),s.jsx("ul",{className:"space-y-2",children:Object.entries(l).map(([u,c])=>s.jsxs("li",{className:"flex items-center justify-between",children:[s.jsx("span",{children:c.join(", ")}),s.jsx("span",{children:i[u]})]},u))})]}),s.jsx("div",{className:"mt-8 text-sm opacity-75",children:s.jsx("p",{children:"You can also search for web3-related things to find more links and shortcuts."})})]})})},uy=({search:e,theme:t,filteredShortcuts:n,filteredLinks:r,focusedIndex:o,setFocusedIndex:i,isTimerRunning:l,timerTimeLeft:a,setIsTimerRunning:u,setTimerTimeLeft:c,showToolbar:f,toggleToolbar:h,isPomodoroModalOpen:p,isTimeZonesModalOpen:y,isCryptoPricesModalOpen:m,isDocsModalOpen:k,isWeb3SocialModalOpen:x,isWalletsModalOpen:g,isLexiconModalOpen:d,isMusicModalOpen:v,isHelpModalOpen:S,setIsMusicModalOpen:N,setIsHelpModalOpen:T,openModal:j,closeModal:C,navigateToSearchBar:z,onNavigateToGrid:M,onTimerUpdate:_,isModalvateOpen:W,setIsModalvateOpen:H,closeLexiconModal:q,handleOpenMusicModal:G,searchBarRef:ot,linkGridRef:yt,shortcutGridRef:A})=>{const R=()=>{H(!0)},O=()=>{H(!1)};return s.jsxs(s.Fragment,{children:[s.jsx(ph,{shortcuts:n,theme:t,onNavigateToSearchBar:z,ref:A,onLastRowDown:z,searchBarRef:ot}),e&&s.jsx(mh,{links:r,theme:t,ref:yt,focusedIndex:o,setFocusedIndex:i,onNavigateToGrid:z}),s.jsx(hh,{isTimerRunning:l,timerTimeLeft:a,onClick:()=>j("isPomodoroModalOpen")}),s.jsx(ey,{theme:t,setTheme:()=>{},onPomodoroOpen:()=>j("isPomodoroModalOpen"),onTimeZonesOpen:()=>j("isTimeZonesModalOpen"),showToolbar:f,toggleToolbar:h}),s.jsx(ly,{isPomodoroModalOpen:p,isTimeZonesModalOpen:y,isCryptoPricesModalOpen:m,isDocsModalOpen:k,isWeb3SocialModalOpen:x,isWalletsModalOpen:g,isLexiconModalOpen:d,isMusicModalOpen:v,onCloseLexiconModal:q,onCloseMusicModal:()=>N(!1),onClosePomodoro:()=>C("isPomodoroModalOpen"),onCloseTimeZones:()=>C("isTimeZonesModalOpen"),onCloseCryptoPrices:()=>C("isCryptoPricesModalOpen"),onCloseDocs:()=>C("isDocsModalOpen"),onCloseWeb3SocialModal:()=>C("isWeb3SocialModalOpen"),onCloseWalletsModal:()=>C("isWalletsModalOpen"),theme:t,onTimerUpdate:_}),s.jsx("button",{onClick:R,className:"absolute bottom-6 left-4 p-2 bg-white bg-opacity-10 rounded-full text-white opacity-10 z-50 hover:opacity-100 transition-opacity",children:s.jsx(ei,{size:24})}),s.jsx(sy,{isOpen:W,onClose:O,theme:t}),s.jsx(hf,{isOpen:d,onClose:q,theme:t}),s.jsx(yf,{isOpen:v,onClose:()=>N(!1),onOpen:G,theme:t}),s.jsx(ay,{isOpen:S,onClose:()=>T(!1),theme:t})]})},cy=[{id:"1",name:"GitHub",icon:s.jsx(Xm,{size:32}),url:"https://github.com",category:"dev"},{id:"2",name:"CodeSandbox",icon:s.jsx(qm,{size:32}),url:"https://codesandbox.io",category:"dev"},{id:"3",name:"CodePen",icon:s.jsx(Zm,{size:32}),url:"https://codepen.io",category:"dev"},{id:"4",name:"Etherscan",icon:s.jsx(Gm,{size:32}),url:"https://etherscan.io",category:"web3"},{id:"5",name:"Gitcoin",icon:s.jsx(zd,{size:32}),url:"https://gitcoin.co",category:"web3"},{id:"6",name:"Karma",icon:s.jsx(Ym,{size:32}),url:"https://gap.karmahq.xyz",category:"web3"},{id:"7",name:"Giveth",icon:s.jsx(ei,{size:32}),url:"https://giveth.io",category:"refi"},{id:"8",name:"Snapshot",icon:s.jsx(ti,{size:32}),url:"https://snapshot.org",category:"dao"},{id:"9",name:"Safe",icon:s.jsx(ge,{size:32}),url:"https://safe.global",category:"web3"},{id:"10",name:"ENS",icon:s.jsx(Pd,{size:32}),url:"https://app.ens.domains",category:"web3"},{id:"11",name:"Charmverse",icon:s.jsx(Qm,{size:32}),url:"https://app.charmverse.io",category:"docs"},{id:"12",name:"Remix",icon:s.jsx(ni,{size:32}),url:"https://remix.ethereum.org",category:"dev"}],dy=[{id:"13",name:"Arbitrum One",icon:s.jsx(Dl,{className:"text-green-400",size:24}),url:"https://arbiscan.io/",category:"Networks",description:"A layer 2 scaling solution for Ethereum"},{id:"14",name:"Base",icon:s.jsx(Ll,{className:"text-orange-400",size:24}),url:"https://basescan.org/",category:"Networks",description:"A high-throughput, low-cost Ethereum L2"},{id:"15",name:"Celo Mainnet",icon:s.jsx(Al,{className:"text-blue-400",size:24}),url:"https://celoscan.io/",category:"Networks",description:"A blockchain for mobile payments and financial inclusion"},{id:"16",name:"Ethereum Mainnet",icon:s.jsx(Ml,{className:"text-pink-400",size:24}),url:"https://etherscan.io/",category:"Networks",description:"The main network of the Ethereum blockchain"},{id:"17",name:"Gnosis",icon:s.jsx(Pl,{className:"text-teal-400",size:24}),url:"https://gnosisscan.io/",category:"Networks",description:"A blockchain for trustless smart contracts"},{id:"18",name:"OP Mainnet",icon:s.jsx(Do,{className:"text-purple-400",size:24}),url:"https://optimistic.etherscan.io/",category:"Networks",description:"A layer 2 scaling solution for Ethereum"},{id:"19",name:"Polygon Mainnet",icon:s.jsx(Rl,{className:"text-cyan-400",size:24}),url:"https://polygonscan.com/",category:"Networks",description:"A layer 2 scaling solution for Ethereum"},{id:"20",name:"Polygon zkEVM",icon:s.jsx(tt,{className:"text-purple-400",size:24}),url:"https://zkevm.polygonscan.com/",category:"Networks",description:"A zk-rollup solution for Ethereum"},{id:"21",name:"Alchemy",icon:s.jsx(L,{className:"text-purple-400",size:24}),url:"https://docs.alchemy.com/",category:"Docs",description:"A web3 developer platform providing powerful tools for building blockchain applications"},{id:"22",name:"Chainlink",icon:s.jsx(L,{className:"text-purple-400",size:24}),url:"https://docs.chain.link/",category:"Docs",description:"A decentralized oracle network that provides real-world data to smart contracts"},{id:"23",name:"Ethereum",icon:s.jsx(L,{className:"text-emerald-400",size:24}),url:"https://ethereum.org/en/developers/docs/",category:"Docs",description:"Ethereum resources for developers, covering smart contracts, wallets, and more"},{id:"24",name:"ENS",icon:s.jsx(L,{className:"text-emerald-400",size:24}),url:"https://docs.ens.domains/",category:"Docs",description:"A decentralized naming system for cryptocurrency addresses"},{id:"25",name:"Foundry",icon:s.jsx(L,{className:"text-emerald-400",size:24}),url:"https://book.getfoundry.sh/",category:"Docs",description:"A fast, portable, and modular toolkit for Ethereum development"},{id:"26",name:"Hardhat",icon:s.jsx(L,{className:"text-green-400",size:24}),url:"https://hardhat.org/hardhat-runner/docs/getting-started",category:"Docs",description:"A development environment for Ethereum with local blockchain development, testing, and deployment"},{id:"27",name:"Infura",icon:s.jsx(L,{className:"text-purple-400",size:24}),url:"https://docs.infura.io/",category:"Docs",description:"Blockchain infrastructure for dapps, providing access to Ethereum and other blockchains"},{id:"28",name:"IPFS",icon:s.jsx(L,{className:"text-purple-400",size:24}),url:"https://docs.ipfs.tech/",category:"Docs",description:"A decentralized file system for building distributed applications"},{id:"29",name:"OpenZeppelin",icon:s.jsx(L,{className:"text-purple-400",size:24}),url:"https://docs.openzeppelin.com/contracts/",category:"Docs",description:"A library of secure and community-audited smart contracts for Ethereum"},{id:"30",name:"RainbowKit",icon:s.jsx(L,{className:"text-green-400",size:24}),url:"https://www.rainbowkit.com/docs/",category:"Docs",description:"Beautiful, modular, and extensible wallet connection UIs for Ethereum dapps"},{id:"31",name:"Reown",icon:s.jsx(L,{className:"text-green-400",size:24}),url:"https://docs.reown.io/",category:"Docs",description:"A platform for building and managing decentralized applications"},{id:"32",name:"Remix IDE",icon:s.jsx(L,{className:"text-emerald-400",size:24}),url:"https://remix-ide.readthedocs.io/en/latest/",category:"Docs",description:"An in-browser Solidity IDE for writing, testing, and deploying smart contracts"},{id:"33",name:"Solidity",icon:s.jsx(L,{className:"text-purple-400",size:24}),url:"https://docs.soliditylang.org/en/latest/",category:"Docs",description:"The programming language for writing smart contracts on Ethereum"},{id:"34",name:"Scaffold-ETH 2",icon:s.jsx(L,{className:"text-green-400",size:24}),url:"https://github.com/scaffold-eth/scaffold-eth-2",category:"Docs",description:"A full-stack Ethereum development scaffold to build and deploy dapps quickly"},{id:"35",name:"The Graph",icon:s.jsx(L,{className:"text-green-400",size:24}),url:"https://thegraph.com/docs/en/",category:"Docs",description:"A decentralized indexing protocol for building subgraphs to query blockchain data"},{id:"36",name:"ThirdWeb",icon:s.jsx(L,{className:"text-emerald-400",size:24}),url:"https://portal.thirdweb.com/",category:"Docs",description:"A platform for building web3 apps with the most intuitive SDK and tools"},{id:"37",name:"Viem",icon:s.jsx(L,{className:"text-purple-400",size:24}),url:"https://viem.sh/",category:"Docs",description:"A lightweight, powerful, and type-safe Ethereum JavaScript library for building dapps"},{id:"38",name:"Wagmi",icon:s.jsx(L,{className:"text-purple-400",size:24}),url:"https://wagmi.sh/",category:"Docs",description:"React Hooks for Ethereum that simplifies building dapps"},{id:"39",name:"Web3.js",icon:s.jsx(L,{className:"text-green-400",size:24}),url:"https://web3js.readthedocs.io/en/v1.7.0/",category:"Docs",description:"A JavaScript library for interacting with the Ethereum blockchain and smart contracts"},{id:"40",name:"Ethers.js",icon:s.jsx(L,{className:"text-emerald-400",size:24}),url:"https://docs.ethers.io/v5/",category:"Docs",description:"A JavaScript library for interacting with the Ethereum blockchain and smart contracts, providing a simple and powerful API"},{id:"42",name:"Tally",icon:s.jsx(ti,{className:"text-purple-400",size:24}),url:"https://www.tally.xyz",category:"DAO Governance",description:"DAO governance dashboard and voting interface"},{id:"43",name:"Commonwealth",icon:s.jsx(Er,{className:"text-green-400",size:24}),url:"https://commonwealth.im",category:"DAO Governance",description:"Discussion forum and governance platform for Web3 communities"},{id:"44",name:"Discourse",icon:s.jsx(Sr,{className:"text-orange-400",size:24}),url:"https://www.discourse.org",category:"DAO Governance",description:"Community discussion and governance forum"},{id:"45",name:"Gardens",icon:s.jsx(Md,{className:"text-pink-400",size:24}),url:"https://www.gardens.fund/",category:"DAO Governance",description:"Gardens is a coordination platform"},{id:"46",name:"GreenPill Network",icon:s.jsx(_d,{className:"text-green-400",size:24}),url:"https://greenpill.network",category:"Refi",description:"Turning degens to regens."},{id:"47",name:"Letʼs GROW DAO",icon:s.jsx(Id,{className:"text-emerald-400",size:24}),url:"https://www.letsgrow.network/",category:"Refi",description:"On a mission to unite & GROW the Regen Movement"},{id:"48",name:"ReFi DAO",icon:s.jsx(Od,{className:"text-purple-400",size:24}),url:"https://www.refidao.com/",category:"Refi",description:"The home of the regenerative finance ecosystem."},{id:"49",name:"Klima DAO",icon:s.jsx(Ld,{className:"text-green-400",size:24}),url:"https://www.klimadao.finance",category:"Refi",description:"Driving climate action through tokenized carbon credits"},{id:"50",name:"Aave",icon:s.jsx(Dl,{className:"text-green-400",size:24}),url:"https://aave.com",category:"Defi",description:"A decentralized lending and borrowing protocol"},{id:"51",name:"Balancer",icon:s.jsx(Ll,{className:"text-orange-400",size:24}),url:"https://balancer.fi",category:"Defi",description:"A decentralized exchange and automated market maker"},{id:"52",name:"Compound",icon:s.jsx(Al,{className:"text-blue-400",size:24}),url:"https://compound.finance",category:"Defi",description:"A decentralized lending protocol on Ethereum"},{id:"53",name:"Curve",icon:s.jsx(Ml,{className:"text-pink-400",size:24}),url:"https://curve.fi",category:"Defi",description:"A decentralized exchange for stablecoins"},{id:"54",name:"Rari Capital",icon:s.jsx(Pl,{className:"text-teal-400",size:24}),url:"https://rari.capital",category:"Defi",description:"A decentralized lending and borrowing protocol with smart yield farming"},{id:"55",name:"Uniswap",icon:s.jsx(Do,{className:"text-purple-400",size:24}),url:"https://uniswap.org",category:"Defi",description:"A decentralized exchange (DEX) for ERC-20 tokens"},{id:"56",name:"Yearn",icon:s.jsx(Rl,{className:"text-cyan-400",size:24}),url:"https://yearn.finance",category:"Defi",description:"A suite of DeFi tools for managing decentralized assets"},{id:"57",name:"1inch",icon:s.jsx(tt,{className:"text-purple-400",size:24}),url:"https://1inch.exchange/",category:"Defi",description:"A decentralized exchange (DEX) aggregator"},{id:"58",name:"Jumper.Exchange",icon:s.jsx(tt,{className:"text-purple-400",size:24}),url:"https://jumper.exchange/",category:"Defi",description:"A decentralized exchange (DEX)"},{id:"59",name:"QuickSwap",icon:s.jsx(tt,{className:"text-purple-400",size:24}),url:"https://quickswap.exchange/",category:"Defi",description:"A decentralized exchange (DEX) on the Polygon network"},{id:"60",name:"Optimism",icon:s.jsx(L,{className:"text-green-400",size:24}),url:"https://docs.optimism.io/builders",category:"Docs",description:"Optimism documentation for builders, covering various aspects of the Optimism network"},{id:"61",name:"Lens",icon:s.jsx(L,{className:"text-purple-400",size:24}),url:"https://www.lens.xyz/docs",category:"Docs",description:"Lens documentation for developers, providing tools and resources for building on the Lens protocol"},{id:"62",name:"Moralis",icon:s.jsx(L,{className:"text-emerald-400",size:24}),url:"https://docs.moralis.com/",category:"Docs",description:"Moralis documentation for developers, offering services and tools for blockchain applications"},{id:"63",name:"Warpcast",icon:s.jsx(Rd,{className:"text-pink-400",size:24}),url:"https://warpcast.com/",category:"Web3 Social",description:"Warpcast is a decentralized social network built on the Farcaster protocol"},{id:"64",name:"Buttrfly",icon:s.jsx(bd,{className:"text-teal-400",size:24}),url:"https://buttrfly.app/",category:"Web3 Social",description:"Buttrfly is a decentralized platform for creators to share and monetize their content"},{id:"65",name:"Bloomers",icon:s.jsx(Ad,{className:"text-orange-400",size:24}),url:"https://bloomers.tv/",category:"Web3 Social",description:"Bloomers is a decentralized video platform for creators"},{id:"66",name:"Yup",icon:s.jsx(Td,{className:"text-cyan-400",size:24}),url:"https://yup.io/",category:"Web3 Social",description:"Yup is a decentralized social network for communities"},{id:"67",name:"Phaver",icon:s.jsx(Dd,{className:"text-lime-400",size:24}),url:"https://phaver.com/",category:"Web3 Social",description:"Phaver is a decentralized social network for communities"},{id:"68",name:"Hey",icon:s.jsx(ni,{className:"text-violet-400",size:24}),url:"https://hey.xyz/",category:"Web3 Social",description:"Hey is a decentralized social network for writers and creators"},{id:"69",name:"Tape",icon:s.jsx(Sr,{className:"text-indigo-400",size:24}),url:"https://tape.xyz/",category:"Web3 Social",description:"Tape is a decentralized platform for sharing stories and content"},{id:"70",name:"Lenspeer",icon:s.jsx(Er,{className:"text-fuchsia-400",size:24}),url:"https://lenspeer.com/",category:"Web3 Social",description:"Lenspeer is a decentralized social network for communities"},{id:"71",name:"MetaMask",icon:s.jsx(ge,{className:"text-green-400",size:24}),url:"https://metamask.io/",category:"Wallets",description:"A cryptocurrency wallet for buying, selling, and managing digital assets."},{id:"72",name:"Coinbase Wallet",icon:s.jsx(ge,{className:"text-green-400",size:24}),url:"https://www.coinbase.com/wallet",category:"Wallets",description:"A cryptocurrency wallet for buying, selling, and managing digital assets."},{id:"73",name:"WalletConnect",icon:s.jsx(ge,{className:"text-green-400",size:24}),url:"https://walletconnect.com/",category:"Wallets",description:"An open protocol for connecting decentralized applications to mobile wallets."},{id:"74",name:"Safe",icon:s.jsx(ge,{className:"text-green-400",size:24}),url:"https://gnosis-safe.io/",category:"Wallets",description:"A non-custodial, multi-signature wallet for Ethereum."},{id:"75",name:"Trust Wallet",icon:s.jsx(ge,{className:"text-green-400",size:24}),url:"https://trustwallet.com/",category:"Wallets",description:"A multi-chain cryptocurrency wallet for Android and iOS."},{id:"76",name:"Ledger Live",icon:s.jsx(ge,{className:"text-green-400",size:24}),url:"https://www.ledger.com/ledger-live",category:"Wallets",description:"A cryptocurrency wallet that integrates with Ledger hardware wallets."},{id:"77",name:"Trezor Wallet",icon:s.jsx(ge,{className:"text-green-400",size:24}),url:"https://trezor.io/",category:"Wallets",description:"A cryptocurrency wallet that integrates with Trezor hardware wallets."},{id:"78",name:"Exodus",icon:s.jsx(ge,{className:"text-green-400",size:24}),url:"https://www.exodus.com/",category:"Wallets",description:"A multi-asset cryptocurrency wallet for desktop and mobile."},{id:"79",name:"Brave Wallet",icon:s.jsx(ge,{className:"text-green-400",size:24}),url:"https://brave.com/wallet",category:"Wallets",description:"A cryptocurrency wallet built into the Brave browser."},{id:"80",name:"Argent",icon:s.jsx(ge,{className:"text-green-400",size:24}),url:"https://argent.xyz/",category:"Wallets",description:"A non-custodial Ethereum wallet with a gasless user experience."},{id:"81",name:"Frame",icon:s.jsx(ge,{className:"text-green-400",size:24}),url:"https://frame.sh/",category:"Wallets",description:"A non-custodial browser wallet for Ethereum and other networks."},{id:"82",name:"Rainbow",icon:s.jsx(ge,{className:"text-green-400",size:24}),url:"https://rainbow.me/",category:"Wallets",description:"A mobile wallet for Ethereum and other networks."},{id:"83",name:"Zerion",icon:s.jsx(ge,{className:"text-green-400",size:24}),url:"https://zerion.io/",category:"Wallets",description:"A multi-chain cryptocurrency wallet and portfolio tracker."}],fy=e=>cy.filter(t=>t.name.toLowerCase().includes(e.toLowerCase())||t.category.toLowerCase().includes(e.toLowerCase())),py=(e,t)=>{const n=e.toLowerCase();return t.filter(r=>{const o=r.name.toLowerCase(),i=r.description.toLowerCase(),l=r.category.toLowerCase();return o.includes(n)||i.includes(n)||l.includes(n)})},my=dy,hy=()=>{const[e,t]=w.useState({isPomodoroModalOpen:!1,isTimeZonesModalOpen:!1,isCryptoPricesModalOpen:!1,isDocsModalOpen:!1,isWeb3SocialModalOpen:!1,isWalletsModalOpen:!1,isLexiconModalOpen:!1,isMusicModalOpen:!1,isHelpModalOpen:!1});return{...e,openModal:o=>{t(i=>({...i,[o]:!0}))},closeModal:o=>{t(i=>({...i,[o]:!1}))}}},yy=e=>{w.useEffect(()=>{const t=e(),n=r=>{var i,l,a,u,c,f,h,p;let o=!1;r.ctrlKey&&r.key==="k"?((i=t.onCtrlK)==null||i.call(t),o=!0):r.ctrlKey&&r.key==="b"?((l=t.onCtrlB)==null||l.call(t),o=!0):r.key==="Escape"?((a=t.onEscape)==null||a.call(t),o=!0):r.key==="ArrowUp"?((u=t.onArrowUp)==null||u.call(t),o=!0):r.key==="ArrowDown"?((c=t.onArrowDown)==null||c.call(t),o=!0):r.altKey&&r.key==="t"?(f=t.onAltT)==null||f.call(t):r.altKey&&r.key==="m"?(h=t.onAltM)==null||h.call(t):r.altKey&&r.key==="h"&&((p=t.onAltH)==null||p.call(t)),o&&r.preventDefault()};return window.addEventListener("keydown",n),()=>{window.removeEventListener("keydown",n)}},[e])},fu={price:"isCryptoPricesModalOpen",clock:"isTimeZonesModalOpen",time:"isTimeZonesModalOpen",utc:"isTimeZonesModalOpen",docs:"isDocsModalOpen",social:"isWeb3SocialModalOpen",words:"isLexiconModalOpen",dictionary:"isLexiconModalOpen",lexicon:"isLexiconModalOpen",wallet:"isWalletsModalOpen",music:"isMusicModalOpen",sound:"isMusicModalOpen",tunes:"isMusicModalOpen",help:"isHelpModalOpen"},gy=()=>{const[e,t]=w.useState(""),[n,r]=w.useState("purple"),[o,i]=w.useState(!1),[l,a]=w.useState(0),[u,c]=w.useState(!1),[f,h]=w.useState(null),[p,y]=w.useState(!1),[m,k]=w.useState(!1),[x,g]=w.useState(!1),[d,v]=w.useState(!1),{isPomodoroModalOpen:S,isTimeZonesModalOpen:N,isCryptoPricesModalOpen:T,isDocsModalOpen:j,isWeb3SocialModalOpen:C,isWalletsModalOpen:z,openModal:M,closeModal:_}=hy(),W=w.useRef(null),H=w.useRef(null),q=w.useRef(null),G=w.useRef(null),ot=fy(e),yt=py(e,my),A={purple:"bg-gradient-to-br from-gray-900 via-purple-900 to-violet-900",green:"bg-gradient-to-br from-gray-900 via-green-900 to-emerald-900",teal:"bg-gradient-to-br from-gray-900 via-teal-900 to-emerald-900"},R=()=>{c(!u)},O=["purple","green","teal"],Z=()=>{const ue=O.indexOf(n);r(O[(ue+1)%O.length])},ne=()=>{if(yt.length>0&&(h(0),q.current&&q.current.gridItemsRef.current)){const ue=q.current.gridItemsRef.current[0];ue&&ue.focus()}},nn=()=>{var ue;(ue=W.current)==null||ue.focus(),h(null)},Je=()=>{if(H.current&&H.current.gridItemsRef.current){const ue=H.current.gridItemsRef.current[0];ue&&(ue.focus(),h(0))}},On=()=>{k(!0)},it=()=>{k(!1)},rn=()=>{g(!0)},gf=w.useCallback(()=>{T?_("isCryptoPricesModalOpen"):N?_("isTimeZonesModalOpen"):S?_("isPomodoroModalOpen"):j?_("isDocsModalOpen"):C?_("isWeb3SocialModalOpen"):z?_("isWalletsModalOpen"):x?g(!1):d?v(!1):u&&R()},[T,N,S,j,C,z,x,d,u,_,g,v,R]),Ws={onCtrlK:()=>{var ue;(ue=W.current)==null||ue.focus(),h(null)},onCtrlB:R,onEscape:gf,onAltT:Z,onAltM:()=>g(!x),onAltH:()=>v(!d)},vf=w.useCallback(()=>Ws,[Ws]);return yy(vf),w.useEffect(()=>{const ue=e.toLowerCase(),Pr=Object.keys(fu).find(It=>ue.includes(It));if(Pr){const It=fu[Pr];It==="isLexiconModalOpen"?k(!0):It==="isWalletsModalOpen"?M("isWalletsModalOpen"):It==="isMusicModalOpen"?g(!0):It==="isHelpModalOpen"?v(!0):M(It),t("")}},[e,M]),s.jsxs("div",{className:`relative min-h-screen ${A[n]} p-6 overflow-hidden ${n}`,children:[s.jsx("div",{className:"absolute inset-0 bg-[url('data:image/svg+xml;base64,PHN2ZyB3aWR0aD0iNDAiIGhlaWdodD0iNDAiIHhtbG5zPSJodHRwOi8vd3d3LnczLm9yZy8yMDAwL3N2ZyI+PGRlZnM+PHBhdHRlcm4gaWQ9ImdyaWQiIHdpZHRoPSI0MCIgaGVpZ2h0PSI0MCIgcGF0dGVyblVuaXRzPSJ1c2VyU3BhY2VPblVzZSI+PHBhdGggZD0iTSAwIDEwIEwgNDAgMTAgaTExMC0xMCBMMTAgaDQwIE0wIDIwIEwgNDAgMjAgaTExMC0yMCBMMTAgaDQwIE0wIDMwIEwgNDAgMzAgaTExMC0zMCBMMTAgaDQwIE0zMCAwIEwgMzA0MCBMMTAgaDQwIiBmaWxsPSJub25lIiBzdHJva2U9InJnYmEoMjU1LDI1NSwyNTUsMC4xKSIgc3Ryb2tlLXdpZHRoPSIxIi8+PC9wYXR0ZXJuPjwvZGVmcz48cmVjdCB3aWR0aD0iMTAwJSIgaGVpZ2h0PSIxMDAlIiBmaWxsPSJ1cmwoI2dyaWQpIi8+PC9zdmc+')] opacity-20"}),s.jsxs("div",{className:"relative",children:[s.jsx(fh,{search:e,setSearch:t,theme:n,inputRef:W,onNavigateToLinks:ne,onNavigateToGrid:Je}),s.jsx("button",{onClick:On,className:"absolute top-1/2 right-0 transform -translate-y-1/2 p-2 bg-white bg-opacity-10 rounded-full text-white opacity-10 z-50 hover:opacity-100 transition-opacity",children:s.jsx(L,{size:24})}),s.jsx("button",{onClick:()=>v(!0),className:"absolute top-1/2 right-14 transform -translate-y-1/2 p-2 bg-white bg-opacity-10 rounded-full text-white opacity-10 z-50 hover:opacity-100 transition-opacity",children:s.jsx(th,{size:24})})]}),s.jsx(uy,{search:e,theme:n,filteredShortcuts:ot,filteredLinks:yt,focusedIndex:f,setFocusedIndex:h,isTimerRunning:o,timerTimeLeft:l,setIsTimerRunning:i,setTimerTimeLeft:a,showToolbar:u,toggleToolbar:R,isPomodoroModalOpen:S,isTimeZonesModalOpen:N,isCryptoPricesModalOpen:T,isDocsModalOpen:j,isWeb3SocialModalOpen:C,isWalletsModalOpen:z,isLexiconModalOpen:m,isMusicModalOpen:x,isHelpModalOpen:d,setIsMusicModalOpen:g,setIsHelpModalOpen:v,openModal:M,closeModal:_,navigateToSearchBar:nn,onNavigateToGrid:Je,onTimerUpdate:(ue,Pr)=>{i(ue),a(Pr)},isModalvateOpen:p,setIsModalvateOpen:y,closeLexiconModal:it,handleOpenMusicModal:rn,searchBarRef:G,linkGridRef:q,shortcutGridRef:H})]})};function vy(){return s.jsx(gy,{})}Cd(document.getElementById("root")).render(s.jsx(w.StrictMode,{children:s.jsx(vy,{})})); diff --git a/index.html b/index.html index 94cc3b3..902e9d1 100644 --- a/index.html +++ b/index.html @@ -5,8 +5,8 @@ d3dash - - + +