@passflow/react 0.0.1

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.
Files changed (182) hide show
  1. package/README.md +844 -0
  2. package/dist/index.cjs.js +34 -0
  3. package/dist/index.cjs.js.map +1 -0
  4. package/dist/index.es.js +5098 -0
  5. package/dist/index.es.js.map +1 -0
  6. package/dist/playwright/fixture/index.d.ts +3 -0
  7. package/dist/playwright/fixture/index.d.ts.map +1 -0
  8. package/dist/playwright/playwright.config.d.ts +10 -0
  9. package/dist/playwright/playwright.config.d.ts.map +1 -0
  10. package/dist/playwright/tests/invitation-flow.spec.d.ts +2 -0
  11. package/dist/playwright/tests/invitation-flow.spec.d.ts.map +1 -0
  12. package/dist/playwright/tests/signin.spec.d.ts +2 -0
  13. package/dist/playwright/tests/signin.spec.d.ts.map +1 -0
  14. package/dist/playwright/tests/signup.spec.d.ts +2 -0
  15. package/dist/playwright/tests/signup.spec.d.ts.map +1 -0
  16. package/dist/playwright/tests/validate.spec.d.ts +2 -0
  17. package/dist/playwright/tests/validate.spec.d.ts.map +1 -0
  18. package/dist/src/app.d.ts +5 -0
  19. package/dist/src/app.d.ts.map +1 -0
  20. package/dist/src/components/error/index.d.ts +7 -0
  21. package/dist/src/components/error/index.d.ts.map +1 -0
  22. package/dist/src/components/flow/index.d.ts +2 -0
  23. package/dist/src/components/flow/index.d.ts.map +1 -0
  24. package/dist/src/components/flow/passflow/index.d.ts +12 -0
  25. package/dist/src/components/flow/passflow/index.d.ts.map +1 -0
  26. package/dist/src/components/form/forgot-password/forgot-password-success.d.ts +2 -0
  27. package/dist/src/components/form/forgot-password/forgot-password-success.d.ts.map +1 -0
  28. package/dist/src/components/form/forgot-password/forgot-password.d.ts +9 -0
  29. package/dist/src/components/form/forgot-password/forgot-password.d.ts.map +1 -0
  30. package/dist/src/components/form/forgot-password/index.d.ts +3 -0
  31. package/dist/src/components/form/forgot-password/index.d.ts.map +1 -0
  32. package/dist/src/components/form/index.d.ts +8 -0
  33. package/dist/src/components/form/index.d.ts.map +1 -0
  34. package/dist/src/components/form/invitation-join/index.d.ts +8 -0
  35. package/dist/src/components/form/invitation-join/index.d.ts.map +1 -0
  36. package/dist/src/components/form/reset-password/index.d.ts +8 -0
  37. package/dist/src/components/form/reset-password/index.d.ts.map +1 -0
  38. package/dist/src/components/form/signin/index.d.ts +14 -0
  39. package/dist/src/components/form/signin/index.d.ts.map +1 -0
  40. package/dist/src/components/form/signup/index.d.ts +13 -0
  41. package/dist/src/components/form/signup/index.d.ts.map +1 -0
  42. package/dist/src/components/form/verify-challenge/index.d.ts +3 -0
  43. package/dist/src/components/form/verify-challenge/index.d.ts.map +1 -0
  44. package/dist/src/components/form/verify-challenge/timer-button.d.ts +9 -0
  45. package/dist/src/components/form/verify-challenge/timer-button.d.ts.map +1 -0
  46. package/dist/src/components/form/verify-challenge/varify-challenge-otp-redirect.d.ts +9 -0
  47. package/dist/src/components/form/verify-challenge/varify-challenge-otp-redirect.d.ts.map +1 -0
  48. package/dist/src/components/form/verify-challenge/varify-challenge-success.d.ts +3 -0
  49. package/dist/src/components/form/verify-challenge/varify-challenge-success.d.ts.map +1 -0
  50. package/dist/src/components/form/verify-challenge/verify-challenge-magic-link.d.ts +2 -0
  51. package/dist/src/components/form/verify-challenge/verify-challenge-magic-link.d.ts.map +1 -0
  52. package/dist/src/components/form/verify-challenge/verify-challenge-otp-manual.d.ts +15 -0
  53. package/dist/src/components/form/verify-challenge/verify-challenge-otp-manual.d.ts.map +1 -0
  54. package/dist/src/components/form/verify-challenge/verify-challenge-otp.d.ts +11 -0
  55. package/dist/src/components/form/verify-challenge/verify-challenge-otp.d.ts.map +1 -0
  56. package/dist/src/components/form/wrapper/index.d.ts +13 -0
  57. package/dist/src/components/form/wrapper/index.d.ts.map +1 -0
  58. package/dist/src/components/passkey/index.d.ts +7 -0
  59. package/dist/src/components/passkey/index.d.ts.map +1 -0
  60. package/dist/src/components/passkey/passkey-actions.d.ts +13 -0
  61. package/dist/src/components/passkey/passkey-actions.d.ts.map +1 -0
  62. package/dist/src/components/passkey/passkey-dialog.d.ts +10 -0
  63. package/dist/src/components/passkey/passkey-dialog.d.ts.map +1 -0
  64. package/dist/src/components/passkey/passkey-list.d.ts +9 -0
  65. package/dist/src/components/passkey/passkey-list.d.ts.map +1 -0
  66. package/dist/src/components/provider/index.d.ts +2 -0
  67. package/dist/src/components/provider/index.d.ts.map +1 -0
  68. package/dist/src/components/provider/passflow-provider.d.ts +11 -0
  69. package/dist/src/components/provider/passflow-provider.d.ts.map +1 -0
  70. package/dist/src/components/ui/button/index.d.ts +19 -0
  71. package/dist/src/components/ui/button/index.d.ts.map +1 -0
  72. package/dist/src/components/ui/dialog/index.d.ts +20 -0
  73. package/dist/src/components/ui/dialog/index.d.ts.map +1 -0
  74. package/dist/src/components/ui/fields/field-password.d.ts +13 -0
  75. package/dist/src/components/ui/fields/field-password.d.ts.map +1 -0
  76. package/dist/src/components/ui/fields/field-phone.d.ts +11 -0
  77. package/dist/src/components/ui/fields/field-phone.d.ts.map +1 -0
  78. package/dist/src/components/ui/fields/field-text.d.ts +8 -0
  79. package/dist/src/components/ui/fields/field-text.d.ts.map +1 -0
  80. package/dist/src/components/ui/fields/index.d.ts +4 -0
  81. package/dist/src/components/ui/fields/index.d.ts.map +1 -0
  82. package/dist/src/components/ui/icon/index.d.ts +9 -0
  83. package/dist/src/components/ui/icon/index.d.ts.map +1 -0
  84. package/dist/src/components/ui/index.d.ts +9 -0
  85. package/dist/src/components/ui/index.d.ts.map +1 -0
  86. package/dist/src/components/ui/link/index.d.ts +11 -0
  87. package/dist/src/components/ui/link/index.d.ts.map +1 -0
  88. package/dist/src/components/ui/popover/index.d.ts +7 -0
  89. package/dist/src/components/ui/popover/index.d.ts.map +1 -0
  90. package/dist/src/components/ui/providers-box/index.d.ts +10 -0
  91. package/dist/src/components/ui/providers-box/index.d.ts.map +1 -0
  92. package/dist/src/components/ui/switch/index.d.ts +9 -0
  93. package/dist/src/components/ui/switch/index.d.ts.map +1 -0
  94. package/dist/src/constants/countries-phone-code.d.ts +253 -0
  95. package/dist/src/constants/countries-phone-code.d.ts.map +1 -0
  96. package/dist/src/constants/formats.d.ts +4 -0
  97. package/dist/src/constants/formats.d.ts.map +1 -0
  98. package/dist/src/constants/index.d.ts +3 -0
  99. package/dist/src/constants/index.d.ts.map +1 -0
  100. package/dist/src/context/auth-context.d.ts +14 -0
  101. package/dist/src/context/auth-context.d.ts.map +1 -0
  102. package/dist/src/context/index.d.ts +5 -0
  103. package/dist/src/context/index.d.ts.map +1 -0
  104. package/dist/src/context/navigation-context.d.ts +15 -0
  105. package/dist/src/context/navigation-context.d.ts.map +1 -0
  106. package/dist/src/context/passflow-context.d.ts +24 -0
  107. package/dist/src/context/passflow-context.d.ts.map +1 -0
  108. package/dist/src/context/router-context.d.ts +30 -0
  109. package/dist/src/context/router-context.d.ts.map +1 -0
  110. package/dist/src/hocs/index.d.ts +2 -0
  111. package/dist/src/hocs/index.d.ts.map +1 -0
  112. package/dist/src/hocs/with-error.d.ts +8 -0
  113. package/dist/src/hocs/with-error.d.ts.map +1 -0
  114. package/dist/src/hooks/index.d.ts +16 -0
  115. package/dist/src/hooks/index.d.ts.map +1 -0
  116. package/dist/src/hooks/use-app-settings.d.ts +16 -0
  117. package/dist/src/hooks/use-app-settings.d.ts.map +1 -0
  118. package/dist/src/hooks/use-auth-cloud-redirect.d.ts +4 -0
  119. package/dist/src/hooks/use-auth-cloud-redirect.d.ts.map +1 -0
  120. package/dist/src/hooks/use-auth.d.ts +3 -0
  121. package/dist/src/hooks/use-auth.d.ts.map +1 -0
  122. package/dist/src/hooks/use-forgot-password.d.ts +10 -0
  123. package/dist/src/hooks/use-forgot-password.d.ts.map +1 -0
  124. package/dist/src/hooks/use-join-invite.d.ts +8 -0
  125. package/dist/src/hooks/use-join-invite.d.ts.map +1 -0
  126. package/dist/src/hooks/use-logout.d.ts +8 -0
  127. package/dist/src/hooks/use-logout.d.ts.map +1 -0
  128. package/dist/src/hooks/use-navigation.d.ts +27 -0
  129. package/dist/src/hooks/use-navigation.d.ts.map +1 -0
  130. package/dist/src/hooks/use-outsideclick.d.ts +3 -0
  131. package/dist/src/hooks/use-outsideclick.d.ts.map +1 -0
  132. package/dist/src/hooks/use-passflow-store.d.ts +3 -0
  133. package/dist/src/hooks/use-passflow-store.d.ts.map +1 -0
  134. package/dist/src/hooks/use-passflow.d.ts +3 -0
  135. package/dist/src/hooks/use-passflow.d.ts.map +1 -0
  136. package/dist/src/hooks/use-passwordless-complete.d.ts +10 -0
  137. package/dist/src/hooks/use-passwordless-complete.d.ts.map +1 -0
  138. package/dist/src/hooks/use-provider.d.ts +7 -0
  139. package/dist/src/hooks/use-provider.d.ts.map +1 -0
  140. package/dist/src/hooks/use-reset-password.d.ts +9 -0
  141. package/dist/src/hooks/use-reset-password.d.ts.map +1 -0
  142. package/dist/src/hooks/use-signin.d.ts +10 -0
  143. package/dist/src/hooks/use-signin.d.ts.map +1 -0
  144. package/dist/src/hooks/use-signup.d.ts +10 -0
  145. package/dist/src/hooks/use-signup.d.ts.map +1 -0
  146. package/dist/src/hooks/use-user-passkeys.d.ts +12 -0
  147. package/dist/src/hooks/use-user-passkeys.d.ts.map +1 -0
  148. package/dist/src/index.d.ts +7 -0
  149. package/dist/src/index.d.ts.map +1 -0
  150. package/dist/src/main.d.ts +1 -0
  151. package/dist/src/main.d.ts.map +1 -0
  152. package/dist/src/types/index.d.ts +5 -0
  153. package/dist/src/types/index.d.ts.map +1 -0
  154. package/dist/src/utils/cn/index.d.ts +3 -0
  155. package/dist/src/utils/cn/index.d.ts.map +1 -0
  156. package/dist/src/utils/dayjs/format.d.ts +8 -0
  157. package/dist/src/utils/dayjs/format.d.ts.map +1 -0
  158. package/dist/src/utils/dayjs/index.d.ts +2 -0
  159. package/dist/src/utils/dayjs/index.d.ts.map +1 -0
  160. package/dist/src/utils/get-app-version/index.d.ts +7 -0
  161. package/dist/src/utils/get-app-version/index.d.ts.map +1 -0
  162. package/dist/src/utils/get-auth-methods/index.d.ts +30 -0
  163. package/dist/src/utils/get-auth-methods/index.d.ts.map +1 -0
  164. package/dist/src/utils/get-form-labels/index.d.ts +10 -0
  165. package/dist/src/utils/get-form-labels/index.d.ts.map +1 -0
  166. package/dist/src/utils/get-url-errors/index.d.ts +5 -0
  167. package/dist/src/utils/get-url-errors/index.d.ts.map +1 -0
  168. package/dist/src/utils/get-url-with-tokens/index.d.ts +3 -0
  169. package/dist/src/utils/get-url-with-tokens/index.d.ts.map +1 -0
  170. package/dist/src/utils/index.d.ts +11 -0
  171. package/dist/src/utils/index.d.ts.map +1 -0
  172. package/dist/src/utils/undefined-on-catch/index.d.ts +2 -0
  173. package/dist/src/utils/undefined-on-catch/index.d.ts.map +1 -0
  174. package/dist/src/utils/url-params/index.d.ts +14 -0
  175. package/dist/src/utils/url-params/index.d.ts.map +1 -0
  176. package/dist/src/utils/validate-url/index.d.ts +2 -0
  177. package/dist/src/utils/validate-url/index.d.ts.map +1 -0
  178. package/dist/src/utils/validation-schemas/index.d.ts +6 -0
  179. package/dist/src/utils/validation-schemas/index.d.ts.map +1 -0
  180. package/dist/style.css +1 -0
  181. package/dist/vite.svg +1 -0
  182. package/package.json +129 -0
