@volr/react-ui 0.1.83 → 0.1.85
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.cjs +158 -385
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +10 -2
- package/dist/index.d.ts +10 -2
- package/dist/index.js +158 -385
- package/dist/index.js.map +1 -1
- package/package.json +3 -3
package/dist/index.js
CHANGED
|
@@ -6,15 +6,14 @@ import { jsx, jsxs, Fragment } from 'react/jsx-runtime';
|
|
|
6
6
|
import { clsx } from 'clsx';
|
|
7
7
|
import { extendTailwindMerge } from 'tailwind-merge';
|
|
8
8
|
|
|
9
|
-
|
|
10
|
-
var __defNormalProp = (obj, key, value) => key in obj ? __defProp(obj, key, { enumerable: true, configurable: true, writable: true, value }) : obj[key] = value;
|
|
11
|
-
var __publicField = (obj, key, value) => __defNormalProp(obj, typeof key !== "symbol" ? key + "" : key, value);
|
|
9
|
+
// src/providers/VolrUIProvider.tsx
|
|
12
10
|
|
|
13
11
|
// src/i18n/locales/en.ts
|
|
14
12
|
var en = {
|
|
15
13
|
common: {
|
|
16
14
|
back: "Back",
|
|
17
|
-
loading: "Loading..."
|
|
15
|
+
loading: "Loading...",
|
|
16
|
+
cancel: "Cancel"
|
|
18
17
|
},
|
|
19
18
|
login: {
|
|
20
19
|
title: "Sign in",
|
|
@@ -51,8 +50,15 @@ var en = {
|
|
|
51
50
|
},
|
|
52
51
|
siwe: {
|
|
53
52
|
noWalletFound: "No Ethereum wallet found. Please install MetaMask or another wallet.",
|
|
54
|
-
mobileGuide: "
|
|
55
|
-
|
|
53
|
+
mobileGuide: "To connect your wallet:",
|
|
54
|
+
mobileStep1: "Copy the sign URL below",
|
|
55
|
+
mobileStep2: "Open your wallet app (MetaMask, etc.)",
|
|
56
|
+
mobileStep3: "Paste URL in the app browser and sign",
|
|
57
|
+
copyUrl: "Copy Sign URL",
|
|
58
|
+
urlCopied: "URL copied! Paste it in your wallet app browser.",
|
|
59
|
+
startMobileSession: "Connect Wallet",
|
|
60
|
+
waitingForSignature: "Waiting for signature...",
|
|
61
|
+
sessionExpired: "Session expired. Please try again."
|
|
56
62
|
},
|
|
57
63
|
passkey: {
|
|
58
64
|
// Dynamic titles based on biometric type
|
|
@@ -125,7 +131,8 @@ var en = {
|
|
|
125
131
|
var ko = {
|
|
126
132
|
common: {
|
|
127
133
|
back: "\uB4A4\uB85C",
|
|
128
|
-
loading: "\uB85C\uB529 \uC911..."
|
|
134
|
+
loading: "\uB85C\uB529 \uC911...",
|
|
135
|
+
cancel: "\uCDE8\uC18C"
|
|
129
136
|
},
|
|
130
137
|
login: {
|
|
131
138
|
title: "\uB85C\uADF8\uC778",
|
|
@@ -162,8 +169,15 @@ var ko = {
|
|
|
162
169
|
},
|
|
163
170
|
siwe: {
|
|
164
171
|
noWalletFound: "\uC774\uB354\uB9AC\uC6C0 \uC9C0\uAC11\uC744 \uCC3E\uC744 \uC218 \uC5C6\uC2B5\uB2C8\uB2E4. MetaMask \uB610\uB294 \uB2E4\uB978 \uC9C0\uAC11\uC744 \uC124\uCE58\uD574\uC8FC\uC138\uC694.",
|
|
165
|
-
mobileGuide: "\uC9C0\uAC11 \
|
|
166
|
-
|
|
172
|
+
mobileGuide: "\uC9C0\uAC11 \uC5F0\uACB0 \uBC29\uBC95:",
|
|
173
|
+
mobileStep1: "\uC544\uB798 \uC11C\uBA85 URL \uBCF5\uC0AC",
|
|
174
|
+
mobileStep2: "\uC9C0\uAC11 \uC571 \uC5F4\uAE30 (MetaMask \uB4F1)",
|
|
175
|
+
mobileStep3: "\uC571 \uBE0C\uB77C\uC6B0\uC800\uC5D0 URL \uBD99\uC5EC\uB123\uACE0 \uC11C\uBA85",
|
|
176
|
+
copyUrl: "\uC11C\uBA85 URL \uBCF5\uC0AC",
|
|
177
|
+
urlCopied: "URL\uC774 \uBCF5\uC0AC\uB418\uC5C8\uC2B5\uB2C8\uB2E4! \uC9C0\uAC11 \uC571 \uBE0C\uB77C\uC6B0\uC800\uC5D0 \uBD99\uC5EC\uB123\uAE30 \uD558\uC138\uC694.",
|
|
178
|
+
startMobileSession: "\uC9C0\uAC11 \uC5F0\uACB0",
|
|
179
|
+
waitingForSignature: "\uC11C\uBA85 \uB300\uAE30 \uC911...",
|
|
180
|
+
sessionExpired: "\uC138\uC158\uC774 \uB9CC\uB8CC\uB418\uC5C8\uC2B5\uB2C8\uB2E4. \uB2E4\uC2DC \uC2DC\uB3C4\uD574\uC8FC\uC138\uC694."
|
|
167
181
|
},
|
|
168
182
|
passkey: {
|
|
169
183
|
// Dynamic titles based on biometric type
|
|
@@ -360,7 +374,7 @@ function useMediaQuery(query) {
|
|
|
360
374
|
}
|
|
361
375
|
|
|
362
376
|
// src/generated/volr-sdk-css.ts
|
|
363
|
-
var VOLR_SDK_CSS = '/*! tailwindcss v4.1.17 | MIT License | https://tailwindcss.com */\n@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--volr-tw-translate-x:0;--volr-tw-translate-y:0;--volr-tw-translate-z:0;--volr-tw-space-y-reverse:0;--volr-tw-border-style:solid;--volr-tw-gradient-position:initial;--volr-tw-gradient-from:#0000;--volr-tw-gradient-via:#0000;--volr-tw-gradient-to:#0000;--volr-tw-gradient-stops:initial;--volr-tw-gradient-via-stops:initial;--volr-tw-gradient-from-position:0%;--volr-tw-gradient-via-position:50%;--volr-tw-gradient-to-position:100%;--volr-tw-leading:initial;--volr-tw-font-weight:initial;--volr-tw-shadow:0 0 #0000;--volr-tw-shadow-color:initial;--volr-tw-shadow-alpha:100%;--volr-tw-inset-shadow:0 0 #0000;--volr-tw-inset-shadow-color:initial;--volr-tw-inset-shadow-alpha:100%;--volr-tw-ring-color:initial;--volr-tw-ring-shadow:0 0 #0000;--volr-tw-inset-ring-color:initial;--volr-tw-inset-ring-shadow:0 0 #0000;--volr-tw-ring-inset:initial;--volr-tw-ring-offset-width:0px;--volr-tw-ring-offset-color:#fff;--volr-tw-ring-offset-shadow:0 0 #0000;--volr-tw-blur:initial;--volr-tw-brightness:initial;--volr-tw-contrast:initial;--volr-tw-grayscale:initial;--volr-tw-hue-rotate:initial;--volr-tw-invert:initial;--volr-tw-opacity:initial;--volr-tw-saturate:initial;--volr-tw-sepia:initial;--volr-tw-drop-shadow:initial;--volr-tw-drop-shadow-color:initial;--volr-tw-drop-shadow-alpha:100%;--volr-tw-drop-shadow-size:initial;--volr-tw-duration:initial;--volr-tw-ease:initial}}}@layer theme{:root,:host{--volr-font-sans:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";--volr-font-mono:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;--volr-color-red-50:oklch(97.1% .013 17.38);--volr-color-red-200:oklch(88.5% .062 18.334);--volr-color-red-700:oklch(50.5% .213 27.518);--volr-color-green-600:oklch(62.7% .194 149.214);--volr-color-emerald-300:oklch(84.5% .143 164.978);--volr-color-emerald-400:oklch(76.5% .177 163.223);--volr-color-emerald-500:oklch(69.6% .17 162.48);--volr-color-emerald-600:oklch(59.6% .145 163.225);--volr-color-teal-400:oklch(77.7% .152 181.912);--volr-color-teal-500:oklch(70.4% .14 182.503);--volr-color-cyan-400:oklch(78.9% .154 211.53);--volr-color-blue-600:oklch(54.6% .245 262.881);--volr-color-gray-500:oklch(55.1% .027 264.364);--volr-color-black:#000;--volr-color-white:#fff;--volr-spacing:.25rem;--volr-container-md:28rem;--volr-container-4xl:56rem;--volr-text-xs:.75rem;--volr-text-xs--line-height:calc(1/.75);--volr-text-sm:.875rem;--volr-text-sm--line-height:calc(1.25/.875);--volr-text-base:1rem;--volr-text-base--line-height:calc(1.5/1);--volr-text-lg:1.125rem;--volr-text-lg--line-height:calc(1.75/1.125);--volr-text-xl:1.25rem;--volr-text-xl--line-height:calc(1.75/1.25);--volr-text-2xl:1.5rem;--volr-text-2xl--line-height:calc(2/1.5);--volr-text-8xl:6rem;--volr-text-8xl--line-height:1;--volr-font-weight-medium:500;--volr-font-weight-semibold:600;--volr-font-weight-bold:700;--volr-leading-relaxed:1.625;--volr-radius-md:.375rem;--volr-radius-lg:.5rem;--volr-radius-xl:.75rem;--volr-radius-2xl:1rem;--volr-radius-3xl:1.5rem;--volr-ease-out:cubic-bezier(0,0,.2,1);--volr-animate-spin:spin 1s linear infinite;--volr-animate-pulse:pulse 2s cubic-bezier(.4,0,.6,1)infinite;--volr-blur-2xl:40px;--volr-default-transition-duration:.15s;--volr-default-transition-timing-function:cubic-bezier(.4,0,.2,1);--volr-default-font-family:var(--volr-font-sans);--volr-default-mono-font-family:var(--volr-font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--volr-default-font-family,ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji");font-feature-settings:var(--volr-default-font-feature-settings,normal);font-variation-settings:var(--volr-default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}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;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--volr-default-mono-font-family,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace);font-feature-settings:var(--volr-default-mono-font-feature-settings,normal);font-variation-settings:var(--volr-default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}:host{--volr-primary-color:var(--volr-accent-color,#303030);--volr-font-family:var(--volr-custom-font,inherit);--volr-bg:#fff;--volr-bg-secondary:#f8fafc;--volr-bg-tertiary:#f1f5f9;--volr-text:#0f172a;--volr-text-secondary:#475569;--volr-text-muted:#94a3b8;--volr-border:#e2e8f0;--volr-border-strong:#cbd5e1;--volr-hover-bg:#f8fafc;--volr-error-bg:#fef2f2;--volr-error-border:#fecaca;--volr-error-text:#991b1b}:host([data-theme=dark]){--volr-bg:#1c1c1e;--volr-bg-secondary:#2c2c2e;--volr-bg-tertiary:#3a3a3c;--volr-text:#f5f5f7;--volr-text-secondary:#c7c7cc;--volr-text-muted:#8e8e93;--volr-border:#3a3a3c;--volr-border-strong:#48484a;--volr-hover-bg:#2c2c2e;--volr-error-bg:#3c1f1f;--volr-error-border:#7f1d1d;--volr-error-text:#fca5a5}*,:before,:after{box-sizing:border-box}*{font-family:var(--volr-font-family);color:var(--volr-text)}button,input,select,textarea{color:var(--volr-text);background-color:#0000}button{cursor:pointer;background-color:#0000}input::placeholder{color:var(--volr-text-muted)}h1,h2,h3{color:var(--volr-text);margin:0;font-weight:700}h1{font-size:1.875rem;line-height:2.25rem}h2{font-size:1.5rem;line-height:2rem}h3{font-size:1.25rem;line-height:1.75rem}p{margin:0}}@layer components{.volr-dialog-overlay{inset:calc(var(--volr-spacing)*0);z-index:40;background-color:var(--volr-color-black);position:fixed}@supports (color:color-mix(in lab, red, red)){.volr-dialog-overlay{background-color:color-mix(in oklab,var(--volr-color-black)45%,transparent)}}.volr-dialog-content{z-index:50;border-radius:var(--volr-radius-2xl);border-style:var(--volr-tw-border-style);padding:calc(var(--volr-spacing)*7);--volr-tw-shadow:0 20px 25px -5px var(--volr-tw-shadow-color,#0000001a),0 8px 10px -6px var(--volr-tw-shadow-color,#0000001a);box-shadow:var(--volr-tw-inset-shadow),var(--volr-tw-inset-ring-shadow),var(--volr-tw-ring-offset-shadow),var(--volr-tw-ring-shadow),var(--volr-tw-shadow);background-color:var(--volr-bg);border-width:1px;border-color:var(--volr-border-strong);width:calc(100% - 2rem);max-width:28rem;max-height:85vh;position:fixed;top:50%;left:50%;overflow-y:auto;transform:translate(-50%,-50%)}@media (max-width:640px){.volr-dialog-content{top:auto;right:calc(var(--volr-spacing)*0);bottom:calc(var(--volr-spacing)*0);left:calc(var(--volr-spacing)*0);border-radius:1.25rem 1.25rem 0 0;width:100%;max-width:100%;margin:0 auto;transform:translateY(0)}}.volr-dialog-close{top:calc(var(--volr-spacing)*4);right:calc(var(--volr-spacing)*4);height:calc(var(--volr-spacing)*8);width:calc(var(--volr-spacing)*8);color:var(--volr-text-muted);cursor:pointer;background-color:#0000;border:none;border-radius:3.40282e38px;justify-content:center;align-items:center;display:inline-flex;position:absolute}.volr-dialog-close:hover{background-color:var(--volr-hover-bg);color:var(--volr-text-secondary)}.volr-dialog-close:focus-visible{box-shadow:0 0 0 2px var(--volr-border-strong);outline:none}.volr-dialog-close-icon{height:calc(var(--volr-spacing)*4);width:calc(var(--volr-spacing)*4)}.volr-email-input{border:1px solid var(--volr-border-strong);background-color:var(--volr-bg);width:100%;color:var(--volr-text);border-radius:.5rem;outline:none;padding:.75rem .75rem .75rem 2.75rem;font-size:1rem;line-height:1.5}.volr-email-input::placeholder{color:var(--volr-text-muted)}.volr-email-input:focus{border-color:var(--volr-border-strong);box-shadow:0 0 0 2px var(--volr-border-strong)}.volr-option-button{border:1px solid var(--volr-border);background-color:var(--volr-bg);width:100%;color:var(--volr-text);cursor:pointer;border-radius:.5rem;align-items:center;gap:.75rem;padding:.75rem;transition:background-color .15s ease-out,border-color .15s ease-out,box-shadow .15s ease-out;display:flex}.volr-option-button:hover{background-color:var(--volr-hover-bg);border-color:var(--volr-border)}.volr-option-button:focus-visible{box-shadow:0 0 0 2px var(--volr-border-strong);outline:none}}@layer utilities{.volr\\:pointer-events-auto{pointer-events:auto}.volr\\:pointer-events-none{pointer-events:none}.volr\\:sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.volr\\:absolute{position:absolute}.volr\\:fixed{position:fixed}.volr\\:relative{position:relative}.volr\\:inset-0{inset:calc(var(--volr-spacing)*0)}.volr\\:-top-3{top:calc(var(--volr-spacing)*-3)}.volr\\:top-1\\/2{top:50%}.volr\\:-right-3{right:calc(var(--volr-spacing)*-3)}.volr\\:-right-4{right:calc(var(--volr-spacing)*-4)}.volr\\:right-2{right:calc(var(--volr-spacing)*2)}.volr\\:bottom-0{bottom:calc(var(--volr-spacing)*0)}.volr\\:-left-4{left:calc(var(--volr-spacing)*-4)}.volr\\:left-3{left:calc(var(--volr-spacing)*3)}.volr\\:-z-10{z-index:calc(10*-1)}.volr\\:z-10{z-index:10}.volr\\:z-20{z-index:20}.volr\\:z-40{z-index:40}.volr\\:z-50{z-index:50}.volr\\:mx-auto{margin-inline:auto}.volr\\:my-6{margin-block:calc(var(--volr-spacing)*6)}.volr\\:mt-0\\.5{margin-top:calc(var(--volr-spacing)*.5)}.volr\\:mt-1{margin-top:calc(var(--volr-spacing)*1)}.volr\\:mt-2{margin-top:calc(var(--volr-spacing)*2)}.volr\\:mt-3{margin-top:calc(var(--volr-spacing)*3)}.volr\\:mt-4{margin-top:calc(var(--volr-spacing)*4)}.volr\\:mt-6{margin-top:calc(var(--volr-spacing)*6)}.volr\\:mt-8{margin-top:calc(var(--volr-spacing)*8)}.volr\\:mb-1{margin-bottom:calc(var(--volr-spacing)*1)}.volr\\:mb-2{margin-bottom:calc(var(--volr-spacing)*2)}.volr\\:mb-3{margin-bottom:calc(var(--volr-spacing)*3)}.volr\\:mb-4{margin-bottom:calc(var(--volr-spacing)*4)}.volr\\:mb-5{margin-bottom:calc(var(--volr-spacing)*5)}.volr\\:mb-6{margin-bottom:calc(var(--volr-spacing)*6)}.volr\\:mb-8{margin-bottom:calc(var(--volr-spacing)*8)}.volr\\:-ml-2{margin-left:calc(var(--volr-spacing)*-2)}.volr\\:flex{display:flex}.volr\\:grid{display:grid}.volr\\:inline-block{display:inline-block}.volr\\:inline-flex{display:inline-flex}.volr\\:h-1{height:calc(var(--volr-spacing)*1)}.volr\\:h-1\\.5{height:calc(var(--volr-spacing)*1.5)}.volr\\:h-2{height:calc(var(--volr-spacing)*2)}.volr\\:h-3{height:calc(var(--volr-spacing)*3)}.volr\\:h-4{height:calc(var(--volr-spacing)*4)}.volr\\:h-6{height:calc(var(--volr-spacing)*6)}.volr\\:h-7{height:calc(var(--volr-spacing)*7)}.volr\\:h-8{height:calc(var(--volr-spacing)*8)}.volr\\:h-10{height:calc(var(--volr-spacing)*10)}.volr\\:h-14{height:calc(var(--volr-spacing)*14)}.volr\\:h-24{height:calc(var(--volr-spacing)*24)}.volr\\:h-40{height:calc(var(--volr-spacing)*40)}.volr\\:h-44{height:calc(var(--volr-spacing)*44)}.volr\\:h-48{height:calc(var(--volr-spacing)*48)}.volr\\:h-\\[0\\.8em\\]{height:.8em}.volr\\:h-\\[200px\\]{height:200px}.volr\\:h-full{height:100%}.volr\\:h-px{height:1px}.volr\\:max-h-36{max-height:calc(var(--volr-spacing)*36)}.volr\\:max-h-96{max-height:calc(var(--volr-spacing)*96)}.volr\\:max-h-\\[85vh\\]{max-height:85vh}.volr\\:max-h-\\[90vh\\]{max-height:90vh}.volr\\:min-h-\\[120px\\]{min-height:120px}.volr\\:min-h-\\[500px\\]{min-height:500px}.volr\\:w-1\\.5{width:calc(var(--volr-spacing)*1.5)}.volr\\:w-2{width:calc(var(--volr-spacing)*2)}.volr\\:w-6{width:calc(var(--volr-spacing)*6)}.volr\\:w-8{width:calc(var(--volr-spacing)*8)}.volr\\:w-10{width:calc(var(--volr-spacing)*10)}.volr\\:w-12{width:calc(var(--volr-spacing)*12)}.volr\\:w-24{width:calc(var(--volr-spacing)*24)}.volr\\:w-32{width:calc(var(--volr-spacing)*32)}.volr\\:w-36{width:calc(var(--volr-spacing)*36)}.volr\\:w-40{width:calc(var(--volr-spacing)*40)}.volr\\:w-44{width:calc(var(--volr-spacing)*44)}.volr\\:w-48{width:calc(var(--volr-spacing)*48)}.volr\\:w-\\[200px\\]{width:200px}.volr\\:w-auto{width:auto}.volr\\:w-full{width:100%}.volr\\:max-w-4xl{max-width:var(--volr-container-4xl)}.volr\\:max-w-full{max-width:100%}.volr\\:max-w-md{max-width:var(--volr-container-md)}.volr\\:max-w-none{max-width:none}.volr\\:min-w-0{min-width:calc(var(--volr-spacing)*0)}.volr\\:flex-1{flex:1}.volr\\:shrink-0{flex-shrink:0}.volr\\:-translate-y-1\\/2{--volr-tw-translate-y:calc(calc(1/2*100%)*-1);translate:var(--volr-tw-translate-x)var(--volr-tw-translate-y)}.volr\\:animate-\\[volrFadeIn_0\\.2s_ease-out\\]{animation:.2s ease-out volrFadeIn}.volr\\:animate-pulse{animation:var(--volr-animate-pulse)}.volr\\:animate-spin{animation:var(--volr-animate-spin)}.volr\\:grid-cols-\\[minmax\\(0\\,1\\.1fr\\)_minmax\\(0\\,1fr\\)\\]{grid-template-columns:minmax(0,1.1fr) minmax(0,1fr)}.volr\\:flex-col{flex-direction:column}.volr\\:items-baseline{align-items:baseline}.volr\\:items-center{align-items:center}.volr\\:items-end{align-items:flex-end}.volr\\:items-start{align-items:flex-start}.volr\\:justify-between{justify-content:space-between}.volr\\:justify-center{justify-content:center}.volr\\:gap-1{gap:calc(var(--volr-spacing)*1)}.volr\\:gap-2{gap:calc(var(--volr-spacing)*2)}.volr\\:gap-3{gap:calc(var(--volr-spacing)*3)}.volr\\:gap-4{gap:calc(var(--volr-spacing)*4)}:where(.volr\\:space-y-2>:not(:last-child)){--volr-tw-space-y-reverse:0;margin-block-start:calc(calc(var(--volr-spacing)*2)*var(--volr-tw-space-y-reverse));margin-block-end:calc(calc(var(--volr-spacing)*2)*calc(1 - var(--volr-tw-space-y-reverse)))}:where(.volr\\:space-y-3>:not(:last-child)){--volr-tw-space-y-reverse:0;margin-block-start:calc(calc(var(--volr-spacing)*3)*var(--volr-tw-space-y-reverse));margin-block-end:calc(calc(var(--volr-spacing)*3)*calc(1 - var(--volr-tw-space-y-reverse)))}.volr\\:truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.volr\\:overflow-hidden{overflow:hidden}.volr\\:overflow-visible{overflow:visible}.volr\\:overflow-y-auto{overflow-y:auto}.volr\\:rounded{border-radius:.25rem}.volr\\:rounded-2xl{border-radius:var(--volr-radius-2xl)}.volr\\:rounded-full{border-radius:3.40282e38px}.volr\\:rounded-lg{border-radius:var(--volr-radius-lg)}.volr\\:rounded-md{border-radius:var(--volr-radius-md)}.volr\\:rounded-xl{border-radius:var(--volr-radius-xl)}.volr\\:rounded-t-2xl{border-top-left-radius:var(--volr-radius-2xl);border-top-right-radius:var(--volr-radius-2xl)}.volr\\:rounded-t-3xl{border-top-left-radius:var(--volr-radius-3xl);border-top-right-radius:var(--volr-radius-3xl)}.volr\\:border{border-style:var(--volr-tw-border-style);border-width:1px}.volr\\:border-2{border-style:var(--volr-tw-border-style);border-width:2px}.volr\\:border-4{border-style:var(--volr-tw-border-style);border-width:4px}.volr\\:border-t{border-top-style:var(--volr-tw-border-style);border-top-width:1px}.volr\\:border-t-2{border-top-style:var(--volr-tw-border-style);border-top-width:2px}.volr\\:border-red-200{border-color:var(--volr-color-red-200)}.volr\\:border-white{border-color:var(--volr-color-white)}.volr\\:bg-black\\/45{background-color:var(--volr-color-black)}@supports (color:color-mix(in lab, red, red)){.volr\\:bg-black\\/45{background-color:color-mix(in oklab,var(--volr-color-black)45%,transparent)}}.volr\\:bg-cyan-400{background-color:var(--volr-color-cyan-400)}.volr\\:bg-emerald-300{background-color:var(--volr-color-emerald-300)}.volr\\:bg-emerald-400{background-color:var(--volr-color-emerald-400)}.volr\\:bg-red-50{background-color:var(--volr-color-red-50)}.volr\\:bg-teal-400{background-color:var(--volr-color-teal-400)}.volr\\:bg-white{background-color:var(--volr-color-white)}.volr\\:bg-gradient-to-br{--volr-tw-gradient-position:to bottom right in oklab;background-image:linear-gradient(var(--volr-tw-gradient-stops))}.volr\\:from-emerald-400{--volr-tw-gradient-from:var(--volr-color-emerald-400);--volr-tw-gradient-stops:var(--volr-tw-gradient-via-stops,var(--volr-tw-gradient-position),var(--volr-tw-gradient-from)var(--volr-tw-gradient-from-position),var(--volr-tw-gradient-to)var(--volr-tw-gradient-to-position))}.volr\\:from-emerald-500{--volr-tw-gradient-from:var(--volr-color-emerald-500);--volr-tw-gradient-stops:var(--volr-tw-gradient-via-stops,var(--volr-tw-gradient-position),var(--volr-tw-gradient-from)var(--volr-tw-gradient-from-position),var(--volr-tw-gradient-to)var(--volr-tw-gradient-to-position))}.volr\\:to-teal-500{--volr-tw-gradient-to:var(--volr-color-teal-500);--volr-tw-gradient-stops:var(--volr-tw-gradient-via-stops,var(--volr-tw-gradient-position),var(--volr-tw-gradient-from)var(--volr-tw-gradient-from-position),var(--volr-tw-gradient-to)var(--volr-tw-gradient-to-position))}.volr\\:p-1{padding:calc(var(--volr-spacing)*1)}.volr\\:p-2{padding:calc(var(--volr-spacing)*2)}.volr\\:p-3{padding:calc(var(--volr-spacing)*3)}.volr\\:p-4{padding:calc(var(--volr-spacing)*4)}.volr\\:p-5{padding:calc(var(--volr-spacing)*5)}.volr\\:p-8{padding:calc(var(--volr-spacing)*8)}.volr\\:px-2{padding-inline:calc(var(--volr-spacing)*2)}.volr\\:px-3{padding-inline:calc(var(--volr-spacing)*3)}.volr\\:px-4{padding-inline:calc(var(--volr-spacing)*4)}.volr\\:py-0\\.5{padding-block:calc(var(--volr-spacing)*.5)}.volr\\:py-1\\.5{padding-block:calc(var(--volr-spacing)*1.5)}.volr\\:py-2\\.5{padding-block:calc(var(--volr-spacing)*2.5)}.volr\\:py-3{padding-block:calc(var(--volr-spacing)*3)}.volr\\:py-6{padding-block:calc(var(--volr-spacing)*6)}.volr\\:py-8{padding-block:calc(var(--volr-spacing)*8)}.volr\\:py-12{padding-block:calc(var(--volr-spacing)*12)}.volr\\:pt-2{padding-top:calc(var(--volr-spacing)*2)}.volr\\:pt-3{padding-top:calc(var(--volr-spacing)*3)}.volr\\:pt-4{padding-top:calc(var(--volr-spacing)*4)}.volr\\:pr-3{padding-right:calc(var(--volr-spacing)*3)}.volr\\:pb-2{padding-bottom:calc(var(--volr-spacing)*2)}.volr\\:pb-4{padding-bottom:calc(var(--volr-spacing)*4)}.volr\\:pl-11{padding-left:calc(var(--volr-spacing)*11)}.volr\\:text-center{text-align:center}.volr\\:text-left{text-align:left}.volr\\:align-baseline{vertical-align:baseline}.volr\\:font-mono{font-family:var(--volr-font-mono)}.volr\\:text-2xl{font-size:var(--volr-text-2xl);line-height:var(--volr-tw-leading,var(--volr-text-2xl--line-height))}.volr\\:text-8xl{font-size:var(--volr-text-8xl);line-height:var(--volr-tw-leading,var(--volr-text-8xl--line-height))}.volr\\:text-base{font-size:var(--volr-text-base);line-height:var(--volr-tw-leading,var(--volr-text-base--line-height))}.volr\\:text-lg{font-size:var(--volr-text-lg);line-height:var(--volr-tw-leading,var(--volr-text-lg--line-height))}.volr\\:text-sm{font-size:var(--volr-text-sm);line-height:var(--volr-tw-leading,var(--volr-text-sm--line-height))}.volr\\:text-xl{font-size:var(--volr-text-xl);line-height:var(--volr-tw-leading,var(--volr-text-xl--line-height))}.volr\\:text-xs{font-size:var(--volr-text-xs);line-height:var(--volr-tw-leading,var(--volr-text-xs--line-height))}.volr\\:leading-relaxed{--volr-tw-leading:var(--volr-leading-relaxed);line-height:var(--volr-leading-relaxed)}.volr\\:font-bold{--volr-tw-font-weight:var(--volr-font-weight-bold);font-weight:var(--volr-font-weight-bold)}.volr\\:font-medium{--volr-tw-font-weight:var(--volr-font-weight-medium);font-weight:var(--volr-font-weight-medium)}.volr\\:font-semibold{--volr-tw-font-weight:var(--volr-font-weight-semibold);font-weight:var(--volr-font-weight-semibold)}.volr\\:break-all{word-break:break-all}.volr\\:text-blue-600{color:var(--volr-color-blue-600)}.volr\\:text-emerald-600{color:var(--volr-color-emerald-600)}.volr\\:text-gray-500{color:var(--volr-color-gray-500)}.volr\\:text-green-600{color:var(--volr-color-green-600)}.volr\\:text-red-700{color:var(--volr-color-red-700)}.volr\\:text-white{color:var(--volr-color-white)}.volr\\:capitalize{text-transform:capitalize}.volr\\:underline{text-decoration-line:underline}.volr\\:opacity-0{opacity:0}.volr\\:opacity-30{opacity:.3}.volr\\:shadow-2xl{--volr-tw-shadow:0 25px 50px -12px var(--volr-tw-shadow-color,#00000040);box-shadow:var(--volr-tw-inset-shadow),var(--volr-tw-inset-ring-shadow),var(--volr-tw-ring-offset-shadow),var(--volr-tw-ring-shadow),var(--volr-tw-shadow)}.volr\\:shadow-\\[0_-8px_30px_rgba\\(0\\,0\\,0\\,0\\.2\\)\\]{--volr-tw-shadow:0 -8px 30px var(--volr-tw-shadow-color,#0003);box-shadow:var(--volr-tw-inset-shadow),var(--volr-tw-inset-ring-shadow),var(--volr-tw-ring-offset-shadow),var(--volr-tw-ring-shadow),var(--volr-tw-shadow)}.volr\\:shadow-lg{--volr-tw-shadow:0 10px 15px -3px var(--volr-tw-shadow-color,#0000001a),0 4px 6px -4px var(--volr-tw-shadow-color,#0000001a);box-shadow:var(--volr-tw-inset-shadow),var(--volr-tw-inset-ring-shadow),var(--volr-tw-ring-offset-shadow),var(--volr-tw-ring-shadow),var(--volr-tw-shadow)}.volr\\:shadow-md{--volr-tw-shadow:0 4px 6px -1px var(--volr-tw-shadow-color,#0000001a),0 2px 4px -2px var(--volr-tw-shadow-color,#0000001a);box-shadow:var(--volr-tw-inset-shadow),var(--volr-tw-inset-ring-shadow),var(--volr-tw-ring-offset-shadow),var(--volr-tw-ring-shadow),var(--volr-tw-shadow)}.volr\\:shadow-sm{--volr-tw-shadow:0 1px 3px 0 var(--volr-tw-shadow-color,#0000001a),0 1px 2px -1px var(--volr-tw-shadow-color,#0000001a);box-shadow:var(--volr-tw-inset-shadow),var(--volr-tw-inset-ring-shadow),var(--volr-tw-ring-offset-shadow),var(--volr-tw-ring-shadow),var(--volr-tw-shadow)}.volr\\:shadow-xl{--volr-tw-shadow:0 20px 25px -5px var(--volr-tw-shadow-color,#0000001a),0 8px 10px -6px var(--volr-tw-shadow-color,#0000001a);box-shadow:var(--volr-tw-inset-shadow),var(--volr-tw-inset-ring-shadow),var(--volr-tw-ring-offset-shadow),var(--volr-tw-ring-shadow),var(--volr-tw-shadow)}.volr\\:shadow-emerald-500\\/50{--volr-tw-shadow-color:var(--volr-color-emerald-500)}@supports (color:color-mix(in lab, red, red)){.volr\\:shadow-emerald-500\\/50{--volr-tw-shadow-color:color-mix(in oklab,color-mix(in oklab,var(--volr-color-emerald-500)50%,transparent)var(--volr-tw-shadow-alpha),transparent)}}.volr\\:blur-2xl{--volr-tw-blur:blur(var(--volr-blur-2xl));filter:var(--volr-tw-blur,)var(--volr-tw-brightness,)var(--volr-tw-contrast,)var(--volr-tw-grayscale,)var(--volr-tw-hue-rotate,)var(--volr-tw-invert,)var(--volr-tw-saturate,)var(--volr-tw-sepia,)var(--volr-tw-drop-shadow,)}.volr\\:transition-all{transition-property:all;transition-timing-function:var(--volr-tw-ease,var(--volr-default-transition-timing-function));transition-duration:var(--volr-tw-duration,var(--volr-default-transition-duration))}.volr\\:transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--volr-tw-gradient-from,--volr-tw-gradient-via,--volr-tw-gradient-to;transition-timing-function:var(--volr-tw-ease,var(--volr-default-transition-timing-function));transition-duration:var(--volr-tw-duration,var(--volr-default-transition-duration))}.volr\\:duration-300{--volr-tw-duration:.3s;transition-duration:.3s}.volr\\:duration-500{--volr-tw-duration:.5s;transition-duration:.5s}.volr\\:ease-out{--volr-tw-ease:var(--volr-ease-out);transition-timing-function:var(--volr-ease-out)}.volr\\:outline-none{--volr-tw-outline-style:none;outline-style:none}.volr\\:disabled\\:cursor-not-allowed:disabled{cursor:not-allowed}.volr-mono{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.volr-text-secondary{color:var(--volr-text-secondary)}.volr-text-muted{color:var(--volr-text-muted)}.volr-bg-secondary{background-color:var(--volr-bg-secondary)}.volr-bg-tertiary{background-color:var(--volr-bg-tertiary)}.volr-border{border-color:var(--volr-border)}.volr-border-strong{border-color:var(--volr-border-strong)}.volr-divider-line{background-color:var(--volr-border)}.volr-error{background-color:var(--volr-error-bg);border-color:var(--volr-error-border);color:var(--volr-error-text)}.volr-hover:hover{background-color:var(--volr-hover-bg)}.volr-surface{background-color:var(--volr-bg)}}@property --volr-tw-translate-x{syntax:"*";inherits:false;initial-value:0}@property --volr-tw-translate-y{syntax:"*";inherits:false;initial-value:0}@property --volr-tw-translate-z{syntax:"*";inherits:false;initial-value:0}@property --volr-tw-space-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --volr-tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --volr-tw-gradient-position{syntax:"*";inherits:false}@property --volr-tw-gradient-from{syntax:"<color>";inherits:false;initial-value:#0000}@property --volr-tw-gradient-via{syntax:"<color>";inherits:false;initial-value:#0000}@property --volr-tw-gradient-to{syntax:"<color>";inherits:false;initial-value:#0000}@property --volr-tw-gradient-stops{syntax:"*";inherits:false}@property --volr-tw-gradient-via-stops{syntax:"*";inherits:false}@property --volr-tw-gradient-from-position{syntax:"<length-percentage>";inherits:false;initial-value:0%}@property --volr-tw-gradient-via-position{syntax:"<length-percentage>";inherits:false;initial-value:50%}@property --volr-tw-gradient-to-position{syntax:"<length-percentage>";inherits:false;initial-value:100%}@property --volr-tw-leading{syntax:"*";inherits:false}@property --volr-tw-font-weight{syntax:"*";inherits:false}@property --volr-tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --volr-tw-shadow-color{syntax:"*";inherits:false}@property --volr-tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --volr-tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --volr-tw-inset-shadow-color{syntax:"*";inherits:false}@property --volr-tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --volr-tw-ring-color{syntax:"*";inherits:false}@property --volr-tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --volr-tw-inset-ring-color{syntax:"*";inherits:false}@property --volr-tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --volr-tw-ring-inset{syntax:"*";inherits:false}@property --volr-tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --volr-tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --volr-tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --volr-tw-blur{syntax:"*";inherits:false}@property --volr-tw-brightness{syntax:"*";inherits:false}@property --volr-tw-contrast{syntax:"*";inherits:false}@property --volr-tw-grayscale{syntax:"*";inherits:false}@property --volr-tw-hue-rotate{syntax:"*";inherits:false}@property --volr-tw-invert{syntax:"*";inherits:false}@property --volr-tw-opacity{syntax:"*";inherits:false}@property --volr-tw-saturate{syntax:"*";inherits:false}@property --volr-tw-sepia{syntax:"*";inherits:false}@property --volr-tw-drop-shadow{syntax:"*";inherits:false}@property --volr-tw-drop-shadow-color{syntax:"*";inherits:false}@property --volr-tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --volr-tw-drop-shadow-size{syntax:"*";inherits:false}@property --volr-tw-duration{syntax:"*";inherits:false}@property --volr-tw-ease{syntax:"*";inherits:false}@keyframes spin{to{transform:rotate(360deg)}}@keyframes pulse{50%{opacity:.5}}';
|
|
377
|
+
var VOLR_SDK_CSS = '/*! tailwindcss v4.1.17 | MIT License | https://tailwindcss.com */\n@layer properties{@supports (((-webkit-hyphens:none)) and (not (margin-trim:inline))) or ((-moz-orient:inline) and (not (color:rgb(from red r g b)))){*,:before,:after,::backdrop{--volr-tw-translate-x:0;--volr-tw-translate-y:0;--volr-tw-translate-z:0;--volr-tw-space-y-reverse:0;--volr-tw-border-style:solid;--volr-tw-gradient-position:initial;--volr-tw-gradient-from:#0000;--volr-tw-gradient-via:#0000;--volr-tw-gradient-to:#0000;--volr-tw-gradient-stops:initial;--volr-tw-gradient-via-stops:initial;--volr-tw-gradient-from-position:0%;--volr-tw-gradient-via-position:50%;--volr-tw-gradient-to-position:100%;--volr-tw-leading:initial;--volr-tw-font-weight:initial;--volr-tw-shadow:0 0 #0000;--volr-tw-shadow-color:initial;--volr-tw-shadow-alpha:100%;--volr-tw-inset-shadow:0 0 #0000;--volr-tw-inset-shadow-color:initial;--volr-tw-inset-shadow-alpha:100%;--volr-tw-ring-color:initial;--volr-tw-ring-shadow:0 0 #0000;--volr-tw-inset-ring-color:initial;--volr-tw-inset-ring-shadow:0 0 #0000;--volr-tw-ring-inset:initial;--volr-tw-ring-offset-width:0px;--volr-tw-ring-offset-color:#fff;--volr-tw-ring-offset-shadow:0 0 #0000;--volr-tw-blur:initial;--volr-tw-brightness:initial;--volr-tw-contrast:initial;--volr-tw-grayscale:initial;--volr-tw-hue-rotate:initial;--volr-tw-invert:initial;--volr-tw-opacity:initial;--volr-tw-saturate:initial;--volr-tw-sepia:initial;--volr-tw-drop-shadow:initial;--volr-tw-drop-shadow-color:initial;--volr-tw-drop-shadow-alpha:100%;--volr-tw-drop-shadow-size:initial;--volr-tw-duration:initial;--volr-tw-ease:initial}}}@layer theme{:root,:host{--volr-font-sans:ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji";--volr-font-mono:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace;--volr-color-red-50:oklch(97.1% .013 17.38);--volr-color-red-200:oklch(88.5% .062 18.334);--volr-color-red-700:oklch(50.5% .213 27.518);--volr-color-green-600:oklch(62.7% .194 149.214);--volr-color-emerald-300:oklch(84.5% .143 164.978);--volr-color-emerald-400:oklch(76.5% .177 163.223);--volr-color-emerald-500:oklch(69.6% .17 162.48);--volr-color-emerald-600:oklch(59.6% .145 163.225);--volr-color-teal-400:oklch(77.7% .152 181.912);--volr-color-teal-500:oklch(70.4% .14 182.503);--volr-color-cyan-400:oklch(78.9% .154 211.53);--volr-color-slate-50:oklch(98.4% .003 247.858);--volr-color-slate-300:oklch(86.9% .022 252.894);--volr-color-slate-500:oklch(55.4% .046 257.417);--volr-color-slate-600:oklch(44.6% .043 257.281);--volr-color-gray-500:oklch(55.1% .027 264.364);--volr-color-black:#000;--volr-color-white:#fff;--volr-spacing:.25rem;--volr-container-md:28rem;--volr-container-4xl:56rem;--volr-text-xs:.75rem;--volr-text-xs--line-height:calc(1/.75);--volr-text-sm:.875rem;--volr-text-sm--line-height:calc(1.25/.875);--volr-text-base:1rem;--volr-text-base--line-height:calc(1.5/1);--volr-text-lg:1.125rem;--volr-text-lg--line-height:calc(1.75/1.125);--volr-text-xl:1.25rem;--volr-text-xl--line-height:calc(1.75/1.25);--volr-text-2xl:1.5rem;--volr-text-2xl--line-height:calc(2/1.5);--volr-text-8xl:6rem;--volr-text-8xl--line-height:1;--volr-font-weight-medium:500;--volr-font-weight-semibold:600;--volr-font-weight-bold:700;--volr-leading-relaxed:1.625;--volr-radius-md:.375rem;--volr-radius-lg:.5rem;--volr-radius-xl:.75rem;--volr-radius-2xl:1rem;--volr-radius-3xl:1.5rem;--volr-ease-out:cubic-bezier(0,0,.2,1);--volr-animate-spin:spin 1s linear infinite;--volr-animate-pulse:pulse 2s cubic-bezier(.4,0,.6,1)infinite;--volr-blur-2xl:40px;--volr-default-transition-duration:.15s;--volr-default-transition-timing-function:cubic-bezier(.4,0,.2,1);--volr-default-font-family:var(--volr-font-sans);--volr-default-mono-font-family:var(--volr-font-mono)}}@layer base{*,:after,:before,::backdrop{box-sizing:border-box;border:0 solid;margin:0;padding:0}::file-selector-button{box-sizing:border-box;border:0 solid;margin:0;padding:0}html,:host{-webkit-text-size-adjust:100%;tab-size:4;line-height:1.5;font-family:var(--volr-default-font-family,ui-sans-serif,system-ui,sans-serif,"Apple Color Emoji","Segoe UI Emoji","Segoe UI Symbol","Noto Color Emoji");font-feature-settings:var(--volr-default-font-feature-settings,normal);font-variation-settings:var(--volr-default-font-variation-settings,normal);-webkit-tap-highlight-color:transparent}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;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;-webkit-text-decoration:inherit;text-decoration:inherit}b,strong{font-weight:bolder}code,kbd,samp,pre{font-family:var(--volr-default-mono-font-family,ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,"Liberation Mono","Courier New",monospace);font-feature-settings:var(--volr-default-mono-font-feature-settings,normal);font-variation-settings:var(--volr-default-mono-font-variation-settings,normal);font-size:1em}small{font-size:80%}sub,sup{vertical-align:baseline;font-size:75%;line-height:0;position:relative}sub{bottom:-.25em}sup{top:-.5em}table{text-indent:0;border-color:inherit;border-collapse:collapse}:-moz-focusring{outline:auto}progress{vertical-align:baseline}summary{display:list-item}ol,ul,menu{list-style:none}img,svg,video,canvas,audio,iframe,embed,object{vertical-align:middle;display:block}img,video{max-width:100%;height:auto}button,input,select,optgroup,textarea{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}::file-selector-button{font:inherit;font-feature-settings:inherit;font-variation-settings:inherit;letter-spacing:inherit;color:inherit;opacity:1;background-color:#0000;border-radius:0}:where(select:is([multiple],[size])) optgroup{font-weight:bolder}:where(select:is([multiple],[size])) optgroup option{padding-inline-start:20px}::file-selector-button{margin-inline-end:4px}::placeholder{opacity:1}@supports (not ((-webkit-appearance:-apple-pay-button))) or (contain-intrinsic-size:1px){::placeholder{color:currentColor}@supports (color:color-mix(in lab, red, red)){::placeholder{color:color-mix(in oklab,currentcolor 50%,transparent)}}}textarea{resize:vertical}::-webkit-search-decoration{-webkit-appearance:none}::-webkit-date-and-time-value{min-height:1lh;text-align:inherit}::-webkit-datetime-edit{display:inline-flex}::-webkit-datetime-edit-fields-wrapper{padding:0}::-webkit-datetime-edit{padding-block:0}::-webkit-datetime-edit-year-field{padding-block:0}::-webkit-datetime-edit-month-field{padding-block:0}::-webkit-datetime-edit-day-field{padding-block:0}::-webkit-datetime-edit-hour-field{padding-block:0}::-webkit-datetime-edit-minute-field{padding-block:0}::-webkit-datetime-edit-second-field{padding-block:0}::-webkit-datetime-edit-millisecond-field{padding-block:0}::-webkit-datetime-edit-meridiem-field{padding-block:0}::-webkit-calendar-picker-indicator{line-height:1}:-moz-ui-invalid{box-shadow:none}button,input:where([type=button],[type=reset],[type=submit]){appearance:button}::file-selector-button{appearance:button}::-webkit-inner-spin-button{height:auto}::-webkit-outer-spin-button{height:auto}[hidden]:where(:not([hidden=until-found])){display:none!important}:host{--volr-primary-color:var(--volr-accent-color,#303030);--volr-font-family:var(--volr-custom-font,inherit);--volr-bg:#fff;--volr-bg-secondary:#f8fafc;--volr-bg-tertiary:#f1f5f9;--volr-text:#0f172a;--volr-text-secondary:#475569;--volr-text-muted:#94a3b8;--volr-border:#e2e8f0;--volr-border-strong:#cbd5e1;--volr-hover-bg:#f8fafc;--volr-error-bg:#fef2f2;--volr-error-border:#fecaca;--volr-error-text:#991b1b}:host([data-theme=dark]){--volr-bg:#1c1c1e;--volr-bg-secondary:#2c2c2e;--volr-bg-tertiary:#3a3a3c;--volr-text:#f5f5f7;--volr-text-secondary:#c7c7cc;--volr-text-muted:#8e8e93;--volr-border:#3a3a3c;--volr-border-strong:#48484a;--volr-hover-bg:#2c2c2e;--volr-error-bg:#3c1f1f;--volr-error-border:#7f1d1d;--volr-error-text:#fca5a5}*,:before,:after{box-sizing:border-box}*{font-family:var(--volr-font-family);color:var(--volr-text)}button,input,select,textarea{color:var(--volr-text);background-color:#0000}button{cursor:pointer;background-color:#0000}input::placeholder{color:var(--volr-text-muted)}h1,h2,h3{color:var(--volr-text);margin:0;font-weight:700}h1{font-size:1.875rem;line-height:2.25rem}h2{font-size:1.5rem;line-height:2rem}h3{font-size:1.25rem;line-height:1.75rem}p{margin:0}}@layer components{.volr-dialog-overlay{inset:calc(var(--volr-spacing)*0);z-index:40;background-color:var(--volr-color-black);position:fixed}@supports (color:color-mix(in lab, red, red)){.volr-dialog-overlay{background-color:color-mix(in oklab,var(--volr-color-black)45%,transparent)}}.volr-dialog-content{z-index:50;border-radius:var(--volr-radius-2xl);border-style:var(--volr-tw-border-style);padding:calc(var(--volr-spacing)*7);--volr-tw-shadow:0 20px 25px -5px var(--volr-tw-shadow-color,#0000001a),0 8px 10px -6px var(--volr-tw-shadow-color,#0000001a);box-shadow:var(--volr-tw-inset-shadow),var(--volr-tw-inset-ring-shadow),var(--volr-tw-ring-offset-shadow),var(--volr-tw-ring-shadow),var(--volr-tw-shadow);background-color:var(--volr-bg);border-width:1px;border-color:var(--volr-border-strong);width:calc(100% - 2rem);max-width:28rem;max-height:85vh;position:fixed;top:50%;left:50%;overflow-y:auto;transform:translate(-50%,-50%)}@media (max-width:640px){.volr-dialog-content{top:auto;right:calc(var(--volr-spacing)*0);bottom:calc(var(--volr-spacing)*0);left:calc(var(--volr-spacing)*0);border-radius:1.25rem 1.25rem 0 0;width:100%;max-width:100%;margin:0 auto;transform:translateY(0)}}.volr-dialog-close{top:calc(var(--volr-spacing)*4);right:calc(var(--volr-spacing)*4);height:calc(var(--volr-spacing)*8);width:calc(var(--volr-spacing)*8);color:var(--volr-text-muted);cursor:pointer;background-color:#0000;border:none;border-radius:3.40282e38px;justify-content:center;align-items:center;display:inline-flex;position:absolute}.volr-dialog-close:hover{background-color:var(--volr-hover-bg);color:var(--volr-text-secondary)}.volr-dialog-close:focus-visible{box-shadow:0 0 0 2px var(--volr-border-strong);outline:none}.volr-dialog-close-icon{height:calc(var(--volr-spacing)*4);width:calc(var(--volr-spacing)*4)}.volr-email-input{border:1px solid var(--volr-border-strong);background-color:var(--volr-bg);width:100%;color:var(--volr-text);border-radius:.5rem;outline:none;padding:.75rem .75rem .75rem 2.75rem;font-size:1rem;line-height:1.5}.volr-email-input::placeholder{color:var(--volr-text-muted)}.volr-email-input:focus{border-color:var(--volr-border-strong);box-shadow:0 0 0 2px var(--volr-border-strong)}.volr-option-button{border:1px solid var(--volr-border);background-color:var(--volr-bg);width:100%;color:var(--volr-text);cursor:pointer;border-radius:.5rem;align-items:center;gap:.75rem;padding:.75rem;transition:background-color .15s ease-out,border-color .15s ease-out,box-shadow .15s ease-out;display:flex}.volr-option-button:hover{background-color:var(--volr-hover-bg);border-color:var(--volr-border)}.volr-option-button:focus-visible{box-shadow:0 0 0 2px var(--volr-border-strong);outline:none}}@layer utilities{.volr\\:pointer-events-auto{pointer-events:auto}.volr\\:pointer-events-none{pointer-events:none}.volr\\:sr-only{clip-path:inset(50%);white-space:nowrap;border-width:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.volr\\:absolute{position:absolute}.volr\\:fixed{position:fixed}.volr\\:relative{position:relative}.volr\\:inset-0{inset:calc(var(--volr-spacing)*0)}.volr\\:-top-3{top:calc(var(--volr-spacing)*-3)}.volr\\:top-1\\/2{top:50%}.volr\\:-right-3{right:calc(var(--volr-spacing)*-3)}.volr\\:-right-4{right:calc(var(--volr-spacing)*-4)}.volr\\:right-2{right:calc(var(--volr-spacing)*2)}.volr\\:bottom-0{bottom:calc(var(--volr-spacing)*0)}.volr\\:-left-4{left:calc(var(--volr-spacing)*-4)}.volr\\:left-3{left:calc(var(--volr-spacing)*3)}.volr\\:-z-10{z-index:calc(10*-1)}.volr\\:z-10{z-index:10}.volr\\:z-20{z-index:20}.volr\\:z-40{z-index:40}.volr\\:z-50{z-index:50}.volr\\:mx-auto{margin-inline:auto}.volr\\:my-6{margin-block:calc(var(--volr-spacing)*6)}.volr\\:mt-0\\.5{margin-top:calc(var(--volr-spacing)*.5)}.volr\\:mt-1{margin-top:calc(var(--volr-spacing)*1)}.volr\\:mt-2{margin-top:calc(var(--volr-spacing)*2)}.volr\\:mt-3{margin-top:calc(var(--volr-spacing)*3)}.volr\\:mt-4{margin-top:calc(var(--volr-spacing)*4)}.volr\\:mt-6{margin-top:calc(var(--volr-spacing)*6)}.volr\\:mt-8{margin-top:calc(var(--volr-spacing)*8)}.volr\\:mb-1{margin-bottom:calc(var(--volr-spacing)*1)}.volr\\:mb-2{margin-bottom:calc(var(--volr-spacing)*2)}.volr\\:mb-3{margin-bottom:calc(var(--volr-spacing)*3)}.volr\\:mb-4{margin-bottom:calc(var(--volr-spacing)*4)}.volr\\:mb-5{margin-bottom:calc(var(--volr-spacing)*5)}.volr\\:mb-6{margin-bottom:calc(var(--volr-spacing)*6)}.volr\\:mb-8{margin-bottom:calc(var(--volr-spacing)*8)}.volr\\:-ml-2{margin-left:calc(var(--volr-spacing)*-2)}.volr\\:flex{display:flex}.volr\\:grid{display:grid}.volr\\:inline-block{display:inline-block}.volr\\:inline-flex{display:inline-flex}.volr\\:h-1{height:calc(var(--volr-spacing)*1)}.volr\\:h-1\\.5{height:calc(var(--volr-spacing)*1.5)}.volr\\:h-2{height:calc(var(--volr-spacing)*2)}.volr\\:h-3{height:calc(var(--volr-spacing)*3)}.volr\\:h-4{height:calc(var(--volr-spacing)*4)}.volr\\:h-6{height:calc(var(--volr-spacing)*6)}.volr\\:h-7{height:calc(var(--volr-spacing)*7)}.volr\\:h-8{height:calc(var(--volr-spacing)*8)}.volr\\:h-10{height:calc(var(--volr-spacing)*10)}.volr\\:h-14{height:calc(var(--volr-spacing)*14)}.volr\\:h-24{height:calc(var(--volr-spacing)*24)}.volr\\:h-40{height:calc(var(--volr-spacing)*40)}.volr\\:h-44{height:calc(var(--volr-spacing)*44)}.volr\\:h-48{height:calc(var(--volr-spacing)*48)}.volr\\:h-\\[0\\.8em\\]{height:.8em}.volr\\:h-\\[200px\\]{height:200px}.volr\\:h-full{height:100%}.volr\\:h-px{height:1px}.volr\\:max-h-36{max-height:calc(var(--volr-spacing)*36)}.volr\\:max-h-96{max-height:calc(var(--volr-spacing)*96)}.volr\\:max-h-\\[85vh\\]{max-height:85vh}.volr\\:max-h-\\[90vh\\]{max-height:90vh}.volr\\:min-h-\\[120px\\]{min-height:120px}.volr\\:min-h-\\[500px\\]{min-height:500px}.volr\\:w-1\\.5{width:calc(var(--volr-spacing)*1.5)}.volr\\:w-2{width:calc(var(--volr-spacing)*2)}.volr\\:w-6{width:calc(var(--volr-spacing)*6)}.volr\\:w-8{width:calc(var(--volr-spacing)*8)}.volr\\:w-10{width:calc(var(--volr-spacing)*10)}.volr\\:w-12{width:calc(var(--volr-spacing)*12)}.volr\\:w-24{width:calc(var(--volr-spacing)*24)}.volr\\:w-32{width:calc(var(--volr-spacing)*32)}.volr\\:w-36{width:calc(var(--volr-spacing)*36)}.volr\\:w-40{width:calc(var(--volr-spacing)*40)}.volr\\:w-44{width:calc(var(--volr-spacing)*44)}.volr\\:w-48{width:calc(var(--volr-spacing)*48)}.volr\\:w-\\[200px\\]{width:200px}.volr\\:w-auto{width:auto}.volr\\:w-full{width:100%}.volr\\:max-w-4xl{max-width:var(--volr-container-4xl)}.volr\\:max-w-full{max-width:100%}.volr\\:max-w-md{max-width:var(--volr-container-md)}.volr\\:max-w-none{max-width:none}.volr\\:min-w-0{min-width:calc(var(--volr-spacing)*0)}.volr\\:flex-1{flex:1}.volr\\:shrink-0{flex-shrink:0}.volr\\:-translate-y-1\\/2{--volr-tw-translate-y:calc(calc(1/2*100%)*-1);translate:var(--volr-tw-translate-x)var(--volr-tw-translate-y)}.volr\\:animate-\\[volrFadeIn_0\\.2s_ease-out\\]{animation:.2s ease-out volrFadeIn}.volr\\:animate-pulse{animation:var(--volr-animate-pulse)}.volr\\:animate-spin{animation:var(--volr-animate-spin)}.volr\\:list-inside{list-style-position:inside}.volr\\:list-decimal{list-style-type:decimal}.volr\\:grid-cols-\\[minmax\\(0\\,1\\.1fr\\)_minmax\\(0\\,1fr\\)\\]{grid-template-columns:minmax(0,1.1fr) minmax(0,1fr)}.volr\\:flex-col{flex-direction:column}.volr\\:items-baseline{align-items:baseline}.volr\\:items-center{align-items:center}.volr\\:items-end{align-items:flex-end}.volr\\:items-start{align-items:flex-start}.volr\\:justify-between{justify-content:space-between}.volr\\:justify-center{justify-content:center}.volr\\:gap-1{gap:calc(var(--volr-spacing)*1)}.volr\\:gap-2{gap:calc(var(--volr-spacing)*2)}.volr\\:gap-3{gap:calc(var(--volr-spacing)*3)}.volr\\:gap-4{gap:calc(var(--volr-spacing)*4)}:where(.volr\\:space-y-1>:not(:last-child)){--volr-tw-space-y-reverse:0;margin-block-start:calc(calc(var(--volr-spacing)*1)*var(--volr-tw-space-y-reverse));margin-block-end:calc(calc(var(--volr-spacing)*1)*calc(1 - var(--volr-tw-space-y-reverse)))}:where(.volr\\:space-y-2>:not(:last-child)){--volr-tw-space-y-reverse:0;margin-block-start:calc(calc(var(--volr-spacing)*2)*var(--volr-tw-space-y-reverse));margin-block-end:calc(calc(var(--volr-spacing)*2)*calc(1 - var(--volr-tw-space-y-reverse)))}:where(.volr\\:space-y-3>:not(:last-child)){--volr-tw-space-y-reverse:0;margin-block-start:calc(calc(var(--volr-spacing)*3)*var(--volr-tw-space-y-reverse));margin-block-end:calc(calc(var(--volr-spacing)*3)*calc(1 - var(--volr-tw-space-y-reverse)))}:where(.volr\\:space-y-4>:not(:last-child)){--volr-tw-space-y-reverse:0;margin-block-start:calc(calc(var(--volr-spacing)*4)*var(--volr-tw-space-y-reverse));margin-block-end:calc(calc(var(--volr-spacing)*4)*calc(1 - var(--volr-tw-space-y-reverse)))}.volr\\:truncate{text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.volr\\:overflow-hidden{overflow:hidden}.volr\\:overflow-visible{overflow:visible}.volr\\:overflow-y-auto{overflow-y:auto}.volr\\:rounded{border-radius:.25rem}.volr\\:rounded-2xl{border-radius:var(--volr-radius-2xl)}.volr\\:rounded-full{border-radius:3.40282e38px}.volr\\:rounded-lg{border-radius:var(--volr-radius-lg)}.volr\\:rounded-md{border-radius:var(--volr-radius-md)}.volr\\:rounded-xl{border-radius:var(--volr-radius-xl)}.volr\\:rounded-t-2xl{border-top-left-radius:var(--volr-radius-2xl);border-top-right-radius:var(--volr-radius-2xl)}.volr\\:rounded-t-3xl{border-top-left-radius:var(--volr-radius-3xl);border-top-right-radius:var(--volr-radius-3xl)}.volr\\:border{border-style:var(--volr-tw-border-style);border-width:1px}.volr\\:border-2{border-style:var(--volr-tw-border-style);border-width:2px}.volr\\:border-4{border-style:var(--volr-tw-border-style);border-width:4px}.volr\\:border-t{border-top-style:var(--volr-tw-border-style);border-top-width:1px}.volr\\:border-t-2{border-top-style:var(--volr-tw-border-style);border-top-width:2px}.volr\\:border-red-200{border-color:var(--volr-color-red-200)}.volr\\:border-slate-300{border-color:var(--volr-color-slate-300)}.volr\\:border-white{border-color:var(--volr-color-white)}.volr\\:border-t-slate-600{border-top-color:var(--volr-color-slate-600)}.volr\\:bg-black\\/45{background-color:var(--volr-color-black)}@supports (color:color-mix(in lab, red, red)){.volr\\:bg-black\\/45{background-color:color-mix(in oklab,var(--volr-color-black)45%,transparent)}}.volr\\:bg-cyan-400{background-color:var(--volr-color-cyan-400)}.volr\\:bg-emerald-300{background-color:var(--volr-color-emerald-300)}.volr\\:bg-emerald-400{background-color:var(--volr-color-emerald-400)}.volr\\:bg-red-50{background-color:var(--volr-color-red-50)}.volr\\:bg-slate-50{background-color:var(--volr-color-slate-50)}.volr\\:bg-teal-400{background-color:var(--volr-color-teal-400)}.volr\\:bg-white{background-color:var(--volr-color-white)}.volr\\:bg-linear-to-br{--volr-tw-gradient-position:to bottom right}@supports (background-image:linear-gradient(in lab, red, red)){.volr\\:bg-linear-to-br{--volr-tw-gradient-position:to bottom right in oklab}}.volr\\:bg-linear-to-br{background-image:linear-gradient(var(--volr-tw-gradient-stops))}.volr\\:from-emerald-400{--volr-tw-gradient-from:var(--volr-color-emerald-400);--volr-tw-gradient-stops:var(--volr-tw-gradient-via-stops,var(--volr-tw-gradient-position),var(--volr-tw-gradient-from)var(--volr-tw-gradient-from-position),var(--volr-tw-gradient-to)var(--volr-tw-gradient-to-position))}.volr\\:from-emerald-500{--volr-tw-gradient-from:var(--volr-color-emerald-500);--volr-tw-gradient-stops:var(--volr-tw-gradient-via-stops,var(--volr-tw-gradient-position),var(--volr-tw-gradient-from)var(--volr-tw-gradient-from-position),var(--volr-tw-gradient-to)var(--volr-tw-gradient-to-position))}.volr\\:to-teal-500{--volr-tw-gradient-to:var(--volr-color-teal-500);--volr-tw-gradient-stops:var(--volr-tw-gradient-via-stops,var(--volr-tw-gradient-position),var(--volr-tw-gradient-from)var(--volr-tw-gradient-from-position),var(--volr-tw-gradient-to)var(--volr-tw-gradient-to-position))}.volr\\:p-1{padding:calc(var(--volr-spacing)*1)}.volr\\:p-2{padding:calc(var(--volr-spacing)*2)}.volr\\:p-3{padding:calc(var(--volr-spacing)*3)}.volr\\:p-4{padding:calc(var(--volr-spacing)*4)}.volr\\:p-5{padding:calc(var(--volr-spacing)*5)}.volr\\:p-8{padding:calc(var(--volr-spacing)*8)}.volr\\:px-2{padding-inline:calc(var(--volr-spacing)*2)}.volr\\:px-3{padding-inline:calc(var(--volr-spacing)*3)}.volr\\:px-4{padding-inline:calc(var(--volr-spacing)*4)}.volr\\:py-0\\.5{padding-block:calc(var(--volr-spacing)*.5)}.volr\\:py-1\\.5{padding-block:calc(var(--volr-spacing)*1.5)}.volr\\:py-2\\.5{padding-block:calc(var(--volr-spacing)*2.5)}.volr\\:py-3{padding-block:calc(var(--volr-spacing)*3)}.volr\\:py-4{padding-block:calc(var(--volr-spacing)*4)}.volr\\:py-6{padding-block:calc(var(--volr-spacing)*6)}.volr\\:py-8{padding-block:calc(var(--volr-spacing)*8)}.volr\\:py-12{padding-block:calc(var(--volr-spacing)*12)}.volr\\:pt-2{padding-top:calc(var(--volr-spacing)*2)}.volr\\:pt-3{padding-top:calc(var(--volr-spacing)*3)}.volr\\:pt-4{padding-top:calc(var(--volr-spacing)*4)}.volr\\:pr-3{padding-right:calc(var(--volr-spacing)*3)}.volr\\:pb-2{padding-bottom:calc(var(--volr-spacing)*2)}.volr\\:pb-4{padding-bottom:calc(var(--volr-spacing)*4)}.volr\\:pl-11{padding-left:calc(var(--volr-spacing)*11)}.volr\\:text-center{text-align:center}.volr\\:text-left{text-align:left}.volr\\:align-baseline{vertical-align:baseline}.volr\\:font-mono{font-family:var(--volr-font-mono)}.volr\\:text-2xl{font-size:var(--volr-text-2xl);line-height:var(--volr-tw-leading,var(--volr-text-2xl--line-height))}.volr\\:text-8xl{font-size:var(--volr-text-8xl);line-height:var(--volr-tw-leading,var(--volr-text-8xl--line-height))}.volr\\:text-base{font-size:var(--volr-text-base);line-height:var(--volr-tw-leading,var(--volr-text-base--line-height))}.volr\\:text-lg{font-size:var(--volr-text-lg);line-height:var(--volr-tw-leading,var(--volr-text-lg--line-height))}.volr\\:text-sm{font-size:var(--volr-text-sm);line-height:var(--volr-tw-leading,var(--volr-text-sm--line-height))}.volr\\:text-xl{font-size:var(--volr-text-xl);line-height:var(--volr-tw-leading,var(--volr-text-xl--line-height))}.volr\\:text-xs{font-size:var(--volr-text-xs);line-height:var(--volr-tw-leading,var(--volr-text-xs--line-height))}.volr\\:leading-relaxed{--volr-tw-leading:var(--volr-leading-relaxed);line-height:var(--volr-leading-relaxed)}.volr\\:font-bold{--volr-tw-font-weight:var(--volr-font-weight-bold);font-weight:var(--volr-font-weight-bold)}.volr\\:font-medium{--volr-tw-font-weight:var(--volr-font-weight-medium);font-weight:var(--volr-font-weight-medium)}.volr\\:font-semibold{--volr-tw-font-weight:var(--volr-font-weight-semibold);font-weight:var(--volr-font-weight-semibold)}.volr\\:break-all{word-break:break-all}.volr\\:text-emerald-600{color:var(--volr-color-emerald-600)}.volr\\:text-gray-500{color:var(--volr-color-gray-500)}.volr\\:text-green-600{color:var(--volr-color-green-600)}.volr\\:text-red-700{color:var(--volr-color-red-700)}.volr\\:text-slate-500{color:var(--volr-color-slate-500)}.volr\\:text-slate-600{color:var(--volr-color-slate-600)}.volr\\:text-white{color:var(--volr-color-white)}.volr\\:capitalize{text-transform:capitalize}.volr\\:underline{text-decoration-line:underline}.volr\\:opacity-0{opacity:0}.volr\\:opacity-30{opacity:.3}.volr\\:shadow-2xl{--volr-tw-shadow:0 25px 50px -12px var(--volr-tw-shadow-color,#00000040);box-shadow:var(--volr-tw-inset-shadow),var(--volr-tw-inset-ring-shadow),var(--volr-tw-ring-offset-shadow),var(--volr-tw-ring-shadow),var(--volr-tw-shadow)}.volr\\:shadow-\\[0_-8px_30px_rgba\\(0\\,0\\,0\\,0\\.2\\)\\]{--volr-tw-shadow:0 -8px 30px var(--volr-tw-shadow-color,#0003);box-shadow:var(--volr-tw-inset-shadow),var(--volr-tw-inset-ring-shadow),var(--volr-tw-ring-offset-shadow),var(--volr-tw-ring-shadow),var(--volr-tw-shadow)}.volr\\:shadow-lg{--volr-tw-shadow:0 10px 15px -3px var(--volr-tw-shadow-color,#0000001a),0 4px 6px -4px var(--volr-tw-shadow-color,#0000001a);box-shadow:var(--volr-tw-inset-shadow),var(--volr-tw-inset-ring-shadow),var(--volr-tw-ring-offset-shadow),var(--volr-tw-ring-shadow),var(--volr-tw-shadow)}.volr\\:shadow-md{--volr-tw-shadow:0 4px 6px -1px var(--volr-tw-shadow-color,#0000001a),0 2px 4px -2px var(--volr-tw-shadow-color,#0000001a);box-shadow:var(--volr-tw-inset-shadow),var(--volr-tw-inset-ring-shadow),var(--volr-tw-ring-offset-shadow),var(--volr-tw-ring-shadow),var(--volr-tw-shadow)}.volr\\:shadow-sm{--volr-tw-shadow:0 1px 3px 0 var(--volr-tw-shadow-color,#0000001a),0 1px 2px -1px var(--volr-tw-shadow-color,#0000001a);box-shadow:var(--volr-tw-inset-shadow),var(--volr-tw-inset-ring-shadow),var(--volr-tw-ring-offset-shadow),var(--volr-tw-ring-shadow),var(--volr-tw-shadow)}.volr\\:shadow-xl{--volr-tw-shadow:0 20px 25px -5px var(--volr-tw-shadow-color,#0000001a),0 8px 10px -6px var(--volr-tw-shadow-color,#0000001a);box-shadow:var(--volr-tw-inset-shadow),var(--volr-tw-inset-ring-shadow),var(--volr-tw-ring-offset-shadow),var(--volr-tw-ring-shadow),var(--volr-tw-shadow)}.volr\\:shadow-emerald-500\\/50{--volr-tw-shadow-color:var(--volr-color-emerald-500)}@supports (color:color-mix(in lab, red, red)){.volr\\:shadow-emerald-500\\/50{--volr-tw-shadow-color:color-mix(in oklab,color-mix(in oklab,var(--volr-color-emerald-500)50%,transparent)var(--volr-tw-shadow-alpha),transparent)}}.volr\\:blur-2xl{--volr-tw-blur:blur(var(--volr-blur-2xl));filter:var(--volr-tw-blur,)var(--volr-tw-brightness,)var(--volr-tw-contrast,)var(--volr-tw-grayscale,)var(--volr-tw-hue-rotate,)var(--volr-tw-invert,)var(--volr-tw-saturate,)var(--volr-tw-sepia,)var(--volr-tw-drop-shadow,)}.volr\\:transition-all{transition-property:all;transition-timing-function:var(--volr-tw-ease,var(--volr-default-transition-timing-function));transition-duration:var(--volr-tw-duration,var(--volr-default-transition-duration))}.volr\\:transition-colors{transition-property:color,background-color,border-color,outline-color,text-decoration-color,fill,stroke,--volr-tw-gradient-from,--volr-tw-gradient-via,--volr-tw-gradient-to;transition-timing-function:var(--volr-tw-ease,var(--volr-default-transition-timing-function));transition-duration:var(--volr-tw-duration,var(--volr-default-transition-duration))}.volr\\:duration-300{--volr-tw-duration:.3s;transition-duration:.3s}.volr\\:duration-500{--volr-tw-duration:.5s;transition-duration:.5s}.volr\\:ease-out{--volr-tw-ease:var(--volr-ease-out);transition-timing-function:var(--volr-ease-out)}.volr\\:outline-none{--volr-tw-outline-style:none;outline-style:none}.volr\\:disabled\\:cursor-not-allowed:disabled{cursor:not-allowed}.volr-mono{font-family:ui-monospace,SFMono-Regular,Menlo,Monaco,Consolas,Liberation Mono,Courier New,monospace}.volr-text-secondary{color:var(--volr-text-secondary)}.volr-text-muted{color:var(--volr-text-muted)}.volr-bg-secondary{background-color:var(--volr-bg-secondary)}.volr-bg-tertiary{background-color:var(--volr-bg-tertiary)}.volr-border{border-color:var(--volr-border)}.volr-border-strong{border-color:var(--volr-border-strong)}.volr-divider-line{background-color:var(--volr-border)}.volr-error{background-color:var(--volr-error-bg);border-color:var(--volr-error-border);color:var(--volr-error-text)}.volr-hover:hover{background-color:var(--volr-hover-bg)}.volr-surface{background-color:var(--volr-bg)}}@property --volr-tw-translate-x{syntax:"*";inherits:false;initial-value:0}@property --volr-tw-translate-y{syntax:"*";inherits:false;initial-value:0}@property --volr-tw-translate-z{syntax:"*";inherits:false;initial-value:0}@property --volr-tw-space-y-reverse{syntax:"*";inherits:false;initial-value:0}@property --volr-tw-border-style{syntax:"*";inherits:false;initial-value:solid}@property --volr-tw-gradient-position{syntax:"*";inherits:false}@property --volr-tw-gradient-from{syntax:"<color>";inherits:false;initial-value:#0000}@property --volr-tw-gradient-via{syntax:"<color>";inherits:false;initial-value:#0000}@property --volr-tw-gradient-to{syntax:"<color>";inherits:false;initial-value:#0000}@property --volr-tw-gradient-stops{syntax:"*";inherits:false}@property --volr-tw-gradient-via-stops{syntax:"*";inherits:false}@property --volr-tw-gradient-from-position{syntax:"<length-percentage>";inherits:false;initial-value:0%}@property --volr-tw-gradient-via-position{syntax:"<length-percentage>";inherits:false;initial-value:50%}@property --volr-tw-gradient-to-position{syntax:"<length-percentage>";inherits:false;initial-value:100%}@property --volr-tw-leading{syntax:"*";inherits:false}@property --volr-tw-font-weight{syntax:"*";inherits:false}@property --volr-tw-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --volr-tw-shadow-color{syntax:"*";inherits:false}@property --volr-tw-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --volr-tw-inset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --volr-tw-inset-shadow-color{syntax:"*";inherits:false}@property --volr-tw-inset-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --volr-tw-ring-color{syntax:"*";inherits:false}@property --volr-tw-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --volr-tw-inset-ring-color{syntax:"*";inherits:false}@property --volr-tw-inset-ring-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --volr-tw-ring-inset{syntax:"*";inherits:false}@property --volr-tw-ring-offset-width{syntax:"<length>";inherits:false;initial-value:0}@property --volr-tw-ring-offset-color{syntax:"*";inherits:false;initial-value:#fff}@property --volr-tw-ring-offset-shadow{syntax:"*";inherits:false;initial-value:0 0 #0000}@property --volr-tw-blur{syntax:"*";inherits:false}@property --volr-tw-brightness{syntax:"*";inherits:false}@property --volr-tw-contrast{syntax:"*";inherits:false}@property --volr-tw-grayscale{syntax:"*";inherits:false}@property --volr-tw-hue-rotate{syntax:"*";inherits:false}@property --volr-tw-invert{syntax:"*";inherits:false}@property --volr-tw-opacity{syntax:"*";inherits:false}@property --volr-tw-saturate{syntax:"*";inherits:false}@property --volr-tw-sepia{syntax:"*";inherits:false}@property --volr-tw-drop-shadow{syntax:"*";inherits:false}@property --volr-tw-drop-shadow-color{syntax:"*";inherits:false}@property --volr-tw-drop-shadow-alpha{syntax:"<percentage>";inherits:false;initial-value:100%}@property --volr-tw-drop-shadow-size{syntax:"*";inherits:false}@property --volr-tw-duration{syntax:"*";inherits:false}@property --volr-tw-ease{syntax:"*";inherits:false}@keyframes spin{to{transform:rotate(360deg)}}@keyframes pulse{50%{opacity:.5}}';
|
|
364
378
|
function useResolvedTheme(theme = "light") {
|
|
365
379
|
const [resolvedTheme, setResolvedTheme] = useState(() => {
|
|
366
380
|
if (theme !== "system") return theme;
|
|
@@ -1777,317 +1791,12 @@ function CodeInputScreen({ email, onSubmit, onResend }) {
|
|
|
1777
1791
|
)
|
|
1778
1792
|
] });
|
|
1779
1793
|
}
|
|
1780
|
-
|
|
1781
|
-
// node_modules/@noble/hashes/_u64.js
|
|
1782
|
-
var U32_MASK64 = /* @__PURE__ */ BigInt(2 ** 32 - 1);
|
|
1783
|
-
var _32n = /* @__PURE__ */ BigInt(32);
|
|
1784
|
-
function fromBig(n, le = false) {
|
|
1785
|
-
if (le)
|
|
1786
|
-
return { h: Number(n & U32_MASK64), l: Number(n >> _32n & U32_MASK64) };
|
|
1787
|
-
return { h: Number(n >> _32n & U32_MASK64) | 0, l: Number(n & U32_MASK64) | 0 };
|
|
1788
|
-
}
|
|
1789
|
-
function split(lst, le = false) {
|
|
1790
|
-
const len = lst.length;
|
|
1791
|
-
let Ah = new Uint32Array(len);
|
|
1792
|
-
let Al = new Uint32Array(len);
|
|
1793
|
-
for (let i = 0; i < len; i++) {
|
|
1794
|
-
const { h, l } = fromBig(lst[i], le);
|
|
1795
|
-
[Ah[i], Al[i]] = [h, l];
|
|
1796
|
-
}
|
|
1797
|
-
return [Ah, Al];
|
|
1798
|
-
}
|
|
1799
|
-
var rotlSH = (h, l, s) => h << s | l >>> 32 - s;
|
|
1800
|
-
var rotlSL = (h, l, s) => l << s | h >>> 32 - s;
|
|
1801
|
-
var rotlBH = (h, l, s) => l << s - 32 | h >>> 64 - s;
|
|
1802
|
-
var rotlBL = (h, l, s) => h << s - 32 | l >>> 64 - s;
|
|
1803
|
-
|
|
1804
|
-
// node_modules/@noble/hashes/utils.js
|
|
1805
|
-
function isBytes(a) {
|
|
1806
|
-
return a instanceof Uint8Array || ArrayBuffer.isView(a) && a.constructor.name === "Uint8Array";
|
|
1807
|
-
}
|
|
1808
|
-
function anumber(n, title = "") {
|
|
1809
|
-
if (!Number.isSafeInteger(n) || n < 0) {
|
|
1810
|
-
const prefix = title && `"${title}" `;
|
|
1811
|
-
throw new Error(`${prefix}expected integer >= 0, got ${n}`);
|
|
1812
|
-
}
|
|
1813
|
-
}
|
|
1814
|
-
function abytes(value, length, title = "") {
|
|
1815
|
-
const bytes = isBytes(value);
|
|
1816
|
-
const len = value?.length;
|
|
1817
|
-
const needsLen = length !== void 0;
|
|
1818
|
-
if (!bytes || needsLen) {
|
|
1819
|
-
const prefix = title && `"${title}" `;
|
|
1820
|
-
const ofLen = "";
|
|
1821
|
-
const got = bytes ? `length=${len}` : `type=${typeof value}`;
|
|
1822
|
-
throw new Error(prefix + "expected Uint8Array" + ofLen + ", got " + got);
|
|
1823
|
-
}
|
|
1824
|
-
return value;
|
|
1825
|
-
}
|
|
1826
|
-
function aexists(instance, checkFinished = true) {
|
|
1827
|
-
if (instance.destroyed)
|
|
1828
|
-
throw new Error("Hash instance has been destroyed");
|
|
1829
|
-
if (checkFinished && instance.finished)
|
|
1830
|
-
throw new Error("Hash#digest() has already been called");
|
|
1831
|
-
}
|
|
1832
|
-
function aoutput(out, instance) {
|
|
1833
|
-
abytes(out, void 0, "digestInto() output");
|
|
1834
|
-
const min = instance.outputLen;
|
|
1835
|
-
if (out.length < min) {
|
|
1836
|
-
throw new Error('"digestInto() output" expected to be of length >=' + min);
|
|
1837
|
-
}
|
|
1838
|
-
}
|
|
1839
|
-
function u32(arr) {
|
|
1840
|
-
return new Uint32Array(arr.buffer, arr.byteOffset, Math.floor(arr.byteLength / 4));
|
|
1841
|
-
}
|
|
1842
|
-
function clean(...arrays) {
|
|
1843
|
-
for (let i = 0; i < arrays.length; i++) {
|
|
1844
|
-
arrays[i].fill(0);
|
|
1845
|
-
}
|
|
1846
|
-
}
|
|
1847
|
-
var isLE = /* @__PURE__ */ (() => new Uint8Array(new Uint32Array([287454020]).buffer)[0] === 68)();
|
|
1848
|
-
function byteSwap(word) {
|
|
1849
|
-
return word << 24 & 4278190080 | word << 8 & 16711680 | word >>> 8 & 65280 | word >>> 24 & 255;
|
|
1850
|
-
}
|
|
1851
|
-
function byteSwap32(arr) {
|
|
1852
|
-
for (let i = 0; i < arr.length; i++) {
|
|
1853
|
-
arr[i] = byteSwap(arr[i]);
|
|
1854
|
-
}
|
|
1855
|
-
return arr;
|
|
1856
|
-
}
|
|
1857
|
-
var swap32IfBE = isLE ? (u) => u : byteSwap32;
|
|
1858
|
-
var hasHexBuiltin = /* @__PURE__ */ (() => (
|
|
1859
|
-
// @ts-ignore
|
|
1860
|
-
typeof Uint8Array.from([]).toHex === "function" && typeof Uint8Array.fromHex === "function"
|
|
1861
|
-
))();
|
|
1862
|
-
var hexes = /* @__PURE__ */ Array.from({ length: 256 }, (_, i) => i.toString(16).padStart(2, "0"));
|
|
1863
|
-
function bytesToHex(bytes) {
|
|
1864
|
-
abytes(bytes);
|
|
1865
|
-
if (hasHexBuiltin)
|
|
1866
|
-
return bytes.toHex();
|
|
1867
|
-
let hex = "";
|
|
1868
|
-
for (let i = 0; i < bytes.length; i++) {
|
|
1869
|
-
hex += hexes[bytes[i]];
|
|
1870
|
-
}
|
|
1871
|
-
return hex;
|
|
1872
|
-
}
|
|
1873
|
-
function createHasher(hashCons, info = {}) {
|
|
1874
|
-
const hashC = (msg, opts) => hashCons(opts).update(msg).digest();
|
|
1875
|
-
const tmp = hashCons(void 0);
|
|
1876
|
-
hashC.outputLen = tmp.outputLen;
|
|
1877
|
-
hashC.blockLen = tmp.blockLen;
|
|
1878
|
-
hashC.create = (opts) => hashCons(opts);
|
|
1879
|
-
Object.assign(hashC, info);
|
|
1880
|
-
return Object.freeze(hashC);
|
|
1881
|
-
}
|
|
1882
|
-
|
|
1883
|
-
// node_modules/@noble/hashes/sha3.js
|
|
1884
|
-
var _0n = BigInt(0);
|
|
1885
|
-
var _1n = BigInt(1);
|
|
1886
|
-
var _2n = BigInt(2);
|
|
1887
|
-
var _7n = BigInt(7);
|
|
1888
|
-
var _256n = BigInt(256);
|
|
1889
|
-
var _0x71n = BigInt(113);
|
|
1890
|
-
var SHA3_PI = [];
|
|
1891
|
-
var SHA3_ROTL = [];
|
|
1892
|
-
var _SHA3_IOTA = [];
|
|
1893
|
-
for (let round = 0, R = _1n, x = 1, y = 0; round < 24; round++) {
|
|
1894
|
-
[x, y] = [y, (2 * x + 3 * y) % 5];
|
|
1895
|
-
SHA3_PI.push(2 * (5 * y + x));
|
|
1896
|
-
SHA3_ROTL.push((round + 1) * (round + 2) / 2 % 64);
|
|
1897
|
-
let t = _0n;
|
|
1898
|
-
for (let j = 0; j < 7; j++) {
|
|
1899
|
-
R = (R << _1n ^ (R >> _7n) * _0x71n) % _256n;
|
|
1900
|
-
if (R & _2n)
|
|
1901
|
-
t ^= _1n << (_1n << BigInt(j)) - _1n;
|
|
1902
|
-
}
|
|
1903
|
-
_SHA3_IOTA.push(t);
|
|
1904
|
-
}
|
|
1905
|
-
var IOTAS = split(_SHA3_IOTA, true);
|
|
1906
|
-
var SHA3_IOTA_H = IOTAS[0];
|
|
1907
|
-
var SHA3_IOTA_L = IOTAS[1];
|
|
1908
|
-
var rotlH = (h, l, s) => s > 32 ? rotlBH(h, l, s) : rotlSH(h, l, s);
|
|
1909
|
-
var rotlL = (h, l, s) => s > 32 ? rotlBL(h, l, s) : rotlSL(h, l, s);
|
|
1910
|
-
function keccakP(s, rounds = 24) {
|
|
1911
|
-
const B = new Uint32Array(5 * 2);
|
|
1912
|
-
for (let round = 24 - rounds; round < 24; round++) {
|
|
1913
|
-
for (let x = 0; x < 10; x++)
|
|
1914
|
-
B[x] = s[x] ^ s[x + 10] ^ s[x + 20] ^ s[x + 30] ^ s[x + 40];
|
|
1915
|
-
for (let x = 0; x < 10; x += 2) {
|
|
1916
|
-
const idx1 = (x + 8) % 10;
|
|
1917
|
-
const idx0 = (x + 2) % 10;
|
|
1918
|
-
const B0 = B[idx0];
|
|
1919
|
-
const B1 = B[idx0 + 1];
|
|
1920
|
-
const Th = rotlH(B0, B1, 1) ^ B[idx1];
|
|
1921
|
-
const Tl = rotlL(B0, B1, 1) ^ B[idx1 + 1];
|
|
1922
|
-
for (let y = 0; y < 50; y += 10) {
|
|
1923
|
-
s[x + y] ^= Th;
|
|
1924
|
-
s[x + y + 1] ^= Tl;
|
|
1925
|
-
}
|
|
1926
|
-
}
|
|
1927
|
-
let curH = s[2];
|
|
1928
|
-
let curL = s[3];
|
|
1929
|
-
for (let t = 0; t < 24; t++) {
|
|
1930
|
-
const shift = SHA3_ROTL[t];
|
|
1931
|
-
const Th = rotlH(curH, curL, shift);
|
|
1932
|
-
const Tl = rotlL(curH, curL, shift);
|
|
1933
|
-
const PI = SHA3_PI[t];
|
|
1934
|
-
curH = s[PI];
|
|
1935
|
-
curL = s[PI + 1];
|
|
1936
|
-
s[PI] = Th;
|
|
1937
|
-
s[PI + 1] = Tl;
|
|
1938
|
-
}
|
|
1939
|
-
for (let y = 0; y < 50; y += 10) {
|
|
1940
|
-
for (let x = 0; x < 10; x++)
|
|
1941
|
-
B[x] = s[y + x];
|
|
1942
|
-
for (let x = 0; x < 10; x++)
|
|
1943
|
-
s[y + x] ^= ~B[(x + 2) % 10] & B[(x + 4) % 10];
|
|
1944
|
-
}
|
|
1945
|
-
s[0] ^= SHA3_IOTA_H[round];
|
|
1946
|
-
s[1] ^= SHA3_IOTA_L[round];
|
|
1947
|
-
}
|
|
1948
|
-
clean(B);
|
|
1949
|
-
}
|
|
1950
|
-
var Keccak = class _Keccak {
|
|
1951
|
-
// NOTE: we accept arguments in bytes instead of bits here.
|
|
1952
|
-
constructor(blockLen, suffix, outputLen, enableXOF = false, rounds = 24) {
|
|
1953
|
-
__publicField(this, "state");
|
|
1954
|
-
__publicField(this, "pos", 0);
|
|
1955
|
-
__publicField(this, "posOut", 0);
|
|
1956
|
-
__publicField(this, "finished", false);
|
|
1957
|
-
__publicField(this, "state32");
|
|
1958
|
-
__publicField(this, "destroyed", false);
|
|
1959
|
-
__publicField(this, "blockLen");
|
|
1960
|
-
__publicField(this, "suffix");
|
|
1961
|
-
__publicField(this, "outputLen");
|
|
1962
|
-
__publicField(this, "enableXOF", false);
|
|
1963
|
-
__publicField(this, "rounds");
|
|
1964
|
-
this.blockLen = blockLen;
|
|
1965
|
-
this.suffix = suffix;
|
|
1966
|
-
this.outputLen = outputLen;
|
|
1967
|
-
this.enableXOF = enableXOF;
|
|
1968
|
-
this.rounds = rounds;
|
|
1969
|
-
anumber(outputLen, "outputLen");
|
|
1970
|
-
if (!(0 < blockLen && blockLen < 200))
|
|
1971
|
-
throw new Error("only keccak-f1600 function is supported");
|
|
1972
|
-
this.state = new Uint8Array(200);
|
|
1973
|
-
this.state32 = u32(this.state);
|
|
1974
|
-
}
|
|
1975
|
-
clone() {
|
|
1976
|
-
return this._cloneInto();
|
|
1977
|
-
}
|
|
1978
|
-
keccak() {
|
|
1979
|
-
swap32IfBE(this.state32);
|
|
1980
|
-
keccakP(this.state32, this.rounds);
|
|
1981
|
-
swap32IfBE(this.state32);
|
|
1982
|
-
this.posOut = 0;
|
|
1983
|
-
this.pos = 0;
|
|
1984
|
-
}
|
|
1985
|
-
update(data) {
|
|
1986
|
-
aexists(this);
|
|
1987
|
-
abytes(data);
|
|
1988
|
-
const { blockLen, state } = this;
|
|
1989
|
-
const len = data.length;
|
|
1990
|
-
for (let pos = 0; pos < len; ) {
|
|
1991
|
-
const take = Math.min(blockLen - this.pos, len - pos);
|
|
1992
|
-
for (let i = 0; i < take; i++)
|
|
1993
|
-
state[this.pos++] ^= data[pos++];
|
|
1994
|
-
if (this.pos === blockLen)
|
|
1995
|
-
this.keccak();
|
|
1996
|
-
}
|
|
1997
|
-
return this;
|
|
1998
|
-
}
|
|
1999
|
-
finish() {
|
|
2000
|
-
if (this.finished)
|
|
2001
|
-
return;
|
|
2002
|
-
this.finished = true;
|
|
2003
|
-
const { state, suffix, pos, blockLen } = this;
|
|
2004
|
-
state[pos] ^= suffix;
|
|
2005
|
-
if ((suffix & 128) !== 0 && pos === blockLen - 1)
|
|
2006
|
-
this.keccak();
|
|
2007
|
-
state[blockLen - 1] ^= 128;
|
|
2008
|
-
this.keccak();
|
|
2009
|
-
}
|
|
2010
|
-
writeInto(out) {
|
|
2011
|
-
aexists(this, false);
|
|
2012
|
-
abytes(out);
|
|
2013
|
-
this.finish();
|
|
2014
|
-
const bufferOut = this.state;
|
|
2015
|
-
const { blockLen } = this;
|
|
2016
|
-
for (let pos = 0, len = out.length; pos < len; ) {
|
|
2017
|
-
if (this.posOut >= blockLen)
|
|
2018
|
-
this.keccak();
|
|
2019
|
-
const take = Math.min(blockLen - this.posOut, len - pos);
|
|
2020
|
-
out.set(bufferOut.subarray(this.posOut, this.posOut + take), pos);
|
|
2021
|
-
this.posOut += take;
|
|
2022
|
-
pos += take;
|
|
2023
|
-
}
|
|
2024
|
-
return out;
|
|
2025
|
-
}
|
|
2026
|
-
xofInto(out) {
|
|
2027
|
-
if (!this.enableXOF)
|
|
2028
|
-
throw new Error("XOF is not possible for this instance");
|
|
2029
|
-
return this.writeInto(out);
|
|
2030
|
-
}
|
|
2031
|
-
xof(bytes) {
|
|
2032
|
-
anumber(bytes);
|
|
2033
|
-
return this.xofInto(new Uint8Array(bytes));
|
|
2034
|
-
}
|
|
2035
|
-
digestInto(out) {
|
|
2036
|
-
aoutput(out, this);
|
|
2037
|
-
if (this.finished)
|
|
2038
|
-
throw new Error("digest() was already called");
|
|
2039
|
-
this.writeInto(out);
|
|
2040
|
-
this.destroy();
|
|
2041
|
-
return out;
|
|
2042
|
-
}
|
|
2043
|
-
digest() {
|
|
2044
|
-
return this.digestInto(new Uint8Array(this.outputLen));
|
|
2045
|
-
}
|
|
2046
|
-
destroy() {
|
|
2047
|
-
this.destroyed = true;
|
|
2048
|
-
clean(this.state);
|
|
2049
|
-
}
|
|
2050
|
-
_cloneInto(to) {
|
|
2051
|
-
const { blockLen, suffix, outputLen, rounds, enableXOF } = this;
|
|
2052
|
-
to || (to = new _Keccak(blockLen, suffix, outputLen, enableXOF, rounds));
|
|
2053
|
-
to.state32.set(this.state32);
|
|
2054
|
-
to.pos = this.pos;
|
|
2055
|
-
to.posOut = this.posOut;
|
|
2056
|
-
to.finished = this.finished;
|
|
2057
|
-
to.rounds = rounds;
|
|
2058
|
-
to.suffix = suffix;
|
|
2059
|
-
to.outputLen = outputLen;
|
|
2060
|
-
to.enableXOF = enableXOF;
|
|
2061
|
-
to.destroyed = this.destroyed;
|
|
2062
|
-
return to;
|
|
2063
|
-
}
|
|
2064
|
-
};
|
|
2065
|
-
var genKeccak = (suffix, blockLen, outputLen, info = {}) => createHasher(() => new Keccak(blockLen, suffix, outputLen), info);
|
|
2066
|
-
var keccak_256 = /* @__PURE__ */ genKeccak(1, 136, 32);
|
|
2067
|
-
function toChecksumAddress(address) {
|
|
2068
|
-
const addr = address.toLowerCase().replace("0x", "");
|
|
2069
|
-
const hash = bytesToHex(keccak_256(new TextEncoder().encode(addr)));
|
|
2070
|
-
let checksummed = "0x";
|
|
2071
|
-
for (let i = 0; i < addr.length; i++) {
|
|
2072
|
-
if (parseInt(hash[i], 16) >= 8) {
|
|
2073
|
-
checksummed += addr[i].toUpperCase();
|
|
2074
|
-
} else {
|
|
2075
|
-
checksummed += addr[i];
|
|
2076
|
-
}
|
|
2077
|
-
}
|
|
2078
|
-
return checksummed;
|
|
2079
|
-
}
|
|
2080
1794
|
var isMobile = () => {
|
|
2081
1795
|
if (typeof window === "undefined") return false;
|
|
2082
1796
|
return /Android|webOS|iPhone|iPad|iPod|BlackBerry|IEMobile|Opera Mini/i.test(
|
|
2083
1797
|
navigator.userAgent
|
|
2084
1798
|
);
|
|
2085
1799
|
};
|
|
2086
|
-
var getMetaMaskDeepLink = () => {
|
|
2087
|
-
if (typeof window === "undefined") return "";
|
|
2088
|
-
const currentUrl = window.location.href;
|
|
2089
|
-
return `https://metamask.app.link/dapp/${currentUrl.replace(/^https?:\/\//, "")}`;
|
|
2090
|
-
};
|
|
2091
1800
|
function SiweLoginScreen({
|
|
2092
1801
|
isOpen = true,
|
|
2093
1802
|
wrapInModal = true,
|
|
@@ -2097,32 +1806,31 @@ function SiweLoginScreen({
|
|
|
2097
1806
|
onClose
|
|
2098
1807
|
}) {
|
|
2099
1808
|
const { t } = useI18n();
|
|
2100
|
-
const {
|
|
1809
|
+
const {
|
|
1810
|
+
signWithWallet,
|
|
1811
|
+
createSiweSession,
|
|
1812
|
+
checkSiweSession,
|
|
1813
|
+
getSiweSignUrl
|
|
1814
|
+
} = useVolrLogin();
|
|
2101
1815
|
const [isLoading, setIsLoading] = useState(false);
|
|
2102
1816
|
const [step, setStep] = useState("connect");
|
|
2103
1817
|
const [account, setAccount] = useState(null);
|
|
2104
1818
|
const [error, setError] = useState(null);
|
|
2105
|
-
const [walletConnector, setWalletConnector] = useState(
|
|
2106
|
-
void 0
|
|
2107
|
-
);
|
|
2108
1819
|
const [hasWallet, setHasWallet] = useState(null);
|
|
2109
1820
|
const [providers, setProviders] = useState([]);
|
|
2110
1821
|
const [isMobileDevice] = useState(isMobile());
|
|
2111
|
-
const
|
|
2112
|
-
|
|
2113
|
-
|
|
2114
|
-
|
|
2115
|
-
const provider = window.ethereum;
|
|
2116
|
-
if (provider.info?.rdns) {
|
|
2117
|
-
return provider.info.rdns;
|
|
2118
|
-
}
|
|
2119
|
-
if (provider.isMetaMask) return "io.metamask";
|
|
2120
|
-
if (provider.isCoinbaseWallet) return "com.coinbase.wallet";
|
|
2121
|
-
if (provider.isRabby) return "io.rabby";
|
|
2122
|
-
if (provider.isZerion) return "io.zerion";
|
|
2123
|
-
if (provider.isBraveWallet) return "com.brave.wallet";
|
|
2124
|
-
return "unknown";
|
|
1822
|
+
const [mobileSessionUrl, setMobileSessionUrl] = useState(null);
|
|
1823
|
+
const pollingRef = useRef(null);
|
|
1824
|
+
const hasEthereumProvider = () => {
|
|
1825
|
+
return typeof window !== "undefined" && !!window.ethereum;
|
|
2125
1826
|
};
|
|
1827
|
+
useEffect(() => {
|
|
1828
|
+
return () => {
|
|
1829
|
+
if (pollingRef.current) {
|
|
1830
|
+
clearInterval(pollingRef.current);
|
|
1831
|
+
}
|
|
1832
|
+
};
|
|
1833
|
+
}, []);
|
|
2126
1834
|
useEffect(() => {
|
|
2127
1835
|
if (typeof window === "undefined") return;
|
|
2128
1836
|
const handleAnnounceProvider = (event) => {
|
|
@@ -2148,7 +1856,6 @@ function SiweLoginScreen({
|
|
|
2148
1856
|
if (accounts.length > 0) {
|
|
2149
1857
|
setAccount(accounts[0]);
|
|
2150
1858
|
setStep("sign");
|
|
2151
|
-
setWalletConnector(detectWalletConnector());
|
|
2152
1859
|
}
|
|
2153
1860
|
} catch {
|
|
2154
1861
|
}
|
|
@@ -2171,7 +1878,48 @@ function SiweLoginScreen({
|
|
|
2171
1878
|
}
|
|
2172
1879
|
return null;
|
|
2173
1880
|
};
|
|
2174
|
-
const
|
|
1881
|
+
const startMobileSession = useCallback(async () => {
|
|
1882
|
+
setIsLoading(true);
|
|
1883
|
+
setError(null);
|
|
1884
|
+
try {
|
|
1885
|
+
const session = await createSiweSession();
|
|
1886
|
+
const url = getSiweSignUrl(session.id);
|
|
1887
|
+
setMobileSessionUrl(url);
|
|
1888
|
+
setStep("mobile-waiting");
|
|
1889
|
+
pollingRef.current = setInterval(async () => {
|
|
1890
|
+
try {
|
|
1891
|
+
const result = await checkSiweSession(session.id);
|
|
1892
|
+
if (result.status === "completed" && result.user) {
|
|
1893
|
+
if (pollingRef.current) {
|
|
1894
|
+
clearInterval(pollingRef.current);
|
|
1895
|
+
pollingRef.current = null;
|
|
1896
|
+
}
|
|
1897
|
+
onSuccess({
|
|
1898
|
+
userId: result.user.id,
|
|
1899
|
+
isNewUser: result.isNewUser || false,
|
|
1900
|
+
keyStorageType: result.user.keyStorageType ?? null,
|
|
1901
|
+
signerType: result.user.signerType ?? null
|
|
1902
|
+
});
|
|
1903
|
+
} else if (result.status === "expired") {
|
|
1904
|
+
if (pollingRef.current) {
|
|
1905
|
+
clearInterval(pollingRef.current);
|
|
1906
|
+
pollingRef.current = null;
|
|
1907
|
+
}
|
|
1908
|
+
setError(t("siwe.sessionExpired"));
|
|
1909
|
+
setStep("connect");
|
|
1910
|
+
setMobileSessionUrl(null);
|
|
1911
|
+
}
|
|
1912
|
+
} catch {
|
|
1913
|
+
}
|
|
1914
|
+
}, 3e3);
|
|
1915
|
+
} catch (err) {
|
|
1916
|
+
setError(err instanceof Error ? err.message : "Failed to create session");
|
|
1917
|
+
onError(err instanceof Error ? err : new Error("Failed to create session"));
|
|
1918
|
+
} finally {
|
|
1919
|
+
setIsLoading(false);
|
|
1920
|
+
}
|
|
1921
|
+
}, [createSiweSession, getSiweSignUrl, checkSiweSession, onSuccess, onError, t]);
|
|
1922
|
+
const handleConnectWallet = useCallback(async () => {
|
|
2175
1923
|
setError(null);
|
|
2176
1924
|
setIsLoading(true);
|
|
2177
1925
|
try {
|
|
@@ -2188,7 +1936,6 @@ function SiweLoginScreen({
|
|
|
2188
1936
|
}
|
|
2189
1937
|
setAccount(accounts[0]);
|
|
2190
1938
|
setStep("sign");
|
|
2191
|
-
setWalletConnector(detectWalletConnector());
|
|
2192
1939
|
} catch (err) {
|
|
2193
1940
|
const errorMessage = err instanceof Error ? err.message : "Failed to connect wallet";
|
|
2194
1941
|
setError(errorMessage);
|
|
@@ -2196,41 +1943,13 @@ function SiweLoginScreen({
|
|
|
2196
1943
|
} finally {
|
|
2197
1944
|
setIsLoading(false);
|
|
2198
1945
|
}
|
|
2199
|
-
};
|
|
2200
|
-
const handleSign = async () => {
|
|
1946
|
+
}, [t, onError]);
|
|
1947
|
+
const handleSign = useCallback(async () => {
|
|
2201
1948
|
if (!account) return;
|
|
2202
1949
|
setError(null);
|
|
2203
1950
|
setIsLoading(true);
|
|
2204
1951
|
try {
|
|
2205
|
-
const
|
|
2206
|
-
method: "eth_chainId"
|
|
2207
|
-
});
|
|
2208
|
-
const chainId = parseInt(chainIdHex, 16);
|
|
2209
|
-
const nonce = await requestSiweNonce();
|
|
2210
|
-
const domain = typeof window !== "undefined" ? window.location.host : "localhost";
|
|
2211
|
-
const origin = typeof window !== "undefined" ? window.location.origin : "http://localhost";
|
|
2212
|
-
const statement = "Sign in with Ethereum to continue";
|
|
2213
|
-
const issuedAt = (/* @__PURE__ */ new Date()).toISOString();
|
|
2214
|
-
const checksumAddress = toChecksumAddress(account);
|
|
2215
|
-
const message = `${domain} wants you to sign in with your Ethereum account:
|
|
2216
|
-
${checksumAddress}
|
|
2217
|
-
|
|
2218
|
-
${statement}
|
|
2219
|
-
|
|
2220
|
-
URI: ${origin}
|
|
2221
|
-
Version: 1
|
|
2222
|
-
Chain ID: ${chainId}
|
|
2223
|
-
Nonce: ${nonce}
|
|
2224
|
-
Issued At: ${issuedAt}`;
|
|
2225
|
-
const provider = getProvider();
|
|
2226
|
-
const signature = await provider.request({
|
|
2227
|
-
method: "personal_sign",
|
|
2228
|
-
params: [message, account]
|
|
2229
|
-
});
|
|
2230
|
-
const result = await verifySiweSignature(message, signature, {
|
|
2231
|
-
walletConnector,
|
|
2232
|
-
chainId
|
|
2233
|
-
});
|
|
1952
|
+
const result = await signWithWallet(account);
|
|
2234
1953
|
onSuccess({
|
|
2235
1954
|
userId: result.userId,
|
|
2236
1955
|
isNewUser: result.isNewUser,
|
|
@@ -2244,7 +1963,13 @@ Issued At: ${issuedAt}`;
|
|
|
2244
1963
|
} finally {
|
|
2245
1964
|
setIsLoading(false);
|
|
2246
1965
|
}
|
|
2247
|
-
};
|
|
1966
|
+
}, [account, signWithWallet, onSuccess, onError]);
|
|
1967
|
+
const copyUrlToClipboard = useCallback(() => {
|
|
1968
|
+
if (mobileSessionUrl) {
|
|
1969
|
+
navigator.clipboard.writeText(mobileSessionUrl);
|
|
1970
|
+
alert(t("siwe.urlCopied"));
|
|
1971
|
+
}
|
|
1972
|
+
}, [mobileSessionUrl, t]);
|
|
2248
1973
|
const content = /* @__PURE__ */ jsxs("div", { className: "volr:max-w-md volr:mx-auto", children: [
|
|
2249
1974
|
/* @__PURE__ */ jsxs(
|
|
2250
1975
|
Button,
|
|
@@ -2260,7 +1985,7 @@ Issued At: ${issuedAt}`;
|
|
|
2260
1985
|
}
|
|
2261
1986
|
),
|
|
2262
1987
|
/* @__PURE__ */ jsx("p", { className: "volr:text-2xl volr:font-semibold volr:mb-5", children: t("login.wallet.title") }),
|
|
2263
|
-
account && /* @__PURE__ */ jsxs("div", { className: "volr:p-3 volr:rounded-lg volr:mb-6 volr:flex volr:items-center volr:justify-between volr-bg-secondary", children: [
|
|
1988
|
+
account && step !== "mobile-waiting" && /* @__PURE__ */ jsxs("div", { className: "volr:p-3 volr:rounded-lg volr:mb-6 volr:flex volr:items-center volr:justify-between volr-bg-secondary", children: [
|
|
2264
1989
|
/* @__PURE__ */ jsxs("div", { children: [
|
|
2265
1990
|
/* @__PURE__ */ jsx("div", { className: "volr:text-xs volr:mb-1 volr-text-secondary", children: t("login.wallet.connected") }),
|
|
2266
1991
|
/* @__PURE__ */ jsxs("div", { className: "volr:text-sm volr:font-medium volr:font-mono", children: [
|
|
@@ -2272,18 +1997,60 @@ Issued At: ${issuedAt}`;
|
|
|
2272
1997
|
/* @__PURE__ */ jsx(CopyButton, { text: account })
|
|
2273
1998
|
] }),
|
|
2274
1999
|
error && /* @__PURE__ */ jsx("div", { className: "volr:mb-4 volr:p-3 volr:border volr:rounded-lg volr:text-sm volr-error", children: error }),
|
|
2275
|
-
hasWallet === false && !error && /* @__PURE__ */ jsx("div", { className: "volr:mb-4 volr:p-3 volr:border volr:rounded-lg volr:text-sm volr-text-secondary", children:
|
|
2276
|
-
|
|
2000
|
+
hasWallet === false && !error && !isMobileDevice && step === "connect" && /* @__PURE__ */ jsx("div", { className: "volr:mb-4 volr:p-3 volr:border volr:rounded-lg volr:text-sm volr-text-secondary", children: /* @__PURE__ */ jsx("p", { children: t("siwe.noWalletFound") }) }),
|
|
2001
|
+
step === "mobile-waiting" && mobileSessionUrl && /* @__PURE__ */ jsxs("div", { className: "volr:space-y-4", children: [
|
|
2002
|
+
/* @__PURE__ */ jsxs("div", { className: "volr:p-4 volr:border volr:rounded-lg volr:text-sm volr-bg-secondary", children: [
|
|
2003
|
+
/* @__PURE__ */ jsx("p", { className: "volr:font-medium volr:mb-3", children: t("siwe.mobileGuide") }),
|
|
2004
|
+
/* @__PURE__ */ jsxs("ol", { className: "volr:list-decimal volr:list-inside volr:space-y-1 volr:text-xs volr-text-secondary", children: [
|
|
2005
|
+
/* @__PURE__ */ jsx("li", { children: t("siwe.mobileStep1") }),
|
|
2006
|
+
/* @__PURE__ */ jsx("li", { children: t("siwe.mobileStep2") }),
|
|
2007
|
+
/* @__PURE__ */ jsx("li", { children: t("siwe.mobileStep3") })
|
|
2008
|
+
] })
|
|
2009
|
+
] }),
|
|
2010
|
+
/* @__PURE__ */ jsxs("div", { className: "volr:p-3 volr:border volr:rounded-lg volr:bg-slate-50", children: [
|
|
2011
|
+
/* @__PURE__ */ jsx("p", { className: "volr:text-xs volr:text-muted-foreground volr:mb-1", children: "Sign URL:" }),
|
|
2012
|
+
/* @__PURE__ */ jsx("p", { className: "volr:text-xs volr:font-mono volr:break-all volr:text-slate-600", children: mobileSessionUrl })
|
|
2013
|
+
] }),
|
|
2277
2014
|
/* @__PURE__ */ jsx(
|
|
2278
|
-
|
|
2015
|
+
Button,
|
|
2279
2016
|
{
|
|
2280
|
-
|
|
2281
|
-
|
|
2282
|
-
|
|
2017
|
+
variant: "primary",
|
|
2018
|
+
fullWidth: true,
|
|
2019
|
+
onClick: copyUrlToClipboard,
|
|
2020
|
+
children: t("siwe.copyUrl")
|
|
2021
|
+
}
|
|
2022
|
+
),
|
|
2023
|
+
/* @__PURE__ */ jsxs("div", { className: "volr:text-center volr:py-4", children: [
|
|
2024
|
+
/* @__PURE__ */ jsx("div", { className: "volr:animate-spin volr:w-6 volr:h-6 volr:border-2 volr:border-slate-300 volr:border-t-slate-600 volr:rounded-full volr:mx-auto" }),
|
|
2025
|
+
/* @__PURE__ */ jsx("p", { className: "volr:text-sm volr:text-muted-foreground volr:mt-3", children: t("siwe.waitingForSignature") })
|
|
2026
|
+
] }),
|
|
2027
|
+
/* @__PURE__ */ jsx(
|
|
2028
|
+
"button",
|
|
2029
|
+
{
|
|
2030
|
+
onClick: () => {
|
|
2031
|
+
if (pollingRef.current) {
|
|
2032
|
+
clearInterval(pollingRef.current);
|
|
2033
|
+
pollingRef.current = null;
|
|
2034
|
+
}
|
|
2035
|
+
setStep("connect");
|
|
2036
|
+
setMobileSessionUrl(null);
|
|
2037
|
+
},
|
|
2038
|
+
className: "volr:w-full volr:text-sm volr:text-slate-500 volr:underline",
|
|
2039
|
+
children: t("common.cancel")
|
|
2283
2040
|
}
|
|
2284
2041
|
)
|
|
2285
|
-
] })
|
|
2286
|
-
step === "connect"
|
|
2042
|
+
] }),
|
|
2043
|
+
isMobileDevice && !hasEthereumProvider() && step === "connect" && /* @__PURE__ */ jsx(
|
|
2044
|
+
Button,
|
|
2045
|
+
{
|
|
2046
|
+
variant: "primary",
|
|
2047
|
+
fullWidth: true,
|
|
2048
|
+
onClick: startMobileSession,
|
|
2049
|
+
disabled: isLoading,
|
|
2050
|
+
children: isLoading ? t("common.loading") : t("siwe.startMobileSession")
|
|
2051
|
+
}
|
|
2052
|
+
),
|
|
2053
|
+
!isMobileDevice && step === "connect" && /* @__PURE__ */ jsx(
|
|
2287
2054
|
Button,
|
|
2288
2055
|
{
|
|
2289
2056
|
variant: "primary",
|
|
@@ -2292,7 +2059,18 @@ Issued At: ${issuedAt}`;
|
|
|
2292
2059
|
disabled: isLoading || hasWallet === null,
|
|
2293
2060
|
children: isLoading || hasWallet === null ? t("common.loading") : t("login.wallet.connect")
|
|
2294
2061
|
}
|
|
2295
|
-
)
|
|
2062
|
+
),
|
|
2063
|
+
isMobileDevice && hasEthereumProvider() && step === "connect" && /* @__PURE__ */ jsx(
|
|
2064
|
+
Button,
|
|
2065
|
+
{
|
|
2066
|
+
variant: "primary",
|
|
2067
|
+
fullWidth: true,
|
|
2068
|
+
onClick: handleConnectWallet,
|
|
2069
|
+
disabled: isLoading,
|
|
2070
|
+
children: isLoading ? t("common.loading") : t("login.wallet.connect")
|
|
2071
|
+
}
|
|
2072
|
+
),
|
|
2073
|
+
step === "sign" && /* @__PURE__ */ jsx(
|
|
2296
2074
|
Button,
|
|
2297
2075
|
{
|
|
2298
2076
|
variant: "primary",
|
|
@@ -2710,7 +2488,7 @@ var DepositQRStatusOverlay = ({
|
|
|
2710
2488
|
/* @__PURE__ */ jsx(
|
|
2711
2489
|
"div",
|
|
2712
2490
|
{
|
|
2713
|
-
className: "volr:absolute volr:-top-3 volr:-right-3 volr:rounded-full volr:p-3 volr:bg-
|
|
2491
|
+
className: "volr:absolute volr:-top-3 volr:-right-3 volr:rounded-full volr:p-3 volr:bg-linear-to-br volr:from-emerald-400 volr:to-teal-500 volr:shadow-2xl volr:shadow-emerald-500/50 volr:border-4 volr:border-white volr:z-20",
|
|
2714
2492
|
style: {
|
|
2715
2493
|
animation: "volrBounceIn 0.5s cubic-bezier(0.68, -0.55, 0.265, 1.55) forwards"
|
|
2716
2494
|
},
|
|
@@ -2911,7 +2689,7 @@ var DepositCompletedToast = ({
|
|
|
2911
2689
|
children: [
|
|
2912
2690
|
/* @__PURE__ */ jsx("div", { className: "volr:flex volr:justify-center volr:pt-3 volr:pb-2", children: /* @__PURE__ */ jsx("div", { className: "volr:w-10 volr:h-1 volr:rounded-full volr-bg-tertiary" }) }),
|
|
2913
2691
|
/* @__PURE__ */ jsx("div", { className: "volr:px-4 volr:pb-4", children: /* @__PURE__ */ jsxs("div", { className: "volr:flex volr:items-start volr:gap-3", children: [
|
|
2914
|
-
/* @__PURE__ */ jsx("div", { className: "volr:shrink-0 volr:w-10 volr:h-10 volr:rounded-full volr:bg-
|
|
2692
|
+
/* @__PURE__ */ jsx("div", { className: "volr:shrink-0 volr:w-10 volr:h-10 volr:rounded-full volr:bg-linear-to-br volr:from-emerald-500 volr:to-teal-500 volr:flex volr:items-center volr:justify-center volr:shadow-md", children: /* @__PURE__ */ jsx(
|
|
2915
2693
|
"svg",
|
|
2916
2694
|
{
|
|
2917
2695
|
width: "20",
|
|
@@ -3701,11 +3479,6 @@ async function getCurrentChainId() {
|
|
|
3701
3479
|
});
|
|
3702
3480
|
return parseInt(chainIdHex, 16);
|
|
3703
3481
|
}
|
|
3704
|
-
/*! Bundled license information:
|
|
3705
|
-
|
|
3706
|
-
@noble/hashes/utils.js:
|
|
3707
|
-
(*! noble-hashes - MIT License (c) 2022 Paul Miller (paulmillr.com) *)
|
|
3708
|
-
*/
|
|
3709
3482
|
|
|
3710
3483
|
export { I18nContext, I18nProvider, MpcConnectView, PasskeyEnrollView, VolrUIProvider, getCurrentChainId, useI18n, useSwitchNetwork, useTranslation, useVolrModal, useVolrUI, useVolrUIOptional };
|
|
3711
3484
|
//# sourceMappingURL=index.js.map
|