@atlasauth/react 0.13.0 → 0.15.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +28 -0
- package/dist/AtlasProvider.d.ts +8 -1
- package/dist/AtlasProvider.js +54 -4
- package/dist/AtlasProvider.js.map +1 -1
- package/dist/account.d.ts +19 -1
- package/dist/account.js +121 -16
- package/dist/account.js.map +1 -1
- package/dist/active-atlas.d.ts +29 -0
- package/dist/active-atlas.js +40 -0
- package/dist/active-atlas.js.map +1 -0
- package/dist/billing.d.ts +55 -1
- package/dist/billing.js +115 -8
- package/dist/billing.js.map +1 -1
- package/dist/captcha.js +1 -1
- package/dist/captcha.js.map +1 -1
- package/dist/compat.d.ts +307 -0
- package/dist/compat.js +387 -0
- package/dist/compat.js.map +1 -0
- package/dist/components.d.ts +10 -4
- package/dist/components.js +15 -1
- package/dist/components.js.map +1 -1
- package/dist/device-authorization.d.ts +42 -0
- package/dist/device-authorization.js +137 -0
- package/dist/device-authorization.js.map +1 -0
- package/dist/flow.d.ts +33 -9
- package/dist/flow.js +130 -11
- package/dist/flow.js.map +1 -1
- package/dist/i18n.js +68 -0
- package/dist/i18n.js.map +1 -1
- package/dist/impersonation.d.ts +25 -0
- package/dist/impersonation.js +52 -0
- package/dist/impersonation.js.map +1 -0
- package/dist/index.js +3 -0
- package/dist/index.js.map +1 -1
- package/dist/mfa-steps.d.ts +53 -0
- package/dist/mfa-steps.js +148 -0
- package/dist/mfa-steps.js.map +1 -0
- package/dist/organization.d.ts +82 -1
- package/dist/organization.js +222 -4
- package/dist/organization.js.map +1 -1
- package/dist/reverification.d.ts +19 -0
- package/dist/reverification.js +49 -1
- package/dist/reverification.js.map +1 -1
- package/dist/sign-in.js +2 -2
- package/dist/sign-in.js.map +1 -1
- package/dist/sign-up.d.ts +6 -0
- package/dist/sign-up.js +69 -13
- package/dist/sign-up.js.map +1 -1
- package/dist/styles.js +8 -0
- package/dist/styles.js.map +1 -1
- package/dist/types.d.ts +52 -0
- package/dist/version.d.ts +1 -1
- package/dist/version.js +1 -1
- package/package.json +15 -4
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"compat.js","sourceRoot":"","sources":["../src/compat.ts"],"names":[],"mappings":"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"}
|
package/dist/components.d.ts
CHANGED
|
@@ -23,12 +23,18 @@ export type { MenuActionProps, MenuLinkProps } from './user-button';
|
|
|
23
23
|
export { UserButton, UserAvatar } from './user-button';
|
|
24
24
|
export type { AuthButtonProps } from './auth-buttons';
|
|
25
25
|
export { SignInButton, SignUpButton, SignOutButton, RedirectToSignIn, RedirectToSignUp, } from './auth-buttons';
|
|
26
|
-
export { OrganizationSwitcher, useOrganizationList, CreateOrganization, OrganizationList, OrganizationProfile, } from './organization';
|
|
27
|
-
export type {
|
|
28
|
-
export {
|
|
26
|
+
export { OrganizationSwitcher, useOrganizationList, CreateOrganization, OrganizationList, OrganizationProfile, OrganizationAuditLog, useOrganizationAuditLog, useOrganizationProfile, } from './organization';
|
|
27
|
+
export type { OrganizationAuditLogEntry } from './organization';
|
|
28
|
+
export type { OrganizationProfileProps } from './organization';
|
|
29
|
+
export type { ProfilePageProps, ProfileLinkProps, ManagePasskeysProps } from './account';
|
|
30
|
+
export { ActiveSessions, ProfileCard, ManageMfa, ManagePasskeys, ManagePhoneNumbers, UserProfile, } from './account';
|
|
29
31
|
export { useWaitlist, Waitlist } from './waitlist';
|
|
30
|
-
export {
|
|
32
|
+
export { ImpersonationBanner, useImpersonation } from './impersonation';
|
|
33
|
+
export type { ImpersonationBannerProps, UseImpersonationReturn } from './impersonation';
|
|
34
|
+
export { useReverification, ReverificationPrompt, isReverificationCancelled, type Reverification } from './reverification';
|
|
31
35
|
export type { ApiKeysProps, ApiKeysStatus, ApiKeyClaimsFieldsContext, UseApiKeysResult, CreateUserApiKeyInput, CreatedUserApiKey, UserApiKey, } from './api-keys';
|
|
32
36
|
export { ApiKeys, useApiKeys } from './api-keys';
|
|
37
|
+
export type { DeviceAuthorizationProps, DeviceAuthorizationStatus, UseDeviceAuthorizationResult, } from './device-authorization';
|
|
38
|
+
export { DeviceAuthorization, useDeviceAuthorization } from './device-authorization';
|
|
33
39
|
export type { CheckoutParams } from './billing';
|
|
34
40
|
export { useBilling, useCheckout, useSubscription, useInvoices, usePaymentMethods, PricingTable, Invoices, EmbeddedCheckout, } from './billing';
|
package/dist/components.js
CHANGED
|
@@ -17,7 +17,8 @@
|
|
|
17
17
|
* @atlasauth/js. See `flow.tsx` for that shell.
|
|
18
18
|
*/
|
|
19
19
|
Object.defineProperty(exports, "__esModule", { value: true });
|
|
20
|
-
exports.
|
|
20
|
+
exports.Invoices = exports.PricingTable = exports.usePaymentMethods = exports.useInvoices = exports.useSubscription = exports.useCheckout = exports.useBilling = exports.useDeviceAuthorization = exports.DeviceAuthorization = exports.useApiKeys = exports.ApiKeys = exports.isReverificationCancelled = exports.ReverificationPrompt = exports.useReverification = exports.useImpersonation = exports.ImpersonationBanner = exports.Waitlist = exports.useWaitlist = exports.UserProfile = exports.ManagePhoneNumbers = exports.ManagePasskeys = exports.ManageMfa = exports.ProfileCard = exports.ActiveSessions = exports.useOrganizationProfile = exports.useOrganizationAuditLog = exports.OrganizationAuditLog = exports.OrganizationProfile = exports.OrganizationList = exports.CreateOrganization = exports.useOrganizationList = exports.OrganizationSwitcher = exports.RedirectToSignUp = exports.RedirectToSignIn = exports.SignOutButton = exports.SignUpButton = exports.SignInButton = exports.UserAvatar = exports.UserButton = exports.useSignUp = exports.SignUp = exports.useSignIn = exports.SocialSignInButton = exports.SignIn = exports.MultisessionAppSupport = exports.Protect = exports.AtlasLoaded = exports.AtlasLoading = exports.SignedOut = exports.SignedIn = void 0;
|
|
21
|
+
exports.EmbeddedCheckout = void 0;
|
|
21
22
|
// Control / conditional-rendering components.
|
|
22
23
|
var control_components_1 = require("./control-components");
|
|
23
24
|
Object.defineProperty(exports, "SignedIn", { enumerable: true, get: function () { return control_components_1.SignedIn; } });
|
|
@@ -49,22 +50,35 @@ Object.defineProperty(exports, "useOrganizationList", { enumerable: true, get: f
|
|
|
49
50
|
Object.defineProperty(exports, "CreateOrganization", { enumerable: true, get: function () { return organization_1.CreateOrganization; } });
|
|
50
51
|
Object.defineProperty(exports, "OrganizationList", { enumerable: true, get: function () { return organization_1.OrganizationList; } });
|
|
51
52
|
Object.defineProperty(exports, "OrganizationProfile", { enumerable: true, get: function () { return organization_1.OrganizationProfile; } });
|
|
53
|
+
Object.defineProperty(exports, "OrganizationAuditLog", { enumerable: true, get: function () { return organization_1.OrganizationAuditLog; } });
|
|
54
|
+
Object.defineProperty(exports, "useOrganizationAuditLog", { enumerable: true, get: function () { return organization_1.useOrganizationAuditLog; } });
|
|
55
|
+
Object.defineProperty(exports, "useOrganizationProfile", { enumerable: true, get: function () { return organization_1.useOrganizationProfile; } });
|
|
52
56
|
var account_1 = require("./account");
|
|
53
57
|
Object.defineProperty(exports, "ActiveSessions", { enumerable: true, get: function () { return account_1.ActiveSessions; } });
|
|
54
58
|
Object.defineProperty(exports, "ProfileCard", { enumerable: true, get: function () { return account_1.ProfileCard; } });
|
|
55
59
|
Object.defineProperty(exports, "ManageMfa", { enumerable: true, get: function () { return account_1.ManageMfa; } });
|
|
56
60
|
Object.defineProperty(exports, "ManagePasskeys", { enumerable: true, get: function () { return account_1.ManagePasskeys; } });
|
|
61
|
+
Object.defineProperty(exports, "ManagePhoneNumbers", { enumerable: true, get: function () { return account_1.ManagePhoneNumbers; } });
|
|
57
62
|
Object.defineProperty(exports, "UserProfile", { enumerable: true, get: function () { return account_1.UserProfile; } });
|
|
58
63
|
// Waitlist.
|
|
59
64
|
var waitlist_1 = require("./waitlist");
|
|
60
65
|
Object.defineProperty(exports, "useWaitlist", { enumerable: true, get: function () { return waitlist_1.useWaitlist; } });
|
|
61
66
|
Object.defineProperty(exports, "Waitlist", { enumerable: true, get: function () { return waitlist_1.Waitlist; } });
|
|
67
|
+
// Impersonation: the banner with "Return to admin", and its hook.
|
|
68
|
+
var impersonation_1 = require("./impersonation");
|
|
69
|
+
Object.defineProperty(exports, "ImpersonationBanner", { enumerable: true, get: function () { return impersonation_1.ImpersonationBanner; } });
|
|
70
|
+
Object.defineProperty(exports, "useImpersonation", { enumerable: true, get: function () { return impersonation_1.useImpersonation; } });
|
|
62
71
|
// Step-up reverification.
|
|
63
72
|
var reverification_1 = require("./reverification");
|
|
64
73
|
Object.defineProperty(exports, "useReverification", { enumerable: true, get: function () { return reverification_1.useReverification; } });
|
|
74
|
+
Object.defineProperty(exports, "ReverificationPrompt", { enumerable: true, get: function () { return reverification_1.ReverificationPrompt; } });
|
|
75
|
+
Object.defineProperty(exports, "isReverificationCancelled", { enumerable: true, get: function () { return reverification_1.isReverificationCancelled; } });
|
|
65
76
|
var api_keys_1 = require("./api-keys");
|
|
66
77
|
Object.defineProperty(exports, "ApiKeys", { enumerable: true, get: function () { return api_keys_1.ApiKeys; } });
|
|
67
78
|
Object.defineProperty(exports, "useApiKeys", { enumerable: true, get: function () { return api_keys_1.useApiKeys; } });
|
|
79
|
+
var device_authorization_1 = require("./device-authorization");
|
|
80
|
+
Object.defineProperty(exports, "DeviceAuthorization", { enumerable: true, get: function () { return device_authorization_1.DeviceAuthorization; } });
|
|
81
|
+
Object.defineProperty(exports, "useDeviceAuthorization", { enumerable: true, get: function () { return device_authorization_1.useDeviceAuthorization; } });
|
|
68
82
|
var billing_1 = require("./billing");
|
|
69
83
|
Object.defineProperty(exports, "useBilling", { enumerable: true, get: function () { return billing_1.useBilling; } });
|
|
70
84
|
Object.defineProperty(exports, "useCheckout", { enumerable: true, get: function () { return billing_1.useCheckout; } });
|
package/dist/components.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"components.js","sourceRoot":"","sources":["../src/components.tsx"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;GAgBG
|
|
1
|
+
{"version":3,"file":"components.js","sourceRoot":"","sources":["../src/components.tsx"],"names":[],"mappings":";AAAA;;;;;;;;;;;;;;;;GAgBG;;;;AAEH,8CAA8C;AAC9C,2DAO8B;AAN5B,8GAAA,QAAQ,OAAA;AACR,+GAAA,SAAS,OAAA;AACT,kHAAA,YAAY,OAAA;AACZ,iHAAA,WAAW,OAAA;AACX,6GAAA,OAAO,OAAA;AACP,4HAAA,sBAAsB,OAAA;AAKxB,qCAAkE;AAAzD,iGAAA,MAAM,OAAA;AAAE,6GAAA,kBAAkB,OAAA;AAAE,oGAAA,SAAS,OAAA;AAC9C,qCAA8C;AAArC,iGAAA,MAAM,OAAA;AAAE,oGAAA,SAAS,OAAA;AAI1B,6CAAuD;AAA9C,yGAAA,UAAU,OAAA;AAAE,yGAAA,UAAU,OAAA;AAI/B,+CAMwB;AALtB,4GAAA,YAAY,OAAA;AACZ,4GAAA,YAAY,OAAA;AACZ,6GAAA,aAAa,OAAA;AACb,gHAAA,gBAAgB,OAAA;AAChB,gHAAA,gBAAgB,OAAA;AAGlB,iBAAiB;AACjB,+CASwB;AARtB,oHAAA,oBAAoB,OAAA;AACpB,mHAAA,mBAAmB,OAAA;AACnB,kHAAA,kBAAkB,OAAA;AAClB,gHAAA,gBAAgB,OAAA;AAChB,mHAAA,mBAAmB,OAAA;AACnB,oHAAA,oBAAoB,OAAA;AACpB,uHAAA,uBAAuB,OAAA;AACvB,sHAAA,sBAAsB,OAAA;AAOxB,qCAOmB;AANjB,yGAAA,cAAc,OAAA;AACd,sGAAA,WAAW,OAAA;AACX,oGAAA,SAAS,OAAA;AACT,yGAAA,cAAc,OAAA;AACd,6GAAA,kBAAkB,OAAA;AAClB,sGAAA,WAAW,OAAA;AAGb,YAAY;AACZ,uCAAmD;AAA1C,uGAAA,WAAW,OAAA;AAAE,oGAAA,QAAQ,OAAA;AAE9B,kEAAkE;AAClE,iDAAwE;AAA/D,oHAAA,mBAAmB,OAAA;AAAE,iHAAA,gBAAgB,OAAA;AAG9C,0BAA0B;AAC1B,mDAA2H;AAAlH,mHAAA,iBAAiB,OAAA;AAAE,sHAAA,oBAAoB,OAAA;AAAE,2HAAA,yBAAyB,OAAA;AAY3E,uCAAiD;AAAxC,mGAAA,OAAO,OAAA;AAAE,sGAAA,UAAU,OAAA;AAO5B,+DAAqF;AAA5E,2HAAA,mBAAmB,OAAA;AAAE,8HAAA,sBAAsB,OAAA;AAIpD,qCASmB;AARjB,qGAAA,UAAU,OAAA;AACV,sGAAA,WAAW,OAAA;AACX,0GAAA,eAAe,OAAA;AACf,sGAAA,WAAW,OAAA;AACX,4GAAA,iBAAiB,OAAA;AACjB,uGAAA,YAAY,OAAA;AACZ,mGAAA,QAAQ,OAAA;AACR,2GAAA,gBAAgB,OAAA"}
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
import { type DeviceAuthorization as DeviceAuthorizationRecord } from '@atlasauth/js';
|
|
2
|
+
import { useReverification } from './reverification';
|
|
3
|
+
/**
|
|
4
|
+
* Device sign-in (RFC 8628) on YOUR page: the signed-in user enters the code
|
|
5
|
+
* their TV / console / CLI shows, sees which app is asking for what, and allows
|
|
6
|
+
* or denies it — instead of being sent to the hosted `/oauth2/device` page.
|
|
7
|
+
*
|
|
8
|
+
* `useDeviceAuthorization()` is the headless half (look up, approve, deny), with
|
|
9
|
+
* the step-up wired in: when the application requires a recent re-authentication
|
|
10
|
+
* to approve a device, a stale session parks the approval and flips
|
|
11
|
+
* `reverification.needsReverification`; `completeReverification(...)` finishes it.
|
|
12
|
+
* `<DeviceAuthorization/>` is the drop-in UI built on it. It reads a
|
|
13
|
+
* `?user_code=` from the page URL, so it works as the verification URI too.
|
|
14
|
+
*/
|
|
15
|
+
export type DeviceAuthorizationStatus = 'idle' | 'busy' | 'review' | 'approved' | 'denied' | 'error';
|
|
16
|
+
export interface UseDeviceAuthorizationResult {
|
|
17
|
+
status: DeviceAuthorizationStatus;
|
|
18
|
+
/** The device sign-in being reviewed, after a successful lookup. */
|
|
19
|
+
authorization: DeviceAuthorizationRecord | null;
|
|
20
|
+
error: string | null;
|
|
21
|
+
lookup(userCode: string): Promise<DeviceAuthorizationRecord | null>;
|
|
22
|
+
approve(): Promise<void>;
|
|
23
|
+
deny(): Promise<void>;
|
|
24
|
+
/** Back to entering a code. */
|
|
25
|
+
reset(): void;
|
|
26
|
+
reverification: ReturnType<typeof useReverification>;
|
|
27
|
+
}
|
|
28
|
+
export declare function useDeviceAuthorization(): UseDeviceAuthorizationResult;
|
|
29
|
+
export interface DeviceAuthorizationProps {
|
|
30
|
+
/** Start with this code (otherwise `?user_code=` on the page URL, if present). */
|
|
31
|
+
userCode?: string;
|
|
32
|
+
/** Called once the device sign-in is approved. */
|
|
33
|
+
onApproved?: (authorization: DeviceAuthorizationRecord) => void;
|
|
34
|
+
/** Called once it is denied. */
|
|
35
|
+
onDenied?: (authorization: DeviceAuthorizationRecord) => void;
|
|
36
|
+
}
|
|
37
|
+
/**
|
|
38
|
+
* Drop-in device approval: a code field, then the app's name, the access it
|
|
39
|
+
* asks for and the code to compare against the device, with Allow / Deny — and
|
|
40
|
+
* the "confirm it's you" prompt when the application requires it.
|
|
41
|
+
*/
|
|
42
|
+
export declare function DeviceAuthorization(props: DeviceAuthorizationProps): import("react").JSX.Element;
|
|
@@ -0,0 +1,137 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
'use client';
|
|
3
|
+
Object.defineProperty(exports, "__esModule", { value: true });
|
|
4
|
+
exports.useDeviceAuthorization = useDeviceAuthorization;
|
|
5
|
+
exports.DeviceAuthorization = DeviceAuthorization;
|
|
6
|
+
const jsx_runtime_1 = require("react/jsx-runtime");
|
|
7
|
+
const react_1 = require("react");
|
|
8
|
+
const js_1 = require("@atlasauth/js");
|
|
9
|
+
const reverification_1 = require("./reverification");
|
|
10
|
+
const components_shared_1 = require("./components-shared");
|
|
11
|
+
function useDeviceAuthorization() {
|
|
12
|
+
const client = (0, components_shared_1.useMeClient)();
|
|
13
|
+
const errorText = (0, components_shared_1.useErrorText)();
|
|
14
|
+
const t = (0, components_shared_1.useText)();
|
|
15
|
+
const reverification = (0, reverification_1.useReverification)();
|
|
16
|
+
const { withReverification } = reverification;
|
|
17
|
+
const [status, setStatus] = (0, react_1.useState)('idle');
|
|
18
|
+
const [authorization, setAuthorization] = (0, react_1.useState)(null);
|
|
19
|
+
const [error, setError] = (0, react_1.useState)(null);
|
|
20
|
+
const fail = (0, react_1.useCallback)((err) => {
|
|
21
|
+
if ((0, reverification_1.isReverificationCancelled)(err)) {
|
|
22
|
+
setStatus('review');
|
|
23
|
+
return;
|
|
24
|
+
}
|
|
25
|
+
setStatus('error');
|
|
26
|
+
setError(err instanceof js_1.DeviceAuthorizationError && err.isInvalidCode
|
|
27
|
+
? t('deviceAuth.invalidCode')
|
|
28
|
+
: err instanceof Error
|
|
29
|
+
? errorText(err)
|
|
30
|
+
: t('error.generic'));
|
|
31
|
+
}, [errorText, t]);
|
|
32
|
+
const lookup = (0, react_1.useCallback)(async (userCode) => {
|
|
33
|
+
setStatus('busy');
|
|
34
|
+
setError(null);
|
|
35
|
+
try {
|
|
36
|
+
const found = await (0, js_1.lookupDeviceAuthorization)(client, userCode);
|
|
37
|
+
setAuthorization(found);
|
|
38
|
+
setStatus('review');
|
|
39
|
+
return found;
|
|
40
|
+
}
|
|
41
|
+
catch (err) {
|
|
42
|
+
setAuthorization(null);
|
|
43
|
+
fail(err);
|
|
44
|
+
return null;
|
|
45
|
+
}
|
|
46
|
+
}, [client, fail]);
|
|
47
|
+
const approve = (0, react_1.useCallback)(async () => {
|
|
48
|
+
if (!authorization)
|
|
49
|
+
return;
|
|
50
|
+
setStatus('busy');
|
|
51
|
+
setError(null);
|
|
52
|
+
try {
|
|
53
|
+
const done = await withReverification(() => (0, js_1.approveDeviceAuthorization)(client, authorization));
|
|
54
|
+
setAuthorization(done);
|
|
55
|
+
setStatus('approved');
|
|
56
|
+
}
|
|
57
|
+
catch (err) {
|
|
58
|
+
fail(err);
|
|
59
|
+
}
|
|
60
|
+
}, [authorization, client, fail, withReverification]);
|
|
61
|
+
const deny = (0, react_1.useCallback)(async () => {
|
|
62
|
+
if (!authorization)
|
|
63
|
+
return;
|
|
64
|
+
setStatus('busy');
|
|
65
|
+
setError(null);
|
|
66
|
+
try {
|
|
67
|
+
const done = await (0, js_1.denyDeviceAuthorization)(client, authorization);
|
|
68
|
+
setAuthorization(done);
|
|
69
|
+
setStatus('denied');
|
|
70
|
+
}
|
|
71
|
+
catch (err) {
|
|
72
|
+
fail(err);
|
|
73
|
+
}
|
|
74
|
+
}, [authorization, client, fail]);
|
|
75
|
+
const reset = (0, react_1.useCallback)(() => {
|
|
76
|
+
setAuthorization(null);
|
|
77
|
+
setError(null);
|
|
78
|
+
setStatus('idle');
|
|
79
|
+
}, []);
|
|
80
|
+
return { status, authorization, error, lookup, approve, deny, reset, reverification };
|
|
81
|
+
}
|
|
82
|
+
/**
|
|
83
|
+
* Drop-in device approval: a code field, then the app's name, the access it
|
|
84
|
+
* asks for and the code to compare against the device, with Allow / Deny — and
|
|
85
|
+
* the "confirm it's you" prompt when the application requires it.
|
|
86
|
+
*/
|
|
87
|
+
function DeviceAuthorization(props) {
|
|
88
|
+
const api = useDeviceAuthorization();
|
|
89
|
+
const t = (0, components_shared_1.useText)();
|
|
90
|
+
const errorText = (0, components_shared_1.useErrorText)();
|
|
91
|
+
const cardClass = (0, components_shared_1.useClass)('card', 'atlas-card');
|
|
92
|
+
const cls = (0, components_shared_1.useClasses)();
|
|
93
|
+
const [code, setCode] = (0, react_1.useState)(props.userCode ?? '');
|
|
94
|
+
const [password, setPassword] = (0, react_1.useState)('');
|
|
95
|
+
const [reauthError, setReauthError] = (0, react_1.useState)(null);
|
|
96
|
+
const { lookup } = api;
|
|
97
|
+
// A code passed in, or on the verification URL the device showed, is looked up
|
|
98
|
+
// straight away — once per distinct code.
|
|
99
|
+
const lookedUp = (0, react_1.useRef)(null);
|
|
100
|
+
(0, react_1.useEffect)(() => {
|
|
101
|
+
const initial = props.userCode ?? (typeof window !== 'undefined' ? (0, js_1.userCodeFromUrl)(window.location.href) : null);
|
|
102
|
+
if (initial && lookedUp.current !== initial) {
|
|
103
|
+
lookedUp.current = initial;
|
|
104
|
+
setCode((0, js_1.formatUserCode)(initial));
|
|
105
|
+
void lookup(initial);
|
|
106
|
+
}
|
|
107
|
+
}, [props.userCode, lookup]);
|
|
108
|
+
// The latest callbacks, so the effect below fires once per transition only.
|
|
109
|
+
const callbacks = (0, react_1.useRef)({ onApproved: props.onApproved, onDenied: props.onDenied });
|
|
110
|
+
callbacks.current = { onApproved: props.onApproved, onDenied: props.onDenied };
|
|
111
|
+
const { status, authorization } = api;
|
|
112
|
+
(0, react_1.useEffect)(() => {
|
|
113
|
+
if (status === 'approved' && authorization)
|
|
114
|
+
callbacks.current.onApproved?.(authorization);
|
|
115
|
+
if (status === 'denied' && authorization)
|
|
116
|
+
callbacks.current.onDenied?.(authorization);
|
|
117
|
+
}, [status, authorization]);
|
|
118
|
+
const confirmIdentity = async () => {
|
|
119
|
+
setReauthError(null);
|
|
120
|
+
try {
|
|
121
|
+
await api.reverification.completeReverification({ strategy: 'password', password });
|
|
122
|
+
setPassword('');
|
|
123
|
+
}
|
|
124
|
+
catch (err) {
|
|
125
|
+
setReauthError(err instanceof Error ? errorText(err) : t('error.generic'));
|
|
126
|
+
}
|
|
127
|
+
};
|
|
128
|
+
const auth = api.authorization;
|
|
129
|
+
return ((0, jsx_runtime_1.jsxs)("section", { className: cardClass, "data-atlas": "device-authorization", children: [(0, jsx_runtime_1.jsx)("h2", { className: cls('sectionTitle', 'atlas-section-title'), children: t('deviceAuth.title') }), api.status === 'approved' ? ((0, jsx_runtime_1.jsx)("p", { className: cls('text', 'atlas-text'), role: "status", "data-atlas": "device-authorization-approved", children: t('deviceAuth.approved') })) : api.status === 'denied' ? ((0, jsx_runtime_1.jsx)("p", { className: cls('text', 'atlas-text'), role: "status", "data-atlas": "device-authorization-denied", children: t('deviceAuth.denied') })) : auth && (api.status === 'review' || api.status === 'busy') ? ((0, jsx_runtime_1.jsxs)("div", { "data-atlas": "device-authorization-review", children: [(0, jsx_runtime_1.jsx)("p", { className: cls('text', 'atlas-text'), children: t('deviceAuth.request', { app: auth.client.name }) }), auth.scopes.length > 0 ? ((0, jsx_runtime_1.jsxs)(jsx_runtime_1.Fragment, { children: [(0, jsx_runtime_1.jsx)("p", { className: cls('text', 'atlas-text'), children: t('deviceAuth.scopesTitle') }), (0, jsx_runtime_1.jsx)("ul", { className: cls('list', 'atlas-list'), "data-atlas": "device-authorization-scopes", children: auth.scopes.map((s) => ((0, jsx_runtime_1.jsx)("li", { className: cls('listItem', 'atlas-list-item'), children: s.description }, s.scope))) })] })) : null, (0, jsx_runtime_1.jsx)("p", { className: cls('text', 'atlas-text'), "data-atlas": "device-authorization-code", children: t('deviceAuth.checkCode', { code: auth.userCode }) }), api.reverification.needsReverification ? ((0, jsx_runtime_1.jsxs)("div", { "data-atlas": "device-authorization-reverification", role: "dialog", "aria-label": t('reverification.title'), children: [(0, jsx_runtime_1.jsx)("p", { className: cls('text', 'atlas-text'), children: (0, jsx_runtime_1.jsx)("strong", { children: t('reverification.title') }) }), (0, jsx_runtime_1.jsx)("p", { className: cls('text', 'atlas-text'), children: t('reverification.subtitle') }), (0, jsx_runtime_1.jsxs)("label", { className: cls('formField', 'atlas-field'), children: [(0, jsx_runtime_1.jsx)("span", { className: cls('formFieldLabel', 'atlas-field-label'), children: t('reverification.passwordLabel') }), (0, jsx_runtime_1.jsx)("input", { className: cls('formFieldInput', 'atlas-account-input'), type: "password", autoComplete: "current-password", value: password, onChange: (e) => setPassword(e.target.value) })] }), reauthError ? (0, jsx_runtime_1.jsx)("p", { className: cls('formFieldError', 'atlas-error'), role: "alert", children: reauthError }) : null, (0, jsx_runtime_1.jsx)("button", { className: cls('formButtonPrimary', 'atlas-button'), type: "button", onClick: () => void confirmIdentity(), children: t('reverification.submit') }), (0, jsx_runtime_1.jsx)("button", { className: cls('formButtonSecondary', 'atlas-button-secondary'), type: "button", onClick: () => api.reverification.cancelReverification(), children: t('reverification.cancel') })] })) : ((0, jsx_runtime_1.jsxs)("div", { children: [(0, jsx_runtime_1.jsx)("button", { className: cls('formButtonPrimary', 'atlas-button'), type: "button", disabled: api.status === 'busy', onClick: () => void api.approve(), children: t('deviceAuth.approve') }), (0, jsx_runtime_1.jsx)("button", { className: cls('formButtonSecondary', 'atlas-button-secondary'), type: "button", disabled: api.status === 'busy', onClick: () => void api.deny(), children: t('deviceAuth.deny') })] }))] })) : ((0, jsx_runtime_1.jsxs)("form", { "data-atlas": "device-authorization-entry", onSubmit: (e) => {
|
|
130
|
+
e.preventDefault();
|
|
131
|
+
void api.lookup(code);
|
|
132
|
+
}, children: [(0, jsx_runtime_1.jsx)("p", { className: cls('text', 'atlas-text'), children: t('deviceAuth.subtitle') }), (0, jsx_runtime_1.jsxs)("label", { className: cls('formField', 'atlas-field'), children: [(0, jsx_runtime_1.jsx)("span", { className: cls('formFieldLabel', 'atlas-field-label'), children: t('deviceAuth.codeLabel') }), (0, jsx_runtime_1.jsx)("input", { className: cls('formFieldInput', 'atlas-account-input'), value: code, autoComplete: "one-time-code", autoCapitalize: "characters", spellCheck: false, placeholder: "XXXX-XXXX", onChange: (e) => setCode(e.target.value) })] }), api.error ? (0, jsx_runtime_1.jsx)("p", { className: cls('formFieldError', 'atlas-error'), role: "alert", children: api.error }) : null, (0, jsx_runtime_1.jsx)("button", { className: cls('formButtonPrimary', 'atlas-button'), type: "submit", disabled: api.status === 'busy' || !code.trim(), children: t('deviceAuth.continue') })] })), api.status === 'approved' || api.status === 'denied' || api.status === 'error' ? ((0, jsx_runtime_1.jsx)("button", { className: cls('formButtonSecondary', 'atlas-button-secondary'), type: "button", onClick: () => {
|
|
133
|
+
setCode('');
|
|
134
|
+
api.reset();
|
|
135
|
+
}, children: t('deviceAuth.another') })) : null] }));
|
|
136
|
+
}
|
|
137
|
+
//# sourceMappingURL=device-authorization.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"device-authorization.js","sourceRoot":"","sources":["../src/device-authorization.tsx"],"names":[],"mappings":"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"}
|
package/dist/flow.d.ts
CHANGED
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
import type { PasskeyExtensionResults, PasskeyPrfRequest } from '@atlasauth/js';
|
|
1
2
|
import { type ReactNode } from 'react';
|
|
2
3
|
import { type AttemptView, type EmailFactor, type FieldError, type ReferralConsent } from '@atlasauth/js';
|
|
3
4
|
import { FapiClient, type FlowState } from './fapi';
|
|
@@ -86,6 +87,15 @@ export interface FlowProps {
|
|
|
86
87
|
* hand-rolling the invisible-overlay technique themselves.
|
|
87
88
|
*/
|
|
88
89
|
googleButton?: GoogleButtonMode;
|
|
90
|
+
/**
|
|
91
|
+
* Request the WebAuthn `prf` extension when `<SignUp>` creates a passkey: a
|
|
92
|
+
* secret derived from the passkey and your salt, for client-side encryption
|
|
93
|
+
* keys. The outputs go to {@link FlowProps.onPasskeyExtensionResults} only and
|
|
94
|
+
* never reach Atlas.
|
|
95
|
+
*/
|
|
96
|
+
passkeyPrf?: PasskeyPrfRequest;
|
|
97
|
+
/** Receives the passkey ceremony's client extension results (the PRF outputs). */
|
|
98
|
+
onPasskeyExtensionResults?: (results: PasskeyExtensionResults) => void;
|
|
89
99
|
}
|
|
90
100
|
/**
|
|
91
101
|
* The server-driven flow shell.
|
|
@@ -93,7 +103,7 @@ export interface FlowProps {
|
|
|
93
103
|
* Every branch comes from `nextStep`, which is exhaustive — including the
|
|
94
104
|
* `unknown` case, which renders an honest message instead of nothing.
|
|
95
105
|
*/
|
|
96
|
-
export declare function AttemptFlow({ attempt, onSubmit, busy, errors, titleKey, hideTitle, captcha, prepared, onPrepare, onUsePassword, sessionKept, }: {
|
|
106
|
+
export declare function AttemptFlow({ attempt, onSubmit, busy, errors, titleKey, hideTitle, captcha, prepared, onPrepare, onUsePassword, sessionKept, recoveryCodes, onRecoveryCodesSaved, }: {
|
|
97
107
|
attempt: AttemptView | null;
|
|
98
108
|
onSubmit(values: Record<string, string>): void;
|
|
99
109
|
busy: boolean;
|
|
@@ -120,6 +130,13 @@ export declare function AttemptFlow({ attempt, onSubmit, busy, errors, titleKey,
|
|
|
120
130
|
onUsePassword?(): void;
|
|
121
131
|
/** `FlowState.sessionKept`: whether this browser kept the session the sign-in created. */
|
|
122
132
|
sessionKept?: boolean;
|
|
133
|
+
/**
|
|
134
|
+
* The recovery codes an MFA enrolment just completed the sign-in with
|
|
135
|
+
* (`pendingRecoveryCodes(state)`): drawn once instead of the form, and
|
|
136
|
+
* "I've saved my codes" calls {@link onRecoveryCodesSaved} to finish.
|
|
137
|
+
*/
|
|
138
|
+
recoveryCodes?: string[] | null;
|
|
139
|
+
onRecoveryCodesSaved?(): void;
|
|
123
140
|
}): import("react").JSX.Element;
|
|
124
141
|
/**
|
|
125
142
|
* §10.2 `FlowProps.afterUrl` — the completion-redirect decision, pulled out as a
|
|
@@ -159,6 +176,7 @@ export declare function useFlow({ afterUrl, signInCaptcha, referral, referralCon
|
|
|
159
176
|
captcha: import("./captcha").CaptchaController;
|
|
160
177
|
prepare: (strategy: EmailFactor) => void;
|
|
161
178
|
usePassword: () => void;
|
|
179
|
+
saveRecoveryCodes: () => void;
|
|
162
180
|
};
|
|
163
181
|
/**
|
|
164
182
|
* A social provider as it appears in `/v1/client/environment`.
|
|
@@ -313,15 +331,21 @@ export declare function AtlasSsoButton({ onClick, className, labelClassName, }:
|
|
|
313
331
|
labelClassName?: string;
|
|
314
332
|
}): import("react").JSX.Element;
|
|
315
333
|
/**
|
|
316
|
-
*
|
|
317
|
-
*
|
|
318
|
-
*
|
|
319
|
-
* button — no redirect, no new tab, no stranded initiating tab. Every OTHER
|
|
320
|
-
* enabled provider (GitHub, Microsoft, Discord, …) renders a redirect button that
|
|
321
|
-
* starts the OAuth flow and returns to THIS page, where `<AtlasProvider>` exchanges
|
|
322
|
-
* the returned ticket for a session. Previously `<SignIn>` rendered only the
|
|
323
|
-
* Google button, so an instance's other social providers never appeared.
|
|
334
|
+
* The method this browser last signed in with (`password`, `oauth_github`, …),
|
|
335
|
+
* for the "Last used" badge — null until known, when none is remembered, or
|
|
336
|
+
* when the instance turned the hint off.
|
|
324
337
|
*/
|
|
338
|
+
export declare function useLastSignInMethod(client: FapiClient): string | null;
|
|
339
|
+
/** The small "Last used" badge on a sign-in option. */
|
|
340
|
+
export declare function LastUsedBadge(): import("react").JSX.Element;
|
|
341
|
+
/**
|
|
342
|
+
* Above the identifier step: which first-party method (password, email code,
|
|
343
|
+
* passkey, phone) this browser used last. Social methods are badged on their
|
|
344
|
+
* own buttons instead.
|
|
345
|
+
*/
|
|
346
|
+
export declare function LastUsedHint({ client }: {
|
|
347
|
+
client: FapiClient;
|
|
348
|
+
}): import("react").JSX.Element | null;
|
|
325
349
|
export declare function SocialSignInButtons({ client, onComplete, oneTap, oauthMode, onProviderUnavailable, googleButton, }: {
|
|
326
350
|
client: FapiClient;
|
|
327
351
|
onComplete: (next: FlowState) => void | Promise<void>;
|