@@ -0,0 +1 @@
1
+ {"version":3,"file":"use-reset-password.d.ts","sourceRoot":"","sources":["../../../src/hooks/use-reset-password.ts"],"names":[],"mappings":"AAGA,MAAM,MAAM,qBAAqB,GAAG,MAAM;IACxC,KAAK,EAAE,CAAC,WAAW,EAAE,MAAM,KAAK,OAAO,CAAC,OAAO,CAAC,CAAC;IACjD,SAAS,EAAE,OAAO,CAAC;IACnB,OAAO,EAAE,OAAO,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,IAAI,CAAC;CACnB,CAAC;AAEF,eAAO,MAAM,gBAAgB,EAAE,qBA8B9B,CAAC"}
@@ -0,0 +1,10 @@
1
+ import { PassflowPasskeyAuthenticateStartPayload, PassflowPasswordlessResponse, PassflowPasswordlessSignInPayload, PassflowSignInPayload } from '@passflow/core';
2
+ export type UseSignInProps = () => {
3
+ fetch: (payload: PassflowPasskeyAuthenticateStartPayload | PassflowSignInPayload | PassflowPasswordlessSignInPayload, type: 'passkey' | 'password' | 'passwordless') => Promise<boolean | string | PassflowPasswordlessResponse>;
4
+ isLoading: boolean;
5
+ isError: boolean;
6
+ error: string;
7
+ reset: () => void;
8
+ };
9
+ export declare const useSignIn: UseSignInProps;
10
+ //# sourceMappingURL=use-signin.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"use-signin.d.ts","sourceRoot":"","sources":["../../../src/hooks/use-signin.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,uCAAuC,EACvC,4BAA4B,EAC5B,iCAAiC,EACjC,qBAAqB,EACtB,MAAM,gBAAgB,CAAC;AAIxB,MAAM,MAAM,cAAc,GAAG,MAAM;IACjC,KAAK,EAAE,CACL,OAAO,EAAE,uCAAuC,GAAG,qBAAqB,GAAG,iCAAiC,EAC5G,IAAI,EAAE,SAAS,GAAG,UAAU,GAAG,cAAc,KAC1C,OAAO,CAAC,OAAO,GAAG,MAAM,GAAG,4BAA4B,CAAC,CAAC;IAC9D,SAAS,EAAE,OAAO,CAAC;IACnB,OAAO,EAAE,OAAO,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,IAAI,CAAC;CACnB,CAAC;AAEF,eAAO,MAAM,SAAS,EAAE,cA8CvB,CAAC"}
@@ -0,0 +1,10 @@
1
+ import { PassflowPasskeyRegisterStartPayload, PassflowPasswordlessResponse, PassflowPasswordlessSignInPayload, PassflowSignUpPayload } from '@passflow/core';
2
+ export type UseSignUpProps = () => {
3
+ fetch: (payload: PassflowPasskeyRegisterStartPayload | PassflowSignUpPayload | PassflowPasswordlessSignInPayload, type: 'passkey' | 'password' | 'passwordless') => Promise<boolean | string | PassflowPasswordlessResponse>;
4
+ isLoading: boolean;
5
+ isError: boolean;
6
+ error: string;
7
+ reset: () => void;
8
+ };
9
+ export declare const useSignUp: UseSignUpProps;
10
+ //# sourceMappingURL=use-signup.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"use-signup.d.ts","sourceRoot":"","sources":["../../../src/hooks/use-signup.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,mCAAmC,EACnC,4BAA4B,EAC5B,iCAAiC,EACjC,qBAAqB,EACtB,MAAM,gBAAgB,CAAC;AAIxB,MAAM,MAAM,cAAc,GAAG,MAAM;IACjC,KAAK,EAAE,CACL,OAAO,EAAE,mCAAmC,GAAG,qBAAqB,GAAG,iCAAiC,EACxG,IAAI,EAAE,SAAS,GAAG,UAAU,GAAG,cAAc,KAC1C,OAAO,CAAC,OAAO,GAAG,MAAM,GAAG,4BAA4B,CAAC,CAAC;IAC9D,SAAS,EAAE,OAAO,CAAC;IACnB,OAAO,EAAE,OAAO,CAAC;IACjB,KAAK,EAAE,MAAM,CAAC;IACd,KAAK,EAAE,MAAM,IAAI,CAAC;CACnB,CAAC;AAEF,eAAO,MAAM,SAAS,EAAE,cA6CvB,CAAC"}
@@ -0,0 +1,12 @@
1
+ import { PassflowUserPasskey } from '@passflow/core';
2
+ export type UseUserPasskeysProps = () => {
3
+ data: PassflowUserPasskey[];
4
+ createUserPasskey: (relaingPartyId: string) => Promise<void>;
5
+ editUserPasskey: (newName: string, passkeyId: string) => Promise<void>;
6
+ deleteUserPasskey: (passkeyId: string) => Promise<void>;
7
+ isLoading: boolean;
8
+ isError: boolean;
9
+ errorMessage: string;
10
+ };
11
+ export declare const useUserPasskeys: UseUserPasskeysProps;
12
+ //# sourceMappingURL=use-user-passkeys.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"use-user-passkeys.d.ts","sourceRoot":"","sources":["../../../src/hooks/use-user-passkeys.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,mBAAmB,EAAE,MAAM,gBAAgB,CAAC;AAI1D,MAAM,MAAM,oBAAoB,GAAG,MAAM;IACvC,IAAI,EAAE,mBAAmB,EAAE,CAAC;IAC5B,iBAAiB,EAAE,CAAC,cAAc,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAC7D,eAAe,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,SAAS,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IACvE,iBAAiB,EAAE,CAAC,SAAS,EAAE,MAAM,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IACxD,SAAS,EAAE,OAAO,CAAC;IACnB,OAAO,EAAE,OAAO,CAAC;IACjB,YAAY,EAAE,MAAM,CAAC;CACtB,CAAC;AAEF,eAAO,MAAM,eAAe,EAAE,oBAqF7B,CAAC"}
@@ -0,0 +1,7 @@
1
+ export * from './components/flow';
2
+ export * from './components/form';
3
+ export * from './components/ui';
4
+ export { PassflowProvider } from './components/provider';
5
+ export * from './hooks';
6
+ export * from '@passflow/core';
7
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../src/index.ts"],"names":[],"mappings":"AAAA,OAAO,oBAAoB,CAAC;AAC5B,OAAO,yBAAyB,CAAC;AAEjC,cAAc,mBAAmB,CAAC;AAClC,cAAc,mBAAmB,CAAC;AAClC,cAAc,iBAAiB,CAAC;AAChC,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AACzD,cAAc,SAAS,CAAC;AACxB,cAAc,gBAAgB,CAAC"}
@@ -0,0 +1 @@
1
+ //# sourceMappingURL=main.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"main.d.ts","sourceRoot":"","sources":["../../src/main.tsx"],"names":[],"mappings":"AAEA,OAAO,oBAAoB,CAAC"}
@@ -0,0 +1,5 @@
1
+ export type PreferIdentity = 'identity' | 'phone' | 'none';
2
+ export type DefaultMethod = 'email_or_username' | 'phone';
3
+ export type PreferChallenge = 'passkey' | 'password' | 'otp' | 'magic_link';
4
+ export type SuccessAuthRedirect = string;
5
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/types/index.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,cAAc,GAAG,UAAU,GAAG,OAAO,GAAG,MAAM,CAAC;AAE3D,MAAM,MAAM,aAAa,GAAG,mBAAmB,GAAG,OAAO,CAAC;AAE1D,MAAM,MAAM,eAAe,GAAG,SAAS,GAAG,UAAU,GAAG,KAAK,GAAG,YAAY,CAAC;AAE5E,MAAM,MAAM,mBAAmB,GAAG,MAAM,CAAC"}
@@ -0,0 +1,3 @@
1
+ import { ClassValue } from 'clsx';
2
+ export declare const cn: (...classes: ClassValue[]) => string;
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/utils/cn/index.ts"],"names":[],"mappings":"AAAA,OAAa,EAAE,KAAK,UAAU,EAAE,MAAM,MAAM,CAAC;AAG7C,eAAO,MAAM,EAAE,GAAI,GAAG,SAAS,UAAU,EAAE,WAA2B,CAAC"}
@@ -0,0 +1,8 @@
1
+ declare const stringByFields: {
2
+ last_used: string;
3
+ default: string;
4
+ };
5
+ export declare const formatDateToString: (date: Date | string, format: string) => string;
6
+ export declare const usedFieldString: (date: Date | string, field: keyof typeof stringByFields) => string;
7
+ export {};
8
+ //# sourceMappingURL=format.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"format.d.ts","sourceRoot":"","sources":["../../../../src/utils/dayjs/format.ts"],"names":[],"mappings":"AAEA,QAAA,MAAM,cAAc;;;CAGnB,CAAC;AAEF,eAAO,MAAM,kBAAkB,GAAI,MAAM,IAAI,GAAG,MAAM,EAAE,QAAQ,MAAM,KAAG,MAAoC,CAAC;AAC9G,eAAO,MAAM,eAAe,GAAI,MAAM,IAAI,GAAG,MAAM,EAAE,OAAO,MAAM,OAAO,cAAc,KAAG,MAOzF,CAAC"}
@@ -0,0 +1,2 @@
1
+ export * from './format';
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/utils/dayjs/index.ts"],"names":[],"mappings":"AAAA,cAAc,UAAU,CAAC"}
@@ -0,0 +1,7 @@
1
+ declare global {
2
+ interface Window {
3
+ passflowReactAppVersion: () => void;
4
+ }
5
+ }
6
+ export {};
7
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/utils/get-app-version/index.ts"],"names":[],"mappings":"AAEA,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,MAAM;QACd,uBAAuB,EAAE,MAAM,IAAI,CAAC;KACrC;CACF"}
@@ -0,0 +1,30 @@
1
+ import { AuthStrategies, Providers } from '@passflow/core';
2
+ export type AuthMethods = {
3
+ internal: {
4
+ username: {
5
+ password: boolean;
6
+ };
7
+ email: {
8
+ password: boolean;
9
+ otp: boolean;
10
+ magicLink: boolean;
11
+ };
12
+ phone: {
13
+ password: boolean;
14
+ otp: boolean;
15
+ magicLink: boolean;
16
+ };
17
+ };
18
+ fim: {
19
+ providers: Providers[];
20
+ };
21
+ passkey: boolean;
22
+ hasEmailMethods: boolean;
23
+ hasSignInEmailMethods: boolean;
24
+ hasPhoneMethods: boolean;
25
+ hasSignInPhoneMethods: boolean;
26
+ hasUsernameMethods: boolean;
27
+ hasSignInUsernameMethods: boolean;
28
+ };
29
+ export declare const getAuthMethods: (strategies?: AuthStrategies[]) => AuthMethods;
30
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/utils/get-auth-methods/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,cAAc,EAAiC,SAAS,EAAE,MAAM,gBAAgB,CAAC;AAG/F,MAAM,MAAM,WAAW,GAAG;IACxB,QAAQ,EAAE;QACR,QAAQ,EAAE;YACR,QAAQ,EAAE,OAAO,CAAC;SACnB,CAAC;QACF,KAAK,EAAE;YACL,QAAQ,EAAE,OAAO,CAAC;YAClB,GAAG,EAAE,OAAO,CAAC;YACb,SAAS,EAAE,OAAO,CAAC;SACpB,CAAC;QACF,KAAK,EAAE;YACL,QAAQ,EAAE,OAAO,CAAC;YAClB,GAAG,EAAE,OAAO,CAAC;YACb,SAAS,EAAE,OAAO,CAAC;SACpB,CAAC;KACH,CAAC;IACF,GAAG,EAAE;QACH,SAAS,EAAE,SAAS,EAAE,CAAC;KACxB,CAAC;IACF,OAAO,EAAE,OAAO,CAAC;IACjB,eAAe,EAAE,OAAO,CAAC;IACzB,qBAAqB,EAAE,OAAO,CAAC;IAC/B,eAAe,EAAE,OAAO,CAAC;IACzB,qBAAqB,EAAE,OAAO,CAAC;IAC/B,kBAAkB,EAAE,OAAO,CAAC;IAC5B,wBAAwB,EAAE,OAAO,CAAC;CACnC,CAAC;AAEF,eAAO,MAAM,cAAc,GAAI,aAAa,cAAc,EAAE,KAAG,WA8E9D,CAAC"}
@@ -0,0 +1,10 @@
1
+ import { DefaultMethod } from '../../types';
2
+ import { InternalStrategyChallenge } from '@passflow/core';
3
+ import { AuthMethods } from '../get-auth-methods';
4
+ export declare const getIdentityLabel: (methods: AuthMethods, type: "label" | "button") => "Email or username" | "Use email or username" | "Email" | "Use email" | "Username" | "Use username" | null;
5
+ export declare const getPasswordlessData: (methods: AuthMethods, currentMethod: DefaultMethod | null) => {
6
+ label: string;
7
+ challengeType: InternalStrategyChallenge;
8
+ } | null;
9
+ export declare const getValidationErrorsLabel: (methods: AuthMethods) => "Email or username is required" | "Email is required" | "Username is required" | "Field is required";
10
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/utils/get-form-labels/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,SAAS,CAAC;AAC7C,OAAO,KAAK,EAAE,yBAAyB,EAAE,MAAM,gBAAgB,CAAC;AAGhE,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,qBAAqB,CAAC;AAEvD,eAAO,MAAM,gBAAgB,GAAI,SAAS,WAAW,EAAE,MAAM,OAAO,GAAG,QAAQ,+GAO9E,CAAC;AAEF,eAAO,MAAM,mBAAmB,GAC9B,SAAS,WAAW,EACpB,eAAe,aAAa,GAAG,IAAI,KAClC;IAAE,KAAK,EAAE,MAAM,CAAC;IAAC,aAAa,EAAE,yBAAyB,CAAA;CAAE,GAAG,IAYhE,CAAC;AAEF,eAAO,MAAM,wBAAwB,GAAI,SAAS,WAAW,yGAM5D,CAAC"}
@@ -0,0 +1,5 @@
1
+ export declare const getUrlErrors: (subUrl?: string) => {
2
+ error: string | null;
3
+ message: string | null;
4
+ };
5
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/utils/get-url-errors/index.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,YAAY,GAAI,SAAS,MAAM;;;CAM3C,CAAC"}
@@ -0,0 +1,3 @@
1
+ import { Passflow } from '@passflow/core';
2
+ export declare const getUrlWithTokens: (passflow: Passflow, url: string) => Promise<string>;
3
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/utils/get-url-with-tokens/index.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,QAAQ,EAAE,MAAM,gBAAgB,CAAC;AAE/C,eAAO,MAAM,gBAAgB,GAAU,UAAU,QAAQ,EAAE,KAAK,MAAM,KAAG,OAAO,CAAC,MAAM,CActF,CAAC"}
@@ -0,0 +1,11 @@
1
+ export * from './validation-schemas';
2
+ export { isValidUrl } from './validate-url';
3
+ export { getUrlWithTokens } from './get-url-with-tokens';
4
+ export * from './dayjs';
5
+ export { cn } from './cn';
6
+ export { undefinedOnCatch } from './undefined-on-catch';
7
+ export { getAuthMethods, type AuthMethods } from './get-auth-methods';
8
+ export { getIdentityLabel, getPasswordlessData, getValidationErrorsLabel } from './get-form-labels';
9
+ export { useUrlParams } from './url-params';
10
+ export { getUrlErrors } from './get-url-errors';
11
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../src/utils/index.ts"],"names":[],"mappings":"AAAA,cAAc,sBAAsB,CAAC;AACrC,OAAO,EAAE,UAAU,EAAE,MAAM,gBAAgB,CAAC;AAC5C,OAAO,EAAE,gBAAgB,EAAE,MAAM,uBAAuB,CAAC;AACzD,cAAc,SAAS,CAAC;AACxB,OAAO,EAAE,EAAE,EAAE,MAAM,MAAM,CAAC;AAC1B,OAAO,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAC;AACxD,OAAO,EAAE,cAAc,EAAE,KAAK,WAAW,EAAE,MAAM,oBAAoB,CAAC;AACtE,OAAO,EAAE,gBAAgB,EAAE,mBAAmB,EAAE,wBAAwB,EAAE,MAAM,mBAAmB,CAAC;AACpG,OAAO,EAAE,YAAY,EAAE,MAAM,cAAc,CAAC;AAC5C,OAAO,EAAE,YAAY,EAAE,MAAM,kBAAkB,CAAC"}
@@ -0,0 +1,2 @@
1
+ export declare function undefinedOnCatch<T, K>(fn: (t: K) => T): (t: K) => T | undefined;
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/utils/undefined-on-catch/index.ts"],"names":[],"mappings":"AAAA,wBAAgB,gBAAgB,CAAC,CAAC,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,GAAG,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,GAAG,SAAS,CAQ/E"}
@@ -0,0 +1,14 @@
1
+ /**
2
+ * Utility for native handling of URL parameters
3
+ */
4
+ /**
5
+ * Get URL parameters
6
+ * @param defaultValues Default values
7
+ * @returns Object with methods getAll, get, set
8
+ */
9
+ export declare const useUrlParams: <T extends Record<string, string>>(defaultValues?: T) => {
10
+ getAll: () => Record<string, string>;
11
+ get: (key: string) => string | null;
12
+ set: (params: Record<string, string>) => void;
13
+ };
14
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/utils/url-params/index.ts"],"names":[],"mappings":"AAAA;;GAEG;AAUH;;;;GAIG;AACH,eAAO,MAAM,YAAY,GAAI,CAAC,SAAS,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,EAAE,gBAAgB,CAAC;;eAuC5D,MAAM;kBASH,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC;CAoB5C,CAAC"}
@@ -0,0 +1,2 @@
1
+ export declare const isValidUrl: (url: string) => boolean;
2
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/utils/validate-url/index.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,UAAU,GAAI,KAAK,MAAM,KAAG,OAOxC,CAAC"}
@@ -0,0 +1,6 @@
1
+ import { PassflowPasswordPolicySettings } from '@passflow/core';
2
+ import * as Yup from 'yup';
3
+ export declare const emailRegex: RegExp;
4
+ export declare const phoneNumberRegex: RegExp;
5
+ export declare const passwordValidation: (passwordPolicy: PassflowPasswordPolicySettings | null) => Yup.StringSchema<string, Yup.AnyObject, undefined, "">;
6
+ //# sourceMappingURL=index.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../../../../src/utils/validation-schemas/index.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EAAE,8BAA8B,EAAE,MAAM,gBAAgB,CAAC;AAErE,OAAO,KAAK,GAAG,MAAM,KAAK,CAAC;AAE3B,eAAO,MAAM,UAAU,QACmI,CAAC;AAC3J,eAAO,MAAM,gBAAgB,QACyF,CAAC;AAEvH,eAAO,MAAM,kBAAkB,GAAI,gBAAgB,8BAA8B,GAAG,IAAI,2DA2ClF,CAAC"}
package/dist/style.css ADDED
@@ -0,0 +1 @@
1
+ @import"https://fonts.googleapis.com/css2?family=Gasoek+One&family=Inter:opsz,wght@14..32,100..900&display=swap";[class*=passflow-]{border:0;box-sizing:border-box;font:inherit;margin:0;padding:0;vertical-align:baseline}.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{font-size:16px;scroll-behavior:smooth}body{line-height:1.5;min-height:100vh;text-rendering:optimizeSpeed;-webkit-font-smoothing:antialiased;-moz-osx-font-smoothing:grayscale}.passflow-list{list-style:none}.passflow-link{color:inherit;text-decoration:none}.passflow-canvas,.passflow-image,.passflow-picture,.passflow-svg,.passflow-video{display:block;max-width:100%}.passflow-button{background:none;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-]{animation-duration:.01ms!important;animation-iteration-count:1!important;scroll-behavior:auto!important;transition-duration:.01ms!important}}body,html{box-sizing:border-box;margin:0;padding:0}:root{--passflow-primary:#0c59dd;--passflow-primary-dark:#0a47b1;--passflow-warning:#d85d5d;--passflow-warning-dark:#b14d4d;--passflow-dark:#1e1e1e;--passflow-dark-two:#2e2e2e;--passflow-dark-three:#3e3e3e;--passflow-white:#fff;--passflow-grey-one:#7f7f7f;--passflow-grey-two:#bfbfbf;--passflow-grey-three:#e9eaf0;--passflow-grey-four:#f3f5f7;--passflow-background:#f8f9fb;--passflow-success:#4cb782;--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-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-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-wrapper{font-family:Inter,sans-serif;min-height:100vh;width:100%;-webkit-font-smoothing:antialiased;box-sizing:border-box;overflow-x:hidden}.passflow-wrapper{background-color:var(--passflow-background-color);background-image:var(--passflow-background-image);background-position:50%;background-repeat:no-repeat;background-size:cover;color:var(--passflow-text-color);height:100vh;position:relative;width:100vw}.passflow-heading{color:var(--passflow-text-color);font-size:var(--passflow-h1);font-weight:600;margin-bottom:var(--passflow-spacing-4)}.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{align-items:center;border-radius:4px;cursor:pointer;display:inline-flex;font-size:var(--passflow-body-2);font-weight:500;justify-content:center;overflow:hidden;padding:var(--passflow-spacing-3) var(--passflow-spacing-6);position:relative;transition:all .2s}.passflow-button:focus-visible{outline:none}.passflow-button--primary{background-color:var(--passflow-primary-color);box-shadow:0 3px 15px #0c59dd59;color:var(--passflow-button-text-color)}.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);box-shadow:0 5px 9px #d85d5d40;color:var(--passflow-button-text-color)}.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);box-shadow:0 3px 15px #1e1e1e59;color:var(--passflow-button-text-color)}.passflow-button--dark:focus-visible,.passflow-button--dark:hover{opacity:.9}.passflow-button--small{height:28px;max-width:28px;padding:var(--passflow-spacing-1);width:100%}.passflow-button--medium{font-size:var(--passflow-body-2);height:32px;max-width:66px;padding:7px var(--passflow-spacing-3);width:100%}.passflow-button--big{font-size:var(--passflow-body-2);font-weight:600;height:48px;max-width:336px;min-width:40px;padding:15px var(--passflow-spacing-2);width:100%}.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{background-color:transparent;cursor:not-allowed;opacity:.5}.passflow-button--with-icon{gap:var(--passflow-spacing-2)}.passflow-button--as-icon{height:max-content;padding:0;width:max-content}.passflow-button-go-back-error,.passflow-button-invitation-join,.passflow-button-invitation-join-register,.passflow-button-invitation-join-switch,.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);line-height:18px;margin:0 auto}.passflow-button-passkey{background-color:var(--passflow-passkey-button-background-color);color:var(--passflow-passkey-button-text-color)}.passflow-button-passwordless--active{background-color:transparent;border:1px solid var(--passflow-primary-color);color:var(--passflow-primary-color);font-size:var(--passflow-body-2);font-weight:var(--passflow-semibold);line-height:18px}.passflow-button-show-country{background-color:var(--passflow-input-background-color);border-radius:4px;gap:4px;margin-left:12px;min-width:41px;width:41px}.passflow-button-display-password{background-color:transparent}.passflow-send-reset-wrapper{display:flex;flex-direction:column;gap:24px}.passflow-button-go-back-error,.passflow-button-resend-magic-link,.passflow-button-resend-reset-password{font-weight:var(--passflow-medium);max-width:196px}.passflow-button-resend-magic-link:hover{background-color:var(--passflow-grey-four)}.passflow-button-timer{background-color:var(--passflow-background-color);display:inline-block;font-weight:var(--passflow-semibold);max-width:max-content;padding:3px}.passflow-button-timer--active{color:var(--passflow-secondary-text-color);opacity:1!important}.passflow-button-timer--inactive{color:var(--passflow-primary-color)}.passflow-button-invitation-join{margin-top:32px}.passflow-field{align-items:center;background-color:var(--passflow-input-background-color);border-radius:4px;color:var(--passflow-dark);display:flex;font-size:var(--passflow-body-2);justify-content:flex-start;min-height:48px;outline:1px solid var(--passflow-input-border-color);padding:11px var(--passflow-spacing-3);width:100%}.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{border-radius:4px;color:var(--passflow-dark);font-size:var(--passflow-body-2);height:48px;outline:1px solid var(--passflow-input-border-color);text-align:center;width:48px}.passflow-ripple{animation:passflow-ripple .6s linear;background-color:#ffffff4d;border-radius:50%;position:absolute;transform:scale(0)}@keyframes passflow-ripple{to{opacity:0;transform:scale(4)}}.passflow-container{margin:0 auto;max-width:1200px;padding:0 var(--passflow-spacing-4);width:100%}.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-branding{align-items:center;background-color:var(--passflow-background);border-radius:4px;bottom:24px;display:flex;gap:4px;justify-content:center;padding:7px 12px;position:absolute;right:24px}.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;gap:32px;height:100%;padding:24px;position:relative}.passflow-form-main-container,.passflow-form-main-wrapper{align-items:center;display:flex;flex-direction:column;justify-content:center;width:100%}.passflow-form-main-container{gap:24px;margin:0 auto;max-width:384px}.passflow-form-header{align-items:center;display:flex;flex-direction:column;gap:8px;justify-content:center;text-align:center}.passflow-form-title{color:var(--passflow-text-color);font-size:var(--passflow-h2);font-weight:var(--passflow-bold)}.passflow-form-subscriptions,.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-subscriptions{display:flex;margin:-24px auto 0;max-width:384px}.passflow-field-wrapper{position:relative;width:100%}.passflow-field-container{display:flex;flex-direction:column;gap:6px;width:100%}.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-primary-color);font-size:var(--passflow-caption);max-width:100%;text-decoration:none;width:max-content}.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);border-radius:4px;color:var(--passflow-text-color);font-size:var(--passflow-body-2);min-height:48px;outline:1px solid var(--passflow-input-border-color);padding:11px var(--passflow-spacing-3);width:100%}.passflow-field-input--with-icon{padding-right:40px}.passflow-field-icon-button{position:absolute;right:0;top:50%;transform:translate(-12px,-50%)}.passflow-field-error{align-items:center;display:flex;gap:4px;justify-content:center;margin-top:4px}.passflow-field-error-text{color:var(--passflow-warning);font-size:var(--passflow-caption);font-weight:var(--passflow-medium)}.passflow-field-phone-wrapper{align-items:center;background-color:var(--passflow-input-background-color);border-radius:4px;color:var(--passflow-text-color);display:flex;font-size:var(--passflow-body-2);font-weight:var(--passflow-medium);height:48px;justify-content:flex-start;outline:1px solid var(--passflow-input-border-color);position:relative;width:100%}.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);border-radius:4px;color:var(--passflow-text-color);font-size:var(--passflow-body-2);font-weight:var(--passflow-medium);height:48px;padding:0 8px;width:100%}.passflow-field-phone-input:focus-within{outline:none}.passflow-field-country-search-wrapper{padding-left:28px;position:relative;z-index:20}.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{left:12px;position:absolute;top:50%;transform:translateY(-50%)}.passflow-password-validation{display:flex;flex-direction:column;gap:4px;margin-top:4px}.passflow-password-validation-item{align-items:center;color:var(--passflow-secondary-text-color);display:flex;font-size:var(--passflow-caption);font-weight:var(--passflow-medium);gap:4px;justify-content:flex-start}.passflow-password-validation-item--success{color:var(--passflow-success)}.passflow-dialog-overlay{background-color:#1e1e1e80;inset:0;position:fixed;z-index:40}.passflow-dialog-content{left:50%;position:fixed;top:50%;transform:translate(-50%,-50%);z-index:50}.passflow-dialog-header{display:flex;flex-direction:column;gap:6px;text-align:center}@media (min-width:640px){.passflow-dialog-header{text-align:left}}.passflow-dialog-footer{display:flex;flex-direction:column-reverse;gap:8px}@media (min-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);border-radius:4px;box-shadow:0 5px 20px #0000000d;z-index:10}.passflow-popover-menu{align-items:flex-start;display:flex;flex-direction:column;gap:4px;padding:6px;width:125px}.passflow-popover-menu-item{gap:6px;justify-content:flex-start;padding:6px;width:100%}.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{align-items:center;cursor:pointer;display:inline-flex;gap:12px;position:relative}.passflow-switch-label{color:var(--passflow-text-color);font-size:var(--passflow-caption);font-weight:var(--passflow-medium)}.passflow-switch-input{height:1px;margin:-1px;overflow:hidden;padding:0;position:absolute;width:1px;clip:rect(0,0,0,0);border:0;white-space:nowrap}.passflow-switch-track{background-color:var(--passflow-grey-two);border-radius:9999px;height:16px;position:relative;transition:background-color .2s;width:28px}.passflow-switch-track:after{background-color:var(--passflow-white);border-radius:50%;content:"";height:12px;position:absolute;right:14px;top:50%;transform:translateY(-50%);transition:transform .2s;width:12px}.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:transparent}.passflow-icon--small{height:16px;width:16px}.passflow-icon--medium{height:20px;width:20px}.passflow-icon--big{height:32px;width:32px}.passflow-icon--large{height:44px;width: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-flag{background-position:50%;background-repeat:no-repeat;background-size:contain;height:100%;width:100%}.passflow-verify-otp{display:flex;flex-direction:column;gap:32px}.passflow-verify-otp-container{background-color:var(--passflow-card-color);border-radius:6px;box-shadow:0 4px 15px #00000017;display:flex;flex-direction:column;gap:56px;padding:24px 24px 56px}.passflow-verify-otp-button{background-color:var(--passflow-background);border:none;position:relative}.passflow-verify-otp-button-icon{position:absolute;right:12px;top:50%;transform:translateY(-50%)}.passflow-verify-otp-wrapper{align-items:center;display:flex;flex-direction:column;gap:6px;justify-content:center}.passflow-verify-otp-inputs{align-items:center;display:flex;gap:10px;justify-content:center}.passflow-verify-otp-error{align-items:center;display:flex;gap:4px;justify-content:center}.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{align-items:center;display:flex;flex-direction:row;flex-wrap:wrap;gap:8px;justify-content:center;width:100%}.passflow-providers-box--grid{align-items:stretch;display:grid;gap:8px;grid-template-columns:repeat(auto-fit,minmax(49px,1fr));justify-content:stretch}.passflow-provider-item{align-items:center;display:flex;gap:8px}.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{inset:0;overflow:hidden;position:absolute}.passflow-ripple-effect{background-color:currentColor;opacity:.6}.passflow-form{display:flex;flex-direction:column;gap:32px;max-width:384px;width:100%}.passflow-form-switch{align-items:center;display:flex;justify-content:center;margin-bottom:-8px;width:100%}.passflow-form-container{background-color:var(--passflow-card-color);border-radius:6px;box-shadow:0 4px 15px #00000017;gap:24px;max-width:384px;padding:24px}.passflow-form-container,.passflow-form-field{align-items:flex-start;display:flex;flex-direction:column;justify-content:flex-start;width:100%}.passflow-form-field{gap:6px}.passflow-form-field__header{align-items:center;display:flex;justify-content:space-between;max-height:18px;width:100%}.passflow-form-error{align-items:center;display:flex;gap:4px;justify-content:center;margin-top:4px}.passflow-form-error-text{color:var(--passflow-warning);font-size:var(--passflow-caption);font-weight:var(--passflow-medium)}.passflow-form-actions{align-items:center;display:flex;justify-content:center;margin:0 auto;max-width:336px;width:100%}.passflow-form-actions--top-space{margin-top:-8px}.passflow-form-divider{align-items:center;display:flex;justify-content:space-between;padding:9px 0;position:relative;width:100%}.passflow-form-divider__line-left,.passflow-form-divider__line-right{background-color:var(--passflow-divider-color);height:1px;width:105px}.passflow-form-divider__text{background-color:transparent;color:var(--passflow-secondary-text-color);font-size:var(--passflow-caption);font-weight:var(--passflow-medium);left:50%;padding:0 15px;position:absolute;top:50%;transform:translate(-50%,-50%)}.passflow-form-providers{align-items:flex-start;display:flex;flex-direction:column;gap:24px;justify-content:flex-start;margin:0 auto;max-width:336px;width:100%}.passflow-link{color:var(--passflow-primary-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);line-height:18px;text-align:center}.passflow-country-search-wrapper{background-color:var(--passflow-card-color);border-bottom-left-radius:4px;border-bottom-right-radius:4px;box-shadow:0 4px 15px #00000017;left:0;max-height:200px;overflow-y:auto;position:absolute;scrollbar-color:var(--passflow-secondary-text-color) transparent;scrollbar-width:thin;top:2px;transform:translateY(48px);width:100%;z-index:10}.passflow-country-search-wrapper::-webkit-scrollbar{width:6px}.passflow-country-search-wrapper::-webkit-scrollbar-track{background:transparent}.passflow-country-search-wrapper::-webkit-scrollbar-thumb{background-color:var(--passflow-secondary-text-color);border-radius:3px}.passflow-country-search-wrapper--show{display:block;opacity:1;transition:opacity .2s ease,visibility .2s ease;visibility:visible}.passflow-country-search-wrapper--hidden{display:none;opacity:0;visibility:hidden}.passflow-country-search-sticky-bottom,.passflow-country-search-sticky-top{background-color:var(--passflow-card-color);height:10px;left:0;overflow-x:hidden;position:sticky;width:100%;z-index:10}.passflow-country-search-sticky-top{top:0}.passflow-country-search-sticky-bottom{bottom:0}.passflow-country-search-item{align-items:center;background-color:var(--passflow-card-color);cursor:pointer;display:flex;justify-content:flex-start;max-height:32px;padding:7px 12px;transition:background-color .2s ease;width:100%}.passflow-country-search-item:focus,.passflow-country-search-item:hover{background-color:var(--passflow-background)}.passflow-country-search-flag{height:15px;width:21px}.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 ease}.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{display:block;font-size:var(--passflow-body-2);margin:0 auto;padding:15px;text-align:center;width:100%}.passflow-forgot-password-success-wrapper{display:flex;flex-direction:column;gap:24px;width:100%}.passflow-forgot-password-success-container{display:flex;flex-direction:column;gap:32px;margin-top:-8px;max-width:336px;width:100%}.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{display:flex;flex-direction:column;margin:0 auto;width:100%}.passflow-verify-challenge-magic-link-container{display:flex;flex-direction:column;gap:32px;margin-top:-24px;max-width:336px;width:100%}.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{align-items:center;display:flex;flex-direction:column;justify-content:flex-start;width:100%}.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-invitation-join-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-invitation-join-text{display:block;margin-top:-8px;max-width:320px}.passflow-invitation-join-text-strong{font-weight:var(--passflow-bold)}.passflow-invitation-join-actions{align-items:center;display:flex;flex-direction:column;gap:16px;justify-content:start;width:100%}.passflow-reset-password-text{color:var(--passflow-secondary-text-color);display:block;font-size:var(--passflow-body-2);font-weight:var(--passflow-medium);margin-top:-32px;text-align:center}.passflow-error-container{gap:32px;margin-top:-8px}.passflow-error-container,.passflow-error-container-text-wrapper{align-items:center;display:flex;flex-direction:column;justify-content:start}.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}.passflow-form-main-container-logo{border-radius:8px;height:44px;object-fit:cover;object-position:center;width:44px}.ad{background-position:-48px -27px}.ae{background-position:-72px -27px}.af{background-position:-96px -27px}.ag{background-position:-120px -27px}.ai{background-position:-144px -27px}.al{background-position:-168px -27px}.am{background-position:-192px -27px}.an{background-position:-216px -27px}.ao{background-position:-240px -27px}.aq{background-position:-264px -27px}.ar{background-position:-288px -27px}.as{background-position:-312px -27px}.at{background-position:-336px -27px}.au{background-position:-360px -27px}.aw{background-position:-384px -27px}.ax{background-position:0 -51px}.az{background-position:-24px -51px}.ba{background-position:-48px -51px}.bb{background-position:-72px -51px}.bd{background-position:-96px -51px}.be{background-position:-120px -51px}.bf{background-position:-144px -51px}.bg{background-position:-168px -51px}.bh{background-position:-192px -51px}.bi{background-position:-216px -51px}.bj{background-position:-240px -51px}.bl{background-position:-264px -51px}.bm{background-position:-288px -51px}.bn{background-position:-312px -51px}.bo{background-position:-336px -51px}.br{background-position:-360px -51px}.bs{background-position:-384px -51px}.bt{background-position:0 -75px}.bw{background-position:-24px -75px}.by{background-position:-48px -75px}.bz{background-position:-72px -75px}.ca{background-position:-96px -75px}.cc{background-position:-120px -75px}.cd{background-position:-144px -75px}.cf{background-position:-168px -75px}.cg{background-position:-192px -75px}.ch{background-position:-216px -75px}.ci{background-position:-240px -75px}.ck{background-position:-264px -75px}.cl{background-position:-288px -75px}.cm{background-position:-312px -75px}.cn{background-position:-336px -75px}.co{background-position:-360px -75px}.cr{background-position:-384px -75px}.cu{background-position:0 -99px}.cv{background-position:-24px -99px}.cw{background-position:-48px -99px}.cx{background-position:-72px -99px}.cy{background-position:-96px -99px}.cz{background-position:-120px -99px}.de{background-position:-144px -99px}.dj{background-position:-168px -99px}.dk{background-position:-192px -99px}.dm{background-position:-216px -99px}.do{background-position:-240px -99px}.dz{background-position:-264px -99px}.ec{background-position:-288px -99px}.ee{background-position:-312px -99px}.eg{background-position:-336px -99px}.eh{background-position:-360px -99px}.er{background-position:-384px -99px}.es{background-position:0 -123px}.et{background-position:-24px -123px}.eu{background-position:-48px -123px}.fi{background-position:-72px -123px}.fj{background-position:-96px -123px}.fk{background-position:-120px -123px}.fm{background-position:-144px -123px}.fo{background-position:-168px -123px}.fr{background-position:-192px -123px}.ga{background-position:-216px -123px}.gb{background-position:-240px -123px}.gd{background-position:-264px -123px}.ge{background-position:-288px -123px}.gg{background-position:-312px -123px}.gh{background-position:-336px -123px}.gi{background-position:-360px -123px}.gl{background-position:-384px -123px}.gm{background-position:0 -147px}.gn{background-position:-24px -147px}.gq{background-position:-48px -147px}.gr{background-position:-72px -147px}.gs{background-position:-96px -147px}.gt{background-position:-120px -147px}.gu{background-position:-144px -147px}.gw{background-position:-168px -147px}.gy{background-position:-192px -147px}.hk{background-position:-216px -147px}.hn{background-position:-240px -147px}.hr{background-position:-264px -147px}.ht{background-position:-288px -147px}.hu{background-position:-312px -147px}.ic{background-position:-336px -147px}.id{background-position:-360px -147px}.ie{background-position:-384px -147px}.il{background-position:0 -171px}.im{background-position:-24px -171px}.in{background-position:-48px -171px}.iq{background-position:-72px -171px}.ir{background-position:-96px -171px}.is{background-position:-120px -171px}.it{background-position:-144px -171px}.je{background-position:-168px -171px}.jm{background-position:-192px -171px}.jo{background-position:-216px -171px}.jp{background-position:-240px -171px}.ke{background-position:-264px -171px}.kg{background-position:-288px -171px}.kh{background-position:-312px -171px}.ki{background-position:-336px -171px}.xk{background-position:-144px 3px}.km{background-position:-360px -171px}.kn{background-position:-384px -171px}.kp{background-position:0 -195px}.kr{background-position:-24px -195px}.kw{background-position:-48px -195px}.ky{background-position:-72px -195px}.kz{background-position:-96px -195px}.la{background-position:-120px -195px}.lb{background-position:-144px -195px}.lc{background-position:-168px -195px}.li{background-position:-192px -195px}.lk{background-position:-216px -195px}.lr{background-position:-240px -195px}.ls{background-position:-264px -195px}.lt{background-position:-288px -195px}.lu{background-position:-312px -195px}.lv{background-position:-336px -195px}.ly{background-position:-360px -195px}.ma{background-position:-384px -195px}.mc{background-position:0 -219px}.md{background-position:-24px -219px}.me{background-position:-48px -219px}.mf{background-position:-72px -219px}.mg{background-position:-96px -219px}.mh{background-position:-120px -219px}.mk{background-position:-144px -219px}.ml{background-position:-168px -219px}.mm{background-position:-192px -219px}.mn{background-position:-216px -219px}.mo{background-position:-240px -219px}.mp{background-position:-264px -219px}.mq{background-position:-288px -219px}.mr{background-position:-312px -219px}.ms{background-position:-336px -219px}.mt{background-position:-360px -219px}.mu{background-position:-384px -219px}.mv{background-position:0 -243px}.mw{background-position:-24px -243px}.mx{background-position:-48px -243px}.my{background-position:-72px -243px}.mz{background-position:-96px -243px}.na{background-position:-120px -243px}.nc{background-position:-144px -243px}.ne{background-position:-168px -243px}.nf{background-position:-192px -243px}.ng{background-position:-216px -243px}.ni{background-position:-240px -243px}.nl{background-position:-264px -243px}.no{background-position:-288px -243px}.np{background-position:-312px -243px}.nr{background-position:-336px -243px}.nu{background-position:-360px -243px}.nz{background-position:-384px -243px}.om{background-position:0 -267px}.pa{background-position:-24px -267px}.pe{background-position:-48px -267px}.pf{background-position:-72px -267px}.pg{background-position:-96px -267px}.ph{background-position:-120px -267px}.pk{background-position:-192px -267px}.pl{background-position:-216px -267px}.pn{background-position:-240px -267px}.pr{background-position:-264px -267px}.ps{background-position:-288px -267px}.pt{background-position:-312px -267px}.pw{background-position:-336px -267px}.py{background-position:-360px -267px}.qa{background-position:-384px -267px}.ro{background-position:0 -291px}.rs{background-position:-24px -291px}.ru{background-position:-48px -291px}.rw{background-position:-72px -291px}.sa{background-position:-96px -291px}.sb{background-position:-120px -291px}.sc{background-position:-144px -291px}.sd{background-position:-168px -291px}.se{background-position:-192px -291px}.sg{background-position:-216px -291px}.sh{background-position:-240px -291px}.si{background-position:-264px -291px}.sk{background-position:-288px -291px}.sl{background-position:-312px -291px}.sm{background-position:-336px -291px}.sn{background-position:-360px -291px}.so{background-position:-384px -291px}.sr{background-position:0 -315px}.ss{background-position:-24px -315px}.st{background-position:-48px -315px}.sv{background-position:-72px -315px}.sy{background-position:-96px -315px}.sz{background-position:-120px -315px}.tc{background-position:-144px -315px}.td{background-position:-168px -315px}.tf{background-position:-192px -315px}.tg{background-position:-216px -315px}.th{background-position:-240px -315px}.tj{background-position:-264px -315px}.tk{background-position:-288px -315px}.tl{background-position:-312px -315px}.tm{background-position:-336px -315px}.tn{background-position:-360px -315px}.to{background-position:-384px -315px}.tr{background-position:0 -339px}.tt{background-position:-24px -339px}.tv{background-position:-48px -339px}.tw{background-position:-72px -339px}.tz{background-position:-96px -339px}.ua{background-position:-120px -339px}.ug{background-position:-144px -339px}.us{background-position:-168px -339px}.uy{background-position:-192px -339px}.uz{background-position:-216px -339px}.va{background-position:-240px -339px}.vc{background-position:-264px -339px}.ve{background-position:-288px -339px}.vg{background-position:-312px -339px}.vi{background-position:-336px -339px}.vn{background-position:-360px -339px}.vu{background-position:-384px -339px}.wf{background-position:0 -363px}.ws{background-position:-24px -363px}.ye{background-position:-48px -363px}.za{background-position:-96px -363px}.zm{background-position:-120px -363px}.zw{background-position:-144px -363px}.icon-warning{filter:invert(62%) sepia(14%) saturate(7187%) hue-rotate(321deg) brightness(90%) contrast(86%)}.icon-white{filter:brightness(0) saturate(100%) invert(100%) sepia(2%) saturate(7%) hue-rotate(80deg) brightness(103%) contrast(100%)}.react-international-phone-country-selector{position:relative}.react-international-phone-country-selector-button{align-items:center;appearance:button;-webkit-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;display:flex;height:var(--react-international-phone-height,36px);justify-content:center;margin:0;padding:0;text-transform:none;user-select:none}.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:transparent}.react-international-phone-country-selector-button__button-content{align-items:center;display:flex;justify-content:center}.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 rgba(0,0,0,.25));color:var(--react-international-phone-dropdown-item-text-color,var(--react-international-phone-text-color,#222));display:flex;flex-direction:column;left:var(--react-international-phone-dropdown-left,0);list-style:none;margin:0;max-height:200px;overflow-y:scroll;padding:4px 0;position:absolute;top:var(--react-international-phone-dropdown-top,44px);width:300px;z-index:1}.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));border:none;height:1px;margin:var(--react-international-phone-dropdown-preferred-list-divider-margin,0)}.react-international-phone-country-selector-dropdown__list-item{align-items:center;box-sizing:border-box;display:flex;min-height:var(--react-international-phone-dropdown-item-height,28px);padding:2px 8px}.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);margin-right:8px;overflow:hidden;text-overflow:ellipsis;white-space:nowrap}.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{align-items:center;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));display:flex;font-size:var(--react-international-phone-dial-code-preview-font-size,var(--react-international-phone-font-size,13px));justify-content:center;margin-right:-1px;padding:0 8px}.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-bottom-right-radius:0;border-top-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);border-bottom-left-radius:0;border-top-left-radius:0;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);margin:0;overflow:visible;padding:0 8px}.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)}
package/dist/vite.svg ADDED
@@ -0,0 +1 @@
1
+ <svg xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" aria-hidden="true" role="img" class="iconify iconify--logos" width="31.88" height="32" preserveAspectRatio="xMidYMid meet" viewBox="0 0 256 257"><defs><linearGradient id="IconifyId1813088fe1fbc01fb466" x1="-.828%" x2="57.636%" y1="7.652%" y2="78.411%"><stop offset="0%" stop-color="#41D1FF"></stop><stop offset="100%" stop-color="#BD34FE"></stop></linearGradient><linearGradient id="IconifyId1813088fe1fbc01fb467" x1="43.376%" x2="50.316%" y1="2.242%" y2="89.03%"><stop offset="0%" stop-color="#FFEA83"></stop><stop offset="8.333%" stop-color="#FFDD35"></stop><stop offset="100%" stop-color="#FFA800"></stop></linearGradient></defs><path fill="url(#IconifyId1813088fe1fbc01fb466)" d="M255.153 37.938L134.897 252.976c-2.483 4.44-8.862 4.466-11.382.048L.875 37.958c-2.746-4.814 1.371-10.646 6.827-9.67l120.385 21.517a6.537 6.537 0 0 0 2.322-.004l117.867-21.483c5.438-.991 9.574 4.796 6.877 9.62Z"></path><path fill="url(#IconifyId1813088fe1fbc01fb467)" d="M185.432.063L96.44 17.501a3.268 3.268 0 0 0-2.634 3.014l-5.474 92.456a3.268 3.268 0 0 0 3.997 3.378l24.777-5.718c2.318-.535 4.413 1.507 3.936 3.838l-7.361 36.047c-.495 2.426 1.782 4.5 4.151 3.78l15.304-4.649c2.372-.72 4.652 1.36 4.15 3.788l-11.698 56.621c-.732 3.542 3.979 5.473 5.943 2.437l1.313-2.028l72.516-144.72c1.215-2.423-.88-5.186-3.54-4.672l-25.505 4.922c-2.396.462-4.435-1.77-3.759-4.114l16.646-57.705c.677-2.35-1.37-4.583-3.769-4.113Z"></path></svg>
package/package.json ADDED
@@ -0,0 +1,129 @@
1
+ {
2
+ "name": "@passflow/react",
3
+ "description": "Passflow React UI Kit",
4
+ "version": "0.0.1",
5
+ "type": "module",
6
+ "files": [
7
+ "dist"
8
+ ],
9
+ "main": "dist/index.cjs.js",
10
+ "module": "dist/index.es.js",
11
+ "types": "dist/src/index.d.ts",
12
+ "exports": {
13
+ ".": {
14
+ "import": {
15
+ "types": "./dist/src/index.d.ts",
16
+ "default": "./dist/index.es.js"
17
+ },
18
+ "require": {
19
+ "types": "./dist/src/index.d.ts",
20
+ "default": "./dist/index.cjs.js"
21
+ }
22
+ },
23
+ "./dist/style.css": "./dist/style.css"
24
+ },
25
+ "scripts": {
26
+ "dev": "vite",
27
+ "build": "tsc && vite build",
28
+ "lint": "biome check src",
29
+ "lint:fix": "biome check --write src",
30
+ "format": "biome format src",
31
+ "format:fix": "biome format --write src",
32
+ "preview": "vite preview",
33
+ "test": "pnpm playwright test",
34
+ "test:ui": "pnpm playwright test --ui",
35
+ "storybook": "storybook dev -p 6006",
36
+ "build-storybook": "storybook build"
37
+ },
38
+ "peerDependencies": {
39
+ "react": "^18.0.0 || ^19.0.0",
40
+ "react-dom": "^18.0.0 || ^19.0.0"
41
+ },
42
+ "dependencies": {
43
+ "@passflow/core": "^0.0.1",
44
+ "@radix-ui/react-dialog": "^1.1.14",
45
+ "@radix-ui/react-popover": "^1.1.14",
46
+ "@storybook/react": "^8.6.14",
47
+ "@storybook/react-vite": "^8.6.14",
48
+ "@types/jest": "^29.5.14",
49
+ "@types/querystringify": "^2.0.2",
50
+ "classnames": "^2.5.1",
51
+ "clsx": "^2.1.1",
52
+ "countries-and-timezones": "^3.8.0",
53
+ "dayjs": "^1.11.13",
54
+ "formik": "^2.4.6",
55
+ "history": "^5.3.0",
56
+ "lodash": "^4.17.21",
57
+ "phone": "^3.1.59",
58
+ "query-string": "^9.2.0",
59
+ "querystringify": "^2.2.0",
60
+ "react-error-boundary": "^4.1.2",
61
+ "react-helmet-async": "^2.0.5",
62
+ "react-hook-form": "^7.56.4",
63
+ "react-international-phone": "^4.5.0",
64
+ "react-otp-input": "^3.1.1",
65
+ "tailwind-merge": "^2.6.0",
66
+ "tailwindcss-scoped-preflight": "^3.4.12",
67
+ "terser": "^5.39.2",
68
+ "yup": "^1.6.1"
69
+ },
70
+ "devDependencies": {
71
+ "@biomejs/biome": "^1.9.4",
72
+ "@playwright/test": "^1.52.0",
73
+ "@types/lodash": "^4.17.17",
74
+ "@types/node": "^22.15.21",
75
+ "@types/react": "^18.3.22",
76
+ "@types/react-dom": "^18.3.7",
77
+ "@vitejs/plugin-react": "^4.5.0",
78
+ "cssnano": "^7.0.7",
79
+ "globals": "^16.1.0",
80
+ "react": "^18.3.1",
81
+ "react-dom": "^18.3.1",
82
+ "react-router-dom": "6.30.0",
83
+ "ts-node": "^10.9.2",
84
+ "tsc-alias": "^1.8.16",
85
+ "typescript": "5.8.2",
86
+ "vite": "^6.3.5",
87
+ "vite-plugin-dts": "^4.5.4",
88
+ "vite-plugin-environment": "^1.1.3"
89
+ },
90
+ "authors": [
91
+ {
92
+ "name": "Ivan Holiak",
93
+ "url": "https://github.com/IvanHoliak"
94
+ },
95
+ {
96
+ "name": "Jack Rudenko",
97
+ "url": "https://madappgang.com"
98
+ }
99
+ ],
100
+ "license": "MIT",
101
+ "bugs": {
102
+ "url": "https://github.com/MadAppGang/passflow-react-sdk/issues"
103
+ },
104
+ "repository": {
105
+ "type": "git",
106
+ "url": "git+https://github.com/MadAppGang/passflow-react-sdk.git",
107
+ "directory": "packages/passflow-react-sdk"
108
+ },
109
+ "publishConfig": {
110
+ "access": "public"
111
+ },
112
+ "keywords": [
113
+ "passflow",
114
+ "auth",
115
+ "authentication",
116
+ "passwordless",
117
+ "session",
118
+ "jwt",
119
+ "react",
120
+ "ui",
121
+ "ui-kit",
122
+ "react-ui-kit",
123
+ "passflow-react-ui-kit"
124
+ ],
125
+ "pnpm": {
126
+ "overrides": {}
127
+ },
128
+ "packageManager": "pnpm@10.8.0"
129
+ }