@cuemath/leap 3.0.11-j1 → 3.0.11-j3
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/assets/illustrations/illustrations.js +1 -1
- package/dist/assets/illustrations/illustrations.js.map +1 -1
- package/dist/features/auth/account-selector/account-selector.js +35 -82
- package/dist/features/auth/account-selector/account-selector.js.map +1 -1
- package/dist/features/auth/comps/auth-page-layout/auth-page-layout.js +9 -8
- package/dist/features/auth/comps/auth-page-layout/auth-page-layout.js.map +1 -1
- package/dist/features/auth/comps/auth-static-panel/auth-static-panel.js +13 -12
- package/dist/features/auth/comps/auth-static-panel/auth-static-panel.js.map +1 -1
- package/dist/features/auth/comps/input-status-icon/input-status-icon.js +14 -13
- package/dist/features/auth/comps/input-status-icon/input-status-icon.js.map +1 -1
- package/dist/features/auth/comps/overlay-loader/overlay-loader.js +5 -4
- package/dist/features/auth/comps/overlay-loader/overlay-loader.js.map +1 -1
- package/dist/features/auth/comps/resend-otp/hooks/use-resend-timer.js +24 -0
- package/dist/features/auth/comps/resend-otp/hooks/use-resend-timer.js.map +1 -0
- package/dist/features/auth/comps/resend-otp/resend-otp.js +34 -30
- package/dist/features/auth/comps/resend-otp/resend-otp.js.map +1 -1
- package/dist/features/auth/comps/tabs/tab-tem/tab-item.js +23 -0
- package/dist/features/auth/comps/tabs/tab-tem/tab-item.js.map +1 -0
- package/dist/features/auth/comps/tabs/tabs.js +6 -20
- package/dist/features/auth/comps/tabs/tabs.js.map +1 -1
- package/dist/features/auth/forgot-password/otp-form/otp-form.js +39 -36
- package/dist/features/auth/forgot-password/otp-form/otp-form.js.map +1 -1
- package/dist/features/auth/forgot-password/reset-password-form/reset-password-form.js +41 -30
- package/dist/features/auth/forgot-password/reset-password-form/reset-password-form.js.map +1 -1
- package/dist/features/auth/forgot-password/user-identifier-form/user-identifier-form.js +63 -54
- package/dist/features/auth/forgot-password/user-identifier-form/user-identifier-form.js.map +1 -1
- package/dist/features/auth/login/identifier-otp-form/identifier-otp-form.js +21 -20
- package/dist/features/auth/login/identifier-otp-form/identifier-otp-form.js.map +1 -1
- package/dist/features/auth/login/login-constants.js +6 -4
- package/dist/features/auth/login/login-constants.js.map +1 -1
- package/dist/features/auth/login/social-account-not-found/social-account-not-found.js +7 -6
- package/dist/features/auth/login/social-account-not-found/social-account-not-found.js.map +1 -1
- package/dist/features/auth/login/social-login-methods/social-login-methods.js +15 -14
- package/dist/features/auth/login/social-login-methods/social-login-methods.js.map +1 -1
- package/dist/features/auth/login/username-password-form/username-password-form.js +15 -14
- package/dist/features/auth/login/username-password-form/username-password-form.js.map +1 -1
- package/dist/features/auth/signup/circular-step-wrapper/circular-step-wrapper.js +36 -36
- package/dist/features/auth/signup/circular-step-wrapper/circular-step-wrapper.js.map +1 -1
- package/dist/features/auth/signup/claim-user-account/claim-user-account.js +48 -74
- package/dist/features/auth/signup/claim-user-account/claim-user-account.js.map +1 -1
- package/dist/features/auth/signup/custom-input-field/country-selector/country-selector.js +11 -11
- package/dist/features/auth/signup/custom-input-field/country-selector/country-selector.js.map +1 -1
- package/dist/features/auth/signup/custom-input-field/custom-input-field.js +62 -60
- package/dist/features/auth/signup/custom-input-field/custom-input-field.js.map +1 -1
- package/dist/features/auth/signup/custom-input-field/date-picker-input/date-picker-input.js +27 -26
- package/dist/features/auth/signup/custom-input-field/date-picker-input/date-picker-input.js.map +1 -1
- package/dist/features/auth/signup/custom-input-field/grade-input/grade-input.js +9 -8
- package/dist/features/auth/signup/custom-input-field/grade-input/grade-input.js.map +1 -1
- package/dist/features/auth/signup/custom-input-field/input-wrapper/input-wrapper.js +11 -15
- package/dist/features/auth/signup/custom-input-field/input-wrapper/input-wrapper.js.map +1 -1
- package/dist/features/auth/signup/signup-methods/signup-methods.js +8 -7
- package/dist/features/auth/signup/signup-methods/signup-methods.js.map +1 -1
- package/dist/features/auth/signup/user-type-selector/user-type-card/user-type-card.js +17 -17
- package/dist/features/auth/signup/user-type-selector/user-type-card/user-type-card.js.map +1 -1
- package/dist/features/auth/signup/user-type-selector/user-type-selector.js +1 -3
- package/dist/features/auth/signup/user-type-selector/user-type-selector.js.map +1 -1
- package/dist/features/auth/user-list/user-item/user-item-styled.js +21 -0
- package/dist/features/auth/user-list/user-item/user-item-styled.js.map +1 -0
- package/dist/features/auth/user-list/user-item/user-item.js +48 -0
- package/dist/features/auth/user-list/user-item/user-item.js.map +1 -0
- package/dist/features/auth/user-list/user-list-styled.js +19 -0
- package/dist/features/auth/user-list/user-list-styled.js.map +1 -0
- package/dist/features/auth/user-list/user-list.js +56 -0
- package/dist/features/auth/user-list/user-list.js.map +1 -0
- package/dist/index.d.ts +36 -33
- package/dist/index.js +282 -282
- package/dist/static/cuemath-app-qr-code.4beefe48.svg +1 -0
- package/package.json +1 -1
- package/dist/features/auth/account-selector/account-selector-styled.js +0 -37
- package/dist/features/auth/account-selector/account-selector-styled.js.map +0 -1
- package/dist/features/auth/comps/resend-otp/otp-timer/otp-timer.js +0 -25
- package/dist/features/auth/comps/resend-otp/otp-timer/otp-timer.js.map +0 -1
- package/dist/features/auth/signup/claim-user-account/claim-user-account-styled.js +0 -27
- package/dist/features/auth/signup/claim-user-account/claim-user-account-styled.js.map +0 -1
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"social-account-not-found.js","sources":["../../../../../src/features/auth/login/social-account-not-found/social-account-not-found.tsx"],"sourcesContent":["import type { ISocialAccountNotFoundProps } from './social-account-not-found-types';\n\nimport Button from '../../../ui/buttons/button/button';\nimport FlexView from '../../../ui/layout/flex-view';\nimport Separator from '../../../ui/separator/separator';\n\nconst SocialAccountNotFound = ({ onRetryLogin, onGoToSignup }: ISocialAccountNotFoundProps) => {\n return (\n <FlexView $alignItems=\"center\" $justifyContent=\"center\">\n <Button\n size=\"small\"\n renderAs=\"secondary-dark\"\n label=\"Create a new account\"\n width={232}\n onClick={onGoToSignup}\n />\n <Separator heightX={1} />\n <Button\n size=\"small\"\n renderAs=\"secondary-dark\"\n label=\"Try another Login method\"\n width={232}\n onClick={onRetryLogin}\n />\n </FlexView>\n );\n};\n\nexport default SocialAccountNotFound;\n"],"names":["SocialAccountNotFound","onRetryLogin","onGoToSignup","jsxs","FlexView","jsx","Button","Separator","
|
1
|
+
{"version":3,"file":"social-account-not-found.js","sources":["../../../../../src/features/auth/login/social-account-not-found/social-account-not-found.tsx"],"sourcesContent":["import type { ISocialAccountNotFoundProps } from './social-account-not-found-types';\n\nimport { memo } from 'react';\n\nimport Button from '../../../ui/buttons/button/button';\nimport FlexView from '../../../ui/layout/flex-view';\nimport Separator from '../../../ui/separator/separator';\n\nconst SocialAccountNotFound = ({ onRetryLogin, onGoToSignup }: ISocialAccountNotFoundProps) => {\n return (\n <FlexView $alignItems=\"center\" $justifyContent=\"center\">\n <Button\n size=\"small\"\n renderAs=\"secondary-dark\"\n label=\"Create a new account\"\n width={232}\n onClick={onGoToSignup}\n />\n <Separator heightX={1} />\n <Button\n size=\"small\"\n renderAs=\"secondary-dark\"\n label=\"Try another Login method\"\n width={232}\n onClick={onRetryLogin}\n />\n </FlexView>\n );\n};\n\nexport default memo(SocialAccountNotFound);\n"],"names":["SocialAccountNotFound","onRetryLogin","onGoToSignup","jsxs","FlexView","jsx","Button","Separator","socialAccountNotFound","memo"],"mappings":";;;;;AAQA,MAAMA,IAAwB,CAAC,EAAE,cAAAC,GAAc,cAAAC,QAE1C,gBAAAC,EAAAC,GAAA,EAAS,aAAY,UAAS,iBAAgB,UAC7C,UAAA;AAAA,EAAA,gBAAAC;AAAA,IAACC;AAAA,IAAA;AAAA,MACC,MAAK;AAAA,MACL,UAAS;AAAA,MACT,OAAM;AAAA,MACN,OAAO;AAAA,MACP,SAASJ;AAAA,IAAA;AAAA,EACX;AAAA,EACA,gBAAAG,EAACE,GAAU,EAAA,SAAS,EAAG,CAAA;AAAA,EACvB,gBAAAF;AAAA,IAACC;AAAA,IAAA;AAAA,MACC,MAAK;AAAA,MACL,UAAS;AAAA,MACT,OAAM;AAAA,MACN,OAAO;AAAA,MACP,SAASL;AAAA,IAAA;AAAA,EACX;AACF,EAAA,CAAA,GAIWO,IAAAC,EAAKT,CAAqB;"}
|
@@ -1,36 +1,37 @@
|
|
1
1
|
import { jsxs as a, jsx as i } from "react/jsx-runtime";
|
2
|
-
import r from "
|
3
|
-
import c from "../../../../assets/line-icons/icons/
|
4
|
-
import
|
5
|
-
import
|
6
|
-
|
7
|
-
|
2
|
+
import { memo as r } from "react";
|
3
|
+
import c from "../../../../assets/line-icons/icons/apple-icon.js";
|
4
|
+
import d from "../../../../assets/line-icons/icons/google-icon.js";
|
5
|
+
import s from "../../../ui/buttons/button/button.js";
|
6
|
+
import p from "../../../ui/layout/flex-view.js";
|
7
|
+
const m = ({
|
8
|
+
onGoogleLogin: n,
|
8
9
|
onAppleLogin: t,
|
9
10
|
loadingProvider: o
|
10
11
|
}) => {
|
11
12
|
const e = o === "google", l = o === "apple";
|
12
|
-
return /* @__PURE__ */ a(
|
13
|
+
return /* @__PURE__ */ a(p, { $flexGapX: 1, $flexDirection: "row", $justifyContent: "space-between", $width: 336, children: [
|
13
14
|
/* @__PURE__ */ i(
|
14
|
-
|
15
|
+
s,
|
15
16
|
{
|
16
17
|
renderAs: "secondary-dark",
|
17
|
-
Icon:
|
18
|
+
Icon: d,
|
18
19
|
width: 160,
|
19
20
|
label: "",
|
20
21
|
analyticsLabel: "google_login",
|
21
|
-
onClick:
|
22
|
+
onClick: n,
|
22
23
|
size: "small",
|
23
24
|
busy: e,
|
24
25
|
disabled: e
|
25
26
|
}
|
26
27
|
),
|
27
28
|
/* @__PURE__ */ i(
|
28
|
-
|
29
|
+
s,
|
29
30
|
{
|
30
31
|
renderAs: "secondary-dark",
|
31
32
|
size: "small",
|
32
33
|
width: 160,
|
33
|
-
Icon:
|
34
|
+
Icon: c,
|
34
35
|
label: "",
|
35
36
|
analyticsLabel: "apple_login",
|
36
37
|
onClick: t,
|
@@ -39,8 +40,8 @@ const p = ({
|
|
39
40
|
}
|
40
41
|
)
|
41
42
|
] });
|
42
|
-
},
|
43
|
+
}, w = r(m);
|
43
44
|
export {
|
44
|
-
|
45
|
+
w as default
|
45
46
|
};
|
46
47
|
//# sourceMappingURL=social-login-methods.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"social-login-methods.js","sources":["../../../../../src/features/auth/login/social-login-methods/social-login-methods.tsx"],"sourcesContent":["import type { ISocialLoginMethodsProps } from './social-login-methods-types';\nimport type { FC } from 'react';\n\nimport AppleIcon from '../../../../assets/line-icons/icons/apple-icon';\nimport GoogleIcon from '../../../../assets/line-icons/icons/google-icon';\nimport Button from '../../../ui/buttons/button/button';\nimport FlexView from '../../../ui/layout/flex-view';\n\nconst SocialLoginMethods: FC<ISocialLoginMethodsProps> = ({\n onGoogleLogin,\n onAppleLogin,\n loadingProvider,\n}) => {\n const isLoadingGoogle = loadingProvider === 'google';\n const isLoadingApple = loadingProvider === 'apple';\n\n return (\n <FlexView $flexGapX={1} $flexDirection=\"row\" $justifyContent=\"space-between\" $width={336}>\n <Button\n renderAs=\"secondary-dark\"\n Icon={GoogleIcon}\n width={160}\n label=\"\"\n analyticsLabel=\"google_login\"\n onClick={onGoogleLogin}\n size=\"small\"\n busy={isLoadingGoogle}\n disabled={isLoadingGoogle}\n />\n <Button\n renderAs=\"secondary-dark\"\n size=\"small\"\n width={160}\n Icon={AppleIcon}\n label=\"\"\n analyticsLabel=\"apple_login\"\n onClick={onAppleLogin}\n busy={isLoadingApple}\n disabled={isLoadingApple}\n />\n </FlexView>\n );\n};\n\nexport default SocialLoginMethods;\n"],"names":["SocialLoginMethods","onGoogleLogin","onAppleLogin","loadingProvider","isLoadingGoogle","isLoadingApple","jsxs","FlexView","jsx","Button","GoogleIcon","AppleIcon","
|
1
|
+
{"version":3,"file":"social-login-methods.js","sources":["../../../../../src/features/auth/login/social-login-methods/social-login-methods.tsx"],"sourcesContent":["import type { ISocialLoginMethodsProps } from './social-login-methods-types';\nimport type { FC } from 'react';\n\nimport { memo } from 'react';\n\nimport AppleIcon from '../../../../assets/line-icons/icons/apple-icon';\nimport GoogleIcon from '../../../../assets/line-icons/icons/google-icon';\nimport Button from '../../../ui/buttons/button/button';\nimport FlexView from '../../../ui/layout/flex-view';\n\nconst SocialLoginMethods: FC<ISocialLoginMethodsProps> = ({\n onGoogleLogin,\n onAppleLogin,\n loadingProvider,\n}) => {\n const isLoadingGoogle = loadingProvider === 'google';\n const isLoadingApple = loadingProvider === 'apple';\n\n return (\n <FlexView $flexGapX={1} $flexDirection=\"row\" $justifyContent=\"space-between\" $width={336}>\n <Button\n renderAs=\"secondary-dark\"\n Icon={GoogleIcon}\n width={160}\n label=\"\"\n analyticsLabel=\"google_login\"\n onClick={onGoogleLogin}\n size=\"small\"\n busy={isLoadingGoogle}\n disabled={isLoadingGoogle}\n />\n <Button\n renderAs=\"secondary-dark\"\n size=\"small\"\n width={160}\n Icon={AppleIcon}\n label=\"\"\n analyticsLabel=\"apple_login\"\n onClick={onAppleLogin}\n busy={isLoadingApple}\n disabled={isLoadingApple}\n />\n </FlexView>\n );\n};\n\nexport default memo(SocialLoginMethods);\n"],"names":["SocialLoginMethods","onGoogleLogin","onAppleLogin","loadingProvider","isLoadingGoogle","isLoadingApple","jsxs","FlexView","jsx","Button","GoogleIcon","AppleIcon","socialLoginMethods","memo"],"mappings":";;;;;;AAUA,MAAMA,IAAmD,CAAC;AAAA,EACxD,eAAAC;AAAA,EACA,cAAAC;AAAA,EACA,iBAAAC;AACF,MAAM;AACJ,QAAMC,IAAkBD,MAAoB,UACtCE,IAAiBF,MAAoB;AAGzC,SAAA,gBAAAG,EAACC,KAAS,WAAW,GAAG,gBAAe,OAAM,iBAAgB,iBAAgB,QAAQ,KACnF,UAAA;AAAA,IAAA,gBAAAC;AAAA,MAACC;AAAA,MAAA;AAAA,QACC,UAAS;AAAA,QACT,MAAMC;AAAA,QACN,OAAO;AAAA,QACP,OAAM;AAAA,QACN,gBAAe;AAAA,QACf,SAAST;AAAA,QACT,MAAK;AAAA,QACL,MAAMG;AAAA,QACN,UAAUA;AAAA,MAAA;AAAA,IACZ;AAAA,IACA,gBAAAI;AAAA,MAACC;AAAA,MAAA;AAAA,QACC,UAAS;AAAA,QACT,MAAK;AAAA,QACL,OAAO;AAAA,QACP,MAAME;AAAA,QACN,OAAM;AAAA,QACN,gBAAe;AAAA,QACf,SAAST;AAAA,QACT,MAAMG;AAAA,QACN,UAAUA;AAAA,MAAA;AAAA,IACZ;AAAA,EACF,EAAA,CAAA;AAEJ,GAEeO,IAAAC,EAAKb,CAAkB;"}
|
@@ -1,11 +1,12 @@
|
|
1
1
|
import { jsxs as a, jsx as e } from "react/jsx-runtime";
|
2
|
-
import c from "
|
3
|
-
import g from "../../../ui/buttons/
|
2
|
+
import { memo as c } from "react";
|
3
|
+
import g from "../../../ui/buttons/button/button.js";
|
4
|
+
import f from "../../../ui/buttons/text-button/text-button.js";
|
4
5
|
import l from "../../../ui/inputs/text-input/text-input.js";
|
5
6
|
import t from "../../../ui/layout/flex-view.js";
|
6
|
-
import
|
7
|
+
import o from "../../../ui/separator/separator.js";
|
7
8
|
import b from "../../comps/input-status-icon/input-status-icon.js";
|
8
|
-
const
|
9
|
+
const w = ({
|
9
10
|
username: n,
|
10
11
|
password: i,
|
11
12
|
errors: r,
|
@@ -25,7 +26,7 @@ const f = ({
|
|
25
26
|
$background: "BLACK_2",
|
26
27
|
$height: 308,
|
27
28
|
children: [
|
28
|
-
/* @__PURE__ */ e(
|
29
|
+
/* @__PURE__ */ e(o, { heightX: 0.5 }),
|
29
30
|
/* @__PURE__ */ a("form", { onSubmit: u, children: [
|
30
31
|
/* @__PURE__ */ a(t, { $alignItems: "center", $justifyContent: "center", children: [
|
31
32
|
/* @__PURE__ */ e(
|
@@ -36,14 +37,14 @@ const f = ({
|
|
36
37
|
autoComplete: "username",
|
37
38
|
label: "Username",
|
38
39
|
value: n,
|
39
|
-
onChange: (
|
40
|
+
onChange: (s) => d("username", s.target.value),
|
40
41
|
width: 330,
|
41
42
|
required: !0,
|
42
43
|
shape: "borderLess",
|
43
44
|
errorMessage: r.username
|
44
45
|
}
|
45
46
|
),
|
46
|
-
/* @__PURE__ */ e(
|
47
|
+
/* @__PURE__ */ e(o, { height: 36 }),
|
47
48
|
/* @__PURE__ */ e(
|
48
49
|
l,
|
49
50
|
{
|
@@ -52,7 +53,7 @@ const f = ({
|
|
52
53
|
autoComplete: "password",
|
53
54
|
label: "Password",
|
54
55
|
value: i,
|
55
|
-
onChange: (
|
56
|
+
onChange: (s) => d("password", s.target.value),
|
56
57
|
width: 330,
|
57
58
|
required: !0,
|
58
59
|
shape: "borderLess",
|
@@ -61,11 +62,11 @@ const f = ({
|
|
61
62
|
}
|
62
63
|
)
|
63
64
|
] }),
|
64
|
-
/* @__PURE__ */ e(
|
65
|
-
/* @__PURE__ */ e(t, { $alignItems: "flex-end", children: /* @__PURE__ */ e(
|
66
|
-
/* @__PURE__ */ e(
|
65
|
+
/* @__PURE__ */ e(o, { heightX: 1.25 }),
|
66
|
+
/* @__PURE__ */ e(t, { $alignItems: "flex-end", children: /* @__PURE__ */ e(f, { label: "Forgot Password?", onClick: p, color: "WHITE_T_60" }) }),
|
67
|
+
/* @__PURE__ */ e(o, { heightX: 2 }),
|
67
68
|
/* @__PURE__ */ e(t, { $justifyContent: "center", children: /* @__PURE__ */ e(
|
68
|
-
|
69
|
+
g,
|
69
70
|
{
|
70
71
|
size: "small",
|
71
72
|
renderAs: "secondary-dark",
|
@@ -80,8 +81,8 @@ const f = ({
|
|
80
81
|
]
|
81
82
|
}
|
82
83
|
);
|
83
|
-
},
|
84
|
+
}, X = c(w);
|
84
85
|
export {
|
85
|
-
|
86
|
+
X as default
|
86
87
|
};
|
87
88
|
//# sourceMappingURL=username-password-form.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"username-password-form.js","sources":["../../../../../src/features/auth/login/username-password-form/username-password-form.tsx"],"sourcesContent":["import type { IUsernamePasswordFormProps } from './username-password-form-types';\n\nimport { type ChangeEvent, type FC } from 'react';\n\nimport Button from '../../../ui/buttons/button/button';\nimport TextButton from '../../../ui/buttons/text-button/text-button';\nimport TextInput from '../../../ui/inputs/text-input/text-input';\nimport FlexView from '../../../ui/layout/flex-view';\nimport Separator from '../../../ui/separator/separator';\nimport InputStatusIcon from '../../comps/input-status-icon/input-status-icon';\n\nconst UsernamePasswordForm: FC<IUsernamePasswordFormProps> = ({\n username,\n password,\n errors,\n isLoading,\n onChange,\n onSubmit,\n onForgotPassword,\n}) => {\n const isSubmitDisabled = isLoading || !username.trim() || !password.trim();\n\n return (\n <FlexView\n $gutterX={2}\n $gapX={1.5}\n $alignItems=\"center\"\n $justifyContent=\"center\"\n $background=\"BLACK_2\"\n $height={308}\n >\n <Separator heightX={0.5} />\n <form onSubmit={onSubmit}>\n <FlexView $alignItems=\"center\" $justifyContent=\"center\">\n <TextInput\n renderAs={errors.username ? 'error-dark' : 'primary-dark'}\n autoFocus\n autoComplete=\"username\"\n label=\"Username\"\n value={username}\n onChange={(e: ChangeEvent<HTMLInputElement>) => onChange('username', e.target.value)}\n width={330}\n required\n shape=\"borderLess\"\n errorMessage={errors.username}\n />\n <Separator height={36} />\n <TextInput\n type=\"password\"\n renderAs={errors.password ? 'error-dark' : 'primary-dark'}\n autoComplete=\"password\"\n label=\"Password\"\n value={password}\n onChange={(e: ChangeEvent<HTMLInputElement>) => onChange('password', e.target.value)}\n width={330}\n required\n shape=\"borderLess\"\n errorMessage={errors.password}\n siblingElement={<InputStatusIcon isError={!!errors.password} />}\n />\n </FlexView>\n <Separator heightX={1.25} />\n <FlexView $alignItems=\"flex-end\">\n <TextButton label=\"Forgot Password?\" onClick={onForgotPassword} color=\"WHITE_T_60\" />\n </FlexView>\n <Separator heightX={2} />\n <FlexView $justifyContent=\"center\">\n <Button\n size=\"small\"\n renderAs=\"secondary-dark\"\n type=\"submit\"\n label=\"Log in\"\n width={336}\n busy={isLoading}\n disabled={isSubmitDisabled}\n />\n </FlexView>\n </form>\n </FlexView>\n );\n};\n\nexport default UsernamePasswordForm;\n"],"names":["UsernamePasswordForm","username","password","errors","isLoading","onChange","onSubmit","onForgotPassword","isSubmitDisabled","jsxs","FlexView","jsx","Separator","TextInput","e","InputStatusIcon","TextButton","Button","
|
1
|
+
{"version":3,"file":"username-password-form.js","sources":["../../../../../src/features/auth/login/username-password-form/username-password-form.tsx"],"sourcesContent":["import type { IUsernamePasswordFormProps } from './username-password-form-types';\n\nimport { type ChangeEvent, type FC, memo } from 'react';\n\nimport Button from '../../../ui/buttons/button/button';\nimport TextButton from '../../../ui/buttons/text-button/text-button';\nimport TextInput from '../../../ui/inputs/text-input/text-input';\nimport FlexView from '../../../ui/layout/flex-view';\nimport Separator from '../../../ui/separator/separator';\nimport InputStatusIcon from '../../comps/input-status-icon/input-status-icon';\n\nconst UsernamePasswordForm: FC<IUsernamePasswordFormProps> = ({\n username,\n password,\n errors,\n isLoading,\n onChange,\n onSubmit,\n onForgotPassword,\n}) => {\n const isSubmitDisabled = isLoading || !username.trim() || !password.trim();\n\n return (\n <FlexView\n $gutterX={2}\n $gapX={1.5}\n $alignItems=\"center\"\n $justifyContent=\"center\"\n $background=\"BLACK_2\"\n $height={308}\n >\n <Separator heightX={0.5} />\n <form onSubmit={onSubmit}>\n <FlexView $alignItems=\"center\" $justifyContent=\"center\">\n <TextInput\n renderAs={errors.username ? 'error-dark' : 'primary-dark'}\n autoFocus\n autoComplete=\"username\"\n label=\"Username\"\n value={username}\n onChange={(e: ChangeEvent<HTMLInputElement>) => onChange('username', e.target.value)}\n width={330}\n required\n shape=\"borderLess\"\n errorMessage={errors.username}\n />\n <Separator height={36} />\n <TextInput\n type=\"password\"\n renderAs={errors.password ? 'error-dark' : 'primary-dark'}\n autoComplete=\"password\"\n label=\"Password\"\n value={password}\n onChange={(e: ChangeEvent<HTMLInputElement>) => onChange('password', e.target.value)}\n width={330}\n required\n shape=\"borderLess\"\n errorMessage={errors.password}\n siblingElement={<InputStatusIcon isError={!!errors.password} />}\n />\n </FlexView>\n <Separator heightX={1.25} />\n <FlexView $alignItems=\"flex-end\">\n <TextButton label=\"Forgot Password?\" onClick={onForgotPassword} color=\"WHITE_T_60\" />\n </FlexView>\n <Separator heightX={2} />\n <FlexView $justifyContent=\"center\">\n <Button\n size=\"small\"\n renderAs=\"secondary-dark\"\n type=\"submit\"\n label=\"Log in\"\n width={336}\n busy={isLoading}\n disabled={isSubmitDisabled}\n />\n </FlexView>\n </form>\n </FlexView>\n );\n};\n\nexport default memo(UsernamePasswordForm);\n"],"names":["UsernamePasswordForm","username","password","errors","isLoading","onChange","onSubmit","onForgotPassword","isSubmitDisabled","jsxs","FlexView","jsx","Separator","TextInput","e","InputStatusIcon","TextButton","Button","usernamePasswordForm","memo"],"mappings":";;;;;;;;AAWA,MAAMA,IAAuD,CAAC;AAAA,EAC5D,UAAAC;AAAA,EACA,UAAAC;AAAA,EACA,QAAAC;AAAA,EACA,WAAAC;AAAA,EACA,UAAAC;AAAA,EACA,UAAAC;AAAA,EACA,kBAAAC;AACF,MAAM;AACE,QAAAC,IAAmBJ,KAAa,CAACH,EAAS,UAAU,CAACC,EAAS;AAGlE,SAAA,gBAAAO;AAAA,IAACC;AAAA,IAAA;AAAA,MACC,UAAU;AAAA,MACV,OAAO;AAAA,MACP,aAAY;AAAA,MACZ,iBAAgB;AAAA,MAChB,aAAY;AAAA,MACZ,SAAS;AAAA,MAET,UAAA;AAAA,QAAC,gBAAAC,EAAAC,GAAA,EAAU,SAAS,IAAK,CAAA;AAAA,QACzB,gBAAAH,EAAC,UAAK,UAAAH,GACJ,UAAA;AAAA,UAAA,gBAAAG,EAACC,GAAS,EAAA,aAAY,UAAS,iBAAgB,UAC7C,UAAA;AAAA,YAAA,gBAAAC;AAAA,cAACE;AAAA,cAAA;AAAA,gBACC,UAAUV,EAAO,WAAW,eAAe;AAAA,gBAC3C,WAAS;AAAA,gBACT,cAAa;AAAA,gBACb,OAAM;AAAA,gBACN,OAAOF;AAAA,gBACP,UAAU,CAACa,MAAqCT,EAAS,YAAYS,EAAE,OAAO,KAAK;AAAA,gBACnF,OAAO;AAAA,gBACP,UAAQ;AAAA,gBACR,OAAM;AAAA,gBACN,cAAcX,EAAO;AAAA,cAAA;AAAA,YACvB;AAAA,YACA,gBAAAQ,EAACC,GAAU,EAAA,QAAQ,GAAI,CAAA;AAAA,YACvB,gBAAAD;AAAA,cAACE;AAAA,cAAA;AAAA,gBACC,MAAK;AAAA,gBACL,UAAUV,EAAO,WAAW,eAAe;AAAA,gBAC3C,cAAa;AAAA,gBACb,OAAM;AAAA,gBACN,OAAOD;AAAA,gBACP,UAAU,CAACY,MAAqCT,EAAS,YAAYS,EAAE,OAAO,KAAK;AAAA,gBACnF,OAAO;AAAA,gBACP,UAAQ;AAAA,gBACR,OAAM;AAAA,gBACN,cAAcX,EAAO;AAAA,gBACrB,gBAAiB,gBAAAQ,EAAAI,GAAA,EAAgB,SAAS,CAAC,CAACZ,EAAO,UAAU;AAAA,cAAA;AAAA,YAC/D;AAAA,UAAA,GACF;AAAA,UACA,gBAAAQ,EAACC,GAAU,EAAA,SAAS,KAAM,CAAA;AAAA,UACzB,gBAAAD,EAAAD,GAAA,EAAS,aAAY,YACpB,UAAC,gBAAAC,EAAAK,GAAA,EAAW,OAAM,oBAAmB,SAAST,GAAkB,OAAM,aAAa,CAAA,GACrF;AAAA,UACA,gBAAAI,EAACC,GAAU,EAAA,SAAS,EAAG,CAAA;AAAA,UACvB,gBAAAD,EAACD,GAAS,EAAA,iBAAgB,UACxB,UAAA,gBAAAC;AAAA,YAACM;AAAA,YAAA;AAAA,cACC,MAAK;AAAA,cACL,UAAS;AAAA,cACT,MAAK;AAAA,cACL,OAAM;AAAA,cACN,OAAO;AAAA,cACP,MAAMb;AAAA,cACN,UAAUI;AAAA,YAAA;AAAA,UAAA,GAEd;AAAA,QAAA,GACF;AAAA,MAAA;AAAA,IAAA;AAAA,EAAA;AAGN,GAEeU,IAAAC,EAAKnB,CAAoB;"}
|
@@ -1,24 +1,24 @@
|
|
1
1
|
import { jsxs as n, jsx as e } from "react/jsx-runtime";
|
2
|
-
import {
|
3
|
-
import
|
4
|
-
import
|
5
|
-
import
|
6
|
-
import
|
7
|
-
import
|
8
|
-
import
|
9
|
-
import
|
10
|
-
import
|
11
|
-
import { Container as
|
12
|
-
const
|
2
|
+
import { memo as b, forwardRef as E, useRef as c, useState as $, useCallback as H, useEffect as B, useImperativeHandle as T, useLayoutEffect as j } from "react";
|
3
|
+
import P from "../../../../assets/line-icons/icons/back2.js";
|
4
|
+
import z from "../../../../assets/line-icons/icons/next2.js";
|
5
|
+
import F from "../../../ui/animated-arc/animated-arc.js";
|
6
|
+
import g from "../../../ui/buttons/icon-button/icon-button.js";
|
7
|
+
import M from "../../../ui/layout/flex-view.js";
|
8
|
+
import N from "../../../ui/lottie-animation/lottie-animation.js";
|
9
|
+
import O from "../../../ui/separator/separator.js";
|
10
|
+
import V from "../../../ui/text/text.js";
|
11
|
+
import { Container as X, CircularStepContainer as D, ContentWrapper as K, InputContainer as Y, PrevButtonWrapper as _, NextButtonWrapper as q } from "./circular-step-wrapper-styled.js";
|
12
|
+
const G = {
|
13
13
|
autoplay: !1,
|
14
14
|
loop: !1,
|
15
15
|
renderer: "canvas",
|
16
16
|
rendererSettings: {
|
17
17
|
preserveAspectRatio: "xMidYMin slice"
|
18
18
|
}
|
19
|
-
},
|
19
|
+
}, J = E(
|
20
20
|
({
|
21
|
-
children:
|
21
|
+
children: C,
|
22
22
|
onGoBack: y,
|
23
23
|
onNext: I,
|
24
24
|
label: a,
|
@@ -30,12 +30,12 @@ const q = {
|
|
30
30
|
isNextLoading: s,
|
31
31
|
progressAngle: l
|
32
32
|
}, R) => {
|
33
|
-
const t = c(null), o = c(null), [u, k] = $(), [v, m] = $(!1), i = c(null), L =
|
33
|
+
const t = c(null), o = c(null), [u, k] = $(), [v, m] = $(!1), i = c(null), L = H(() => {
|
34
34
|
r && t.current && (t.current.playSegments(S, !0), m(!0));
|
35
35
|
}, [r]);
|
36
|
-
return
|
36
|
+
return B(() => () => {
|
37
37
|
i.current && clearTimeout(i.current);
|
38
|
-
}, [r]),
|
38
|
+
}, [r]), T(R, () => ({
|
39
39
|
playOutroAndFadeOut: async () => new Promise((W) => {
|
40
40
|
var f, p;
|
41
41
|
const d = () => {
|
@@ -44,10 +44,10 @@ const q = {
|
|
44
44
|
};
|
45
45
|
(f = t.current) == null || f.playSegments(w, !0), i.current = setTimeout(() => m(!1), 400), (p = t.current) == null || p.addEventListener("complete", d);
|
46
46
|
})
|
47
|
-
})),
|
47
|
+
})), j(() => {
|
48
48
|
o.current && k(o.current.offsetHeight);
|
49
49
|
}, []), /* @__PURE__ */ n(
|
50
|
-
|
50
|
+
X,
|
51
51
|
{
|
52
52
|
$flex: 1,
|
53
53
|
$flexDirection: "column",
|
@@ -58,18 +58,18 @@ const q = {
|
|
58
58
|
ref: o,
|
59
59
|
children: [
|
60
60
|
u && /* @__PURE__ */ e(
|
61
|
-
|
61
|
+
N,
|
62
62
|
{
|
63
63
|
width: 1280,
|
64
64
|
height: u,
|
65
65
|
src: r,
|
66
66
|
ref: t,
|
67
67
|
onRender: L,
|
68
|
-
settings:
|
68
|
+
settings: G
|
69
69
|
}
|
70
70
|
),
|
71
71
|
/* @__PURE__ */ n(
|
72
|
-
|
72
|
+
D,
|
73
73
|
{
|
74
74
|
$width: 400,
|
75
75
|
$height: 400,
|
@@ -78,7 +78,7 @@ const q = {
|
|
78
78
|
$justifyContent: "center",
|
79
79
|
children: [
|
80
80
|
l && /* @__PURE__ */ e(
|
81
|
-
|
81
|
+
F,
|
82
82
|
{
|
83
83
|
radius: 200,
|
84
84
|
strokeWidth: 2,
|
@@ -88,20 +88,20 @@ const q = {
|
|
88
88
|
duration: 1
|
89
89
|
}
|
90
90
|
),
|
91
|
-
/* @__PURE__ */ n(
|
92
|
-
a
|
93
|
-
/* @__PURE__ */ e(
|
94
|
-
/* @__PURE__ */ e(
|
95
|
-
] })
|
96
|
-
/* @__PURE__ */ e(
|
91
|
+
/* @__PURE__ */ n(K, { $isVisible: v, $width: "100%", children: [
|
92
|
+
a && /* @__PURE__ */ n(M, { $gutterX: 3.5, children: [
|
93
|
+
/* @__PURE__ */ e(V, { $renderAs: "ab2", $color: "WHITE", $align: "center", children: a }),
|
94
|
+
/* @__PURE__ */ e(O, { heightX: 1 })
|
95
|
+
] }),
|
96
|
+
/* @__PURE__ */ e(Y, { children: C })
|
97
97
|
] })
|
98
98
|
]
|
99
99
|
}
|
100
100
|
),
|
101
|
-
A && /* @__PURE__ */ e(
|
102
|
-
|
101
|
+
A && /* @__PURE__ */ e(_, { children: /* @__PURE__ */ e(
|
102
|
+
g,
|
103
103
|
{
|
104
|
-
Icon:
|
104
|
+
Icon: P,
|
105
105
|
renderAs: "secondary-dark",
|
106
106
|
analyticsLabel: "Prev",
|
107
107
|
onClick: y,
|
@@ -109,11 +109,11 @@ const q = {
|
|
109
109
|
size: "small"
|
110
110
|
}
|
111
111
|
) }),
|
112
|
-
x && /* @__PURE__ */ e(
|
113
|
-
|
112
|
+
x && /* @__PURE__ */ e(q, { children: /* @__PURE__ */ e(
|
113
|
+
g,
|
114
114
|
{
|
115
115
|
size: "small",
|
116
|
-
Icon:
|
116
|
+
Icon: z,
|
117
117
|
renderAs: "secondary-dark",
|
118
118
|
analyticsLabel: "Next",
|
119
119
|
onClick: I,
|
@@ -124,8 +124,8 @@ const q = {
|
|
124
124
|
}
|
125
125
|
);
|
126
126
|
}
|
127
|
-
),
|
127
|
+
), se = b(J);
|
128
128
|
export {
|
129
|
-
|
129
|
+
se as default
|
130
130
|
};
|
131
131
|
//# sourceMappingURL=circular-step-wrapper.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"circular-step-wrapper.js","sources":["../../../../../src/features/auth/signup/circular-step-wrapper/circular-step-wrapper.tsx"],"sourcesContent":["import type { ILottieAnimationRef } from '../../../ui/lottie-animation/types';\nimport type { ICircularStepRef, ICircularStepWrapperProps } from './circular-step-wrapper-types';\n\nimport {\n forwardRef,\n useCallback,\n useEffect,\n useImperativeHandle,\n useLayoutEffect,\n useRef,\n useState,\n type Ref,\n} from 'react';\n\nimport Back2Icon from '../../../../assets/line-icons/icons/back2';\nimport Next2Icon from '../../../../assets/line-icons/icons/next2';\nimport AnimatedArc from '../../../ui/animated-arc/animated-arc';\nimport IconButton from '../../../ui/buttons/icon-button/icon-button';\nimport FlexView from '../../../ui/layout/flex-view';\nimport LottieAnimation from '../../../ui/lottie-animation/lottie-animation';\nimport Separator from '../../../ui/separator/separator';\nimport Text from '../../../ui/text/text';\nimport * as Styled from './circular-step-wrapper-styled';\n\nconst animationSettings = {\n autoplay: false,\n loop: false,\n renderer: 'canvas',\n rendererSettings: {\n preserveAspectRatio: 'xMidYMin slice',\n },\n};\n\nconst CircularStepWrapper = forwardRef<ICircularStepRef, ICircularStepWrapperProps>(\n (\n {\n children,\n onGoBack,\n onNext,\n label,\n showNext,\n showPrevious,\n animation,\n introFrames,\n outroFrames,\n isNextLoading,\n progressAngle,\n },\n ref: Ref<ICircularStepRef>,\n ) => {\n const animationRef = useRef<ILottieAnimationRef | null>(null);\n const containerRef = useRef<HTMLDivElement>(null);\n const [containerHeight, setContainerHeight] = useState<number | undefined>();\n const [showContent, setShowContent] = useState(false);\n const timeoutRef = useRef<NodeJS.Timeout | null>(null);\n\n const onLottieRender = useCallback(() => {\n if (animation && animationRef.current) {\n animationRef.current.playSegments(introFrames, true);\n setShowContent(true);\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [animation]);\n\n useEffect(() => {\n return () => {\n if (timeoutRef.current) {\n clearTimeout(timeoutRef.current);\n }\n };\n }, [animation]);\n\n useImperativeHandle(ref, () => ({\n playOutroAndFadeOut: async () => {\n return new Promise<void>(resolve => {\n const handleComplete = () => {\n resolve();\n animationRef.current?.removeEventListener('complete', handleComplete);\n };\n\n animationRef.current?.playSegments(outroFrames, true);\n timeoutRef.current = setTimeout(() => setShowContent(false), 400);\n animationRef.current?.addEventListener('complete', handleComplete);\n });\n },\n }));\n\n useLayoutEffect(() => {\n if (containerRef.current) {\n setContainerHeight(containerRef.current.offsetHeight);\n }\n }, []);\n\n return (\n <Styled.Container\n $flex={1}\n $flexDirection=\"column\"\n $alignItems=\"center\"\n $justifyContent=\"center\"\n $width=\"100%\"\n $height=\"100%\"\n ref={containerRef}\n >\n {containerHeight && (\n <LottieAnimation\n width={1280}\n height={containerHeight}\n src={animation}\n ref={animationRef}\n onRender={onLottieRender}\n settings={animationSettings}\n />\n )}\n <Styled.CircularStepContainer\n $width={400}\n $height={400}\n $background=\"REAL_BLACK\"\n $alignItems=\"center\"\n $justifyContent=\"center\"\n >\n {progressAngle && (\n <AnimatedArc\n radius={200}\n strokeWidth={2}\n color=\"WHITE\"\n targetAngle={progressAngle}\n mode=\"fade\"\n duration={1}\n />\n )}\n <Styled.ContentWrapper $isVisible={showContent} $width=\"100%\">\n {label
|
1
|
+
{"version":3,"file":"circular-step-wrapper.js","sources":["../../../../../src/features/auth/signup/circular-step-wrapper/circular-step-wrapper.tsx"],"sourcesContent":["import type { ILottieAnimationRef } from '../../../ui/lottie-animation/types';\nimport type { ICircularStepRef, ICircularStepWrapperProps } from './circular-step-wrapper-types';\n\nimport {\n forwardRef,\n useCallback,\n useEffect,\n useImperativeHandle,\n useLayoutEffect,\n useRef,\n useState,\n memo,\n type Ref,\n} from 'react';\n\nimport Back2Icon from '../../../../assets/line-icons/icons/back2';\nimport Next2Icon from '../../../../assets/line-icons/icons/next2';\nimport AnimatedArc from '../../../ui/animated-arc/animated-arc';\nimport IconButton from '../../../ui/buttons/icon-button/icon-button';\nimport FlexView from '../../../ui/layout/flex-view';\nimport LottieAnimation from '../../../ui/lottie-animation/lottie-animation';\nimport Separator from '../../../ui/separator/separator';\nimport Text from '../../../ui/text/text';\nimport * as Styled from './circular-step-wrapper-styled';\n\nconst animationSettings = {\n autoplay: false,\n loop: false,\n renderer: 'canvas',\n rendererSettings: {\n preserveAspectRatio: 'xMidYMin slice',\n },\n};\n\nconst CircularStepWrapper = forwardRef<ICircularStepRef, ICircularStepWrapperProps>(\n (\n {\n children,\n onGoBack,\n onNext,\n label,\n showNext,\n showPrevious,\n animation,\n introFrames,\n outroFrames,\n isNextLoading,\n progressAngle,\n },\n ref: Ref<ICircularStepRef>,\n ) => {\n const animationRef = useRef<ILottieAnimationRef | null>(null);\n const containerRef = useRef<HTMLDivElement>(null);\n const [containerHeight, setContainerHeight] = useState<number | undefined>();\n const [showContent, setShowContent] = useState(false);\n const timeoutRef = useRef<NodeJS.Timeout | null>(null);\n\n const onLottieRender = useCallback(() => {\n if (animation && animationRef.current) {\n animationRef.current.playSegments(introFrames, true);\n setShowContent(true);\n }\n // eslint-disable-next-line react-hooks/exhaustive-deps\n }, [animation]);\n\n useEffect(() => {\n return () => {\n if (timeoutRef.current) {\n clearTimeout(timeoutRef.current);\n }\n };\n }, [animation]);\n\n useImperativeHandle(ref, () => ({\n playOutroAndFadeOut: async () => {\n return new Promise<void>(resolve => {\n const handleComplete = () => {\n resolve();\n animationRef.current?.removeEventListener('complete', handleComplete);\n };\n\n animationRef.current?.playSegments(outroFrames, true);\n timeoutRef.current = setTimeout(() => setShowContent(false), 400);\n animationRef.current?.addEventListener('complete', handleComplete);\n });\n },\n }));\n\n useLayoutEffect(() => {\n if (containerRef.current) {\n setContainerHeight(containerRef.current.offsetHeight);\n }\n }, []);\n\n return (\n <Styled.Container\n $flex={1}\n $flexDirection=\"column\"\n $alignItems=\"center\"\n $justifyContent=\"center\"\n $width=\"100%\"\n $height=\"100%\"\n ref={containerRef}\n >\n {containerHeight && (\n <LottieAnimation\n width={1280}\n height={containerHeight}\n src={animation}\n ref={animationRef}\n onRender={onLottieRender}\n settings={animationSettings}\n />\n )}\n <Styled.CircularStepContainer\n $width={400}\n $height={400}\n $background=\"REAL_BLACK\"\n $alignItems=\"center\"\n $justifyContent=\"center\"\n >\n {progressAngle && (\n <AnimatedArc\n radius={200}\n strokeWidth={2}\n color=\"WHITE\"\n targetAngle={progressAngle}\n mode=\"fade\"\n duration={1}\n />\n )}\n <Styled.ContentWrapper $isVisible={showContent} $width=\"100%\">\n {label && (\n <FlexView $gutterX={3.5}>\n <Text $renderAs=\"ab2\" $color=\"WHITE\" $align=\"center\">\n {label}\n </Text>\n <Separator heightX={1} />\n </FlexView>\n )}\n <Styled.InputContainer>{children}</Styled.InputContainer>\n </Styled.ContentWrapper>\n </Styled.CircularStepContainer>\n {showPrevious && (\n <Styled.PrevButtonWrapper>\n <IconButton\n Icon={Back2Icon}\n renderAs=\"secondary-dark\"\n analyticsLabel=\"Prev\"\n onClick={onGoBack}\n disabled={isNextLoading}\n size=\"small\"\n />\n </Styled.PrevButtonWrapper>\n )}\n {showNext && (\n <Styled.NextButtonWrapper>\n <IconButton\n size=\"small\"\n Icon={Next2Icon}\n renderAs=\"secondary-dark\"\n analyticsLabel=\"Next\"\n onClick={onNext}\n busy={isNextLoading}\n />\n </Styled.NextButtonWrapper>\n )}\n </Styled.Container>\n );\n },\n);\n\nexport default memo(CircularStepWrapper);\n"],"names":["animationSettings","CircularStepWrapper","forwardRef","children","onGoBack","onNext","label","showNext","showPrevious","animation","introFrames","outroFrames","isNextLoading","progressAngle","ref","animationRef","useRef","containerRef","containerHeight","setContainerHeight","useState","showContent","setShowContent","timeoutRef","onLottieRender","useCallback","useEffect","useImperativeHandle","resolve","handleComplete","_a","_b","useLayoutEffect","jsxs","Styled.Container","jsx","LottieAnimation","Styled.CircularStepContainer","AnimatedArc","Styled.ContentWrapper","FlexView","Text","Separator","Styled.InputContainer","Styled.PrevButtonWrapper","IconButton","Back2Icon","Styled.NextButtonWrapper","Next2Icon","circularStepWrapper","memo"],"mappings":"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"}
|
@@ -1,79 +1,53 @@
|
|
1
|
-
import { jsxs as r, jsx as e
|
2
|
-
import { memo as
|
3
|
-
import { ILLUSTRATIONS as
|
4
|
-
import
|
5
|
-
import
|
6
|
-
import
|
7
|
-
import
|
8
|
-
import t from "../../../ui/
|
9
|
-
import
|
10
|
-
import
|
11
|
-
|
12
|
-
|
13
|
-
|
14
|
-
|
15
|
-
|
16
|
-
|
17
|
-
|
18
|
-
|
19
|
-
|
20
|
-
|
21
|
-
|
22
|
-
|
23
|
-
/* @__PURE__ */
|
24
|
-
|
25
|
-
|
26
|
-
|
27
|
-
/* @__PURE__ */ r(o, { $renderAs: "ab1", $color: "WHITE", $align: "center", children: [
|
28
|
-
"We found multiple profiles linked to",
|
29
|
-
" ",
|
30
|
-
/* @__PURE__ */ e(o, { $color: "WHITE", $inline: !0, $renderAs: "ab1-bold", children: s })
|
31
|
-
] }),
|
32
|
-
/* @__PURE__ */ e(o, { $renderAs: "ab1", $color: "WHITE", $align: "center", children: "Which one would you like to proceed with?" })
|
1
|
+
import { jsxs as r, jsx as e } from "react/jsx-runtime";
|
2
|
+
import { memo as d } from "react";
|
3
|
+
import { ILLUSTRATIONS as h } from "../../../../assets/illustrations/illustrations.js";
|
4
|
+
import $ from "../../../ui/buttons/button/button.js";
|
5
|
+
import f from "../../../ui/image/image.js";
|
6
|
+
import i from "../../../ui/layout/flex-view.js";
|
7
|
+
import o from "../../../ui/separator/separator.js";
|
8
|
+
import t from "../../../ui/text/text.js";
|
9
|
+
import u from "../../comps/overlay-loader/overlay-loader.js";
|
10
|
+
import p from "../../user-list/user-list.js";
|
11
|
+
const g = ({
|
12
|
+
email: l,
|
13
|
+
onSelectAccount: c,
|
14
|
+
userAccounts: s,
|
15
|
+
onCreateNewAccount: m,
|
16
|
+
isCreatingAccount: n,
|
17
|
+
isLoading: a
|
18
|
+
}) => /* @__PURE__ */ r(i, { $flex: 1, $alignItems: "center", $justifyContent: "center", $width: "100%", $height: "100%", children: [
|
19
|
+
/* @__PURE__ */ e(u, { isLoading: a }),
|
20
|
+
/* @__PURE__ */ e(f, { src: h.CIRCLE_CUEMATH_LOGO_WHITE, alt: "Parent Signup", withLoader: !1 }),
|
21
|
+
/* @__PURE__ */ e(o, { heightX: 1 }),
|
22
|
+
/* @__PURE__ */ r(i, { children: [
|
23
|
+
/* @__PURE__ */ r(t, { $renderAs: "ab1", $color: "WHITE", $align: "center", children: [
|
24
|
+
"We found multiple profiles linked to",
|
25
|
+
" ",
|
26
|
+
/* @__PURE__ */ e(t, { $color: "WHITE", $inline: !0, $renderAs: "ab1-bold", children: l })
|
33
27
|
] }),
|
34
|
-
/* @__PURE__ */ e(t, {
|
35
|
-
|
36
|
-
|
28
|
+
/* @__PURE__ */ e(t, { $renderAs: "ab1", $color: "WHITE", $align: "center", children: "Which one would you like to proceed with?" })
|
29
|
+
] }),
|
30
|
+
/* @__PURE__ */ e(o, { heightX: 5 }),
|
31
|
+
/* @__PURE__ */ e(p, { users: s, onSelect: c }),
|
32
|
+
/* @__PURE__ */ e(o, { heightX: 5 }),
|
33
|
+
/* @__PURE__ */ r(i, { $alignItems: "center", $justifyContent: "center", children: [
|
34
|
+
/* @__PURE__ */ e(t, { $renderAs: "ub2", $color: "WHITE", children: "Don't recognize these accounts?" }),
|
35
|
+
/* @__PURE__ */ e(o, { heightX: 1 }),
|
36
|
+
/* @__PURE__ */ e(
|
37
|
+
$,
|
37
38
|
{
|
38
|
-
|
39
|
-
|
40
|
-
|
41
|
-
|
42
|
-
|
43
|
-
|
44
|
-
|
45
|
-
|
46
|
-
|
47
|
-
|
48
|
-
|
49
|
-
/* @__PURE__ */ e(t, { heightX: 0.5 }),
|
50
|
-
/* @__PURE__ */ e(o, { $color: "WHITE", $renderAs: "ab2", $align: "center", children: f })
|
51
|
-
]
|
52
|
-
},
|
53
|
-
a
|
54
|
-
)) }),
|
55
|
-
p && /* @__PURE__ */ r(g, { children: [
|
56
|
-
/* @__PURE__ */ e(t, { heightX: 5 }),
|
57
|
-
/* @__PURE__ */ r(n, { $alignItems: "center", $justifyContent: "center", children: [
|
58
|
-
/* @__PURE__ */ e(o, { $renderAs: "ub2", $color: "WHITE", children: "Don't recognize these accounts?" }),
|
59
|
-
/* @__PURE__ */ e(t, { heightX: 1 }),
|
60
|
-
/* @__PURE__ */ e(
|
61
|
-
C,
|
62
|
-
{
|
63
|
-
width: 232,
|
64
|
-
size: "small",
|
65
|
-
label: "Create new account",
|
66
|
-
renderAs: "secondary-dark",
|
67
|
-
onClick: d,
|
68
|
-
busy: l,
|
69
|
-
disabled: l
|
70
|
-
}
|
71
|
-
)
|
72
|
-
] })
|
73
|
-
] })
|
74
|
-
] });
|
75
|
-
}, _ = u(E);
|
39
|
+
width: 232,
|
40
|
+
size: "small",
|
41
|
+
label: "Create new account",
|
42
|
+
renderAs: "secondary-dark",
|
43
|
+
onClick: m,
|
44
|
+
busy: n,
|
45
|
+
disabled: n
|
46
|
+
}
|
47
|
+
)
|
48
|
+
] })
|
49
|
+
] }), y = d(g);
|
76
50
|
export {
|
77
|
-
|
51
|
+
y as default
|
78
52
|
};
|
79
53
|
//# sourceMappingURL=claim-user-account.js.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"claim-user-account.js","sources":["../../../../../src/features/auth/signup/claim-user-account/claim-user-account.tsx"],"sourcesContent":["import type { IClaimUserAccountProps } from './claim-user-account-types';\n\nimport { memo } from 'react';\nimport { type FC } from 'react';\n\nimport { ILLUSTRATIONS } from '../../../../assets/illustrations/illustrations';\nimport
|
1
|
+
{"version":3,"file":"claim-user-account.js","sources":["../../../../../src/features/auth/signup/claim-user-account/claim-user-account.tsx"],"sourcesContent":["import type { IClaimUserAccountProps } from './claim-user-account-types';\n\nimport { memo } from 'react';\nimport { type FC } from 'react';\n\nimport { ILLUSTRATIONS } from '../../../../assets/illustrations/illustrations';\nimport Button from '../../../ui/buttons/button/button';\nimport Image from '../../../ui/image/image';\nimport FlexView from '../../../ui/layout/flex-view';\nimport Separator from '../../../ui/separator/separator';\nimport Text from '../../../ui/text/text';\nimport OverlayLoader from '../../comps/overlay-loader/overlay-loader';\nimport UserList from '../../user-list/user-list';\n\nconst ClaimUserAccount: FC<IClaimUserAccountProps> = ({\n email,\n onSelectAccount,\n userAccounts,\n onCreateNewAccount,\n isCreatingAccount,\n isLoading,\n}) => {\n return (\n <FlexView $flex={1} $alignItems=\"center\" $justifyContent=\"center\" $width=\"100%\" $height=\"100%\">\n <OverlayLoader isLoading={isLoading} />\n <Image src={ILLUSTRATIONS.CIRCLE_CUEMATH_LOGO_WHITE} alt=\"Parent Signup\" withLoader={false} />\n <Separator heightX={1} />\n <FlexView>\n <Text $renderAs=\"ab1\" $color=\"WHITE\" $align=\"center\">\n We found multiple profiles linked to{' '}\n <Text $color=\"WHITE\" $inline $renderAs=\"ab1-bold\">\n {email}\n </Text>\n </Text>\n <Text $renderAs=\"ab1\" $color=\"WHITE\" $align=\"center\">\n Which one would you like to proceed with?\n </Text>\n </FlexView>\n <Separator heightX={5} />\n <UserList users={userAccounts} onSelect={onSelectAccount} />\n <Separator heightX={5} />\n <FlexView $alignItems=\"center\" $justifyContent=\"center\">\n <Text $renderAs=\"ub2\" $color=\"WHITE\">\n Don't recognize these accounts?\n </Text>\n <Separator heightX={1} />\n <Button\n width={232}\n size=\"small\"\n label=\"Create new account\"\n renderAs=\"secondary-dark\"\n onClick={onCreateNewAccount}\n busy={isCreatingAccount}\n disabled={isCreatingAccount}\n />\n </FlexView>\n </FlexView>\n );\n};\n\nexport default memo(ClaimUserAccount);\n"],"names":["ClaimUserAccount","email","onSelectAccount","userAccounts","onCreateNewAccount","isCreatingAccount","isLoading","jsxs","FlexView","jsx","OverlayLoader","Image","ILLUSTRATIONS","Separator","Text","UserList","Button","claimUserAccount","memo"],"mappings":";;;;;;;;;;AAcA,MAAMA,IAA+C,CAAC;AAAA,EACpD,OAAAC;AAAA,EACA,iBAAAC;AAAA,EACA,cAAAC;AAAA,EACA,oBAAAC;AAAA,EACA,mBAAAC;AAAA,EACA,WAAAC;AACF,MAEI,gBAAAC,EAACC,GAAS,EAAA,OAAO,GAAG,aAAY,UAAS,iBAAgB,UAAS,QAAO,QAAO,SAAQ,QACtF,UAAA;AAAA,EAAA,gBAAAC,EAACC,KAAc,WAAAJ,GAAsB;AAAA,EACrC,gBAAAG,EAACE,KAAM,KAAKC,EAAc,2BAA2B,KAAI,iBAAgB,YAAY,IAAO;AAAA,EAC5F,gBAAAH,EAACI,GAAU,EAAA,SAAS,EAAG,CAAA;AAAA,oBACtBL,GACC,EAAA,UAAA;AAAA,IAAA,gBAAAD,EAACO,KAAK,WAAU,OAAM,QAAO,SAAQ,QAAO,UAAS,UAAA;AAAA,MAAA;AAAA,MACd;AAAA,MACrC,gBAAAL,EAACK,KAAK,QAAO,SAAQ,SAAO,IAAC,WAAU,YACpC,UACHb,EAAA,CAAA;AAAA,IAAA,GACF;AAAA,IACA,gBAAAQ,EAACK,KAAK,WAAU,OAAM,QAAO,SAAQ,QAAO,UAAS,UAErD,4CAAA,CAAA;AAAA,EAAA,GACF;AAAA,EACA,gBAAAL,EAACI,GAAU,EAAA,SAAS,EAAG,CAAA;AAAA,EACtB,gBAAAJ,EAAAM,GAAA,EAAS,OAAOZ,GAAc,UAAUD,GAAiB;AAAA,EAC1D,gBAAAO,EAACI,GAAU,EAAA,SAAS,EAAG,CAAA;AAAA,EACtB,gBAAAN,EAAAC,GAAA,EAAS,aAAY,UAAS,iBAAgB,UAC7C,UAAA;AAAA,IAAA,gBAAAC,EAACK,GAAK,EAAA,WAAU,OAAM,QAAO,SAAQ,UAErC,mCAAA;AAAA,IACA,gBAAAL,EAACI,GAAU,EAAA,SAAS,EAAG,CAAA;AAAA,IACvB,gBAAAJ;AAAA,MAACO;AAAA,MAAA;AAAA,QACC,OAAO;AAAA,QACP,MAAK;AAAA,QACL,OAAM;AAAA,QACN,UAAS;AAAA,QACT,SAASZ;AAAA,QACT,MAAMC;AAAA,QACN,UAAUA;AAAA,MAAA;AAAA,IACZ;AAAA,EAAA,GACF;AACF,EAAA,CAAA,GAIWY,IAAAC,EAAKlB,CAAgB;"}
|
@@ -1,26 +1,26 @@
|
|
1
|
-
import { jsx as
|
2
|
-
import {
|
1
|
+
import { jsx as t } from "react/jsx-runtime";
|
2
|
+
import { memo as s, useState as u, useCallback as l } from "react";
|
3
3
|
import f from "../../../../ui/context-menu/context-menu.js";
|
4
|
-
import
|
5
|
-
import
|
4
|
+
import c from "../../../../ui/layout/flex-view.js";
|
5
|
+
import C from "./country-code-button.js";
|
6
6
|
import d from "./country-list-menu.js";
|
7
|
-
const
|
8
|
-
const [
|
7
|
+
const p = ({ value: e, onChange: o }) => {
|
8
|
+
const [n, r] = u(!1), i = l((m) => {
|
9
9
|
r(m);
|
10
10
|
}, []);
|
11
|
-
return !
|
11
|
+
return !e || !o ? null : /* @__PURE__ */ t(c, { children: /* @__PURE__ */ t(
|
12
12
|
f,
|
13
13
|
{
|
14
14
|
startLeft: !0,
|
15
|
-
targetElement: /* @__PURE__ */
|
16
|
-
menuElement: /* @__PURE__ */
|
15
|
+
targetElement: /* @__PURE__ */ t(C, { value: e == null ? void 0 : e.code, menuVisible: n }),
|
16
|
+
menuElement: /* @__PURE__ */ t(d, { onChange: o, selectedCountry: e, menuVisible: n }),
|
17
17
|
menuOffset: 5,
|
18
18
|
menuZIndex: 1,
|
19
19
|
onMenuVisibilityChange: i
|
20
20
|
}
|
21
21
|
) });
|
22
|
-
};
|
22
|
+
}, h = s(p);
|
23
23
|
export {
|
24
|
-
|
24
|
+
h as default
|
25
25
|
};
|
26
26
|
//# sourceMappingURL=country-selector.js.map
|
package/dist/features/auth/signup/custom-input-field/country-selector/country-selector.js.map
CHANGED
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"country-selector.js","sources":["../../../../../../src/features/auth/signup/custom-input-field/country-selector/country-selector.tsx"],"sourcesContent":["import type { IPhoneCountrySelectorProps } from './country-selector-types';\n\nimport { useCallback, useState, type FC } from 'react';\n\nimport ContextMenu from '../../../../ui/context-menu/context-menu';\nimport FlexView from '../../../../ui/layout/flex-view';\nimport CountryCodeButton from './country-code-button';\nimport CountryListMenu from './country-list-menu';\n\nconst PhoneCountrySelector: FC<IPhoneCountrySelectorProps> = ({ value, onChange }) => {\n const [menuVisible, setMenuVisible] = useState(false);\n\n const handleMenuVisibility = useCallback((visible: boolean) => {\n setMenuVisible(visible);\n }, []);\n\n if (!value || !onChange) return null;\n\n return (\n <FlexView>\n <ContextMenu\n startLeft\n targetElement={<CountryCodeButton value={value?.code} menuVisible={menuVisible} />}\n menuElement={\n <CountryListMenu onChange={onChange} selectedCountry={value} menuVisible={menuVisible} />\n }\n menuOffset={5}\n menuZIndex={1}\n onMenuVisibilityChange={handleMenuVisibility}\n />\n </FlexView>\n );\n};\n\nexport default PhoneCountrySelector;\n"],"names":["PhoneCountrySelector","value","onChange","menuVisible","setMenuVisible","useState","handleMenuVisibility","useCallback","visible","FlexView","jsx","ContextMenu","CountryCodeButton","CountryListMenu"],"mappings":";;;;;;AASA,MAAMA,IAAuD,CAAC,EAAE,OAAAC,GAAO,UAAAC,QAAe;AACpF,QAAM,CAACC,GAAaC,CAAc,IAAIC,EAAS,EAAK,GAE9CC,IAAuBC,EAAY,CAACC,MAAqB;AAC7D,IAAAJ,EAAeI,CAAO;AAAA,EACxB,GAAG,CAAE,CAAA;AAEL,SAAI,CAACP,KAAS,CAACC,IAAiB,yBAG7BO,GACC,EAAA,UAAA,gBAAAC;AAAA,IAACC;AAAA,IAAA;AAAA,MACC,WAAS;AAAA,MACT,eAAgB,gBAAAD,EAAAE,GAAA,EAAkB,OAAOX,KAAA,gBAAAA,EAAO,MAAM,aAAAE,GAA0B;AAAA,MAChF,aACG,gBAAAO,EAAAG,GAAA,EAAgB,UAAAX,GAAoB,iBAAiBD,GAAO,aAAAE,GAA0B;AAAA,MAEzF,YAAY;AAAA,MACZ,YAAY;AAAA,MACZ,wBAAwBG;AAAA,IAAA;AAAA,EAE5B,EAAA,CAAA;AAEJ;"}
|
1
|
+
{"version":3,"file":"country-selector.js","sources":["../../../../../../src/features/auth/signup/custom-input-field/country-selector/country-selector.tsx"],"sourcesContent":["import type { IPhoneCountrySelectorProps } from './country-selector-types';\n\nimport { useCallback, useState, type FC, memo } from 'react';\n\nimport ContextMenu from '../../../../ui/context-menu/context-menu';\nimport FlexView from '../../../../ui/layout/flex-view';\nimport CountryCodeButton from './country-code-button';\nimport CountryListMenu from './country-list-menu';\n\nconst PhoneCountrySelector: FC<IPhoneCountrySelectorProps> = ({ value, onChange }) => {\n const [menuVisible, setMenuVisible] = useState(false);\n\n const handleMenuVisibility = useCallback((visible: boolean) => {\n setMenuVisible(visible);\n }, []);\n\n if (!value || !onChange) return null;\n\n return (\n <FlexView>\n <ContextMenu\n startLeft\n targetElement={<CountryCodeButton value={value?.code} menuVisible={menuVisible} />}\n menuElement={\n <CountryListMenu onChange={onChange} selectedCountry={value} menuVisible={menuVisible} />\n }\n menuOffset={5}\n menuZIndex={1}\n onMenuVisibilityChange={handleMenuVisibility}\n />\n </FlexView>\n );\n};\n\nexport default memo(PhoneCountrySelector);\n"],"names":["PhoneCountrySelector","value","onChange","menuVisible","setMenuVisible","useState","handleMenuVisibility","useCallback","visible","FlexView","jsx","ContextMenu","CountryCodeButton","CountryListMenu","PhoneCountrySelector$1","memo"],"mappings":";;;;;;AASA,MAAMA,IAAuD,CAAC,EAAE,OAAAC,GAAO,UAAAC,QAAe;AACpF,QAAM,CAACC,GAAaC,CAAc,IAAIC,EAAS,EAAK,GAE9CC,IAAuBC,EAAY,CAACC,MAAqB;AAC7D,IAAAJ,EAAeI,CAAO;AAAA,EACxB,GAAG,CAAE,CAAA;AAEL,SAAI,CAACP,KAAS,CAACC,IAAiB,yBAG7BO,GACC,EAAA,UAAA,gBAAAC;AAAA,IAACC;AAAA,IAAA;AAAA,MACC,WAAS;AAAA,MACT,eAAgB,gBAAAD,EAAAE,GAAA,EAAkB,OAAOX,KAAA,gBAAAA,EAAO,MAAM,aAAAE,GAA0B;AAAA,MAChF,aACG,gBAAAO,EAAAG,GAAA,EAAgB,UAAAX,GAAoB,iBAAiBD,GAAO,aAAAE,GAA0B;AAAA,MAEzF,YAAY;AAAA,MACZ,YAAY;AAAA,MACZ,wBAAwBG;AAAA,IAAA;AAAA,EAE5B,EAAA,CAAA;AAEJ,GAEeQ,IAAAC,EAAKf,CAAoB;"}
|