@thunderid/react 0.1.0 → 0.2.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/dist/ThunderIDReactClient.d.ts.map +1 -1
- package/dist/ThunderIDReactClient.js +233 -0
- package/dist/ThunderIDReactClient.js.map +1 -0
- package/dist/api/createOrganization.d.ts +2 -2
- package/dist/api/createOrganization.js +80 -0
- package/dist/api/createOrganization.js.map +1 -0
- package/dist/api/getAllOrganizations.d.ts +2 -2
- package/dist/api/getAllOrganizations.js +71 -0
- package/dist/api/getAllOrganizations.js.map +1 -0
- package/dist/api/getMeOrganizations.d.ts +2 -2
- package/dist/api/getMeOrganizations.js +75 -0
- package/dist/api/getMeOrganizations.js.map +1 -0
- package/dist/api/getOrganization.d.ts +2 -2
- package/dist/api/getOrganization.js +67 -0
- package/dist/api/getOrganization.js.map +1 -0
- package/dist/api/getSchemas.d.ts +2 -2
- package/dist/api/getSchemas.js +65 -0
- package/dist/api/getSchemas.js.map +1 -0
- package/dist/api/getScim2Me.d.ts +2 -2
- package/dist/api/getScim2Me.js +65 -0
- package/dist/api/getScim2Me.js.map +1 -0
- package/dist/api/updateMeProfile.d.ts +2 -2
- package/dist/api/updateMeProfile.js +54 -0
- package/dist/api/updateMeProfile.js.map +1 -0
- package/dist/api/updateOrganization.d.ts +3 -3
- package/dist/api/updateOrganization.js +74 -0
- package/dist/api/updateOrganization.js.map +1 -0
- package/dist/cjs/ThunderIDReactClient.cjs +235 -0
- package/dist/cjs/ThunderIDReactClient.cjs.map +1 -0
- package/dist/cjs/_virtual/rolldown_runtime.cjs +25 -0
- package/dist/cjs/api/createOrganization.cjs +82 -0
- package/dist/cjs/api/createOrganization.cjs.map +1 -0
- package/dist/cjs/api/getAllOrganizations.cjs +73 -0
- package/dist/cjs/api/getAllOrganizations.cjs.map +1 -0
- package/dist/cjs/api/getMeOrganizations.cjs +77 -0
- package/dist/cjs/api/getMeOrganizations.cjs.map +1 -0
- package/dist/cjs/api/getOrganization.cjs +69 -0
- package/dist/cjs/api/getOrganization.cjs.map +1 -0
- package/dist/cjs/api/getSchemas.cjs +67 -0
- package/dist/cjs/api/getSchemas.cjs.map +1 -0
- package/dist/cjs/api/getScim2Me.cjs +67 -0
- package/dist/cjs/api/getScim2Me.cjs.map +1 -0
- package/dist/cjs/api/updateMeProfile.cjs +56 -0
- package/dist/cjs/api/updateMeProfile.cjs.map +1 -0
- package/dist/cjs/api/updateOrganization.cjs +76 -0
- package/dist/cjs/api/updateOrganization.cjs.map +1 -0
- package/dist/cjs/components/actions/SignInButton/BaseSignInButton.cjs +54 -0
- package/dist/cjs/components/actions/SignInButton/BaseSignInButton.cjs.map +1 -0
- package/dist/cjs/components/actions/SignInButton/SignInButton.cjs +88 -0
- package/dist/cjs/components/actions/SignInButton/SignInButton.cjs.map +1 -0
- package/dist/cjs/components/actions/SignOutButton/BaseSignOutButton.cjs +54 -0
- package/dist/cjs/components/actions/SignOutButton/BaseSignOutButton.cjs.map +1 -0
- package/dist/cjs/components/actions/SignOutButton/SignOutButton.cjs +84 -0
- package/dist/cjs/components/actions/SignOutButton/SignOutButton.cjs.map +1 -0
- package/dist/cjs/components/actions/SignUpButton/BaseSignUpButton.cjs +56 -0
- package/dist/cjs/components/actions/SignUpButton/BaseSignUpButton.cjs.map +1 -0
- package/dist/cjs/components/actions/SignUpButton/SignUpButton.cjs +86 -0
- package/dist/cjs/components/actions/SignUpButton/SignUpButton.cjs.map +1 -0
- package/dist/cjs/components/adapters/CheckboxInput.cjs +30 -0
- package/dist/cjs/components/adapters/CheckboxInput.cjs.map +1 -0
- package/dist/cjs/components/adapters/Consent.cjs +69 -0
- package/dist/cjs/components/adapters/Consent.cjs.map +1 -0
- package/dist/cjs/components/adapters/ConsentCheckboxList.cjs +81 -0
- package/dist/cjs/components/adapters/ConsentCheckboxList.cjs.map +1 -0
- package/dist/cjs/components/adapters/ConsentCheckboxList.styles.cjs +46 -0
- package/dist/cjs/components/adapters/ConsentCheckboxList.styles.cjs.map +1 -0
- package/dist/cjs/components/adapters/DateInput.cjs +30 -0
- package/dist/cjs/components/adapters/DateInput.cjs.map +1 -0
- package/dist/cjs/components/adapters/DividerComponent.cjs +24 -0
- package/dist/cjs/components/adapters/DividerComponent.cjs.map +1 -0
- package/dist/cjs/components/adapters/EmailInput.cjs +30 -0
- package/dist/cjs/components/adapters/EmailInput.cjs.map +1 -0
- package/dist/cjs/components/adapters/FacebookButton.cjs +41 -0
- package/dist/cjs/components/adapters/FacebookButton.cjs.map +1 -0
- package/dist/cjs/components/adapters/FlowTimer.cjs +52 -0
- package/dist/cjs/components/adapters/FlowTimer.cjs.map +1 -0
- package/dist/cjs/components/adapters/FormContainer.cjs +36 -0
- package/dist/cjs/components/adapters/FormContainer.cjs.map +1 -0
- package/dist/cjs/components/adapters/GitHubButton.cjs +41 -0
- package/dist/cjs/components/adapters/GitHubButton.cjs.map +1 -0
- package/dist/cjs/components/adapters/GoogleButton.cjs +59 -0
- package/dist/cjs/components/adapters/GoogleButton.cjs.map +1 -0
- package/dist/cjs/components/adapters/ImageComponent.cjs +77 -0
- package/dist/cjs/components/adapters/ImageComponent.cjs.map +1 -0
- package/dist/cjs/components/adapters/LinkedInButton.cjs +38 -0
- package/dist/cjs/components/adapters/LinkedInButton.cjs.map +1 -0
- package/dist/cjs/components/adapters/MicrosoftButton.cjs +56 -0
- package/dist/cjs/components/adapters/MicrosoftButton.cjs.map +1 -0
- package/dist/cjs/components/adapters/NumberInput.cjs +30 -0
- package/dist/cjs/components/adapters/NumberInput.cjs.map +1 -0
- package/dist/cjs/components/adapters/PasswordInput.cjs +52 -0
- package/dist/cjs/components/adapters/PasswordInput.cjs.map +1 -0
- package/dist/cjs/components/adapters/SelectInput.cjs +36 -0
- package/dist/cjs/components/adapters/SelectInput.cjs.map +1 -0
- package/dist/cjs/components/adapters/SignInWithEthereumButton.cjs +38 -0
- package/dist/cjs/components/adapters/SignInWithEthereumButton.cjs.map +1 -0
- package/dist/cjs/components/adapters/SmsOtpButton.cjs +38 -0
- package/dist/cjs/components/adapters/SmsOtpButton.cjs.map +1 -0
- package/dist/cjs/components/adapters/SubmitButton.cjs +61 -0
- package/dist/cjs/components/adapters/SubmitButton.cjs.map +1 -0
- package/dist/cjs/components/adapters/TelephoneInput.cjs +32 -0
- package/dist/cjs/components/adapters/TelephoneInput.cjs.map +1 -0
- package/dist/cjs/components/adapters/TextInput.cjs +30 -0
- package/dist/cjs/components/adapters/TextInput.cjs.map +1 -0
- package/dist/cjs/components/adapters/Typography.cjs +60 -0
- package/dist/cjs/components/adapters/Typography.cjs.map +1 -0
- package/dist/cjs/components/auth/Callback/Callback.cjs +26 -0
- package/dist/cjs/components/auth/Callback/Callback.cjs.map +1 -0
- package/dist/cjs/components/auth/Callback/OAuthCallback.cjs +104 -0
- package/dist/cjs/components/auth/Callback/OAuthCallback.cjs.map +1 -0
- package/dist/cjs/components/auth/Callback/TokenCallback.cjs +134 -0
- package/dist/cjs/components/auth/Callback/TokenCallback.cjs.map +1 -0
- package/dist/cjs/components/control/Loading.cjs +35 -0
- package/dist/cjs/components/control/Loading.cjs.map +1 -0
- package/dist/cjs/components/control/OrganizationContext/OrganizationContext.cjs +34 -0
- package/dist/cjs/components/control/OrganizationContext/OrganizationContext.cjs.map +1 -0
- package/dist/cjs/components/control/OrganizationContext/OrganizationContextController.cjs +58 -0
- package/dist/cjs/components/control/OrganizationContext/OrganizationContextController.cjs.map +1 -0
- package/dist/cjs/components/control/SignedIn.cjs +35 -0
- package/dist/cjs/components/control/SignedIn.cjs.map +1 -0
- package/dist/cjs/components/control/SignedOut.cjs +35 -0
- package/dist/cjs/components/control/SignedOut.cjs.map +1 -0
- package/dist/cjs/components/factories/FieldFactory.cjs +142 -0
- package/dist/cjs/components/factories/FieldFactory.cjs.map +1 -0
- package/dist/cjs/components/presentation/CreateOrganization/BaseCreateOrganization.cjs +183 -0
- package/dist/cjs/components/presentation/CreateOrganization/BaseCreateOrganization.cjs.map +1 -0
- package/dist/cjs/components/presentation/CreateOrganization/BaseCreateOrganization.styles.cjs +150 -0
- package/dist/cjs/components/presentation/CreateOrganization/BaseCreateOrganization.styles.cjs.map +1 -0
- package/dist/cjs/components/presentation/CreateOrganization/CreateOrganization.cjs +90 -0
- package/dist/cjs/components/presentation/CreateOrganization/CreateOrganization.cjs.map +1 -0
- package/dist/cjs/components/presentation/LanguageSwitcher/BaseLanguageSwitcher.cjs +118 -0
- package/dist/cjs/components/presentation/LanguageSwitcher/BaseLanguageSwitcher.cjs.map +1 -0
- package/dist/cjs/components/presentation/LanguageSwitcher/BaseLanguageSwitcher.styles.cjs +118 -0
- package/dist/cjs/components/presentation/LanguageSwitcher/BaseLanguageSwitcher.styles.cjs.map +1 -0
- package/dist/cjs/components/presentation/LanguageSwitcher/LanguageSwitcher.cjs +76 -0
- package/dist/cjs/components/presentation/LanguageSwitcher/LanguageSwitcher.cjs.map +1 -0
- package/dist/cjs/components/presentation/Organization/BaseOrganization.cjs +41 -0
- package/dist/cjs/components/presentation/Organization/BaseOrganization.cjs.map +1 -0
- package/dist/cjs/components/presentation/Organization/Organization.cjs +49 -0
- package/dist/cjs/components/presentation/Organization/Organization.cjs.map +1 -0
- package/dist/cjs/components/presentation/OrganizationList/BaseOrganizationList.cjs +257 -0
- package/dist/cjs/components/presentation/OrganizationList/BaseOrganizationList.cjs.map +1 -0
- package/dist/cjs/components/presentation/OrganizationList/BaseOrganizationList.styles.cjs +236 -0
- package/dist/cjs/components/presentation/OrganizationList/BaseOrganizationList.styles.cjs.map +1 -0
- package/dist/cjs/components/presentation/OrganizationList/OrganizationList.cjs +86 -0
- package/dist/cjs/components/presentation/OrganizationList/OrganizationList.cjs.map +1 -0
- package/dist/cjs/components/presentation/OrganizationList/OrganizationList.styles.cjs +75 -0
- package/dist/cjs/components/presentation/OrganizationList/OrganizationList.styles.cjs.map +1 -0
- package/dist/cjs/components/presentation/OrganizationProfile/BaseOrganizationProfile.cjs +328 -0
- package/dist/cjs/components/presentation/OrganizationProfile/BaseOrganizationProfile.cjs.map +1 -0
- package/dist/cjs/components/presentation/OrganizationProfile/BaseOrganizationProfile.styles.cjs +166 -0
- package/dist/cjs/components/presentation/OrganizationProfile/BaseOrganizationProfile.styles.cjs.map +1 -0
- package/dist/cjs/components/presentation/OrganizationProfile/OrganizationProfile.cjs +126 -0
- package/dist/cjs/components/presentation/OrganizationProfile/OrganizationProfile.cjs.map +1 -0
- package/dist/cjs/components/presentation/OrganizationSwitcher/BaseOrganizationSwitcher.cjs +288 -0
- package/dist/cjs/components/presentation/OrganizationSwitcher/BaseOrganizationSwitcher.cjs.map +1 -0
- package/dist/cjs/components/presentation/OrganizationSwitcher/BaseOrganizationSwitcher.styles.cjs +237 -0
- package/dist/cjs/components/presentation/OrganizationSwitcher/BaseOrganizationSwitcher.styles.cjs.map +1 -0
- package/dist/cjs/components/presentation/OrganizationSwitcher/OrganizationSwitcher.cjs +127 -0
- package/dist/cjs/components/presentation/OrganizationSwitcher/OrganizationSwitcher.cjs.map +1 -0
- package/dist/cjs/components/presentation/User/BaseUser.cjs +41 -0
- package/dist/cjs/components/presentation/User/BaseUser.cjs.map +1 -0
- package/dist/cjs/components/presentation/User/User.cjs +45 -0
- package/dist/cjs/components/presentation/User/User.cjs.map +1 -0
- package/dist/cjs/components/presentation/UserDropdown/BaseUserDropdown.cjs +191 -0
- package/dist/cjs/components/presentation/UserDropdown/BaseUserDropdown.cjs.map +1 -0
- package/dist/cjs/components/presentation/UserDropdown/BaseUserDropdown.styles.cjs +201 -0
- package/dist/cjs/components/presentation/UserDropdown/BaseUserDropdown.styles.cjs.map +1 -0
- package/dist/cjs/components/presentation/UserDropdown/UserDropdown.cjs +111 -0
- package/dist/cjs/components/presentation/UserDropdown/UserDropdown.cjs.map +1 -0
- package/dist/cjs/components/presentation/UserProfile/BaseUserProfile.cjs +460 -0
- package/dist/cjs/components/presentation/UserProfile/BaseUserProfile.cjs.map +1 -0
- package/dist/cjs/components/presentation/UserProfile/BaseUserProfile.styles.cjs +217 -0
- package/dist/cjs/components/presentation/UserProfile/BaseUserProfile.styles.cjs.map +1 -0
- package/dist/cjs/components/presentation/UserProfile/UserProfile.cjs +81 -0
- package/dist/cjs/components/presentation/UserProfile/UserProfile.cjs.map +1 -0
- package/dist/cjs/components/presentation/auth/AcceptInvite/v2/AcceptInvite.cjs +109 -0
- package/dist/cjs/components/presentation/auth/AcceptInvite/v2/AcceptInvite.cjs.map +1 -0
- package/dist/cjs/components/presentation/auth/AcceptInvite/v2/BaseAcceptInvite.cjs +504 -0
- package/dist/cjs/components/presentation/auth/AcceptInvite/v2/BaseAcceptInvite.cjs.map +1 -0
- package/dist/cjs/components/presentation/auth/AcceptInvite/v2/BaseAcceptInvite.styles.cjs +52 -0
- package/dist/cjs/components/presentation/auth/AcceptInvite/v2/BaseAcceptInvite.styles.cjs.map +1 -0
- package/dist/cjs/components/presentation/auth/AuthOptionFactory.cjs +454 -0
- package/dist/cjs/components/presentation/auth/AuthOptionFactory.cjs.map +1 -0
- package/dist/cjs/components/presentation/auth/InviteUser/v2/BaseInviteUser.cjs +419 -0
- package/dist/cjs/components/presentation/auth/InviteUser/v2/BaseInviteUser.cjs.map +1 -0
- package/dist/cjs/components/presentation/auth/InviteUser/v2/BaseInviteUser.styles.cjs +52 -0
- package/dist/cjs/components/presentation/auth/InviteUser/v2/BaseInviteUser.styles.cjs.map +1 -0
- package/dist/cjs/components/presentation/auth/InviteUser/v2/InviteUser.cjs +118 -0
- package/dist/cjs/components/presentation/auth/InviteUser/v2/InviteUser.cjs.map +1 -0
- package/dist/cjs/components/presentation/auth/OrganizationUnitPicker/v2/OrganizationUnitPicker.cjs +183 -0
- package/dist/cjs/components/presentation/auth/OrganizationUnitPicker/v2/OrganizationUnitPicker.cjs.map +1 -0
- package/dist/cjs/components/presentation/auth/OrganizationUnitPicker/v2/OrganizationUnitPicker.styles.cjs +128 -0
- package/dist/cjs/components/presentation/auth/OrganizationUnitPicker/v2/OrganizationUnitPicker.styles.cjs.map +1 -0
- package/dist/cjs/components/presentation/auth/Recovery/BaseRecovery.cjs +20 -0
- package/dist/cjs/components/presentation/auth/Recovery/BaseRecovery.cjs.map +1 -0
- package/dist/cjs/components/presentation/auth/Recovery/Recovery.cjs +49 -0
- package/dist/cjs/components/presentation/auth/Recovery/Recovery.cjs.map +1 -0
- package/dist/cjs/components/presentation/auth/Recovery/v1/BaseRecovery.cjs +293 -0
- package/dist/cjs/components/presentation/auth/Recovery/v1/BaseRecovery.cjs.map +1 -0
- package/dist/cjs/components/presentation/auth/Recovery/v1/Recovery.cjs +43 -0
- package/dist/cjs/components/presentation/auth/Recovery/v1/Recovery.cjs.map +1 -0
- package/dist/cjs/components/presentation/auth/Recovery/v1/RecoveryOptionFactory.cjs +163 -0
- package/dist/cjs/components/presentation/auth/Recovery/v1/RecoveryOptionFactory.cjs.map +1 -0
- package/dist/cjs/components/presentation/auth/Recovery/v2/BaseRecovery.cjs +378 -0
- package/dist/cjs/components/presentation/auth/Recovery/v2/BaseRecovery.cjs.map +1 -0
- package/dist/cjs/components/presentation/auth/Recovery/v2/Recovery.cjs +78 -0
- package/dist/cjs/components/presentation/auth/Recovery/v2/Recovery.cjs.map +1 -0
- package/dist/cjs/components/presentation/auth/SignIn/BaseSignIn.cjs +20 -0
- package/dist/cjs/components/presentation/auth/SignIn/BaseSignIn.cjs.map +1 -0
- package/dist/cjs/components/presentation/auth/SignIn/BaseSignIn.styles.cjs +154 -0
- package/dist/cjs/components/presentation/auth/SignIn/BaseSignIn.styles.cjs.map +1 -0
- package/dist/cjs/components/presentation/auth/SignIn/SignIn.cjs +86 -0
- package/dist/cjs/components/presentation/auth/SignIn/SignIn.cjs.map +1 -0
- package/dist/cjs/components/presentation/auth/SignIn/v1/BaseSignIn.cjs +734 -0
- package/dist/cjs/components/presentation/auth/SignIn/v1/BaseSignIn.cjs.map +1 -0
- package/dist/cjs/components/presentation/auth/SignIn/v1/options/EmailOtp.cjs +68 -0
- package/dist/cjs/components/presentation/auth/SignIn/v1/options/EmailOtp.cjs.map +1 -0
- package/dist/cjs/components/presentation/auth/SignIn/v1/options/IdentifierFirst.cjs +59 -0
- package/dist/cjs/components/presentation/auth/SignIn/v1/options/IdentifierFirst.cjs.map +1 -0
- package/dist/cjs/components/presentation/auth/SignIn/v1/options/MultiOptionButton.cjs +139 -0
- package/dist/cjs/components/presentation/auth/SignIn/v1/options/MultiOptionButton.cjs.map +1 -0
- package/dist/cjs/components/presentation/auth/SignIn/v1/options/SignInOptionFactory.cjs +147 -0
- package/dist/cjs/components/presentation/auth/SignIn/v1/options/SignInOptionFactory.cjs.map +1 -0
- package/dist/cjs/components/presentation/auth/SignIn/v1/options/SmsOtp.cjs +68 -0
- package/dist/cjs/components/presentation/auth/SignIn/v1/options/SmsOtp.cjs.map +1 -0
- package/dist/cjs/components/presentation/auth/SignIn/v1/options/SocialButton.cjs +38 -0
- package/dist/cjs/components/presentation/auth/SignIn/v1/options/SocialButton.cjs.map +1 -0
- package/dist/cjs/components/presentation/auth/SignIn/v1/options/Totp.cjs +68 -0
- package/dist/cjs/components/presentation/auth/SignIn/v1/options/Totp.cjs.map +1 -0
- package/dist/cjs/components/presentation/auth/SignIn/v1/options/UsernamePassword.cjs +60 -0
- package/dist/cjs/components/presentation/auth/SignIn/v1/options/UsernamePassword.cjs.map +1 -0
- package/dist/cjs/components/presentation/auth/SignIn/v2/BaseSignIn.cjs +330 -0
- package/dist/cjs/components/presentation/auth/SignIn/v2/BaseSignIn.cjs.map +1 -0
- package/dist/cjs/components/presentation/auth/SignIn/v2/SignIn.cjs +560 -0
- package/dist/cjs/components/presentation/auth/SignIn/v2/SignIn.cjs.map +1 -0
- package/dist/cjs/components/presentation/auth/SignUp/BaseSignUp.cjs +20 -0
- package/dist/cjs/components/presentation/auth/SignUp/BaseSignUp.cjs.map +1 -0
- package/dist/cjs/components/presentation/auth/SignUp/BaseSignUp.styles.cjs +150 -0
- package/dist/cjs/components/presentation/auth/SignUp/BaseSignUp.styles.cjs.map +1 -0
- package/dist/cjs/components/presentation/auth/SignUp/SignUp.cjs +90 -0
- package/dist/cjs/components/presentation/auth/SignUp/SignUp.cjs.map +1 -0
- package/dist/cjs/components/presentation/auth/SignUp/v1/BaseSignUp.cjs +451 -0
- package/dist/cjs/components/presentation/auth/SignUp/v1/BaseSignUp.cjs.map +1 -0
- package/dist/cjs/components/presentation/auth/SignUp/v1/SignUp.cjs +54 -0
- package/dist/cjs/components/presentation/auth/SignUp/v1/SignUp.cjs.map +1 -0
- package/dist/cjs/components/presentation/auth/SignUp/v1/SignUpOptionFactory.cjs +164 -0
- package/dist/cjs/components/presentation/auth/SignUp/v1/SignUpOptionFactory.cjs.map +1 -0
- package/dist/cjs/components/presentation/auth/SignUp/v2/BaseSignUp.cjs +656 -0
- package/dist/cjs/components/presentation/auth/SignUp/v2/BaseSignUp.cjs.map +1 -0
- package/dist/cjs/components/presentation/auth/SignUp/v2/SignUp.cjs +80 -0
- package/dist/cjs/components/presentation/auth/SignUp/v2/SignUp.cjs.map +1 -0
- package/dist/cjs/components/primitives/Alert/Alert.cjs +107 -0
- package/dist/cjs/components/primitives/Alert/Alert.cjs.map +1 -0
- package/dist/cjs/components/primitives/Alert/Alert.styles.cjs +89 -0
- package/dist/cjs/components/primitives/Alert/Alert.styles.cjs.map +1 -0
- package/dist/cjs/components/primitives/Avatar/Avatar.cjs +65 -0
- package/dist/cjs/components/primitives/Avatar/Avatar.cjs.map +1 -0
- package/dist/cjs/components/primitives/Avatar/Avatar.styles.cjs +87 -0
- package/dist/cjs/components/primitives/Avatar/Avatar.styles.cjs.map +1 -0
- package/dist/cjs/components/primitives/Button/Button.cjs +97 -0
- package/dist/cjs/components/primitives/Button/Button.cjs.map +1 -0
- package/dist/cjs/components/primitives/Button/Button.styles.cjs +347 -0
- package/dist/cjs/components/primitives/Button/Button.styles.cjs.map +1 -0
- package/dist/cjs/components/primitives/Card/Card.cjs +178 -0
- package/dist/cjs/components/primitives/Card/Card.cjs.map +1 -0
- package/dist/cjs/components/primitives/Card/Card.styles.cjs +100 -0
- package/dist/cjs/components/primitives/Card/Card.styles.cjs.map +1 -0
- package/dist/cjs/components/primitives/Checkbox/Checkbox.cjs +46 -0
- package/dist/cjs/components/primitives/Checkbox/Checkbox.cjs.map +1 -0
- package/dist/cjs/components/primitives/Checkbox/Checkbox.styles.cjs +79 -0
- package/dist/cjs/components/primitives/Checkbox/Checkbox.styles.cjs.map +1 -0
- package/dist/cjs/components/primitives/CopyableText/CopyableText.cjs +63 -0
- package/dist/cjs/components/primitives/CopyableText/CopyableText.cjs.map +1 -0
- package/dist/cjs/components/primitives/CopyableText/CopyableText.styles.cjs +48 -0
- package/dist/cjs/components/primitives/CopyableText/CopyableText.styles.cjs.map +1 -0
- package/dist/cjs/components/primitives/DatePicker/DatePicker.cjs +47 -0
- package/dist/cjs/components/primitives/DatePicker/DatePicker.cjs.map +1 -0
- package/dist/cjs/components/primitives/DatePicker/DatePicker.styles.cjs +87 -0
- package/dist/cjs/components/primitives/DatePicker/DatePicker.styles.cjs.map +1 -0
- package/dist/cjs/components/primitives/Dialog/Dialog.cjs +200 -0
- package/dist/cjs/components/primitives/Dialog/Dialog.cjs.map +1 -0
- package/dist/cjs/components/primitives/Dialog/Dialog.styles.cjs +75 -0
- package/dist/cjs/components/primitives/Dialog/Dialog.styles.cjs.map +1 -0
- package/dist/cjs/components/primitives/Divider/Divider.cjs +71 -0
- package/dist/cjs/components/primitives/Divider/Divider.cjs.map +1 -0
- package/dist/cjs/components/primitives/Divider/Divider.styles.cjs +72 -0
- package/dist/cjs/components/primitives/Divider/Divider.styles.cjs.map +1 -0
- package/dist/cjs/components/primitives/FormControl/FormControl.cjs +33 -0
- package/dist/cjs/components/primitives/FormControl/FormControl.cjs.map +1 -0
- package/dist/cjs/components/primitives/FormControl/FormControl.styles.cjs +43 -0
- package/dist/cjs/components/primitives/FormControl/FormControl.styles.cjs.map +1 -0
- package/dist/cjs/components/primitives/Icons/ArrowLeftRight.cjs +31 -0
- package/dist/cjs/components/primitives/Icons/ArrowLeftRight.cjs.map +1 -0
- package/dist/cjs/components/primitives/Icons/ArrowRightLeft.cjs +31 -0
- package/dist/cjs/components/primitives/Icons/ArrowRightLeft.cjs.map +1 -0
- package/dist/cjs/components/primitives/Icons/Building.cjs +75 -0
- package/dist/cjs/components/primitives/Icons/Building.cjs.map +1 -0
- package/dist/cjs/components/primitives/Icons/BuildingAlt.cjs +37 -0
- package/dist/cjs/components/primitives/Icons/BuildingAlt.cjs.map +1 -0
- package/dist/cjs/components/primitives/Icons/Check.cjs +31 -0
- package/dist/cjs/components/primitives/Icons/Check.cjs.map +1 -0
- package/dist/cjs/components/primitives/Icons/ChevronDown.cjs +31 -0
- package/dist/cjs/components/primitives/Icons/ChevronDown.cjs.map +1 -0
- package/dist/cjs/components/primitives/Icons/CircleAlert.cjs +44 -0
- package/dist/cjs/components/primitives/Icons/CircleAlert.cjs.map +1 -0
- package/dist/cjs/components/primitives/Icons/CircleCheck.cjs +30 -0
- package/dist/cjs/components/primitives/Icons/CircleCheck.cjs.map +1 -0
- package/dist/cjs/components/primitives/Icons/Eye.cjs +30 -0
- package/dist/cjs/components/primitives/Icons/Eye.cjs.map +1 -0
- package/dist/cjs/components/primitives/Icons/EyeOff.cjs +31 -0
- package/dist/cjs/components/primitives/Icons/EyeOff.cjs.map +1 -0
- package/dist/cjs/components/primitives/Icons/Info.cjs +34 -0
- package/dist/cjs/components/primitives/Icons/Info.cjs.map +1 -0
- package/dist/cjs/components/primitives/Icons/LogOut.cjs +30 -0
- package/dist/cjs/components/primitives/Icons/LogOut.cjs.map +1 -0
- package/dist/cjs/components/primitives/Icons/Plus.cjs +26 -0
- package/dist/cjs/components/primitives/Icons/Plus.cjs.map +1 -0
- package/dist/cjs/components/primitives/Icons/TriangleAlert.cjs +30 -0
- package/dist/cjs/components/primitives/Icons/TriangleAlert.cjs.map +1 -0
- package/dist/cjs/components/primitives/Icons/User.cjs +30 -0
- package/dist/cjs/components/primitives/Icons/User.cjs.map +1 -0
- package/dist/cjs/components/primitives/Icons/X.cjs +26 -0
- package/dist/cjs/components/primitives/Icons/X.cjs.map +1 -0
- package/dist/cjs/components/primitives/Icons/flowIconRegistry.cjs +17 -0
- package/dist/cjs/components/primitives/Icons/flowIconRegistry.cjs.map +1 -0
- package/dist/cjs/components/primitives/InputLabel/InputLabel.cjs +32 -0
- package/dist/cjs/components/primitives/InputLabel/InputLabel.cjs.map +1 -0
- package/dist/cjs/components/primitives/InputLabel/InputLabel.styles.cjs +58 -0
- package/dist/cjs/components/primitives/InputLabel/InputLabel.styles.cjs.map +1 -0
- package/dist/cjs/components/primitives/KeyValueInput/KeyValueInput.cjs +215 -0
- package/dist/cjs/components/primitives/KeyValueInput/KeyValueInput.cjs.map +1 -0
- package/dist/cjs/components/primitives/KeyValueInput/KeyValueInput.styles.cjs +175 -0
- package/dist/cjs/components/primitives/KeyValueInput/KeyValueInput.styles.cjs.map +1 -0
- package/dist/cjs/components/primitives/Logo/Logo.cjs +37 -0
- package/dist/cjs/components/primitives/Logo/Logo.cjs.map +1 -0
- package/dist/cjs/components/primitives/Logo/Logo.styles.cjs +53 -0
- package/dist/cjs/components/primitives/Logo/Logo.styles.cjs.map +1 -0
- package/dist/cjs/components/primitives/MultiInput/MultiInput.cjs +142 -0
- package/dist/cjs/components/primitives/MultiInput/MultiInput.cjs.map +1 -0
- package/dist/cjs/components/primitives/MultiInput/MultiInput.styles.cjs +115 -0
- package/dist/cjs/components/primitives/MultiInput/MultiInput.styles.cjs.map +1 -0
- package/dist/cjs/components/primitives/OtpField/OtpField.cjs +129 -0
- package/dist/cjs/components/primitives/OtpField/OtpField.cjs.map +1 -0
- package/dist/cjs/components/primitives/OtpField/OtpField.styles.cjs +85 -0
- package/dist/cjs/components/primitives/OtpField/OtpField.styles.cjs.map +1 -0
- package/dist/cjs/components/primitives/PasswordField/PasswordField.cjs +49 -0
- package/dist/cjs/components/primitives/PasswordField/PasswordField.cjs.map +1 -0
- package/dist/cjs/components/primitives/PasswordField/PasswordField.styles.cjs +49 -0
- package/dist/cjs/components/primitives/PasswordField/PasswordField.styles.cjs.map +1 -0
- package/dist/cjs/components/primitives/Select/Select.cjs +50 -0
- package/dist/cjs/components/primitives/Select/Select.cjs.map +1 -0
- package/dist/cjs/components/primitives/Select/Select.styles.cjs +98 -0
- package/dist/cjs/components/primitives/Select/Select.styles.cjs.map +1 -0
- package/dist/cjs/components/primitives/Spinner/Spinner.cjs +41 -0
- package/dist/cjs/components/primitives/Spinner/Spinner.cjs.map +1 -0
- package/dist/cjs/components/primitives/Spinner/Spinner.styles.cjs +67 -0
- package/dist/cjs/components/primitives/Spinner/Spinner.styles.cjs.map +1 -0
- package/dist/cjs/components/primitives/TextField/TextField.cjs +66 -0
- package/dist/cjs/components/primitives/TextField/TextField.cjs.map +1 -0
- package/dist/cjs/components/primitives/TextField/TextField.styles.cjs +132 -0
- package/dist/cjs/components/primitives/TextField/TextField.styles.cjs.map +1 -0
- package/dist/cjs/components/primitives/Toggle/Toggle.cjs +64 -0
- package/dist/cjs/components/primitives/Toggle/Toggle.cjs.map +1 -0
- package/dist/cjs/components/primitives/Toggle/Toggle.styles.cjs +101 -0
- package/dist/cjs/components/primitives/Toggle/Toggle.styles.cjs.map +1 -0
- package/dist/cjs/components/primitives/Typography/Typography.cjs +64 -0
- package/dist/cjs/components/primitives/Typography/Typography.cjs.map +1 -0
- package/dist/cjs/components/primitives/Typography/Typography.styles.cjs +276 -0
- package/dist/cjs/components/primitives/Typography/Typography.styles.cjs.map +1 -0
- package/dist/cjs/contexts/Branding/BrandingContext.cjs +12 -0
- package/dist/cjs/contexts/Branding/BrandingContext.cjs.map +1 -0
- package/dist/cjs/contexts/Branding/BrandingProvider.cjs +96 -0
- package/dist/cjs/contexts/Branding/BrandingProvider.cjs.map +1 -0
- package/dist/cjs/contexts/Branding/useBrandingContext.cjs +40 -0
- package/dist/cjs/contexts/Branding/useBrandingContext.cjs.map +1 -0
- package/dist/cjs/contexts/ComponentRenderer/ComponentRendererContext.cjs +11 -0
- package/dist/cjs/contexts/ComponentRenderer/ComponentRendererContext.cjs.map +1 -0
- package/dist/cjs/contexts/ComponentRenderer/ComponentRendererProvider.cjs +15 -0
- package/dist/cjs/contexts/ComponentRenderer/ComponentRendererProvider.cjs.map +1 -0
- package/dist/cjs/contexts/Flow/FlowContext.cjs +17 -0
- package/dist/cjs/contexts/Flow/FlowContext.cjs.map +1 -0
- package/dist/cjs/contexts/Flow/FlowProvider.cjs +135 -0
- package/dist/cjs/contexts/Flow/FlowProvider.cjs.map +1 -0
- package/dist/cjs/contexts/Flow/useFlow.cjs +44 -0
- package/dist/cjs/contexts/Flow/useFlow.cjs.map +1 -0
- package/dist/cjs/contexts/FlowMeta/FlowMetaContext.cjs +12 -0
- package/dist/cjs/contexts/FlowMeta/FlowMetaContext.cjs.map +1 -0
- package/dist/cjs/contexts/FlowMeta/FlowMetaProvider.cjs +154 -0
- package/dist/cjs/contexts/FlowMeta/FlowMetaProvider.cjs.map +1 -0
- package/dist/cjs/contexts/FlowMeta/useFlowMeta.cjs +16 -0
- package/dist/cjs/contexts/FlowMeta/useFlowMeta.cjs.map +1 -0
- package/dist/cjs/contexts/I18n/ComponentPreferencesContext.cjs +16 -0
- package/dist/cjs/contexts/I18n/ComponentPreferencesContext.cjs.map +1 -0
- package/dist/cjs/contexts/I18n/I18nContext.cjs +12 -0
- package/dist/cjs/contexts/I18n/I18nContext.cjs.map +1 -0
- package/dist/cjs/contexts/I18n/I18nProvider.cjs +217 -0
- package/dist/cjs/contexts/I18n/I18nProvider.cjs.map +1 -0
- package/dist/cjs/contexts/I18n/useI18n.cjs +23 -0
- package/dist/cjs/contexts/I18n/useI18n.cjs.map +1 -0
- package/dist/cjs/contexts/Organization/OrganizationContext.cjs +27 -0
- package/dist/cjs/contexts/Organization/OrganizationContext.cjs.map +1 -0
- package/dist/cjs/contexts/Organization/OrganizationProvider.cjs +97 -0
- package/dist/cjs/contexts/Organization/OrganizationProvider.cjs.map +1 -0
- package/dist/cjs/contexts/Organization/useOrganization.cjs +100 -0
- package/dist/cjs/contexts/Organization/useOrganization.cjs.map +1 -0
- package/dist/cjs/contexts/Theme/ThemeContext.cjs +12 -0
- package/dist/cjs/contexts/Theme/ThemeContext.cjs.map +1 -0
- package/dist/cjs/contexts/Theme/ThemeProvider.cjs +69 -0
- package/dist/cjs/contexts/Theme/ThemeProvider.cjs.map +1 -0
- package/dist/cjs/contexts/Theme/useTheme.cjs +16 -0
- package/dist/cjs/contexts/Theme/useTheme.cjs.map +1 -0
- package/dist/cjs/contexts/Theme/v1/ThemeProvider.cjs +190 -0
- package/dist/cjs/contexts/Theme/v1/ThemeProvider.cjs.map +1 -0
- package/dist/cjs/contexts/Theme/v2/ThemeProvider.cjs +108 -0
- package/dist/cjs/contexts/Theme/v2/ThemeProvider.cjs.map +1 -0
- package/dist/cjs/contexts/ThunderID/ThunderIDContext.cjs +52 -0
- package/dist/cjs/contexts/ThunderID/ThunderIDContext.cjs.map +1 -0
- package/dist/cjs/contexts/ThunderID/ThunderIDProvider.cjs +407 -0
- package/dist/cjs/contexts/ThunderID/ThunderIDProvider.cjs.map +1 -0
- package/dist/cjs/contexts/ThunderID/useThunderID.cjs +32 -0
- package/dist/cjs/contexts/ThunderID/useThunderID.cjs.map +1 -0
- package/dist/cjs/contexts/User/UserContext.cjs +22 -0
- package/dist/cjs/contexts/User/UserContext.cjs.map +1 -0
- package/dist/cjs/contexts/User/UserProvider.cjs +60 -0
- package/dist/cjs/contexts/User/UserProvider.cjs.map +1 -0
- package/dist/cjs/contexts/User/useUser.cjs +90 -0
- package/dist/cjs/contexts/User/useUser.cjs.map +1 -0
- package/dist/cjs/hooks/useBranding.cjs +71 -0
- package/dist/cjs/hooks/useBranding.cjs.map +1 -0
- package/dist/cjs/hooks/useBrowserUrl.cjs +33 -0
- package/dist/cjs/hooks/useBrowserUrl.cjs.map +1 -0
- package/dist/cjs/hooks/useForm.cjs +217 -0
- package/dist/cjs/hooks/useForm.cjs.map +1 -0
- package/dist/cjs/hooks/useTranslation.cjs +79 -0
- package/dist/cjs/hooks/useTranslation.cjs.map +1 -0
- package/dist/cjs/hooks/v2/useOAuthCallback.cjs +86 -0
- package/dist/cjs/hooks/v2/useOAuthCallback.cjs.map +1 -0
- package/dist/cjs/index.cjs +375 -0
- package/dist/cjs/utils/applyThemeToDOM.cjs +16 -0
- package/dist/cjs/utils/applyThemeToDOM.cjs.map +1 -0
- package/dist/cjs/utils/getDisplayName.cjs +50 -0
- package/dist/cjs/utils/getDisplayName.cjs.map +1 -0
- package/dist/cjs/utils/getMappedUserProfileValue.cjs +61 -0
- package/dist/cjs/utils/getMappedUserProfileValue.cjs.map +1 -0
- package/dist/cjs/utils/normalizeThemeConfig.cjs +43 -0
- package/dist/cjs/utils/normalizeThemeConfig.cjs.map +1 -0
- package/dist/cjs/utils/oauth.cjs +28 -0
- package/dist/cjs/utils/oauth.cjs.map +1 -0
- package/dist/cjs/utils/v2/buildThemeConfigFromFlowMeta.cjs +48 -0
- package/dist/cjs/utils/v2/buildThemeConfigFromFlowMeta.cjs.map +1 -0
- package/dist/cjs/utils/v2/flowTransformer.cjs +153 -0
- package/dist/cjs/utils/v2/flowTransformer.cjs.map +1 -0
- package/dist/cjs/utils/v2/getAuthComponentHeadings.cjs +103 -0
- package/dist/cjs/utils/v2/getAuthComponentHeadings.cjs.map +1 -0
- package/dist/cjs/utils/v2/passkey.cjs +93 -0
- package/dist/cjs/utils/v2/passkey.cjs.map +1 -0
- package/dist/cjs/utils/v2/resolveTranslationsInArray.cjs +21 -0
- package/dist/cjs/utils/v2/resolveTranslationsInArray.cjs.map +1 -0
- package/dist/cjs/utils/v2/resolveTranslationsInObject.cjs +33 -0
- package/dist/cjs/utils/v2/resolveTranslationsInObject.cjs.map +1 -0
- package/dist/components/actions/SignInButton/BaseSignInButton.js +49 -0
- package/dist/components/actions/SignInButton/BaseSignInButton.js.map +1 -0
- package/dist/components/actions/SignInButton/SignInButton.d.ts +6 -0
- package/dist/components/actions/SignInButton/SignInButton.d.ts.map +1 -1
- package/dist/components/actions/SignInButton/SignInButton.js +84 -0
- package/dist/components/actions/SignInButton/SignInButton.js.map +1 -0
- package/dist/components/actions/SignOutButton/BaseSignOutButton.js +49 -0
- package/dist/components/actions/SignOutButton/BaseSignOutButton.js.map +1 -0
- package/dist/components/actions/SignOutButton/SignOutButton.js +80 -0
- package/dist/components/actions/SignOutButton/SignOutButton.js.map +1 -0
- package/dist/components/actions/SignUpButton/BaseSignUpButton.js +51 -0
- package/dist/components/actions/SignUpButton/BaseSignUpButton.js.map +1 -0
- package/dist/components/actions/SignUpButton/SignUpButton.js +82 -0
- package/dist/components/actions/SignUpButton/SignUpButton.js.map +1 -0
- package/dist/components/adapters/CheckboxInput.js +28 -0
- package/dist/components/adapters/CheckboxInput.js.map +1 -0
- package/dist/components/adapters/Consent.js +67 -0
- package/dist/components/adapters/Consent.js.map +1 -0
- package/dist/components/adapters/ConsentCheckboxList.js +76 -0
- package/dist/components/adapters/ConsentCheckboxList.js.map +1 -0
- package/dist/components/adapters/ConsentCheckboxList.styles.js +43 -0
- package/dist/components/adapters/ConsentCheckboxList.styles.js.map +1 -0
- package/dist/components/adapters/DateInput.js +28 -0
- package/dist/components/adapters/DateInput.js.map +1 -0
- package/dist/components/adapters/DividerComponent.js +22 -0
- package/dist/components/adapters/DividerComponent.js.map +1 -0
- package/dist/components/adapters/EmailInput.js +28 -0
- package/dist/components/adapters/EmailInput.js.map +1 -0
- package/dist/components/adapters/FacebookButton.js +39 -0
- package/dist/components/adapters/FacebookButton.js.map +1 -0
- package/dist/components/adapters/FlowTimer.js +49 -0
- package/dist/components/adapters/FlowTimer.js.map +1 -0
- package/dist/components/adapters/FormContainer.js +34 -0
- package/dist/components/adapters/FormContainer.js.map +1 -0
- package/dist/components/adapters/GitHubButton.js +39 -0
- package/dist/components/adapters/GitHubButton.js.map +1 -0
- package/dist/components/adapters/GoogleButton.js +57 -0
- package/dist/components/adapters/GoogleButton.js.map +1 -0
- package/dist/components/adapters/ImageComponent.js +74 -0
- package/dist/components/adapters/ImageComponent.js.map +1 -0
- package/dist/components/adapters/LinkedInButton.js +36 -0
- package/dist/components/adapters/LinkedInButton.js.map +1 -0
- package/dist/components/adapters/MicrosoftButton.js +54 -0
- package/dist/components/adapters/MicrosoftButton.js.map +1 -0
- package/dist/components/adapters/NumberInput.js +28 -0
- package/dist/components/adapters/NumberInput.js.map +1 -0
- package/dist/components/adapters/PasswordInput.js +50 -0
- package/dist/components/adapters/PasswordInput.js.map +1 -0
- package/dist/components/adapters/SelectInput.js +34 -0
- package/dist/components/adapters/SelectInput.js.map +1 -0
- package/dist/components/adapters/SignInWithEthereumButton.js +36 -0
- package/dist/components/adapters/SignInWithEthereumButton.js.map +1 -0
- package/dist/components/adapters/SmsOtpButton.js +36 -0
- package/dist/components/adapters/SmsOtpButton.js.map +1 -0
- package/dist/components/adapters/SubmitButton.js +59 -0
- package/dist/components/adapters/SubmitButton.js.map +1 -0
- package/dist/components/adapters/TelephoneInput.js +30 -0
- package/dist/components/adapters/TelephoneInput.js.map +1 -0
- package/dist/components/adapters/TextInput.js +28 -0
- package/dist/components/adapters/TextInput.js.map +1 -0
- package/dist/components/adapters/Typography.js +58 -0
- package/dist/components/adapters/Typography.js.map +1 -0
- package/dist/components/auth/Callback/Callback.d.ts +6 -44
- package/dist/components/auth/Callback/Callback.d.ts.map +1 -1
- package/dist/components/auth/Callback/Callback.js +23 -0
- package/dist/components/auth/Callback/Callback.js.map +1 -0
- package/dist/components/auth/Callback/OAuthCallback.d.ts +52 -0
- package/dist/components/auth/Callback/OAuthCallback.d.ts.map +1 -0
- package/dist/components/auth/Callback/OAuthCallback.js +101 -0
- package/dist/components/auth/Callback/OAuthCallback.js.map +1 -0
- package/dist/components/auth/Callback/TokenCallback.d.ts +44 -0
- package/dist/components/auth/Callback/TokenCallback.d.ts.map +1 -0
- package/dist/components/auth/Callback/TokenCallback.js +131 -0
- package/dist/components/auth/Callback/TokenCallback.js.map +1 -0
- package/dist/components/control/Loading.js +33 -0
- package/dist/components/control/Loading.js.map +1 -0
- package/dist/components/control/OrganizationContext/OrganizationContext.js +32 -0
- package/dist/components/control/OrganizationContext/OrganizationContext.js.map +1 -0
- package/dist/components/control/OrganizationContext/OrganizationContextController.js +55 -0
- package/dist/components/control/OrganizationContext/OrganizationContextController.js.map +1 -0
- package/dist/components/control/SignedIn.js +33 -0
- package/dist/components/control/SignedIn.js.map +1 -0
- package/dist/components/control/SignedOut.js +33 -0
- package/dist/components/control/SignedOut.js.map +1 -0
- package/dist/components/factories/FieldFactory.js +137 -0
- package/dist/components/factories/FieldFactory.js.map +1 -0
- package/dist/components/presentation/CreateOrganization/BaseCreateOrganization.js +178 -0
- package/dist/components/presentation/CreateOrganization/BaseCreateOrganization.js.map +1 -0
- package/dist/components/presentation/CreateOrganization/BaseCreateOrganization.styles.js +147 -0
- package/dist/components/presentation/CreateOrganization/BaseCreateOrganization.styles.js.map +1 -0
- package/dist/components/presentation/CreateOrganization/CreateOrganization.d.ts +1 -1
- package/dist/components/presentation/CreateOrganization/CreateOrganization.d.ts.map +1 -1
- package/dist/components/presentation/CreateOrganization/CreateOrganization.js +87 -0
- package/dist/components/presentation/CreateOrganization/CreateOrganization.js.map +1 -0
- package/dist/components/presentation/LanguageSwitcher/BaseLanguageSwitcher.js +113 -0
- package/dist/components/presentation/LanguageSwitcher/BaseLanguageSwitcher.js.map +1 -0
- package/dist/components/presentation/LanguageSwitcher/BaseLanguageSwitcher.styles.js +115 -0
- package/dist/components/presentation/LanguageSwitcher/BaseLanguageSwitcher.styles.js.map +1 -0
- package/dist/components/presentation/LanguageSwitcher/LanguageSwitcher.js +72 -0
- package/dist/components/presentation/LanguageSwitcher/LanguageSwitcher.js.map +1 -0
- package/dist/components/presentation/Organization/BaseOrganization.js +39 -0
- package/dist/components/presentation/Organization/BaseOrganization.js.map +1 -0
- package/dist/components/presentation/Organization/Organization.js +47 -0
- package/dist/components/presentation/Organization/Organization.js.map +1 -0
- package/dist/components/presentation/OrganizationList/BaseOrganizationList.js +252 -0
- package/dist/components/presentation/OrganizationList/BaseOrganizationList.js.map +1 -0
- package/dist/components/presentation/OrganizationList/BaseOrganizationList.styles.js +233 -0
- package/dist/components/presentation/OrganizationList/BaseOrganizationList.styles.js.map +1 -0
- package/dist/components/presentation/OrganizationList/OrganizationList.js +82 -0
- package/dist/components/presentation/OrganizationList/OrganizationList.js.map +1 -0
- package/dist/components/presentation/OrganizationList/OrganizationList.styles.js +72 -0
- package/dist/components/presentation/OrganizationList/OrganizationList.styles.js.map +1 -0
- package/dist/components/presentation/OrganizationProfile/BaseOrganizationProfile.d.ts +1 -1
- package/dist/components/presentation/OrganizationProfile/BaseOrganizationProfile.d.ts.map +1 -1
- package/dist/components/presentation/OrganizationProfile/BaseOrganizationProfile.js +323 -0
- package/dist/components/presentation/OrganizationProfile/BaseOrganizationProfile.js.map +1 -0
- package/dist/components/presentation/OrganizationProfile/BaseOrganizationProfile.styles.js +163 -0
- package/dist/components/presentation/OrganizationProfile/BaseOrganizationProfile.styles.js.map +1 -0
- package/dist/components/presentation/OrganizationProfile/OrganizationProfile.js +122 -0
- package/dist/components/presentation/OrganizationProfile/OrganizationProfile.js.map +1 -0
- package/dist/components/presentation/OrganizationSwitcher/BaseOrganizationSwitcher.d.ts +1 -1
- package/dist/components/presentation/OrganizationSwitcher/BaseOrganizationSwitcher.d.ts.map +1 -1
- package/dist/components/presentation/OrganizationSwitcher/BaseOrganizationSwitcher.js +282 -0
- package/dist/components/presentation/OrganizationSwitcher/BaseOrganizationSwitcher.js.map +1 -0
- package/dist/components/presentation/OrganizationSwitcher/BaseOrganizationSwitcher.styles.js +234 -0
- package/dist/components/presentation/OrganizationSwitcher/BaseOrganizationSwitcher.styles.js.map +1 -0
- package/dist/components/presentation/OrganizationSwitcher/OrganizationSwitcher.d.ts +1 -1
- package/dist/components/presentation/OrganizationSwitcher/OrganizationSwitcher.d.ts.map +1 -1
- package/dist/components/presentation/OrganizationSwitcher/OrganizationSwitcher.js +124 -0
- package/dist/components/presentation/OrganizationSwitcher/OrganizationSwitcher.js.map +1 -0
- package/dist/components/presentation/User/BaseUser.js +39 -0
- package/dist/components/presentation/User/BaseUser.js.map +1 -0
- package/dist/components/presentation/User/User.js +43 -0
- package/dist/components/presentation/User/User.js.map +1 -0
- package/dist/components/presentation/UserDropdown/BaseUserDropdown.d.ts +1 -1
- package/dist/components/presentation/UserDropdown/BaseUserDropdown.d.ts.map +1 -1
- package/dist/components/presentation/UserDropdown/BaseUserDropdown.js +184 -0
- package/dist/components/presentation/UserDropdown/BaseUserDropdown.js.map +1 -0
- package/dist/components/presentation/UserDropdown/BaseUserDropdown.styles.js +198 -0
- package/dist/components/presentation/UserDropdown/BaseUserDropdown.styles.js.map +1 -0
- package/dist/components/presentation/UserDropdown/UserDropdown.js +108 -0
- package/dist/components/presentation/UserDropdown/UserDropdown.js.map +1 -0
- package/dist/components/presentation/UserProfile/BaseUserProfile.d.ts +1 -1
- package/dist/components/presentation/UserProfile/BaseUserProfile.d.ts.map +1 -1
- package/dist/components/presentation/UserProfile/BaseUserProfile.js +455 -0
- package/dist/components/presentation/UserProfile/BaseUserProfile.js.map +1 -0
- package/dist/components/presentation/UserProfile/BaseUserProfile.styles.js +213 -0
- package/dist/components/presentation/UserProfile/BaseUserProfile.styles.js.map +1 -0
- package/dist/components/presentation/UserProfile/UserProfile.js +77 -0
- package/dist/components/presentation/UserProfile/UserProfile.js.map +1 -0
- package/dist/components/presentation/auth/AcceptInvite/v2/AcceptInvite.js +106 -0
- package/dist/components/presentation/auth/AcceptInvite/v2/AcceptInvite.js.map +1 -0
- package/dist/components/presentation/auth/AcceptInvite/v2/BaseAcceptInvite.d.ts +7 -3
- package/dist/components/presentation/auth/AcceptInvite/v2/BaseAcceptInvite.d.ts.map +1 -1
- package/dist/components/presentation/auth/AcceptInvite/v2/BaseAcceptInvite.js +500 -0
- package/dist/components/presentation/auth/AcceptInvite/v2/BaseAcceptInvite.js.map +1 -0
- package/dist/components/presentation/auth/AcceptInvite/v2/BaseAcceptInvite.styles.js +49 -0
- package/dist/components/presentation/auth/AcceptInvite/v2/BaseAcceptInvite.styles.js.map +1 -0
- package/dist/components/presentation/auth/AuthOptionFactory.d.ts.map +1 -1
- package/dist/components/presentation/auth/AuthOptionFactory.js +445 -0
- package/dist/components/presentation/auth/AuthOptionFactory.js.map +1 -0
- package/dist/components/presentation/auth/InviteUser/v2/BaseInviteUser.d.ts +3 -3
- package/dist/components/presentation/auth/InviteUser/v2/BaseInviteUser.d.ts.map +1 -1
- package/dist/components/presentation/auth/InviteUser/v2/BaseInviteUser.js +414 -0
- package/dist/components/presentation/auth/InviteUser/v2/BaseInviteUser.js.map +1 -0
- package/dist/components/presentation/auth/InviteUser/v2/BaseInviteUser.styles.js +49 -0
- package/dist/components/presentation/auth/InviteUser/v2/BaseInviteUser.styles.js.map +1 -0
- package/dist/components/presentation/auth/InviteUser/v2/InviteUser.js +114 -0
- package/dist/components/presentation/auth/InviteUser/v2/InviteUser.js.map +1 -0
- package/dist/components/presentation/auth/OrganizationUnitPicker/v2/OrganizationUnitPicker.js +179 -0
- package/dist/components/presentation/auth/OrganizationUnitPicker/v2/OrganizationUnitPicker.js.map +1 -0
- package/dist/components/presentation/auth/OrganizationUnitPicker/v2/OrganizationUnitPicker.styles.js +125 -0
- package/dist/components/presentation/auth/OrganizationUnitPicker/v2/OrganizationUnitPicker.styles.js.map +1 -0
- package/dist/components/presentation/auth/Recovery/BaseRecovery.js +17 -0
- package/dist/components/presentation/auth/Recovery/BaseRecovery.js.map +1 -0
- package/dist/components/presentation/auth/Recovery/Recovery.js +46 -0
- package/dist/components/presentation/auth/Recovery/Recovery.js.map +1 -0
- package/dist/components/presentation/auth/Recovery/v1/BaseRecovery.js +288 -0
- package/dist/components/presentation/auth/Recovery/v1/BaseRecovery.js.map +1 -0
- package/dist/components/presentation/auth/Recovery/v1/Recovery.js +40 -0
- package/dist/components/presentation/auth/Recovery/v1/Recovery.js.map +1 -0
- package/dist/components/presentation/auth/Recovery/v1/RecoveryOptionFactory.js +160 -0
- package/dist/components/presentation/auth/Recovery/v1/RecoveryOptionFactory.js.map +1 -0
- package/dist/components/presentation/auth/Recovery/v2/BaseRecovery.d.ts +5 -5
- package/dist/components/presentation/auth/Recovery/v2/BaseRecovery.d.ts.map +1 -1
- package/dist/components/presentation/auth/Recovery/v2/BaseRecovery.js +373 -0
- package/dist/components/presentation/auth/Recovery/v2/BaseRecovery.js.map +1 -0
- package/dist/components/presentation/auth/Recovery/v2/Recovery.d.ts.map +1 -1
- package/dist/components/presentation/auth/Recovery/v2/Recovery.js +74 -0
- package/dist/components/presentation/auth/Recovery/v2/Recovery.js.map +1 -0
- package/dist/components/presentation/auth/SignIn/BaseSignIn.js +17 -0
- package/dist/components/presentation/auth/SignIn/BaseSignIn.js.map +1 -0
- package/dist/components/presentation/auth/SignIn/BaseSignIn.styles.js +151 -0
- package/dist/components/presentation/auth/SignIn/BaseSignIn.styles.js.map +1 -0
- package/dist/components/presentation/auth/SignIn/SignIn.js +83 -0
- package/dist/components/presentation/auth/SignIn/SignIn.js.map +1 -0
- package/dist/components/presentation/auth/SignIn/v1/BaseSignIn.d.ts.map +1 -1
- package/dist/components/presentation/auth/SignIn/v1/BaseSignIn.js +729 -0
- package/dist/components/presentation/auth/SignIn/v1/BaseSignIn.js.map +1 -0
- package/dist/components/presentation/auth/SignIn/v1/options/EmailOtp.js +64 -0
- package/dist/components/presentation/auth/SignIn/v1/options/EmailOtp.js.map +1 -0
- package/dist/components/presentation/auth/SignIn/v1/options/IdentifierFirst.js +55 -0
- package/dist/components/presentation/auth/SignIn/v1/options/IdentifierFirst.js.map +1 -0
- package/dist/components/presentation/auth/SignIn/v1/options/MultiOptionButton.js +136 -0
- package/dist/components/presentation/auth/SignIn/v1/options/MultiOptionButton.js.map +1 -0
- package/dist/components/presentation/auth/SignIn/v1/options/SignInOptionFactory.js +143 -0
- package/dist/components/presentation/auth/SignIn/v1/options/SignInOptionFactory.js.map +1 -0
- package/dist/components/presentation/auth/SignIn/v1/options/SmsOtp.js +64 -0
- package/dist/components/presentation/auth/SignIn/v1/options/SmsOtp.js.map +1 -0
- package/dist/components/presentation/auth/SignIn/v1/options/SocialButton.js +36 -0
- package/dist/components/presentation/auth/SignIn/v1/options/SocialButton.js.map +1 -0
- package/dist/components/presentation/auth/SignIn/v1/options/Totp.js +64 -0
- package/dist/components/presentation/auth/SignIn/v1/options/Totp.js.map +1 -0
- package/dist/components/presentation/auth/SignIn/v1/options/UsernamePassword.js +56 -0
- package/dist/components/presentation/auth/SignIn/v1/options/UsernamePassword.js.map +1 -0
- package/dist/components/presentation/auth/SignIn/v2/BaseSignIn.d.ts +1 -1
- package/dist/components/presentation/auth/SignIn/v2/BaseSignIn.d.ts.map +1 -1
- package/dist/components/presentation/auth/SignIn/v2/BaseSignIn.js +325 -0
- package/dist/components/presentation/auth/SignIn/v2/BaseSignIn.js.map +1 -0
- package/dist/components/presentation/auth/SignIn/v2/SignIn.d.ts +1 -1
- package/dist/components/presentation/auth/SignIn/v2/SignIn.d.ts.map +1 -1
- package/dist/components/presentation/auth/SignIn/v2/SignIn.js +556 -0
- package/dist/components/presentation/auth/SignIn/v2/SignIn.js.map +1 -0
- package/dist/components/presentation/auth/SignUp/BaseSignUp.js +17 -0
- package/dist/components/presentation/auth/SignUp/BaseSignUp.js.map +1 -0
- package/dist/components/presentation/auth/SignUp/BaseSignUp.styles.js +147 -0
- package/dist/components/presentation/auth/SignUp/BaseSignUp.styles.js.map +1 -0
- package/dist/components/presentation/auth/SignUp/SignUp.js +87 -0
- package/dist/components/presentation/auth/SignUp/SignUp.js.map +1 -0
- package/dist/components/presentation/auth/SignUp/v1/BaseSignUp.js +446 -0
- package/dist/components/presentation/auth/SignUp/v1/BaseSignUp.js.map +1 -0
- package/dist/components/presentation/auth/SignUp/v1/SignUp.js +51 -0
- package/dist/components/presentation/auth/SignUp/v1/SignUp.js.map +1 -0
- package/dist/components/presentation/auth/SignUp/v1/SignUpOptionFactory.js +160 -0
- package/dist/components/presentation/auth/SignUp/v1/SignUpOptionFactory.js.map +1 -0
- package/dist/components/presentation/auth/SignUp/v2/BaseSignUp.d.ts +6 -6
- package/dist/components/presentation/auth/SignUp/v2/BaseSignUp.d.ts.map +1 -1
- package/dist/components/presentation/auth/SignUp/v2/BaseSignUp.js +651 -0
- package/dist/components/presentation/auth/SignUp/v2/BaseSignUp.js.map +1 -0
- package/dist/components/presentation/auth/SignUp/v2/SignUp.d.ts +1 -1
- package/dist/components/presentation/auth/SignUp/v2/SignUp.d.ts.map +1 -1
- package/dist/components/presentation/auth/SignUp/v2/SignUp.js +77 -0
- package/dist/components/presentation/auth/SignUp/v2/SignUp.js.map +1 -0
- package/dist/components/primitives/Alert/Alert.js +102 -0
- package/dist/components/primitives/Alert/Alert.js.map +1 -0
- package/dist/components/primitives/Alert/Alert.styles.js +86 -0
- package/dist/components/primitives/Alert/Alert.styles.js.map +1 -0
- package/dist/components/primitives/Avatar/Avatar.js +60 -0
- package/dist/components/primitives/Avatar/Avatar.js.map +1 -0
- package/dist/components/primitives/Avatar/Avatar.styles.js +84 -0
- package/dist/components/primitives/Avatar/Avatar.styles.js.map +1 -0
- package/dist/components/primitives/Button/Button.js +92 -0
- package/dist/components/primitives/Button/Button.js.map +1 -0
- package/dist/components/primitives/Button/Button.styles.js +344 -0
- package/dist/components/primitives/Button/Button.styles.js.map +1 -0
- package/dist/components/primitives/Card/Card.js +173 -0
- package/dist/components/primitives/Card/Card.js.map +1 -0
- package/dist/components/primitives/Card/Card.styles.js +97 -0
- package/dist/components/primitives/Card/Card.styles.js.map +1 -0
- package/dist/components/primitives/Checkbox/Checkbox.js +42 -0
- package/dist/components/primitives/Checkbox/Checkbox.js.map +1 -0
- package/dist/components/primitives/Checkbox/Checkbox.styles.js +76 -0
- package/dist/components/primitives/Checkbox/Checkbox.styles.js.map +1 -0
- package/dist/components/primitives/CopyableText/CopyableText.js +60 -0
- package/dist/components/primitives/CopyableText/CopyableText.js.map +1 -0
- package/dist/components/primitives/CopyableText/CopyableText.styles.js +45 -0
- package/dist/components/primitives/CopyableText/CopyableText.styles.js.map +1 -0
- package/dist/components/primitives/DatePicker/DatePicker.js +43 -0
- package/dist/components/primitives/DatePicker/DatePicker.js.map +1 -0
- package/dist/components/primitives/DatePicker/DatePicker.styles.js +84 -0
- package/dist/components/primitives/DatePicker/DatePicker.styles.js.map +1 -0
- package/dist/components/primitives/Dialog/Dialog.js +194 -0
- package/dist/components/primitives/Dialog/Dialog.js.map +1 -0
- package/dist/components/primitives/Dialog/Dialog.styles.js +72 -0
- package/dist/components/primitives/Dialog/Dialog.styles.js.map +1 -0
- package/dist/components/primitives/Divider/Divider.js +67 -0
- package/dist/components/primitives/Divider/Divider.js.map +1 -0
- package/dist/components/primitives/Divider/Divider.styles.js +69 -0
- package/dist/components/primitives/Divider/Divider.styles.js.map +1 -0
- package/dist/components/primitives/FormControl/FormControl.js +29 -0
- package/dist/components/primitives/FormControl/FormControl.js.map +1 -0
- package/dist/components/primitives/FormControl/FormControl.styles.js +40 -0
- package/dist/components/primitives/FormControl/FormControl.styles.js.map +1 -0
- package/dist/components/primitives/Icons/ArrowLeftRight.js +29 -0
- package/dist/components/primitives/Icons/ArrowLeftRight.js.map +1 -0
- package/dist/components/primitives/Icons/ArrowRightLeft.js +29 -0
- package/dist/components/primitives/Icons/ArrowRightLeft.js.map +1 -0
- package/dist/components/primitives/Icons/Building.js +73 -0
- package/dist/components/primitives/Icons/Building.js.map +1 -0
- package/dist/components/primitives/Icons/BuildingAlt.js +35 -0
- package/dist/components/primitives/Icons/BuildingAlt.js.map +1 -0
- package/dist/components/primitives/Icons/Check.js +29 -0
- package/dist/components/primitives/Icons/Check.js.map +1 -0
- package/dist/components/primitives/Icons/ChevronDown.js +29 -0
- package/dist/components/primitives/Icons/ChevronDown.js.map +1 -0
- package/dist/components/primitives/Icons/CircleAlert.js +42 -0
- package/dist/components/primitives/Icons/CircleAlert.js.map +1 -0
- package/dist/components/primitives/Icons/CircleCheck.js +28 -0
- package/dist/components/primitives/Icons/CircleCheck.js.map +1 -0
- package/dist/components/primitives/Icons/Eye.js +28 -0
- package/dist/components/primitives/Icons/Eye.js.map +1 -0
- package/dist/components/primitives/Icons/EyeOff.js +29 -0
- package/dist/components/primitives/Icons/EyeOff.js.map +1 -0
- package/dist/components/primitives/Icons/Info.js +32 -0
- package/dist/components/primitives/Icons/Info.js.map +1 -0
- package/dist/components/primitives/Icons/LogOut.js +28 -0
- package/dist/components/primitives/Icons/LogOut.js.map +1 -0
- package/dist/components/primitives/Icons/Plus.js +24 -0
- package/dist/components/primitives/Icons/Plus.js.map +1 -0
- package/dist/components/primitives/Icons/TriangleAlert.js +28 -0
- package/dist/components/primitives/Icons/TriangleAlert.js.map +1 -0
- package/dist/components/primitives/Icons/User.js +28 -0
- package/dist/components/primitives/Icons/User.js.map +1 -0
- package/dist/components/primitives/Icons/X.js +24 -0
- package/dist/components/primitives/Icons/X.js.map +1 -0
- package/dist/components/primitives/Icons/flowIconRegistry.js +17 -0
- package/dist/components/primitives/Icons/flowIconRegistry.js.map +1 -0
- package/dist/components/primitives/InputLabel/InputLabel.js +28 -0
- package/dist/components/primitives/InputLabel/InputLabel.js.map +1 -0
- package/dist/components/primitives/InputLabel/InputLabel.styles.js +55 -0
- package/dist/components/primitives/InputLabel/InputLabel.styles.js.map +1 -0
- package/dist/components/primitives/KeyValueInput/KeyValueInput.js +210 -0
- package/dist/components/primitives/KeyValueInput/KeyValueInput.js.map +1 -0
- package/dist/components/primitives/KeyValueInput/KeyValueInput.styles.js +172 -0
- package/dist/components/primitives/KeyValueInput/KeyValueInput.styles.js.map +1 -0
- package/dist/components/primitives/Logo/Logo.js +33 -0
- package/dist/components/primitives/Logo/Logo.js.map +1 -0
- package/dist/components/primitives/Logo/Logo.styles.js +50 -0
- package/dist/components/primitives/Logo/Logo.styles.js.map +1 -0
- package/dist/components/primitives/MultiInput/MultiInput.js +137 -0
- package/dist/components/primitives/MultiInput/MultiInput.js.map +1 -0
- package/dist/components/primitives/MultiInput/MultiInput.styles.js +112 -0
- package/dist/components/primitives/MultiInput/MultiInput.styles.js.map +1 -0
- package/dist/components/primitives/OtpField/OtpField.js +124 -0
- package/dist/components/primitives/OtpField/OtpField.js.map +1 -0
- package/dist/components/primitives/OtpField/OtpField.styles.js +82 -0
- package/dist/components/primitives/OtpField/OtpField.styles.js.map +1 -0
- package/dist/components/primitives/PasswordField/PasswordField.js +44 -0
- package/dist/components/primitives/PasswordField/PasswordField.js.map +1 -0
- package/dist/components/primitives/PasswordField/PasswordField.styles.js +46 -0
- package/dist/components/primitives/PasswordField/PasswordField.styles.js.map +1 -0
- package/dist/components/primitives/Select/Select.js +46 -0
- package/dist/components/primitives/Select/Select.js.map +1 -0
- package/dist/components/primitives/Select/Select.styles.js +95 -0
- package/dist/components/primitives/Select/Select.styles.js.map +1 -0
- package/dist/components/primitives/Spinner/Spinner.js +37 -0
- package/dist/components/primitives/Spinner/Spinner.js.map +1 -0
- package/dist/components/primitives/Spinner/Spinner.styles.js +64 -0
- package/dist/components/primitives/Spinner/Spinner.styles.js.map +1 -0
- package/dist/components/primitives/TextField/TextField.d.ts.map +1 -1
- package/dist/components/primitives/TextField/TextField.js +62 -0
- package/dist/components/primitives/TextField/TextField.js.map +1 -0
- package/dist/components/primitives/TextField/TextField.styles.js +129 -0
- package/dist/components/primitives/TextField/TextField.styles.js.map +1 -0
- package/dist/components/primitives/Toggle/Toggle.js +60 -0
- package/dist/components/primitives/Toggle/Toggle.js.map +1 -0
- package/dist/components/primitives/Toggle/Toggle.styles.js +98 -0
- package/dist/components/primitives/Toggle/Toggle.styles.js.map +1 -0
- package/dist/components/primitives/Typography/Typography.js +60 -0
- package/dist/components/primitives/Typography/Typography.js.map +1 -0
- package/dist/components/primitives/Typography/Typography.styles.js +273 -0
- package/dist/components/primitives/Typography/Typography.styles.js.map +1 -0
- package/dist/contexts/Branding/BrandingContext.js +10 -0
- package/dist/contexts/Branding/BrandingContext.js.map +1 -0
- package/dist/contexts/Branding/BrandingProvider.js +92 -0
- package/dist/contexts/Branding/BrandingProvider.js.map +1 -0
- package/dist/contexts/Branding/useBrandingContext.js +38 -0
- package/dist/contexts/Branding/useBrandingContext.js.map +1 -0
- package/dist/contexts/ComponentRenderer/ComponentRendererContext.js +9 -0
- package/dist/contexts/ComponentRenderer/ComponentRendererContext.js.map +1 -0
- package/dist/contexts/ComponentRenderer/ComponentRendererProvider.js +13 -0
- package/dist/contexts/ComponentRenderer/ComponentRendererProvider.js.map +1 -0
- package/dist/contexts/Flow/FlowContext.js +15 -0
- package/dist/contexts/Flow/FlowContext.js.map +1 -0
- package/dist/contexts/Flow/FlowProvider.js +132 -0
- package/dist/contexts/Flow/FlowProvider.js.map +1 -0
- package/dist/contexts/Flow/useFlow.js +42 -0
- package/dist/contexts/Flow/useFlow.js.map +1 -0
- package/dist/contexts/FlowMeta/FlowMetaContext.js +10 -0
- package/dist/contexts/FlowMeta/FlowMetaContext.js.map +1 -0
- package/dist/contexts/FlowMeta/FlowMetaProvider.d.ts.map +1 -1
- package/dist/contexts/FlowMeta/FlowMetaProvider.js +150 -0
- package/dist/contexts/FlowMeta/FlowMetaProvider.js.map +1 -0
- package/dist/contexts/FlowMeta/useFlowMeta.js +14 -0
- package/dist/contexts/FlowMeta/useFlowMeta.js.map +1 -0
- package/dist/contexts/I18n/ComponentPreferencesContext.js +14 -0
- package/dist/contexts/I18n/ComponentPreferencesContext.js.map +1 -0
- package/dist/contexts/I18n/I18nContext.js +10 -0
- package/dist/contexts/I18n/I18nContext.js.map +1 -0
- package/dist/contexts/I18n/I18nProvider.js +213 -0
- package/dist/contexts/I18n/I18nProvider.js.map +1 -0
- package/dist/contexts/I18n/useI18n.js +21 -0
- package/dist/contexts/I18n/useI18n.js.map +1 -0
- package/dist/contexts/Organization/OrganizationContext.js +25 -0
- package/dist/contexts/Organization/OrganizationContext.js.map +1 -0
- package/dist/contexts/Organization/OrganizationProvider.d.ts.map +1 -1
- package/dist/contexts/Organization/OrganizationProvider.js +93 -0
- package/dist/contexts/Organization/OrganizationProvider.js.map +1 -0
- package/dist/contexts/Organization/useOrganization.js +98 -0
- package/dist/contexts/Organization/useOrganization.js.map +1 -0
- package/dist/contexts/Theme/ThemeContext.js +10 -0
- package/dist/contexts/Theme/ThemeContext.js.map +1 -0
- package/dist/contexts/Theme/ThemeProvider.js +66 -0
- package/dist/contexts/Theme/ThemeProvider.js.map +1 -0
- package/dist/contexts/Theme/useTheme.js +14 -0
- package/dist/contexts/Theme/useTheme.js.map +1 -0
- package/dist/contexts/Theme/v1/ThemeProvider.js +186 -0
- package/dist/contexts/Theme/v1/ThemeProvider.js.map +1 -0
- package/dist/contexts/Theme/v2/ThemeProvider.js +104 -0
- package/dist/contexts/Theme/v2/ThemeProvider.js.map +1 -0
- package/dist/contexts/ThunderID/ThunderIDContext.d.ts +12 -2
- package/dist/contexts/ThunderID/ThunderIDContext.d.ts.map +1 -1
- package/dist/contexts/ThunderID/ThunderIDContext.js +50 -0
- package/dist/contexts/ThunderID/ThunderIDContext.js.map +1 -0
- package/dist/contexts/ThunderID/ThunderIDProvider.d.ts.map +1 -1
- package/dist/contexts/ThunderID/ThunderIDProvider.js +403 -0
- package/dist/contexts/ThunderID/ThunderIDProvider.js.map +1 -0
- package/dist/contexts/ThunderID/useThunderID.js +29 -0
- package/dist/contexts/ThunderID/useThunderID.js.map +1 -0
- package/dist/contexts/User/UserContext.js +20 -0
- package/dist/contexts/User/UserContext.js.map +1 -0
- package/dist/contexts/User/UserProvider.js +57 -0
- package/dist/contexts/User/UserProvider.js.map +1 -0
- package/dist/contexts/User/useUser.js +88 -0
- package/dist/contexts/User/useUser.js.map +1 -0
- package/dist/hooks/useBranding.d.ts +1 -1
- package/dist/hooks/useBranding.js +69 -0
- package/dist/hooks/useBranding.js.map +1 -0
- package/dist/hooks/useBrowserUrl.js +31 -0
- package/dist/hooks/useBrowserUrl.js.map +1 -0
- package/dist/hooks/useForm.js +214 -0
- package/dist/hooks/useForm.js.map +1 -0
- package/dist/hooks/useTranslation.js +76 -0
- package/dist/hooks/useTranslation.js.map +1 -0
- package/dist/hooks/v2/useOAuthCallback.js +84 -0
- package/dist/hooks/v2/useOAuthCallback.js.map +1 -0
- package/dist/index.d.ts +4 -1
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +123 -19542
- package/dist/utils/applyThemeToDOM.js +15 -0
- package/dist/utils/applyThemeToDOM.js.map +1 -0
- package/dist/utils/getDisplayName.d.ts.map +1 -1
- package/dist/utils/getDisplayName.js +50 -0
- package/dist/utils/getDisplayName.js.map +1 -0
- package/dist/utils/getMappedUserProfileValue.js +59 -0
- package/dist/utils/getMappedUserProfileValue.js.map +1 -0
- package/dist/utils/normalizeThemeConfig.js +42 -0
- package/dist/utils/normalizeThemeConfig.js.map +1 -0
- package/dist/utils/oauth.js +26 -0
- package/dist/utils/oauth.js.map +1 -0
- package/dist/utils/v2/buildThemeConfigFromFlowMeta.js +47 -0
- package/dist/utils/v2/buildThemeConfigFromFlowMeta.js.map +1 -0
- package/dist/utils/v2/flowTransformer.d.ts +17 -8
- package/dist/utils/v2/flowTransformer.d.ts.map +1 -1
- package/dist/utils/v2/flowTransformer.js +152 -0
- package/dist/utils/v2/flowTransformer.js.map +1 -0
- package/dist/utils/v2/getAuthComponentHeadings.d.ts.map +1 -1
- package/dist/utils/v2/getAuthComponentHeadings.js +102 -0
- package/dist/utils/v2/getAuthComponentHeadings.js.map +1 -0
- package/dist/utils/v2/passkey.js +90 -0
- package/dist/utils/v2/passkey.js.map +1 -0
- package/dist/utils/v2/resolveTranslationsInArray.js +21 -0
- package/dist/utils/v2/resolveTranslationsInArray.js.map +1 -0
- package/dist/utils/v2/resolveTranslationsInObject.js +31 -0
- package/dist/utils/v2/resolveTranslationsInObject.js.map +1 -0
- package/package.json +8 -7
- package/dist/cjs/index.js +0 -19819
- package/dist/cjs/index.js.map +0 -1
- package/dist/index.js.map +0 -1
|
@@ -0,0 +1,446 @@
|
|
|
1
|
+
import FlowProvider_default from "../../../../../contexts/Flow/FlowProvider.js";
|
|
2
|
+
import useThunderID_default from "../../../../../contexts/ThunderID/useThunderID.js";
|
|
3
|
+
import useFlow_default from "../../../../../contexts/Flow/useFlow.js";
|
|
4
|
+
import useTheme_default from "../../../../../contexts/Theme/useTheme.js";
|
|
5
|
+
import useTranslation_default from "../../../../../hooks/useTranslation.js";
|
|
6
|
+
import { useForm } from "../../../../../hooks/useForm.js";
|
|
7
|
+
import Spinner_default from "../../../../primitives/Spinner/Spinner.js";
|
|
8
|
+
import Typography_default from "../../../../primitives/Typography/Typography.js";
|
|
9
|
+
import Alert_default from "../../../../primitives/Alert/Alert.js";
|
|
10
|
+
import Card_default from "../../../../primitives/Card/Card.js";
|
|
11
|
+
import Logo_default from "../../../../primitives/Logo/Logo.js";
|
|
12
|
+
import { renderSignUpComponents } from "./SignUpOptionFactory.js";
|
|
13
|
+
import BaseSignUp_styles_default from "../BaseSignUp.styles.js";
|
|
14
|
+
import { EmbeddedFlowComponentType, EmbeddedFlowResponseType, EmbeddedFlowStatus, createPackageComponentLogger, withVendorCSSClassPrefix } from "@thunderid/browser";
|
|
15
|
+
import { useCallback, useEffect, useRef, useState } from "react";
|
|
16
|
+
import { jsx, jsxs } from "react/jsx-runtime";
|
|
17
|
+
import { cx } from "@emotion/css";
|
|
18
|
+
|
|
19
|
+
//#region src/components/presentation/auth/SignUp/v1/BaseSignUp.tsx
|
|
20
|
+
const logger$1 = createPackageComponentLogger("@thunderid/react", "BaseSignUp");
|
|
21
|
+
/**
|
|
22
|
+
* Component that consumes FlowContext and renders the sign-up UI.
|
|
23
|
+
*
|
|
24
|
+
* @internal
|
|
25
|
+
*/
|
|
26
|
+
const BaseSignUpContent = ({ afterSignUpUrl, onInitialize, onSubmit, onError, onFlowChange, onComplete, className = "", inputClassName = "", buttonClassName = "", errorClassName = "", messageClassName = "", size = "medium", variant = "outlined", isInitialized, children, showTitle = true, showSubtitle = true }) => {
|
|
27
|
+
const { theme, colorScheme } = useTheme_default();
|
|
28
|
+
const { t } = useTranslation_default();
|
|
29
|
+
const { subtitle: flowSubtitle, title: flowTitle, messages: flowMessages, addMessage, clearMessages } = useFlow_default();
|
|
30
|
+
useThunderID_default();
|
|
31
|
+
const styles = BaseSignUp_styles_default(theme, colorScheme);
|
|
32
|
+
const handleError = useCallback((error) => {
|
|
33
|
+
let errorMessage = t("errors.signup.flow.failure");
|
|
34
|
+
if (error && typeof error === "object") {
|
|
35
|
+
if (error.code && (error.message || error.description)) errorMessage = error.description || error.message;
|
|
36
|
+
else if (error instanceof Error && error.name === "ThunderIDAPIError") try {
|
|
37
|
+
const errorResponse = JSON.parse(error.message);
|
|
38
|
+
if (errorResponse.description) errorMessage = errorResponse.description;
|
|
39
|
+
else if (errorResponse.message) errorMessage = errorResponse.message;
|
|
40
|
+
else errorMessage = error.message;
|
|
41
|
+
} catch {
|
|
42
|
+
errorMessage = error.message;
|
|
43
|
+
}
|
|
44
|
+
else if (error.message) errorMessage = error.message;
|
|
45
|
+
} else if (typeof error === "string") errorMessage = error;
|
|
46
|
+
clearMessages();
|
|
47
|
+
addMessage({
|
|
48
|
+
message: errorMessage,
|
|
49
|
+
type: "error"
|
|
50
|
+
});
|
|
51
|
+
}, [
|
|
52
|
+
t,
|
|
53
|
+
addMessage,
|
|
54
|
+
clearMessages
|
|
55
|
+
]);
|
|
56
|
+
const [isLoading, setIsLoading] = useState(false);
|
|
57
|
+
const [isFlowInitialized, setIsFlowInitialized] = useState(false);
|
|
58
|
+
const [currentFlow, setCurrentFlow] = useState(null);
|
|
59
|
+
const initializationAttemptedRef = useRef(false);
|
|
60
|
+
/**
|
|
61
|
+
* Extract form fields from flow components
|
|
62
|
+
*/
|
|
63
|
+
const extractFormFields = useCallback((components) => {
|
|
64
|
+
const fields = [];
|
|
65
|
+
const processComponents = (comps) => {
|
|
66
|
+
comps.forEach((component) => {
|
|
67
|
+
if (component.type === EmbeddedFlowComponentType.Input) {
|
|
68
|
+
const config = component.config || {};
|
|
69
|
+
fields.push({
|
|
70
|
+
initialValue: config.defaultValue || "",
|
|
71
|
+
name: config.name || component.id,
|
|
72
|
+
required: config.required || false,
|
|
73
|
+
validator: (value) => {
|
|
74
|
+
if (config.required && (!value || value.trim() === "")) return t("validations.required.field.error");
|
|
75
|
+
if (config.type === "email" && value && !/^[^\s@]+@[^\s@]+\.[^\s@]+$/.test(value)) return t("field.email.invalid");
|
|
76
|
+
if (config.type === "password" && value && value.length < 8) return t("field.password.weak");
|
|
77
|
+
return null;
|
|
78
|
+
}
|
|
79
|
+
});
|
|
80
|
+
}
|
|
81
|
+
if (component.components && Array.isArray(component.components)) processComponents(component.components);
|
|
82
|
+
});
|
|
83
|
+
};
|
|
84
|
+
processComponents(components);
|
|
85
|
+
return fields;
|
|
86
|
+
}, [t]);
|
|
87
|
+
const { values: formValues, touched: touchedFields, errors: formErrors, isValid: isFormValid, setValue: setFormValue, setTouched: setFormTouched, validateForm, reset: resetForm } = useForm({
|
|
88
|
+
fields: currentFlow?.data?.components ? extractFormFields(currentFlow.data.components) : [],
|
|
89
|
+
initialValues: {},
|
|
90
|
+
requiredMessage: t("validations.required.field.error"),
|
|
91
|
+
validateOnBlur: true,
|
|
92
|
+
validateOnChange: true
|
|
93
|
+
});
|
|
94
|
+
/**
|
|
95
|
+
* Setup form fields based on the current flow.
|
|
96
|
+
*/
|
|
97
|
+
const setupFormFields = useCallback((flowResponse) => {
|
|
98
|
+
const fields = extractFormFields(flowResponse.data?.components || []);
|
|
99
|
+
const initialValues = {};
|
|
100
|
+
fields.forEach((field) => {
|
|
101
|
+
initialValues[field.name] = field.initialValue || "";
|
|
102
|
+
});
|
|
103
|
+
resetForm();
|
|
104
|
+
Object.keys(initialValues).forEach((key) => {
|
|
105
|
+
setFormValue(key, initialValues[key]);
|
|
106
|
+
});
|
|
107
|
+
}, [
|
|
108
|
+
extractFormFields,
|
|
109
|
+
resetForm,
|
|
110
|
+
setFormValue
|
|
111
|
+
]);
|
|
112
|
+
/**
|
|
113
|
+
* Handle input value changes.
|
|
114
|
+
*/
|
|
115
|
+
const handleInputChange = (name, value) => {
|
|
116
|
+
setFormValue(name, value);
|
|
117
|
+
setFormTouched(name, true);
|
|
118
|
+
};
|
|
119
|
+
/**
|
|
120
|
+
* Check if the response contains a redirection URL and perform the redirect if necessary.
|
|
121
|
+
* @param response - The sign-up response
|
|
122
|
+
* @returns true if a redirect was performed, false otherwise
|
|
123
|
+
*/
|
|
124
|
+
const handleRedirectionIfNeeded = (response) => {
|
|
125
|
+
if (response?.type === EmbeddedFlowResponseType.Redirection && response?.data?.redirectURL) {
|
|
126
|
+
/**
|
|
127
|
+
* Open a popup window to handle redirection prompts for social sign-up
|
|
128
|
+
*/
|
|
129
|
+
const redirectUrl = response.data.redirectURL;
|
|
130
|
+
const popup = window.open(redirectUrl, "oauth_popup", "width=500,height=600,scrollbars=yes,resizable=yes");
|
|
131
|
+
if (!popup) {
|
|
132
|
+
logger$1.error("Failed to open popup window");
|
|
133
|
+
return false;
|
|
134
|
+
}
|
|
135
|
+
/**
|
|
136
|
+
* Use `let` for messageHandler and popupMonitor to resolve circular references:
|
|
137
|
+
* messageHandler <-> cleanup <-> popupMonitor.
|
|
138
|
+
* All are assigned before any of them can be invoked at runtime.
|
|
139
|
+
*/
|
|
140
|
+
let hasProcessedCallback = false;
|
|
141
|
+
let popupMonitor;
|
|
142
|
+
let messageHandler;
|
|
143
|
+
const cleanup = () => {
|
|
144
|
+
window.removeEventListener("message", messageHandler);
|
|
145
|
+
if (popupMonitor) clearInterval(popupMonitor);
|
|
146
|
+
};
|
|
147
|
+
/**
|
|
148
|
+
* Add an event listener to the window to capture the message from the popup
|
|
149
|
+
*/
|
|
150
|
+
messageHandler = async function messageEventHandler(event) {
|
|
151
|
+
/**
|
|
152
|
+
* Check if the message is from our popup window
|
|
153
|
+
*/
|
|
154
|
+
if (event.source !== popup) return;
|
|
155
|
+
/**
|
|
156
|
+
* Check the origin of the message to ensure it's from a trusted source
|
|
157
|
+
*/
|
|
158
|
+
const expectedOrigin = afterSignUpUrl ? new URL(afterSignUpUrl).origin : window.location.origin;
|
|
159
|
+
if (event.origin !== expectedOrigin && event.origin !== window.location.origin) return;
|
|
160
|
+
const { code, state } = event.data;
|
|
161
|
+
if (code && state) {
|
|
162
|
+
const payload = {
|
|
163
|
+
...currentFlow.flowId && { flowId: currentFlow.flowId },
|
|
164
|
+
actionId: "",
|
|
165
|
+
flowType: currentFlow.flowType || "REGISTRATION",
|
|
166
|
+
inputs: {
|
|
167
|
+
code,
|
|
168
|
+
state
|
|
169
|
+
}
|
|
170
|
+
};
|
|
171
|
+
try {
|
|
172
|
+
const continueResponse = await onSubmit(payload);
|
|
173
|
+
onFlowChange?.(continueResponse);
|
|
174
|
+
if (continueResponse.flowStatus === EmbeddedFlowStatus.Complete) onComplete?.(continueResponse);
|
|
175
|
+
else if (continueResponse.flowStatus === EmbeddedFlowStatus.Incomplete) {
|
|
176
|
+
setCurrentFlow(continueResponse);
|
|
177
|
+
setupFormFields(continueResponse);
|
|
178
|
+
}
|
|
179
|
+
popup.close();
|
|
180
|
+
cleanup();
|
|
181
|
+
} catch (err) {
|
|
182
|
+
handleError(err);
|
|
183
|
+
onError?.(err);
|
|
184
|
+
popup.close();
|
|
185
|
+
cleanup();
|
|
186
|
+
}
|
|
187
|
+
}
|
|
188
|
+
};
|
|
189
|
+
window.addEventListener("message", messageHandler);
|
|
190
|
+
/**
|
|
191
|
+
* Monitor popup for closure and URL changes
|
|
192
|
+
*/
|
|
193
|
+
popupMonitor = setInterval(async () => {
|
|
194
|
+
try {
|
|
195
|
+
if (popup.closed) {
|
|
196
|
+
cleanup();
|
|
197
|
+
return;
|
|
198
|
+
}
|
|
199
|
+
if (hasProcessedCallback) return;
|
|
200
|
+
try {
|
|
201
|
+
const popupUrl = popup.location.href;
|
|
202
|
+
if (popupUrl && (popupUrl.includes("code=") || popupUrl.includes("error="))) {
|
|
203
|
+
hasProcessedCallback = true;
|
|
204
|
+
const url = new URL(popupUrl);
|
|
205
|
+
const code = url.searchParams.get("code");
|
|
206
|
+
const state = url.searchParams.get("state");
|
|
207
|
+
if (url.searchParams.get("error")) {
|
|
208
|
+
logger$1.error("OAuth error:");
|
|
209
|
+
popup.close();
|
|
210
|
+
cleanup();
|
|
211
|
+
return;
|
|
212
|
+
}
|
|
213
|
+
if (code && state) {
|
|
214
|
+
const payload = {
|
|
215
|
+
...currentFlow.flowId && { flowId: currentFlow.flowId },
|
|
216
|
+
actionId: "",
|
|
217
|
+
flowType: currentFlow.flowType || "REGISTRATION",
|
|
218
|
+
inputs: {
|
|
219
|
+
code,
|
|
220
|
+
state
|
|
221
|
+
}
|
|
222
|
+
};
|
|
223
|
+
try {
|
|
224
|
+
const continueResponse = await onSubmit(payload);
|
|
225
|
+
onFlowChange?.(continueResponse);
|
|
226
|
+
if (continueResponse.flowStatus === EmbeddedFlowStatus.Complete) onComplete?.(continueResponse);
|
|
227
|
+
else if (continueResponse.flowStatus === EmbeddedFlowStatus.Incomplete) {
|
|
228
|
+
setCurrentFlow(continueResponse);
|
|
229
|
+
setupFormFields(continueResponse);
|
|
230
|
+
}
|
|
231
|
+
popup.close();
|
|
232
|
+
} catch (err) {
|
|
233
|
+
handleError(err);
|
|
234
|
+
onError?.(err);
|
|
235
|
+
popup.close();
|
|
236
|
+
}
|
|
237
|
+
}
|
|
238
|
+
}
|
|
239
|
+
} catch (e) {}
|
|
240
|
+
} catch (e) {
|
|
241
|
+
logger$1.error("Error monitoring popup:");
|
|
242
|
+
}
|
|
243
|
+
}, 1e3);
|
|
244
|
+
return true;
|
|
245
|
+
}
|
|
246
|
+
return false;
|
|
247
|
+
};
|
|
248
|
+
/**
|
|
249
|
+
* Handle component submission (for buttons outside forms).
|
|
250
|
+
*/
|
|
251
|
+
const handleSubmit = async (component, data) => {
|
|
252
|
+
if (!currentFlow) return;
|
|
253
|
+
setIsLoading(true);
|
|
254
|
+
clearMessages();
|
|
255
|
+
try {
|
|
256
|
+
const filteredInputs = {};
|
|
257
|
+
if (data) Object.entries(data).forEach(([key, value]) => {
|
|
258
|
+
if (value !== null && value !== void 0 && value !== "") filteredInputs[key] = value;
|
|
259
|
+
});
|
|
260
|
+
const actionId = component.id;
|
|
261
|
+
const response = await onSubmit({
|
|
262
|
+
...currentFlow.flowId && { flowId: currentFlow.flowId },
|
|
263
|
+
flowType: currentFlow.flowType || "REGISTRATION",
|
|
264
|
+
inputs: filteredInputs,
|
|
265
|
+
...actionId && { actionId }
|
|
266
|
+
});
|
|
267
|
+
onFlowChange?.(response);
|
|
268
|
+
if (response.flowStatus === EmbeddedFlowStatus.Complete) {
|
|
269
|
+
onComplete?.(response);
|
|
270
|
+
return;
|
|
271
|
+
}
|
|
272
|
+
if (response.flowStatus === EmbeddedFlowStatus.Incomplete) {
|
|
273
|
+
if (handleRedirectionIfNeeded(response)) return;
|
|
274
|
+
setCurrentFlow(response);
|
|
275
|
+
setupFormFields(response);
|
|
276
|
+
}
|
|
277
|
+
} catch (err) {
|
|
278
|
+
handleError(err);
|
|
279
|
+
onError?.(err);
|
|
280
|
+
} finally {
|
|
281
|
+
setIsLoading(false);
|
|
282
|
+
}
|
|
283
|
+
};
|
|
284
|
+
const containerClasses = cx([
|
|
285
|
+
withVendorCSSClassPrefix("signup"),
|
|
286
|
+
withVendorCSSClassPrefix(`signup--${size}`),
|
|
287
|
+
withVendorCSSClassPrefix(`signup--${variant}`)
|
|
288
|
+
], className);
|
|
289
|
+
const inputClasses = cx([
|
|
290
|
+
withVendorCSSClassPrefix("signup__input"),
|
|
291
|
+
size === "small" && withVendorCSSClassPrefix("signup__input--small"),
|
|
292
|
+
size === "large" && withVendorCSSClassPrefix("signup__input--large")
|
|
293
|
+
], inputClassName);
|
|
294
|
+
const buttonClasses = cx([
|
|
295
|
+
withVendorCSSClassPrefix("signup__button"),
|
|
296
|
+
size === "small" && withVendorCSSClassPrefix("signup__button--small"),
|
|
297
|
+
size === "large" && withVendorCSSClassPrefix("signup__button--large")
|
|
298
|
+
], buttonClassName);
|
|
299
|
+
const errorClasses = cx([withVendorCSSClassPrefix("signup__error")], errorClassName);
|
|
300
|
+
const messageClasses = cx([withVendorCSSClassPrefix("signup__messages")], messageClassName);
|
|
301
|
+
/**
|
|
302
|
+
* Render form components based on flow data using the factory
|
|
303
|
+
*/
|
|
304
|
+
const renderComponents = useCallback((components) => renderSignUpComponents(components, formValues, touchedFields, formErrors, isLoading, isFormValid, handleInputChange, {
|
|
305
|
+
buttonClassName: buttonClasses,
|
|
306
|
+
inputClassName: inputClasses,
|
|
307
|
+
onSubmit: handleSubmit,
|
|
308
|
+
size,
|
|
309
|
+
variant
|
|
310
|
+
}), [
|
|
311
|
+
formValues,
|
|
312
|
+
touchedFields,
|
|
313
|
+
formErrors,
|
|
314
|
+
isFormValid,
|
|
315
|
+
isLoading,
|
|
316
|
+
size,
|
|
317
|
+
variant,
|
|
318
|
+
inputClasses,
|
|
319
|
+
buttonClasses,
|
|
320
|
+
handleSubmit
|
|
321
|
+
]);
|
|
322
|
+
useEffect(() => {
|
|
323
|
+
if (isInitialized && !isFlowInitialized && !initializationAttemptedRef.current) {
|
|
324
|
+
initializationAttemptedRef.current = true;
|
|
325
|
+
(async () => {
|
|
326
|
+
setIsLoading(true);
|
|
327
|
+
clearMessages();
|
|
328
|
+
try {
|
|
329
|
+
const response = await onInitialize?.();
|
|
330
|
+
setCurrentFlow(response);
|
|
331
|
+
setIsFlowInitialized(true);
|
|
332
|
+
onFlowChange?.(response);
|
|
333
|
+
if (response.flowStatus === EmbeddedFlowStatus.Complete) {
|
|
334
|
+
onComplete?.(response);
|
|
335
|
+
return;
|
|
336
|
+
}
|
|
337
|
+
if (response.flowStatus === EmbeddedFlowStatus.Incomplete) setupFormFields(response);
|
|
338
|
+
} catch (err) {
|
|
339
|
+
handleError(err);
|
|
340
|
+
onError?.(err);
|
|
341
|
+
} finally {
|
|
342
|
+
setIsLoading(false);
|
|
343
|
+
}
|
|
344
|
+
})();
|
|
345
|
+
}
|
|
346
|
+
}, [
|
|
347
|
+
isInitialized,
|
|
348
|
+
isFlowInitialized,
|
|
349
|
+
onInitialize,
|
|
350
|
+
onComplete,
|
|
351
|
+
onError,
|
|
352
|
+
onFlowChange,
|
|
353
|
+
setupFormFields,
|
|
354
|
+
afterSignUpUrl,
|
|
355
|
+
t
|
|
356
|
+
]);
|
|
357
|
+
if (children) return /* @__PURE__ */ jsx("div", {
|
|
358
|
+
className: containerClasses,
|
|
359
|
+
children: children({
|
|
360
|
+
components: currentFlow?.data?.components || [],
|
|
361
|
+
errors: formErrors,
|
|
362
|
+
handleInputChange,
|
|
363
|
+
handleSubmit,
|
|
364
|
+
isLoading,
|
|
365
|
+
isValid: isFormValid,
|
|
366
|
+
messages: flowMessages || [],
|
|
367
|
+
subtitle: flowSubtitle || t("signup.subheading"),
|
|
368
|
+
title: flowTitle || t("signup.heading"),
|
|
369
|
+
touched: touchedFields,
|
|
370
|
+
validateForm,
|
|
371
|
+
values: formValues
|
|
372
|
+
})
|
|
373
|
+
});
|
|
374
|
+
if (!isFlowInitialized && isLoading) return /* @__PURE__ */ jsx(Card_default, {
|
|
375
|
+
className: cx(containerClasses, styles.card),
|
|
376
|
+
variant,
|
|
377
|
+
children: /* @__PURE__ */ jsx(Card_default.Content, { children: /* @__PURE__ */ jsx("div", {
|
|
378
|
+
className: styles.loadingContainer,
|
|
379
|
+
children: /* @__PURE__ */ jsx(Spinner_default, { size: "medium" })
|
|
380
|
+
}) })
|
|
381
|
+
});
|
|
382
|
+
if (!currentFlow) return /* @__PURE__ */ jsx(Card_default, {
|
|
383
|
+
className: cx(containerClasses, styles.card),
|
|
384
|
+
variant,
|
|
385
|
+
children: /* @__PURE__ */ jsx(Card_default.Content, { children: /* @__PURE__ */ jsxs(Alert_default, {
|
|
386
|
+
variant: "error",
|
|
387
|
+
className: errorClasses,
|
|
388
|
+
children: [/* @__PURE__ */ jsx(Alert_default.Title, { children: t("errors.heading") }), /* @__PURE__ */ jsx(Alert_default.Description, { children: t("errors.signup.flow.initialization.failure") })]
|
|
389
|
+
}) })
|
|
390
|
+
});
|
|
391
|
+
return /* @__PURE__ */ jsxs(Card_default, {
|
|
392
|
+
className: cx(containerClasses, styles.card),
|
|
393
|
+
variant,
|
|
394
|
+
children: [(showTitle || showSubtitle) && /* @__PURE__ */ jsxs(Card_default.Header, {
|
|
395
|
+
className: styles.header,
|
|
396
|
+
children: [showTitle && /* @__PURE__ */ jsx(Card_default.Title, {
|
|
397
|
+
level: 2,
|
|
398
|
+
className: styles.title,
|
|
399
|
+
children: flowTitle || t("signup.heading")
|
|
400
|
+
}), showSubtitle && /* @__PURE__ */ jsx(Typography_default, {
|
|
401
|
+
variant: "body1",
|
|
402
|
+
className: styles.subtitle,
|
|
403
|
+
children: flowSubtitle || t("signup.subheading")
|
|
404
|
+
})]
|
|
405
|
+
}), /* @__PURE__ */ jsxs(Card_default.Content, { children: [flowMessages && flowMessages.length > 0 && /* @__PURE__ */ jsx("div", {
|
|
406
|
+
className: styles.flowMessagesContainer,
|
|
407
|
+
children: flowMessages.map((message, index) => /* @__PURE__ */ jsx(Alert_default, {
|
|
408
|
+
variant: message.type?.toLowerCase() === "error" ? "error" : "info",
|
|
409
|
+
className: cx(styles.flowMessageItem, messageClasses),
|
|
410
|
+
children: /* @__PURE__ */ jsx(Alert_default.Description, { children: message.message })
|
|
411
|
+
}, message.id || index))
|
|
412
|
+
}), /* @__PURE__ */ jsx("div", {
|
|
413
|
+
className: styles.contentContainer,
|
|
414
|
+
children: currentFlow.data?.components && currentFlow.data.components.length > 0 ? renderComponents(currentFlow.data.components) : /* @__PURE__ */ jsx(Alert_default, {
|
|
415
|
+
variant: "warning",
|
|
416
|
+
children: /* @__PURE__ */ jsx(Typography_default, {
|
|
417
|
+
variant: "body1",
|
|
418
|
+
children: t("errors.signup.components.not.available")
|
|
419
|
+
})
|
|
420
|
+
})
|
|
421
|
+
})] })]
|
|
422
|
+
});
|
|
423
|
+
};
|
|
424
|
+
/**
|
|
425
|
+
* BaseSignUp component that provides embedded sign-up flow for ThunderID.
|
|
426
|
+
* This component handles both the presentation layer and sign-up flow logic.
|
|
427
|
+
* It accepts API functions as props to maintain framework independence.
|
|
428
|
+
*
|
|
429
|
+
* @internal
|
|
430
|
+
*/
|
|
431
|
+
const BaseSignUp = ({ showLogo = true,...rest }) => {
|
|
432
|
+
const { theme, colorScheme } = useTheme_default();
|
|
433
|
+
const styles = BaseSignUp_styles_default(theme, colorScheme);
|
|
434
|
+
return /* @__PURE__ */ jsxs("div", { children: [showLogo && /* @__PURE__ */ jsx("div", {
|
|
435
|
+
className: styles.logoContainer,
|
|
436
|
+
children: /* @__PURE__ */ jsx(Logo_default, { size: "large" })
|
|
437
|
+
}), /* @__PURE__ */ jsx(FlowProvider_default, { children: /* @__PURE__ */ jsx(BaseSignUpContent, {
|
|
438
|
+
showLogo,
|
|
439
|
+
...rest
|
|
440
|
+
}) })] });
|
|
441
|
+
};
|
|
442
|
+
var BaseSignUp_default = BaseSignUp;
|
|
443
|
+
|
|
444
|
+
//#endregion
|
|
445
|
+
export { BaseSignUp_default as default };
|
|
446
|
+
//# sourceMappingURL=BaseSignUp.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"BaseSignUp.js","names":["logger: ReturnType<typeof createPackageComponentLogger>","BaseSignUpContent: FC<BaseSignUpProps>","useTheme","useTranslation","useFlow","styles: any","useStyles","handleError: any","errorMessage: string","errorResponse: any","initializationAttemptedRef: any","extractFormFields: any","fields: FormField[]","config: any","setupFormFields: any","fields: any","initialValues: Record<string, string>","redirectUrl: any","popup: any","hasProcessedCallback: any","popupMonitor: any","messageHandler: (event: MessageEvent) => Promise<void>","expectedOrigin: any","payload: EmbeddedFlowExecuteRequestPayload","continueResponse: any","popupUrl: any","url: any","code: any","state: any","filteredInputs: Record<string, any>","actionId: string","response: any","containerClasses: any","inputClasses: any","buttonClasses: any","errorClasses: any","messageClasses: any","renderComponents: any","CardPrimitive","Spinner","AlertPrimitive","Typography","BaseSignUp: FC<BaseSignUpProps>","Logo","FlowProvider"],"sources":["../../../../../../src/components/presentation/auth/SignUp/v1/BaseSignUp.tsx"],"sourcesContent":["/**\n * Copyright (c) 2025, WSO2 LLC. (https://www.wso2.com).\n *\n * WSO2 LLC. licenses this file to you under the Apache License,\n * Version 2.0 (the \"License\"); you may not use this file except\n * in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing,\n * software distributed under the License is distributed on an\n * \"AS IS\" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY\n * KIND, either express or implied. See the License for the\n * specific language governing permissions and limitations\n * under the License.\n */\n\nimport {cx} from '@emotion/css';\nimport {\n EmbeddedFlowExecuteRequestPayload,\n EmbeddedFlowExecuteResponse,\n EmbeddedFlowStatus,\n EmbeddedFlowComponentType,\n EmbeddedFlowResponseType,\n withVendorCSSClassPrefix,\n createPackageComponentLogger,\n} from '@thunderid/browser';\nimport {FC, ReactElement, ReactNode, useEffect, useState, useCallback, useRef} from 'react';\nimport {renderSignUpComponents} from './SignUpOptionFactory';\nimport FlowProvider from '../../../../../contexts/Flow/FlowProvider';\nimport useFlow from '../../../../../contexts/Flow/useFlow';\nimport useTheme from '../../../../../contexts/Theme/useTheme';\nimport useThunderID from '../../../../../contexts/ThunderID/useThunderID';\nimport {useForm, FormField} from '../../../../../hooks/useForm';\nimport useTranslation from '../../../../../hooks/useTranslation';\nimport AlertPrimitive from '../../../../primitives/Alert/Alert';\n// eslint-disable-next-line import/no-named-as-default\nimport CardPrimitive, {CardProps} from '../../../../primitives/Card/Card';\nimport Logo from '../../../../primitives/Logo/Logo';\nimport Spinner from '../../../../primitives/Spinner/Spinner';\nimport Typography from '../../../../primitives/Typography/Typography';\nimport useStyles from '../BaseSignUp.styles';\n\nconst logger: ReturnType<typeof createPackageComponentLogger> = createPackageComponentLogger(\n '@thunderid/react',\n 'BaseSignUp',\n);\n\n/**\n * Render props for custom UI rendering\n */\nexport interface BaseSignUpRenderProps {\n /**\n * Flow components\n */\n components: any[];\n\n /**\n * Form errors\n */\n errors: Record<string, string>;\n\n /**\n * Function to handle input changes\n */\n handleInputChange: (name: string, value: string) => void;\n\n /**\n * Function to handle form submission\n */\n handleSubmit: (component: any, data?: Record<string, any>) => Promise<void>;\n\n /**\n * Loading state\n */\n isLoading: boolean;\n\n /**\n * Whether the form is valid\n */\n isValid: boolean;\n\n /**\n * Flow messages\n */\n messages: {message: string; type: string}[];\n\n /**\n * Flow subtitle\n */\n subtitle: string;\n\n /**\n * Flow title\n */\n title: string;\n\n /**\n * Touched fields\n */\n touched: Record<string, boolean>;\n\n /**\n * Function to validate the form\n */\n validateForm: () => {errors: Record<string, string>; isValid: boolean};\n\n /**\n * Form values\n */\n values: Record<string, string>;\n}\n\n/**\n * Props for the BaseSignUp component.\n */\nexport interface BaseSignUpProps {\n /**\n * URL to redirect after successful sign-up.\n */\n afterSignUpUrl?: string;\n\n /**\n * Custom CSS class name for the submit button.\n */\n buttonClassName?: string;\n\n /**\n * Render props function for custom UI\n */\n children?: (props: BaseSignUpRenderProps) => ReactNode;\n\n /**\n * Custom CSS class name for the form container.\n */\n className?: string;\n\n /**\n * Custom CSS class name for error messages.\n */\n errorClassName?: string;\n\n /**\n * Custom CSS class name for form inputs.\n */\n inputClassName?: string;\n\n isInitialized?: boolean;\n\n /**\n * Custom CSS class name for info messages.\n */\n messageClassName?: string;\n\n /**\n * Callback function called when the sign-up flow completes and requires redirection.\n * This allows platform-specific handling of redirects (e.g., Next.js router.push).\n * @param response - The response from the sign-up flow containing the redirect URL, etc.\n */\n onComplete?: (response: EmbeddedFlowExecuteResponse) => void;\n\n /**\n * Callback function called when sign-up fails.\n * @param error - The error that occurred during sign-up.\n */\n onError?: (error: Error) => void;\n\n /**\n * Callback function called when sign-up flow status changes.\n * @param response - The current sign-up response.\n */\n onFlowChange?: (response: EmbeddedFlowExecuteResponse) => void;\n\n /**\n * Function to initialize sign-up flow.\n * @returns Promise resolving to the initial sign-up response.\n */\n onInitialize?: (payload?: EmbeddedFlowExecuteRequestPayload) => Promise<EmbeddedFlowExecuteResponse>;\n\n /**\n * Function to handle sign-up steps.\n * @param payload - The sign-up payload.\n * @returns Promise resolving to the sign-up response.\n */\n onSubmit?: (payload: EmbeddedFlowExecuteRequestPayload) => Promise<EmbeddedFlowExecuteResponse>;\n /**\n * Whether to redirect after sign-up.\n */\n shouldRedirectAfterSignUp?: boolean;\n\n /**\n * Whether to show the logo.\n */\n showLogo?: boolean;\n\n /**\n * Whether to show the subtitle.\n */\n showSubtitle?: boolean;\n\n /**\n * Whether to show the title.\n */\n showTitle?: boolean;\n\n /**\n * Size variant for the component.\n */\n size?: 'small' | 'medium' | 'large';\n\n /**\n * Theme variant for the component.\n */\n variant?: CardProps['variant'];\n}\n\n/**\n * Component that consumes FlowContext and renders the sign-up UI.\n *\n * @internal\n */\nconst BaseSignUpContent: FC<BaseSignUpProps> = ({\n afterSignUpUrl,\n onInitialize,\n onSubmit,\n onError,\n onFlowChange,\n onComplete,\n className = '',\n inputClassName = '',\n buttonClassName = '',\n errorClassName = '',\n messageClassName = '',\n size = 'medium',\n variant = 'outlined',\n isInitialized,\n children,\n showTitle = true,\n showSubtitle = true,\n}: BaseSignUpProps): ReactElement => {\n const {theme, colorScheme} = useTheme();\n const {t} = useTranslation();\n const {subtitle: flowSubtitle, title: flowTitle, messages: flowMessages, addMessage, clearMessages} = useFlow();\n useThunderID();\n const styles: any = useStyles(theme, colorScheme);\n\n const handleError: any = useCallback(\n (error: any) => {\n let errorMessage: string = t('errors.signup.flow.failure');\n\n if (error && typeof error === 'object') {\n // Handle ThunderID error format with code and description/message\n if (error.code && (error.message || error.description)) {\n errorMessage = error.description || error.message;\n } else if (error instanceof Error && error.name === 'ThunderIDAPIError') {\n try {\n const errorResponse: any = JSON.parse(error.message);\n if (errorResponse.description) {\n errorMessage = errorResponse.description;\n } else if (errorResponse.message) {\n errorMessage = errorResponse.message;\n } else {\n errorMessage = error.message;\n }\n } catch {\n errorMessage = error.message;\n }\n } else if (error.message) {\n errorMessage = error.message;\n }\n } else if (typeof error === 'string') {\n errorMessage = error;\n }\n\n // Clear existing messages and add the error message\n clearMessages();\n addMessage({\n message: errorMessage,\n type: 'error',\n });\n },\n [t, addMessage, clearMessages],\n );\n\n const [isLoading, setIsLoading] = useState(false);\n const [isFlowInitialized, setIsFlowInitialized] = useState(false);\n const [currentFlow, setCurrentFlow] = useState<EmbeddedFlowExecuteResponse | null>(null);\n\n const initializationAttemptedRef: any = useRef(false);\n\n /**\n * Extract form fields from flow components\n */\n const extractFormFields: any = useCallback(\n (components: any[]): FormField[] => {\n const fields: FormField[] = [];\n\n const processComponents = (comps: any[]): any => {\n comps.forEach((component: any) => {\n if (component.type === EmbeddedFlowComponentType.Input) {\n const config: any = component.config || {};\n fields.push({\n initialValue: config.defaultValue || '',\n name: config.name || component.id,\n required: config.required || false,\n validator: (value: string) => {\n if (config.required && (!value || value.trim() === '')) {\n return t('validations.required.field.error');\n }\n // Add email validation if it's an email field\n if (config.type === 'email' && value && !/^[^\\s@]+@[^\\s@]+\\.[^\\s@]+$/.test(value)) {\n return t('field.email.invalid');\n }\n // Add password strength validation if it's a password field\n if (config.type === 'password' && value && value.length < 8) {\n return t('field.password.weak');\n }\n return null;\n },\n });\n }\n\n if (component.components && Array.isArray(component.components)) {\n processComponents(component.components);\n }\n });\n };\n\n processComponents(components);\n return fields;\n },\n [t],\n );\n\n const formFields: any = currentFlow?.data?.components ? extractFormFields(currentFlow.data.components) : [];\n\n const form: any = useForm<Record<string, string>>({\n fields: formFields,\n initialValues: {},\n requiredMessage: t('validations.required.field.error'),\n validateOnBlur: true,\n validateOnChange: true,\n });\n\n const {\n values: formValues,\n touched: touchedFields,\n errors: formErrors,\n isValid: isFormValid,\n setValue: setFormValue,\n setTouched: setFormTouched,\n validateForm,\n reset: resetForm,\n } = form;\n\n /**\n * Setup form fields based on the current flow.\n */\n const setupFormFields: any = useCallback(\n (flowResponse: EmbeddedFlowExecuteResponse) => {\n const fields: any = extractFormFields(flowResponse.data?.components || []);\n const initialValues: Record<string, string> = {};\n\n fields.forEach((field: any) => {\n initialValues[field.name] = field.initialValue || '';\n });\n\n resetForm();\n\n Object.keys(initialValues).forEach((key: any) => {\n setFormValue(key, initialValues[key]);\n });\n },\n [extractFormFields, resetForm, setFormValue],\n );\n\n /**\n * Handle input value changes.\n */\n const handleInputChange = (name: string, value: string): void => {\n setFormValue(name, value);\n setFormTouched(name, true);\n };\n\n /**\n * Check if the response contains a redirection URL and perform the redirect if necessary.\n * @param response - The sign-up response\n * @returns true if a redirect was performed, false otherwise\n */\n const handleRedirectionIfNeeded = (response: EmbeddedFlowExecuteResponse): boolean => {\n if (response?.type === EmbeddedFlowResponseType.Redirection && response?.data?.redirectURL) {\n /**\n * Open a popup window to handle redirection prompts for social sign-up\n */\n const redirectUrl: any = response.data.redirectURL;\n const popup: any = window.open(redirectUrl, 'oauth_popup', 'width=500,height=600,scrollbars=yes,resizable=yes');\n\n if (!popup) {\n logger.error('Failed to open popup window');\n return false;\n }\n\n /**\n * Use `let` for messageHandler and popupMonitor to resolve circular references:\n * messageHandler <-> cleanup <-> popupMonitor.\n * All are assigned before any of them can be invoked at runtime.\n */\n let hasProcessedCallback: any = false; // Prevent multiple processing\n let popupMonitor: any;\n let messageHandler: (event: MessageEvent) => Promise<void>;\n\n const cleanup = (): void => {\n window.removeEventListener('message', messageHandler);\n if (popupMonitor) {\n clearInterval(popupMonitor);\n }\n };\n\n /**\n * Add an event listener to the window to capture the message from the popup\n */\n messageHandler = async function messageEventHandler(event: MessageEvent): Promise<void> {\n /**\n * Check if the message is from our popup window\n */\n if (event.source !== popup) {\n return;\n }\n\n /**\n * Check the origin of the message to ensure it's from a trusted source\n */\n const expectedOrigin: any = afterSignUpUrl ? new URL(afterSignUpUrl).origin : window.location.origin;\n if (event.origin !== expectedOrigin && event.origin !== window.location.origin) {\n return;\n }\n\n const {code, state} = event.data;\n\n if (code && state) {\n const payload: EmbeddedFlowExecuteRequestPayload = {\n ...(currentFlow!.flowId && {flowId: currentFlow!.flowId}),\n actionId: '',\n flowType: (currentFlow as any).flowType || 'REGISTRATION',\n inputs: {\n code,\n state,\n },\n } as any;\n\n try {\n const continueResponse: any = await onSubmit!(payload);\n onFlowChange?.(continueResponse);\n\n if (continueResponse.flowStatus === EmbeddedFlowStatus.Complete) {\n onComplete?.(continueResponse);\n } else if (continueResponse.flowStatus === EmbeddedFlowStatus.Incomplete) {\n setCurrentFlow(continueResponse);\n setupFormFields(continueResponse);\n }\n\n popup.close();\n cleanup();\n } catch (err) {\n handleError(err);\n onError?.(err as Error);\n popup.close();\n cleanup();\n }\n }\n };\n\n window.addEventListener('message', messageHandler);\n\n /**\n * Monitor popup for closure and URL changes\n */\n popupMonitor = setInterval(async () => {\n try {\n if (popup.closed) {\n cleanup();\n return;\n }\n\n // Skip if we've already processed a callback\n if (hasProcessedCallback) {\n return;\n }\n\n // Try to access popup URL to check for callback\n try {\n const popupUrl: any = popup.location.href;\n\n // Check if we've been redirected to the callback URL\n if (popupUrl && (popupUrl.includes('code=') || popupUrl.includes('error='))) {\n hasProcessedCallback = true; // Set flag to prevent multiple processing\n\n // Parse the URL for OAuth parameters\n const url: any = new URL(popupUrl);\n const code: any = url.searchParams.get('code');\n const state: any = url.searchParams.get('state');\n const error: any = url.searchParams.get('error');\n\n if (error) {\n logger.error('OAuth error:');\n popup.close();\n cleanup();\n return;\n }\n\n if (code && state) {\n const payload: EmbeddedFlowExecuteRequestPayload = {\n ...(currentFlow!.flowId && {flowId: currentFlow!.flowId}),\n actionId: '',\n flowType: (currentFlow as any).flowType || 'REGISTRATION',\n inputs: {\n code,\n state,\n },\n } as any;\n\n try {\n const continueResponse: any = await onSubmit!(payload);\n onFlowChange?.(continueResponse);\n\n if (continueResponse.flowStatus === EmbeddedFlowStatus.Complete) {\n onComplete?.(continueResponse);\n } else if (continueResponse.flowStatus === EmbeddedFlowStatus.Incomplete) {\n setCurrentFlow(continueResponse);\n setupFormFields(continueResponse);\n }\n\n popup.close();\n } catch (err) {\n handleError(err);\n onError?.(err as Error);\n popup.close();\n }\n }\n }\n } catch (e) {\n // Cross-origin error is expected when popup navigates to OAuth provider\n // This is normal and we can ignore it\n }\n } catch (e) {\n logger.error('Error monitoring popup:');\n }\n }, 1000);\n\n return true;\n }\n\n return false;\n };\n\n /**\n * Handle component submission (for buttons outside forms).\n */\n const handleSubmit = async (component: any, data?: Record<string, any>): Promise<void> => {\n if (!currentFlow) {\n return;\n }\n\n setIsLoading(true);\n clearMessages();\n\n try {\n // Filter out empty or undefined input values\n const filteredInputs: Record<string, any> = {};\n if (data) {\n Object.entries(data).forEach(([key, value]: [string, any]) => {\n if (value !== null && value !== undefined && value !== '') {\n filteredInputs[key] = value;\n }\n });\n }\n\n const actionId: string = component.id;\n\n const payload: EmbeddedFlowExecuteRequestPayload = {\n ...(currentFlow.flowId && {flowId: currentFlow.flowId}),\n flowType: (currentFlow as any).flowType || 'REGISTRATION',\n inputs: filteredInputs,\n ...(actionId && {actionId: actionId}),\n } as any;\n\n const response: any = await onSubmit!(payload);\n onFlowChange?.(response);\n\n if (response.flowStatus === EmbeddedFlowStatus.Complete) {\n onComplete?.(response);\n return;\n }\n\n if (response.flowStatus === EmbeddedFlowStatus.Incomplete) {\n if (handleRedirectionIfNeeded(response)) {\n return;\n }\n\n setCurrentFlow(response);\n setupFormFields(response);\n }\n } catch (err) {\n handleError(err);\n onError?.(err as Error);\n } finally {\n setIsLoading(false);\n }\n };\n\n const containerClasses: any = cx(\n [\n withVendorCSSClassPrefix('signup'),\n withVendorCSSClassPrefix(`signup--${size}`),\n withVendorCSSClassPrefix(`signup--${variant}`),\n ],\n className,\n );\n\n const inputClasses: any = cx(\n [\n withVendorCSSClassPrefix('signup__input'),\n size === 'small' && withVendorCSSClassPrefix('signup__input--small'),\n size === 'large' && withVendorCSSClassPrefix('signup__input--large'),\n ],\n inputClassName,\n );\n\n const buttonClasses: any = cx(\n [\n withVendorCSSClassPrefix('signup__button'),\n size === 'small' && withVendorCSSClassPrefix('signup__button--small'),\n size === 'large' && withVendorCSSClassPrefix('signup__button--large'),\n ],\n buttonClassName,\n );\n\n const errorClasses: any = cx([withVendorCSSClassPrefix('signup__error')], errorClassName);\n\n const messageClasses: any = cx([withVendorCSSClassPrefix('signup__messages')], messageClassName);\n\n /**\n * Render form components based on flow data using the factory\n */\n const renderComponents: any = useCallback(\n (components: any[]): ReactElement[] =>\n renderSignUpComponents(\n components,\n formValues,\n touchedFields,\n formErrors,\n isLoading,\n isFormValid,\n handleInputChange,\n {\n buttonClassName: buttonClasses,\n inputClassName: inputClasses,\n onSubmit: handleSubmit,\n size,\n variant,\n },\n ),\n [\n formValues,\n touchedFields,\n formErrors,\n isFormValid,\n isLoading,\n size,\n variant,\n inputClasses,\n buttonClasses,\n handleSubmit,\n ],\n );\n\n // Initialize the flow on component mount\n useEffect(() => {\n if (isInitialized && !isFlowInitialized && !initializationAttemptedRef.current) {\n initializationAttemptedRef.current = true;\n\n (async (): Promise<void> => {\n setIsLoading(true);\n clearMessages();\n\n try {\n const response: any = await onInitialize?.();\n\n setCurrentFlow(response);\n setIsFlowInitialized(true);\n onFlowChange?.(response);\n\n if (response.flowStatus === EmbeddedFlowStatus.Complete) {\n onComplete?.(response);\n return;\n }\n\n if (response.flowStatus === EmbeddedFlowStatus.Incomplete) {\n setupFormFields(response);\n }\n } catch (err) {\n handleError(err);\n onError?.(err as Error);\n } finally {\n setIsLoading(false);\n }\n })();\n }\n }, [\n isInitialized,\n isFlowInitialized,\n onInitialize,\n onComplete,\n onError,\n onFlowChange,\n setupFormFields,\n afterSignUpUrl,\n t,\n ]);\n\n // If render props are provided, use them\n if (children) {\n const renderProps: BaseSignUpRenderProps = {\n components: currentFlow?.data?.components || [],\n errors: formErrors,\n handleInputChange,\n handleSubmit,\n isLoading,\n isValid: isFormValid,\n messages: flowMessages || [],\n subtitle: flowSubtitle || t('signup.subheading'),\n title: flowTitle || t('signup.heading'),\n touched: touchedFields,\n validateForm,\n values: formValues,\n };\n\n return <div className={containerClasses}>{children(renderProps)}</div>;\n }\n\n if (!isFlowInitialized && isLoading) {\n return (\n <CardPrimitive className={cx(containerClasses, styles.card)} variant={variant}>\n <CardPrimitive.Content>\n <div className={styles.loadingContainer}>\n <Spinner size=\"medium\" />\n </div>\n </CardPrimitive.Content>\n </CardPrimitive>\n );\n }\n\n if (!currentFlow) {\n return (\n <CardPrimitive className={cx(containerClasses, styles.card)} variant={variant}>\n <CardPrimitive.Content>\n <AlertPrimitive variant=\"error\" className={errorClasses}>\n <AlertPrimitive.Title>{t('errors.heading')}</AlertPrimitive.Title>\n <AlertPrimitive.Description>{t('errors.signup.flow.initialization.failure')}</AlertPrimitive.Description>\n </AlertPrimitive>\n </CardPrimitive.Content>\n </CardPrimitive>\n );\n }\n\n return (\n <CardPrimitive className={cx(containerClasses, styles.card)} variant={variant}>\n {(showTitle || showSubtitle) && (\n <CardPrimitive.Header className={styles.header}>\n {showTitle && (\n <CardPrimitive.Title level={2} className={styles.title}>\n {flowTitle || t('signup.heading')}\n </CardPrimitive.Title>\n )}\n {showSubtitle && (\n <Typography variant=\"body1\" className={styles.subtitle}>\n {flowSubtitle || t('signup.subheading')}\n </Typography>\n )}\n </CardPrimitive.Header>\n )}\n <CardPrimitive.Content>\n {flowMessages && flowMessages.length > 0 && (\n <div className={styles.flowMessagesContainer}>\n {flowMessages.map((message: any, index: number) => (\n <AlertPrimitive\n key={message.id || index}\n variant={message.type?.toLowerCase() === 'error' ? 'error' : 'info'}\n className={cx(styles.flowMessageItem, messageClasses)}\n >\n <AlertPrimitive.Description>{message.message}</AlertPrimitive.Description>\n </AlertPrimitive>\n ))}\n </div>\n )}\n <div className={styles.contentContainer}>\n {currentFlow.data?.components && currentFlow.data.components.length > 0 ? (\n renderComponents(currentFlow.data.components)\n ) : (\n <AlertPrimitive variant=\"warning\">\n <Typography variant=\"body1\">{t('errors.signup.components.not.available')}</Typography>\n </AlertPrimitive>\n )}\n </div>\n </CardPrimitive.Content>\n </CardPrimitive>\n );\n};\n\n/**\n * BaseSignUp component that provides embedded sign-up flow for ThunderID.\n * This component handles both the presentation layer and sign-up flow logic.\n * It accepts API functions as props to maintain framework independence.\n *\n * @internal\n */\nconst BaseSignUp: FC<BaseSignUpProps> = ({showLogo = true, ...rest}: BaseSignUpProps): ReactElement => {\n const {theme, colorScheme} = useTheme();\n const styles: any = useStyles(theme, colorScheme);\n\n return (\n <div>\n {showLogo && (\n <div className={styles.logoContainer}>\n <Logo size=\"large\" />\n </div>\n )}\n <FlowProvider>\n <BaseSignUpContent showLogo={showLogo} {...rest} />\n </FlowProvider>\n </div>\n );\n};\n\nexport default BaseSignUp;\n"],"mappings":"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"}
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
import useThunderID_default from "../../../../../contexts/ThunderID/useThunderID.js";
|
|
2
|
+
import BaseSignUp_default from "./BaseSignUp.js";
|
|
3
|
+
import { EmbeddedFlowResponseType, EmbeddedFlowType } from "@thunderid/browser";
|
|
4
|
+
import { jsx } from "react/jsx-runtime";
|
|
5
|
+
|
|
6
|
+
//#region src/components/presentation/auth/SignUp/v1/SignUp.tsx
|
|
7
|
+
/**
|
|
8
|
+
* A styled SignUp component for ThunderID platform that provides embedded sign-up flow with pre-built styling.
|
|
9
|
+
* This component handles the API calls for sign-up and delegates UI logic to BaseSignUp.
|
|
10
|
+
*/
|
|
11
|
+
const SignUp = ({ className, size = "medium", afterSignUpUrl, onError, onComplete, shouldRedirectAfterSignUp = true, children,...rest }) => {
|
|
12
|
+
const { signUp, isInitialized } = useThunderID_default();
|
|
13
|
+
/**
|
|
14
|
+
* Initialize the sign-up flow.
|
|
15
|
+
*/
|
|
16
|
+
const handleInitialize = async (payload) => {
|
|
17
|
+
return await signUp(payload || { flowType: EmbeddedFlowType.Registration });
|
|
18
|
+
};
|
|
19
|
+
/**
|
|
20
|
+
* Handle sign-up steps.
|
|
21
|
+
*/
|
|
22
|
+
const handleOnSubmit = async (payload) => await signUp(payload);
|
|
23
|
+
/**
|
|
24
|
+
* Handle successful sign-up and redirect.
|
|
25
|
+
*/
|
|
26
|
+
const handleComplete = (response) => {
|
|
27
|
+
onComplete?.(response);
|
|
28
|
+
if (shouldRedirectAfterSignUp && response?.type !== EmbeddedFlowResponseType.Redirection && afterSignUpUrl) window.location.href = afterSignUpUrl;
|
|
29
|
+
if (shouldRedirectAfterSignUp && response?.type === EmbeddedFlowResponseType.Redirection && response?.data?.redirectURL && !response.data.redirectURL.includes("oauth") && !response.data.redirectURL.includes("auth")) window.location.href = response.data.redirectURL;
|
|
30
|
+
};
|
|
31
|
+
return /* @__PURE__ */ jsx(BaseSignUp_default, {
|
|
32
|
+
afterSignUpUrl,
|
|
33
|
+
onInitialize: handleInitialize,
|
|
34
|
+
onSubmit: handleOnSubmit,
|
|
35
|
+
onError,
|
|
36
|
+
onComplete: handleComplete,
|
|
37
|
+
className,
|
|
38
|
+
size,
|
|
39
|
+
isInitialized,
|
|
40
|
+
children,
|
|
41
|
+
showLogo: true,
|
|
42
|
+
showTitle: false,
|
|
43
|
+
showSubtitle: false,
|
|
44
|
+
...rest
|
|
45
|
+
});
|
|
46
|
+
};
|
|
47
|
+
var SignUp_default = SignUp;
|
|
48
|
+
|
|
49
|
+
//#endregion
|
|
50
|
+
export { SignUp_default as default };
|
|
51
|
+
//# sourceMappingURL=SignUp.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"SignUp.js","names":["SignUp: FC<SignUpProps>","useThunderID","BaseSignUp"],"sources":["../../../../../../src/components/presentation/auth/SignUp/v1/SignUp.tsx"],"sourcesContent":["/**\n * Copyright (c) 2025, WSO2 LLC. (https://www.wso2.com).\n *\n * WSO2 LLC. licenses this file to you under the Apache License,\n * Version 2.0 (the \"License\"); you may not use this file except\n * in compliance with the License.\n * You may obtain a copy of the License at\n *\n * http://www.apache.org/licenses/LICENSE-2.0\n *\n * Unless required by applicable law or agreed to in writing,\n * software distributed under the License is distributed on an\n * \"AS IS\" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY\n * KIND, either express or implied. See the License for the\n * specific language governing permissions and limitations\n * under the License.\n */\n\nimport {\n EmbeddedFlowExecuteRequestPayload,\n EmbeddedFlowExecuteResponse,\n EmbeddedFlowResponseType,\n EmbeddedFlowType,\n} from '@thunderid/browser';\nimport {FC, ReactElement, ReactNode} from 'react';\n// eslint-disable-next-line import/no-named-as-default\nimport BaseSignUp, {BaseSignUpProps, BaseSignUpRenderProps} from './BaseSignUp';\nimport useThunderID from '../../../../../contexts/ThunderID/useThunderID';\n\n/**\n * Render props function parameters (re-exported from BaseSignUp for convenience)\n */\nexport type SignUpRenderProps = BaseSignUpRenderProps;\n\n/**\n * Props for the SignUp component.\n */\nexport type SignUpProps = BaseSignUpProps & {\n /**\n * Render props function for custom UI\n */\n children?: (props: SignUpRenderProps) => ReactNode;\n};\n\n/**\n * A styled SignUp component for ThunderID platform that provides embedded sign-up flow with pre-built styling.\n * This component handles the API calls for sign-up and delegates UI logic to BaseSignUp.\n */\nconst SignUp: FC<SignUpProps> = ({\n className,\n size = 'medium',\n afterSignUpUrl,\n onError,\n onComplete,\n shouldRedirectAfterSignUp = true,\n children,\n ...rest\n}: SignUpProps): ReactElement => {\n const {signUp, isInitialized} = useThunderID();\n\n /**\n * Initialize the sign-up flow.\n */\n const handleInitialize = async (\n payload?: EmbeddedFlowExecuteRequestPayload,\n ): Promise<EmbeddedFlowExecuteResponse> => {\n // Uses simple initialization without applicationId\n const initialPayload: any = payload || {\n flowType: EmbeddedFlowType.Registration,\n };\n\n return (await signUp(initialPayload)) as EmbeddedFlowExecuteResponse;\n };\n\n /**\n * Handle sign-up steps.\n */\n const handleOnSubmit = async (payload: EmbeddedFlowExecuteRequestPayload): Promise<EmbeddedFlowExecuteResponse> =>\n (await signUp(payload)) as EmbeddedFlowExecuteResponse;\n\n /**\n * Handle successful sign-up and redirect.\n */\n const handleComplete = (response: EmbeddedFlowExecuteResponse): any => {\n onComplete?.(response);\n\n // For non-redirection responses (regular sign-up completion), handle redirect if configured\n if (shouldRedirectAfterSignUp && response?.type !== EmbeddedFlowResponseType.Redirection && afterSignUpUrl) {\n window.location.href = afterSignUpUrl;\n }\n\n // For redirection responses (social sign-up), handle direct redirect\n if (\n shouldRedirectAfterSignUp &&\n response?.type === EmbeddedFlowResponseType.Redirection &&\n response?.data?.redirectURL &&\n !response.data.redirectURL.includes('oauth') && // Not a social provider redirect\n !response.data.redirectURL.includes('auth') // Not an auth provider redirect\n ) {\n window.location.href = response.data.redirectURL;\n }\n };\n\n return (\n <BaseSignUp\n afterSignUpUrl={afterSignUpUrl}\n onInitialize={handleInitialize}\n onSubmit={handleOnSubmit}\n onError={onError}\n onComplete={handleComplete}\n className={className}\n size={size}\n isInitialized={isInitialized}\n children={children}\n showLogo={true}\n showTitle={false}\n showSubtitle={false}\n {...rest}\n />\n );\n};\n\nexport default SignUp;\n"],"mappings":";;;;;;;;;;AAgDA,MAAMA,UAA2B,EAC/B,WACA,OAAO,UACP,gBACA,SACA,YACA,4BAA4B,MAC5B,SACA,GAAG,WAC4B;CAC/B,MAAM,EAAC,QAAQ,kBAAiBC,sBAAc;;;;CAK9C,MAAM,mBAAmB,OACvB,YACyC;AAMzC,SAAQ,MAAM,OAJc,WAAW,EACrC,UAAU,iBAAiB,cAC5B,CAEmC;;;;;CAMtC,MAAM,iBAAiB,OAAO,YAC3B,MAAM,OAAO,QAAQ;;;;CAKxB,MAAM,kBAAkB,aAA+C;AACrE,eAAa,SAAS;AAGtB,MAAI,6BAA6B,UAAU,SAAS,yBAAyB,eAAe,eAC1F,QAAO,SAAS,OAAO;AAIzB,MACE,6BACA,UAAU,SAAS,yBAAyB,eAC5C,UAAU,MAAM,eAChB,CAAC,SAAS,KAAK,YAAY,SAAS,QAAQ,IAC5C,CAAC,SAAS,KAAK,YAAY,SAAS,OAAO,CAE3C,QAAO,SAAS,OAAO,SAAS,KAAK;;AAIzC,QACE,oBAACC;EACiB;EAChB,cAAc;EACd,UAAU;EACD;EACT,YAAY;EACD;EACL;EACS;EACL;EACV,UAAU;EACV,WAAW;EACX,cAAc;EACd,GAAI;GACJ;;AAIN,qBAAe"}
|