@passflow/react 0.8.2 → 0.9.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 +18 -0
- package/dist/index.cjs.js +1 -1
- package/dist/index.cjs.js.map +1 -1
- package/dist/index.es.js +99 -99
- package/dist/index.es.js.map +1 -1
- package/dist/src/components/flow/consent/index.d.ts +13 -0
- package/dist/src/components/flow/consent/index.d.ts.map +1 -0
- package/dist/src/components/flow/consent/screen.d.ts +9 -0
- package/dist/src/components/flow/consent/screen.d.ts.map +1 -0
- package/dist/src/components/flow/index.d.ts +1 -0
- package/dist/src/components/flow/index.d.ts.map +1 -1
- package/dist/src/components/flow/passflow/index.d.ts.map +1 -1
- package/dist/src/components/form/index.d.ts +0 -2
- package/dist/src/components/form/index.d.ts.map +1 -1
- package/dist/src/components/ui/login-screen/consent.d.ts +13 -0
- package/dist/src/components/ui/login-screen/consent.d.ts.map +1 -0
- package/dist/src/components/ui/login-screen/index.d.ts +1 -1
- package/dist/src/components/ui/login-screen/index.d.ts.map +1 -1
- package/dist/src/components/ui/login-screen/login-screen.d.ts.map +1 -1
- package/dist/src/components/ui/login-screen/types.d.ts +25 -1
- package/dist/src/components/ui/login-screen/types.d.ts.map +1 -1
- package/dist/src/components/ui/switch/index.d.ts +12 -0
- package/dist/src/components/ui/switch/index.d.ts.map +1 -1
- package/dist/src/context/router-context.d.ts +0 -6
- package/dist/src/context/router-context.d.ts.map +1 -1
- package/dist/src/hooks/index.d.ts +1 -1
- package/dist/src/hooks/index.d.ts.map +1 -1
- package/dist/src/hooks/use-consent.d.ts +68 -0
- package/dist/src/hooks/use-consent.d.ts.map +1 -0
- package/dist/style.css +1 -1
- package/package.json +2 -2
- package/dist/src/components/form/cli-auth/index.d.ts +0 -8
- package/dist/src/components/form/cli-auth/index.d.ts.map +0 -1
- package/dist/src/components/form/cli-auth/screen.d.ts +0 -5
- package/dist/src/components/form/cli-auth/screen.d.ts.map +0 -1
- package/dist/src/components/form/cli-browser-auth/index.d.ts +0 -2
- package/dist/src/components/form/cli-browser-auth/index.d.ts.map +0 -1
- package/dist/src/components/form/cli-qr-auth/index.d.ts +0 -2
- package/dist/src/components/form/cli-qr-auth/index.d.ts.map +0 -1
- package/dist/src/hooks/use-cli-auth.d.ts +0 -9
- package/dist/src/hooks/use-cli-auth.d.ts.map +0 -1
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { FC } from 'react';
|
|
2
|
+
/**
|
|
3
|
+
* OIDC consent controller, mounted by the host app on `/web/consent`.
|
|
4
|
+
*
|
|
5
|
+
* Standalone by design: it needs no PassflowProvider. The staged request is
|
|
6
|
+
* addressed by `parent_challenge_id` on the URL and read with a same-origin
|
|
7
|
+
* cookie, so there is no SDK client, no app settings lookup, and no token to
|
|
8
|
+
* hold — which is also why mounting it inside the provider would be actively
|
|
9
|
+
* wrong, since the provider's session-exchange probe would fire against a
|
|
10
|
+
* challenge that is waiting for a human decision.
|
|
11
|
+
*/
|
|
12
|
+
export declare const ConsentFlow: FC;
|
|
13
|
+
//# sourceMappingURL=index.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/components/flow/consent/index.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,OAAO,CAAC;AAGhC;;;;;;;;;GASG;AACH,eAAO,MAAM,WAAW,EAAE,EAKzB,CAAC"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
import { LoginScreenProps } from '../../ui';
|
|
2
|
+
import { UseConsentProps } from '../../../hooks/use-consent';
|
|
3
|
+
/**
|
|
4
|
+
* Maps consent state onto the shared LoginScreen. Pure — every visual decision
|
|
5
|
+
* lives in LoginScreen, every protocol decision lives in useConsent, and this
|
|
6
|
+
* file is only the translation between them.
|
|
7
|
+
*/
|
|
8
|
+
export declare const getConsentLoginScreenProps: (consent: UseConsentProps) => LoginScreenProps | null;
|
|
9
|
+
//# sourceMappingURL=screen.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"screen.d.ts","sourceRoot":"","sources":["../../../../../src/components/flow/consent/screen.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AACxD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,qBAAqB,CAAC;AAE3D;;;;GAIG;AACH,eAAO,MAAM,0BAA0B,GAAI,SAAS,eAAe,KAAG,gBAAgB,GAAG,IA8ExF,CAAC"}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
export { PassflowFlow } from './passflow';
|
|
2
2
|
export { DeviceVerifyFlow } from './device-verify';
|
|
3
|
+
export { ConsentFlow } from './consent';
|
|
3
4
|
export { TwoFactorSetupMagicLinkFlow, type TwoFactorSetupMagicLinkFlowProps } from './two-factor-setup-magic-link';
|
|
4
5
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/components/flow/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAC1C,OAAO,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AACnD,OAAO,EAAE,2BAA2B,EAAE,KAAK,gCAAgC,EAAE,MAAM,+BAA+B,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/components/flow/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,YAAY,EAAE,MAAM,YAAY,CAAC;AAC1C,OAAO,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AACnD,OAAO,EAAE,WAAW,EAAE,MAAM,WAAW,CAAC;AACxC,OAAO,EAAE,2BAA2B,EAAE,KAAK,gCAAgC,EAAE,MAAM,+BAA+B,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/components/flow/passflow/index.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/components/flow/passflow/index.tsx"],"names":[],"mappings":"AAcA,OAAO,oBAAoB,CAAC;AAI5B,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,SAAS,CAAC;AAOnD,MAAM,MAAM,aAAa,GAAG;IAC1B,mBAAmB,CAAC,EAAE,mBAAmB,CAAC;IAC1C,oBAAoB,CAAC,EAAE,OAAO,GAAG,UAAU,CAAC;IAC5C,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,cAAc,CAAC,EAAE,MAAM,CAAC;IACxB,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,UAAU,CAAC,EAAE,SAAS,GAAG,MAAM,GAAG,QAAQ,CAAC;IAC3C,QAAQ,CAAC,EAAE,MAAM,CAAC;CACnB,CAAC;AAsKF,eAAO,MAAM,YAAY,8DAA6C,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/components/form/index.ts"],"names":[],"mappings":"AAEA,cAAc,UAAU,CAAC;AACzB,cAAc,UAAU,CAAC;AACzB,cAAc,oBAAoB,CAAC;AACnC,cAAc,mBAAmB,CAAC;AAClC,cAAc,kBAAkB,CAAC;AACjC,cAAc,mBAAmB,CAAC;AAElC,cAAc,qBAAqB,CAAC;AACpC,cAAc,oBAAoB,CAAC;AACnC,cAAc,wBAAwB,CAAC
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/components/form/index.ts"],"names":[],"mappings":"AAEA,cAAc,UAAU,CAAC;AACzB,cAAc,UAAU,CAAC;AACzB,cAAc,oBAAoB,CAAC;AACnC,cAAc,mBAAmB,CAAC;AAClC,cAAc,kBAAkB,CAAC;AACjC,cAAc,mBAAmB,CAAC;AAElC,cAAc,qBAAqB,CAAC;AACpC,cAAc,oBAAoB,CAAC;AACnC,cAAc,wBAAwB,CAAC"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { FC } from 'react';
|
|
2
|
+
import { LoginConsentState } from './types';
|
|
3
|
+
/**
|
|
4
|
+
* The OIDC consent screen: which scopes an application is asking for, and the
|
|
5
|
+
* two decisions a user can make about them.
|
|
6
|
+
*
|
|
7
|
+
* Every scope starts granted and can be switched off individually — the Allow
|
|
8
|
+
* button submits the subset that is still on, so "Allow" never grants more than
|
|
9
|
+
* what is visible on screen. Deny is a peer of Allow, not a hidden link: a
|
|
10
|
+
* consent screen where refusing is harder than accepting is a dark pattern.
|
|
11
|
+
*/
|
|
12
|
+
export declare const LoginConsent: FC<LoginConsentState>;
|
|
13
|
+
//# sourceMappingURL=consent.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"consent.d.ts","sourceRoot":"","sources":["../../../../../src/components/ui/login-screen/consent.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,OAAO,CAAC;AAIhC,OAAO,KAAK,EAAE,iBAAiB,EAAE,MAAM,SAAS,CAAC;AAEjD;;;;;;;;GAQG;AACH,eAAO,MAAM,YAAY,EAAE,EAAE,CAAC,iBAAiB,CAwD9C,CAAC"}
|
|
@@ -1,4 +1,4 @@
|
|
|
1
1
|
export { LoginScreen } from './login-screen';
|
|
2
2
|
export { LoginAlert } from './shared';
|
|
3
|
-
export type { LoginScreenProps, LoginScreenState, LoginScreenChrome, LoginCredentialsState, LoginCredentialsValues, LoginIdentityMethod, LoginMethodConfig, LoginCodeEntryState, LoginPasskeyProgressState, LoginDeviceApprovalState, LoginInvitationState, LoginGeneralErrorState, LoginStatusState, LoginScreenNotice as LoginScreenNoticeProps, LoginScreenLink, } from './types';
|
|
3
|
+
export type { LoginScreenProps, LoginScreenState, LoginScreenChrome, LoginCredentialsState, LoginCredentialsValues, LoginIdentityMethod, LoginMethodConfig, LoginCodeEntryState, LoginPasskeyProgressState, LoginDeviceApprovalState, LoginInvitationState, LoginGeneralErrorState, LoginConsentState, LoginConsentScope, LoginStatusState, LoginScreenNotice as LoginScreenNoticeProps, LoginScreenLink, } from './types';
|
|
4
4
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/components/ui/login-screen/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC7C,OAAO,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AACtC,YAAY,EACV,gBAAgB,EAChB,gBAAgB,EAChB,iBAAiB,EACjB,qBAAqB,EACrB,sBAAsB,EACtB,mBAAmB,EACnB,iBAAiB,EACjB,mBAAmB,EACnB,yBAAyB,EACzB,wBAAwB,EACxB,oBAAoB,EACpB,sBAAsB,EACtB,gBAAgB,EAChB,iBAAiB,IAAI,sBAAsB,EAC3C,eAAe,GAChB,MAAM,SAAS,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/components/ui/login-screen/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC7C,OAAO,EAAE,UAAU,EAAE,MAAM,UAAU,CAAC;AACtC,YAAY,EACV,gBAAgB,EAChB,gBAAgB,EAChB,iBAAiB,EACjB,qBAAqB,EACrB,sBAAsB,EACtB,mBAAmB,EACnB,iBAAiB,EACjB,mBAAmB,EACnB,yBAAyB,EACzB,wBAAwB,EACxB,oBAAoB,EACpB,sBAAsB,EACtB,iBAAiB,EACjB,iBAAiB,EACjB,gBAAgB,EAChB,iBAAiB,IAAI,sBAAsB,EAC3C,eAAe,GAChB,MAAM,SAAS,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"login-screen.d.ts","sourceRoot":"","sources":["../../../../../src/components/ui/login-screen/login-screen.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,OAAO,CAAC;
|
|
1
|
+
{"version":3,"file":"login-screen.d.ts","sourceRoot":"","sources":["../../../../../src/components/ui/login-screen/login-screen.tsx"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,OAAO,CAAC;AAUhC,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,SAAS,CAAC;AAEhD,eAAO,MAAM,WAAW,EAAE,EAAE,CAAC,gBAAgB,CA2C5C,CAAC"}
|
|
@@ -131,6 +131,30 @@ export type LoginGeneralErrorState = {
|
|
|
131
131
|
testId?: string;
|
|
132
132
|
onAction: () => void;
|
|
133
133
|
};
|
|
134
|
+
export type LoginConsentScope = {
|
|
135
|
+
scope: string;
|
|
136
|
+
label: string;
|
|
137
|
+
description?: string;
|
|
138
|
+
granted: boolean;
|
|
139
|
+
};
|
|
140
|
+
export type LoginConsentState = {
|
|
141
|
+
kind: 'consent';
|
|
142
|
+
appName: string;
|
|
143
|
+
scopes: LoginConsentScope[];
|
|
144
|
+
prompt?: string;
|
|
145
|
+
busy?: boolean;
|
|
146
|
+
error?: string | null;
|
|
147
|
+
allowLabel?: string;
|
|
148
|
+
denyLabel?: string;
|
|
149
|
+
busyLabel?: string;
|
|
150
|
+
testId?: string;
|
|
151
|
+
allowTestId?: string;
|
|
152
|
+
denyTestId?: string;
|
|
153
|
+
appNameTestId?: string;
|
|
154
|
+
onToggleScope: (scope: string) => void;
|
|
155
|
+
onAllow: () => void;
|
|
156
|
+
onDeny: () => void;
|
|
157
|
+
};
|
|
134
158
|
export type LoginStatusState = {
|
|
135
159
|
kind: 'status';
|
|
136
160
|
tone: 'success' | 'error' | 'disabled';
|
|
@@ -145,7 +169,7 @@ export type LoginStatusState = {
|
|
|
145
169
|
onClick: () => void;
|
|
146
170
|
};
|
|
147
171
|
};
|
|
148
|
-
export type LoginScreenState = LoginCredentialsState | LoginCodeEntryState | LoginPasskeyProgressState | LoginDeviceApprovalState | LoginInvitationState | LoginGeneralErrorState | LoginStatusState;
|
|
172
|
+
export type LoginScreenState = LoginCredentialsState | LoginCodeEntryState | LoginPasskeyProgressState | LoginDeviceApprovalState | LoginInvitationState | LoginGeneralErrorState | LoginConsentState | LoginStatusState;
|
|
149
173
|
export type LoginScreenProps = {
|
|
150
174
|
chrome: LoginScreenChrome;
|
|
151
175
|
state: LoginScreenState;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../../src/components/ui/login-screen/types.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../../src/components/ui/login-screen/types.ts"],"names":[],"mappings":"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"}
|
|
@@ -3,6 +3,18 @@ type TSwitch = {
|
|
|
3
3
|
label: string;
|
|
4
4
|
checked: boolean;
|
|
5
5
|
disabled?: boolean;
|
|
6
|
+
/**
|
|
7
|
+
* Overrides the generated input id. Only needed when something outside this
|
|
8
|
+
* component has to point at the input (`aria-describedby`, a test hook, a
|
|
9
|
+
* label rendered elsewhere).
|
|
10
|
+
*
|
|
11
|
+
* The default is a `useId()` value rather than a constant, because a constant
|
|
12
|
+
* breaks the moment a screen renders more than one Switch: duplicate DOM ids
|
|
13
|
+
* are invalid, and every `<label htmlFor>` would resolve to the FIRST input,
|
|
14
|
+
* so clicking row three would toggle row one. The consent screen renders one
|
|
15
|
+
* Switch per requested scope, so this is load-bearing, not hygiene.
|
|
16
|
+
*/
|
|
17
|
+
id?: string;
|
|
6
18
|
onChange: (event: ChangeEvent<HTMLInputElement>) => void;
|
|
7
19
|
};
|
|
8
20
|
export declare const Switch: FC<TSwitch>;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/components/ui/switch/index.tsx"],"names":[],"mappings":"AACA,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/components/ui/switch/index.tsx"],"names":[],"mappings":"AACA,OAAO,EAAE,KAAK,WAAW,EAAE,KAAK,EAAE,EAAS,MAAM,OAAO,CAAC;AAEzD,KAAK,OAAO,GAAG;IACb,KAAK,EAAE,MAAM,CAAC;IACd,OAAO,EAAE,OAAO,CAAC;IACjB,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB;;;;;;;;;;OAUG;IACH,EAAE,CAAC,EAAE,MAAM,CAAC;IACZ,QAAQ,EAAE,CAAC,KAAK,EAAE,WAAW,CAAC,gBAAgB,CAAC,KAAK,IAAI,CAAC;CAC1D,CAAC;AAEF,eAAO,MAAM,MAAM,EAAE,EAAE,CAAC,OAAO,CAkB9B,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"router-context.d.ts","sourceRoot":"","sources":["../../../src/context/router-context.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,MAAM
|
|
1
|
+
{"version":3,"file":"router-context.d.ts","sourceRoot":"","sources":["../../../src/context/router-context.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,MAAM;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;CAwClB,CAAC"}
|
|
@@ -21,6 +21,6 @@ export { useTwoFactorSetupMagicLink, type UseTwoFactorSetupMagicLinkReturn } fro
|
|
|
21
21
|
export { useTwoFactorChallenge, type UseTwoFactorChallengeReturn } from './use-two-factor-challenge';
|
|
22
22
|
export { useTwoFactorMethods, type UseTwoFactorMethodsReturn } from './use-two-factor-methods';
|
|
23
23
|
export { useSessionExpired, type UseSessionExpiredOptions, type UseSessionExpiredResult, type SessionExpiredReason, } from './use-session-expired';
|
|
24
|
-
export { useCLIAuth, type UseCLIAuthProps, type CLIAuthState } from './use-cli-auth';
|
|
25
24
|
export { useDeviceVerify, type UseDeviceVerifyProps, type DeviceVerifyStatus, type DeviceVerifyInfo, type DeviceUIMode, } from './use-device-verify';
|
|
25
|
+
export { useConsent, type UseConsentProps, type ConsentStatus, type ConsentInfo, type ConsentError, type ConsentScopeMetadata, } from './use-consent';
|
|
26
26
|
//# sourceMappingURL=index.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/hooks/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,KAAK,cAAc,EAAE,MAAM,cAAc,CAAC;AAC9D,OAAO,EAAE,WAAW,EAAE,KAAK,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AACpE,OAAO,EAAE,SAAS,EAAE,KAAK,cAAc,EAAE,MAAM,cAAc,CAAC;AAC9D,OAAO,EAAE,iBAAiB,EAAE,KAAK,sBAAsB,EAAE,MAAM,uBAAuB,CAAC;AACvF,OAAO,EAAE,gBAAgB,EAAE,KAAK,qBAAqB,EAAE,MAAM,sBAAsB,CAAC;AACpF,OAAO,EAAE,cAAc,EAAE,KAAK,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AAC9E,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC7C,OAAO,EAAE,uBAAuB,EAAE,KAAK,4BAA4B,EAAE,MAAM,6BAA6B,CAAC;AACzG,OAAO,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AACrC,OAAO,EAAE,SAAS,EAAE,KAAK,cAAc,EAAE,MAAM,cAAc,CAAC;AAC9D,OAAO,EAAE,eAAe,EAAE,KAAK,oBAAoB,EAAE,MAAM,qBAAqB,CAAC;AACjF,OAAO,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AACjE,OAAO,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAClD,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AACrD,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAEjD,OAAO,EAAE,kBAAkB,EAAE,KAAK,uBAAuB,EAAE,MAAM,yBAAyB,CAAC;AAC3F,OAAO,EAAE,iBAAiB,EAAE,KAAK,sBAAsB,EAAE,KAAK,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AACjH,OAAO,EAAE,kBAAkB,EAAE,KAAK,uBAAuB,EAAE,MAAM,yBAAyB,CAAC;AAC3F,OAAO,EAAE,kBAAkB,EAAE,KAAK,uBAAuB,EAAE,MAAM,yBAAyB,CAAC;AAC3F,OAAO,EAAE,0BAA0B,EAAE,KAAK,gCAAgC,EAAE,MAAM,mCAAmC,CAAC;AACtH,OAAO,EAAE,qBAAqB,EAAE,KAAK,2BAA2B,EAAE,MAAM,4BAA4B,CAAC;AACrG,OAAO,EAAE,mBAAmB,EAAE,KAAK,yBAAyB,EAAE,MAAM,0BAA0B,CAAC;AAE/F,OAAO,EACL,iBAAiB,EACjB,KAAK,wBAAwB,EAC7B,KAAK,uBAAuB,EAC5B,KAAK,oBAAoB,GAC1B,MAAM,uBAAuB,CAAC;AAE/B,OAAO,
|
|
1
|
+
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/hooks/index.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,KAAK,cAAc,EAAE,MAAM,cAAc,CAAC;AAC9D,OAAO,EAAE,WAAW,EAAE,KAAK,gBAAgB,EAAE,MAAM,gBAAgB,CAAC;AACpE,OAAO,EAAE,SAAS,EAAE,KAAK,cAAc,EAAE,MAAM,cAAc,CAAC;AAC9D,OAAO,EAAE,iBAAiB,EAAE,KAAK,sBAAsB,EAAE,MAAM,uBAAuB,CAAC;AACvF,OAAO,EAAE,gBAAgB,EAAE,KAAK,qBAAqB,EAAE,MAAM,sBAAsB,CAAC;AACpF,OAAO,EAAE,cAAc,EAAE,KAAK,mBAAmB,EAAE,MAAM,oBAAoB,CAAC;AAC9E,OAAO,EAAE,WAAW,EAAE,MAAM,gBAAgB,CAAC;AAC7C,OAAO,EAAE,uBAAuB,EAAE,KAAK,4BAA4B,EAAE,MAAM,6BAA6B,CAAC;AACzG,OAAO,EAAE,OAAO,EAAE,MAAM,YAAY,CAAC;AACrC,OAAO,EAAE,SAAS,EAAE,KAAK,cAAc,EAAE,MAAM,cAAc,CAAC;AAC9D,OAAO,EAAE,eAAe,EAAE,KAAK,oBAAoB,EAAE,MAAM,qBAAqB,CAAC;AACjF,OAAO,EAAE,oBAAoB,EAAE,MAAM,2BAA2B,CAAC;AACjE,OAAO,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AAClD,OAAO,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AACrD,OAAO,EAAE,aAAa,EAAE,MAAM,kBAAkB,CAAC;AAEjD,OAAO,EAAE,kBAAkB,EAAE,KAAK,uBAAuB,EAAE,MAAM,yBAAyB,CAAC;AAC3F,OAAO,EAAE,iBAAiB,EAAE,KAAK,sBAAsB,EAAE,KAAK,kBAAkB,EAAE,MAAM,wBAAwB,CAAC;AACjH,OAAO,EAAE,kBAAkB,EAAE,KAAK,uBAAuB,EAAE,MAAM,yBAAyB,CAAC;AAC3F,OAAO,EAAE,kBAAkB,EAAE,KAAK,uBAAuB,EAAE,MAAM,yBAAyB,CAAC;AAC3F,OAAO,EAAE,0BAA0B,EAAE,KAAK,gCAAgC,EAAE,MAAM,mCAAmC,CAAC;AACtH,OAAO,EAAE,qBAAqB,EAAE,KAAK,2BAA2B,EAAE,MAAM,4BAA4B,CAAC;AACrG,OAAO,EAAE,mBAAmB,EAAE,KAAK,yBAAyB,EAAE,MAAM,0BAA0B,CAAC;AAE/F,OAAO,EACL,iBAAiB,EACjB,KAAK,wBAAwB,EAC7B,KAAK,uBAAuB,EAC5B,KAAK,oBAAoB,GAC1B,MAAM,uBAAuB,CAAC;AAE/B,OAAO,EACL,eAAe,EACf,KAAK,oBAAoB,EACzB,KAAK,kBAAkB,EACvB,KAAK,gBAAgB,EACrB,KAAK,YAAY,GAClB,MAAM,qBAAqB,CAAC;AAE7B,OAAO,EACL,UAAU,EACV,KAAK,eAAe,EACpB,KAAK,aAAa,EAClB,KAAK,WAAW,EAChB,KAAK,YAAY,EACjB,KAAK,oBAAoB,GAC1B,MAAM,eAAe,CAAC"}
|
|
@@ -0,0 +1,68 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The OIDC consent decision, as a hook.
|
|
3
|
+
*
|
|
4
|
+
* The URL is the bearer. `parent_challenge_id` identifies a staged
|
|
5
|
+
* authorization request the server is holding, and possessing that id is what
|
|
6
|
+
* authorizes reading it — there is no Authorization header on the GET. The
|
|
7
|
+
* server hands back a `csrf_token` with the request metadata, and every
|
|
8
|
+
* state-changing POST must carry it back in `X-Passflow-CSRF`. That token is
|
|
9
|
+
* the only thing separating a real decision from one a third-party page forged
|
|
10
|
+
* on the user's behalf, so it is never optional and never cached across
|
|
11
|
+
* challenges.
|
|
12
|
+
*
|
|
13
|
+
* The decision endpoints answer with a discriminated response rather than a
|
|
14
|
+
* redirect status, because the OIDC `response_mode` decides HOW the user gets
|
|
15
|
+
* back to the client: `query` is an ordinary navigation, `form_post` must be a
|
|
16
|
+
* POST with the parameters in a form body (they cannot go in a URL). The server
|
|
17
|
+
* knows which; the client just executes what it is told.
|
|
18
|
+
*/
|
|
19
|
+
export type ConsentScopeMetadata = {
|
|
20
|
+
scope: string;
|
|
21
|
+
label: string;
|
|
22
|
+
description: string;
|
|
23
|
+
};
|
|
24
|
+
/** What GET /oidc/requests/{parent_challenge_id} hands the page to render itself. */
|
|
25
|
+
export type ConsentInfo = {
|
|
26
|
+
client_id: string;
|
|
27
|
+
app_name: string;
|
|
28
|
+
app_logo_url: string;
|
|
29
|
+
requested_scopes: string[];
|
|
30
|
+
scope_metadata: ConsentScopeMetadata[];
|
|
31
|
+
redirect_uri: string;
|
|
32
|
+
state: string;
|
|
33
|
+
response_mode: '' | 'query' | 'form_post';
|
|
34
|
+
first_party: boolean;
|
|
35
|
+
csrf_token: string;
|
|
36
|
+
};
|
|
37
|
+
export type ConsentStatus =
|
|
38
|
+
/** Fetching the staged request. */
|
|
39
|
+
'loading'
|
|
40
|
+
/** Metadata in hand; awaiting the user's decision. */
|
|
41
|
+
| 'ready'
|
|
42
|
+
/** A decision is in flight. */
|
|
43
|
+
| 'working'
|
|
44
|
+
/** Decision accepted; the browser is on its way back to the client. */
|
|
45
|
+
| 'redirecting'
|
|
46
|
+
/** The link itself is unusable — missing, expired, or rejected id. Terminal. */
|
|
47
|
+
| 'invalid';
|
|
48
|
+
export type ConsentError = {
|
|
49
|
+
message: string;
|
|
50
|
+
description?: string;
|
|
51
|
+
};
|
|
52
|
+
export type UseConsentProps = {
|
|
53
|
+
status: ConsentStatus;
|
|
54
|
+
info: ConsentInfo | null;
|
|
55
|
+
/** The scopes still switched on. A subset of `info.requested_scopes`. */
|
|
56
|
+
grantedScopes: string[];
|
|
57
|
+
error: ConsentError | null;
|
|
58
|
+
/** Metadata for a scope, falling back to the bare scope string. */
|
|
59
|
+
scopeMetadata: (scope: string) => ConsentScopeMetadata;
|
|
60
|
+
/** Switch one requested scope on or off before deciding. */
|
|
61
|
+
toggleScope: (scope: string) => void;
|
|
62
|
+
/** Grant the currently-selected subset. */
|
|
63
|
+
allow: () => Promise<void>;
|
|
64
|
+
/** Refuse the request outright (OAuth2 `access_denied`). */
|
|
65
|
+
deny: () => Promise<void>;
|
|
66
|
+
};
|
|
67
|
+
export declare const useConsent: () => UseConsentProps;
|
|
68
|
+
//# sourceMappingURL=use-consent.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"use-consent.d.ts","sourceRoot":"","sources":["../../../src/hooks/use-consent.ts"],"names":[],"mappings":"AAEA;;;;;;;;;;;;;;;;;GAiBG;AAEH,MAAM,MAAM,oBAAoB,GAAG;IACjC,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,CAAC;IACd,WAAW,EAAE,MAAM,CAAC;CACrB,CAAC;AAEF,qFAAqF;AACrF,MAAM,MAAM,WAAW,GAAG;IACxB,SAAS,EAAE,MAAM,CAAC;IAClB,QAAQ,EAAE,MAAM,CAAC;IACjB,YAAY,EAAE,MAAM,CAAC;IACrB,gBAAgB,EAAE,MAAM,EAAE,CAAC;IAC3B,cAAc,EAAE,oBAAoB,EAAE,CAAC;IACvC,YAAY,EAAE,MAAM,CAAC;IACrB,KAAK,EAAE,MAAM,CAAC;IACd,aAAa,EAAE,EAAE,GAAG,OAAO,GAAG,WAAW,CAAC;IAC1C,WAAW,EAAE,OAAO,CAAC;IACrB,UAAU,EAAE,MAAM,CAAC;CACpB,CAAC;AAWF,MAAM,MAAM,aAAa;AACvB,mCAAmC;AACjC,SAAS;AACX,sDAAsD;GACpD,OAAO;AACT,+BAA+B;GAC7B,SAAS;AACX,uEAAuE;GACrE,aAAa;AACf,gFAAgF;GAC9E,SAAS,CAAC;AAEd,MAAM,MAAM,YAAY,GAAG;IACzB,OAAO,EAAE,MAAM,CAAC;IAChB,WAAW,CAAC,EAAE,MAAM,CAAC;CACtB,CAAC;AAEF,MAAM,MAAM,eAAe,GAAG;IAC5B,MAAM,EAAE,aAAa,CAAC;IACtB,IAAI,EAAE,WAAW,GAAG,IAAI,CAAC;IACzB,yEAAyE;IACzE,aAAa,EAAE,MAAM,EAAE,CAAC;IACxB,KAAK,EAAE,YAAY,GAAG,IAAI,CAAC;IAC3B,mEAAmE;IACnE,aAAa,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,oBAAoB,CAAC;IACvD,4DAA4D;IAC5D,WAAW,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;IACrC,2CAA2C;IAC3C,KAAK,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IAC3B,4DAA4D;IAC5D,IAAI,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;CAC3B,CAAC;AA6BF,eAAO,MAAM,UAAU,QAAO,eAwJ7B,CAAC"}
|
package/dist/style.css
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
@import "https://fonts.googleapis.com/css2?family=Gasoek+One&family=Inter:opsz,wght@14..32,100..900&display=swap";[class*=passflow-]{box-sizing:border-box;font:inherit;vertical-align:baseline;border:0;margin:0;padding:0}.passflow-article,.passflow-aside,.passflow-details,.passflow-figcaption,.passflow-figure,.passflow-footer,.passflow-header,.passflow-hgroup,.passflow-menu,.passflow-nav,.passflow-section{display:block}html{scroll-behavior:smooth;font-size:16px}body{text-rendering:optimizespeed;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;min-height:100vh;line-height:1.5}.passflow-list{list-style:none}.passflow-link{color:inherit;text-decoration:none}.passflow-canvas,.passflow-image,.passflow-picture,.passflow-svg,.passflow-video{max-width:100%;display:block}.passflow-button{background:0 0;border:none;padding:0}.passflow-button,.passflow-input,.passflow-select,.passflow-textarea{color:inherit;font:inherit}.passflow-table{border-collapse:collapse;border-spacing:0}@media (prefers-reduced-motion:reduce){[class*=passflow-]{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}body,html{box-sizing:border-box;margin:0;padding:0}:root{--passflow-primary:#0c59dd;--passflow-primary-dark:#0a47b1;--passflow-warning:#b42318;--passflow-warning-dark:#8f1f17;--passflow-dark:#1e1e1e;--passflow-dark-two:#2e2e2e;--passflow-dark-three:#3e3e3e;--passflow-white:#fff;--passflow-grey-one:#5f6368;--passflow-grey-two:#bfbfbf;--passflow-grey-three:#e9eaf0;--passflow-grey-four:#f3f5f7;--passflow-background:#f8f9fb;--passflow-success:#067647;--passflow-primary-color:var(--passflow-primary);--passflow-text-color:var(--passflow-dark);--passflow-secondary-text-color:var(--passflow-grey-one);--passflow-button-text-color:var(--passflow-white);--passflow-background-color:var(--passflow-white);--passflow-background-image:url();--passflow-card-color:var(--passflow-white);--passflow-branding-background-color:var(--passflow-background);--passflow-input-background-color:var(--passflow-grey-four);--passflow-input-border-color:var(--passflow-grey-four);--passflow-passkey-button-text-color:var(--passflow-white);--passflow-passkey-button-background-color:var(--passflow-dark);--passflow-divider-color:var(--passflow-grey-three);--passflow-federated_button_background_color:var(--passflow-background);--passflow-federated_button_text_color:var(--passflow-dark);--passflow-focus-color:var(--passflow-primary-color);--passflow-link-color:var(--passflow-primary-color);--passflow-h1:2rem;--passflow-h2:1.5rem;--passflow-body-1:1rem;--passflow-body-2:13px;--passflow-caption:12px;--passflow-normal:400;--passflow-medium:500;--passflow-semibold:600;--passflow-bold:700;--passflow-spacing-1:4px;--passflow-spacing-2:8px;--passflow-spacing-3:12px;--passflow-spacing-4:16px;--passflow-spacing-5:20px;--passflow-spacing-6:24px}.passflow-heading{color:var(--passflow-text-color);font-size:var(--passflow-h1);margin-bottom:var(--passflow-spacing-4);font-weight:600}.passflow-text{color:var(--passflow-text-color);font-size:var(--passflow-body-1);line-height:1.5}.passflow-secondary-text{color:var(--passflow-secondary-text-color);font-size:var(--passflow-body-2)}.passflow-secondary-font{font-family:Gasoek One,sans-serif;font-style:normal}.passflow-button{cursor:pointer;font-size:var(--passflow-body-2);padding:var(--passflow-spacing-3) var(--passflow-spacing-6);border-radius:4px;justify-content:center;align-items:center;font-weight:500;transition:all .2s;display:inline-flex;position:relative;overflow:hidden}.passflow-button:focus-visible{outline:2px solid var(--passflow-focus-color);outline-offset:2px}.passflow-button--primary{background-color:var(--passflow-primary-color);color:var(--passflow-button-text-color);box-shadow:0 3px 15px #0c59dd59}.passflow-button--primary:focus-visible,.passflow-button--primary:hover{background-color:var(--passflow-primary-color)}.passflow-button--secondary{background-color:var(--passflow-white);border:1px solid var(--passflow-primary-color);color:var(--passflow-primary-color)}.passflow-button--secondary:focus-visible,.passflow-button--secondary:hover{border-color:var(--passflow-primary-color);color:var(--passflow-primary-color)}.passflow-button--outlined{background-color:var(--passflow-white);border:1px solid var(--passflow-grey-four);color:var(--passflow-dark)}.passflow-button--outlined:focus-visible,.passflow-button--outlined:hover{background-color:var(--passflow-grey-four)}.passflow-button--warning{background-color:var(--passflow-warning);color:var(--passflow-button-text-color);box-shadow:0 5px 9px #d85d5d40}.passflow-button--warning:focus-visible,.passflow-button--warning:hover{background-color:var(--passflow-warning-dark)}.passflow-button--clean{background-color:var(--passflow-white);border:none}.passflow-button--provider{background-color:var(--passflow-federated_button_background_color)}.passflow-button--provider:focus-visible,.passflow-button--provider:hover{background-color:var(--passflow-grey-four)}.passflow-button--dark{background-color:var(--passflow-dark-three);color:var(--passflow-button-text-color);box-shadow:0 3px 15px #1e1e1e59}.passflow-button--dark:focus-visible,.passflow-button--dark:hover{opacity:.9}.passflow-button--small{max-width:28px;height:28px;padding:var(--passflow-spacing-1);width:100%}.passflow-button--medium{font-size:var(--passflow-body-2);max-width:66px;height:32px;padding:7px var(--passflow-spacing-3);width:100%}.passflow-button--big{font-size:var(--passflow-body-2);min-width:40px;max-width:336px;height:48px;padding:15px var(--passflow-spacing-2);width:100%;font-weight:600}.passflow-button--dark:disabled,.passflow-button--primary:disabled,.passflow-button--warning:disabled{background-color:var(--passflow-grey-two);box-shadow:none;cursor:not-allowed}.passflow-button--outlined:disabled,.passflow-button--secondary:disabled{background-color:var(--passflow-white);border-color:var(--passflow-grey-four);color:var(--passflow-grey-two);cursor:not-allowed}.passflow-button--clean:disabled{cursor:not-allowed;opacity:.5;background-color:#0000}.passflow-button--with-icon{gap:var(--passflow-spacing-2)}.passflow-button--as-icon{width:max-content;height:max-content;padding:0}.passflow-button-go-back-error,.passflow-button-passkey,.passflow-button-passwordless,.passflow-button-resend-magic-link,.passflow-button-resend-reset-password,.passflow-button-reset-password,.passflow-button-send-reset-password,.passflow-button-signin,.passflow-button-signup{font-size:var(--passflow-body-2);font-weight:var(--passflow-semibold);margin:0 auto;line-height:18px}.passflow-button-passkey{background-color:var(--passflow-passkey-button-background-color);color:var(--passflow-passkey-button-text-color)}.passflow-button-passwordless--active{border:1px solid var(--passflow-primary-color);color:var(--passflow-primary-color);font-size:var(--passflow-body-2);font-weight:var(--passflow-semibold);background-color:#0000;line-height:18px}.passflow-button-show-country{background-color:var(--passflow-input-background-color);border-radius:4px;gap:4px;width:56px;min-width:56px;margin-left:8px;padding:12px 4px}.passflow-button-display-password{background-color:#0000}.passflow-send-reset-wrapper{flex-direction:column;gap:24px;display:flex}.passflow-button-resend-magic-link,.passflow-button-resend-reset-password{font-weight:var(--passflow-medium);max-width:196px}.passflow-button-go-back-error{font-weight:var(--passflow-medium);width:196px;max-width:100%}.passflow-button-resend-magic-link:hover{background-color:var(--passflow-grey-four)}.passflow-button-timer{background-color:var(--passflow-background-color);font-weight:var(--passflow-semibold);max-width:max-content;padding:3px;display:inline-block}.passflow-button-timer--active{color:var(--passflow-secondary-text-color);opacity:1!important}.passflow-button-timer--inactive{color:var(--passflow-primary-color)}.passflow-field{background-color:var(--passflow-input-background-color);color:var(--passflow-dark);font-size:var(--passflow-body-2);outline:1px solid var(--passflow-input-border-color);min-height:48px;padding:11px var(--passflow-spacing-3);border-radius:4px;justify-content:flex-start;align-items:center;width:100%;display:flex}.passflow-field::placeholder{color:var(--passflow-secondary-text-color)}.passflow-field--focused:focus-visible,.passflow-field-otp--focused:focus-visible{outline:1px solid var(--passflow-primary-color)}.passflow-field--error,.passflow-field-otp--error{outline:1px solid var(--passflow-warning)!important}.passflow-field:disabled{border-color:var(--passflow-input-border-color);color:var(--passflow-secondary-text-color);cursor:not-allowed}.passflow-field-otp,.passflow-field:disabled{background-color:var(--passflow-input-background-color)}.passflow-field-otp{color:var(--passflow-dark);font-size:var(--passflow-body-2);outline:1px solid var(--passflow-input-border-color);text-align:center;border-radius:4px;width:48px;height:48px}.passflow-ripple{background-color:#ffffff4d;border-radius:50%;animation:.6s linear passflow-ripple;position:absolute;transform:scale(0)}@keyframes passflow-ripple{to{opacity:0;transform:scale(4)}}@media (prefers-reduced-motion:reduce){.passflow-ripple{animation:none;display:none}}.passflow-container{max-width:1200px;padding:0 var(--passflow-spacing-4);width:100%;margin:0 auto}.passflow-flex{display:flex}.passflow-flex-col{flex-direction:column}.passflow-items-center{align-items:center}.passflow-justify-center{justify-content:center}.passflow-justify-between{justify-content:space-between}.passflow-mt-4{margin-top:var(--passflow-spacing-4)}.passflow-mb-4{margin-bottom:var(--passflow-spacing-4)}.passflow-gap-4{gap:var(--passflow-spacing-4)}.passflow-form-subscriptions{color:var(--passflow-secondary-text-color);font-size:var(--passflow-body-2);font-weight:var(--passflow-medium);text-align:center;max-width:384px;margin:-24px auto 0;display:flex}.passflow-field-wrapper{width:100%;position:relative}.passflow-field-container{flex-direction:column;gap:6px;width:100%;display:flex}.passflow-field-label{color:var(--passflow-secondary-text-color);font-size:var(--passflow-caption);font-weight:var(--passflow-medium);line-height:18px}.passflow-field-label--error{color:var(--passflow-warning)}.passflow-field-label-button{background-color:var(--passflow-card-color);color:var(--passflow-link-color);font-size:var(--passflow-caption);width:max-content;max-width:100%;text-decoration:none}.passflow-field-input,.passflow-field-label-button{font-weight:var(--passflow-medium);line-height:18px}.passflow-field-input{background-color:var(--passflow-input-background-color);color:var(--passflow-text-color);font-size:var(--passflow-body-2);outline:1px solid var(--passflow-input-border-color);min-height:48px;padding:11px var(--passflow-spacing-3);border-radius:4px;width:100%}.passflow-field-input--with-icon{padding-right:40px}.passflow-field-icon-button{width:28px;min-width:28px;height:28px;padding:6px;position:absolute;top:50%;right:0;transform:translate(-8px,-50%)}.passflow-field-error{justify-content:center;align-items:center;gap:4px;margin-top:4px;display:flex}.passflow-field-error-text{color:var(--passflow-warning);font-size:var(--passflow-caption);font-weight:var(--passflow-medium)}.passflow-field-phone-wrapper{background-color:var(--passflow-input-background-color);color:var(--passflow-text-color);font-size:var(--passflow-body-2);font-weight:var(--passflow-medium);outline:1px solid var(--passflow-input-border-color);border-radius:4px;justify-content:flex-start;align-items:center;width:100%;height:48px;display:flex;position:relative}.passflow-field-phone-wrapper--focus{outline:1px solid var(--passflow-primary-color)}.passflow-field-phone-wrapper--error{outline:1px solid var(--passflow-warning)}.passflow-field-phone-wrapper::placeholder{color:var(--passflow-secondary-text-color)}.passflow-field-phone-input{background-color:var(--passflow-input-background-color);color:var(--passflow-text-color);font-size:var(--passflow-body-2);font-weight:var(--passflow-medium);border-radius:4px;width:100%;height:48px;padding:0 8px}.passflow-field-phone-input:focus-within{outline:none}.passflow-field-country-search-wrapper{z-index:20;padding-left:28px;position:relative}.passflow-field-country-search,.passflow-field-country-search-wrapper{background-color:var(--passflow-input-background-color);border-radius:4px;width:100%}.passflow-field-country-search{color:var(--passflow-text-color);font-size:var(--passflow-body-2);font-weight:var(--passflow-medium);height:48px;padding:0 8px}.passflow-field-country-search::placeholder{color:var(--passflow-secondary-text-color);font-size:var(--passflow-body-2);font-weight:var(--passflow-medium);line-height:18px}.passflow-field-country-search:focus-visible{outline:none}.passflow-field-country-search-icon{position:absolute;top:50%;left:12px;transform:translateY(-50%)}.passflow-password-validation{flex-direction:column;gap:4px;margin-top:4px;display:flex}.passflow-password-validation-item{color:var(--passflow-secondary-text-color);font-size:var(--passflow-caption);font-weight:var(--passflow-medium);justify-content:flex-start;align-items:center;gap:4px;display:flex}.passflow-password-validation-item--success{color:var(--passflow-success)}.passflow-dialog-overlay{z-index:40;background-color:#1e1e1e80;position:fixed;inset:0}.passflow-dialog-content{z-index:50;position:fixed;top:50%;left:50%;transform:translate(-50%,-50%)}.passflow-dialog-header{text-align:center;flex-direction:column;gap:6px;display:flex}@media (width>=640px){.passflow-dialog-header{text-align:left}}.passflow-dialog-footer{flex-direction:column-reverse;gap:8px;display:flex}@media (width>=640px){.passflow-dialog-footer{flex-direction:row;justify-content:flex-end}}.passflow-dialog-title{font-size:var(--passflow-h2);font-weight:var(--passflow-semibold);letter-spacing:-.02em;line-height:1}.passflow-dialog-description{color:var(--passflow-secondary-text-color);font-size:var(--passflow-body-2)}.passflow-popover-content{background-color:var(--passflow-white);z-index:10;border-radius:4px;box-shadow:0 5px 20px #0000000d}.passflow-popover-menu{flex-direction:column;align-items:flex-start;gap:4px;width:125px;padding:6px;display:flex}.passflow-popover-menu-item{justify-content:flex-start;gap:6px;width:100%;padding:6px}.passflow-popover-menu-item:hover{background-color:var(--passflow-background)}.passflow-popover-menu-item-text{color:var(--passflow-dark-three);font-size:var(--passflow-body-2);font-weight:var(--passflow-medium)}.passflow-popover-menu-item-text--warning{color:var(--passflow-warning)}.passflow-switch-wrapper{cursor:pointer;align-items:center;gap:12px;display:inline-flex;position:relative}.passflow-switch-label{color:var(--passflow-text-color);font-size:var(--passflow-caption);font-weight:var(--passflow-medium)}.passflow-switch-input{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.passflow-switch-track{background-color:var(--passflow-grey-two);border-radius:9999px;width:28px;height:16px;transition:background-color .2s;position:relative}.passflow-switch-track:after{background-color:var(--passflow-white);content:"";border-radius:50%;width:12px;height:12px;transition:transform .2s;position:absolute;top:50%;right:14px;transform:translateY(-50%)}.passflow-switch-input:focus-visible+.passflow-switch-track{outline:2px solid var(--passflow-focus-color);outline-offset:2px}.passflow-switch-wrapper--disabled{cursor:not-allowed;opacity:.6}.passflow-switch-input:checked+.passflow-switch-track{background-color:var(--passflow-primary-color)}.passflow-switch-input:checked+.passflow-switch-track:after{transform:translate(12px,-50%)}[dir=rtl] .passflow-switch-input:checked+.passflow-switch-track:after{transform:translate(-14px,-50%)}.passflow-icon{background-color:#0000}.passflow-icon--small{width:16px;height:16px}.passflow-icon--medium{width:20px;height:20px}.passflow-icon--big{width:32px;height:32px}.passflow-icon--large{width:44px;height:44px}.passflow-icon--warning{stroke:var(--passflow-warning)}.passflow-icon--white{background-color:var(--passflow-white)}.passflow-icon--success{stroke:var(--passflow-primary-color)}.passflow-verify-otp{flex-direction:column;gap:32px;display:flex}.passflow-verify-otp-container{background-color:var(--passflow-card-color);border-radius:6px;flex-direction:column;gap:56px;padding:24px 24px 56px;display:flex;box-shadow:0 4px 15px #00000017}.passflow-verify-otp-button{background-color:var(--passflow-background);border:none;position:relative}.passflow-verify-otp-button-icon{position:absolute;top:50%;right:12px;transform:translateY(-50%)}.passflow-verify-otp-wrapper{flex-direction:column;justify-content:center;align-items:center;gap:6px;display:flex}.passflow-verify-otp-inputs{justify-content:center;align-items:center;gap:10px;display:flex}.passflow-verify-otp-error{justify-content:center;align-items:center;gap:4px;display:flex}.passflow-verify-otp-error-text{color:var(--passflow-warning);font-size:var(--passflow-caption);font-weight:var(--passflow-medium)}.passflow-verify-otp-resend{color:var(--passflow-secondary-text-color);font-size:var(--passflow-body-2);font-weight:var(--passflow-medium);text-align:center}.passflow-providers-box{flex-flow:wrap;justify-content:center;align-items:center;gap:8px;width:100%;display:flex}.passflow-providers-box--grid{grid-template-columns:repeat(auto-fit,minmax(49px,1fr));justify-content:stretch;align-items:stretch;gap:8px;display:grid}.passflow-provider-item{align-items:center;gap:8px;display:flex}.passflow-provider-text{color:var(--passflow-federated_button_text_color);font-size:var(--passflow-body-2);font-weight:var(--passflow-medium);text-transform:capitalize}.passflow-ripple-container{position:absolute;inset:0;overflow:hidden}.passflow-ripple-effect{opacity:.6;background-color:currentColor}.passflow-form{flex-direction:column;gap:32px;width:100%;max-width:384px;display:flex}.passflow-form-switch{justify-content:center;align-items:center;width:100%;margin-bottom:-8px;display:flex}.passflow-form-container{background-color:var(--passflow-card-color);border-radius:6px;gap:24px;max-width:384px;padding:24px;box-shadow:0 4px 15px #00000017}.passflow-form-container,.passflow-form-field{flex-direction:column;justify-content:flex-start;align-items:flex-start;width:100%;display:flex}.passflow-form-field{gap:6px}.passflow-form-field__header{justify-content:space-between;align-items:center;width:100%;max-height:18px;display:flex}.passflow-form-error{justify-content:center;align-items:center;gap:4px;margin-top:4px;display:flex}.passflow-form-error-text{color:var(--passflow-warning);font-size:var(--passflow-caption);font-weight:var(--passflow-medium)}.passflow-form-actions{justify-content:center;align-items:center;width:100%;max-width:336px;margin:0 auto;display:flex}.passflow-form-actions--top-space{margin-top:-8px}.passflow-form-divider{justify-content:space-between;align-items:center;width:100%;padding:9px 0;display:flex;position:relative}.passflow-form-divider__line-left,.passflow-form-divider__line-right{background-color:var(--passflow-divider-color);width:105px;height:1px}.passflow-form-divider__text{color:var(--passflow-secondary-text-color);font-size:var(--passflow-caption);font-weight:var(--passflow-medium);background-color:#0000;padding:0 15px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.passflow-form-providers{flex-direction:column;justify-content:flex-start;align-items:flex-start;gap:24px;width:100%;max-width:336px;margin:0 auto;display:flex}.passflow-link{color:var(--passflow-link-color);font-size:var(--passflow-body-2);font-weight:var(--passflow-semibold);line-height:18px}.passflow-dont-have-account,.passflow-have-account,.passflow-remember-password{color:var(--passflow-secondary-text-color);font-size:var(--passflow-body-2);font-weight:var(--passflow-medium);text-align:center;line-height:18px}.passflow-country-search-wrapper{background-color:var(--passflow-card-color);scrollbar-color:var(--passflow-secondary-text-color) transparent;scrollbar-width:thin;z-index:10;border-bottom-right-radius:4px;border-bottom-left-radius:4px;width:100%;max-height:181px;position:absolute;top:2px;left:0;overflow-y:auto;transform:translateY(48px);box-shadow:0 4px 15px #00000017}.passflow-country-search-wrapper--without-preferred{max-height:170px}.passflow-country-search-wrapper::-webkit-scrollbar{width:6px}.passflow-country-search-wrapper::-webkit-scrollbar-track{background:0 0}.passflow-country-search-wrapper::-webkit-scrollbar-thumb{background-color:var(--passflow-secondary-text-color);border-radius:3px}.passflow-country-search-wrapper--show{opacity:1;visibility:visible;transition:opacity .2s,visibility .2s;display:block}.passflow-country-search-wrapper--hidden{opacity:0;visibility:hidden;display:none}.passflow-country-search-sticky-bottom,.passflow-country-search-sticky-top{background-color:var(--passflow-card-color);z-index:10;width:100%;height:10px;position:sticky;left:0;overflow-x:hidden}.passflow-country-search-sticky-top{top:0}.passflow-country-search-sticky-bottom{bottom:0}.passflow-country-search-item{background-color:var(--passflow-card-color);cursor:pointer;justify-content:flex-start;align-items:center;width:100%;max-height:32px;padding:7px 12px;transition:background-color .2s;display:flex}.passflow-country-search-item:focus,.passflow-country-search-item:hover{background-color:var(--passflow-background)}.passflow-country-search-flag{width:24px;height:18px}.passflow-country-search-name{color:var(--passflow-text-color);margin-left:8px}.passflow-country-search-code,.passflow-country-search-name{font-size:var(--passflow-body-2);font-weight:var(--passflow-medium)}.passflow-country-search-code{color:var(--passflow-secondary-text-color);margin-left:auto;transition:color .2s}.passflow-country-search-item:hover .passflow-country-search-code{color:var(--passflow-text-color)}.passflow-country-search-divider{border-bottom:1px solid var(--passflow-divider-color);font-size:var(--passflow-caption);margin:12px 12px 6px;padding-bottom:6px}.passflow-country-search-divider,.passflow-country-search-no-matches{color:var(--passflow-secondary-text-color);font-weight:var(--passflow-medium)}.passflow-country-search-no-matches{font-size:var(--passflow-body-2);text-align:center;width:100%;margin:0 auto;padding:15px;display:block}.passflow-forgot-password-success-wrapper{flex-direction:column;gap:24px;width:100%;display:flex}.passflow-forgot-password-success-container{flex-direction:column;gap:32px;width:100%;max-width:336px;margin-top:-8px;display:flex}.passflow-forgot-password-success-text{color:var(--passflow-secondary-text-color);font-size:var(--passflow-body-2);font-weight:var(--passflow-medium);text-align:center}.passflow-forgot-password-success-text--strong{font-weight:var(--passflow-bold)}.passflow-verify-challenge-magic-link-wrapper{flex-direction:column;width:100%;margin:0 auto;display:flex}.passflow-verify-challenge-magic-link-container{flex-direction:column;gap:32px;width:100%;max-width:336px;margin-top:-24px;display:flex}.passflow-verify-challenge-magic-link-text{color:var(--passflow-secondary-text-color);font-size:var(--passflow-body-2);font-weight:var(--passflow-medium);text-align:center}.passflow-verify-challenge-magic-link-text--strong{font-weight:var(--passflow-bold)}.passflow-verify-challenge-success-wrapper{gap:32px}.passflow-verify-challenge-success-container,.passflow-verify-challenge-success-wrapper{flex-direction:column;justify-content:flex-start;align-items:center;width:100%;display:flex}.passflow-verify-challenge-success-container{gap:8px}.passflow-verify-challenge-success-text{color:var(--passflow-text-color);font-size:var(--passflow-h2);font-weight:var(--passflow-bold);text-align:center}.passflow-reset-password-text,.passflow-verify-challenge-success-text-secondary{color:var(--passflow-secondary-text-color);font-size:var(--passflow-body-2);font-weight:var(--passflow-medium);text-align:center}.passflow-reset-password-text{margin-top:-32px;display:block}.passflow-form-error--critical,.passflow-form-error--persistent{text-align:center;background-color:#fef2f2;border:1px solid #fecaca;border-radius:12px;flex-direction:column;align-items:center;gap:12px;margin-top:16px;padding:20px 24px;display:flex}.passflow-form-error--critical .icon-warning,.passflow-form-error--persistent .icon-warning{color:#dc2626;flex-shrink:0;width:32px;height:32px}.passflow-form-error-content{flex-direction:column;align-items:center;gap:16px;width:100%;display:flex}.passflow-form-error--critical .passflow-form-error-text,.passflow-form-error--persistent .passflow-form-error-text{color:#991b1b;margin:0;font-size:14px;line-height:1.5}.passflow-form-error-actions{flex-direction:column;justify-content:center;align-items:center;gap:12px;width:100%;display:flex}.passflow-button-setup-2fa{white-space:nowrap;min-width:140px}.passflow-form-info{background-color:#eff6ff;border:1px solid #bfdbfe;border-radius:12px;align-items:flex-start;gap:12px;margin-top:16px;padding:16px;display:flex}.passflow-form-info .icon-info{color:#2563eb;flex-shrink:0;width:20px;height:20px;margin-top:2px}.passflow-form-info-text{color:#1e40af;font-size:14px;line-height:1.5}.passflow-field--disabled,.passflow-field-otp--disabled{cursor:not-allowed;opacity:.5;pointer-events:none}.passflow-button-back-to-signin{white-space:nowrap;min-width:140px}.icon-info{color:#2563eb}.passflow-country-flag{color:var(--passflow-secondary-text-color);font-size:9px;font-weight:var(--passflow-bold);text-transform:uppercase;background-repeat:no-repeat;background-size:408px 384px;border-radius:2px;flex:none;justify-content:center;align-items:center;width:24px;height:18px;line-height:1;display:inline-flex;overflow:hidden}.passflow-country-flag--fallback{background-color:var(--passflow-input-background-color);outline:1px solid var(--passflow-input-border-color)}.icon-warning{filter:brightness(0)saturate()invert(17%)sepia(98%)saturate(3037%)hue-rotate(354deg)brightness(87%)contrast(90%)}.icon-white{filter:brightness(0)saturate()invert()sepia(2%)saturate(7%)hue-rotate(80deg)brightness(103%)contrast()}.passflow-icon--match-text{-webkit-mask:var(--passflow-icon-mask) center /contain no-repeat;mask:var(--passflow-icon-mask) center /contain no-repeat;background-color:currentColor;flex:none;display:inline-block}.react-international-phone-country-selector{position:relative}.react-international-phone-country-selector-button{appearance:button;background-color:var(--react-international-phone-country-selector-background-color,var(--react-international-phone-background-color,#fff));border:1px solid var(--react-international-phone-country-selector-border-color,var(--react-international-phone-border-color,#dcdcdc));box-sizing:border-box;cursor:pointer;height:var(--react-international-phone-height,36px);text-transform:none;user-select:none;justify-content:center;align-items:center;margin:0;padding:0;display:flex}.react-international-phone-country-selector-button:hover{background-color:var(--react-international-phone-country-selector-background-color-hover,#f5f5f5)}.react-international-phone-country-selector-button--hide-dropdown{cursor:auto}.react-international-phone-country-selector-button--hide-dropdown:hover{background-color:#0000}.react-international-phone-country-selector-button__button-content{justify-content:center;align-items:center;display:flex}.react-international-phone-country-selector-button__flag-emoji{margin:0 4px}.react-international-phone-country-selector-button__flag-emoji--disabled{opacity:.75}.react-international-phone-country-selector-button__dropdown-arrow{border-left:var(--react-international-phone-country-selector-arrow-size,4px) solid transparent;border-right:var(--react-international-phone-country-selector-arrow-size,4px) solid transparent;border-top:var(--react-international-phone-country-selector-arrow-size,4px) solid var(--react-international-phone-country-selector-arrow-color,#777);margin-right:4px;transition:all .1s ease-out}.react-international-phone-country-selector-button__dropdown-arrow--active{transform:rotateX(180deg)}.react-international-phone-country-selector-button__dropdown-arrow--disabled{border-top-color:var(--react-international-phone-disabled-country-selector-arrow-color,#999)}.react-international-phone-country-selector-button--disabled{cursor:auto}.react-international-phone-country-selector-button--disabled,.react-international-phone-country-selector-button--disabled:hover{background-color:var(--react-international-phone-disabled-country-selector-background-color,var(--react-international-phone-disabled-background-color,#f5f5f5))}.react-international-phone-flag-emoji{box-sizing:border-box;height:var(--react-international-phone-flag-height,24px);width:var(--react-international-phone-flag-width,24px)}.react-international-phone-country-selector-dropdown{background-color:var(--react-international-phone-dropdown-item-background-color,var(--react-international-phone-background-color,#fff));box-shadow:var(--react-international-phone-dropdown-shadow,2px 2px 16px #00000040);color:var(--react-international-phone-dropdown-item-text-color,var(--react-international-phone-text-color,#222));left:var(--react-international-phone-dropdown-left,0);max-height:200px;top:var(--react-international-phone-dropdown-top,44px);z-index:1;flex-direction:column;width:300px;margin:0;padding:4px 0;list-style:none;display:flex;position:absolute;overflow-y:scroll}.react-international-phone-country-selector-dropdown__preferred-list-divider{background:var(--react-international-phone-dropdown-preferred-list-divider-color,var(--react-international-phone-border-color,#dcdcdc));height:1px;margin:var(--react-international-phone-dropdown-preferred-list-divider-margin,0);border:none}.react-international-phone-country-selector-dropdown__list-item{box-sizing:border-box;min-height:var(--react-international-phone-dropdown-item-height,28px);align-items:center;padding:2px 8px;display:flex}.react-international-phone-country-selector-dropdown__list-item-flag-emoji{margin-right:8px}.react-international-phone-country-selector-dropdown__list-item-country-name{font-size:var(--react-international-phone-dropdown-item-font-size,14px);text-overflow:ellipsis;white-space:nowrap;margin-right:8px;overflow:hidden}.react-international-phone-country-selector-dropdown__list-item-dial-code{color:var(--react-international-phone-dropdown-item-dial-code-color,gray);font-size:var(--react-international-phone-dropdown-item-font-size,14px)}.react-international-phone-country-selector-dropdown__list-item:hover{background-color:var(--react-international-phone-selected-dropdown-item-background-color,var(--react-international-phone-selected-dropdown-item-background-color,#f5f5f5));cursor:pointer}.react-international-phone-country-selector-dropdown__list-item--focused,.react-international-phone-country-selector-dropdown__list-item--selected{background-color:var(--react-international-phone-selected-dropdown-item-background-color,#f5f5f5);color:var(--react-international-phone-selected-dropdown-item-text-color,var(--react-international-phone-text-color,#222))}.react-international-phone-country-selector-dropdown__list-item--focused .react-international-phone-country-selector-dropdown__list-item-dial-code,.react-international-phone-country-selector-dropdown__list-item--selected .react-international-phone-country-selector-dropdown__list-item-dial-code{color:var(--react-international-phone-selected-dropdown-item-dial-code-color,var(--react-international-phone-dropdown-item-dial-code-color,gray))}.react-international-phone-country-selector-dropdown__list-item--focused{background-color:var(--react-international-phone-selected-dropdown-item-background-color,var(--react-international-phone-selected-dropdown-item-background-color,#f5f5f5))}.react-international-phone-dial-code-preview{background-color:var(--react-international-phone-dial-code-preview-background-color,var(--react-international-phone-background-color,#fff));border:1px solid var(--react-international-phone-dial-code-preview-border-color,var(--react-international-phone-border-color,#dcdcdc));color:var(--react-international-phone-dial-code-preview-text-color,var(--react-international-phone-text-color,#222));font-size:var(--react-international-phone-dial-code-preview-font-size,var(--react-international-phone-font-size,13px));justify-content:center;align-items:center;margin-right:-1px;padding:0 8px;display:flex}.react-international-phone-dial-code-preview--disabled{background-color:var(--react-international-phone-dial-code-preview-disabled-background-color,var(--react-international-phone-disabled-background-color,#f5f5f5));color:var(--react-international-phone-dial-code-preview-disabled-text-color,var(--react-international-phone-disabled-text-color,#666))}.react-international-phone-input-container{display:flex}.react-international-phone-input-container .react-international-phone-country-selector-button{border-radius:var(--react-international-phone-border-radius,4px);border-top-right-radius:0;border-bottom-right-radius:0;margin-right:-1px}.react-international-phone-input-container .react-international-phone-input{background-color:var(--react-international-phone-background-color,#fff);border:1px solid var(--react-international-phone-border-color,#dcdcdc);border-radius:var(--react-international-phone-border-radius,4px);box-sizing:border-box;color:var(--react-international-phone-text-color,#222);font-family:inherit;font-size:var(--react-international-phone-font-size,13px);height:var(--react-international-phone-height,36px);border-top-left-radius:0;border-bottom-left-radius:0;margin:0;padding:0 8px;overflow:visible}.react-international-phone-input-container .react-international-phone-input:focus{outline:none}.react-international-phone-input-container .react-international-phone-input--disabled{background-color:var(--react-international-phone-disabled-background-color,#f5f5f5);color:var(--react-international-phone-disabled-text-color,#666)}#passflow-wrapper{box-sizing:border-box;-webkit-font-smoothing:antialiased;font-family:Inter,sans-serif;overflow-x:hidden}#passflow-wrapper,.passflow-wrapper{width:100%;min-height:100dvh}.passflow-wrapper{background-color:var(--passflow-background-color);background-image:var(--passflow-background-image);color:var(--passflow-text-color);background-position:50%;background-repeat:no-repeat;background-size:cover;flex-direction:column;display:flex}.passflow-branding{background-color:var(--passflow-branding-background-color);border-radius:4px;flex:none;justify-content:center;align-self:flex-end;align-items:center;gap:4px;margin:0 24px 24px;padding:7px 12px;display:flex}.passflow-branding-text{color:var(--passflow-secondary-text-color);font-size:11px;font-weight:var(--passflow-bold);line-height:18px}.passflow-branding-text-secondary{font-weight:var(--passflow-normal)}.passflow-form-main-wrapper{border-radius:6px;flex:1 0 auto;justify-content:safe center;gap:32px;padding:32px 24px}.passflow-form-main-container,.passflow-form-main-wrapper{flex-direction:column;align-items:center;width:100%;display:flex}.passflow-form-main-container{justify-content:center;gap:24px;max-width:384px;margin:0 auto}.passflow-form-header{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:8px;display:flex}.passflow-form-title{color:var(--passflow-text-color);font-size:var(--passflow-h2);font-weight:var(--passflow-bold)}.passflow-form-subtitle{color:var(--passflow-secondary-text-color);font-size:var(--passflow-body-2);font-weight:var(--passflow-medium);text-align:center}.passflow-form-main-container-logo{object-fit:contain;object-position:center;border-radius:8px;width:auto;max-width:min(160px,100%);height:auto;max-height:44px}.passflow-error-container{gap:32px;margin-top:-8px}.passflow-error-container,.passflow-error-container-text-wrapper{flex-direction:column;justify-content:start;align-items:center;display:flex}.passflow-error-container-text-wrapper{gap:8px}.passflow-error-container-text{color:var(--passflow-warning);font-size:var(--passflow-h2);font-weight:var(--passflow-bold);text-align:center}.passflow-error-container-text-secondary{color:var(--passflow-secondary-text-color);font-size:var(--passflow-body-2);font-weight:var(--passflow-medium);text-align:center}.icon-success{filter:brightness(0)saturate()invert(35%)sepia(38%)saturate(1173%)hue-rotate(106deg)brightness(90%)contrast(95%)}.passflow-login-screen-actions{gap:var(--passflow-spacing-4);max-width:336px;margin:0 auto}.passflow-login-screen-actions,.passflow-login-screen-notice{flex-direction:column;align-items:center;width:100%;display:flex}.passflow-login-screen-notice{gap:var(--passflow-spacing-3);max-width:384px}.passflow-login-screen-code{background-color:var(--passflow-input-background-color);box-sizing:border-box;color:var(--passflow-text-color);font-size:var(--passflow-h1);font-weight:var(--passflow-bold);padding:var(--passflow-spacing-4);user-select:all;border-radius:6px;width:100%}.passflow-login-screen-code,.passflow-login-screen-code-input{letter-spacing:.12em;text-align:center;font-family:ui-monospace,SFMono-Regular,SF Mono,Menlo,Consolas,monospace}.passflow-login-screen-code-input{font-size:var(--passflow-body-1);text-transform:uppercase}.passflow-login-screen-text{color:var(--passflow-text-color);font-size:var(--passflow-body-2);font-weight:var(--passflow-normal);line-height:1.5}.passflow-login-screen-centered-text{text-align:center}.passflow-login-screen-centered{text-align:center;align-items:center}.passflow-login-screen-hint{color:var(--passflow-secondary-text-color);font-size:var(--passflow-caption);font-weight:var(--passflow-medium);text-align:center;line-height:1.5}.passflow-login-screen-app-name{color:var(--passflow-text-color);font-weight:var(--passflow-semibold)}.passflow-login-screen-success{align-items:center;gap:var(--passflow-spacing-1);justify-content:center;display:flex}.passflow-login-screen-success-text{color:var(--passflow-success);font-size:var(--passflow-caption);font-weight:var(--passflow-medium)}.passflow-login-screen-spinner{border:3px solid var(--passflow-grey-three);border-top-color:var(--passflow-primary-color);border-radius:50%;width:26px;height:26px;animation:.8s linear infinite passflow-login-screen-spin}.passflow-login-screen-spinner--small{border-width:2px;width:18px;height:18px}@keyframes passflow-login-screen-spin{to{transform:rotate(1turn)}}@media (width<=480px){.passflow-form-main-wrapper{padding:24px 16px}.passflow-branding{align-self:center;margin:0 16px 16px}}@media (prefers-reduced-motion:reduce){.passflow-login-screen-spinner{animation-duration:3s}}.passflow-login-screen-status{align-items:center;gap:var(--passflow-spacing-3);flex-direction:column;width:100%;display:flex}
|
|
1
|
+
@import "https://fonts.googleapis.com/css2?family=Gasoek+One&family=Inter:opsz,wght@14..32,100..900&display=swap";[class*=passflow-]{box-sizing:border-box;font:inherit;vertical-align:baseline;border:0;margin:0;padding:0}.passflow-article,.passflow-aside,.passflow-details,.passflow-figcaption,.passflow-figure,.passflow-footer,.passflow-header,.passflow-hgroup,.passflow-menu,.passflow-nav,.passflow-section{display:block}html{scroll-behavior:smooth;font-size:16px}body{text-rendering:optimizespeed;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale;min-height:100vh;line-height:1.5}.passflow-list{list-style:none}.passflow-link{color:inherit;text-decoration:none}.passflow-canvas,.passflow-image,.passflow-picture,.passflow-svg,.passflow-video{max-width:100%;display:block}.passflow-button{background:0 0;border:none;padding:0}.passflow-button,.passflow-input,.passflow-select,.passflow-textarea{color:inherit;font:inherit}.passflow-table{border-collapse:collapse;border-spacing:0}@media (prefers-reduced-motion:reduce){[class*=passflow-]{scroll-behavior:auto!important;transition-duration:.01ms!important;animation-duration:.01ms!important;animation-iteration-count:1!important}}body,html{box-sizing:border-box;margin:0;padding:0}:root{--passflow-primary:#0c59dd;--passflow-primary-dark:#0a47b1;--passflow-warning:#b42318;--passflow-warning-dark:#8f1f17;--passflow-dark:#1e1e1e;--passflow-dark-two:#2e2e2e;--passflow-dark-three:#3e3e3e;--passflow-white:#fff;--passflow-grey-one:#5f6368;--passflow-grey-two:#bfbfbf;--passflow-grey-three:#e9eaf0;--passflow-grey-four:#f3f5f7;--passflow-background:#f8f9fb;--passflow-success:#067647;--passflow-primary-color:var(--passflow-primary);--passflow-text-color:var(--passflow-dark);--passflow-secondary-text-color:var(--passflow-grey-one);--passflow-button-text-color:var(--passflow-white);--passflow-background-color:var(--passflow-white);--passflow-background-image:url();--passflow-card-color:var(--passflow-white);--passflow-branding-background-color:var(--passflow-background);--passflow-input-background-color:var(--passflow-grey-four);--passflow-input-border-color:var(--passflow-grey-four);--passflow-passkey-button-text-color:var(--passflow-white);--passflow-passkey-button-background-color:var(--passflow-dark);--passflow-divider-color:var(--passflow-grey-three);--passflow-federated_button_background_color:var(--passflow-background);--passflow-federated_button_text_color:var(--passflow-dark);--passflow-focus-color:var(--passflow-primary-color);--passflow-link-color:var(--passflow-primary-color);--passflow-h1:2rem;--passflow-h2:1.5rem;--passflow-body-1:1rem;--passflow-body-2:13px;--passflow-caption:12px;--passflow-normal:400;--passflow-medium:500;--passflow-semibold:600;--passflow-bold:700;--passflow-spacing-1:4px;--passflow-spacing-2:8px;--passflow-spacing-3:12px;--passflow-spacing-4:16px;--passflow-spacing-5:20px;--passflow-spacing-6:24px}.passflow-heading{color:var(--passflow-text-color);font-size:var(--passflow-h1);margin-bottom:var(--passflow-spacing-4);font-weight:600}.passflow-text{color:var(--passflow-text-color);font-size:var(--passflow-body-1);line-height:1.5}.passflow-secondary-text{color:var(--passflow-secondary-text-color);font-size:var(--passflow-body-2)}.passflow-secondary-font{font-family:Gasoek One,sans-serif;font-style:normal}.passflow-button{cursor:pointer;font-size:var(--passflow-body-2);padding:var(--passflow-spacing-3) var(--passflow-spacing-6);border-radius:4px;justify-content:center;align-items:center;font-weight:500;transition:all .2s;display:inline-flex;position:relative;overflow:hidden}.passflow-button:focus-visible{outline:2px solid var(--passflow-focus-color);outline-offset:2px}.passflow-button--primary{background-color:var(--passflow-primary-color);color:var(--passflow-button-text-color);box-shadow:0 3px 15px #0c59dd59}.passflow-button--primary:focus-visible,.passflow-button--primary:hover{background-color:var(--passflow-primary-color)}.passflow-button--secondary{background-color:var(--passflow-white);border:1px solid var(--passflow-primary-color);color:var(--passflow-primary-color)}.passflow-button--secondary:focus-visible,.passflow-button--secondary:hover{border-color:var(--passflow-primary-color);color:var(--passflow-primary-color)}.passflow-button--outlined{background-color:var(--passflow-white);border:1px solid var(--passflow-grey-four);color:var(--passflow-dark)}.passflow-button--outlined:focus-visible,.passflow-button--outlined:hover{background-color:var(--passflow-grey-four)}.passflow-button--warning{background-color:var(--passflow-warning);color:var(--passflow-button-text-color);box-shadow:0 5px 9px #d85d5d40}.passflow-button--warning:focus-visible,.passflow-button--warning:hover{background-color:var(--passflow-warning-dark)}.passflow-button--clean{background-color:var(--passflow-white);border:none}.passflow-button--provider{background-color:var(--passflow-federated_button_background_color)}.passflow-button--provider:focus-visible,.passflow-button--provider:hover{background-color:var(--passflow-grey-four)}.passflow-button--dark{background-color:var(--passflow-dark-three);color:var(--passflow-button-text-color);box-shadow:0 3px 15px #1e1e1e59}.passflow-button--dark:focus-visible,.passflow-button--dark:hover{opacity:.9}.passflow-button--small{max-width:28px;height:28px;padding:var(--passflow-spacing-1);width:100%}.passflow-button--medium{font-size:var(--passflow-body-2);max-width:66px;height:32px;padding:7px var(--passflow-spacing-3);width:100%}.passflow-button--big{font-size:var(--passflow-body-2);min-width:40px;max-width:336px;height:48px;padding:15px var(--passflow-spacing-2);width:100%;font-weight:600}.passflow-button--dark:disabled,.passflow-button--primary:disabled,.passflow-button--warning:disabled{background-color:var(--passflow-grey-two);box-shadow:none;cursor:not-allowed}.passflow-button--outlined:disabled,.passflow-button--secondary:disabled{background-color:var(--passflow-white);border-color:var(--passflow-grey-four);color:var(--passflow-grey-two);cursor:not-allowed}.passflow-button--clean:disabled{cursor:not-allowed;opacity:.5;background-color:#0000}.passflow-button--with-icon{gap:var(--passflow-spacing-2)}.passflow-button--as-icon{width:max-content;height:max-content;padding:0}.passflow-button-go-back-error,.passflow-button-passkey,.passflow-button-passwordless,.passflow-button-resend-magic-link,.passflow-button-resend-reset-password,.passflow-button-reset-password,.passflow-button-send-reset-password,.passflow-button-signin,.passflow-button-signup{font-size:var(--passflow-body-2);font-weight:var(--passflow-semibold);margin:0 auto;line-height:18px}.passflow-button-passkey{background-color:var(--passflow-passkey-button-background-color);color:var(--passflow-passkey-button-text-color)}.passflow-button-passwordless--active{border:1px solid var(--passflow-primary-color);color:var(--passflow-primary-color);font-size:var(--passflow-body-2);font-weight:var(--passflow-semibold);background-color:#0000;line-height:18px}.passflow-button-show-country{background-color:var(--passflow-input-background-color);border-radius:4px;gap:4px;width:56px;min-width:56px;margin-left:8px;padding:12px 4px}.passflow-button-display-password{background-color:#0000}.passflow-send-reset-wrapper{flex-direction:column;gap:24px;display:flex}.passflow-button-resend-magic-link,.passflow-button-resend-reset-password{font-weight:var(--passflow-medium);max-width:196px}.passflow-button-go-back-error{font-weight:var(--passflow-medium);width:196px;max-width:100%}.passflow-button-resend-magic-link:hover{background-color:var(--passflow-grey-four)}.passflow-button-timer{background-color:var(--passflow-background-color);font-weight:var(--passflow-semibold);max-width:max-content;padding:3px;display:inline-block}.passflow-button-timer--active{color:var(--passflow-secondary-text-color);opacity:1!important}.passflow-button-timer--inactive{color:var(--passflow-primary-color)}.passflow-field{background-color:var(--passflow-input-background-color);color:var(--passflow-dark);font-size:var(--passflow-body-2);outline:1px solid var(--passflow-input-border-color);min-height:48px;padding:11px var(--passflow-spacing-3);border-radius:4px;justify-content:flex-start;align-items:center;width:100%;display:flex}.passflow-field::placeholder{color:var(--passflow-secondary-text-color)}.passflow-field--focused:focus-visible,.passflow-field-otp--focused:focus-visible{outline:1px solid var(--passflow-primary-color)}.passflow-field--error,.passflow-field-otp--error{outline:1px solid var(--passflow-warning)!important}.passflow-field:disabled{border-color:var(--passflow-input-border-color);color:var(--passflow-secondary-text-color);cursor:not-allowed}.passflow-field-otp,.passflow-field:disabled{background-color:var(--passflow-input-background-color)}.passflow-field-otp{color:var(--passflow-dark);font-size:var(--passflow-body-2);outline:1px solid var(--passflow-input-border-color);text-align:center;border-radius:4px;width:48px;height:48px}.passflow-ripple{background-color:#ffffff4d;border-radius:50%;animation:.6s linear passflow-ripple;position:absolute;transform:scale(0)}@keyframes passflow-ripple{to{opacity:0;transform:scale(4)}}@media (prefers-reduced-motion:reduce){.passflow-ripple{animation:none;display:none}}.passflow-container{max-width:1200px;padding:0 var(--passflow-spacing-4);width:100%;margin:0 auto}.passflow-flex{display:flex}.passflow-flex-col{flex-direction:column}.passflow-items-center{align-items:center}.passflow-justify-center{justify-content:center}.passflow-justify-between{justify-content:space-between}.passflow-mt-4{margin-top:var(--passflow-spacing-4)}.passflow-mb-4{margin-bottom:var(--passflow-spacing-4)}.passflow-gap-4{gap:var(--passflow-spacing-4)}.passflow-form-subscriptions{color:var(--passflow-secondary-text-color);font-size:var(--passflow-body-2);font-weight:var(--passflow-medium);text-align:center;max-width:384px;margin:-24px auto 0;display:flex}.passflow-field-wrapper{width:100%;position:relative}.passflow-field-container{flex-direction:column;gap:6px;width:100%;display:flex}.passflow-field-label{color:var(--passflow-secondary-text-color);font-size:var(--passflow-caption);font-weight:var(--passflow-medium);line-height:18px}.passflow-field-label--error{color:var(--passflow-warning)}.passflow-field-label-button{background-color:var(--passflow-card-color);color:var(--passflow-link-color);font-size:var(--passflow-caption);width:max-content;max-width:100%;text-decoration:none}.passflow-field-input,.passflow-field-label-button{font-weight:var(--passflow-medium);line-height:18px}.passflow-field-input{background-color:var(--passflow-input-background-color);color:var(--passflow-text-color);font-size:var(--passflow-body-2);outline:1px solid var(--passflow-input-border-color);min-height:48px;padding:11px var(--passflow-spacing-3);border-radius:4px;width:100%}.passflow-field-input--with-icon{padding-right:40px}.passflow-field-icon-button{width:28px;min-width:28px;height:28px;padding:6px;position:absolute;top:50%;right:0;transform:translate(-8px,-50%)}.passflow-field-error{justify-content:center;align-items:center;gap:4px;margin-top:4px;display:flex}.passflow-field-error-text{color:var(--passflow-warning);font-size:var(--passflow-caption);font-weight:var(--passflow-medium)}.passflow-field-phone-wrapper{background-color:var(--passflow-input-background-color);color:var(--passflow-text-color);font-size:var(--passflow-body-2);font-weight:var(--passflow-medium);outline:1px solid var(--passflow-input-border-color);border-radius:4px;justify-content:flex-start;align-items:center;width:100%;height:48px;display:flex;position:relative}.passflow-field-phone-wrapper--focus{outline:1px solid var(--passflow-primary-color)}.passflow-field-phone-wrapper--error{outline:1px solid var(--passflow-warning)}.passflow-field-phone-wrapper::placeholder{color:var(--passflow-secondary-text-color)}.passflow-field-phone-input{background-color:var(--passflow-input-background-color);color:var(--passflow-text-color);font-size:var(--passflow-body-2);font-weight:var(--passflow-medium);border-radius:4px;width:100%;height:48px;padding:0 8px}.passflow-field-phone-input:focus-within{outline:none}.passflow-field-country-search-wrapper{z-index:20;padding-left:28px;position:relative}.passflow-field-country-search,.passflow-field-country-search-wrapper{background-color:var(--passflow-input-background-color);border-radius:4px;width:100%}.passflow-field-country-search{color:var(--passflow-text-color);font-size:var(--passflow-body-2);font-weight:var(--passflow-medium);height:48px;padding:0 8px}.passflow-field-country-search::placeholder{color:var(--passflow-secondary-text-color);font-size:var(--passflow-body-2);font-weight:var(--passflow-medium);line-height:18px}.passflow-field-country-search:focus-visible{outline:none}.passflow-field-country-search-icon{position:absolute;top:50%;left:12px;transform:translateY(-50%)}.passflow-password-validation{flex-direction:column;gap:4px;margin-top:4px;display:flex}.passflow-password-validation-item{color:var(--passflow-secondary-text-color);font-size:var(--passflow-caption);font-weight:var(--passflow-medium);justify-content:flex-start;align-items:center;gap:4px;display:flex}.passflow-password-validation-item--success{color:var(--passflow-success)}.passflow-dialog-overlay{z-index:40;background-color:#1e1e1e80;position:fixed;inset:0}.passflow-dialog-content{z-index:50;position:fixed;top:50%;left:50%;transform:translate(-50%,-50%)}.passflow-dialog-header{text-align:center;flex-direction:column;gap:6px;display:flex}@media (width>=640px){.passflow-dialog-header{text-align:left}}.passflow-dialog-footer{flex-direction:column-reverse;gap:8px;display:flex}@media (width>=640px){.passflow-dialog-footer{flex-direction:row;justify-content:flex-end}}.passflow-dialog-title{font-size:var(--passflow-h2);font-weight:var(--passflow-semibold);letter-spacing:-.02em;line-height:1}.passflow-dialog-description{color:var(--passflow-secondary-text-color);font-size:var(--passflow-body-2)}.passflow-popover-content{background-color:var(--passflow-white);z-index:10;border-radius:4px;box-shadow:0 5px 20px #0000000d}.passflow-popover-menu{flex-direction:column;align-items:flex-start;gap:4px;width:125px;padding:6px;display:flex}.passflow-popover-menu-item{justify-content:flex-start;gap:6px;width:100%;padding:6px}.passflow-popover-menu-item:hover{background-color:var(--passflow-background)}.passflow-popover-menu-item-text{color:var(--passflow-dark-three);font-size:var(--passflow-body-2);font-weight:var(--passflow-medium)}.passflow-popover-menu-item-text--warning{color:var(--passflow-warning)}.passflow-switch-wrapper{cursor:pointer;align-items:center;gap:12px;display:inline-flex;position:relative}.passflow-switch-label{color:var(--passflow-text-color);font-size:var(--passflow-caption);font-weight:var(--passflow-medium)}.passflow-switch-input{clip:rect(0,0,0,0);white-space:nowrap;border:0;width:1px;height:1px;margin:-1px;padding:0;position:absolute;overflow:hidden}.passflow-switch-track{background-color:var(--passflow-grey-two);border-radius:9999px;width:28px;height:16px;transition:background-color .2s;position:relative}.passflow-switch-track:after{background-color:var(--passflow-white);content:"";border-radius:50%;width:12px;height:12px;transition:transform .2s;position:absolute;top:50%;right:14px;transform:translateY(-50%)}.passflow-switch-input:focus-visible+.passflow-switch-track{outline:2px solid var(--passflow-focus-color);outline-offset:2px}.passflow-switch-wrapper--disabled{cursor:not-allowed;opacity:.6}.passflow-switch-input:checked+.passflow-switch-track{background-color:var(--passflow-primary-color)}.passflow-switch-input:checked+.passflow-switch-track:after{transform:translate(12px,-50%)}[dir=rtl] .passflow-switch-input:checked+.passflow-switch-track:after{transform:translate(-14px,-50%)}.passflow-icon{background-color:#0000}.passflow-icon--small{width:16px;height:16px}.passflow-icon--medium{width:20px;height:20px}.passflow-icon--big{width:32px;height:32px}.passflow-icon--large{width:44px;height:44px}.passflow-icon--warning{stroke:var(--passflow-warning)}.passflow-icon--white{background-color:var(--passflow-white)}.passflow-icon--success{stroke:var(--passflow-primary-color)}.passflow-verify-otp{flex-direction:column;gap:32px;display:flex}.passflow-verify-otp-container{background-color:var(--passflow-card-color);border-radius:6px;flex-direction:column;gap:56px;padding:24px 24px 56px;display:flex;box-shadow:0 4px 15px #00000017}.passflow-verify-otp-button{background-color:var(--passflow-background);border:none;position:relative}.passflow-verify-otp-button-icon{position:absolute;top:50%;right:12px;transform:translateY(-50%)}.passflow-verify-otp-wrapper{flex-direction:column;justify-content:center;align-items:center;gap:6px;display:flex}.passflow-verify-otp-inputs{justify-content:center;align-items:center;gap:10px;display:flex}.passflow-verify-otp-error{justify-content:center;align-items:center;gap:4px;display:flex}.passflow-verify-otp-error-text{color:var(--passflow-warning);font-size:var(--passflow-caption);font-weight:var(--passflow-medium)}.passflow-verify-otp-resend{color:var(--passflow-secondary-text-color);font-size:var(--passflow-body-2);font-weight:var(--passflow-medium);text-align:center}.passflow-providers-box{flex-flow:wrap;justify-content:center;align-items:center;gap:8px;width:100%;display:flex}.passflow-providers-box--grid{grid-template-columns:repeat(auto-fit,minmax(49px,1fr));justify-content:stretch;align-items:stretch;gap:8px;display:grid}.passflow-provider-item{align-items:center;gap:8px;display:flex}.passflow-provider-text{color:var(--passflow-federated_button_text_color);font-size:var(--passflow-body-2);font-weight:var(--passflow-medium);text-transform:capitalize}.passflow-ripple-container{position:absolute;inset:0;overflow:hidden}.passflow-ripple-effect{opacity:.6;background-color:currentColor}.passflow-form{flex-direction:column;gap:32px;width:100%;max-width:384px;display:flex}.passflow-form-switch{justify-content:center;align-items:center;width:100%;margin-bottom:-8px;display:flex}.passflow-form-container{background-color:var(--passflow-card-color);border-radius:6px;gap:24px;max-width:384px;padding:24px;box-shadow:0 4px 15px #00000017}.passflow-form-container,.passflow-form-field{flex-direction:column;justify-content:flex-start;align-items:flex-start;width:100%;display:flex}.passflow-form-field{gap:6px}.passflow-form-field__header{justify-content:space-between;align-items:center;width:100%;max-height:18px;display:flex}.passflow-form-error{justify-content:center;align-items:center;gap:4px;margin-top:4px;display:flex}.passflow-form-error-text{color:var(--passflow-warning);font-size:var(--passflow-caption);font-weight:var(--passflow-medium)}.passflow-form-actions{justify-content:center;align-items:center;width:100%;max-width:336px;margin:0 auto;display:flex}.passflow-form-actions--top-space{margin-top:-8px}.passflow-form-divider{justify-content:space-between;align-items:center;width:100%;padding:9px 0;display:flex;position:relative}.passflow-form-divider__line-left,.passflow-form-divider__line-right{background-color:var(--passflow-divider-color);width:105px;height:1px}.passflow-form-divider__text{color:var(--passflow-secondary-text-color);font-size:var(--passflow-caption);font-weight:var(--passflow-medium);background-color:#0000;padding:0 15px;position:absolute;top:50%;left:50%;transform:translate(-50%,-50%)}.passflow-form-providers{flex-direction:column;justify-content:flex-start;align-items:flex-start;gap:24px;width:100%;max-width:336px;margin:0 auto;display:flex}.passflow-link{color:var(--passflow-link-color);font-size:var(--passflow-body-2);font-weight:var(--passflow-semibold);line-height:18px}.passflow-dont-have-account,.passflow-have-account,.passflow-remember-password{color:var(--passflow-secondary-text-color);font-size:var(--passflow-body-2);font-weight:var(--passflow-medium);text-align:center;line-height:18px}.passflow-country-search-wrapper{background-color:var(--passflow-card-color);scrollbar-color:var(--passflow-secondary-text-color) transparent;scrollbar-width:thin;z-index:10;border-bottom-right-radius:4px;border-bottom-left-radius:4px;width:100%;max-height:181px;position:absolute;top:2px;left:0;overflow-y:auto;transform:translateY(48px);box-shadow:0 4px 15px #00000017}.passflow-country-search-wrapper--without-preferred{max-height:170px}.passflow-country-search-wrapper::-webkit-scrollbar{width:6px}.passflow-country-search-wrapper::-webkit-scrollbar-track{background:0 0}.passflow-country-search-wrapper::-webkit-scrollbar-thumb{background-color:var(--passflow-secondary-text-color);border-radius:3px}.passflow-country-search-wrapper--show{opacity:1;visibility:visible;transition:opacity .2s,visibility .2s;display:block}.passflow-country-search-wrapper--hidden{opacity:0;visibility:hidden;display:none}.passflow-country-search-sticky-bottom,.passflow-country-search-sticky-top{background-color:var(--passflow-card-color);z-index:10;width:100%;height:10px;position:sticky;left:0;overflow-x:hidden}.passflow-country-search-sticky-top{top:0}.passflow-country-search-sticky-bottom{bottom:0}.passflow-country-search-item{background-color:var(--passflow-card-color);cursor:pointer;justify-content:flex-start;align-items:center;width:100%;max-height:32px;padding:7px 12px;transition:background-color .2s;display:flex}.passflow-country-search-item:focus,.passflow-country-search-item:hover{background-color:var(--passflow-background)}.passflow-country-search-flag{width:24px;height:18px}.passflow-country-search-name{color:var(--passflow-text-color);margin-left:8px}.passflow-country-search-code,.passflow-country-search-name{font-size:var(--passflow-body-2);font-weight:var(--passflow-medium)}.passflow-country-search-code{color:var(--passflow-secondary-text-color);margin-left:auto;transition:color .2s}.passflow-country-search-item:hover .passflow-country-search-code{color:var(--passflow-text-color)}.passflow-country-search-divider{border-bottom:1px solid var(--passflow-divider-color);font-size:var(--passflow-caption);margin:12px 12px 6px;padding-bottom:6px}.passflow-country-search-divider,.passflow-country-search-no-matches{color:var(--passflow-secondary-text-color);font-weight:var(--passflow-medium)}.passflow-country-search-no-matches{font-size:var(--passflow-body-2);text-align:center;width:100%;margin:0 auto;padding:15px;display:block}.passflow-forgot-password-success-wrapper{flex-direction:column;gap:24px;width:100%;display:flex}.passflow-forgot-password-success-container{flex-direction:column;gap:32px;width:100%;max-width:336px;margin-top:-8px;display:flex}.passflow-forgot-password-success-text{color:var(--passflow-secondary-text-color);font-size:var(--passflow-body-2);font-weight:var(--passflow-medium);text-align:center}.passflow-forgot-password-success-text--strong{font-weight:var(--passflow-bold)}.passflow-verify-challenge-magic-link-wrapper{flex-direction:column;width:100%;margin:0 auto;display:flex}.passflow-verify-challenge-magic-link-container{flex-direction:column;gap:32px;width:100%;max-width:336px;margin-top:-24px;display:flex}.passflow-verify-challenge-magic-link-text{color:var(--passflow-secondary-text-color);font-size:var(--passflow-body-2);font-weight:var(--passflow-medium);text-align:center}.passflow-verify-challenge-magic-link-text--strong{font-weight:var(--passflow-bold)}.passflow-verify-challenge-success-wrapper{gap:32px}.passflow-verify-challenge-success-container,.passflow-verify-challenge-success-wrapper{flex-direction:column;justify-content:flex-start;align-items:center;width:100%;display:flex}.passflow-verify-challenge-success-container{gap:8px}.passflow-verify-challenge-success-text{color:var(--passflow-text-color);font-size:var(--passflow-h2);font-weight:var(--passflow-bold);text-align:center}.passflow-reset-password-text,.passflow-verify-challenge-success-text-secondary{color:var(--passflow-secondary-text-color);font-size:var(--passflow-body-2);font-weight:var(--passflow-medium);text-align:center}.passflow-reset-password-text{margin-top:-32px;display:block}.passflow-form-error--critical,.passflow-form-error--persistent{text-align:center;background-color:#fef2f2;border:1px solid #fecaca;border-radius:12px;flex-direction:column;align-items:center;gap:12px;margin-top:16px;padding:20px 24px;display:flex}.passflow-form-error--critical .icon-warning,.passflow-form-error--persistent .icon-warning{color:#dc2626;flex-shrink:0;width:32px;height:32px}.passflow-form-error-content{flex-direction:column;align-items:center;gap:16px;width:100%;display:flex}.passflow-form-error--critical .passflow-form-error-text,.passflow-form-error--persistent .passflow-form-error-text{color:#991b1b;margin:0;font-size:14px;line-height:1.5}.passflow-form-error-actions{flex-direction:column;justify-content:center;align-items:center;gap:12px;width:100%;display:flex}.passflow-button-setup-2fa{white-space:nowrap;min-width:140px}.passflow-form-info{background-color:#eff6ff;border:1px solid #bfdbfe;border-radius:12px;align-items:flex-start;gap:12px;margin-top:16px;padding:16px;display:flex}.passflow-form-info .icon-info{color:#2563eb;flex-shrink:0;width:20px;height:20px;margin-top:2px}.passflow-form-info-text{color:#1e40af;font-size:14px;line-height:1.5}.passflow-field--disabled,.passflow-field-otp--disabled{cursor:not-allowed;opacity:.5;pointer-events:none}.passflow-button-back-to-signin{white-space:nowrap;min-width:140px}.icon-info{color:#2563eb}.passflow-country-flag{color:var(--passflow-secondary-text-color);font-size:9px;font-weight:var(--passflow-bold);text-transform:uppercase;background-repeat:no-repeat;background-size:408px 384px;border-radius:2px;flex:none;justify-content:center;align-items:center;width:24px;height:18px;line-height:1;display:inline-flex;overflow:hidden}.passflow-country-flag--fallback{background-color:var(--passflow-input-background-color);outline:1px solid var(--passflow-input-border-color)}.icon-warning{filter:brightness(0)saturate()invert(17%)sepia(98%)saturate(3037%)hue-rotate(354deg)brightness(87%)contrast(90%)}.icon-white{filter:brightness(0)saturate()invert()sepia(2%)saturate(7%)hue-rotate(80deg)brightness(103%)contrast()}.passflow-icon--match-text{-webkit-mask:var(--passflow-icon-mask) center /contain no-repeat;mask:var(--passflow-icon-mask) center /contain no-repeat;background-color:currentColor;flex:none;display:inline-block}.react-international-phone-country-selector{position:relative}.react-international-phone-country-selector-button{appearance:button;background-color:var(--react-international-phone-country-selector-background-color,var(--react-international-phone-background-color,#fff));border:1px solid var(--react-international-phone-country-selector-border-color,var(--react-international-phone-border-color,#dcdcdc));box-sizing:border-box;cursor:pointer;height:var(--react-international-phone-height,36px);text-transform:none;user-select:none;justify-content:center;align-items:center;margin:0;padding:0;display:flex}.react-international-phone-country-selector-button:hover{background-color:var(--react-international-phone-country-selector-background-color-hover,#f5f5f5)}.react-international-phone-country-selector-button--hide-dropdown{cursor:auto}.react-international-phone-country-selector-button--hide-dropdown:hover{background-color:#0000}.react-international-phone-country-selector-button__button-content{justify-content:center;align-items:center;display:flex}.react-international-phone-country-selector-button__flag-emoji{margin:0 4px}.react-international-phone-country-selector-button__flag-emoji--disabled{opacity:.75}.react-international-phone-country-selector-button__dropdown-arrow{border-left:var(--react-international-phone-country-selector-arrow-size,4px) solid transparent;border-right:var(--react-international-phone-country-selector-arrow-size,4px) solid transparent;border-top:var(--react-international-phone-country-selector-arrow-size,4px) solid var(--react-international-phone-country-selector-arrow-color,#777);margin-right:4px;transition:all .1s ease-out}.react-international-phone-country-selector-button__dropdown-arrow--active{transform:rotateX(180deg)}.react-international-phone-country-selector-button__dropdown-arrow--disabled{border-top-color:var(--react-international-phone-disabled-country-selector-arrow-color,#999)}.react-international-phone-country-selector-button--disabled{cursor:auto}.react-international-phone-country-selector-button--disabled,.react-international-phone-country-selector-button--disabled:hover{background-color:var(--react-international-phone-disabled-country-selector-background-color,var(--react-international-phone-disabled-background-color,#f5f5f5))}.react-international-phone-flag-emoji{box-sizing:border-box;height:var(--react-international-phone-flag-height,24px);width:var(--react-international-phone-flag-width,24px)}.react-international-phone-country-selector-dropdown{background-color:var(--react-international-phone-dropdown-item-background-color,var(--react-international-phone-background-color,#fff));box-shadow:var(--react-international-phone-dropdown-shadow,2px 2px 16px #00000040);color:var(--react-international-phone-dropdown-item-text-color,var(--react-international-phone-text-color,#222));left:var(--react-international-phone-dropdown-left,0);max-height:200px;top:var(--react-international-phone-dropdown-top,44px);z-index:1;flex-direction:column;width:300px;margin:0;padding:4px 0;list-style:none;display:flex;position:absolute;overflow-y:scroll}.react-international-phone-country-selector-dropdown__preferred-list-divider{background:var(--react-international-phone-dropdown-preferred-list-divider-color,var(--react-international-phone-border-color,#dcdcdc));height:1px;margin:var(--react-international-phone-dropdown-preferred-list-divider-margin,0);border:none}.react-international-phone-country-selector-dropdown__list-item{box-sizing:border-box;min-height:var(--react-international-phone-dropdown-item-height,28px);align-items:center;padding:2px 8px;display:flex}.react-international-phone-country-selector-dropdown__list-item-flag-emoji{margin-right:8px}.react-international-phone-country-selector-dropdown__list-item-country-name{font-size:var(--react-international-phone-dropdown-item-font-size,14px);text-overflow:ellipsis;white-space:nowrap;margin-right:8px;overflow:hidden}.react-international-phone-country-selector-dropdown__list-item-dial-code{color:var(--react-international-phone-dropdown-item-dial-code-color,gray);font-size:var(--react-international-phone-dropdown-item-font-size,14px)}.react-international-phone-country-selector-dropdown__list-item:hover{background-color:var(--react-international-phone-selected-dropdown-item-background-color,var(--react-international-phone-selected-dropdown-item-background-color,#f5f5f5));cursor:pointer}.react-international-phone-country-selector-dropdown__list-item--focused,.react-international-phone-country-selector-dropdown__list-item--selected{background-color:var(--react-international-phone-selected-dropdown-item-background-color,#f5f5f5);color:var(--react-international-phone-selected-dropdown-item-text-color,var(--react-international-phone-text-color,#222))}.react-international-phone-country-selector-dropdown__list-item--focused .react-international-phone-country-selector-dropdown__list-item-dial-code,.react-international-phone-country-selector-dropdown__list-item--selected .react-international-phone-country-selector-dropdown__list-item-dial-code{color:var(--react-international-phone-selected-dropdown-item-dial-code-color,var(--react-international-phone-dropdown-item-dial-code-color,gray))}.react-international-phone-country-selector-dropdown__list-item--focused{background-color:var(--react-international-phone-selected-dropdown-item-background-color,var(--react-international-phone-selected-dropdown-item-background-color,#f5f5f5))}.react-international-phone-dial-code-preview{background-color:var(--react-international-phone-dial-code-preview-background-color,var(--react-international-phone-background-color,#fff));border:1px solid var(--react-international-phone-dial-code-preview-border-color,var(--react-international-phone-border-color,#dcdcdc));color:var(--react-international-phone-dial-code-preview-text-color,var(--react-international-phone-text-color,#222));font-size:var(--react-international-phone-dial-code-preview-font-size,var(--react-international-phone-font-size,13px));justify-content:center;align-items:center;margin-right:-1px;padding:0 8px;display:flex}.react-international-phone-dial-code-preview--disabled{background-color:var(--react-international-phone-dial-code-preview-disabled-background-color,var(--react-international-phone-disabled-background-color,#f5f5f5));color:var(--react-international-phone-dial-code-preview-disabled-text-color,var(--react-international-phone-disabled-text-color,#666))}.react-international-phone-input-container{display:flex}.react-international-phone-input-container .react-international-phone-country-selector-button{border-radius:var(--react-international-phone-border-radius,4px);border-top-right-radius:0;border-bottom-right-radius:0;margin-right:-1px}.react-international-phone-input-container .react-international-phone-input{background-color:var(--react-international-phone-background-color,#fff);border:1px solid var(--react-international-phone-border-color,#dcdcdc);border-radius:var(--react-international-phone-border-radius,4px);box-sizing:border-box;color:var(--react-international-phone-text-color,#222);font-family:inherit;font-size:var(--react-international-phone-font-size,13px);height:var(--react-international-phone-height,36px);border-top-left-radius:0;border-bottom-left-radius:0;margin:0;padding:0 8px;overflow:visible}.react-international-phone-input-container .react-international-phone-input:focus{outline:none}.react-international-phone-input-container .react-international-phone-input--disabled{background-color:var(--react-international-phone-disabled-background-color,#f5f5f5);color:var(--react-international-phone-disabled-text-color,#666)}#passflow-wrapper{box-sizing:border-box;-webkit-font-smoothing:antialiased;font-family:Inter,sans-serif;overflow-x:hidden}#passflow-wrapper,.passflow-wrapper{width:100%;min-height:100dvh}.passflow-wrapper{background-color:var(--passflow-background-color);background-image:var(--passflow-background-image);color:var(--passflow-text-color);background-position:50%;background-repeat:no-repeat;background-size:cover;flex-direction:column;display:flex}.passflow-branding{background-color:var(--passflow-branding-background-color);border-radius:4px;flex:none;justify-content:center;align-self:flex-end;align-items:center;gap:4px;margin:0 24px 24px;padding:7px 12px;display:flex}.passflow-branding-text{color:var(--passflow-secondary-text-color);font-size:11px;font-weight:var(--passflow-bold);line-height:18px}.passflow-branding-text-secondary{font-weight:var(--passflow-normal)}.passflow-form-main-wrapper{border-radius:6px;flex:1 0 auto;justify-content:safe center;gap:32px;padding:32px 24px}.passflow-form-main-container,.passflow-form-main-wrapper{flex-direction:column;align-items:center;width:100%;display:flex}.passflow-form-main-container{justify-content:center;gap:24px;max-width:384px;margin:0 auto}.passflow-form-header{text-align:center;flex-direction:column;justify-content:center;align-items:center;gap:8px;display:flex}.passflow-form-title{color:var(--passflow-text-color);font-size:var(--passflow-h2);font-weight:var(--passflow-bold)}.passflow-form-subtitle{color:var(--passflow-secondary-text-color);font-size:var(--passflow-body-2);font-weight:var(--passflow-medium);text-align:center}.passflow-form-main-container-logo{object-fit:contain;object-position:center;border-radius:8px;width:auto;max-width:min(160px,100%);height:auto;max-height:44px}.passflow-error-container{gap:32px;margin-top:-8px}.passflow-error-container,.passflow-error-container-text-wrapper{flex-direction:column;justify-content:start;align-items:center;display:flex}.passflow-error-container-text-wrapper{gap:8px}.passflow-error-container-text{color:var(--passflow-warning);font-size:var(--passflow-h2);font-weight:var(--passflow-bold);text-align:center}.passflow-error-container-text-secondary{color:var(--passflow-secondary-text-color);font-size:var(--passflow-body-2);font-weight:var(--passflow-medium);text-align:center}.icon-success{filter:brightness(0)saturate()invert(35%)sepia(38%)saturate(1173%)hue-rotate(106deg)brightness(90%)contrast(95%)}.passflow-login-screen-actions{gap:var(--passflow-spacing-4);max-width:336px;margin:0 auto}.passflow-login-screen-actions,.passflow-login-screen-notice{flex-direction:column;align-items:center;width:100%;display:flex}.passflow-login-screen-notice{gap:var(--passflow-spacing-3);max-width:384px}.passflow-login-screen-code{background-color:var(--passflow-input-background-color);box-sizing:border-box;color:var(--passflow-text-color);font-size:var(--passflow-h1);font-weight:var(--passflow-bold);padding:var(--passflow-spacing-4);user-select:all;border-radius:6px;width:100%}.passflow-login-screen-code,.passflow-login-screen-code-input{letter-spacing:.12em;text-align:center;font-family:ui-monospace,SFMono-Regular,SF Mono,Menlo,Consolas,monospace}.passflow-login-screen-code-input{font-size:var(--passflow-body-1);text-transform:uppercase}.passflow-login-screen-text{color:var(--passflow-text-color);font-size:var(--passflow-body-2);font-weight:var(--passflow-normal);line-height:1.5}.passflow-login-screen-centered-text{text-align:center}.passflow-login-screen-centered{text-align:center;align-items:center}.passflow-login-screen-hint{color:var(--passflow-secondary-text-color);font-size:var(--passflow-caption);font-weight:var(--passflow-medium);text-align:center;line-height:1.5}.passflow-login-screen-app-name{color:var(--passflow-text-color);font-weight:var(--passflow-semibold)}.passflow-login-screen-success{align-items:center;gap:var(--passflow-spacing-1);justify-content:center;display:flex}.passflow-login-screen-success-text{color:var(--passflow-success);font-size:var(--passflow-caption);font-weight:var(--passflow-medium)}.passflow-login-screen-spinner{border:3px solid var(--passflow-grey-three);border-top-color:var(--passflow-primary-color);border-radius:50%;width:26px;height:26px;animation:.8s linear infinite passflow-login-screen-spin}.passflow-login-screen-spinner--small{border-width:2px;width:18px;height:18px}@keyframes passflow-login-screen-spin{to{transform:rotate(1turn)}}@media (width<=480px){.passflow-form-main-wrapper{padding:24px 16px}.passflow-branding{align-self:center;margin:0 16px 16px}}@media (prefers-reduced-motion:reduce){.passflow-login-screen-spinner{animation-duration:3s}}.passflow-login-screen-status{align-items:center;gap:var(--passflow-spacing-3);flex-direction:column;width:100%;display:flex}.passflow-consent-scopes{gap:var(--passflow-spacing-2);flex-direction:column;width:100%;max-width:384px;margin:0 auto;padding:0;list-style:none;display:flex}.passflow-consent-scope{background-color:var(--passflow-card-color);border:1px solid var(--passflow-divider-color);box-sizing:border-box;gap:var(--passflow-spacing-1);padding:var(--passflow-spacing-3) var(--passflow-spacing-4);text-align:left;border-radius:6px;flex-direction:column;display:flex}.passflow-consent-scope-description{color:var(--passflow-secondary-text-color);font-size:var(--passflow-caption);font-weight:var(--passflow-normal);margin:0;line-height:1.5}.passflow-consent-actions{gap:var(--passflow-spacing-2);flex-direction:column;width:100%;max-width:336px;margin:0 auto;display:flex}
|
|
2
2
|
/*$vite$:1*/
|
package/package.json
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@passflow/react",
|
|
3
3
|
"description": "Passflow React UI Kit",
|
|
4
|
-
"version": "0.
|
|
4
|
+
"version": "0.9.0",
|
|
5
5
|
"type": "module",
|
|
6
6
|
"files": [
|
|
7
7
|
"dist",
|
|
@@ -69,7 +69,7 @@
|
|
|
69
69
|
"devDependencies": {
|
|
70
70
|
"@axe-core/playwright": "4.12.1",
|
|
71
71
|
"@biomejs/biome": "^1.9.4",
|
|
72
|
-
"@playwright/test": "^1.
|
|
72
|
+
"@playwright/test": "^1.64.1",
|
|
73
73
|
"@storybook/addon-a11y": "10.5.1",
|
|
74
74
|
"@storybook/addon-docs": "10.5.1",
|
|
75
75
|
"@storybook/addon-themes": "10.5.1",
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/components/form/cli-auth/index.tsx"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,EAAE,EAAE,MAAM,OAAO,CAAC;AAChC,OAAO,EAAE,KAAK,cAAc,EAA0B,MAAM,UAAU,CAAC;AAEvE,MAAM,MAAM,iBAAiB,GAAG;IAC9B,SAAS,EAAE,MAAM,CAAC;IAClB,OAAO,EAAE,cAAc,CAAC;CACzB,CAAC;AAEF,eAAO,MAAM,YAAY,EAAE,EAAE,CAAC,iBAAiB,CAG9C,CAAC"}
|
|
@@ -1,5 +0,0 @@
|
|
|
1
|
-
import { LoginScreenProps } from '../../ui';
|
|
2
|
-
import { UseCLIAuthProps } from '../../../hooks/use-cli-auth';
|
|
3
|
-
export type CLIAuthSurface = 'browser' | 'qr';
|
|
4
|
-
export declare const getCLILoginScreenProps: (cli: UseCLIAuthProps, surface: CLIAuthSurface) => LoginScreenProps;
|
|
5
|
-
//# sourceMappingURL=screen.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"screen.d.ts","sourceRoot":"","sources":["../../../../../src/components/form/cli-auth/screen.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,iBAAiB,CAAC;AACxD,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,sBAAsB,CAAC;AAE5D,MAAM,MAAM,cAAc,GAAG,SAAS,GAAG,IAAI,CAAC;AAe9C,eAAO,MAAM,sBAAsB,GAAI,KAAK,eAAe,EAAE,SAAS,cAAc,KAAG,gBAkFtF,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/components/form/cli-browser-auth/index.tsx"],"names":[],"mappings":"AAgBA,eAAO,MAAM,cAAc,mDAAgD,CAAC"}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../../src/components/form/cli-qr-auth/index.tsx"],"names":[],"mappings":"AAgBA,eAAO,MAAM,SAAS,mDAA2C,CAAC"}
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
export type CLIAuthState = 'loading' | 'pending' | 'authenticating' | 'completed' | 'expired' | 'error';
|
|
2
|
-
export type UseCLIAuthProps = {
|
|
3
|
-
authenticate: () => Promise<void>;
|
|
4
|
-
state: CLIAuthState;
|
|
5
|
-
error: string | null;
|
|
6
|
-
expiresAt: string | null;
|
|
7
|
-
};
|
|
8
|
-
export declare const useCLIAuth: (sessionId: string) => UseCLIAuthProps;
|
|
9
|
-
//# sourceMappingURL=use-cli-auth.d.ts.map
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
{"version":3,"file":"use-cli-auth.d.ts","sourceRoot":"","sources":["../../../src/hooks/use-cli-auth.ts"],"names":[],"mappings":"AAGA,MAAM,MAAM,YAAY,GAAG,SAAS,GAAG,SAAS,GAAG,gBAAgB,GAAG,WAAW,GAAG,SAAS,GAAG,OAAO,CAAC;AAExG,MAAM,MAAM,eAAe,GAAG;IAC5B,YAAY,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,CAAC;IAClC,KAAK,EAAE,YAAY,CAAC;IACpB,KAAK,EAAE,MAAM,GAAG,IAAI,CAAC;IACrB,SAAS,EAAE,MAAM,GAAG,IAAI,CAAC;CAC1B,CAAC;AAEF,eAAO,MAAM,UAAU,GAAI,WAAW,MAAM,KAAG,eAmI9C,CAAC"}
|