@stableops/wallet-ui 0.2.0 → 0.3.0

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.css CHANGED
@@ -107,6 +107,8 @@
107
107
  text-transform: none;
108
108
  word-spacing: normal;
109
109
  animation: stableops-walletconnect-backdrop-in 160ms ease-out both;
110
+ -webkit-font-smoothing: antialiased;
111
+ -moz-osx-font-smoothing: grayscale;
110
112
  }
111
113
  .stableops-wc-sheet {
112
114
  position: relative;
@@ -119,7 +121,11 @@
119
121
  padding-bottom: max(0.75rem, env(safe-area-inset-bottom));
120
122
  background: var(--stableops-wc-surface);
121
123
  color: var(--stableops-wc-text);
122
- font-family: inherit;
124
+ font-family:
125
+ "Inter",
126
+ ui-sans-serif,
127
+ system-ui,
128
+ sans-serif;
123
129
  font-size: inherit;
124
130
  font-style: inherit;
125
131
  font-weight: inherit;
@@ -177,6 +183,11 @@
177
183
  text-align: center;
178
184
  text-overflow: ellipsis;
179
185
  white-space: nowrap;
186
+ font-family:
187
+ "Inter",
188
+ ui-sans-serif,
189
+ system-ui,
190
+ sans-serif;
180
191
  font-size: 0.875rem;
181
192
  font-weight: 600;
182
193
  line-height: 1.25;
@@ -1 +1 @@
1
- {"version":3,"sources":["../src/walletconnect-dialog.css"],"sourcesContent":["/* 语义色 token:优先读取 dashboard/shadcn 的 CSS 变量;未接入这些变量的宿主使用\n dashboard 当前 light/dark 默认值作为 fallback。主题色只有 --stableops-wc-brand\n 一个,可被 themeColor prop 内联覆盖。 */\n:root {\n --stableops-wc-backdrop: rgb(0 0 0 / 80%);\n --stableops-wc-surface: var(--background, oklch(1 0 0));\n --stableops-wc-text: var(--foreground, oklch(0.141 0.005 285.823));\n --stableops-wc-muted: var(--muted-foreground, oklch(0.552 0.016 285.938));\n --stableops-wc-border: var(--border, oklch(0.92 0.004 286.32));\n --stableops-wc-strong-border: var(--input, oklch(0.92 0.004 286.32));\n --stableops-wc-subtle: var(--muted, oklch(0.967 0.001 286.375));\n --stableops-wc-hover: var(--accent, #e8faf7);\n --stableops-wc-hover-text: var(--accent-foreground, #0f766e);\n --stableops-wc-shade: #000000;\n --stableops-wc-brand: var(--primary, #12233a);\n --stableops-wc-brand-text: var(--primary-foreground, oklch(0.985 0 0));\n --stableops-wc-copy-done-bg: var(--accent, #e8faf7);\n --stableops-wc-danger: var(--destructive, oklch(0.577 0.245 27.325));\n --stableops-wc-danger-text: var(--destructive-foreground, oklch(0.985 0 0));\n --stableops-wc-danger-border: color-mix(in oklab, var(--stableops-wc-danger) 25%, transparent);\n --stableops-wc-danger-bg: color-mix(\n in oklab,\n var(--stableops-wc-danger) 8%,\n var(--stableops-wc-surface)\n );\n}\n\n@media (prefers-color-scheme: dark) {\n :root {\n --stableops-wc-surface: var(--background, oklch(0.141 0.005 285.823));\n --stableops-wc-text: var(--foreground, oklch(0.985 0 0));\n --stableops-wc-muted: var(--muted-foreground, oklch(0.705 0.015 286.067));\n --stableops-wc-border: var(--border, oklch(1 0 0 / 10%));\n --stableops-wc-strong-border: var(--input, oklch(1 0 0 / 15%));\n --stableops-wc-subtle: var(--muted, oklch(0.274 0.006 286.033));\n --stableops-wc-hover: var(--accent, oklch(0.274 0.006 286.033));\n --stableops-wc-hover-text: var(--accent-foreground, oklch(0.985 0 0));\n --stableops-wc-shade: #ffffff;\n --stableops-wc-brand: var(--primary, oklch(0.92 0.004 286.32));\n --stableops-wc-brand-text: var(--primary-foreground, oklch(0.21 0.006 285.885));\n --stableops-wc-copy-done-bg: var(--accent, oklch(0.274 0.006 286.033));\n --stableops-wc-danger: var(--destructive, oklch(0.704 0.191 22.216));\n --stableops-wc-danger-text: var(--destructive-foreground, oklch(0.985 0 0));\n }\n}\n\n@keyframes stableops-walletconnect-backdrop-in {\n from {\n opacity: 0;\n }\n to {\n opacity: 1;\n }\n}\n\n@keyframes stableops-walletconnect-sheet-in {\n from {\n opacity: 0;\n transform: translateY(1.25rem);\n }\n to {\n opacity: 1;\n transform: translateY(0);\n }\n}\n\n@media (min-width: 640px) {\n @keyframes stableops-walletconnect-sheet-in {\n from {\n opacity: 0;\n transform: translateY(0.375rem) scale(0.98);\n }\n to {\n opacity: 1;\n transform: translateY(0) scale(1);\n }\n }\n}\n\n.stableops-wc-backdrop {\n position: fixed;\n inset: 0;\n z-index: 50;\n display: flex;\n align-items: flex-end;\n justify-content: center;\n margin: 0;\n padding: 0;\n background: var(--stableops-wc-backdrop);\n font-family:\n Inter, \"Inter Fallback\", ui-sans-serif, system-ui, -apple-system, BlinkMacSystemFont,\n \"Segoe UI\", sans-serif;\n font-size: 14px;\n font-style: normal;\n font-weight: 400;\n font-stretch: normal;\n font-feature-settings: normal;\n font-kerning: auto;\n font-language-override: normal;\n font-optical-sizing: auto;\n font-size-adjust: none;\n font-variant-alternates: normal;\n font-variant-caps: normal;\n font-variant-east-asian: normal;\n font-variant-emoji: normal;\n font-variant-ligatures: normal;\n font-variant-numeric: normal;\n font-variant-position: normal;\n font-variation-settings: normal;\n letter-spacing: 0;\n line-height: 1.4;\n text-transform: none;\n word-spacing: normal;\n animation: stableops-walletconnect-backdrop-in 160ms ease-out both;\n}\n\n.stableops-wc-sheet {\n position: relative;\n width: 100%;\n max-width: 28rem;\n max-height: min(90dvh, calc(100vh - 1rem));\n overflow: hidden;\n border: 1px solid var(--stableops-wc-border);\n border-radius: 1rem 1rem 0 0;\n padding-bottom: max(0.75rem, env(safe-area-inset-bottom));\n background: var(--stableops-wc-surface);\n color: var(--stableops-wc-text);\n font-family: inherit;\n font-size: inherit;\n font-style: inherit;\n font-weight: inherit;\n font-stretch: inherit;\n font-feature-settings: inherit;\n font-kerning: inherit;\n font-language-override: inherit;\n font-optical-sizing: inherit;\n font-size-adjust: inherit;\n font-variant-alternates: inherit;\n font-variant-caps: inherit;\n font-variant-east-asian: inherit;\n font-variant-emoji: inherit;\n font-variant-ligatures: inherit;\n font-variant-numeric: inherit;\n font-variant-position: inherit;\n font-variation-settings: inherit;\n letter-spacing: inherit;\n line-height: inherit;\n text-transform: inherit;\n word-spacing: inherit;\n box-shadow:\n 0 10px 15px -3px rgb(0 0 0 / 10%),\n 0 4px 6px -4px rgb(0 0 0 / 10%);\n animation: stableops-walletconnect-sheet-in 220ms cubic-bezier(0.2, 0, 0, 1) both;\n}\n\n.stableops-wc-sheet,\n.stableops-wc-sheet * {\n box-sizing: border-box;\n}\n\n.stableops-wc-sheet :where(button, a, p, span, img) {\n margin: 0;\n font: inherit;\n color: inherit;\n letter-spacing: inherit;\n line-height: inherit;\n text-decoration: none;\n text-transform: inherit;\n word-spacing: inherit;\n}\n\n.stableops-wc-sheet :where(img) {\n display: block;\n max-width: 100%;\n height: auto;\n}\n\n.stableops-wc-header {\n position: relative;\n display: flex;\n align-items: center;\n justify-content: center;\n padding: 1.5rem 1.5rem 0;\n}\n\n.stableops-wc-title {\n min-width: 0;\n flex: 1;\n overflow: hidden;\n text-align: center;\n text-overflow: ellipsis;\n white-space: nowrap;\n font-size: 0.875rem;\n font-weight: 600;\n line-height: 1.25;\n}\n\n.stableops-wc-icon-button {\n position: absolute;\n display: flex;\n width: 2rem;\n height: 2rem;\n cursor: pointer;\n align-items: center;\n justify-content: center;\n border: 0;\n border-radius: 0.375rem;\n background: transparent;\n color: var(--stableops-wc-muted);\n line-height: 1;\n}\n\n.stableops-wc-icon-button:hover {\n background: var(--stableops-wc-hover);\n color: var(--stableops-wc-text);\n}\n\n.stableops-wc-back-button {\n left: 1.25rem;\n}\n\n.stableops-wc-close-button {\n right: 1.25rem;\n}\n\n.stableops-wc-icon,\n.stableops-wc-action-icon {\n width: 1rem;\n height: 1rem;\n}\n\n.stableops-wc-body {\n padding: 1.5rem;\n}\n\n.stableops-wc-qr-frame {\n position: relative;\n width: 100%;\n max-width: 12rem;\n aspect-ratio: 1 / 1;\n margin: 0 auto;\n border: 1px solid rgb(15 28 46 / 8%);\n border-radius: 1rem;\n padding: 1rem;\n background: #ffffff;\n overflow: hidden;\n}\n\n.stableops-wc-qr-image {\n width: 100%;\n height: 100%;\n object-fit: contain;\n}\n\n.stableops-wc-qr-placeholder {\n opacity: 0.9;\n}\n\n.stableops-wc-centered-overlay,\n.stableops-wc-loading-overlay {\n position: absolute;\n inset: 0;\n display: flex;\n align-items: center;\n justify-content: center;\n}\n\n.stableops-wc-loading-overlay {\n inset: 0.5rem;\n border-radius: 0.5rem;\n background: rgb(255 255 255 / 60%);\n backdrop-filter: blur(4px);\n}\n\n.stableops-wc-wallet-chip {\n border-radius: 0.75rem;\n padding: 0.25rem;\n background: #ffffff;\n box-shadow:\n 0 4px 6px -1px rgb(0 0 0 / 10%),\n 0 2px 4px -2px rgb(0 0 0 / 10%);\n outline: 1px solid rgb(0 0 0 / 5%);\n}\n\n.stableops-wc-refresh-button {\n display: inline-flex;\n min-width: 6.5rem;\n cursor: pointer;\n align-items: center;\n justify-content: center;\n gap: 0.375rem;\n border: 1px solid rgb(0 0 0 / 8%);\n border-radius: 0.75rem;\n padding: 0.625rem 0.75rem;\n background: #ffffff;\n color: var(--stableops-wc-text);\n box-shadow:\n 0 4px 6px -1px rgb(0 0 0 / 10%),\n 0 2px 4px -2px rgb(0 0 0 / 10%);\n font-size: 0.8125rem;\n font-weight: 600;\n line-height: 1.25;\n}\n\n.stableops-wc-refresh-button:hover {\n background: var(--stableops-wc-hover);\n}\n\n.stableops-wc-refresh-icon {\n width: 1rem;\n height: 1rem;\n color: var(--stableops-wc-brand);\n}\n\n.stableops-wc-wallet-logo,\n.stableops-wc-wallet-fallback {\n display: flex;\n width: 3rem;\n height: 3rem;\n flex-shrink: 0;\n align-items: center;\n justify-content: center;\n border-radius: 0.5rem;\n box-shadow: 0 1px 2px 0 rgb(0 0 0 / 5%);\n outline: 1px solid rgb(0 0 0 / 5%);\n}\n\n.stableops-wc-wallet-logo {\n object-fit: cover;\n}\n\n.stableops-wc-wallet-chip .stableops-wc-wallet-logo,\n.stableops-wc-wallet-chip .stableops-wc-wallet-fallback {\n width: 2.25rem;\n height: 2.25rem;\n border-radius: 0.375rem;\n}\n\n.stableops-wc-wallet-fallback {\n color: #ffffff;\n font-size: 0.75rem;\n font-weight: 600;\n line-height: 1;\n}\n\n.stableops-wc-empty-qr {\n display: flex;\n width: 100%;\n height: 100%;\n flex-direction: column;\n align-items: center;\n justify-content: center;\n gap: 0.5rem;\n padding: 0 0.75rem;\n text-align: center;\n font-size: 0.75rem;\n line-height: 1.4;\n color: var(--stableops-wc-muted);\n}\n\n.stableops-wc-spinner {\n width: 1.5rem;\n height: 1.5rem;\n animation: stableops-wc-spin 1s linear infinite;\n}\n\n@keyframes stableops-wc-spin {\n to {\n transform: rotate(360deg);\n }\n}\n\n.stableops-wc-muted-spinner {\n color: #9ca3af;\n}\n\n.stableops-wc-error-icon {\n width: 1.75rem;\n height: 1.75rem;\n color: var(--stableops-wc-danger);\n}\n\n.stableops-wc-help-text {\n margin: 1.25rem 0 0;\n text-align: center;\n font-size: 0.875rem;\n font-weight: 500;\n line-height: 1.4;\n}\n\n.stableops-wc-separator {\n display: flex;\n align-items: center;\n gap: 0.75rem;\n margin: 1rem 0;\n font-size: 0.75rem;\n line-height: 1.4;\n color: var(--stableops-wc-muted);\n}\n\n.stableops-wc-line {\n height: 1px;\n flex: 1;\n background: var(--stableops-wc-border);\n}\n\n.stableops-wc-spacer {\n height: 1rem;\n}\n\n.stableops-wc-actions {\n display: flex;\n flex-direction: column;\n gap: 0.5rem;\n}\n\n.stableops-wc-primary-action,\n.stableops-wc-secondary-action {\n display: inline-flex;\n min-height: 2.5rem;\n flex: 1;\n cursor: pointer;\n align-items: center;\n justify-content: center;\n gap: 0.5rem;\n border-radius: 0.5rem;\n padding: 0.5rem 1rem;\n text-align: center;\n font-size: 0.875rem;\n font-weight: 500;\n line-height: 1.25;\n text-decoration: none;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n\n.stableops-wc-primary-action {\n border: 1px solid transparent;\n background: var(--stableops-wc-brand);\n color: var(--stableops-wc-brand-text);\n box-shadow:\n 0 1px 3px 0 rgb(0 0 0 / 10%),\n 0 1px 2px -1px rgb(0 0 0 / 10%);\n}\n\n.stableops-wc-button-action {\n font: inherit;\n}\n\n.stableops-wc-primary-action:hover {\n background: color-mix(in srgb, var(--stableops-wc-brand) 82%, var(--stableops-wc-shade));\n}\n\n.stableops-wc-secondary-action {\n border: 1px solid var(--stableops-wc-strong-border);\n background: var(--stableops-wc-surface);\n color: var(--stableops-wc-text);\n}\n\n.stableops-wc-secondary-action:hover {\n background: var(--stableops-wc-hover);\n color: var(--stableops-wc-hover-text);\n}\n\n.stableops-wc-secondary-action:disabled,\n.stableops-wc-disabled-link {\n cursor: not-allowed;\n opacity: 0.5;\n pointer-events: none;\n}\n\n.stableops-wc-check-icon {\n color: color-mix(in srgb, var(--stableops-wc-brand) 82%, var(--stableops-wc-shade));\n}\n\n.stableops-wc-copy-done {\n border-color: color-mix(in srgb, var(--stableops-wc-brand) 35%, transparent);\n background: var(--stableops-wc-copy-done-bg);\n color: color-mix(in srgb, var(--stableops-wc-brand) 82%, var(--stableops-wc-shade));\n}\n\n.stableops-wc-wallet-grid {\n display: grid;\n grid-template-columns: repeat(3, minmax(0, 1fr));\n gap: 0.5rem 1rem;\n overflow-y: auto;\n padding: 1rem;\n}\n\n.stableops-wc-wallet-button {\n display: flex;\n cursor: pointer;\n flex-direction: column;\n align-items: center;\n gap: 0.5rem;\n border: 1px solid transparent;\n border-radius: 0.75rem;\n background: transparent;\n padding: 1rem 0.5rem;\n text-align: center;\n color: var(--stableops-wc-text);\n}\n\n.stableops-wc-wallet-button:hover {\n border-color: color-mix(in srgb, var(--stableops-wc-brand) 40%, transparent);\n background: var(--stableops-wc-hover);\n color: var(--stableops-wc-hover-text);\n}\n\n.stableops-wc-wallet-button:disabled {\n cursor: not-allowed;\n opacity: 0.5;\n}\n\n.stableops-wc-wallet-button span {\n width: 100%;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n font-size: 0.75rem;\n font-weight: 500;\n}\n\n.stableops-wc-error-box {\n margin: 0 1.25rem 1.25rem;\n border: 1px solid var(--stableops-wc-danger-border);\n border-radius: 0.5rem;\n background: var(--stableops-wc-danger-bg);\n padding: 0.625rem;\n text-align: center;\n font-size: 0.75rem;\n line-height: 1.4;\n color: var(--stableops-wc-danger);\n}\n\n@media (min-width: 640px) {\n .stableops-wc-backdrop {\n align-items: center;\n padding: 1rem;\n }\n\n .stableops-wc-sheet {\n max-height: calc(100vh - 2rem);\n border-radius: 1rem;\n padding-bottom: 0;\n }\n\n .stableops-wc-actions {\n flex-direction: row;\n }\n}\n"],"mappings":"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","names":[]}
1
+ {"version":3,"sources":["../src/walletconnect-dialog.css"],"sourcesContent":["/* 语义色 token:优先读取 dashboard/shadcn 的 CSS 变量;未接入这些变量的宿主使用\n dashboard 当前 light/dark 默认值作为 fallback。主题色只有 --stableops-wc-brand\n 一个,可被 themeColor prop 内联覆盖。 */\n:root {\n --stableops-wc-backdrop: rgb(0 0 0 / 80%);\n --stableops-wc-surface: var(--background, oklch(1 0 0));\n --stableops-wc-text: var(--foreground, oklch(0.141 0.005 285.823));\n --stableops-wc-muted: var(--muted-foreground, oklch(0.552 0.016 285.938));\n --stableops-wc-border: var(--border, oklch(0.92 0.004 286.32));\n --stableops-wc-strong-border: var(--input, oklch(0.92 0.004 286.32));\n --stableops-wc-subtle: var(--muted, oklch(0.967 0.001 286.375));\n --stableops-wc-hover: var(--accent, #e8faf7);\n --stableops-wc-hover-text: var(--accent-foreground, #0f766e);\n --stableops-wc-shade: #000000;\n --stableops-wc-brand: var(--primary, #12233a);\n --stableops-wc-brand-text: var(--primary-foreground, oklch(0.985 0 0));\n --stableops-wc-copy-done-bg: var(--accent, #e8faf7);\n --stableops-wc-danger: var(--destructive, oklch(0.577 0.245 27.325));\n --stableops-wc-danger-text: var(--destructive-foreground, oklch(0.985 0 0));\n --stableops-wc-danger-border: color-mix(in oklab, var(--stableops-wc-danger) 25%, transparent);\n --stableops-wc-danger-bg: color-mix(\n in oklab,\n var(--stableops-wc-danger) 8%,\n var(--stableops-wc-surface)\n );\n}\n\n@media (prefers-color-scheme: dark) {\n :root {\n --stableops-wc-surface: var(--background, oklch(0.141 0.005 285.823));\n --stableops-wc-text: var(--foreground, oklch(0.985 0 0));\n --stableops-wc-muted: var(--muted-foreground, oklch(0.705 0.015 286.067));\n --stableops-wc-border: var(--border, oklch(1 0 0 / 10%));\n --stableops-wc-strong-border: var(--input, oklch(1 0 0 / 15%));\n --stableops-wc-subtle: var(--muted, oklch(0.274 0.006 286.033));\n --stableops-wc-hover: var(--accent, oklch(0.274 0.006 286.033));\n --stableops-wc-hover-text: var(--accent-foreground, oklch(0.985 0 0));\n --stableops-wc-shade: #ffffff;\n --stableops-wc-brand: var(--primary, oklch(0.92 0.004 286.32));\n --stableops-wc-brand-text: var(--primary-foreground, oklch(0.21 0.006 285.885));\n --stableops-wc-copy-done-bg: var(--accent, oklch(0.274 0.006 286.033));\n --stableops-wc-danger: var(--destructive, oklch(0.704 0.191 22.216));\n --stableops-wc-danger-text: var(--destructive-foreground, oklch(0.985 0 0));\n }\n}\n\n@keyframes stableops-walletconnect-backdrop-in {\n from {\n opacity: 0;\n }\n to {\n opacity: 1;\n }\n}\n\n@keyframes stableops-walletconnect-sheet-in {\n from {\n opacity: 0;\n transform: translateY(1.25rem);\n }\n to {\n opacity: 1;\n transform: translateY(0);\n }\n}\n\n@media (min-width: 640px) {\n @keyframes stableops-walletconnect-sheet-in {\n from {\n opacity: 0;\n transform: translateY(0.375rem) scale(0.98);\n }\n to {\n opacity: 1;\n transform: translateY(0) scale(1);\n }\n }\n}\n\n.stableops-wc-backdrop {\n position: fixed;\n inset: 0;\n z-index: 50;\n display: flex;\n align-items: flex-end;\n justify-content: center;\n margin: 0;\n padding: 0;\n background: var(--stableops-wc-backdrop);\n font-family:\n Inter,\n 'Inter Fallback',\n ui-sans-serif,\n system-ui,\n -apple-system,\n BlinkMacSystemFont,\n 'Segoe UI',\n sans-serif;\n font-size: 14px;\n font-style: normal;\n font-weight: 400;\n font-stretch: normal;\n font-feature-settings: normal;\n font-kerning: auto;\n font-language-override: normal;\n font-optical-sizing: auto;\n font-size-adjust: none;\n font-variant-alternates: normal;\n font-variant-caps: normal;\n font-variant-east-asian: normal;\n font-variant-emoji: normal;\n font-variant-ligatures: normal;\n font-variant-numeric: normal;\n font-variant-position: normal;\n font-variation-settings: normal;\n letter-spacing: 0;\n line-height: 1.4;\n text-transform: none;\n word-spacing: normal;\n animation: stableops-walletconnect-backdrop-in 160ms ease-out both;\n -webkit-font-smoothing: antialiased;\n -moz-osx-font-smoothing: grayscale;\n}\n\n.stableops-wc-sheet {\n position: relative;\n width: 100%;\n max-width: 28rem;\n max-height: min(90dvh, calc(100vh - 1rem));\n overflow: hidden;\n border: 1px solid var(--stableops-wc-border);\n border-radius: 1rem 1rem 0 0;\n padding-bottom: max(0.75rem, env(safe-area-inset-bottom));\n background: var(--stableops-wc-surface);\n color: var(--stableops-wc-text);\n font-family: 'Inter', ui-sans-serif, system-ui, sans-serif;\n font-size: inherit;\n font-style: inherit;\n font-weight: inherit;\n font-stretch: inherit;\n font-feature-settings: inherit;\n font-kerning: inherit;\n font-language-override: inherit;\n font-optical-sizing: inherit;\n font-size-adjust: inherit;\n font-variant-alternates: inherit;\n font-variant-caps: inherit;\n font-variant-east-asian: inherit;\n font-variant-emoji: inherit;\n font-variant-ligatures: inherit;\n font-variant-numeric: inherit;\n font-variant-position: inherit;\n font-variation-settings: inherit;\n letter-spacing: inherit;\n line-height: inherit;\n text-transform: inherit;\n word-spacing: inherit;\n box-shadow:\n 0 10px 15px -3px rgb(0 0 0 / 10%),\n 0 4px 6px -4px rgb(0 0 0 / 10%);\n animation: stableops-walletconnect-sheet-in 220ms cubic-bezier(0.2, 0, 0, 1) both;\n}\n\n.stableops-wc-sheet,\n.stableops-wc-sheet * {\n box-sizing: border-box;\n}\n\n.stableops-wc-sheet :where(button, a, p, span, img) {\n margin: 0;\n font: inherit;\n color: inherit;\n letter-spacing: inherit;\n line-height: inherit;\n text-decoration: none;\n text-transform: inherit;\n word-spacing: inherit;\n}\n\n.stableops-wc-sheet :where(img) {\n display: block;\n max-width: 100%;\n height: auto;\n}\n\n.stableops-wc-header {\n position: relative;\n display: flex;\n align-items: center;\n justify-content: center;\n padding: 1.5rem 1.5rem 0;\n}\n\n.stableops-wc-title {\n min-width: 0;\n flex: 1;\n overflow: hidden;\n text-align: center;\n text-overflow: ellipsis;\n white-space: nowrap;\n font-family: 'Inter', ui-sans-serif, system-ui, sans-serif;\n font-size: 0.875rem;\n font-weight: 600;\n line-height: 1.25;\n}\n\n.stableops-wc-icon-button {\n position: absolute;\n display: flex;\n width: 2rem;\n height: 2rem;\n cursor: pointer;\n align-items: center;\n justify-content: center;\n border: 0;\n border-radius: 0.375rem;\n background: transparent;\n color: var(--stableops-wc-muted);\n line-height: 1;\n}\n\n.stableops-wc-icon-button:hover {\n background: var(--stableops-wc-hover);\n color: var(--stableops-wc-text);\n}\n\n.stableops-wc-back-button {\n left: 1.25rem;\n}\n\n.stableops-wc-close-button {\n right: 1.25rem;\n}\n\n.stableops-wc-icon,\n.stableops-wc-action-icon {\n width: 1rem;\n height: 1rem;\n}\n\n.stableops-wc-body {\n padding: 1.5rem;\n}\n\n.stableops-wc-qr-frame {\n position: relative;\n width: 100%;\n max-width: 12rem;\n aspect-ratio: 1 / 1;\n margin: 0 auto;\n border: 1px solid rgb(15 28 46 / 8%);\n border-radius: 1rem;\n padding: 1rem;\n background: #ffffff;\n overflow: hidden;\n}\n\n.stableops-wc-qr-image {\n width: 100%;\n height: 100%;\n object-fit: contain;\n}\n\n.stableops-wc-qr-placeholder {\n opacity: 0.9;\n}\n\n.stableops-wc-centered-overlay,\n.stableops-wc-loading-overlay {\n position: absolute;\n inset: 0;\n display: flex;\n align-items: center;\n justify-content: center;\n}\n\n.stableops-wc-loading-overlay {\n inset: 0.5rem;\n border-radius: 0.5rem;\n background: rgb(255 255 255 / 60%);\n backdrop-filter: blur(4px);\n}\n\n.stableops-wc-wallet-chip {\n border-radius: 0.75rem;\n padding: 0.25rem;\n background: #ffffff;\n box-shadow:\n 0 4px 6px -1px rgb(0 0 0 / 10%),\n 0 2px 4px -2px rgb(0 0 0 / 10%);\n outline: 1px solid rgb(0 0 0 / 5%);\n}\n\n.stableops-wc-refresh-button {\n display: inline-flex;\n min-width: 6.5rem;\n cursor: pointer;\n align-items: center;\n justify-content: center;\n gap: 0.375rem;\n border: 1px solid rgb(0 0 0 / 8%);\n border-radius: 0.75rem;\n padding: 0.625rem 0.75rem;\n background: #ffffff;\n color: var(--stableops-wc-text);\n box-shadow:\n 0 4px 6px -1px rgb(0 0 0 / 10%),\n 0 2px 4px -2px rgb(0 0 0 / 10%);\n font-size: 0.8125rem;\n font-weight: 600;\n line-height: 1.25;\n}\n\n.stableops-wc-refresh-button:hover {\n background: var(--stableops-wc-hover);\n}\n\n.stableops-wc-refresh-icon {\n width: 1rem;\n height: 1rem;\n color: var(--stableops-wc-brand);\n}\n\n.stableops-wc-wallet-logo,\n.stableops-wc-wallet-fallback {\n display: flex;\n width: 3rem;\n height: 3rem;\n flex-shrink: 0;\n align-items: center;\n justify-content: center;\n border-radius: 0.5rem;\n box-shadow: 0 1px 2px 0 rgb(0 0 0 / 5%);\n outline: 1px solid rgb(0 0 0 / 5%);\n}\n\n.stableops-wc-wallet-logo {\n object-fit: cover;\n}\n\n.stableops-wc-wallet-chip .stableops-wc-wallet-logo,\n.stableops-wc-wallet-chip .stableops-wc-wallet-fallback {\n width: 2.25rem;\n height: 2.25rem;\n border-radius: 0.375rem;\n}\n\n.stableops-wc-wallet-fallback {\n color: #ffffff;\n font-size: 0.75rem;\n font-weight: 600;\n line-height: 1;\n}\n\n.stableops-wc-empty-qr {\n display: flex;\n width: 100%;\n height: 100%;\n flex-direction: column;\n align-items: center;\n justify-content: center;\n gap: 0.5rem;\n padding: 0 0.75rem;\n text-align: center;\n font-size: 0.75rem;\n line-height: 1.4;\n color: var(--stableops-wc-muted);\n}\n\n.stableops-wc-spinner {\n width: 1.5rem;\n height: 1.5rem;\n animation: stableops-wc-spin 1s linear infinite;\n}\n\n@keyframes stableops-wc-spin {\n to {\n transform: rotate(360deg);\n }\n}\n\n.stableops-wc-muted-spinner {\n color: #9ca3af;\n}\n\n.stableops-wc-error-icon {\n width: 1.75rem;\n height: 1.75rem;\n color: var(--stableops-wc-danger);\n}\n\n.stableops-wc-help-text {\n margin: 1.25rem 0 0;\n text-align: center;\n font-size: 0.875rem;\n font-weight: 500;\n line-height: 1.4;\n}\n\n.stableops-wc-separator {\n display: flex;\n align-items: center;\n gap: 0.75rem;\n margin: 1rem 0;\n font-size: 0.75rem;\n line-height: 1.4;\n color: var(--stableops-wc-muted);\n}\n\n.stableops-wc-line {\n height: 1px;\n flex: 1;\n background: var(--stableops-wc-border);\n}\n\n.stableops-wc-spacer {\n height: 1rem;\n}\n\n.stableops-wc-actions {\n display: flex;\n flex-direction: column;\n gap: 0.5rem;\n}\n\n.stableops-wc-primary-action,\n.stableops-wc-secondary-action {\n display: inline-flex;\n min-height: 2.5rem;\n flex: 1;\n cursor: pointer;\n align-items: center;\n justify-content: center;\n gap: 0.5rem;\n border-radius: 0.5rem;\n padding: 0.5rem 1rem;\n text-align: center;\n font-size: 0.875rem;\n font-weight: 500;\n line-height: 1.25;\n text-decoration: none;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n}\n\n.stableops-wc-primary-action {\n border: 1px solid transparent;\n background: var(--stableops-wc-brand);\n color: var(--stableops-wc-brand-text);\n box-shadow:\n 0 1px 3px 0 rgb(0 0 0 / 10%),\n 0 1px 2px -1px rgb(0 0 0 / 10%);\n}\n\n.stableops-wc-button-action {\n font: inherit;\n}\n\n.stableops-wc-primary-action:hover {\n background: color-mix(in srgb, var(--stableops-wc-brand) 82%, var(--stableops-wc-shade));\n}\n\n.stableops-wc-secondary-action {\n border: 1px solid var(--stableops-wc-strong-border);\n background: var(--stableops-wc-surface);\n color: var(--stableops-wc-text);\n}\n\n.stableops-wc-secondary-action:hover {\n background: var(--stableops-wc-hover);\n color: var(--stableops-wc-hover-text);\n}\n\n.stableops-wc-secondary-action:disabled,\n.stableops-wc-disabled-link {\n cursor: not-allowed;\n opacity: 0.5;\n pointer-events: none;\n}\n\n.stableops-wc-check-icon {\n color: color-mix(in srgb, var(--stableops-wc-brand) 82%, var(--stableops-wc-shade));\n}\n\n.stableops-wc-copy-done {\n border-color: color-mix(in srgb, var(--stableops-wc-brand) 35%, transparent);\n background: var(--stableops-wc-copy-done-bg);\n color: color-mix(in srgb, var(--stableops-wc-brand) 82%, var(--stableops-wc-shade));\n}\n\n.stableops-wc-wallet-grid {\n display: grid;\n grid-template-columns: repeat(3, minmax(0, 1fr));\n gap: 0.5rem 1rem;\n overflow-y: auto;\n padding: 1rem;\n}\n\n.stableops-wc-wallet-button {\n display: flex;\n cursor: pointer;\n flex-direction: column;\n align-items: center;\n gap: 0.5rem;\n border: 1px solid transparent;\n border-radius: 0.75rem;\n background: transparent;\n padding: 1rem 0.5rem;\n text-align: center;\n color: var(--stableops-wc-text);\n}\n\n.stableops-wc-wallet-button:hover {\n border-color: color-mix(in srgb, var(--stableops-wc-brand) 40%, transparent);\n background: var(--stableops-wc-hover);\n color: var(--stableops-wc-hover-text);\n}\n\n.stableops-wc-wallet-button:disabled {\n cursor: not-allowed;\n opacity: 0.5;\n}\n\n.stableops-wc-wallet-button span {\n width: 100%;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n font-size: 0.75rem;\n font-weight: 500;\n}\n\n.stableops-wc-error-box {\n margin: 0 1.25rem 1.25rem;\n border: 1px solid var(--stableops-wc-danger-border);\n border-radius: 0.5rem;\n background: var(--stableops-wc-danger-bg);\n padding: 0.625rem;\n text-align: center;\n font-size: 0.75rem;\n line-height: 1.4;\n color: var(--stableops-wc-danger);\n}\n\n@media (min-width: 640px) {\n .stableops-wc-backdrop {\n align-items: center;\n padding: 1rem;\n }\n\n .stableops-wc-sheet {\n max-height: calc(100vh - 2rem);\n border-radius: 1rem;\n padding-bottom: 0;\n }\n\n .stableops-wc-actions {\n flex-direction: row;\n }\n}\n"],"mappings":"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","names":[]}
package/dist/index.d.mts CHANGED
@@ -12,6 +12,27 @@ declare function WalletIcon({ wallet }: {
12
12
  wallet: WalletIconWallet;
13
13
  }): ReactNode;
14
14
 
15
+ type WalletConnectLocale = 'zh' | 'en';
16
+ declare function createWalletConnectDialogCopy(locale: WalletConnectLocale, copiedLabel?: string): {
17
+ heading: string;
18
+ back: string;
19
+ close: string;
20
+ qrAlt: string;
21
+ payWith: (wallet: string) => string;
22
+ scanWithWallet: (wallet: string) => string;
23
+ scanAnyWallet: string;
24
+ openWallet: (wallet: string) => string;
25
+ paymentPrompt: (wallet: string) => string;
26
+ retryPayment: (wallet: string) => string;
27
+ retryingPayment: string;
28
+ refreshConnection: string;
29
+ copyUri: string;
30
+ copied: string;
31
+ or: string;
32
+ connectFailed: string;
33
+ errorMessage: (code: string) => string | null;
34
+ };
35
+
15
36
  type WalletConnectDialogWallet = WalletIconWallet & {
16
37
  id: string;
17
38
  links?: {
@@ -44,7 +65,8 @@ type WalletConnectDialogError = string | {
44
65
  };
45
66
  type WalletConnectDialogProps<TWallet extends WalletConnectDialogWallet> = {
46
67
  open: boolean;
47
- copy: WalletConnectDialogCopy;
68
+ copy?: WalletConnectDialogCopy;
69
+ locale?: WalletConnectLocale;
48
70
  projectId: string | null | undefined;
49
71
  available: boolean;
50
72
  wallets: readonly TWallet[];
@@ -71,8 +93,8 @@ declare const walletConnectDialogClassNames: {
71
93
  readonly qrFrame: "stableops-wc-qr-frame";
72
94
  };
73
95
  declare function walletLink(prefix: string, uri: string): string;
74
- declare function WalletConnectDialog<TWallet extends WalletConnectDialogWallet>({ open, copy, projectId, available, wallets, selectedWallet, state, qrCode, error, walletLinkMode, themeColor, copied, paymentPending, connectionRefreshAvailable, renderWalletIcon, onSelectWallet, onRetryPayment, onRefreshConnection, onBack, onClose, onCopyUri, }: WalletConnectDialogProps<TWallet>): ReactNode;
96
+ declare function WalletConnectDialog<TWallet extends WalletConnectDialogWallet>({ open, copy: copyProp, locale, projectId, available, wallets, selectedWallet, state, qrCode, error, walletLinkMode, themeColor, copied, paymentPending, connectionRefreshAvailable, renderWalletIcon, onSelectWallet, onRetryPayment, onRefreshConnection, onBack, onClose, onCopyUri, }: WalletConnectDialogProps<TWallet>): ReactNode;
75
97
 
76
98
  declare const WALLET_LOGOS: Record<string, string>;
77
99
 
78
- export { WALLET_LOGOS, WalletConnectDialog, type WalletConnectDialogCopy, type WalletConnectDialogError, type WalletConnectDialogProps, type WalletConnectDialogWallet, WalletIcon, type WalletIconWallet, walletConnectDialogClassNames, walletLink };
100
+ export { WALLET_LOGOS, WalletConnectDialog, type WalletConnectDialogCopy, type WalletConnectDialogError, type WalletConnectDialogProps, type WalletConnectDialogWallet, type WalletConnectLocale, WalletIcon, type WalletIconWallet, createWalletConnectDialogCopy, walletConnectDialogClassNames, walletLink };
package/dist/index.d.ts CHANGED
@@ -12,6 +12,27 @@ declare function WalletIcon({ wallet }: {
12
12
  wallet: WalletIconWallet;
13
13
  }): ReactNode;
14
14
 
15
+ type WalletConnectLocale = 'zh' | 'en';
16
+ declare function createWalletConnectDialogCopy(locale: WalletConnectLocale, copiedLabel?: string): {
17
+ heading: string;
18
+ back: string;
19
+ close: string;
20
+ qrAlt: string;
21
+ payWith: (wallet: string) => string;
22
+ scanWithWallet: (wallet: string) => string;
23
+ scanAnyWallet: string;
24
+ openWallet: (wallet: string) => string;
25
+ paymentPrompt: (wallet: string) => string;
26
+ retryPayment: (wallet: string) => string;
27
+ retryingPayment: string;
28
+ refreshConnection: string;
29
+ copyUri: string;
30
+ copied: string;
31
+ or: string;
32
+ connectFailed: string;
33
+ errorMessage: (code: string) => string | null;
34
+ };
35
+
15
36
  type WalletConnectDialogWallet = WalletIconWallet & {
16
37
  id: string;
17
38
  links?: {
@@ -44,7 +65,8 @@ type WalletConnectDialogError = string | {
44
65
  };
45
66
  type WalletConnectDialogProps<TWallet extends WalletConnectDialogWallet> = {
46
67
  open: boolean;
47
- copy: WalletConnectDialogCopy;
68
+ copy?: WalletConnectDialogCopy;
69
+ locale?: WalletConnectLocale;
48
70
  projectId: string | null | undefined;
49
71
  available: boolean;
50
72
  wallets: readonly TWallet[];
@@ -71,8 +93,8 @@ declare const walletConnectDialogClassNames: {
71
93
  readonly qrFrame: "stableops-wc-qr-frame";
72
94
  };
73
95
  declare function walletLink(prefix: string, uri: string): string;
74
- declare function WalletConnectDialog<TWallet extends WalletConnectDialogWallet>({ open, copy, projectId, available, wallets, selectedWallet, state, qrCode, error, walletLinkMode, themeColor, copied, paymentPending, connectionRefreshAvailable, renderWalletIcon, onSelectWallet, onRetryPayment, onRefreshConnection, onBack, onClose, onCopyUri, }: WalletConnectDialogProps<TWallet>): ReactNode;
96
+ declare function WalletConnectDialog<TWallet extends WalletConnectDialogWallet>({ open, copy: copyProp, locale, projectId, available, wallets, selectedWallet, state, qrCode, error, walletLinkMode, themeColor, copied, paymentPending, connectionRefreshAvailable, renderWalletIcon, onSelectWallet, onRetryPayment, onRefreshConnection, onBack, onClose, onCopyUri, }: WalletConnectDialogProps<TWallet>): ReactNode;
75
97
 
76
98
  declare const WALLET_LOGOS: Record<string, string>;
77
99
 
78
- export { WALLET_LOGOS, WalletConnectDialog, type WalletConnectDialogCopy, type WalletConnectDialogError, type WalletConnectDialogProps, type WalletConnectDialogWallet, WalletIcon, type WalletIconWallet, walletConnectDialogClassNames, walletLink };
100
+ export { WALLET_LOGOS, WalletConnectDialog, type WalletConnectDialogCopy, type WalletConnectDialogError, type WalletConnectDialogProps, type WalletConnectDialogWallet, type WalletConnectLocale, WalletIcon, type WalletIconWallet, createWalletConnectDialogCopy, walletConnectDialogClassNames, walletLink };
package/dist/index.js CHANGED
@@ -23,6 +23,7 @@ __export(index_exports, {
23
23
  WALLET_LOGOS: () => WALLET_LOGOS,
24
24
  WalletConnectDialog: () => WalletConnectDialog,
25
25
  WalletIcon: () => WalletIcon,
26
+ createWalletConnectDialogCopy: () => createWalletConnectDialogCopy,
26
27
  walletConnectDialogClassNames: () => walletConnectDialogClassNames,
27
28
  walletLink: () => walletLink
28
29
  });
@@ -48,6 +49,126 @@ function WalletIcon({ wallet }) {
48
49
  );
49
50
  }
50
51
 
52
+ // src/walletconnect-dialog-copy.ts
53
+ var copy = {
54
+ zh: {
55
+ heading: "\u7528\u624B\u673A\u94B1\u5305\u652F\u4ED8",
56
+ back: "\u8FD4\u56DE",
57
+ close: "\u5173\u95ED",
58
+ qrAlt: "\u652F\u4ED8\u4E8C\u7EF4\u7801",
59
+ payWith: "\u7528 {wallet} \u652F\u4ED8",
60
+ scanWithWallet: "\u7528\u624B\u673A\u4E0A\u7684 {wallet} \u626B\u7801",
61
+ scanAnyWallet: "\u7528\u4EFB\u610F\u624B\u673A\u94B1\u5305\u626B\u7801",
62
+ openWallet: "\u6253\u5F00 {wallet}",
63
+ paymentPrompt: "\u5DF2\u8FDE\u63A5 {wallet}\uFF0C\u8BF7\u5728\u94B1\u5305 App \u5185\u786E\u8BA4\u4EA4\u6613\uFF1B\u5982\u679C\u6CA1\u6709\u5F39\u51FA\u652F\u4ED8\u754C\u9762\uFF0C\u53EF\u518D\u6B21\u89E6\u53D1\u652F\u4ED8\u3002",
64
+ retryPayment: "\u518D\u6B21\u6253\u5F00 {wallet} \u652F\u4ED8",
65
+ retryingPayment: "\u6B63\u5728\u6253\u5F00\u652F\u4ED8\u2026",
66
+ refreshConnection: "\u5237\u65B0\u4E8C\u7EF4\u7801",
67
+ copyUri: "\u590D\u5236\u94FE\u63A5",
68
+ copied: "\u5DF2\u590D\u5236",
69
+ or: "\u6216",
70
+ connectFailed: "\u8FDE\u63A5\u5931\u8D25",
71
+ errors: {
72
+ dependencyMissing: "\u5F53\u524D\u73AF\u5883\u672A\u52A0\u8F7D WalletConnect \u4F9D\u8D56\uFF0C\u8BF7\u5237\u65B0\u540E\u91CD\u8BD5\u3002",
73
+ projectIdMissing: "\u672A\u914D\u7F6E WalletConnect projectId\uFF0C\u65E0\u6CD5\u6253\u5F00\u624B\u673A\u94B1\u5305\u652F\u4ED8\u3002",
74
+ initFailed: "WalletConnect \u521D\u59CB\u5316\u5931\u8D25\uFF0C\u8BF7\u68C0\u67E5\u7F51\u7EDC\u540E\u91CD\u8BD5\u3002",
75
+ connectFailed: "WalletConnect \u8FDE\u63A5\u5931\u8D25\uFF0C\u8BF7\u8FD4\u56DE\u94B1\u5305\u5217\u8868\u540E\u91CD\u8BD5\u3002",
76
+ noAuthorizedChains: "\u94B1\u5305\u6CA1\u6709\u6388\u6743\u8BA2\u5355\u9700\u8981\u7684\u7F51\u7EDC\uFF0C\u8BF7\u8FD4\u56DE\u91CD\u8FDE\u5E76\u52FE\u9009\u5BF9\u5E94\u7F51\u7EDC\u3002",
77
+ tronUnsupported: "WalletConnect \u6682\u4E0D\u652F\u6301 TRON \u652F\u4ED8\uFF0C\u8BF7\u6539\u7528\u652F\u6301\u7684\u624B\u673A\u94B1\u5305 App \u6216\u624B\u52A8\u8F6C\u8D26\u3002",
78
+ providerMismatch: "\u94B1\u5305\u8FD4\u56DE\u7684\u7F51\u7EDC\u548C\u8BA2\u5355\u7F51\u7EDC\u4E0D\u4E00\u81F4\uFF0C\u8BF7\u5207\u6362\u5230\u6B63\u786E\u7F51\u7EDC\u540E\u91CD\u8BD5\u3002",
79
+ providerNotFound: "\u672A\u627E\u5230\u53EF\u7528\u4E8E\u672C\u8BA2\u5355\u7F51\u7EDC\u7684\u94B1\u5305\u6388\u6743\uFF0C\u8BF7\u8FD4\u56DE\u91CD\u8FDE\u5E76\u6388\u6743\u7F51\u7EDC\u3002",
80
+ txReverted: "\u94FE\u4E0A\u4EA4\u6613\u53D1\u751F\u56DE\u6EDA\uFF0C\u8BF7\u91CD\u65B0\u4ED8\u6B3E\u6216\u8054\u7CFB\u5546\u6237\u3002",
81
+ tokenContractNotFound: "\u5F53\u524D\u7F51\u7EDC\u7F3A\u5C11\u9ED8\u8BA4\u4EE3\u5E01\u5408\u7EA6\u914D\u7F6E\uFF0C\u8BF7\u68C0\u67E5\u6D4B\u8BD5\u7F51\u914D\u7F6E\u3002",
82
+ paymentInstructionNotFound: "\u5F53\u524D\u8BA2\u5355\u6CA1\u6709\u53EF\u7528\u7684\u94FE\u4E0A\u652F\u4ED8\u6307\u4EE4\u3002",
83
+ unsupportedChain: "\u94B1\u5305 SDK \u6682\u4E0D\u652F\u6301\u5F53\u524D\u652F\u4ED8\u7F51\u7EDC\u3002"
84
+ }
85
+ },
86
+ en: {
87
+ heading: "Pay with mobile wallet",
88
+ back: "Back",
89
+ close: "Close",
90
+ qrAlt: "Payment QR code",
91
+ payWith: "Pay with {wallet}",
92
+ scanWithWallet: "Scan with {wallet} on your phone",
93
+ scanAnyWallet: "Scan with any mobile wallet",
94
+ openWallet: "Open {wallet}",
95
+ paymentPrompt: "{wallet} is connected. Confirm the transaction in your wallet app; if no payment screen appears, trigger payment again.",
96
+ retryPayment: "Trigger {wallet} payment again",
97
+ retryingPayment: "Opening payment\u2026",
98
+ refreshConnection: "Refresh QR",
99
+ copyUri: "Copy link",
100
+ copied: "Copied",
101
+ or: "or",
102
+ connectFailed: "Connection failed",
103
+ errors: {
104
+ dependencyMissing: "WalletConnect is not loaded in this environment. Refresh the page and try again.",
105
+ projectIdMissing: "WalletConnect projectId is not configured, so mobile wallet pay cannot open.",
106
+ initFailed: "WalletConnect failed to initialize. Check your connection and retry.",
107
+ connectFailed: "WalletConnect failed to connect. Go back to the wallet list and retry.",
108
+ noAuthorizedChains: "Your wallet did not authorize the required networks. Reconnect and select the requested network.",
109
+ tronUnsupported: "WalletConnect does not support TRON payments yet. Use a supported mobile wallet app or manual transfer.",
110
+ providerMismatch: "The wallet returned a different network than the order requires. Switch networks and retry.",
111
+ providerNotFound: "No wallet authorization was found for this order network. Go back, reconnect, and authorize it.",
112
+ txReverted: "The on-chain transaction was reverted. Pay again or contact the merchant.",
113
+ tokenContractNotFound: "The default token contract is not configured for this network. Check the testnet config.",
114
+ paymentInstructionNotFound: "This order does not have an available on-chain payment instruction.",
115
+ unsupportedChain: "The wallet SDK does not support this payment network."
116
+ }
117
+ }
118
+ };
119
+ function createWalletConnectDialogCopy(locale, copiedLabel) {
120
+ const t = copy[locale];
121
+ const errors = t.errors;
122
+ return {
123
+ heading: t.heading,
124
+ back: t.back,
125
+ close: t.close,
126
+ qrAlt: t.qrAlt,
127
+ payWith: (wallet) => t.payWith.replace("{wallet}", wallet),
128
+ scanWithWallet: (wallet) => t.scanWithWallet.replace("{wallet}", wallet),
129
+ scanAnyWallet: t.scanAnyWallet,
130
+ openWallet: (wallet) => t.openWallet.replace("{wallet}", wallet),
131
+ paymentPrompt: (wallet) => t.paymentPrompt.replace("{wallet}", wallet),
132
+ retryPayment: (wallet) => t.retryPayment.replace("{wallet}", wallet),
133
+ retryingPayment: t.retryingPayment,
134
+ refreshConnection: t.refreshConnection,
135
+ copyUri: t.copyUri,
136
+ copied: copiedLabel ?? t.copied,
137
+ or: t.or,
138
+ connectFailed: t.connectFailed,
139
+ errorMessage: (code) => {
140
+ switch (code) {
141
+ case "walletconnect_dependency_missing":
142
+ return errors.dependencyMissing;
143
+ case "walletconnect_project_id_missing":
144
+ return errors.projectIdMissing;
145
+ case "walletconnect_init_failed":
146
+ return errors.initFailed;
147
+ case "walletconnect_connect_failed":
148
+ return errors.connectFailed;
149
+ case "walletconnect_no_authorized_chains":
150
+ return errors.noAuthorizedChains;
151
+ case "walletconnect_tron_unsupported":
152
+ return errors.tronUnsupported;
153
+ case "wallet_provider_mismatch":
154
+ return errors.providerMismatch;
155
+ case "wallet_provider_not_found":
156
+ return errors.providerNotFound;
157
+ case "wallet_tx_reverted":
158
+ return errors.txReverted;
159
+ case "token_contract_not_found":
160
+ return errors.tokenContractNotFound;
161
+ case "payment_instruction_not_found":
162
+ return errors.paymentInstructionNotFound;
163
+ case "unsupported_chain":
164
+ return errors.unsupportedChain;
165
+ default:
166
+ return null;
167
+ }
168
+ }
169
+ };
170
+ }
171
+
51
172
  // src/walletconnect-dialog.tsx
52
173
  var import_jsx_runtime2 = require("react/jsx-runtime");
53
174
  var PLACEHOLDER_QR_CODE = "data:image/png;base64,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";
@@ -59,14 +180,15 @@ var walletConnectDialogClassNames = {
59
180
  function walletLink(prefix, uri) {
60
181
  return `${prefix}${encodeURIComponent(uri)}`;
61
182
  }
62
- function formatWalletConnectDialogError(error, copy) {
183
+ function formatWalletConnectDialogError(error, copy2) {
63
184
  if (typeof error === "string") return error;
64
- if (error.code) return copy.errorMessage(error.code) ?? error.message;
185
+ if (error.code) return copy2.errorMessage(error.code) ?? error.message;
65
186
  return error.message;
66
187
  }
67
188
  function WalletConnectDialog({
68
189
  open,
69
- copy,
190
+ copy: copyProp,
191
+ locale = "en",
70
192
  projectId,
71
193
  available,
72
194
  wallets,
@@ -88,6 +210,7 @@ function WalletConnectDialog({
88
210
  onCopyUri
89
211
  }) {
90
212
  if (!open) return null;
213
+ const copy2 = copyProp ?? createWalletConnectDialogCopy(locale);
91
214
  const appLink = selectedWallet?.links?.native ?? selectedWallet?.links?.universal ?? null;
92
215
  const appLinkIsUniversal = !selectedWallet?.links?.native && Boolean(selectedWallet?.links?.universal);
93
216
  const readyUri = state.status === "uri_ready" ? state.uri : null;
@@ -99,7 +222,7 @@ function WalletConnectDialog({
99
222
  const disabledList = !walletLinkMode && !projectId || !available;
100
223
  const renderIcon = renderWalletIcon ?? ((wallet) => /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(WalletIcon, { wallet }));
101
224
  const themeStyle = themeColor ? { "--stableops-wc-brand": themeColor } : void 0;
102
- const visibleError = error !== null ? formatWalletConnectDialogError(error, copy) : state.status === "failed" ? formatWalletConnectDialogError(state.error, copy) : null;
225
+ const visibleError = error !== null ? formatWalletConnectDialogError(error, copy2) : state.status === "failed" ? formatWalletConnectDialogError(state.error, copy2) : null;
103
226
  return /* @__PURE__ */ (0, import_jsx_runtime2.jsx)("div", { className: walletConnectDialogClassNames.backdrop, style: themeStyle, onClick: onClose, children: /* @__PURE__ */ (0, import_jsx_runtime2.jsxs)(
104
227
  "div",
105
228
  {
@@ -114,19 +237,19 @@ function WalletConnectDialog({
114
237
  "button",
115
238
  {
116
239
  type: "button",
117
- "aria-label": copy.back,
240
+ "aria-label": copy2.back,
118
241
  onClick: onBack,
119
242
  className: "stableops-wc-icon-button stableops-wc-back-button",
120
243
  children: /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(import_lucide_react.ArrowLeft, { className: "stableops-wc-icon" })
121
244
  }
122
245
  ),
123
- /* @__PURE__ */ (0, import_jsx_runtime2.jsx)("div", { className: "stableops-wc-title", children: copy.payWith(selectedWallet.name) })
124
- ] }) : /* @__PURE__ */ (0, import_jsx_runtime2.jsx)("div", { className: "stableops-wc-title", children: copy.heading }),
246
+ /* @__PURE__ */ (0, import_jsx_runtime2.jsx)("div", { className: "stableops-wc-title", children: copy2.payWith(selectedWallet.name) })
247
+ ] }) : /* @__PURE__ */ (0, import_jsx_runtime2.jsx)("div", { className: "stableops-wc-title", children: copy2.heading }),
125
248
  /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(
126
249
  "button",
127
250
  {
128
251
  type: "button",
129
- "aria-label": copy.close,
252
+ "aria-label": copy2.close,
130
253
  onClick: onClose,
131
254
  className: "stableops-wc-icon-button stableops-wc-close-button",
132
255
  children: /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(import_lucide_react.X, { className: "stableops-wc-icon" })
@@ -135,7 +258,7 @@ function WalletConnectDialog({
135
258
  ] }),
136
259
  selectedWallet ? /* @__PURE__ */ (0, import_jsx_runtime2.jsxs)("div", { className: "stableops-wc-body", children: [
137
260
  /* @__PURE__ */ (0, import_jsx_runtime2.jsx)("div", { className: walletConnectDialogClassNames.qrFrame, children: visibleQrCode ? /* @__PURE__ */ (0, import_jsx_runtime2.jsxs)(import_jsx_runtime2.Fragment, { children: [
138
- /* @__PURE__ */ (0, import_jsx_runtime2.jsx)("img", { src: visibleQrCode, alt: copy.qrAlt, className: "stableops-wc-qr-image" }),
261
+ /* @__PURE__ */ (0, import_jsx_runtime2.jsx)("img", { src: visibleQrCode, alt: copy2.qrAlt, className: "stableops-wc-qr-image" }),
139
262
  /* @__PURE__ */ (0, import_jsx_runtime2.jsx)("div", { className: "stableops-wc-centered-overlay", children: /* @__PURE__ */ (0, import_jsx_runtime2.jsx)("div", { className: "stableops-wc-wallet-chip", children: renderIcon(selectedWallet) }) })
140
263
  ] }) : qrLoading ? /* @__PURE__ */ (0, import_jsx_runtime2.jsxs)(import_jsx_runtime2.Fragment, { children: [
141
264
  /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(
@@ -169,16 +292,16 @@ function WalletConnectDialog({
169
292
  },
170
293
  children: [
171
294
  /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(import_lucide_react.RotateCw, { className: "stableops-wc-refresh-icon" }),
172
- copy.refreshConnection
295
+ copy2.refreshConnection
173
296
  ]
174
297
  }
175
298
  ) : /* @__PURE__ */ (0, import_jsx_runtime2.jsx)("div", { className: "stableops-wc-wallet-chip", children: renderIcon(selectedWallet) }) }),
176
299
  state.status === "failed" && !showRefreshControl ? /* @__PURE__ */ (0, import_jsx_runtime2.jsx)("div", { className: "stableops-wc-loading-overlay", children: /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(import_lucide_react.CircleAlert, { className: "stableops-wc-error-icon", "aria-hidden": "true" }) }) : null
177
300
  ] }) }),
178
- /* @__PURE__ */ (0, import_jsx_runtime2.jsx)("p", { className: "stableops-wc-help-text", children: paymentReady ? copy.paymentPrompt(selectedWallet.name) : walletLinkMode || selectedWallet.links ? copy.scanWithWallet(selectedWallet.name) : copy.scanAnyWallet }),
301
+ /* @__PURE__ */ (0, import_jsx_runtime2.jsx)("p", { className: "stableops-wc-help-text", children: paymentReady ? copy2.paymentPrompt(selectedWallet.name) : walletLinkMode || selectedWallet.links ? copy2.scanWithWallet(selectedWallet.name) : copy2.scanAnyWallet }),
179
302
  walletLinkMode || appLink ? /* @__PURE__ */ (0, import_jsx_runtime2.jsxs)("div", { className: "stableops-wc-separator", children: [
180
303
  /* @__PURE__ */ (0, import_jsx_runtime2.jsx)("div", { className: "stableops-wc-line" }),
181
- /* @__PURE__ */ (0, import_jsx_runtime2.jsx)("span", { children: copy.or }),
304
+ /* @__PURE__ */ (0, import_jsx_runtime2.jsx)("span", { children: copy2.or }),
182
305
  /* @__PURE__ */ (0, import_jsx_runtime2.jsx)("div", { className: "stableops-wc-line" })
183
306
  ] }) : /* @__PURE__ */ (0, import_jsx_runtime2.jsx)("div", { className: "stableops-wc-spacer" }),
184
307
  /* @__PURE__ */ (0, import_jsx_runtime2.jsxs)("div", { className: "stableops-wc-actions", children: [
@@ -192,7 +315,7 @@ function WalletConnectDialog({
192
315
  },
193
316
  children: [
194
317
  paymentPending ? /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(import_lucide_react.Loader2, { className: "stableops-wc-action-icon stableops-wc-spinner" }) : /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(import_lucide_react.ExternalLink, { className: "stableops-wc-action-icon" }),
195
- paymentPending ? copy.retryingPayment : copy.retryPayment(selectedWallet.name)
318
+ paymentPending ? copy2.retryingPayment : copy2.retryPayment(selectedWallet.name)
196
319
  ]
197
320
  }
198
321
  ) : null,
@@ -205,7 +328,7 @@ function WalletConnectDialog({
205
328
  ...(walletLinkMode || appLinkIsUniversal) && walletHref ? { target: "_blank", rel: "noreferrer" } : {},
206
329
  children: [
207
330
  /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(import_lucide_react.ExternalLink, { className: "stableops-wc-action-icon" }),
208
- copy.openWallet(selectedWallet.name)
331
+ copy2.openWallet(selectedWallet.name)
209
332
  ]
210
333
  }
211
334
  ) : null,
@@ -226,10 +349,10 @@ function WalletConnectDialog({
226
349
  strokeWidth: 3
227
350
  }
228
351
  ),
229
- copy.copied
352
+ copy2.copied
230
353
  ] }) : /* @__PURE__ */ (0, import_jsx_runtime2.jsxs)(import_jsx_runtime2.Fragment, { children: [
231
354
  /* @__PURE__ */ (0, import_jsx_runtime2.jsx)(import_lucide_react.Copy, { className: "stableops-wc-action-icon" }),
232
- copy.copyUri
355
+ copy2.copyUri
233
356
  ] })
234
357
  }
235
358
  )
@@ -273,6 +396,7 @@ var WALLET_LOGOS = {
273
396
  WALLET_LOGOS,
274
397
  WalletConnectDialog,
275
398
  WalletIcon,
399
+ createWalletConnectDialogCopy,
276
400
  walletConnectDialogClassNames,
277
401
  walletLink
278
402
  });