@coinbase/cdp-react 0.0.13 → 0.0.14

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.
@@ -1 +1 @@
1
- .Button-module__btn___Fx11X{--cdp-web-button-ring-color: transparent;--cdp-web-button-ring-width: 2px;--cdp-web-button-ring-inset-color: transparent;--cdp-web-button-ring-inset-width: 2px;box-sizing:border-box;box-shadow:inset 0 0 0 var(--cdp-web-button-ring-inset-width) var(--cdp-web-button-ring-inset-color),0 0 0 var(--cdp-web-button-ring-width) var(--cdp-web-button-ring-color);display:inline-flex;align-items:center;justify-content:center;gap:.5em;padding:1em;border-radius:9999em;border:0;background-color:transparent;color:var(--cdp-web-colors-page-text-default);font-size:1em;font-weight:500;line-height:1.5;text-decoration:none;cursor:pointer;transition:all .15s ease-in-out;-webkit-user-select:none;user-select:none}.Button-module__primary___s1sM6{background-color:var(--cdp-web-colors-cta-primary-bg-default);color:var(--cdp-web-colors-cta-primary-text-default)}.Button-module__primary___s1sM6:hover{background-color:var(--cdp-web-colors-cta-primary-bg-hover);color:var(--cdp-web-colors-cta-primary-text-hover)}.Button-module__primary___s1sM6:focus{outline:none}.Button-module__primary___s1sM6:focus-visible{--cdp-web-button-ring-color: var(--cdp-web-colors-cta-primary-border-focus);--cdp-web-button-ring-inset-color: var(--cdp-web-colors-page-bg-default);outline:none}.Button-module__secondary___R0waJ{background-color:var(--cdp-web-colors-cta-secondary-bg-default);color:var(--cdp-web-colors-cta-secondary-text-default)}.Button-module__secondary___R0waJ:hover{background-color:var(--cdp-web-colors-cta-secondary-bg-hover);color:var(--cdp-web-colors-cta-secondary-text-hover)}.Button-module__secondary___R0waJ:focus{outline:none}.Button-module__secondary___R0waJ:focus-visible{--cdp-web-button-ring-color: var(--cdp-web-colors-cta-secondary-border-focus);--cdp-web-button-ring-inset-color: var(--cdp-web-colors-page-bg-default);outline:none}.Button-module__transparent-primary___Ah0yM{background-color:transparent;color:var(--cdp-web-colors-link-primary-text-default)}.Button-module__transparent-primary___Ah0yM:hover{color:var(--cdp-web-colors-link-primary-text-hover)}.Button-module__transparent-primary___Ah0yM:focus{outline:none}.Button-module__transparent-primary___Ah0yM:focus-visible{--cdp-web-button-ring-color: var(--cdp-web-colors-link-primary-text-default);outline:none}.Button-module__transparent-secondary___kk5sZ{background-color:transparent;color:var(--cdp-web-colors-link-secondary-text-default)}.Button-module__transparent-secondary___kk5sZ:hover{color:var(--cdp-web-colors-link-secondary-text-hover)}.Button-module__transparent-secondary___kk5sZ:focus{outline:none}.Button-module__transparent-secondary___kk5sZ:focus-visible{--cdp-web-button-ring-color: var(--cdp-web-colors-link-secondary-text-default);outline:none}
1
+ .Button-module__btn___Fx11X{--cdp-web-button-ring-color: transparent;--cdp-web-button-ring-width: 2px;--cdp-web-button-ring-inset-color: transparent;--cdp-web-button-ring-inset-width: 2px;box-sizing:border-box;box-shadow:inset 0 0 0 var(--cdp-web-button-ring-inset-width) var(--cdp-web-button-ring-inset-color),0 0 0 var(--cdp-web-button-ring-width) var(--cdp-web-button-ring-color);display:inline-flex;align-items:center;justify-content:center;gap:.5em;padding:1em;border-radius:9999em;border:0;background-color:transparent;color:var(--cdp-web-colors-page-text-default);font-size:1em;font-weight:500;line-height:1.5;text-decoration:none;cursor:pointer;transition:all .15s ease-in-out;-webkit-user-select:none;user-select:none}.Button-module__link-primary___wROmv,.Button-module__link-secondary___5VErP{padding:0 .25em}.Button-module__primary___s1sM6{background-color:var(--cdp-web-colors-cta-primary-bg-default);color:var(--cdp-web-colors-cta-primary-text-default)}.Button-module__primary___s1sM6:hover{background-color:var(--cdp-web-colors-cta-primary-bg-hover);color:var(--cdp-web-colors-cta-primary-text-hover)}.Button-module__primary___s1sM6:focus{outline:none}.Button-module__primary___s1sM6:focus-visible{--cdp-web-button-ring-color: var(--cdp-web-colors-cta-primary-border-focus);--cdp-web-button-ring-inset-color: var(--cdp-web-colors-page-bg-default);outline:none}.Button-module__secondary___R0waJ{background-color:var(--cdp-web-colors-cta-secondary-bg-default);color:var(--cdp-web-colors-cta-secondary-text-default)}.Button-module__secondary___R0waJ:hover{background-color:var(--cdp-web-colors-cta-secondary-bg-hover);color:var(--cdp-web-colors-cta-secondary-text-hover)}.Button-module__secondary___R0waJ:focus{outline:none}.Button-module__secondary___R0waJ:focus-visible{--cdp-web-button-ring-color: var(--cdp-web-colors-cta-secondary-border-focus);--cdp-web-button-ring-inset-color: var(--cdp-web-colors-page-bg-default);outline:none}.Button-module__link-primary___wROmv,.Button-module__transparent-primary___Ah0yM{background-color:transparent;color:var(--cdp-web-colors-link-primary-text-default)}.Button-module__link-primary___wROmv:hover,.Button-module__transparent-primary___Ah0yM:hover{color:var(--cdp-web-colors-link-primary-text-hover)}.Button-module__link-primary___wROmv:focus,.Button-module__transparent-primary___Ah0yM:focus{outline:none}.Button-module__link-primary___wROmv:focus-visible,.Button-module__transparent-primary___Ah0yM:focus-visible{--cdp-web-button-ring-color: var(--cdp-web-colors-link-primary-text-default);outline:none}.Button-module__link-secondary___5VErP,.Button-module__transparent-secondary___kk5sZ{background-color:transparent;color:var(--cdp-web-colors-link-secondary-text-default)}.Button-module__link-secondary___5VErP:hover,.Button-module__transparent-secondary___kk5sZ:hover{color:var(--cdp-web-colors-link-secondary-text-hover)}.Button-module__link-secondary___5VErP:focus,.Button-module__transparent-secondary___kk5sZ:focus{outline:none}.Button-module__link-secondary___5VErP:focus-visible,.Button-module__transparent-secondary___kk5sZ:focus-visible{--cdp-web-button-ring-color: var(--cdp-web-colors-link-secondary-text-default);outline:none}
@@ -1 +1 @@
1
- .Error-module__error___mRFLG{color:var(--cdp-web-colors-fg-negative);font-size:.875em;line-height:1.43;display:flex;align-items:center;gap:.25em;margin:0}.Error-module__icon___web4F{width:1em;height:1em}
1
+ .Error-module__error___mRFLG{color:var(--cdp-web-colors-fg-negative);line-height:1.25em;display:flex;align-items:center;gap:.25em;margin:0}.Error-module__error___mRFLG span{font-size:.875em}.Error-module__icon___web4F{width:1em;height:1em;flex-grow:0;flex-shrink:0}
@@ -1 +1 @@
1
- .Input-module__input___WjT81{--cdp-web-input-ring-width: 1px;--cdp-web-input-ring-color: var(--cdp-web-colors-input-border-default);box-sizing:border-box;font-size:1em;padding:.75em;border-radius:.5em;border:1px solid transparent;background-color:var(--cdp-web-colors-input-bg-default);box-shadow:0 0 0 var(--cdp-web-input-ring-width) var(--cdp-web-input-ring-color);color:var(--cdp-web-colors-input-text-default);transition:all .15s ease-in-out;width:100%}.Input-module__input___WjT81::placeholder{color:var(--cdp-web-colors-input-placeholder-default)}.Input-module__input___WjT81:focus-visible{outline:none;--cdp-web-input-ring-color: var(--cdp-web-colors-input-border-focus);--cdp-web-input-ring-width: 2px}.Input-module__input___WjT81[aria-invalid=true]{--cdp-web-input-ring-color: var(--cdp-web-colors-input-border-error)}
1
+ .Input-module__input___WjT81{--cdp-web-input-ring-width: 1px;--cdp-web-input-ring-color: var(--cdp-web-colors-input-border-default);box-sizing:border-box;font-size:1em;line-height:1.5;padding:1em .75em;border-radius:.5em;border:0;background-color:var(--cdp-web-colors-input-bg-default);box-shadow:0 0 0 var(--cdp-web-input-ring-width) var(--cdp-web-input-ring-color) inset;color:var(--cdp-web-colors-input-text-default);transition:all .15s ease-in-out;width:100%}.Input-module__input___WjT81::placeholder{color:var(--cdp-web-colors-input-placeholder-default)}.Input-module__input___WjT81:focus-visible{outline:none;--cdp-web-input-ring-color: var(--cdp-web-colors-input-border-focus);--cdp-web-input-ring-width: 2px}.Input-module__input___WjT81[aria-invalid=true]{--cdp-web-input-ring-color: var(--cdp-web-colors-input-border-error)}
@@ -1 +1 @@
1
- .SignInForm-module__form___8Mc3V{display:flex;flex-direction:column;gap:1em}.SignInForm-module__form-footer___PqM2J{display:flex;flex-flow:column nowrap;align-items:stretch;justify-content:center;gap:.5em;min-height:1.5em}.SignInForm-module__server-state-wrapper___QVsXy{min-height:1.5em}.SignInForm-module__loading-spinner___W6gZo{color:var(--cdp-web-colors-link-primary-text-default);display:block;margin:0 auto}.SignInForm-module__form-footer___PqM2J button{width:100%}.SignInForm-module__server-error___dD9VE{justify-content:center}.SignInForm-module__reset-timer___Ms2YZ{color:var(--cdp-web-colors-page-text-muted);font-size:.875em;font-weight:500;line-height:1em;padding:1.5em 0;text-align:center}.SignInForm-module__reset-timer___Ms2YZ p{margin:0}.SignInForm-module__footer___6Lo9w{color:var(--cdp-web-colors-page-text-muted);display:flex;align-items:center;justify-content:center;gap:.5em;font-size:.75em;line-height:1;padding:.5em 2em 1em}.SignInForm-module__coinbase-icon___vGv7u{height:1em;width:auto}.SignInForm-module__footer___6Lo9w p{display:flex;align-items:center;gap:.25em;margin:0}.SignInForm-module__hr___fOcy4{border:0;border-top:1px solid var(--cdp-web-colors-page-border-default);width:100%}.SignInForm-module__icon___qkJnq{height:auto;width:1em}
1
+ .SignInForm-module__form-wrapper___SlQkZ{display:flex;flex-direction:column}.SignInForm-module__form___8Mc3V{display:flex;flex-direction:column;gap:1em;padding-bottom:2em}.SignInForm-module__form-footer___PqM2J{display:flex;flex-flow:column nowrap;align-items:stretch;justify-content:center;min-height:1.5em;padding-top:1.5em}.SignInForm-module__server-state-wrapper___QVsXy{margin-top:-1.5em;min-height:1.5em;position:relative;top:-.25em}.SignInForm-module__loading-spinner___W6gZo{color:var(--cdp-web-colors-link-primary-text-default);display:block;margin:0 auto}.SignInForm-module__server-error___dD9VE{justify-content:center}.SignInForm-module__resend-wrapper___ODSQA{display:flex;align-items:center;justify-content:center;text-align:center;min-height:1.5em}.SignInForm-module__reset-timer___Ms2YZ{color:var(--cdp-web-colors-page-text-muted);font-weight:500;line-height:1em;min-height:1em;display:flex;align-items:center;justify-content:center}.SignInForm-module__reset-timer___Ms2YZ p{font-size:.875em;line-height:1;margin:0}.SignInForm-module__footer___6Lo9w{color:var(--cdp-web-colors-page-text-muted);display:flex;align-items:center;justify-content:center;gap:.5em;line-height:1;padding:1em 2em 1.5em}.SignInForm-module__coinbase-icon___vGv7u{height:1em;width:auto}.SignInForm-module__footer___6Lo9w p{display:flex;align-items:center;font-size:.75em;gap:.25em;margin:0}.SignInForm-module__hr___fOcy4{border:0;border-top:1px solid var(--cdp-web-colors-page-border-default);width:100%}.SignInForm-module__icon___qkJnq{height:auto;width:.75em}
@@ -1 +1 @@
1
- .SignInModal-module__trigger___IcJ8x{padding-left:2em;padding-right:2em}.SignInModal-module__modal___PErrT{--shadow-md: 0 4px 6px -1px rgb(0 0 0 / 10%), 0 2px 4px -2px rgb(0 0 0 / 10%);box-sizing:border-box;box-shadow:var(--shadow-md);width:100%;max-width:38.25em;background:var(--cdp-web-colors-page-bg-default);border-radius:.5em;outline:1px solid var(--cdp-web-colors-page-border-default);position:relative}.SignInModal-module__modal___PErrT[data-state=open]{animation:SignInModal-module__slide-in___eayZg .2s ease-out,SignInModal-module__fade-in___YW32x .2s ease-out}.SignInModal-module__modal___PErrT[data-state=closed]{animation:SignInModal-module__slide-out___fY2xG .2s ease-in,SignInModal-module__fade-out___WE6g4 .2s ease-in}.SignInModal-module__sign-in___n05-5{height:100%}.SignInModal-module__sign-in-form___Jzx1-,.SignInModal-module__sign-in-form___Jzx1- form{flex-grow:1}.SignInModal-module__sign-in-title___cju2s,.SignInModal-module__sign-in-description___-Oi9q{text-align:center}.SignInModal-module__sign-in-image___DGg7B{display:flex;justify-content:center;align-items:center;flex-grow:1;margin:2em 0}.SignInModal-module__close-wrapper___zuxDu{display:flex;justify-content:flex-end;align-items:center}.SignInModal-module__close-button___k1I5Q{position:relative;left:1em;width:3em}.SignInModal-module__close-button___k1I5Q svg{height:1em;width:1em}.SignInModal-module__overlay___-0rmi{background:var(--cdp-web-colors-bg-overlay);box-sizing:border-box;-webkit-backdrop-filter:blur(.5em);backdrop-filter:blur(.5em);display:grid;grid-template-rows:auto 1fr;inset:0;overflow-y:auto;place-items:end center;position:fixed;z-index:1000}.SignInModal-module__overlay___-0rmi[data-state=open]{animation:SignInModal-module__fade-in___YW32x .2s ease-out}.SignInModal-module__overlay___-0rmi[data-state=closed]{animation:SignInModal-module__fade-out___WE6g4 .2s ease-in}.SignInModal-module__spacer___x-lRH{height:1em}@keyframes SignInModal-module__fade-in___YW32x{0%{opacity:0}to{opacity:1}}@keyframes SignInModal-module__fade-out___WE6g4{0%{opacity:1}to{opacity:0}}@keyframes SignInModal-module__slide-in___eayZg{0%{transform:translateY(100%)}to{transform:translateY(0)}}@keyframes SignInModal-module__slide-out___fY2xG{0%{transform:translateY(0)}to{transform:translateY(100%)}}@media (min-width: 400px){.SignInModal-module__overlay___-0rmi{padding:.5rem}}@media (min-width: 600px){.SignInModal-module__overlay___-0rmi{place-items:center;padding:1rem;grid-template-rows:1fr}.SignInModal-module__modal___PErrT{height:auto}.SignInModal-module__spacer___x-lRH{display:none}.SignInModal-module__sign-in___n05-5{padding-left:0;padding-right:0}.SignInModal-module__close-wrapper___zuxDu,.SignInModal-module__sign-in-image___DGg7B,.SignInModal-module__sign-in-title___cju2s,.SignInModal-module__sign-in-description___-Oi9q,.SignInModal-module__sign-in-form___Jzx1->form,.SignInModal-module__sign-in-form___Jzx1->div{padding-left:2.5em;padding-right:2.5em}.SignInModal-module__sign-in-image___DGg7B{align-self:flex-start;margin:0}.SignInModal-module__sign-in-title___cju2s,.SignInModal-module__sign-in-description___-Oi9q{text-align:left}@keyframes SignInModal-module__slide-in___eayZg{0%{transform:translateY(10%)}to{transform:translateY(0)}}@keyframes SignInModal-module__slide-out___fY2xG{0%{transform:translateY(0)}to{transform:translateY(10%)}}}
1
+ .SignInModal-module__trigger___IcJ8x{padding-left:2em;padding-right:2em}.SignInModal-module__modal___PErrT{--shadow-md: 0 4px 6px -1px rgb(0 0 0 / 10%), 0 2px 4px -2px rgb(0 0 0 / 10%);box-sizing:border-box;box-shadow:var(--shadow-md);width:100%;max-width:29.375em;background:var(--cdp-web-colors-page-bg-default);border-radius:.5em;outline:1px solid var(--cdp-web-colors-page-border-default);position:relative}.SignInModal-module__modal___PErrT[data-state=open]{animation:SignInModal-module__slide-in___eayZg .2s ease-out,SignInModal-module__fade-in___YW32x .2s ease-out}.SignInModal-module__modal___PErrT[data-state=closed]{animation:SignInModal-module__slide-out___fY2xG .2s ease-in,SignInModal-module__fade-out___WE6g4 .2s ease-in}.SignInModal-module__sign-in___n05-5{height:100%;padding:2em 0 0}.SignInModal-module__sign-in-image___DGg7B,.SignInModal-module__sign-in-title___cju2s,.SignInModal-module__sign-in-description___-Oi9q,.SignInModal-module__sign-in-form___Jzx1->form,.SignInModal-module__sign-in-form___Jzx1->div{padding-left:2em;padding-right:2em}.SignInModal-module__sign-in-form___Jzx1-,.SignInModal-module__sign-in-form___Jzx1- form{flex-grow:1}.SignInModal-module__sign-in-title___cju2s,.SignInModal-module__sign-in-description___-Oi9q{text-align:center}.SignInModal-module__sign-in-image___DGg7B{display:flex;justify-content:center;align-items:center;flex-grow:1;margin:2em 0}.SignInModal-module__close-button___k1I5Q{position:absolute;top:1.5em;right:1.5em;width:3em}.SignInModal-module__close-button___k1I5Q svg{height:1em;width:1em}.SignInModal-module__overlay___-0rmi{background:var(--cdp-web-colors-bg-overlay);box-sizing:border-box;-webkit-backdrop-filter:blur(.5em);backdrop-filter:blur(.5em);display:grid;grid-template-rows:auto 1fr;inset:0;overflow-y:auto;place-items:end center;position:fixed;z-index:1000}.SignInModal-module__overlay___-0rmi[data-state=open]{animation:SignInModal-module__fade-in___YW32x .2s ease-out}.SignInModal-module__overlay___-0rmi[data-state=closed]{animation:SignInModal-module__fade-out___WE6g4 .2s ease-in}.SignInModal-module__spacer___x-lRH{height:1em}@keyframes SignInModal-module__fade-in___YW32x{0%{opacity:0}to{opacity:1}}@keyframes SignInModal-module__fade-out___WE6g4{0%{opacity:1}to{opacity:0}}@keyframes SignInModal-module__slide-in___eayZg{0%{transform:translateY(100%)}to{transform:translateY(0)}}@keyframes SignInModal-module__slide-out___fY2xG{0%{transform:translateY(0)}to{transform:translateY(100%)}}@media (min-width: 400px){.SignInModal-module__overlay___-0rmi{padding:.5rem}}@media (min-width: 470px){.SignInModal-module__overlay___-0rmi{place-items:center;padding:1rem;grid-template-rows:1fr}.SignInModal-module__modal___PErrT{height:auto}.SignInModal-module__spacer___x-lRH{display:none}.SignInModal-module__sign-in___n05-5{padding-top:2.5em}.SignInModal-module__sign-in-image___DGg7B,.SignInModal-module__sign-in-title___cju2s,.SignInModal-module__sign-in-description___-Oi9q,.SignInModal-module__sign-in-form___Jzx1->form,.SignInModal-module__sign-in-form___Jzx1->div{padding-left:2.5em;padding-right:2.5em}.SignInModal-module__sign-in-image___DGg7B{align-self:flex-start;margin:0}.SignInModal-module__sign-in-image___DGg7B:empty{display:none}.SignInModal-module__sign-in-title___cju2s,.SignInModal-module__sign-in-description___-Oi9q{text-align:left}@keyframes SignInModal-module__slide-in___eayZg{0%{transform:translateY(10%)}to{transform:translateY(0)}}@keyframes SignInModal-module__slide-out___fY2xG{0%{transform:translateY(0)}to{transform:translateY(10%)}}}
@@ -1,29 +1,35 @@
1
- import { jsx as n, jsxs as p, Fragment as _ } from "react/jsx-runtime";
2
- import { forwardRef as c, useMemo as y } from "react";
1
+ import { jsx as n, jsxs as d, Fragment as y } from "react/jsx-runtime";
2
+ import { forwardRef as c, useMemo as p } from "react";
3
3
  import "../../theme/theme.js";
