@stackframe/stack 2.2.2 → 2.2.5
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/components/{email-verification.d.ts → EmailVerification.d.ts} +2 -1
- package/dist/components/EmailVerification.d.ts.map +1 -0
- package/dist/components/{email-verification.js → EmailVerification.js} +2 -2
- package/dist/components/ForgotPassword.d.ts +4 -0
- package/dist/components/ForgotPassword.d.ts.map +1 -0
- package/dist/components/ForgotPassword.js +22 -0
- package/dist/components/{oauth-callback.d.ts → OAuthCallback.d.ts} +1 -1
- package/dist/components/OAuthCallback.d.ts.map +1 -0
- package/dist/components/{oauth-callback.js → OAuthCallback.js} +4 -1
- package/dist/components/{password-reset.d.ts → PasswordReset.d.ts} +2 -2
- package/dist/components/PasswordReset.d.ts.map +1 -0
- package/dist/components/{password-reset.js → PasswordReset.js} +5 -6
- package/dist/components/SignIn.d.ts +5 -0
- package/dist/components/SignIn.d.ts.map +1 -0
- package/dist/components/SignIn.js +20 -0
- package/dist/components/SignOut.d.ts +4 -0
- package/dist/components/SignOut.d.ts.map +1 -0
- package/dist/components/{sign-out.js → SignOut.js} +4 -5
- package/dist/components/SignUp.d.ts +5 -0
- package/dist/components/SignUp.d.ts.map +1 -0
- package/dist/components/SignUp.js +19 -0
- package/dist/components/{stack-handler.d.ts → StackHandler.d.ts} +1 -1
- package/dist/components/StackHandler.d.ts.map +1 -0
- package/dist/components/{stack-handler.js → StackHandler.js} +11 -11
- package/dist/components/card-frame.js +2 -2
- package/dist/components/user-button.d.ts.map +1 -1
- package/dist/components/user-button.js +3 -1
- package/dist/components-page/account-settings.js +3 -3
- package/dist/elements/Button.d.ts +11 -0
- package/dist/elements/Button.d.ts.map +1 -0
- package/dist/elements/Button.js +18 -0
- package/dist/elements/CardFrame.d.ts +6 -0
- package/dist/elements/CardFrame.d.ts.map +1 -0
- package/dist/elements/CardFrame.js +10 -0
- package/dist/{components/card-header.d.ts → elements/CardHeader.d.ts} +1 -1
- package/dist/elements/CardHeader.d.ts.map +1 -0
- package/dist/elements/CardHeader.js +4 -0
- package/dist/elements/CredentialSignIn.d.ts +4 -0
- package/dist/elements/CredentialSignIn.d.ts.map +1 -0
- package/dist/elements/CredentialSignIn.js +57 -0
- package/dist/elements/CredentialSignUp.d.ts +4 -0
- package/dist/elements/CredentialSignUp.d.ts.map +1 -0
- package/dist/elements/CredentialSignUp.js +73 -0
- package/dist/elements/{divider-with-text.d.ts → DividerWithText.d.ts} +1 -1
- package/dist/elements/DividerWithText.d.ts.map +1 -0
- package/dist/elements/DividerWithText.js +5 -0
- package/dist/elements/{forgot-password.d.ts → ForgotPassword.d.ts} +1 -1
- package/dist/elements/ForgotPassword.d.ts.map +1 -0
- package/dist/elements/ForgotPassword.js +32 -0
- package/dist/elements/{form-warning.d.ts → FormWarning.d.ts} +1 -1
- package/dist/elements/FormWarning.d.ts.map +1 -0
- package/dist/elements/{form-warning.js → FormWarning.js} +1 -2
- package/dist/elements/{message-card.d.ts → MessageCard.d.ts} +1 -1
- package/dist/elements/MessageCard.d.ts.map +1 -0
- package/dist/elements/MessageCard.js +5 -0
- package/dist/elements/OAuthButton.d.ts +6 -0
- package/dist/elements/OAuthButton.d.ts.map +1 -0
- package/dist/elements/{oauth-button.js → OAuthButton.js} +10 -8
- package/dist/elements/OAuthGroup.d.ts +5 -0
- package/dist/elements/OAuthGroup.d.ts.map +1 -0
- package/dist/elements/OAuthGroup.js +8 -0
- package/dist/elements/{password-field.d.ts → PasswordField.d.ts} +1 -1
- package/dist/elements/PasswordField.d.ts.map +1 -0
- package/dist/elements/PasswordField.js +27 -0
- package/dist/elements/{password-reset-inner.d.ts → PasswordResetInner.d.ts} +1 -1
- package/dist/elements/PasswordResetInner.d.ts.map +1 -0
- package/dist/elements/{password-reset-inner.js → PasswordResetInner.js} +16 -18
- package/dist/elements/{redirect-message-card.d.ts → RedirectMessageCard.d.ts} +1 -1
- package/dist/elements/RedirectMessageCard.d.ts.map +1 -0
- package/dist/elements/{redirect-message-card.js → RedirectMessageCard.js} +5 -4
- package/dist/index.d.ts +1 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/lib/hooks.d.ts +13 -5
- package/dist/lib/hooks.d.ts.map +1 -1
- package/dist/lib/hooks.js +11 -2
- package/dist/lib/stack-app.d.ts +16 -9
- package/dist/lib/stack-app.d.ts.map +1 -1
- package/dist/lib/stack-app.js +57 -14
- package/dist/providers/StackProvider.d.ts +7 -0
- package/dist/providers/StackProvider.d.ts.map +1 -0
- package/dist/providers/StackProvider.js +6 -0
- package/dist/providers/StackProviderClient.d.ts +10 -0
- package/dist/providers/StackProviderClient.d.ts.map +1 -0
- package/dist/providers/StackProviderClient.js +14 -0
- package/dist/utils/react.d.ts.map +1 -1
- package/dist/utils/results.d.ts.map +1 -1
- package/package.json +3 -3
- package/dist/components/avatar.d.ts +0 -1
- package/dist/components/avatar.d.ts.map +0 -1
- package/dist/components/avatar.js +0 -1
- package/dist/components/card-header.d.ts.map +0 -1
- package/dist/components/card-header.js +0 -5
- package/dist/components/centered-card-header.d.ts +0 -6
- package/dist/components/centered-card-header.d.ts.map +0 -1
- package/dist/components/centered-card-header.js +0 -5
- package/dist/components/dashboard-frame.d.ts +0 -23
- package/dist/components/dashboard-frame.d.ts.map +0 -1
- package/dist/components/dashboard-frame.js +0 -20
- package/dist/components/divider-with-text.d.ts +0 -4
- package/dist/components/divider-with-text.d.ts.map +0 -1
- package/dist/components/divider-with-text.js +0 -6
- package/dist/components/email-verification.d.ts.map +0 -1
- package/dist/components/logo.d.ts +0 -7
- package/dist/components/logo.d.ts.map +0 -1
- package/dist/components/logo.js +0 -7
- package/dist/components/oauth-callback.d.ts.map +0 -1
- package/dist/components/password-reset.d.ts.map +0 -1
- package/dist/components/sign-in.d.ts +0 -4
- package/dist/components/sign-in.d.ts.map +0 -1
- package/dist/components/sign-in.js +0 -20
- package/dist/components/sign-out.d.ts +0 -2
- package/dist/components/sign-out.d.ts.map +0 -1
- package/dist/components/sign-up.d.ts +0 -4
- package/dist/components/sign-up.d.ts.map +0 -1
- package/dist/components/sign-up.js +0 -20
- package/dist/components/stack-handler.d.ts.map +0 -1
- package/dist/components-core/collapsble.d.ts +0 -5
- package/dist/components-core/collapsble.d.ts.map +0 -1
- package/dist/components-core/collapsble.js +0 -6
- package/dist/components-core/divider.d.ts +0 -5
- package/dist/components-core/divider.d.ts.map +0 -1
- package/dist/components-core/divider.js +0 -20
- package/dist/components-core-joy/card.d.ts +0 -3
- package/dist/components-core-joy/card.d.ts.map +0 -1
- package/dist/components-core-joy/card.js +0 -7
- package/dist/components-core-joy/divider.d.ts +0 -3
- package/dist/components-core-joy/divider.d.ts.map +0 -1
- package/dist/components-core-joy/divider.js +0 -7
- package/dist/elements/card-frame.d.ts +0 -7
- package/dist/elements/card-frame.d.ts.map +0 -1
- package/dist/elements/card-frame.js +0 -24
- package/dist/elements/card-header.d.ts +0 -6
- package/dist/elements/card-header.d.ts.map +0 -1
- package/dist/elements/card-header.js +0 -5
- package/dist/elements/credential-sign-in.d.ts +0 -2
- package/dist/elements/credential-sign-in.d.ts.map +0 -1
- package/dist/elements/credential-sign-in.js +0 -56
- package/dist/elements/credential-sign-up.d.ts +0 -2
- package/dist/elements/credential-sign-up.d.ts.map +0 -1
- package/dist/elements/credential-sign-up.js +0 -73
- package/dist/elements/divider-with-text.d.ts.map +0 -1
- package/dist/elements/divider-with-text.js +0 -6
- package/dist/elements/forgot-password.d.ts.map +0 -1
- package/dist/elements/forgot-password.js +0 -32
- package/dist/elements/form-warning.d.ts.map +0 -1
- package/dist/elements/message-card.d.ts.map +0 -1
- package/dist/elements/message-card.js +0 -7
- package/dist/elements/oauth-button.d.ts +0 -5
- package/dist/elements/oauth-button.d.ts.map +0 -1
- package/dist/elements/oauth-group.d.ts +0 -4
- package/dist/elements/oauth-group.d.ts.map +0 -1
- package/dist/elements/oauth-group.js +0 -8
- package/dist/elements/password-field.d.ts.map +0 -1
- package/dist/elements/password-field.js +0 -38
- package/dist/elements/password-reset-inner.d.ts.map +0 -1
- package/dist/elements/redirect-message-card.d.ts.map +0 -1
- package/dist/icons/logo.d.ts +0 -3
- package/dist/icons/logo.d.ts.map +0 -1
- package/dist/icons/logo.js +0 -7
- package/dist/providers/ui-provider.d.ts +0 -10
- package/dist/providers/ui-provider.js +0 -20
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ForgotPassword.d.ts","sourceRoot":"","sources":["../../src/elements/ForgotPassword.tsx"],"names":[],"mappings":"AAUA,MAAM,CAAC,OAAO,UAAU,cAAc,CAAC,EAAE,MAAM,EAAE,EAAE;IAAE,MAAM,CAAC,EAAE,MAAM,IAAI,CAAA;CAAE,2CAqDzE"}
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
'use client';
|
|
2
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
3
|
+
import { useState } from "react";
|
|
4
|
+
import { FormWarningText } from "./FormWarning";
|
|
5
|
+
import { validateEmail } from "../utils/email";
|
|
6
|
+
import { useStackApp } from "..";
|
|
7
|
+
import { runAsynchronously } from "@stackframe/stack-shared/dist/utils/promises";
|
|
8
|
+
import Button from "./Button";
|
|
9
|
+
export default function ForgotPassword({ onSent }) {
|
|
10
|
+
const [email, setEmail] = useState('');
|
|
11
|
+
const [emailError, setEmailError] = useState('');
|
|
12
|
+
const [sending, setSending] = useState(false);
|
|
13
|
+
const stackApp = useStackApp();
|
|
14
|
+
const onSubmit = async () => {
|
|
15
|
+
if (!email) {
|
|
16
|
+
setEmailError('Please enter your email');
|
|
17
|
+
return;
|
|
18
|
+
}
|
|
19
|
+
if (!validateEmail(email)) {
|
|
20
|
+
setEmailError('Please enter a valid email');
|
|
21
|
+
return;
|
|
22
|
+
}
|
|
23
|
+
setSending(true);
|
|
24
|
+
await stackApp.sendForgotPasswordEmail(email);
|
|
25
|
+
setSending(false);
|
|
26
|
+
onSent?.();
|
|
27
|
+
};
|
|
28
|
+
return (_jsxs("div", { className: "wl_flex wl_flex-col wl_space-y-2 wl_items-stretch", children: [_jsxs("div", { className: "wl_form-control", children: [_jsx("label", { className: "wl_label", htmlFor: "email", children: _jsx("span", { className: "wl_label-text", children: "Your Email" }) }), _jsx("input", { id: "email", type: "email", name: "email", className: "wl_input wl_input-bordered", value: email, onChange: (e) => {
|
|
29
|
+
setEmail(e.target.value);
|
|
30
|
+
setEmailError('');
|
|
31
|
+
} }), _jsx(FormWarningText, { text: emailError })] }), _jsx("div", { className: "wl_flex wl_flex-col wl_items-stretch", children: _jsx(Button, { className: "wl_btn-primary wl_mt-6", onClick: () => runAsynchronously(onSubmit()), loading: sending, children: "Send Email" }) })] }));
|
|
32
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"FormWarning.d.ts","sourceRoot":"","sources":["../../src/elements/FormWarning.tsx"],"names":[],"mappings":"AAAA,wBAAgB,eAAe,CAAC,EAAE,IAAI,EAAE,EAAE;IAAE,IAAI,CAAC,EAAE,MAAM,CAAA;CAAE,kDAS1D"}
|
|
@@ -1,8 +1,7 @@
|
|
|
1
1
|
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
-
import { Text } from "@stackframe/stack-ui";
|
|
3
2
|
export function FormWarningText({ text }) {
|
|
4
3
|
if (!text) {
|
|
5
4
|
return null;
|
|
6
5
|
}
|
|
7
|
-
return (_jsx(
|
|
6
|
+
return (_jsx("p", { className: "wl_text-sm wl_text-red-500", children: text }));
|
|
8
7
|
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"MessageCard.d.ts","sourceRoot":"","sources":["../../src/elements/MessageCard.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,MAAM,OAAO,CAAC;AAG1B,MAAM,CAAC,OAAO,UAAU,WAAW,CACjC,EAAE,QAAQ,EAAE,KAAK,EAAE,QAAc,EAAE,EACnC;IAAE,QAAQ,CAAC,EAAE,KAAK,CAAC,SAAS,CAAC;IAAC,KAAK,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE,OAAO,CAAA;CAAC,2CAUjE"}
|
|
@@ -0,0 +1,5 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import CardFrame from "./CardFrame";
|
|
3
|
+
export default function MessageCard({ children, title, fullPage = false }) {
|
|
4
|
+
return (_jsx(CardFrame, { fullPage: fullPage, children: _jsxs("div", { className: 'wl_text-center', children: [_jsx("h1", { className: "wl_text-2xl wl_mb-6", children: title }), children] }) }));
|
|
5
|
+
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"OAuthButton.d.ts","sourceRoot":"","sources":["../../src/elements/OAuthButton.tsx"],"names":[],"mappings":"AASA,MAAM,CAAC,OAAO,UAAU,WAAW,CAAC,EAClC,QAAQ,EACR,IAAI,EACJ,WAAW,EACZ,EAAE;IACD,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,QAAQ,GAAG,QAAQ,CAAC;IAC1B,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB,2CAuGA"}
|
|
@@ -3,19 +3,17 @@ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
|
3
3
|
import { FaGithub, FaFacebook, FaApple } from 'react-icons/fa';
|
|
4
4
|
import { useStackApp } from '..';
|
|
5
5
|
import { runAsynchronously } from "@stackframe/stack-shared/dist/utils/promises";
|
|
6
|
-
import
|
|
7
|
-
|
|
8
|
-
|
|
9
|
-
export default function OAuthButton({ provider, type, }) {
|
|
10
|
-
const { colors } = useDesign();
|
|
6
|
+
import Button from './Button';
|
|
7
|
+
const iconSize = 24;
|
|
8
|
+
export default function OAuthButton({ provider, type, redirectUrl }) {
|
|
11
9
|
const stackApp = useStackApp();
|
|
12
10
|
let style;
|
|
13
11
|
switch (provider) {
|
|
14
12
|
case 'google': {
|
|
15
13
|
style = {
|
|
16
14
|
backgroundColor: '#fff',
|
|
15
|
+
textColor: '#000',
|
|
17
16
|
name: 'Google',
|
|
18
|
-
border: Color(colors.primaryBgColor).isDark() ? undefined : '1px solid #ccc',
|
|
19
17
|
icon: (_jsxs("svg", { xmlns: "http://www.w3.org/2000/svg", width: iconSize, height: iconSize, viewBox: "0 0 24 24", children: [_jsx("path", { fill: "#4285F4", d: "M22.56 12.25c0-.78-.07-1.53-.2-2.25H12v4.26h5.92c-.26 1.37-1.04 2.53-2.21 3.31v2.77h3.57c2.08-1.92 3.28-4.74 3.28-8.09z" }), _jsx("path", { fill: "#34A853", d: "M12 23c2.97 0 5.46-.98 7.28-2.66l-3.57-2.77c-.98.66-2.23 1.06-3.71 1.06-2.86 0-5.29-1.93-6.16-4.53H2.18v2.84C3.99 20.53 7.7 23 12 23z" }), _jsx("path", { fill: "#FBBC05", d: "M5.84 14.09c-.22-.66-.35-1.36-.35-2.09s.13-1.43.35-2.09V7.07H2.18C1.43 8.55 1 10.22 1 12s.43 3.45 1.18 4.93l2.85-2.22.81-.62z" }), _jsx("path", { fill: "#EA4335", d: "M12 5.38c1.62 0 3.06.56 4.21 1.64l3.15-3.15C17.45 2.09 14.97 1 12 1 7.7 1 3.99 3.47 2.18 7.07l3.66 2.84c.87-2.6 3.3-4.53 6.16-4.53z" }), _jsx("path", { fill: "none", d: "M1 1h22v22H1z" })] })),
|
|
20
18
|
};
|
|
21
19
|
break;
|
|
@@ -23,7 +21,7 @@ export default function OAuthButton({ provider, type, }) {
|
|
|
23
21
|
case 'github': {
|
|
24
22
|
style = {
|
|
25
23
|
backgroundColor: '#111',
|
|
26
|
-
|
|
24
|
+
textColor: '#fff',
|
|
27
25
|
name: 'GitHub',
|
|
28
26
|
icon: (_jsx(FaGithub, { color: "#fff", size: iconSize })),
|
|
29
27
|
};
|
|
@@ -32,6 +30,7 @@ export default function OAuthButton({ provider, type, }) {
|
|
|
32
30
|
case 'facebook': {
|
|
33
31
|
style = {
|
|
34
32
|
backgroundColor: '#1877F2',
|
|
33
|
+
textColor: '#fff',
|
|
35
34
|
name: 'Facebook',
|
|
36
35
|
icon: (_jsx(FaFacebook, { color: "#fff", size: iconSize })),
|
|
37
36
|
};
|
|
@@ -40,6 +39,7 @@ export default function OAuthButton({ provider, type, }) {
|
|
|
40
39
|
case 'apple': {
|
|
41
40
|
style = {
|
|
42
41
|
backgroundColor: '#000',
|
|
42
|
+
textColor: '#fff',
|
|
43
43
|
name: 'Apple',
|
|
44
44
|
icon: (_jsx(FaApple, { color: "#fff", size: iconSize })),
|
|
45
45
|
};
|
|
@@ -48,6 +48,7 @@ export default function OAuthButton({ provider, type, }) {
|
|
|
48
48
|
case 'microsoft': {
|
|
49
49
|
style = {
|
|
50
50
|
backgroundColor: '#2f2f2f',
|
|
51
|
+
textColor: '#fff',
|
|
51
52
|
name: 'Microsoft',
|
|
52
53
|
icon: (_jsxs("svg", { xmlns: "http://www.w3.org/2000/svg", width: iconSize, height: iconSize, viewBox: "0 0 21 21", children: [_jsx("title", { children: "MS-SymbolLockup" }), _jsx("path", { fill: "#f25022", d: "M1 1h9v9H1z" }), _jsx("path", { fill: "#00a4ef", d: "M1 11h9v9H1z" }), _jsx("path", { fill: "#7fba00", d: "M11 1h9v9h-9z" }), _jsx("path", { fill: "#ffb900", d: "M11 11h9v9h-9z" })] })),
|
|
53
54
|
};
|
|
@@ -56,10 +57,11 @@ export default function OAuthButton({ provider, type, }) {
|
|
|
56
57
|
default: {
|
|
57
58
|
style = {
|
|
58
59
|
backgroundColor: '#000',
|
|
60
|
+
textColor: '#fff',
|
|
59
61
|
name: provider,
|
|
60
62
|
icon: null
|
|
61
63
|
};
|
|
62
64
|
}
|
|
63
65
|
}
|
|
64
|
-
return (
|
|
66
|
+
return (_jsxs(Button, { style: { backgroundColor: style.backgroundColor, color: style.textColor }, onClick: () => runAsynchronously(stackApp.signInWithOAuth(provider)), leftIcon: style.icon, children: [type === 'signup' ? 'Sign up with ' : 'Sign in with ', style.name] }));
|
|
65
67
|
}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"OAuthGroup.d.ts","sourceRoot":"","sources":["../../src/elements/OAuthGroup.tsx"],"names":[],"mappings":"AAGA,MAAM,CAAC,OAAO,UAAU,UAAU,CAAC,EACjC,IAAI,EACJ,WAAW,EACZ,EAAE;IACD,IAAI,EAAE,QAAQ,GAAG,QAAQ,CAAC;IAC1B,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB,2CAWA"}
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
import { jsx as _jsx } from "react/jsx-runtime";
|
|
2
|
+
import { useStackApp } from "..";
|
|
3
|
+
import OAuthButton from "./OAuthButton";
|
|
4
|
+
export default function OAuthGroup({ type, redirectUrl }) {
|
|
5
|
+
const stackApp = useStackApp();
|
|
6
|
+
const project = stackApp.useProject();
|
|
7
|
+
return (_jsx("div", { className: "wl_space-y-4 wl_flex wl_flex-col wl_items-stretch", children: project.oauthProviders.filter(p => p.enabled).map(p => (_jsx(OAuthButton, { provider: p.id, type: type, redirectUrl: redirectUrl }, p.id))) }));
|
|
8
|
+
}
|
|
@@ -1,3 +1,3 @@
|
|
|
1
1
|
/// <reference types="react" />
|
|
2
2
|
export declare const PasswordField: import("react").ForwardRefExoticComponent<import("react").InputHTMLAttributes<HTMLInputElement> & import("react").RefAttributes<HTMLInputElement>>;
|
|
3
|
-
//# sourceMappingURL=
|
|
3
|
+
//# sourceMappingURL=PasswordField.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"PasswordField.d.ts","sourceRoot":"","sources":["../../src/elements/PasswordField.tsx"],"names":[],"mappings":";AAGA,eAAO,MAAM,aAAa,oJA8CxB,CAAC"}
|
|
@@ -0,0 +1,27 @@
|
|
|
1
|
+
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
2
|
+
import { forwardRef, useRef, useState } from 'react';
|
|
3
|
+
import { HiEye, HiEyeOff } from 'react-icons/hi';
|
|
4
|
+
export const PasswordField = forwardRef(({ id, name, ...props }, ref) => {
|
|
5
|
+
const [isOpen, setIsOpen] = useState(false);
|
|
6
|
+
const inputRef = useRef(null);
|
|
7
|
+
const mergeRef = (node) => {
|
|
8
|
+
if (ref) {
|
|
9
|
+
if (typeof ref === 'function') {
|
|
10
|
+
ref(node);
|
|
11
|
+
}
|
|
12
|
+
else {
|
|
13
|
+
ref.current = node;
|
|
14
|
+
}
|
|
15
|
+
}
|
|
16
|
+
inputRef.current = node;
|
|
17
|
+
};
|
|
18
|
+
const onClickReveal = () => {
|
|
19
|
+
setIsOpen(!isOpen);
|
|
20
|
+
const currentInput = inputRef.current;
|
|
21
|
+
if (currentInput) {
|
|
22
|
+
currentInput.focus({ preventScroll: true });
|
|
23
|
+
}
|
|
24
|
+
};
|
|
25
|
+
return (_jsxs("div", { className: "wl_relative", children: [_jsx("input", { id: id, ref: mergeRef, name: name, type: isOpen ? 'text' : 'password', autoComplete: "current-password", required: true, className: "wl_input wl_input-bordered wl_w-full", ...props }), _jsx("button", { tabIndex: -1, type: "button", className: "wl_absolute wl_inset-y-0 wl_right-0 wl_flex wl_items-center wl_pr-3", onClick: onClickReveal, "aria-label": isOpen ? 'Mask password' : 'Reveal password', children: isOpen ? _jsx(HiEyeOff, {}) : _jsx(HiEye, {}) })] }));
|
|
26
|
+
});
|
|
27
|
+
PasswordField.displayName = 'PasswordField';
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"PasswordResetInner.d.ts","sourceRoot":"","sources":["../../src/elements/PasswordResetInner.tsx"],"names":[],"mappings":"AAaA,MAAM,CAAC,OAAO,UAAU,kBAAkB,CACxC,EAAE,IAAI,EAAE,QAAgB,EAAE,EAC1B;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,QAAQ,CAAC,EAAE,OAAO,CAAA;CAAE,2CAiGrC"}
|
|
@@ -3,14 +3,12 @@ import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
|
3
3
|
import { useState } from "react";
|
|
4
4
|
import { getPasswordError } from "@stackframe/stack-shared/dist/helpers/password";
|
|
5
5
|
import { useStackApp } from "..";
|
|
6
|
-
import { PasswordField } from "./
|
|
7
|
-
import { FormWarningText } from "./
|
|
8
|
-
import RedirectMessageCard from "./
|
|
9
|
-
import MessageCard from "./
|
|
10
|
-
import CardFrame from "./
|
|
11
|
-
import CardHeader from "./
|
|
12
|
-
import { Button, Label, Text } from "@stackframe/stack-ui";
|
|
13
|
-
import { runAsynchronously } from "@stackframe/stack-shared/dist/utils/promises";
|
|
6
|
+
import { PasswordField } from "./PasswordField";
|
|
7
|
+
import { FormWarningText } from "./FormWarning";
|
|
8
|
+
import RedirectMessageCard from "./RedirectMessageCard";
|
|
9
|
+
import MessageCard from "./MessageCard";
|
|
10
|
+
import CardFrame from "./CardFrame";
|
|
11
|
+
import CardHeader from "./CardHeader";
|
|
14
12
|
export default function PasswordResetInner({ code, fullPage = false }) {
|
|
15
13
|
const [password, setPassword] = useState('');
|
|
16
14
|
const [passwordError, setPasswordError] = useState('');
|
|
@@ -49,15 +47,15 @@ export default function PasswordResetInner({ code, fullPage = false }) {
|
|
|
49
47
|
return _jsx(RedirectMessageCard, { type: 'passwordReset', fullPage: fullPage });
|
|
50
48
|
}
|
|
51
49
|
if (resetError) {
|
|
52
|
-
return (_jsx(MessageCard, { title: "Failed to reset password", fullPage: fullPage, children: _jsx(
|
|
50
|
+
return (_jsx(MessageCard, { title: "Failed to reset password", fullPage: fullPage, children: _jsx("p", { children: "Failed to reset password. Please request a new password reset link" }) }));
|
|
53
51
|
}
|
|
54
|
-
return (_jsxs(CardFrame, { fullPage: fullPage, children: [_jsx(CardHeader, { title: "Reset Your Password" }), _jsxs("div", {
|
|
55
|
-
|
|
56
|
-
|
|
57
|
-
|
|
58
|
-
|
|
59
|
-
|
|
60
|
-
|
|
61
|
-
|
|
62
|
-
|
|
52
|
+
return (_jsxs(CardFrame, { fullPage: fullPage, children: [_jsx(CardHeader, { title: "Reset Your Password" }), _jsxs("div", { className: "wl_flex wl_flex-col wl_space-y-2 wl_items-stretch", children: [_jsxs("div", { className: "wl_form-control", children: [_jsx("label", { className: "wl_label", htmlFor: "password", children: "New Password" }), _jsx(PasswordField, { id: "password", name: "password", value: password, onChange: (e) => {
|
|
53
|
+
setPassword(e.target.value);
|
|
54
|
+
setPasswordError('');
|
|
55
|
+
setPasswordRepeatError('');
|
|
56
|
+
} }), _jsx(FormWarningText, { text: passwordError })] }), _jsxs("div", { className: "wl_form-control", children: [_jsx("label", { className: "wl_label", htmlFor: "repeat-password", children: "Repeat New Password" }), _jsx(PasswordField, { id: "repeat-password", name: "repeat-password", value: passwordRepeat, onChange: (e) => {
|
|
57
|
+
setPasswordRepeat(e.target.value);
|
|
58
|
+
setPasswordError('');
|
|
59
|
+
setPasswordRepeatError('');
|
|
60
|
+
} }), _jsx(FormWarningText, { text: passwordRepeatError })] }), _jsx("div", { className: "wl_flex wl_flex-col wl_items-stretch", children: _jsx("button", { className: "wl_btn wl_btn-primary wl_mt-6", onClick: () => void onSubmit(), children: "Reset Password" }) })] })] }));
|
|
63
61
|
}
|
|
@@ -2,4 +2,4 @@ export default function RedirectMessageCard({ type, fullPage, }: {
|
|
|
2
2
|
type: 'signedIn' | 'signedOut' | 'emailSent' | 'passwordReset' | 'emailVerified';
|
|
3
3
|
fullPage?: boolean;
|
|
4
4
|
}): import("react/jsx-runtime").JSX.Element;
|
|
5
|
-
//# sourceMappingURL=
|
|
5
|
+
//# sourceMappingURL=RedirectMessageCard.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"RedirectMessageCard.d.ts","sourceRoot":"","sources":["../../src/elements/RedirectMessageCard.tsx"],"names":[],"mappings":"AAOA,MAAM,CAAC,OAAO,UAAU,mBAAmB,CAAC,EAC1C,IAAI,EACJ,QAAc,GACf,EAAE;IACD,IAAI,EAAE,UAAU,GAAG,WAAW,GAAG,WAAW,GAAG,eAAe,GAAG,eAAe,CAAC;IACjF,QAAQ,CAAC,EAAE,OAAO,CAAC;CACpB,2CAwEA"}
|
|
@@ -2,8 +2,8 @@
|
|
|
2
2
|
import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
|
|
3
3
|
import { useRouter } from "next/navigation";
|
|
4
4
|
import { useStackApp } from "..";
|
|
5
|
-
import MessageCard from "./
|
|
6
|
-
import
|
|
5
|
+
import MessageCard from "./MessageCard";
|
|
6
|
+
import Button from "./Button";
|
|
7
7
|
export default function RedirectMessageCard({ type, fullPage = false, }) {
|
|
8
8
|
const stackApp = useStackApp();
|
|
9
9
|
const router = useRouter();
|
|
@@ -16,7 +16,8 @@ export default function RedirectMessageCard({ type, fullPage = false, }) {
|
|
|
16
16
|
switch (type) {
|
|
17
17
|
case 'signedIn': {
|
|
18
18
|
title = "You are already signed in";
|
|
19
|
-
|
|
19
|
+
message = 'You are already signed in.';
|
|
20
|
+
primaryUrl = stackApp.urls.userHome;
|
|
20
21
|
secondaryUrl = stackApp.urls.signOut;
|
|
21
22
|
primaryButton = "Go to Home";
|
|
22
23
|
secondaryButton = "Sign Out";
|
|
@@ -50,5 +51,5 @@ export default function RedirectMessageCard({ type, fullPage = false, }) {
|
|
|
50
51
|
break;
|
|
51
52
|
}
|
|
52
53
|
}
|
|
53
|
-
return (_jsxs(MessageCard, { title: title, fullPage: fullPage, children: [message && _jsx(
|
|
54
|
+
return (_jsxs(MessageCard, { title: title, fullPage: fullPage, children: [message && _jsx("p", { className: 'wl_mb-8', children: message }), _jsxs("div", { className: 'wl_flex wl_flex-row wl_align-center wl_justify-center wl_gap-4', children: [secondaryButton && (_jsx(Button, { className: 'wl_btn_ghost', onClick: () => router.push(stackApp.urls.signOut.toString()), children: secondaryButton })), _jsx(Button, { className: 'wl_btn wl_btn-primary', onClick: () => router.push(primaryUrl.toString()), children: primaryButton })] })] }));
|
|
54
55
|
}
|
package/dist/index.d.ts
CHANGED
|
@@ -18,5 +18,6 @@ export { default as AccountSettings } from "./components-page/account-settings";
|
|
|
18
18
|
export { useDesign } from './providers/design-provider';
|
|
19
19
|
export { useComponents } from './providers/component-provider';
|
|
20
20
|
export { StackTheme, ThemeConfig } from './providers/theme-provider';
|
|
21
|
+
export { CurrentUser, Project, ServerUser, ApiKeySetFirstView, ApiKeySet } from './lib/stack-app';
|
|
21
22
|
export * from './components-core';
|
|
22
23
|
//# sourceMappingURL=index.d.ts.map
|
package/dist/index.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,IAAI,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAEtE,OAAO,EAAE,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AACnD,OAAO,EAAE,cAAc,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAEhF,OAAO,EAAE,OAAO,IAAI,YAAY,EAAE,MAAM,iCAAiC,CAAC;AAC1E,OAAO,EAAE,OAAO,IAAI,MAAM,EAAE,MAAM,2BAA2B,CAAC;AAC9D,OAAO,EAAE,OAAO,IAAI,MAAM,EAAE,MAAM,2BAA2B,CAAC;AAC9D,OAAO,EAAE,OAAO,IAAI,iBAAiB,EAAE,MAAM,sCAAsC,CAAC;AACpF,OAAO,EAAE,OAAO,IAAI,aAAa,EAAE,MAAM,kCAAkC,CAAC;AAC5E,OAAO,EAAE,OAAO,IAAI,cAAc,EAAE,MAAM,mCAAmC,CAAC;AAC9E,OAAO,EAAE,OAAO,IAAI,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAEnE,OAAO,EAAE,OAAO,IAAI,gBAAgB,EAAE,MAAM,iCAAiC,CAAC;AAC9E,OAAO,EAAE,OAAO,IAAI,gBAAgB,EAAE,MAAM,iCAAiC,CAAC;AAC9E,OAAO,EAAE,OAAO,IAAI,WAAW,EAAE,MAAM,2BAA2B,CAAC;AACnE,OAAO,EAAE,OAAO,IAAI,UAAU,EAAE,MAAM,0BAA0B,CAAC;AACjE,OAAO,EAAE,OAAO,IAAI,aAAa,EAAE,MAAM,6BAA6B,CAAC;AACvE,OAAO,EAAE,OAAO,IAAI,UAAU,EAAE,MAAM,0BAA0B,CAAC;AACjE,OAAO,EAAE,OAAO,IAAI,eAAe,EAAE,MAAM,oCAAoC,CAAC;AAEhF,OAAO,EAAE,SAAS,EAAE,MAAM,6BAA6B,CAAC;AACxD,OAAO,EAAE,aAAa,EAAE,MAAM,gCAAgC,CAAC;AAC/D,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAC;
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.tsx"],"names":[],"mappings":"AAAA,OAAO,EAAE,OAAO,IAAI,aAAa,EAAE,MAAM,4BAA4B,CAAC;AAEtE,OAAO,EAAE,OAAO,EAAE,WAAW,EAAE,MAAM,aAAa,CAAC;AACnD,OAAO,EAAE,cAAc,EAAE,cAAc,EAAE,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAEhF,OAAO,EAAE,OAAO,IAAI,YAAY,EAAE,MAAM,iCAAiC,CAAC;AAC1E,OAAO,EAAE,OAAO,IAAI,MAAM,EAAE,MAAM,2BAA2B,CAAC;AAC9D,OAAO,EAAE,OAAO,IAAI,MAAM,EAAE,MAAM,2BAA2B,CAAC;AAC9D,OAAO,EAAE,OAAO,IAAI,iBAAiB,EAAE,MAAM,sCAAsC,CAAC;AACpF,OAAO,EAAE,OAAO,IAAI,aAAa,EAAE,MAAM,kCAAkC,CAAC;AAC5E,OAAO,EAAE,OAAO,IAAI,cAAc,EAAE,MAAM,mCAAmC,CAAC;AAC9E,OAAO,EAAE,OAAO,IAAI,WAAW,EAAE,MAAM,2BAA2B,CAAC;AAEnE,OAAO,EAAE,OAAO,IAAI,gBAAgB,EAAE,MAAM,iCAAiC,CAAC;AAC9E,OAAO,EAAE,OAAO,IAAI,gBAAgB,EAAE,MAAM,iCAAiC,CAAC;AAC9E,OAAO,EAAE,OAAO,IAAI,WAAW,EAAE,MAAM,2BAA2B,CAAC;AACnE,OAAO,EAAE,OAAO,IAAI,UAAU,EAAE,MAAM,0BAA0B,CAAC;AACjE,OAAO,EAAE,OAAO,IAAI,aAAa,EAAE,MAAM,6BAA6B,CAAC;AACvE,OAAO,EAAE,OAAO,IAAI,UAAU,EAAE,MAAM,0BAA0B,CAAC;AACjE,OAAO,EAAE,OAAO,IAAI,eAAe,EAAE,MAAM,oCAAoC,CAAC;AAEhF,OAAO,EAAE,SAAS,EAAE,MAAM,6BAA6B,CAAC;AACxD,OAAO,EAAE,aAAa,EAAE,MAAM,gCAAgC,CAAC;AAC/D,OAAO,EAAE,UAAU,EAAE,WAAW,EAAE,MAAM,4BAA4B,CAAC;AAErE,OAAO,EAAE,WAAW,EAAE,OAAO,EAAE,UAAU,EAAE,kBAAkB,EAAE,SAAS,EAAE,MAAM,iBAAiB,CAAC;AAElG,cAAc,mBAAmB,CAAC"}
|
package/dist/lib/hooks.d.ts
CHANGED
|
@@ -1,16 +1,23 @@
|
|
|
1
|
-
import { CurrentUser, GetUserOptions, StackClientApp } from "./stack-app";
|
|
1
|
+
import { CurrentUser, GetUserOptions as AppGetUserOptions, StackClientApp, CurrentInternalUser } from "./stack-app";
|
|
2
2
|
/**
|
|
3
3
|
* Returns the current user object. Equivalent to `useStackApp().useUser()`.
|
|
4
4
|
*
|
|
5
5
|
* @returns the current user
|
|
6
6
|
*/
|
|
7
|
+
type GetUserOptions = AppGetUserOptions & {
|
|
8
|
+
projectIdMustMatch?: string;
|
|
9
|
+
};
|
|
7
10
|
export declare function useUser(options: GetUserOptions & {
|
|
8
|
-
or: 'redirect';
|
|
9
|
-
|
|
11
|
+
or: 'redirect' | 'throw';
|
|
12
|
+
projectIdMustMatch: "internal";
|
|
13
|
+
}): CurrentInternalUser;
|
|
10
14
|
export declare function useUser(options: GetUserOptions & {
|
|
11
|
-
or: 'throw';
|
|
15
|
+
or: 'redirect' | 'throw';
|
|
12
16
|
}): CurrentUser;
|
|
13
|
-
export declare function useUser(options
|
|
17
|
+
export declare function useUser(options: GetUserOptions & {
|
|
18
|
+
projectIdMustMatch: "internal";
|
|
19
|
+
}): CurrentInternalUser | null;
|
|
20
|
+
export declare function useUser(options?: GetUserOptions): CurrentUser | CurrentInternalUser | null;
|
|
14
21
|
/**
|
|
15
22
|
* Returns the current Stack app associated with the StackProvider.
|
|
16
23
|
*
|
|
@@ -19,4 +26,5 @@ export declare function useUser(options?: GetUserOptions): CurrentUser | null;
|
|
|
19
26
|
export declare function useStackApp<ProjectId extends string>(options?: {
|
|
20
27
|
projectIdMustMatch?: ProjectId;
|
|
21
28
|
}): StackClientApp<true, ProjectId>;
|
|
29
|
+
export {};
|
|
22
30
|
//# sourceMappingURL=hooks.d.ts.map
|
package/dist/lib/hooks.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"hooks.d.ts","sourceRoot":"","sources":["../../src/lib/hooks.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,aAAa,CAAC;
|
|
1
|
+
{"version":3,"file":"hooks.d.ts","sourceRoot":"","sources":["../../src/lib/hooks.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,cAAc,IAAI,iBAAiB,EAAE,cAAc,EAAE,mBAAmB,EAAE,MAAM,aAAa,CAAC;AAIpH;;;;GAIG;AAEH,KAAK,cAAc,GAAG,iBAAiB,GAAG;IACxC,kBAAkB,CAAC,EAAE,MAAM,CAAC;CAC7B,CAAA;AAED,wBAAgB,OAAO,CAAC,OAAO,EAAE,cAAc,GAAG;IAAE,EAAE,EAAE,UAAU,GAAG,OAAO,CAAC;IAAC,kBAAkB,EAAE,UAAU,CAAA;CAAE,GAAG,mBAAmB,CAAC;AACrI,wBAAgB,OAAO,CAAC,OAAO,EAAE,cAAc,GAAG;IAAE,EAAE,EAAE,UAAU,GAAG,OAAO,CAAA;CAAE,GAAG,WAAW,CAAC;AAC7F,wBAAgB,OAAO,CAAC,OAAO,EAAE,cAAc,GAAG;IAAE,kBAAkB,EAAE,UAAU,CAAA;CAAE,GAAG,mBAAmB,GAAG,IAAI,CAAC;AAClH,wBAAgB,OAAO,CAAC,OAAO,CAAC,EAAE,cAAc,GAAG,WAAW,GAAG,mBAAmB,GAAG,IAAI,CAAC;AAa5F;;;;GAIG;AACH,wBAAgB,WAAW,CAAC,SAAS,SAAS,MAAM,EAAE,OAAO,GAAE;IAAE,kBAAkB,CAAC,EAAE,SAAS,CAAA;CAAO,GAAG,cAAc,CAAC,IAAI,EAAE,SAAS,CAAC,CAUvI"}
|
package/dist/lib/hooks.js
CHANGED
|
@@ -1,7 +1,16 @@
|
|
|
1
1
|
import { StackContext } from "../providers/stack-provider-client";
|
|
2
2
|
import { useContext } from "react";
|
|
3
|
-
export function useUser(options) {
|
|
4
|
-
|
|
3
|
+
export function useUser(options = {}) {
|
|
4
|
+
const stackApp = useStackApp(options);
|
|
5
|
+
if (options.projectIdMustMatch && stackApp.projectId !== options.projectIdMustMatch) {
|
|
6
|
+
throw new Error("Unexpected project ID in useStackApp: " + stackApp.projectId);
|
|
7
|
+
}
|
|
8
|
+
if (options.projectIdMustMatch === "internal") {
|
|
9
|
+
return stackApp.useUser(options);
|
|
10
|
+
}
|
|
11
|
+
else {
|
|
12
|
+
return stackApp.useUser(options);
|
|
13
|
+
}
|
|
5
14
|
}
|
|
6
15
|
/**
|
|
7
16
|
* Returns the current Stack app associated with the StackProvider.
|
package/dist/lib/stack-app.d.ts
CHANGED
|
@@ -18,6 +18,7 @@ export type HandlerUrls = {
|
|
|
18
18
|
oauthCallback: string;
|
|
19
19
|
accountSettings: string;
|
|
20
20
|
};
|
|
21
|
+
type ProjectCurrentUser<ProjectId> = ProjectId extends "internal" ? CurrentInternalUser : CurrentUser;
|
|
21
22
|
export type StackClientAppConstructorOptions<HasTokenStore extends boolean, ProjectId extends string> = {
|
|
22
23
|
baseUrl?: string;
|
|
23
24
|
projectId?: ProjectId;
|
|
@@ -49,6 +50,12 @@ type Auth<T, C> = {
|
|
|
49
50
|
newPassword: string;
|
|
50
51
|
}): Promise<KnownErrors["PasswordMismatch"] | KnownErrors["PasswordRequirementsNotMet"] | undefined>;
|
|
51
52
|
};
|
|
53
|
+
type InternalAuth<T> = {
|
|
54
|
+
createProject(this: T, newProject: Pick<Project, "displayName" | "description">): Promise<Project>;
|
|
55
|
+
listOwnedProjects(this: T): Promise<Project[]>;
|
|
56
|
+
useOwnedProjects(this: T): Project[];
|
|
57
|
+
onOwnedProjectsChange(this: T, callback: (projects: Project[]) => void): void;
|
|
58
|
+
};
|
|
52
59
|
export type User = {
|
|
53
60
|
readonly projectId: string;
|
|
54
61
|
readonly id: string;
|
|
@@ -67,6 +74,7 @@ export type User = {
|
|
|
67
74
|
toJson(this: CurrentUser): UserJson;
|
|
68
75
|
};
|
|
69
76
|
export type CurrentUser = Auth<User, UserCustomizableJson> & User;
|
|
77
|
+
export type CurrentInternalUser = CurrentUser & InternalAuth<CurrentUser>;
|
|
70
78
|
/**
|
|
71
79
|
* A user including sensitive fields that should only be used on the server, never sent to the client
|
|
72
80
|
* (such as sensitive information and serverMetadata).
|
|
@@ -84,6 +92,7 @@ export type ServerUser = Omit<User, "toJson"> & {
|
|
|
84
92
|
export type CurrentServerUser = Auth<ServerUser, ServerUserCustomizableJson> & Omit<ServerUser, "getClientUser"> & {
|
|
85
93
|
getClientUser(this: CurrentServerUser): CurrentUser;
|
|
86
94
|
};
|
|
95
|
+
export type CurrentInternalServerUser = CurrentServerUser & InternalAuth<CurrentServerUser>;
|
|
87
96
|
export type Project = {
|
|
88
97
|
readonly id: string;
|
|
89
98
|
readonly displayName: string;
|
|
@@ -171,22 +180,20 @@ export type StackClientApp<HasTokenStore extends boolean = boolean, ProjectId ex
|
|
|
171
180
|
redirectToOAuthCallback(): Promise<never>;
|
|
172
181
|
useUser(options: GetUserOptions & {
|
|
173
182
|
or: 'redirect';
|
|
174
|
-
}):
|
|
183
|
+
}): ProjectCurrentUser<ProjectId>;
|
|
175
184
|
useUser(options: GetUserOptions & {
|
|
176
185
|
or: 'throw';
|
|
177
|
-
}):
|
|
178
|
-
useUser(options?: GetUserOptions):
|
|
186
|
+
}): ProjectCurrentUser<ProjectId>;
|
|
187
|
+
useUser(options?: GetUserOptions): ProjectCurrentUser<ProjectId> | null;
|
|
179
188
|
getUser(options: GetUserOptions & {
|
|
180
189
|
or: 'redirect';
|
|
181
|
-
}): Promise<
|
|
190
|
+
}): Promise<ProjectCurrentUser<ProjectId>>;
|
|
182
191
|
getUser(options: GetUserOptions & {
|
|
183
192
|
or: 'throw';
|
|
184
|
-
}): Promise<
|
|
185
|
-
getUser(options?: GetUserOptions): Promise<
|
|
193
|
+
}): Promise<ProjectCurrentUser<ProjectId>>;
|
|
194
|
+
getUser(options?: GetUserOptions): Promise<ProjectCurrentUser<ProjectId> | null>;
|
|
186
195
|
onUserChange: AsyncStoreProperty<"user", CurrentUser | null, false>["onUserChange"];
|
|
187
|
-
})
|
|
188
|
-
createProject(project: Pick<Project, "displayName" | "description">): Promise<Project>;
|
|
189
|
-
}) : {}));
|
|
196
|
+
}));
|
|
190
197
|
type StackClientAppConstructor = {
|
|
191
198
|
new <TokenStoreType extends string, HasTokenStore extends (TokenStoreType extends {} ? true : boolean), ProjectId extends string>(options: StackClientAppConstructorOptions<HasTokenStore, ProjectId>): StackClientApp<HasTokenStore, ProjectId>;
|
|
192
199
|
new (options: StackClientAppConstructorOptions<boolean, string>): StackClientApp<boolean, string>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"stack-app.d.ts","sourceRoot":"","sources":["../../src/lib/stack-app.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,WAAW,EAAE,uBAAuB,EAAE,0BAA0B,EAAE,cAAc,EAAmE,MAAM,0BAA0B,CAAC;AAO7L,OAAO,EAAE,iBAAiB,EAAE,oBAAoB,EAAE,QAAQ,EAA2B,WAAW,EAAE,eAAe,EAAE,gBAAgB,EAAE,kBAAkB,EAA2B,mBAAmB,EAAE,MAAM,yDAAyD,CAAC;AAIvQ,OAAO,EAAE,YAAY,EAAE,MAAM,0CAA0C,CAAC;AAKxE,OAAO,EAAqB,sBAAsB,EAAyC,oBAAoB,EAAE,MAAM,wDAAwD,CAAC;AAIhL,MAAM,MAAM,iBAAiB,CAAC,aAAa,SAAS,OAAO,GAAG,OAAO,IACnE,aAAa,SAAS,IAAI,GAAG,QAAQ,GAAG,eAAe,GAAG,QAAQ,GAClE,aAAa,SAAS,KAAK,GAAG,IAAI,GAClC,iBAAiB,CAAC,IAAI,CAAC,GAAG,iBAAiB,CAAC,KAAK,CAAC,CAAC;AAErD,MAAM,MAAM,WAAW,GAAG;IACxB,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;IACf,WAAW,EAAE,MAAM,CAAC;IACpB,MAAM,EAAE,MAAM,CAAC;IACf,WAAW,EAAE,MAAM,CAAC;IACpB,OAAO,EAAE,MAAM,CAAC;IAChB,YAAY,EAAE,MAAM,CAAC;IACrB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,aAAa,EAAE,MAAM,CAAC;IACtB,cAAc,EAAE,MAAM,CAAC;IACvB,IAAI,EAAE,MAAM,CAAC;IACb,aAAa,EAAE,MAAM,CAAC;IACtB,eAAe,EAAE,MAAM,CAAC;CACzB,CAAA;
|
|
1
|
+
{"version":3,"file":"stack-app.d.ts","sourceRoot":"","sources":["../../src/lib/stack-app.ts"],"names":[],"mappings":"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"}
|