4
4
  import { LoadingSpinner as u } from "../LoadingSpinner/index.js";
5
5
  import { VisuallyHidden as l } from "../VisuallyHidden/index.js";
6
- import '../../assets/Button.css';const f = "Button-module__btn___Fx11X", B = "Button-module__primary___s1sM6", h = "Button-module__secondary___R0waJ", r = {
7
- btn: f,
6
+ import '../../assets/Button.css';const k = "Button-module__btn___Fx11X", B = "Button-module__primary___s1sM6", f = "Button-module__secondary___R0waJ", r = {
7
+ btn: k,
8
+ "link-primary": "Button-module__link-primary___wROmv",
9
+ "link-secondary": "Button-module__link-secondary___5VErP",
8
10
  primary: B,
9
- secondary: h,
11
+ secondary: f,
10
12
  "transparent-primary": "Button-module__transparent-primary___Ah0yM",
11
13
  "transparent-secondary": "Button-module__transparent-secondary___kk5sZ"
12
- }, b = c(
14
+ }, h = c(
13
15
  ({
14
- children: a,
16
+ children: t,
15
17
  className: e = "",
16
18
  isPending: o,
17
19
  pendingLabel: s = "Loading...",
18
- variant: t = "primary",
19
- ...m
20
- }, i) => {
21
- const d = y(() => {
22
- switch (t) {
20
+ variant: a = "primary",
21
+ ...i
22
+ }, m) => {
23
+ const _ = p(() => {
24
+ switch (a) {
23
25
  case "primary":
24
26
  return r.primary;
25
27
  case "secondary":
26
28
  return r.secondary;
29
+ case "linkPrimary":
30
+ return r["link-primary"];
31
+ case "linkSecondary":
32
+ return r["link-secondary"];
27
33
  case "transparentPrimary":
28
34
  return r["transparent-primary"];
29
35
  case "transparentSecondary":
@@ -31,14 +37,14 @@ import '../../assets/Button.css';const f = "Button-module__btn___Fx11X", B = "Bu
31
37
  default:
32
38
  return r.primary;
33
39
  }
34
- }, [t]);
35
- return /* @__PURE__ */ n("button", { className: `${r.btn} ${d} ${e}`, ref: i, ...m, children: o ? /* @__PURE__ */ p(_, { children: [
40
+ }, [a]);
41
+ return /* @__PURE__ */ n("button", { className: `${r.btn} ${_} ${e}`, ref: m, ...i, children: o ? /* @__PURE__ */ d(y, { children: [
36
42
  /* @__PURE__ */ n(u, { "aria-hidden": "true" }),
37
43
  /* @__PURE__ */ n(l, { children: s })
38
- ] }) : a });
44
+ ] }) : t });
39
45
  }
40
46
  );
41
- b.displayName = "Button";
47
+ h.displayName = "Button";
42
48
  export {
43
- b as Button
49
+ h as Button
44
50
  };
@@ -3,6 +3,7 @@ import { ThemeProviderProps } from '../ThemeProvider';
3
3
  export interface AppConfig {
4
4
  name: string;
5
5
  logoUrl?: string;
6
+ showCoinbaseFooter?: boolean;
6
7
  }
7
8
  export type CDPReactProviderProps = {
8
9
  app?: AppConfig;
@@ -1,20 +1,32 @@
1
1
  import { jsx as t } from "react/jsx-runtime";
2
- import { CDPContext as s, CDPHooksProvider as C } from "@coinbase/cdp-hooks";
3
- import { createContext as d, useContext as i, useMemo as m } from "react";
4
- import { ThemeProvider as u } from "../ThemeProvider/index.js";
5
- const l = ({ children: o, config: e, theme: r, app: c }) => {
6
- const n = /* @__PURE__ */ t(f, { app: c, children: /* @__PURE__ */ t(u, { theme: r, children: o }) });
7
- return i(s) ? n : /* @__PURE__ */ t(C, { config: e, children: n });
8
- }, p = d(void 0), f = ({ children: o, app: e }) => {
9
- const r = m(() => ({ app: e || { name: "", logoUrl: "" } }), [e]);
2
+ import { CDPContext as c, CDPHooksProvider as C } from "@coinbase/cdp-hooks";
3
+ import { createContext as d, useContext as i, useMemo as u } from "react";
4
+ import { ThemeProvider as m } from "../ThemeProvider/index.js";
5
+ const g = ({ children: o, config: e, theme: r, app: s }) => {
6
+ const n = /* @__PURE__ */ t(x, { app: s, children: /* @__PURE__ */ t(m, { theme: r, children: o }) });
7
+ return i(c) ? n : /* @__PURE__ */ t(C, { config: e, children: n });
8
+ }, p = d(void 0), f = {
9
+ name: "",
10
+ logoUrl: "",
11
+ showCoinbaseFooter: !0
12
+ }, x = ({ children: o, app: e }) => {
13
+ const r = u(
14
+ () => ({
15
+ app: {
16
+ ...f,
17
+ ...e
18
+ }
19
+ }),
20
+ [e]
21
+ );
10
22
  return /* @__PURE__ */ t(p.Provider, { value: r, children: o });
11
- }, g = () => {
23
+ }, A = () => {
12
24
  const o = i(p);
13
25
  if (!o)
14
26
  throw new Error("useAppConfig must be used within an AppConfigProvider");
15
27
  return o.app;
16
28
  };
17
29
  export {
18
- l as CDPReactProvider,
19
- g as useAppConfig
30
+ g as CDPReactProvider,
31
+ A as useAppConfig
20
32
  };
@@ -1,4 +1,4 @@
1
- import { jsxs as a, jsx as o } from "react/jsx-runtime";
1
+ import { jsxs as d, jsx as o } from "react/jsx-runtime";
2
2
  import { OneTimePasswordField as _, OneTimePasswordFieldInput as f, OneTimePasswordFieldHiddenInput as P } from "@radix-ui/react-one-time-password-field";
3
3
  import { forwardRef as O, useId as T, useRef as h, useEffect as y } from "react";
4
4
  import { Input as I } from "../Input/index.js";
@@ -9,18 +9,18 @@ import '../../assets/OTP.css';const w = "OTP-module__otp___EUcSo", N = "OTP-modu
9
9
  "input-container": "OTP-module__input-container___-yRBL",
10
10
  input: N
11
11
  }, R = O(
12
- ({ error: i, passwordLength: s = 6, className: d = "", ...p }, t) => {
13
- const u = T(), c = h(/* @__PURE__ */ new Map()), l = (e, n) => {
14
- e ? c.current.set(n, e) : c.current.delete(n);
12
+ ({ error: i, passwordLength: s = 6, className: l = "", ...c }, n) => {
13
+ const u = T(), a = h(/* @__PURE__ */ new Map()), p = (e, t) => {
14
+ e ? a.current.set(t, e) : a.current.delete(t);
15
15
  };
16
16
  return y(() => {
17
- const e = Array.from(c.current.values());
18
- typeof t == "function" ? t(e) : t && (t.current = e);
19
- }, [s, t]), /* @__PURE__ */ a("div", { className: `${r.otp} ${d}`, children: [
20
- /* @__PURE__ */ a(
17
+ const e = Array.from(a.current.values());
18
+ typeof n == "function" ? n(e) : n && (n.current = e);
19
+ }, [s, n]), /* @__PURE__ */ d("div", { className: `${r.otp} ${l}`, children: [
20
+ /* @__PURE__ */ d(
21
21
  _,
22
22
  {
23
- ...p,
23
+ ...c,
24
24
  className: r["group-container"],
25
25
  "aria-invalid": !!i,
26
26
  "aria-describedby": i ? u : void 0,
@@ -28,7 +28,14 @@ import '../../assets/OTP.css';const w = "OTP-module__otp___EUcSo", N = "OTP-modu
28
28
  "--cdp-web-otp-input-width": `${Math.floor(100 / s)}%`
29
29
  },
30
30
  children: [
31
- Array.from({ length: s }, (e, n) => /* @__PURE__ */ o("div", { className: r["input-container"], children: /* @__PURE__ */ o(f, { asChild: !0, children: /* @__PURE__ */ o(I, { ref: (m) => l(m, n), className: r.input }) }) }, n)),
31
+ Array.from({ length: s }, (e, t) => /* @__PURE__ */ o("div", { className: r["input-container"], children: /* @__PURE__ */ o(f, { asChild: !0, children: /* @__PURE__ */ o(
32
+ I,
33
+ {
34
+ name: `${c.name || "otp"}-${t}`,
35
+ ref: (m) => p(m, t),
36
+ className: r.input
37
+ }
38
+ ) }) }, t)),
32
39
  /* @__PURE__ */ o(P, {})
33
40
  ]
34
41
  }
@@ -1,76 +1,80 @@
1
- import { jsxs as i, jsx as o } from "react/jsx-runtime";
2
- import { useSignInWithEmail as N, useVerifyEmailOTP as U } from "@coinbase/cdp-hooks";
1
+ import { jsxs as s, jsx as o, Fragment as A } from "react/jsx-runtime";
2
+ import { useSignInWithEmail as U, useVerifyEmailOTP as V } from "@coinbase/cdp-hooks";
3
3
  import { Form as P, FormSubmit as R } from "@radix-ui/react-form";
4
- import { useState as v, useEffect as y, useRef as A } from "react";
5
- import { Field as V } from "../Field/index.js";
6
- import { withValidityState as B } from "../Input/index.js";
7
- import { LoadingSpinner as x } from "../LoadingSpinner/index.js";
8
- import { OTP as q } from "../OTP/index.js";
9
- import { ServerError as C } from "../ServerError/index.js";
10
- import { VisuallyHidden as k } from "../VisuallyHidden/index.js";
11
- import { IconCoinbaseWordmark as D } from "../../icons/IconCoinbaseWordmark.js";
12
- import { IconLock as W } from "../../icons/IconLock.js";
4
+ import { useState as v, useEffect as y, useRef as B } from "react";
5
+ import { Button as C } from "../Button/index.js";
6
+ import { useAppConfig as k } from "../CDPReactProvider/index.js";
7
+ import { Field as x } from "../Field/index.js";
8
+ import { withValidityState as q } from "../Input/index.js";
9
+ import { OTP as D } from "../OTP/index.js";
10
+ import { ServerError as O } from "../ServerError/index.js";
11
+ import { IconCoinbaseWordmark as W } from "../../icons/IconCoinbaseWordmark.js";
12
+ import { IconLock as Q } from "../../icons/IconLock.js";
13
13
  import { isApiError as T } from "../../utils/isApiError.js";
14
- import { isEmailInvalid as $ } from "../../utils/isEmailInvalid.js";
14
+ import { isEmailInvalid as Z } from "../../utils/isEmailInvalid.js";
15
15
  import { useSignInContext as E } from "./SignInProvider.js";
16
- import { Button as O } from "../Button/index.js";
17
- import '../../assets/SignInForm.css';const j = "SignInForm-module__form___8Mc3V", J = "SignInForm-module__footer___6Lo9w", Z = "SignInForm-module__hr___fOcy4", G = "SignInForm-module__icon___qkJnq", n = {
18
- form: j,
16
+ import { LoadingSpinner as $ } from "../LoadingSpinner/index.js";
17
+ import { VisuallyHidden as j } from "../VisuallyHidden/index.js";
18
+ import '../../assets/SignInForm.css';const J = "SignInForm-module__form___8Mc3V", G = "SignInForm-module__footer___6Lo9w", H = "SignInForm-module__hr___fOcy4", X = "SignInForm-module__icon___qkJnq", n = {
19
+ "form-wrapper": "SignInForm-module__form-wrapper___SlQkZ",
20
+ form: J,
19
21
  "form-footer": "SignInForm-module__form-footer___PqM2J",
20
22
  "server-state-wrapper": "SignInForm-module__server-state-wrapper___QVsXy",
21
23
  "loading-spinner": "SignInForm-module__loading-spinner___W6gZo",
22
24
  "server-error": "SignInForm-module__server-error___dD9VE",
25
+ "resend-wrapper": "SignInForm-module__resend-wrapper___ODSQA",
23
26
  "reset-timer": "SignInForm-module__reset-timer___Ms2YZ",
24
- footer: J,
27
+ footer: G,
25
28
  "coinbase-icon": "SignInForm-module__coinbase-icon___vGv7u",
26
- hr: Z,
27
- icon: G
28
- }, H = ({ submit: u }) => {
29
- const { state: s, dispatch: d } = E(), e = () => d({ type: "CLEAR_ERROR" }), _ = (p) => (p.preventDefault(), u(s.email));
30
- return /* @__PURE__ */ i(
29
+ hr: H,
30
+ icon: X
31
+ }, Y = ({ submit: _ }) => {
32
+ const { state: i, dispatch: d } = E(), e = () => d({ type: "CLEAR_ERROR" }), u = (p) => (p.preventDefault(), _(i.email));
33
+ return /* @__PURE__ */ s(
31
34
  P,
32
35
  {
33
36
  className: n.form,
34
37
  onClearServerErrors: e,
35
- onSubmit: _,
38
+ onSubmit: u,
36
39
  children: [
37
40
  /* @__PURE__ */ o(
38
- V,
41
+ x,
39
42
  {
40
43
  label: "Email address",
41
44
  name: "email",
42
45
  validators: [
43
46
  ["valueMissing", "Email is required"],
44
47
  ["typeMismatch", "Use a valid email address"],
45
- [$, "Use a valid email address"]
48
+ [Z, "Use a valid email address"]
46
49
  ],
47
- children: B({
50
+ children: q({
51
+ autoComplete: "email",
48
52
  type: "email",
49
53
  placeholder: "name@example.com",
50
54
  required: !0,
51
- value: s.email,
55
+ value: i.email,
52
56
  onChange: (p) => {
53
57
  d({ type: "SET_EMAIL", payload: { email: p.target.value } });
54
58
  }
55
59
  })
56
60
  }
57
61
  ),
58
- s.error && /* @__PURE__ */ o(C, { error: s.error, className: n["server-error"] }),
59
- /* @__PURE__ */ o(R, { asChild: !0, children: /* @__PURE__ */ o(O, { type: "submit", isPending: s.isPending, children: "Continue with email" }) })
62
+ i.error && /* @__PURE__ */ o(O, { error: i.error, className: n["server-error"] }),
63
+ /* @__PURE__ */ o(R, { asChild: !0, children: /* @__PURE__ */ o(C, { type: "submit", isPending: i.isPending, children: "Continue with email" }) })
60
64
  ]
61
65
  }
62
66
  );
63
- }, Q = ({
64
- reset: u,
65
- resetCountdown: s,
67
+ }, z = ({
68
+ reset: _,
69
+ resetCountdown: i,
66
70
  submit: d
67
71
  }) => {
68
- const { state: e, dispatch: _ } = E(), p = () => _({ type: "CLEAR_ERROR" }), l = A([]), f = (c) => (c.preventDefault(), d(e.otp)), h = () => {
69
- u(), l.current[0]?.focus();
72
+ const { state: e, dispatch: u } = E(), p = () => u({ type: "CLEAR_ERROR" }), l = B([]), f = (c) => (c.preventDefault(), d(e.otp)), S = () => {
73
+ _(), l.current[0]?.focus();
70
74
  };
71
75
  return y(() => {
72
76
  e.step === "otp" && l.current[0]?.focus();
73
- }, [e.step]), /* @__PURE__ */ i(
77
+ }, [e.step]), /* @__PURE__ */ s(
74
78
  P,
75
79
  {
76
80
  className: `${n.form}`,
@@ -78,7 +82,7 @@ import '../../assets/SignInForm.css';const j = "SignInForm-module__form___8Mc3V"
78
82
  onSubmit: f,
79
83
  children: [
80
84
  /* @__PURE__ */ o(
81
- q,
85
+ D,
82
86
  {
83
87
  ref: l,
84
88
  name: "otp",
@@ -87,37 +91,37 @@ import '../../assets/SignInForm.css';const j = "SignInForm-module__form___8Mc3V"
87
91
  value: e.otp,
88
92
  onChange: (c) => c.preventDefault(),
89
93
  onValueChange: (c) => {
90
- _({ type: "SET_OTP", payload: { otp: c } });
94
+ u({ type: "SET_OTP", payload: { otp: c } });
91
95
  },
92
96
  autoSubmit: !0
93
97
  }
94
98
  ),
95
- /* @__PURE__ */ i("div", { className: n["form-footer"], children: [
96
- (e.isPending && !e.canResetOTP || e.error) && /* @__PURE__ */ i("div", { className: n["server-state-wrapper"], children: [
97
- e.isPending && !e.canResetOTP && /* @__PURE__ */ o(x, { className: n["loading-spinner"] }),
98
- e.error && /* @__PURE__ */ o(C, { error: e.error, className: n["server-error"] })
99
+ /* @__PURE__ */ s("div", { className: n["form-footer"], children: [
100
+ (e.isPending && !e.canResetOTP || e.error) && /* @__PURE__ */ s("div", { className: n["server-state-wrapper"], children: [
101
+ e.isPending && !e.canResetOTP && /* @__PURE__ */ o($, { className: n["loading-spinner"] }),
102
+ e.error && /* @__PURE__ */ o(O, { error: e.error, className: n["server-error"] })
99
103
  ] }),
100
- /* @__PURE__ */ i("div", { children: [
104
+ /* @__PURE__ */ s("div", { className: n["resend-wrapper"], children: [
101
105
  e.canResetOTP && /* @__PURE__ */ o(R, { asChild: !0, children: /* @__PURE__ */ o(
102
- O,
106
+ C,
103
107
  {
104
108
  type: "button",
105
- onClick: h,
109
+ onClick: S,
106
110
  isPending: e.isPending,
107
- variant: "transparentPrimary",
111
+ variant: "linkPrimary",
108
112
  children: "Resend code"
109
113
  }
110
114
  ) }),
111
- !e.canResetOTP && /* @__PURE__ */ o("div", { className: n["reset-timer"], children: /* @__PURE__ */ i("p", { children: [
115
+ !e.canResetOTP && /* @__PURE__ */ o("div", { className: n["reset-timer"], children: /* @__PURE__ */ s("p", { children: [
112
116
  "Resend code in ",
113
- /* @__PURE__ */ i("span", { "aria-hidden": "true", children: [
114
- s,
117
+ /* @__PURE__ */ s("span", { "aria-hidden": "true", children: [
118
+ i,
115
119
  "s"
116
120
  ] }),
117
- /* @__PURE__ */ i(k, { children: [
118
- s,
121
+ /* @__PURE__ */ s(j, { children: [
122
+ i,
119
123
  " ",
120
- s === 1 ? "second" : "seconds"
124
+ i === 1 ? "second" : "seconds"
121
125
  ] })
122
126
  ] }) })
123
127
  ] })
@@ -125,20 +129,20 @@ import '../../assets/SignInForm.css';const j = "SignInForm-module__form___8Mc3V"
125
129
  ]
126
130
  }
127
131
  );
128
- }, pe = ({
129
- as: u = "div",
130
- className: s = "",
132
+ }, Se = ({
133
+ as: _ = "div",
134
+ className: i = "",
131
135
  onSuccess: d,
132
136
  ...e
133
137
  }) => {
134
- const l = "An error occurred while signing in. Please try again.", [f, h] = v(0), [c, S] = v(!1), b = N(), F = U(), { state: a, dispatch: m } = E(), w = (t) => {
135
- h(t), S(!0);
138
+ const l = "An error occurred while signing in. Please try again.", [f, S] = v(0), [c, h] = v(!1), w = U(), b = V(), { state: a, dispatch: m } = E(), { showCoinbaseFooter: F } = k(), L = (t) => {
139
+ S(t), h(!0);
136
140
  };
137
141
  y(() => {
138
142
  if (!c)
139
143
  return;
140
144
  const t = setInterval(() => {
141
- h((r) => r > 1 ? r - 1 : (S(!1), 0));
145
+ S((r) => r > 1 ? r - 1 : (h(!1), 0));
142
146
  }, 1e3);
143
147
  return () => clearInterval(t);
144
148
  }, [c]), y(() => {
@@ -148,16 +152,16 @@ import '../../assets/SignInForm.css';const j = "SignInForm-module__form___8Mc3V"
148
152
  if (!a.isPending) {
149
153
  m({ type: "SUBMIT_EMAIL", payload: { email: t } });
150
154
  try {
151
- const { flowId: r } = await b({
155
+ const { flowId: r } = await w({
152
156
  email: t
153
157
  });
154
- m({ type: "SUBMIT_EMAIL_SUCCESS", payload: { flowId: r } }), w(60);
158
+ m({ type: "SUBMIT_EMAIL_SUCCESS", payload: { flowId: r } }), L(60);
155
159
  } catch (r) {
156
160
  const g = T(r) ? r : r instanceof Error && r.message || l;
157
161
  m({ type: "SUBMIT_EMAIL_FAILURE", payload: { error: g } }), console.error(r);
158
162
  }
159
163
  }
160
- }, L = async (t) => {
164
+ }, M = async (t) => {
161
165
  if (!a.isPending) {
162
166
  if (t.length !== 6) {
163
167
  m({ type: "SET_OTP", payload: { otp: t } });
@@ -165,7 +169,7 @@ import '../../assets/SignInForm.css';const j = "SignInForm-module__form___8Mc3V"
165
169
  }
166
170
  m({ type: "SUBMIT_OTP", payload: { otp: t } });
167
171
  try {
168
- await F({
172
+ await b({
169
173
  flowId: a.flowId,
170
174
  otp: t
171
175
  }), m({ type: "SUBMIT_OTP_SUCCESS", payload: { otp: t } }), d?.();
@@ -174,23 +178,25 @@ import '../../assets/SignInForm.css';const j = "SignInForm-module__form___8Mc3V"
174
178
  m({ type: "SUBMIT_OTP_FAILURE", payload: { error: g } }), console.error(r);
175
179
  }
176
180
  }
177
- }, M = () => {
178
- m({ type: "RESET_OTP" }), S(!1), I(a.email);
181
+ }, N = () => {
182
+ m({ type: "RESET_OTP" }), h(!1), I(a.email);
179
183
  };
180
- return /* @__PURE__ */ i(u, { className: `${n.form} ${s}`, ...e, children: [
181
- a.step === "email" && /* @__PURE__ */ o(H, { submit: I }),
182
- a.step === "otp" && /* @__PURE__ */ o(Q, { submit: L, reset: M, resetCountdown: f }),
183
- /* @__PURE__ */ o("hr", { className: n.hr }),
184
- /* @__PURE__ */ i("div", { className: n.footer, children: [
185
- /* @__PURE__ */ o(W, { className: n.icon }),
186
- /* @__PURE__ */ i("p", { children: [
187
- "Secured by",
188
- " ",
189
- /* @__PURE__ */ o(D, { className: n["coinbase-icon"], "aria-label": "Coinbase" })
184
+ return /* @__PURE__ */ s(_, { className: `${n["form-wrapper"]} ${i}`, ...e, children: [
185
+ a.step === "email" && /* @__PURE__ */ o(Y, { submit: I }),
186
+ a.step === "otp" && /* @__PURE__ */ o(z, { submit: M, reset: N, resetCountdown: f }),
187
+ F && /* @__PURE__ */ s(A, { children: [
188
+ /* @__PURE__ */ o("hr", { className: n.hr }),
189
+ /* @__PURE__ */ s("div", { className: n.footer, children: [
190
+ /* @__PURE__ */ o(Q, { className: n.icon }),
191
+ /* @__PURE__ */ s("p", { children: [
192
+ "Secured by",
193
+ " ",
194
+ /* @__PURE__ */ o(W, { className: n["coinbase-icon"], "aria-label": "Coinbase" })
195
+ ] })
190
196
  ] })
191
197
  ] })
192
198
  ] });
193
199
  };
194
200
  export {
195
- pe as SignInForm
201
+ Se as SignInForm
196
202
  };
@@ -1,34 +1,33 @@
1
1
  import { jsxs as o, jsx as i } from "react/jsx-runtime";
2
- import { Dialog as t, DialogTrigger as g, DialogPortal as _, DialogOverlay as d, DialogContent as c, DialogClose as p, DialogTitle as u, DialogDescription as I } from "@radix-ui/react-dialog";
2
+ import { Dialog as g, DialogTrigger as m, DialogPortal as _, DialogOverlay as d, DialogContent as c, DialogClose as p, DialogTitle as I, DialogDescription as u } from "@radix-ui/react-dialog";
3
3
  import "react";
4
4
  import { IconXMark as h } from "../../icons/IconXMark.js";
5
+ import { Button as r } from "../Button/index.js";
5
6
  import { SignIn as S } from "../SignIn/index.js";
6
7
  import { useTheme as f } from "../ThemeProvider/index.js";
7
8
  import { SignInImage as M } from "../SignIn/SignInImage.js";
8
9
  import { SignInTitle as D } from "../SignIn/SignInTitle.js";
9
10
  import { SignInDescription as v } from "../SignIn/SignInDescription.js";
10
11
  import { SignInForm as N } from "../SignIn/SignInForm.js";
11
- import { Button as r } from "../Button/index.js";
12
12
  import '../../assets/SignInModal.css';const y = "SignInModal-module__trigger___IcJ8x", C = "SignInModal-module__modal___PErrT", x = "SignInModal-module__overlay___-0rmi", b = "SignInModal-module__spacer___x-lRH", n = {
13
13
  trigger: y,
14
14
  modal: C,
15
15
  "sign-in": "SignInModal-module__sign-in___n05-5",
16
- "sign-in-form": "SignInModal-module__sign-in-form___Jzx1-",
16
+ "sign-in-image": "SignInModal-module__sign-in-image___DGg7B",
17
17
  "sign-in-title": "SignInModal-module__sign-in-title___cju2s",
18
18
  "sign-in-description": "SignInModal-module__sign-in-description___-Oi9q",
19
- "sign-in-image": "SignInModal-module__sign-in-image___DGg7B",
20
- "close-wrapper": "SignInModal-module__close-wrapper___zuxDu",
19
+ "sign-in-form": "SignInModal-module__sign-in-form___Jzx1-",
21
20
  "close-button": "SignInModal-module__close-button___k1I5Q",
22
21
  overlay: x,
23
22
  spacer: b
24
- }, F = ({ children: l, open: a, setIsOpen: s, onSuccess: e }) => {
25
- const { cssVariables: m } = f();
26
- return /* @__PURE__ */ o(t, { open: a, onOpenChange: s, children: [
27
- /* @__PURE__ */ i(g, { asChild: !0, children: l || /* @__PURE__ */ i(r, { variant: "primary", className: n.trigger, children: "Sign In" }) }),
28
- /* @__PURE__ */ i(_, { children: /* @__PURE__ */ o(d, { className: n.overlay, style: m, children: [
23
+ }, G = ({ children: l, open: a, setIsOpen: s, onSuccess: e }) => {
24
+ const { cssVariables: t } = f();
25
+ return /* @__PURE__ */ o(g, { open: a, onOpenChange: s, children: [
26
+ /* @__PURE__ */ i(m, { asChild: !0, children: l || /* @__PURE__ */ i(r, { variant: "primary", className: n.trigger, children: "Sign In" }) }),
27
+ /* @__PURE__ */ i(_, { children: /* @__PURE__ */ o(d, { className: n.overlay, style: t, children: [
29
28
  /* @__PURE__ */ i("div", { className: n.spacer }),
30
29
  /* @__PURE__ */ i(c, { className: n.modal, children: /* @__PURE__ */ o(S, { onSuccess: e, className: n["sign-in"], children: [
31
- /* @__PURE__ */ i("div", { className: n["close-wrapper"], children: /* @__PURE__ */ i(p, { asChild: !0, children: /* @__PURE__ */ i(
30
+ /* @__PURE__ */ i(p, { asChild: !0, children: /* @__PURE__ */ i(
32
31
  r,
33
32
  {
34
33
  "aria-label": "Close",
@@ -36,15 +35,15 @@ import '../../assets/SignInModal.css';const y = "SignInModal-module__trigger___I
36
35
  className: `${n["close-button"]}`,
37
36
  children: /* @__PURE__ */ i(h, {})
38
37
  }
39
- ) }) }),
38
+ ) }),
40
39
  /* @__PURE__ */ i("div", { className: n["sign-in-image"], children: /* @__PURE__ */ i(M, {}) }),
41
- /* @__PURE__ */ i("div", { className: n["sign-in-title"], children: /* @__PURE__ */ i(u, { asChild: !0, children: /* @__PURE__ */ i(D, {}) }) }),
42
- /* @__PURE__ */ i(I, { asChild: !0, children: /* @__PURE__ */ i(v, { className: n["sign-in-description"] }) }),
40
+ /* @__PURE__ */ i("div", { className: n["sign-in-title"], children: /* @__PURE__ */ i(I, { asChild: !0, children: /* @__PURE__ */ i(D, {}) }) }),
41
+ /* @__PURE__ */ i(u, { asChild: !0, children: /* @__PURE__ */ i(v, { className: n["sign-in-description"] }) }),
43
42
  /* @__PURE__ */ i(N, { className: n["sign-in-form"], onSuccess: e })
44
43
  ] }) })
45
44
  ] }) })
46
45
  ] });
47
46
  };
48
47
  export {
49
- F as SignInModal
48
+ G as SignInModal
50
49
  };
@@ -1,8 +1,8 @@
1
1
  import { jsx as s } from "react/jsx-runtime";
2
2
  import { useSignOut as r } from "@coinbase/cdp-hooks";
3
3
  import "react";
4
- import "../../theme/theme.js";
5
4
  import { Button as m } from "../Button/index.js";
5
+ import "../../theme/theme.js";
6
6
  import '../../assets/SignOutButton.css';const e = {
7
7
  "sign-out-button": "SignOutButton-module__sign-out-button___qiybe"
8
8
  }, O = ({ children: t, variant: o = "primary", onSuccess: n }) => {
@@ -239,4 +239,4 @@ export type FontTokens = Flattened<{
239
239
  }>;
240
240
  export type ColorTokens = SemanticColors | ComponentColors;
241
241
  export type Theme = ColorTokens & FontTokens;
242
- export type ButtonVariant = "primary" | "secondary" | "transparentPrimary" | "transparentSecondary";
242
+ export type ButtonVariant = "primary" | "secondary" | "linkPrimary" | "linkSecondary" | "transparentPrimary" | "transparentSecondary";
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@coinbase/cdp-react",
3
- "version": "0.0.13",
3
+ "version": "0.0.14",
4
4
  "type": "module",
5
5
  "dependencies": {
6
6
  "@radix-ui/react-dialog": "^1.1.14",
@@ -9,8 +9,8 @@
9
9
  },
10
10
  "peerDependencies": {
11
11
  "react": ">=18.2.0",
12
- "@coinbase/cdp-hooks": "^0.0.13",
13
- "@coinbase/cdp-core": "^0.0.13"
12
+ "@coinbase/cdp-core": "^0.0.14",
13
+ "@coinbase/cdp-hooks": "^0.0.14"
14
14
  },
15
15
  "devDependencies": {
16
16
  "@size-limit/preset-big-lib": "^11.2.0",
@@ -38,8 +38,8 @@
38
38
  "vite": "^7.0.4",
39
39
  "vite-plugin-dts": "^4.5.4",
40
40
  "vite-plugin-lib-inject-css": "^2.2.2",
41
- "@coinbase/cdp-core": "^0.0.13",
42
- "@coinbase/cdp-hooks": "^0.0.13"
41
+ "@coinbase/cdp-core": "^0.0.14",
42
+ "@coinbase/cdp-hooks": "^0.0.14"
43
43
  },
44
44
  "size-limit": [
45
45
  {