@thunderid/react 0.11.3 → 0.11.4
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 +0 -17
- package/dist/ThunderIDReactClient.d.ts.map +1 -1
- package/dist/ThunderIDReactClient.js.map +1 -1
- package/dist/api/getUsersMe.d.ts +0 -17
- package/dist/api/getUsersMe.d.ts.map +1 -1
- package/dist/api/getUsersMe.js.map +1 -1
- package/dist/api/updateMeProfile.d.ts +0 -17
- package/dist/api/updateMeProfile.d.ts.map +1 -1
- package/dist/api/updateMeProfile.js.map +1 -1
- package/dist/cjs/ThunderIDReactClient.cjs.map +1 -1
- package/dist/cjs/api/getUsersMe.cjs.map +1 -1
- package/dist/cjs/api/updateMeProfile.cjs.map +1 -1
- package/dist/cjs/components/actions/SignInButton/BaseSignInButton.cjs.map +1 -1
- package/dist/cjs/components/actions/SignInButton/SignInButton.cjs.map +1 -1
- package/dist/cjs/components/actions/SignOutButton/BaseSignOutButton.cjs.map +1 -1
- package/dist/cjs/components/actions/SignOutButton/SignOutButton.cjs.map +1 -1
- package/dist/cjs/components/actions/SignUpButton/BaseSignUpButton.cjs.map +1 -1
- package/dist/cjs/components/actions/SignUpButton/SignUpButton.cjs.map +1 -1
- package/dist/cjs/components/adapters/Consent.cjs.map +1 -1
- package/dist/cjs/components/adapters/ConsentCheckboxList.cjs.map +1 -1
- package/dist/cjs/components/adapters/ConsentCheckboxList.styles.cjs.map +1 -1
- package/dist/cjs/components/adapters/FacebookButton.cjs.map +1 -1
- package/dist/cjs/components/adapters/FlowTimer.cjs.map +1 -1
- package/dist/cjs/components/adapters/GitHubButton.cjs.map +1 -1
- package/dist/cjs/components/adapters/GoogleButton.cjs.map +1 -1
- package/dist/cjs/components/adapters/ImageComponent.cjs.map +1 -1
- package/dist/cjs/components/adapters/LinkedInButton.cjs.map +1 -1
- package/dist/cjs/components/adapters/MicrosoftButton.cjs.map +1 -1
- package/dist/cjs/components/adapters/SignInWithEthereumButton.cjs.map +1 -1
- package/dist/cjs/components/adapters/SmsOtpButton.cjs.map +1 -1
- package/dist/cjs/components/auth/Callback/Callback.cjs.map +1 -1
- package/dist/cjs/components/auth/Callback/OAuthCallback.cjs.map +1 -1
- package/dist/cjs/components/auth/Callback/TokenCallback.cjs.map +1 -1
- package/dist/cjs/components/control/Loading.cjs.map +1 -1
- package/dist/cjs/components/control/SignedIn.cjs.map +1 -1
- package/dist/cjs/components/control/SignedOut.cjs.map +1 -1
- package/dist/cjs/components/factories/FieldFactory.cjs.map +1 -1
- package/dist/cjs/components/presentation/LanguageSwitcher/BaseLanguageSwitcher.cjs.map +1 -1
- package/dist/cjs/components/presentation/LanguageSwitcher/BaseLanguageSwitcher.styles.cjs.map +1 -1
- package/dist/cjs/components/presentation/LanguageSwitcher/LanguageSwitcher.cjs.map +1 -1
- package/dist/cjs/components/presentation/User/BaseUser.cjs.map +1 -1
- package/dist/cjs/components/presentation/User/User.cjs.map +1 -1
- package/dist/cjs/components/presentation/UserAvatar/BaseUserAvatar.cjs.map +1 -1
- package/dist/cjs/components/presentation/UserAvatar/UserAvatar.cjs.map +1 -1
- package/dist/cjs/components/presentation/UserDropdown/BaseUserDropdown.cjs.map +1 -1
- package/dist/cjs/components/presentation/UserDropdown/BaseUserDropdown.styles.cjs.map +1 -1
- package/dist/cjs/components/presentation/UserDropdown/UserDropdown.cjs.map +1 -1
- package/dist/cjs/components/presentation/UserProfile/BaseUserProfile.cjs.map +1 -1
- package/dist/cjs/components/presentation/UserProfile/BaseUserProfile.styles.cjs.map +1 -1
- package/dist/cjs/components/presentation/UserProfile/UserProfile.cjs.map +1 -1
- package/dist/cjs/components/presentation/auth/AcceptInvite/AcceptInvite.cjs +3 -4
- package/dist/cjs/components/presentation/auth/AcceptInvite/AcceptInvite.cjs.map +1 -1
- package/dist/cjs/components/presentation/auth/AcceptInvite/BaseAcceptInvite.cjs.map +1 -1
- package/dist/cjs/components/presentation/auth/AcceptInvite/BaseAcceptInvite.styles.cjs.map +1 -1
- package/dist/cjs/components/presentation/auth/AuthOptionFactory.cjs.map +1 -1
- package/dist/cjs/components/presentation/auth/InviteUser/BaseInviteUser.cjs.map +1 -1
- package/dist/cjs/components/presentation/auth/InviteUser/BaseInviteUser.styles.cjs.map +1 -1
- package/dist/cjs/components/presentation/auth/InviteUser/InviteUser.cjs.map +1 -1
- package/dist/cjs/components/presentation/auth/Recovery/BaseRecovery.cjs.map +1 -1
- package/dist/cjs/components/presentation/auth/Recovery/Recovery.cjs.map +1 -1
- package/dist/cjs/components/presentation/auth/SignIn/BaseSignIn.cjs.map +1 -1
- package/dist/cjs/components/presentation/auth/SignIn/BaseSignIn.styles.cjs.map +1 -1
- package/dist/cjs/components/presentation/auth/SignIn/SignIn.cjs +10 -1
- package/dist/cjs/components/presentation/auth/SignIn/SignIn.cjs.map +1 -1
- package/dist/cjs/components/presentation/auth/SignUp/BaseSignUp.cjs.map +1 -1
- package/dist/cjs/components/presentation/auth/SignUp/BaseSignUp.styles.cjs.map +1 -1
- package/dist/cjs/components/presentation/auth/SignUp/SignUp.cjs.map +1 -1
- package/dist/cjs/components/primitives/AffixedField/AffixedField.cjs.map +1 -1
- package/dist/cjs/components/primitives/AffixedField/AffixedField.styles.cjs.map +1 -1
- package/dist/cjs/components/primitives/Alert/Alert.cjs.map +1 -1
- package/dist/cjs/components/primitives/Alert/Alert.styles.cjs.map +1 -1
- package/dist/cjs/components/primitives/Avatar/Avatar.cjs.map +1 -1
- package/dist/cjs/components/primitives/Avatar/Avatar.styles.cjs.map +1 -1
- package/dist/cjs/components/primitives/Button/Button.cjs.map +1 -1
- package/dist/cjs/components/primitives/Button/Button.styles.cjs.map +1 -1
- package/dist/cjs/components/primitives/Card/Card.cjs.map +1 -1
- package/dist/cjs/components/primitives/Card/Card.styles.cjs.map +1 -1
- package/dist/cjs/components/primitives/Checkbox/Checkbox.cjs.map +1 -1
- package/dist/cjs/components/primitives/Checkbox/Checkbox.styles.cjs.map +1 -1
- package/dist/cjs/components/primitives/CopyableText/CopyableText.cjs.map +1 -1
- package/dist/cjs/components/primitives/CopyableText/CopyableText.styles.cjs.map +1 -1
- package/dist/cjs/components/primitives/DatePicker/DatePicker.cjs.map +1 -1
- package/dist/cjs/components/primitives/DatePicker/DatePicker.styles.cjs.map +1 -1
- package/dist/cjs/components/primitives/Dialog/Dialog.cjs.map +1 -1
- package/dist/cjs/components/primitives/Dialog/Dialog.styles.cjs.map +1 -1
- package/dist/cjs/components/primitives/Divider/Divider.cjs.map +1 -1
- package/dist/cjs/components/primitives/Divider/Divider.styles.cjs.map +1 -1
- package/dist/cjs/components/primitives/FormControl/FormControl.cjs.map +1 -1
- package/dist/cjs/components/primitives/FormControl/FormControl.styles.cjs.map +1 -1
- package/dist/cjs/components/primitives/Icons/ArrowLeftRight.cjs.map +1 -1
- package/dist/cjs/components/primitives/Icons/ArrowRightLeft.cjs.map +1 -1
- package/dist/cjs/components/primitives/Icons/BuildingAlt.cjs.map +1 -1
- package/dist/cjs/components/primitives/Icons/Check.cjs.map +1 -1
- package/dist/cjs/components/primitives/Icons/ChevronDown.cjs.map +1 -1
- package/dist/cjs/components/primitives/Icons/CircleAlert.cjs.map +1 -1
- package/dist/cjs/components/primitives/Icons/CircleCheck.cjs.map +1 -1
- package/dist/cjs/components/primitives/Icons/Eye.cjs.map +1 -1
- package/dist/cjs/components/primitives/Icons/EyeOff.cjs.map +1 -1
- package/dist/cjs/components/primitives/Icons/Info.cjs.map +1 -1
- package/dist/cjs/components/primitives/Icons/LogOut.cjs.map +1 -1
- package/dist/cjs/components/primitives/Icons/Plus.cjs.map +1 -1
- package/dist/cjs/components/primitives/Icons/TriangleAlert.cjs.map +1 -1
- package/dist/cjs/components/primitives/Icons/User.cjs.map +1 -1
- package/dist/cjs/components/primitives/Icons/X.cjs.map +1 -1
- package/dist/cjs/components/primitives/Icons/flowIconRegistry.cjs.map +1 -1
- package/dist/cjs/components/primitives/InputLabel/InputLabel.cjs.map +1 -1
- package/dist/cjs/components/primitives/InputLabel/InputLabel.styles.cjs.map +1 -1
- package/dist/cjs/components/primitives/KeyValueInput/KeyValueInput.cjs.map +1 -1
- package/dist/cjs/components/primitives/KeyValueInput/KeyValueInput.styles.cjs.map +1 -1
- package/dist/cjs/components/primitives/Logo/Logo.cjs.map +1 -1
- package/dist/cjs/components/primitives/Logo/Logo.styles.cjs.map +1 -1
- package/dist/cjs/components/primitives/MultiInput/MultiInput.cjs.map +1 -1
- package/dist/cjs/components/primitives/MultiInput/MultiInput.styles.cjs.map +1 -1
- package/dist/cjs/components/primitives/OtpField/OtpField.cjs.map +1 -1
- package/dist/cjs/components/primitives/OtpField/OtpField.styles.cjs.map +1 -1
- package/dist/cjs/components/primitives/PasswordField/PasswordField.cjs.map +1 -1
- package/dist/cjs/components/primitives/PasswordField/PasswordField.styles.cjs.map +1 -1
- package/dist/cjs/components/primitives/Select/Select.cjs.map +1 -1
- package/dist/cjs/components/primitives/Select/Select.styles.cjs.map +1 -1
- package/dist/cjs/components/primitives/Spinner/Spinner.cjs.map +1 -1
- package/dist/cjs/components/primitives/Spinner/Spinner.styles.cjs.map +1 -1
- package/dist/cjs/components/primitives/TextField/TextField.cjs.map +1 -1
- package/dist/cjs/components/primitives/TextField/TextField.styles.cjs.map +1 -1
- package/dist/cjs/components/primitives/Toggle/Toggle.cjs.map +1 -1
- package/dist/cjs/components/primitives/Toggle/Toggle.styles.cjs.map +1 -1
- package/dist/cjs/components/primitives/Tooltip/Tooltip.cjs.map +1 -1
- package/dist/cjs/components/primitives/Tooltip/Tooltip.styles.cjs.map +1 -1
- package/dist/cjs/components/primitives/Typography/Typography.cjs.map +1 -1
- package/dist/cjs/components/primitives/Typography/Typography.styles.cjs.map +1 -1
- package/dist/cjs/contexts/ComponentRenderer/ComponentRendererContext.cjs.map +1 -1
- package/dist/cjs/contexts/ComponentRenderer/ComponentRendererProvider.cjs.map +1 -1
- package/dist/cjs/contexts/Flow/FlowContext.cjs.map +1 -1
- package/dist/cjs/contexts/Flow/FlowProvider.cjs.map +1 -1
- package/dist/cjs/contexts/Flow/useFlow.cjs.map +1 -1
- package/dist/cjs/contexts/FlowMeta/FlowMetaContext.cjs.map +1 -1
- package/dist/cjs/contexts/FlowMeta/FlowMetaProvider.cjs.map +1 -1
- package/dist/cjs/contexts/FlowMeta/useFlowMeta.cjs.map +1 -1
- package/dist/cjs/contexts/I18n/ComponentPreferencesContext.cjs.map +1 -1
- package/dist/cjs/contexts/I18n/I18nContext.cjs.map +1 -1
- package/dist/cjs/contexts/I18n/I18nProvider.cjs.map +1 -1
- package/dist/cjs/contexts/I18n/useI18n.cjs.map +1 -1
- package/dist/cjs/contexts/Theme/ThemeContext.cjs.map +1 -1
- package/dist/cjs/contexts/Theme/ThemeProvider.cjs.map +1 -1
- package/dist/cjs/contexts/Theme/useTheme.cjs.map +1 -1
- package/dist/cjs/contexts/ThunderID/ThunderIDContext.cjs.map +1 -1
- package/dist/cjs/contexts/ThunderID/ThunderIDProvider.cjs.map +1 -1
- package/dist/cjs/contexts/ThunderID/useThunderID.cjs.map +1 -1
- package/dist/cjs/contexts/User/UserContext.cjs.map +1 -1
- package/dist/cjs/contexts/User/UserProvider.cjs.map +1 -1
- package/dist/cjs/contexts/User/useUser.cjs.map +1 -1
- package/dist/cjs/hooks/useBrowserUrl.cjs.map +1 -1
- package/dist/cjs/hooks/useForm.cjs.map +1 -1
- package/dist/cjs/hooks/useOAuthCallback.cjs.map +1 -1
- package/dist/cjs/hooks/useTranslation.cjs.map +1 -1
- package/dist/cjs/utils/applyThemeToDOM.cjs.map +1 -1
- package/dist/cjs/utils/buildThemeConfigFromFlowMeta.cjs.map +1 -1
- package/dist/cjs/utils/composeAffixedInputs.cjs.map +1 -1
- package/dist/cjs/utils/flowTransformer.cjs.map +1 -1
- package/dist/cjs/utils/getAuthComponentHeadings.cjs.map +1 -1
- package/dist/cjs/utils/getDisplayName.cjs.map +1 -1
- package/dist/cjs/utils/getMappedUserProfileValue.cjs.map +1 -1
- package/dist/cjs/utils/normalizeThemeConfig.cjs.map +1 -1
- package/dist/cjs/utils/oauth.cjs.map +1 -1
- package/dist/cjs/utils/passkey.cjs.map +1 -1
- package/dist/cjs/utils/resolveTranslationsInArray.cjs.map +1 -1
- package/dist/cjs/utils/resolveTranslationsInObject.cjs.map +1 -1
- package/dist/components/actions/SignInButton/BaseSignInButton.d.ts +0 -17
- package/dist/components/actions/SignInButton/BaseSignInButton.d.ts.map +1 -1
- package/dist/components/actions/SignInButton/BaseSignInButton.js.map +1 -1
- package/dist/components/actions/SignInButton/SignInButton.d.ts +0 -17
- package/dist/components/actions/SignInButton/SignInButton.d.ts.map +1 -1
- package/dist/components/actions/SignInButton/SignInButton.js.map +1 -1
- package/dist/components/actions/SignOutButton/BaseSignOutButton.d.ts +0 -17
- package/dist/components/actions/SignOutButton/BaseSignOutButton.d.ts.map +1 -1
- package/dist/components/actions/SignOutButton/BaseSignOutButton.js.map +1 -1
- package/dist/components/actions/SignOutButton/SignOutButton.d.ts +0 -17
- package/dist/components/actions/SignOutButton/SignOutButton.d.ts.map +1 -1
- package/dist/components/actions/SignOutButton/SignOutButton.js.map +1 -1
- package/dist/components/actions/SignUpButton/BaseSignUpButton.d.ts +0 -17
- package/dist/components/actions/SignUpButton/BaseSignUpButton.d.ts.map +1 -1
- package/dist/components/actions/SignUpButton/BaseSignUpButton.js.map +1 -1
- package/dist/components/actions/SignUpButton/SignUpButton.d.ts +0 -17
- package/dist/components/actions/SignUpButton/SignUpButton.d.ts.map +1 -1
- package/dist/components/actions/SignUpButton/SignUpButton.js.map +1 -1
- package/dist/components/adapters/Consent.d.ts +0 -17
- package/dist/components/adapters/Consent.d.ts.map +1 -1
- package/dist/components/adapters/Consent.js.map +1 -1
- package/dist/components/adapters/ConsentCheckboxList.d.ts +0 -17
- package/dist/components/adapters/ConsentCheckboxList.d.ts.map +1 -1
- package/dist/components/adapters/ConsentCheckboxList.js.map +1 -1
- package/dist/components/adapters/ConsentCheckboxList.styles.d.ts +0 -17
- package/dist/components/adapters/ConsentCheckboxList.styles.d.ts.map +1 -1
- package/dist/components/adapters/ConsentCheckboxList.styles.js.map +1 -1
- package/dist/components/adapters/FacebookButton.d.ts +0 -17
- package/dist/components/adapters/FacebookButton.d.ts.map +1 -1
- package/dist/components/adapters/FacebookButton.js.map +1 -1
- package/dist/components/adapters/FlowTimer.d.ts +0 -17
- package/dist/components/adapters/FlowTimer.d.ts.map +1 -1
- package/dist/components/adapters/FlowTimer.js.map +1 -1
- package/dist/components/adapters/GitHubButton.d.ts +0 -17
- package/dist/components/adapters/GitHubButton.d.ts.map +1 -1
- package/dist/components/adapters/GitHubButton.js.map +1 -1
- package/dist/components/adapters/GoogleButton.d.ts +0 -17
- package/dist/components/adapters/GoogleButton.d.ts.map +1 -1
- package/dist/components/adapters/GoogleButton.js.map +1 -1
- package/dist/components/adapters/ImageComponent.d.ts +0 -17
- package/dist/components/adapters/ImageComponent.d.ts.map +1 -1
- package/dist/components/adapters/ImageComponent.js.map +1 -1
- package/dist/components/adapters/LinkedInButton.d.ts +0 -17
- package/dist/components/adapters/LinkedInButton.d.ts.map +1 -1
- package/dist/components/adapters/LinkedInButton.js.map +1 -1
- package/dist/components/adapters/MicrosoftButton.d.ts +0 -17
- package/dist/components/adapters/MicrosoftButton.d.ts.map +1 -1
- package/dist/components/adapters/MicrosoftButton.js.map +1 -1
- package/dist/components/adapters/SignInWithEthereumButton.d.ts +0 -17
- package/dist/components/adapters/SignInWithEthereumButton.d.ts.map +1 -1
- package/dist/components/adapters/SignInWithEthereumButton.js.map +1 -1
- package/dist/components/adapters/SmsOtpButton.d.ts +0 -17
- package/dist/components/adapters/SmsOtpButton.d.ts.map +1 -1
- package/dist/components/adapters/SmsOtpButton.js.map +1 -1
- package/dist/components/auth/Callback/Callback.d.ts.map +1 -1
- package/dist/components/auth/Callback/Callback.js.map +1 -1
- package/dist/components/auth/Callback/OAuthCallback.d.ts +0 -17
- package/dist/components/auth/Callback/OAuthCallback.d.ts.map +1 -1
- package/dist/components/auth/Callback/OAuthCallback.js.map +1 -1
- package/dist/components/auth/Callback/TokenCallback.d.ts +0 -16
- package/dist/components/auth/Callback/TokenCallback.d.ts.map +1 -1
- package/dist/components/auth/Callback/TokenCallback.js.map +1 -1
- package/dist/components/control/Loading.d.ts +0 -17
- package/dist/components/control/Loading.d.ts.map +1 -1
- package/dist/components/control/Loading.js.map +1 -1
- package/dist/components/control/SignedIn.d.ts +0 -17
- package/dist/components/control/SignedIn.d.ts.map +1 -1
- package/dist/components/control/SignedIn.js.map +1 -1
- package/dist/components/control/SignedOut.d.ts +0 -17
- package/dist/components/control/SignedOut.d.ts.map +1 -1
- package/dist/components/control/SignedOut.js.map +1 -1
- package/dist/components/factories/FieldFactory.d.ts +0 -17
- package/dist/components/factories/FieldFactory.d.ts.map +1 -1
- package/dist/components/factories/FieldFactory.js.map +1 -1
- package/dist/components/presentation/LanguageSwitcher/BaseLanguageSwitcher.d.ts +0 -17
- package/dist/components/presentation/LanguageSwitcher/BaseLanguageSwitcher.d.ts.map +1 -1
- package/dist/components/presentation/LanguageSwitcher/BaseLanguageSwitcher.js.map +1 -1
- package/dist/components/presentation/LanguageSwitcher/BaseLanguageSwitcher.styles.d.ts +0 -17
- package/dist/components/presentation/LanguageSwitcher/BaseLanguageSwitcher.styles.d.ts.map +1 -1
- package/dist/components/presentation/LanguageSwitcher/BaseLanguageSwitcher.styles.js.map +1 -1
- package/dist/components/presentation/LanguageSwitcher/LanguageSwitcher.d.ts +0 -17
- package/dist/components/presentation/LanguageSwitcher/LanguageSwitcher.d.ts.map +1 -1
- package/dist/components/presentation/LanguageSwitcher/LanguageSwitcher.js.map +1 -1
- package/dist/components/presentation/User/BaseUser.d.ts +0 -17
- package/dist/components/presentation/User/BaseUser.d.ts.map +1 -1
- package/dist/components/presentation/User/BaseUser.js.map +1 -1
- package/dist/components/presentation/User/User.d.ts +0 -17
- package/dist/components/presentation/User/User.d.ts.map +1 -1
- package/dist/components/presentation/User/User.js.map +1 -1
- package/dist/components/presentation/UserAvatar/BaseUserAvatar.d.ts +0 -17
- package/dist/components/presentation/UserAvatar/BaseUserAvatar.d.ts.map +1 -1
- package/dist/components/presentation/UserAvatar/BaseUserAvatar.js.map +1 -1
- package/dist/components/presentation/UserAvatar/UserAvatar.d.ts +0 -17
- package/dist/components/presentation/UserAvatar/UserAvatar.d.ts.map +1 -1
- package/dist/components/presentation/UserAvatar/UserAvatar.js.map +1 -1
- package/dist/components/presentation/UserDropdown/BaseUserDropdown.d.ts +0 -17
- package/dist/components/presentation/UserDropdown/BaseUserDropdown.d.ts.map +1 -1
- package/dist/components/presentation/UserDropdown/BaseUserDropdown.js.map +1 -1
- package/dist/components/presentation/UserDropdown/BaseUserDropdown.styles.d.ts +0 -17
- package/dist/components/presentation/UserDropdown/BaseUserDropdown.styles.d.ts.map +1 -1
- package/dist/components/presentation/UserDropdown/BaseUserDropdown.styles.js.map +1 -1
- package/dist/components/presentation/UserDropdown/UserDropdown.d.ts +0 -17
- package/dist/components/presentation/UserDropdown/UserDropdown.d.ts.map +1 -1
- package/dist/components/presentation/UserDropdown/UserDropdown.js.map +1 -1
- package/dist/components/presentation/UserProfile/BaseUserProfile.d.ts +0 -17
- package/dist/components/presentation/UserProfile/BaseUserProfile.d.ts.map +1 -1
- package/dist/components/presentation/UserProfile/BaseUserProfile.js.map +1 -1
- package/dist/components/presentation/UserProfile/BaseUserProfile.styles.d.ts +0 -17
- package/dist/components/presentation/UserProfile/BaseUserProfile.styles.d.ts.map +1 -1
- package/dist/components/presentation/UserProfile/BaseUserProfile.styles.js.map +1 -1
- package/dist/components/presentation/UserProfile/UserProfile.d.ts +0 -17
- package/dist/components/presentation/UserProfile/UserProfile.d.ts.map +1 -1
- package/dist/components/presentation/UserProfile/UserProfile.js.map +1 -1
- package/dist/components/presentation/auth/AcceptInvite/AcceptInvite.d.ts +0 -17
- package/dist/components/presentation/auth/AcceptInvite/AcceptInvite.d.ts.map +1 -1
- package/dist/components/presentation/auth/AcceptInvite/AcceptInvite.js +2 -4
- package/dist/components/presentation/auth/AcceptInvite/AcceptInvite.js.map +1 -1
- package/dist/components/presentation/auth/AcceptInvite/BaseAcceptInvite.d.ts +0 -17
- package/dist/components/presentation/auth/AcceptInvite/BaseAcceptInvite.d.ts.map +1 -1
- package/dist/components/presentation/auth/AcceptInvite/BaseAcceptInvite.js.map +1 -1
- package/dist/components/presentation/auth/AcceptInvite/BaseAcceptInvite.styles.d.ts +0 -17
- package/dist/components/presentation/auth/AcceptInvite/BaseAcceptInvite.styles.d.ts.map +1 -1
- package/dist/components/presentation/auth/AcceptInvite/BaseAcceptInvite.styles.js.map +1 -1
- package/dist/components/presentation/auth/AcceptInvite/index.d.ts +0 -17
- package/dist/components/presentation/auth/AcceptInvite/index.d.ts.map +1 -1
- package/dist/components/presentation/auth/AuthOptionFactory.d.ts +0 -17
- package/dist/components/presentation/auth/AuthOptionFactory.d.ts.map +1 -1
- package/dist/components/presentation/auth/AuthOptionFactory.js.map +1 -1
- package/dist/components/presentation/auth/InviteUser/BaseInviteUser.d.ts +0 -17
- package/dist/components/presentation/auth/InviteUser/BaseInviteUser.d.ts.map +1 -1
- package/dist/components/presentation/auth/InviteUser/BaseInviteUser.js.map +1 -1
- package/dist/components/presentation/auth/InviteUser/BaseInviteUser.styles.d.ts +0 -17
- package/dist/components/presentation/auth/InviteUser/BaseInviteUser.styles.d.ts.map +1 -1
- package/dist/components/presentation/auth/InviteUser/BaseInviteUser.styles.js.map +1 -1
- package/dist/components/presentation/auth/InviteUser/InviteUser.d.ts +0 -17
- package/dist/components/presentation/auth/InviteUser/InviteUser.d.ts.map +1 -1
- package/dist/components/presentation/auth/InviteUser/InviteUser.js.map +1 -1
- package/dist/components/presentation/auth/InviteUser/index.d.ts +0 -17
- package/dist/components/presentation/auth/InviteUser/index.d.ts.map +1 -1
- package/dist/components/presentation/auth/Recovery/BaseRecovery.d.ts +0 -17
- package/dist/components/presentation/auth/Recovery/BaseRecovery.d.ts.map +1 -1
- package/dist/components/presentation/auth/Recovery/BaseRecovery.js.map +1 -1
- package/dist/components/presentation/auth/Recovery/Recovery.d.ts +0 -17
- package/dist/components/presentation/auth/Recovery/Recovery.d.ts.map +1 -1
- package/dist/components/presentation/auth/Recovery/Recovery.js.map +1 -1
- package/dist/components/presentation/auth/SignIn/BaseSignIn.d.ts +0 -17
- package/dist/components/presentation/auth/SignIn/BaseSignIn.d.ts.map +1 -1
- package/dist/components/presentation/auth/SignIn/BaseSignIn.js.map +1 -1
- package/dist/components/presentation/auth/SignIn/BaseSignIn.styles.d.ts +0 -17
- package/dist/components/presentation/auth/SignIn/BaseSignIn.styles.d.ts.map +1 -1
- package/dist/components/presentation/auth/SignIn/BaseSignIn.styles.js.map +1 -1
- package/dist/components/presentation/auth/SignIn/SignIn.d.ts +0 -17
- package/dist/components/presentation/auth/SignIn/SignIn.d.ts.map +1 -1
- package/dist/components/presentation/auth/SignIn/SignIn.js +10 -1
- package/dist/components/presentation/auth/SignIn/SignIn.js.map +1 -1
- package/dist/components/presentation/auth/SignUp/BaseSignUp.d.ts +0 -17
- package/dist/components/presentation/auth/SignUp/BaseSignUp.d.ts.map +1 -1
- package/dist/components/presentation/auth/SignUp/BaseSignUp.js.map +1 -1
- package/dist/components/presentation/auth/SignUp/BaseSignUp.styles.d.ts +0 -17
- package/dist/components/presentation/auth/SignUp/BaseSignUp.styles.d.ts.map +1 -1
- package/dist/components/presentation/auth/SignUp/BaseSignUp.styles.js.map +1 -1
- package/dist/components/presentation/auth/SignUp/SignUp.d.ts +0 -17
- package/dist/components/presentation/auth/SignUp/SignUp.d.ts.map +1 -1
- package/dist/components/presentation/auth/SignUp/SignUp.js.map +1 -1
- package/dist/components/primitives/AffixedField/AffixedField.d.ts +0 -17
- package/dist/components/primitives/AffixedField/AffixedField.d.ts.map +1 -1
- package/dist/components/primitives/AffixedField/AffixedField.js.map +1 -1
- package/dist/components/primitives/AffixedField/AffixedField.styles.d.ts +0 -17
- package/dist/components/primitives/AffixedField/AffixedField.styles.d.ts.map +1 -1
- package/dist/components/primitives/AffixedField/AffixedField.styles.js.map +1 -1
- package/dist/components/primitives/AffixedField/index.d.ts +0 -17
- package/dist/components/primitives/AffixedField/index.d.ts.map +1 -1
- package/dist/components/primitives/Alert/Alert.d.ts +0 -17
- package/dist/components/primitives/Alert/Alert.d.ts.map +1 -1
- package/dist/components/primitives/Alert/Alert.js.map +1 -1
- package/dist/components/primitives/Alert/Alert.styles.d.ts +0 -17
- package/dist/components/primitives/Alert/Alert.styles.d.ts.map +1 -1
- package/dist/components/primitives/Alert/Alert.styles.js.map +1 -1
- package/dist/components/primitives/Avatar/Avatar.d.ts +0 -17
- package/dist/components/primitives/Avatar/Avatar.d.ts.map +1 -1
- package/dist/components/primitives/Avatar/Avatar.js.map +1 -1
- package/dist/components/primitives/Avatar/Avatar.styles.d.ts +0 -17
- package/dist/components/primitives/Avatar/Avatar.styles.d.ts.map +1 -1
- package/dist/components/primitives/Avatar/Avatar.styles.js.map +1 -1
- package/dist/components/primitives/Button/Button.d.ts +0 -17
- package/dist/components/primitives/Button/Button.d.ts.map +1 -1
- package/dist/components/primitives/Button/Button.js.map +1 -1
- package/dist/components/primitives/Button/Button.styles.d.ts +0 -17
- package/dist/components/primitives/Button/Button.styles.d.ts.map +1 -1
- package/dist/components/primitives/Button/Button.styles.js.map +1 -1
- package/dist/components/primitives/Card/Card.d.ts +0 -17
- package/dist/components/primitives/Card/Card.d.ts.map +1 -1
- package/dist/components/primitives/Card/Card.js.map +1 -1
- package/dist/components/primitives/Card/Card.styles.d.ts +0 -17
- package/dist/components/primitives/Card/Card.styles.d.ts.map +1 -1
- package/dist/components/primitives/Card/Card.styles.js.map +1 -1
- package/dist/components/primitives/Checkbox/Checkbox.d.ts +0 -17
- package/dist/components/primitives/Checkbox/Checkbox.d.ts.map +1 -1
- package/dist/components/primitives/Checkbox/Checkbox.js.map +1 -1
- package/dist/components/primitives/Checkbox/Checkbox.styles.d.ts +0 -17
- package/dist/components/primitives/Checkbox/Checkbox.styles.d.ts.map +1 -1
- package/dist/components/primitives/Checkbox/Checkbox.styles.js.map +1 -1
- package/dist/components/primitives/CopyableText/CopyableText.d.ts +0 -17
- package/dist/components/primitives/CopyableText/CopyableText.d.ts.map +1 -1
- package/dist/components/primitives/CopyableText/CopyableText.js.map +1 -1
- package/dist/components/primitives/CopyableText/CopyableText.styles.d.ts +0 -17
- package/dist/components/primitives/CopyableText/CopyableText.styles.d.ts.map +1 -1
- package/dist/components/primitives/CopyableText/CopyableText.styles.js.map +1 -1
- package/dist/components/primitives/CopyableText/index.d.ts +0 -17
- package/dist/components/primitives/CopyableText/index.d.ts.map +1 -1
- package/dist/components/primitives/DatePicker/DatePicker.d.ts +0 -17
- package/dist/components/primitives/DatePicker/DatePicker.d.ts.map +1 -1
- package/dist/components/primitives/DatePicker/DatePicker.js.map +1 -1
- package/dist/components/primitives/DatePicker/DatePicker.styles.d.ts +0 -17
- package/dist/components/primitives/DatePicker/DatePicker.styles.d.ts.map +1 -1
- package/dist/components/primitives/DatePicker/DatePicker.styles.js.map +1 -1
- package/dist/components/primitives/Dialog/Dialog.d.ts +0 -17
- package/dist/components/primitives/Dialog/Dialog.d.ts.map +1 -1
- package/dist/components/primitives/Dialog/Dialog.js.map +1 -1
- package/dist/components/primitives/Dialog/Dialog.styles.d.ts +0 -17
- package/dist/components/primitives/Dialog/Dialog.styles.d.ts.map +1 -1
- package/dist/components/primitives/Dialog/Dialog.styles.js.map +1 -1
- package/dist/components/primitives/Divider/Divider.d.ts +0 -17
- package/dist/components/primitives/Divider/Divider.d.ts.map +1 -1
- package/dist/components/primitives/Divider/Divider.js.map +1 -1
- package/dist/components/primitives/Divider/Divider.styles.d.ts +0 -17
- package/dist/components/primitives/Divider/Divider.styles.d.ts.map +1 -1
- package/dist/components/primitives/Divider/Divider.styles.js.map +1 -1
- package/dist/components/primitives/FormControl/FormControl.d.ts +0 -17
- package/dist/components/primitives/FormControl/FormControl.d.ts.map +1 -1
- package/dist/components/primitives/FormControl/FormControl.js.map +1 -1
- package/dist/components/primitives/FormControl/FormControl.styles.d.ts +0 -17
- package/dist/components/primitives/FormControl/FormControl.styles.d.ts.map +1 -1
- package/dist/components/primitives/FormControl/FormControl.styles.js.map +1 -1
- package/dist/components/primitives/Icons/ArrowLeftRight.d.ts +0 -17
- package/dist/components/primitives/Icons/ArrowLeftRight.d.ts.map +1 -1
- package/dist/components/primitives/Icons/ArrowLeftRight.js.map +1 -1
- package/dist/components/primitives/Icons/ArrowRightLeft.d.ts +0 -17
- package/dist/components/primitives/Icons/ArrowRightLeft.d.ts.map +1 -1
- package/dist/components/primitives/Icons/ArrowRightLeft.js.map +1 -1
- package/dist/components/primitives/Icons/Building.d.ts +0 -17
- package/dist/components/primitives/Icons/Building.d.ts.map +1 -1
- package/dist/components/primitives/Icons/BuildingAlt.d.ts +0 -17
- package/dist/components/primitives/Icons/BuildingAlt.d.ts.map +1 -1
- package/dist/components/primitives/Icons/BuildingAlt.js.map +1 -1
- package/dist/components/primitives/Icons/Check.d.ts +0 -17
- package/dist/components/primitives/Icons/Check.d.ts.map +1 -1
- package/dist/components/primitives/Icons/Check.js.map +1 -1
- package/dist/components/primitives/Icons/ChevronDown.d.ts +0 -17
- package/dist/components/primitives/Icons/ChevronDown.d.ts.map +1 -1
- package/dist/components/primitives/Icons/ChevronDown.js.map +1 -1
- package/dist/components/primitives/Icons/CircleAlert.d.ts +0 -17
- package/dist/components/primitives/Icons/CircleAlert.d.ts.map +1 -1
- package/dist/components/primitives/Icons/CircleAlert.js.map +1 -1
- package/dist/components/primitives/Icons/CircleCheck.d.ts +0 -17
- package/dist/components/primitives/Icons/CircleCheck.d.ts.map +1 -1
- package/dist/components/primitives/Icons/CircleCheck.js.map +1 -1
- package/dist/components/primitives/Icons/Eye.d.ts +0 -17
- package/dist/components/primitives/Icons/Eye.d.ts.map +1 -1
- package/dist/components/primitives/Icons/Eye.js.map +1 -1
- package/dist/components/primitives/Icons/EyeOff.d.ts +0 -17
- package/dist/components/primitives/Icons/EyeOff.d.ts.map +1 -1
- package/dist/components/primitives/Icons/EyeOff.js.map +1 -1
- package/dist/components/primitives/Icons/Info.d.ts +0 -17
- package/dist/components/primitives/Icons/Info.d.ts.map +1 -1
- package/dist/components/primitives/Icons/Info.js.map +1 -1
- package/dist/components/primitives/Icons/LogOut.d.ts +0 -17
- package/dist/components/primitives/Icons/LogOut.d.ts.map +1 -1
- package/dist/components/primitives/Icons/LogOut.js.map +1 -1
- package/dist/components/primitives/Icons/Plus.d.ts +0 -17
- package/dist/components/primitives/Icons/Plus.d.ts.map +1 -1
- package/dist/components/primitives/Icons/Plus.js.map +1 -1
- package/dist/components/primitives/Icons/TriangleAlert.d.ts +0 -17
- package/dist/components/primitives/Icons/TriangleAlert.d.ts.map +1 -1
- package/dist/components/primitives/Icons/TriangleAlert.js.map +1 -1
- package/dist/components/primitives/Icons/User.d.ts +0 -17
- package/dist/components/primitives/Icons/User.d.ts.map +1 -1
- package/dist/components/primitives/Icons/User.js.map +1 -1
- package/dist/components/primitives/Icons/X.d.ts +0 -17
- package/dist/components/primitives/Icons/X.d.ts.map +1 -1
- package/dist/components/primitives/Icons/X.js.map +1 -1
- package/dist/components/primitives/Icons/flowIconRegistry.d.ts +0 -17
- package/dist/components/primitives/Icons/flowIconRegistry.d.ts.map +1 -1
- package/dist/components/primitives/Icons/flowIconRegistry.js.map +1 -1
- package/dist/components/primitives/Icons/index.d.ts +0 -17
- package/dist/components/primitives/Icons/index.d.ts.map +1 -1
- package/dist/components/primitives/InputLabel/InputLabel.d.ts +0 -17
- package/dist/components/primitives/InputLabel/InputLabel.d.ts.map +1 -1
- package/dist/components/primitives/InputLabel/InputLabel.js.map +1 -1
- package/dist/components/primitives/InputLabel/InputLabel.styles.d.ts +0 -17
- package/dist/components/primitives/InputLabel/InputLabel.styles.d.ts.map +1 -1
- package/dist/components/primitives/InputLabel/InputLabel.styles.js.map +1 -1
- package/dist/components/primitives/KeyValueInput/KeyValueInput.d.ts +0 -17
- package/dist/components/primitives/KeyValueInput/KeyValueInput.d.ts.map +1 -1
- package/dist/components/primitives/KeyValueInput/KeyValueInput.js.map +1 -1
- package/dist/components/primitives/KeyValueInput/KeyValueInput.styles.d.ts +0 -17
- package/dist/components/primitives/KeyValueInput/KeyValueInput.styles.d.ts.map +1 -1
- package/dist/components/primitives/KeyValueInput/KeyValueInput.styles.js.map +1 -1
- package/dist/components/primitives/Logo/Logo.d.ts +0 -17
- package/dist/components/primitives/Logo/Logo.d.ts.map +1 -1
- package/dist/components/primitives/Logo/Logo.js.map +1 -1
- package/dist/components/primitives/Logo/Logo.styles.d.ts +0 -17
- package/dist/components/primitives/Logo/Logo.styles.d.ts.map +1 -1
- package/dist/components/primitives/Logo/Logo.styles.js.map +1 -1
- package/dist/components/primitives/MultiInput/MultiInput.d.ts +0 -17
- package/dist/components/primitives/MultiInput/MultiInput.d.ts.map +1 -1
- package/dist/components/primitives/MultiInput/MultiInput.js.map +1 -1
- package/dist/components/primitives/MultiInput/MultiInput.styles.d.ts +0 -17
- package/dist/components/primitives/MultiInput/MultiInput.styles.d.ts.map +1 -1
- package/dist/components/primitives/MultiInput/MultiInput.styles.js.map +1 -1
- package/dist/components/primitives/OtpField/OtpField.d.ts +0 -17
- package/dist/components/primitives/OtpField/OtpField.d.ts.map +1 -1
- package/dist/components/primitives/OtpField/OtpField.js.map +1 -1
- package/dist/components/primitives/OtpField/OtpField.styles.d.ts +0 -17
- package/dist/components/primitives/OtpField/OtpField.styles.d.ts.map +1 -1
- package/dist/components/primitives/OtpField/OtpField.styles.js.map +1 -1
- package/dist/components/primitives/PasswordField/PasswordField.d.ts +0 -17
- package/dist/components/primitives/PasswordField/PasswordField.d.ts.map +1 -1
- package/dist/components/primitives/PasswordField/PasswordField.js.map +1 -1
- package/dist/components/primitives/PasswordField/PasswordField.styles.d.ts +0 -17
- package/dist/components/primitives/PasswordField/PasswordField.styles.d.ts.map +1 -1
- package/dist/components/primitives/PasswordField/PasswordField.styles.js.map +1 -1
- package/dist/components/primitives/Select/Select.d.ts +0 -17
- package/dist/components/primitives/Select/Select.d.ts.map +1 -1
- package/dist/components/primitives/Select/Select.js.map +1 -1
- package/dist/components/primitives/Select/Select.styles.d.ts +0 -17
- package/dist/components/primitives/Select/Select.styles.d.ts.map +1 -1
- package/dist/components/primitives/Select/Select.styles.js.map +1 -1
- package/dist/components/primitives/Spinner/Spinner.d.ts +0 -17
- package/dist/components/primitives/Spinner/Spinner.d.ts.map +1 -1
- package/dist/components/primitives/Spinner/Spinner.js.map +1 -1
- package/dist/components/primitives/Spinner/Spinner.styles.d.ts +0 -17
- package/dist/components/primitives/Spinner/Spinner.styles.d.ts.map +1 -1
- package/dist/components/primitives/Spinner/Spinner.styles.js.map +1 -1
- package/dist/components/primitives/TextField/TextField.d.ts +0 -17
- package/dist/components/primitives/TextField/TextField.d.ts.map +1 -1
- package/dist/components/primitives/TextField/TextField.js.map +1 -1
- package/dist/components/primitives/TextField/TextField.styles.d.ts +0 -17
- package/dist/components/primitives/TextField/TextField.styles.d.ts.map +1 -1
- package/dist/components/primitives/TextField/TextField.styles.js.map +1 -1
- package/dist/components/primitives/Toggle/Toggle.d.ts +0 -17
- package/dist/components/primitives/Toggle/Toggle.d.ts.map +1 -1
- package/dist/components/primitives/Toggle/Toggle.js.map +1 -1
- package/dist/components/primitives/Toggle/Toggle.styles.d.ts +0 -17
- package/dist/components/primitives/Toggle/Toggle.styles.d.ts.map +1 -1
- package/dist/components/primitives/Toggle/Toggle.styles.js.map +1 -1
- package/dist/components/primitives/Tooltip/Tooltip.d.ts +0 -17
- package/dist/components/primitives/Tooltip/Tooltip.d.ts.map +1 -1
- package/dist/components/primitives/Tooltip/Tooltip.js.map +1 -1
- package/dist/components/primitives/Tooltip/Tooltip.styles.d.ts +0 -17
- package/dist/components/primitives/Tooltip/Tooltip.styles.d.ts.map +1 -1
- package/dist/components/primitives/Tooltip/Tooltip.styles.js.map +1 -1
- package/dist/components/primitives/Typography/Typography.d.ts +0 -17
- package/dist/components/primitives/Typography/Typography.d.ts.map +1 -1
- package/dist/components/primitives/Typography/Typography.js.map +1 -1
- package/dist/components/primitives/Typography/Typography.styles.d.ts +0 -17
- package/dist/components/primitives/Typography/Typography.styles.d.ts.map +1 -1
- package/dist/components/primitives/Typography/Typography.styles.js.map +1 -1
- package/dist/contexts/ComponentRenderer/ComponentRendererContext.d.ts +0 -17
- package/dist/contexts/ComponentRenderer/ComponentRendererContext.d.ts.map +1 -1
- package/dist/contexts/ComponentRenderer/ComponentRendererContext.js.map +1 -1
- package/dist/contexts/ComponentRenderer/ComponentRendererProvider.d.ts +0 -17
- package/dist/contexts/ComponentRenderer/ComponentRendererProvider.d.ts.map +1 -1
- package/dist/contexts/ComponentRenderer/ComponentRendererProvider.js.map +1 -1
- package/dist/contexts/Flow/FlowContext.d.ts +0 -17
- package/dist/contexts/Flow/FlowContext.d.ts.map +1 -1
- package/dist/contexts/Flow/FlowContext.js.map +1 -1
- package/dist/contexts/Flow/FlowProvider.d.ts +0 -17
- package/dist/contexts/Flow/FlowProvider.d.ts.map +1 -1
- package/dist/contexts/Flow/FlowProvider.js.map +1 -1
- package/dist/contexts/Flow/useFlow.d.ts +0 -17
- package/dist/contexts/Flow/useFlow.d.ts.map +1 -1
- package/dist/contexts/Flow/useFlow.js.map +1 -1
- package/dist/contexts/FlowMeta/FlowMetaContext.d.ts +0 -17
- package/dist/contexts/FlowMeta/FlowMetaContext.d.ts.map +1 -1
- package/dist/contexts/FlowMeta/FlowMetaContext.js.map +1 -1
- package/dist/contexts/FlowMeta/FlowMetaProvider.d.ts +0 -17
- package/dist/contexts/FlowMeta/FlowMetaProvider.d.ts.map +1 -1
- package/dist/contexts/FlowMeta/FlowMetaProvider.js.map +1 -1
- package/dist/contexts/FlowMeta/useFlowMeta.d.ts +0 -17
- package/dist/contexts/FlowMeta/useFlowMeta.d.ts.map +1 -1
- package/dist/contexts/FlowMeta/useFlowMeta.js.map +1 -1
- package/dist/contexts/I18n/ComponentPreferencesContext.d.ts +0 -17
- package/dist/contexts/I18n/ComponentPreferencesContext.d.ts.map +1 -1
- package/dist/contexts/I18n/ComponentPreferencesContext.js.map +1 -1
- package/dist/contexts/I18n/I18nContext.d.ts +0 -17
- package/dist/contexts/I18n/I18nContext.d.ts.map +1 -1
- package/dist/contexts/I18n/I18nContext.js.map +1 -1
- package/dist/contexts/I18n/I18nProvider.d.ts +0 -17
- package/dist/contexts/I18n/I18nProvider.d.ts.map +1 -1
- package/dist/contexts/I18n/I18nProvider.js.map +1 -1
- package/dist/contexts/I18n/useI18n.d.ts +0 -17
- package/dist/contexts/I18n/useI18n.d.ts.map +1 -1
- package/dist/contexts/I18n/useI18n.js.map +1 -1
- package/dist/contexts/Theme/ThemeContext.d.ts +0 -17
- package/dist/contexts/Theme/ThemeContext.d.ts.map +1 -1
- package/dist/contexts/Theme/ThemeContext.js.map +1 -1
- package/dist/contexts/Theme/ThemeProvider.d.ts +0 -17
- package/dist/contexts/Theme/ThemeProvider.d.ts.map +1 -1
- package/dist/contexts/Theme/ThemeProvider.js.map +1 -1
- package/dist/contexts/Theme/types.d.ts +0 -17
- package/dist/contexts/Theme/types.d.ts.map +1 -1
- package/dist/contexts/Theme/useTheme.d.ts +0 -17
- package/dist/contexts/Theme/useTheme.d.ts.map +1 -1
- package/dist/contexts/Theme/useTheme.js.map +1 -1
- package/dist/contexts/ThunderID/ThunderIDContext.d.ts +0 -17
- package/dist/contexts/ThunderID/ThunderIDContext.d.ts.map +1 -1
- package/dist/contexts/ThunderID/ThunderIDContext.js.map +1 -1
- package/dist/contexts/ThunderID/ThunderIDProvider.d.ts +0 -17
- package/dist/contexts/ThunderID/ThunderIDProvider.d.ts.map +1 -1
- package/dist/contexts/ThunderID/ThunderIDProvider.js.map +1 -1
- package/dist/contexts/ThunderID/useThunderID.d.ts +0 -17
- package/dist/contexts/ThunderID/useThunderID.d.ts.map +1 -1
- package/dist/contexts/ThunderID/useThunderID.js.map +1 -1
- package/dist/contexts/User/UserContext.d.ts +0 -17
- package/dist/contexts/User/UserContext.d.ts.map +1 -1
- package/dist/contexts/User/UserContext.js.map +1 -1
- package/dist/contexts/User/UserProvider.d.ts +0 -17
- package/dist/contexts/User/UserProvider.d.ts.map +1 -1
- package/dist/contexts/User/UserProvider.js.map +1 -1
- package/dist/contexts/User/useUser.d.ts +0 -17
- package/dist/contexts/User/useUser.d.ts.map +1 -1
- package/dist/contexts/User/useUser.js.map +1 -1
- package/dist/hooks/useBrowserUrl.d.ts +0 -17
- package/dist/hooks/useBrowserUrl.d.ts.map +1 -1
- package/dist/hooks/useBrowserUrl.js.map +1 -1
- package/dist/hooks/useForm.d.ts +0 -17
- package/dist/hooks/useForm.d.ts.map +1 -1
- package/dist/hooks/useForm.js.map +1 -1
- package/dist/hooks/useOAuthCallback.d.ts +0 -17
- package/dist/hooks/useOAuthCallback.d.ts.map +1 -1
- package/dist/hooks/useOAuthCallback.js.map +1 -1
- package/dist/hooks/useTranslation.d.ts +0 -17
- package/dist/hooks/useTranslation.d.ts.map +1 -1
- package/dist/hooks/useTranslation.js.map +1 -1
- package/dist/index.d.ts +0 -17
- package/dist/index.d.ts.map +1 -1
- package/dist/models/adapters.d.ts +0 -17
- package/dist/models/adapters.d.ts.map +1 -1
- package/dist/models/config.d.ts +0 -17
- package/dist/models/config.d.ts.map +1 -1
- package/dist/utils/applyThemeToDOM.d.ts +0 -17
- package/dist/utils/applyThemeToDOM.d.ts.map +1 -1
- package/dist/utils/applyThemeToDOM.js.map +1 -1
- package/dist/utils/buildThemeConfigFromFlowMeta.d.ts +0 -17
- package/dist/utils/buildThemeConfigFromFlowMeta.d.ts.map +1 -1
- package/dist/utils/buildThemeConfigFromFlowMeta.js.map +1 -1
- package/dist/utils/composeAffixedInputs.d.ts +0 -17
- package/dist/utils/composeAffixedInputs.d.ts.map +1 -1
- package/dist/utils/composeAffixedInputs.js.map +1 -1
- package/dist/utils/flowTransformer.d.ts +0 -17
- package/dist/utils/flowTransformer.d.ts.map +1 -1
- package/dist/utils/flowTransformer.js.map +1 -1
- package/dist/utils/getAuthComponentHeadings.d.ts +0 -17
- package/dist/utils/getAuthComponentHeadings.d.ts.map +1 -1
- package/dist/utils/getAuthComponentHeadings.js.map +1 -1
- package/dist/utils/getDisplayName.d.ts +0 -17
- package/dist/utils/getDisplayName.d.ts.map +1 -1
- package/dist/utils/getDisplayName.js.map +1 -1
- package/dist/utils/getMappedUserProfileValue.d.ts +0 -17
- package/dist/utils/getMappedUserProfileValue.d.ts.map +1 -1
- package/dist/utils/getMappedUserProfileValue.js.map +1 -1
- package/dist/utils/normalizeThemeConfig.d.ts +0 -17
- package/dist/utils/normalizeThemeConfig.d.ts.map +1 -1
- package/dist/utils/normalizeThemeConfig.js.map +1 -1
- package/dist/utils/oauth.d.ts +0 -17
- package/dist/utils/oauth.d.ts.map +1 -1
- package/dist/utils/oauth.js.map +1 -1
- package/dist/utils/passkey.d.ts +0 -17
- package/dist/utils/passkey.d.ts.map +1 -1
- package/dist/utils/passkey.js.map +1 -1
- package/dist/utils/resolveTranslationsInArray.d.ts +0 -17
- package/dist/utils/resolveTranslationsInArray.d.ts.map +1 -1
- package/dist/utils/resolveTranslationsInArray.js.map +1 -1
- package/dist/utils/resolveTranslationsInObject.d.ts +0 -17
- package/dist/utils/resolveTranslationsInObject.d.ts.map +1 -1
- package/dist/utils/resolveTranslationsInObject.js.map +1 -1
- package/package.json +3 -3
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BaseLanguageSwitcher.styles.js","names":["root: string","trigger: string","triggerEmoji: string","triggerLabel: string","content: string","option: string","optionActive: string","optionEmoji: string","optionLabel: string"],"sources":["../../../../src/components/presentation/LanguageSwitcher/BaseLanguageSwitcher.styles.ts"],"sourcesContent":["
|
|
1
|
+
{"version":3,"file":"BaseLanguageSwitcher.styles.js","names":["root: string","trigger: string","triggerEmoji: string","triggerLabel: string","content: string","option: string","optionActive: string","optionEmoji: string","optionLabel: string"],"sources":["../../../../src/components/presentation/LanguageSwitcher/BaseLanguageSwitcher.styles.ts"],"sourcesContent":["// Copyright 2026 The ThunderID Authors\n// SPDX-License-Identifier: Apache-2.0\n\nimport {css} from '@emotion/css';\nimport {Theme} from '@thunderid/browser';\nimport {useMemo} from 'react';\n\nconst useStyles = (theme: Theme, colorScheme: string): Record<string, string> =>\n useMemo(() => {\n const root: string = css`\n display: inline-block;\n position: relative;\n font-family: ${theme.vars.typography.fontFamily};\n `;\n\n const trigger: string = css`\n display: inline-flex;\n align-items: center;\n gap: calc(${theme.vars.spacing.unit} * 0.5);\n padding: calc(${theme.vars.spacing.unit} * 0.75) ${theme.vars.spacing.unit};\n border: 1px solid ${theme.vars.colors.border};\n background: ${theme.vars.colors.background.surface};\n cursor: pointer;\n border-radius: ${theme.vars.borderRadius.medium};\n min-width: 120px;\n font-size: 0.875rem;\n color: ${theme.vars.colors.text.primary};\n\n &:hover {\n background-color: ${theme.vars.colors.action?.hover || 'rgba(0, 0, 0, 0.04)'};\n }\n `;\n\n const triggerEmoji: string = css`\n font-size: 1rem;\n line-height: 1;\n `;\n\n const triggerLabel: string = css`\n flex: 1;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n font-weight: 500;\n `;\n\n const content: string = css`\n min-width: 200px;\n max-width: 320px;\n background-color: ${theme.vars.colors.background.surface};\n border-radius: ${theme.vars.borderRadius.medium};\n box-shadow: ${theme.vars.shadows.medium};\n border: 1px solid ${theme.vars.colors.border};\n outline: none;\n z-index: 1000;\n padding: calc(${theme.vars.spacing.unit} * 0.5) 0;\n `;\n\n const option: string = css`\n display: flex;\n align-items: center;\n gap: ${theme.vars.spacing.unit};\n padding: calc(${theme.vars.spacing.unit} * 1) calc(${theme.vars.spacing.unit} * 1.5);\n width: 100%;\n border: none;\n background-color: transparent;\n cursor: pointer;\n font-size: 0.875rem;\n text-align: start;\n color: ${theme.vars.colors.text.primary};\n transition: background-color 0.15s ease-in-out;\n\n &:hover {\n background-color: ${theme.vars.colors.action?.hover || 'rgba(0, 0, 0, 0.04)'};\n }\n `;\n\n const optionActive: string = css`\n font-weight: 600;\n color: ${theme.vars.colors.primary?.main || theme.vars.colors.text.primary};\n `;\n\n const optionEmoji: string = css`\n font-size: 1rem;\n line-height: 1;\n flex-shrink: 0;\n `;\n\n const optionLabel: string = css`\n flex: 1;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n `;\n\n const checkIcon: string = css`\n color: ${theme.vars.colors.primary?.main || theme.vars.colors.text.primary};\n flex-shrink: 0;\n margin-inline-start: auto;\n `;\n\n return {\n checkIcon,\n content,\n option,\n optionActive,\n optionEmoji,\n optionLabel,\n root,\n trigger,\n triggerEmoji,\n triggerLabel,\n };\n }, [\n theme.vars.colors.background.surface,\n theme.vars.colors.text.primary,\n theme.vars.colors.border,\n theme.vars.borderRadius.medium,\n theme.vars.shadows.medium,\n theme.vars.spacing.unit,\n theme.vars.colors.action?.hover,\n theme.vars.typography.fontFamily,\n theme.vars.colors.primary?.main,\n colorScheme,\n ]);\n\nexport default useStyles;\n"],"mappings":";;;;AAOA,MAAM,aAAa,OAAc,gBAC/B,cAAc;CACZ,MAAMA,OAAe,GAAG;;;qBAGP,MAAM,KAAK,WAAW,WAAW;;CAGlD,MAAMC,UAAkB,GAAG;;;kBAGb,MAAM,KAAK,QAAQ,KAAK;sBACpB,MAAM,KAAK,QAAQ,KAAK,WAAW,MAAM,KAAK,QAAQ,KAAK;0BACvD,MAAM,KAAK,OAAO,OAAO;oBAC/B,MAAM,KAAK,OAAO,WAAW,QAAQ;;uBAElC,MAAM,KAAK,aAAa,OAAO;;;eAGvC,MAAM,KAAK,OAAO,KAAK,QAAQ;;;4BAGlB,MAAM,KAAK,OAAO,QAAQ,SAAS,sBAAsB;;;CAIjF,MAAMC,eAAuB,GAAG;;;;CAKhC,MAAMC,eAAuB,GAAG;;;;;;;CAQhC,MAAMC,UAAkB,GAAG;;;0BAGL,MAAM,KAAK,OAAO,WAAW,QAAQ;uBACxC,MAAM,KAAK,aAAa,OAAO;oBAClC,MAAM,KAAK,QAAQ,OAAO;0BACpB,MAAM,KAAK,OAAO,OAAO;;;sBAG7B,MAAM,KAAK,QAAQ,KAAK;;CAG1C,MAAMC,SAAiB,GAAG;;;aAGjB,MAAM,KAAK,QAAQ,KAAK;sBACf,MAAM,KAAK,QAAQ,KAAK,aAAa,MAAM,KAAK,QAAQ,KAAK;;;;;;;eAOpE,MAAM,KAAK,OAAO,KAAK,QAAQ;;;;4BAIlB,MAAM,KAAK,OAAO,QAAQ,SAAS,sBAAsB;;;CAIjF,MAAMC,eAAuB,GAAG;;eAErB,MAAM,KAAK,OAAO,SAAS,QAAQ,MAAM,KAAK,OAAO,KAAK,QAAQ;;CAG7E,MAAMC,cAAsB,GAAG;;;;;CAM/B,MAAMC,cAAsB,GAAG;;;;;;AAa/B,QAAO;EACL,WAPwB,GAAG;eAClB,MAAM,KAAK,OAAO,SAAS,QAAQ,MAAM,KAAK,OAAO,KAAK,QAAQ;;;;EAO3E;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACA;EACD;GACA;CACD,MAAM,KAAK,OAAO,WAAW;CAC7B,MAAM,KAAK,OAAO,KAAK;CACvB,MAAM,KAAK,OAAO;CAClB,MAAM,KAAK,aAAa;CACxB,MAAM,KAAK,QAAQ;CACnB,MAAM,KAAK,QAAQ;CACnB,MAAM,KAAK,OAAO,QAAQ;CAC1B,MAAM,KAAK,WAAW;CACtB,MAAM,KAAK,OAAO,SAAS;CAC3B;CACD,CAAC;AAEJ,0CAAe"}
|
|
@@ -1,20 +1,3 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Copyright (c) 2026, WSO2 LLC. (https://www.wso2.com).
|
|
3
|
-
*
|
|
4
|
-
* WSO2 LLC. licenses this file to you under the Apache License,
|
|
5
|
-
* Version 2.0 (the "License"); you may not use this file except
|
|
6
|
-
* in compliance with the License.
|
|
7
|
-
* You may obtain a copy of the License at
|
|
8
|
-
*
|
|
9
|
-
* http://www.apache.org/licenses/LICENSE-2.0
|
|
10
|
-
*
|
|
11
|
-
* Unless required by applicable law or agreed to in writing,
|
|
12
|
-
* software distributed under the License is distributed on an
|
|
13
|
-
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
|
14
|
-
* KIND, either express or implied. See the License for the
|
|
15
|
-
* specific language governing permissions and limitations
|
|
16
|
-
* under the License.
|
|
17
|
-
*/
|
|
18
1
|
import { FC, ReactNode } from 'react';
|
|
19
2
|
import { LanguageOption, LanguageSwitcherRenderProps } from './BaseLanguageSwitcher';
|
|
20
3
|
export type { LanguageOption, LanguageSwitcherRenderProps };
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"LanguageSwitcher.d.ts","sourceRoot":"","sources":["../../../../src/components/presentation/LanguageSwitcher/LanguageSwitcher.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"LanguageSwitcher.d.ts","sourceRoot":"","sources":["../../../../src/components/presentation/LanguageSwitcher/LanguageSwitcher.tsx"],"names":[],"mappings":"AAIA,OAAO,EAAC,EAAE,EAAgB,SAAS,EAAqB,MAAM,OAAO,CAAC;AACtE,OAA6B,EAAC,cAAc,EAAE,2BAA2B,EAAC,MAAM,wBAAwB,CAAC;AAIzG,YAAY,EAAC,cAAc,EAAE,2BAA2B,EAAC,CAAC;AAE1D,MAAM,WAAW,qBAAqB;IACpC;;;;;;;;;;;;;;;;;;;OAmBG;IACH,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,2BAA2B,KAAK,SAAS,CAAC;IAC7D,kEAAkE;IAClE,SAAS,CAAC,EAAE,MAAM,CAAC;CACpB;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6BG;AACH,QAAA,MAAM,gBAAgB,EAAE,EAAE,CAAC,qBAAqB,CAgD/C,CAAC;AAEF,eAAe,gBAAgB,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"LanguageSwitcher.js","names":["LanguageSwitcher: FC<LanguageSwitcherProps>","useFlowMeta","useTranslation","availableLanguageCodes: string[]","effectiveLanguageCodes: string[]","languages: LanguageOption[]","BaseLanguageSwitcher"],"sources":["../../../../src/components/presentation/LanguageSwitcher/LanguageSwitcher.tsx"],"sourcesContent":["
|
|
1
|
+
{"version":3,"file":"LanguageSwitcher.js","names":["LanguageSwitcher: FC<LanguageSwitcherProps>","useFlowMeta","useTranslation","availableLanguageCodes: string[]","effectiveLanguageCodes: string[]","languages: LanguageOption[]","BaseLanguageSwitcher"],"sources":["../../../../src/components/presentation/LanguageSwitcher/LanguageSwitcher.tsx"],"sourcesContent":["// Copyright 2026 The ThunderID Authors\n// SPDX-License-Identifier: Apache-2.0\n\nimport {resolveLocaleDisplayName, resolveLocaleEmoji} from '@thunderid/browser';\nimport {FC, ReactElement, ReactNode, useEffect, useMemo} from 'react';\nimport BaseLanguageSwitcher, {LanguageOption, LanguageSwitcherRenderProps} from './BaseLanguageSwitcher';\nimport useFlowMeta from '../../../contexts/FlowMeta/useFlowMeta';\nimport useTranslation from '../../../hooks/useTranslation';\n\nexport type {LanguageOption, LanguageSwitcherRenderProps};\n\nexport interface LanguageSwitcherProps {\n /**\n * Render-props callback for fully custom UI.\n *\n * @example\n * ```tsx\n * <LanguageSwitcher>\n * {({languages, currentLanguage, onLanguageChange, isLoading}) => (\n * <select\n * value={currentLanguage}\n * disabled={isLoading}\n * onChange={e => onLanguageChange(e.target.value)}\n * >\n * {languages.map(l => (\n * <option key={l.code} value={l.code}>{l.emoji} {l.displayName}</option>\n * ))}\n * </select>\n * )}\n * </LanguageSwitcher>\n * ```\n */\n children?: (props: LanguageSwitcherRenderProps) => ReactNode;\n /** Additional CSS class for the root element (default UI only) */\n className?: string;\n}\n\n/**\n * A v2 LanguageSwitcher component that reads available languages from `FlowMetaContext`\n * and switches both the UI language (via `I18nContext`) and the flow metadata translations\n * (by re-fetching `GET /flow/meta` with the new language).\n *\n * Must be rendered inside a `FlowMetaProvider`.\n *\n * @example\n * ```tsx\n * // Default dropdown UI\n * <LanguageSwitcher />\n *\n * // Custom UI with render props\n * <LanguageSwitcher>\n * {({languages, currentLanguage, onLanguageChange}) => (\n * <div>\n * {languages.map(lang => (\n * <button\n * key={lang.code}\n * onClick={() => onLanguageChange(lang.code)}\n * style={{fontWeight: lang.code === currentLanguage ? 'bold' : 'normal'}}\n * >\n * {lang.emoji} {lang.displayName}\n * </button>\n * ))}\n * </div>\n * )}\n * </LanguageSwitcher>\n * ```\n */\nconst LanguageSwitcher: FC<LanguageSwitcherProps> = ({children, className}: LanguageSwitcherProps): ReactElement => {\n const {meta, switchLanguage, isLoading} = useFlowMeta();\n const {currentLanguage} = useTranslation();\n\n const availableLanguageCodes: string[] = meta?.i18n?.languages ?? [];\n // Only fall back to the detected browser language when the server returns no configured languages.\n // Do NOT inject currentLanguage unconditionally — a browser locale like \"en-GB\" must not appear\n // in the picker when the server only supports \"en-US\".\n const effectiveLanguageCodes: string[] = useMemo(\n () => (availableLanguageCodes.length > 0 ? availableLanguageCodes : [currentLanguage]),\n [availableLanguageCodes, currentLanguage],\n );\n\n const languages: LanguageOption[] = useMemo(\n () =>\n effectiveLanguageCodes.map((code: string) => ({\n code,\n // Resolve each label in its own locale so option names stay stable across UI language switches.\n displayName: resolveLocaleDisplayName(code, code) || code,\n emoji: resolveLocaleEmoji(code),\n })),\n [effectiveLanguageCodes],\n );\n\n // If the detected language isn't supported by the server, fall back to the first available language.\n useEffect(() => {\n if (availableLanguageCodes.length > 0 && !availableLanguageCodes.includes(currentLanguage)) {\n switchLanguage(availableLanguageCodes[0]);\n }\n }, [availableLanguageCodes, currentLanguage, switchLanguage]);\n\n const handleLanguageChange = (language: string): void => {\n if (language !== currentLanguage) {\n switchLanguage(language);\n }\n };\n\n return (\n <BaseLanguageSwitcher\n currentLanguage={currentLanguage}\n isLoading={isLoading}\n languages={languages}\n onLanguageChange={handleLanguageChange}\n className={className}\n >\n {children}\n </BaseLanguageSwitcher>\n );\n};\n\nexport default LanguageSwitcher;\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAmEA,MAAMA,oBAA+C,EAAC,UAAU,gBAAoD;CAClH,MAAM,EAAC,MAAM,gBAAgB,cAAaC,qBAAa;CACvD,MAAM,EAAC,oBAAmBC,wBAAgB;CAE1C,MAAMC,yBAAmC,MAAM,MAAM,aAAa,EAAE;CAIpE,MAAMC,yBAAmC,cAChC,uBAAuB,SAAS,IAAI,yBAAyB,CAAC,gBAAgB,EACrF,CAAC,wBAAwB,gBAAgB,CAC1C;CAED,MAAMC,YAA8B,cAEhC,uBAAuB,KAAK,UAAkB;EAC5C;EAEA,aAAa,yBAAyB,MAAM,KAAK,IAAI;EACrD,OAAO,mBAAmB,KAAK;EAChC,EAAE,EACL,CAAC,uBAAuB,CACzB;AAGD,iBAAgB;AACd,MAAI,uBAAuB,SAAS,KAAK,CAAC,uBAAuB,SAAS,gBAAgB,CACxF,gBAAe,uBAAuB,GAAG;IAE1C;EAAC;EAAwB;EAAiB;EAAe,CAAC;CAE7D,MAAM,wBAAwB,aAA2B;AACvD,MAAI,aAAa,gBACf,gBAAe,SAAS;;AAI5B,QACE,oBAACC;EACkB;EACN;EACA;EACX,kBAAkB;EACP;EAEV;GACoB;;AAI3B,+BAAe"}
|
|
@@ -1,20 +1,3 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Copyright (c) 2025, WSO2 LLC. (https://www.wso2.com).
|
|
3
|
-
*
|
|
4
|
-
* WSO2 LLC. licenses this file to you under the Apache License,
|
|
5
|
-
* Version 2.0 (the "License"); you may not use this file except
|
|
6
|
-
* in compliance with the License.
|
|
7
|
-
* You may obtain a copy of the License at
|
|
8
|
-
*
|
|
9
|
-
* http://www.apache.org/licenses/LICENSE-2.0
|
|
10
|
-
*
|
|
11
|
-
* Unless required by applicable law or agreed to in writing,
|
|
12
|
-
* software distributed under the License is distributed on an
|
|
13
|
-
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
|
14
|
-
* KIND, either express or implied. See the License for the
|
|
15
|
-
* specific language governing permissions and limitations
|
|
16
|
-
* under the License.
|
|
17
|
-
*/
|
|
18
1
|
import { User as IUser } from '@thunderid/browser';
|
|
19
2
|
import { FC, ReactNode } from 'react';
|
|
20
3
|
/**
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BaseUser.d.ts","sourceRoot":"","sources":["../../../../src/components/presentation/User/BaseUser.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"BaseUser.d.ts","sourceRoot":"","sources":["../../../../src/components/presentation/User/BaseUser.tsx"],"names":[],"mappings":"AAGA,OAAO,EAAC,IAAI,IAAI,KAAK,EAAC,MAAM,oBAAoB,CAAC;AACjD,OAAO,EAAC,EAAE,EAAgB,SAAS,EAAC,MAAM,OAAO,CAAC;AAElD;;GAEG;AACH,MAAM,WAAW,aAAa;IAC5B;;;;OAIG;IACH,QAAQ,EAAE,CAAC,IAAI,EAAE,KAAK,GAAG,IAAI,KAAK,SAAS,CAAC;IAE5C;;OAEG;IACH,QAAQ,CAAC,EAAE,SAAS,CAAC;IAErB;;OAEG;IACH,IAAI,EAAE,KAAK,GAAG,IAAI,CAAC;CACpB;AAED;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,QAAA,MAAM,QAAQ,EAAE,EAAE,CAAC,aAAa,CAM/B,CAAC;AAIF,eAAe,QAAQ,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BaseUser.js","names":["BaseUser: FC<BaseUserProps>"],"sources":["../../../../src/components/presentation/User/BaseUser.tsx"],"sourcesContent":["
|
|
1
|
+
{"version":3,"file":"BaseUser.js","names":["BaseUser: FC<BaseUserProps>"],"sources":["../../../../src/components/presentation/User/BaseUser.tsx"],"sourcesContent":["// Copyright 2025 The ThunderID Authors\n// SPDX-License-Identifier: Apache-2.0\n\nimport {User as IUser} from '@thunderid/browser';\nimport {FC, ReactElement, ReactNode} from 'react';\n\n/**\n * Props for the BaseUser component.\n */\nexport interface BaseUserProps {\n /**\n * Render prop that takes the user object and returns a ReactNode.\n * @param user - The authenticated user object from ThunderID.\n * @returns A ReactNode to render.\n */\n children: (user: IUser | null) => ReactNode;\n\n /**\n * Optional element to render when no user is provided.\n */\n fallback?: ReactNode;\n\n /**\n * The user object to display. If not provided, the component will render the fallback.\n */\n user: IUser | null;\n}\n\n/**\n * Base User component that provides the core functionality for displaying user information.\n * This component takes a user object as a prop and uses render props to expose it.\n *\n * @remarks This is the base component that can be used in any context where you have\n * a user object available. For React applications, use the User component which\n * automatically retrieves the user from ThunderID context.\n *\n * @example\n * ```tsx\n * import { BaseUser } from '@thunderid/auth-react';\n *\n * const MyComponent = ({ user }) => {\n * return (\n * <BaseUser user={user} fallback={<p>No user data</p>}>\n * {(user) => (\n * <div>\n * <h1>Welcome, {user.displayName}!</h1>\n * <p>Email: {user.email}</p>\n * </div>\n * )}\n * </BaseUser>\n * );\n * }\n * ```\n */\nconst BaseUser: FC<BaseUserProps> = ({user, children, fallback = null}: BaseUserProps): ReactElement => {\n if (!user) {\n return <>{fallback}</>;\n }\n\n return <>{children(user)}</>;\n};\n\nBaseUser.displayName = 'BaseUser';\n\nexport default BaseUser;\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAsDA,MAAMA,YAA+B,EAAC,MAAM,UAAU,WAAW,WAAuC;AACtG,KAAI,CAAC,KACH,QAAO,0CAAG,WAAY;AAGxB,QAAO,0CAAG,SAAS,KAAK,GAAI;;AAG9B,SAAS,cAAc;AAEvB,uBAAe"}
|
|
@@ -1,20 +1,3 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Copyright (c) 2025, WSO2 LLC. (https://www.wso2.com).
|
|
3
|
-
*
|
|
4
|
-
* WSO2 LLC. licenses this file to you under the Apache License,
|
|
5
|
-
* Version 2.0 (the "License"); you may not use this file except
|
|
6
|
-
* in compliance with the License.
|
|
7
|
-
* You may obtain a copy of the License at
|
|
8
|
-
*
|
|
9
|
-
* http://www.apache.org/licenses/LICENSE-2.0
|
|
10
|
-
*
|
|
11
|
-
* Unless required by applicable law or agreed to in writing,
|
|
12
|
-
* software distributed under the License is distributed on an
|
|
13
|
-
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
|
14
|
-
* KIND, either express or implied. See the License for the
|
|
15
|
-
* specific language governing permissions and limitations
|
|
16
|
-
* under the License.
|
|
17
|
-
*/
|
|
18
1
|
import { User as IUser } from '@thunderid/browser';
|
|
19
2
|
import { FC, ReactNode } from 'react';
|
|
20
3
|
import { BaseUserProps } from './BaseUser';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"User.d.ts","sourceRoot":"","sources":["../../../../src/components/presentation/User/User.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"User.d.ts","sourceRoot":"","sources":["../../../../src/components/presentation/User/User.tsx"],"names":[],"mappings":"AAGA,OAAO,EAAC,IAAI,IAAI,KAAK,EAAC,MAAM,oBAAoB,CAAC;AACjD,OAAO,EAAC,EAAE,EAAgB,SAAS,EAAC,MAAM,OAAO,CAAC;AAClD,OAAiB,EAAC,aAAa,EAAC,MAAM,YAAY,CAAC;AAGnD;;;GAGG;AACH,MAAM,WAAW,SAAU,SAAQ,IAAI,CAAC,aAAa,EAAE,MAAM,CAAC;IAC5D;;;;OAIG;IACH,QAAQ,EAAE,CAAC,IAAI,EAAE,KAAK,GAAG,IAAI,KAAK,SAAS,CAAC;IAE5C;;OAEG;IACH,QAAQ,CAAC,EAAE,SAAS,CAAC;CACtB;AAED;;;;;;;;;;;;;;;;;;;;;;;GAuBG;AACH,QAAA,MAAM,IAAI,EAAE,EAAE,CAAC,SAAS,CAQvB,CAAC;AAIF,eAAe,IAAI,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"User.js","names":["User: FC<UserProps>","useThunderID","BaseUser"],"sources":["../../../../src/components/presentation/User/User.tsx"],"sourcesContent":["
|
|
1
|
+
{"version":3,"file":"User.js","names":["User: FC<UserProps>","useThunderID","BaseUser"],"sources":["../../../../src/components/presentation/User/User.tsx"],"sourcesContent":["// Copyright 2025 The ThunderID Authors\n// SPDX-License-Identifier: Apache-2.0\n\nimport {User as IUser} from '@thunderid/browser';\nimport {FC, ReactElement, ReactNode} from 'react';\nimport BaseUser, {BaseUserProps} from './BaseUser';\nimport useThunderID from '../../../contexts/ThunderID/useThunderID';\n\n/**\n * Props for the User component.\n * Extends BaseUserProps but makes the user prop optional since it will be obtained from useThunderID\n */\nexport interface UserProps extends Omit<BaseUserProps, 'user'> {\n /**\n * Render prop that takes the user object and returns a ReactNode.\n * @param user - The authenticated user object from ThunderID.\n * @returns A ReactNode to render.\n */\n children: (user: IUser | null) => ReactNode;\n\n /**\n * Optional element to render when no user is signed in.\n */\n fallback?: ReactNode;\n}\n\n/**\n * A component that uses render props to expose the authenticated user object.\n * This component automatically retrieves the user from ThunderID context.\n *\n * @remarks This component is only supported in browser based React applications (CSR).\n *\n * @example\n * ```tsx\n * import { IUser } from '@thunderid/auth-react';\n *\n * const App = () => {\n * return (\n * <User fallback={<p>Please sign in</p>}>\n * {(user) => (\n * <div>\n * <h1>Welcome, {user.displayName}!</h1>\n * <p>Email: {user.email}</p>\n * </div>\n * )}\n * </User>\n * );\n * }\n * ```\n */\nconst User: FC<UserProps> = ({children, fallback = null}: UserProps): ReactElement => {\n const {user} = useThunderID();\n\n return (\n <BaseUser user={user} fallback={fallback}>\n {children}\n </BaseUser>\n );\n};\n\nUser.displayName = 'User';\n\nexport default User;\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAkDA,MAAMA,QAAuB,EAAC,UAAU,WAAW,WAAmC;CACpF,MAAM,EAAC,SAAQC,sBAAc;AAE7B,QACE,oBAACC;EAAe;EAAgB;EAC7B;GACQ;;AAIf,KAAK,cAAc;AAEnB,mBAAe"}
|
|
@@ -1,20 +1,3 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Copyright (c) 2025-2026, WSO2 LLC. (https://www.wso2.com).
|
|
3
|
-
*
|
|
4
|
-
* WSO2 LLC. licenses this file to you under the Apache License,
|
|
5
|
-
* Version 2.0 (the "License"); you may not use this file except
|
|
6
|
-
* in compliance with the License.
|
|
7
|
-
* You may obtain a copy of the License at
|
|
8
|
-
*
|
|
9
|
-
* http://www.apache.org/licenses/LICENSE-2.0
|
|
10
|
-
*
|
|
11
|
-
* Unless required by applicable law or agreed to in writing,
|
|
12
|
-
* software distributed under the License is distributed on an
|
|
13
|
-
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
|
14
|
-
* KIND, either express or implied. See the License for the
|
|
15
|
-
* specific language governing permissions and limitations
|
|
16
|
-
* under the License.
|
|
17
|
-
*/
|
|
18
1
|
import { User } from '@thunderid/browser';
|
|
19
2
|
import { FC } from 'react';
|
|
20
3
|
export interface BaseUserAvatarProps {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BaseUserAvatar.d.ts","sourceRoot":"","sources":["../../../../src/components/presentation/UserAvatar/BaseUserAvatar.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"BaseUserAvatar.d.ts","sourceRoot":"","sources":["../../../../src/components/presentation/UserAvatar/BaseUserAvatar.tsx"],"names":[],"mappings":"AAGA,OAAO,EAA0B,IAAI,EAAC,MAAM,oBAAoB,CAAC;AACjE,OAAO,EAAC,EAAE,EAAe,MAAM,OAAO,CAAC;AAGvC,MAAM,WAAW,mBAAmB;IAClC;;;;OAIG;IACH,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B;;OAEG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB;;;OAGG;IACH,IAAI,CAAC,EAAE,MAAM,CAAC;IACd;;;;OAIG;IACH,IAAI,EAAE,IAAI,GAAG,IAAI,CAAC;CACnB;AAwBD;;;;;;;;;;;;GAYG;AACH,QAAA,MAAM,cAAc,EAAE,EAAE,CAAC,mBAAmB,CAa3C,CAAC;AAIF,eAAe,cAAc,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BaseUserAvatar.js","names":["val: unknown","given: string","family: string","BaseUserAvatar: FC<BaseUserAvatarProps>"],"sources":["../../../../src/components/presentation/UserAvatar/BaseUserAvatar.tsx"],"sourcesContent":["
|
|
1
|
+
{"version":3,"file":"BaseUserAvatar.js","names":["val: unknown","given: string","family: string","BaseUserAvatar: FC<BaseUserAvatarProps>"],"sources":["../../../../src/components/presentation/UserAvatar/BaseUserAvatar.tsx"],"sourcesContent":["// Copyright 2025-2026 The ThunderID Authors\n// SPDX-License-Identifier: Apache-2.0\n\nimport {pickAnonymousAvatarName, User} from '@thunderid/browser';\nimport {FC, JSX, useMemo} from 'react';\nimport {Avatar} from '../../primitives/Avatar/Avatar';\n\nexport interface BaseUserAvatarProps {\n /**\n * Seed used to deterministically pick the anonymous avatar shown when `user` is `null`\n * (e.g. a session or device identifier, so the same anonymous session keeps the same\n * avatar across renders). Falls back to a random pick when omitted.\n */\n anonymousAvatarSeed?: string;\n /**\n * Optional CSS class name for the avatar container.\n */\n className?: string;\n /**\n * Size of the avatar in pixels.\n * @default 40\n */\n size?: number;\n /**\n * The user object. When provided, the avatar derives the image URL and\n * initials from the user's profile fields automatically. When `null`, a\n * curated anonymous avatar is shown instead.\n */\n user: User | null;\n}\n\n/**\n * Resolves the profile picture URL from common user claim fields.\n */\nconst resolvePicture = (user: User): string | undefined => {\n for (const key of ['picture', 'profileUrl', 'profile', 'URL', 'avatarUrl', 'avatar']) {\n const val: unknown = user[key];\n if (typeof val === 'string' && val) return val;\n }\n return undefined;\n};\n\n/**\n * Resolves a display name suitable for generating avatar initials.\n */\nconst resolveName = (user: User): string | undefined => {\n const given: string = user['givenName'] || user['given_name'] || '';\n const family: string = user['familyName'] || user['family_name'] || '';\n if (given && family) return `${given} ${family}`;\n\n return user['displayName'] || user['name'] || given || user['username'] || user['email'] || undefined;\n};\n\n/**\n * Base `UserAvatar` component. Renders an avatar derived from a user object\n * without any context dependency — pass the `user` prop explicitly.\n *\n * For the context-aware version that reads the signed-in user automatically,\n * use `UserAvatar`.\n *\n * @example\n * ```tsx\n * <BaseUserAvatar user={user} size={48} />\n * <BaseUserAvatar user={null} anonymousAvatarSeed={sessionId} size={48} />\n * ```\n */\nconst BaseUserAvatar: FC<BaseUserAvatarProps> = ({\n user,\n size = 40,\n className,\n anonymousAvatarSeed = undefined,\n}: BaseUserAvatarProps): JSX.Element => {\n const imageUrl: string | undefined = useMemo(() => {\n if (user) return resolvePicture(user);\n return `avatar:variant=anonymous_animal,content=${pickAnonymousAvatarName(anonymousAvatarSeed)}`;\n }, [user, anonymousAvatarSeed]);\n const name: string | undefined = user ? resolveName(user) : undefined;\n\n return <Avatar imageUrl={imageUrl} name={name} size={size} className={className} />;\n};\n\nBaseUserAvatar.displayName = 'BaseUserAvatar';\n\nexport default BaseUserAvatar;\n"],"mappings":";;;;;;;;;AAkCA,MAAM,kBAAkB,SAAmC;AACzD,MAAK,MAAM,OAAO;EAAC;EAAW;EAAc;EAAW;EAAO;EAAa;EAAS,EAAE;EACpF,MAAMA,MAAe,KAAK;AAC1B,MAAI,OAAO,QAAQ,YAAY,IAAK,QAAO;;;;;;AAQ/C,MAAM,eAAe,SAAmC;CACtD,MAAMC,QAAgB,KAAK,gBAAgB,KAAK,iBAAiB;CACjE,MAAMC,SAAiB,KAAK,iBAAiB,KAAK,kBAAkB;AACpE,KAAI,SAAS,OAAQ,QAAO,GAAG,MAAM,GAAG;AAExC,QAAO,KAAK,kBAAkB,KAAK,WAAW,SAAS,KAAK,eAAe,KAAK,YAAY;;;;;;;;;;;;;;;AAgB9F,MAAMC,kBAA2C,EAC/C,MACA,OAAO,IACP,WACA,sBAAsB,aACgB;AAOtC,QAAO,oBAAC;EAAO,UANsB,cAAc;AACjD,OAAI,KAAM,QAAO,eAAe,KAAK;AACrC,UAAO,2CAA2C,wBAAwB,oBAAoB;KAC7F,CAAC,MAAM,oBAAoB,CAAC;EAGI,MAFF,OAAO,YAAY,KAAK,GAAG;EAEP;EAAiB;GAAa;;AAGrF,eAAe,cAAc;AAE7B,6BAAe"}
|
|
@@ -1,20 +1,3 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Copyright (c) 2025-2026, WSO2 LLC. (https://www.wso2.com).
|
|
3
|
-
*
|
|
4
|
-
* WSO2 LLC. licenses this file to you under the Apache License,
|
|
5
|
-
* Version 2.0 (the "License"); you may not use this file except
|
|
6
|
-
* in compliance with the License.
|
|
7
|
-
* You may obtain a copy of the License at
|
|
8
|
-
*
|
|
9
|
-
* http://www.apache.org/licenses/LICENSE-2.0
|
|
10
|
-
*
|
|
11
|
-
* Unless required by applicable law or agreed to in writing,
|
|
12
|
-
* software distributed under the License is distributed on an
|
|
13
|
-
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
|
14
|
-
* KIND, either express or implied. See the License for the
|
|
15
|
-
* specific language governing permissions and limitations
|
|
16
|
-
* under the License.
|
|
17
|
-
*/
|
|
18
1
|
import { User } from '@thunderid/browser';
|
|
19
2
|
import { FC } from 'react';
|
|
20
3
|
import { BaseUserAvatarProps } from './BaseUserAvatar';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"UserAvatar.d.ts","sourceRoot":"","sources":["../../../../src/components/presentation/UserAvatar/UserAvatar.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"UserAvatar.d.ts","sourceRoot":"","sources":["../../../../src/components/presentation/UserAvatar/UserAvatar.tsx"],"names":[],"mappings":"AAGA,OAAO,EAAC,IAAI,EAAC,MAAM,oBAAoB,CAAC;AACxC,OAAO,EAAC,EAAE,EAAM,MAAM,OAAO,CAAC;AAE9B,OAAuB,EAAC,mBAAmB,EAAC,MAAM,kBAAkB,CAAC;AAErE,MAAM,WAAW,eAAgB,SAAQ,IAAI,CAAC,mBAAmB,EAAE,MAAM,CAAC;IACxE;;;OAGG;IACH,IAAI,CAAC,EAAE,IAAI,GAAG,IAAI,CAAC;CACpB;AAED;;;;;;;;;;;;;;;GAeG;AACH,QAAA,MAAM,UAAU,EAAE,EAAE,CAAC,eAAe,CAGnC,CAAC;AAIF,eAAe,UAAU,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"UserAvatar.js","names":["UserAvatar: FC<UserAvatarProps>","useThunderID","BaseUserAvatar"],"sources":["../../../../src/components/presentation/UserAvatar/UserAvatar.tsx"],"sourcesContent":["
|
|
1
|
+
{"version":3,"file":"UserAvatar.js","names":["UserAvatar: FC<UserAvatarProps>","useThunderID","BaseUserAvatar"],"sources":["../../../../src/components/presentation/UserAvatar/UserAvatar.tsx"],"sourcesContent":["// Copyright 2025-2026 The ThunderID Authors\n// SPDX-License-Identifier: Apache-2.0\n\nimport {User} from '@thunderid/browser';\nimport {FC, JSX} from 'react';\nimport useThunderID from '../../../contexts/ThunderID/useThunderID';\nimport BaseUserAvatar, {BaseUserAvatarProps} from './BaseUserAvatar';\n\nexport interface UserAvatarProps extends Omit<BaseUserAvatarProps, 'user'> {\n /**\n * Override the user to render. When omitted the signed-in user from\n * ThunderID context is used automatically.\n */\n user?: User | null;\n}\n\n/**\n * Context-aware avatar component. Renders an avatar for the currently\n * signed-in user without requiring an explicit `user` prop.\n *\n * Derives the profile picture and initials from the user's token claims,\n * with graceful fallback to generated initials when no image is available.\n *\n * @example\n * ```tsx\n * // Auto-reads from context\n * <UserAvatar size={48} />\n *\n * // Override with a specific user\n * <UserAvatar user={someUser} size={32} />\n * ```\n */\nconst UserAvatar: FC<UserAvatarProps> = ({user: userProp, ...rest}: UserAvatarProps): JSX.Element => {\n const {user} = useThunderID();\n return <BaseUserAvatar user={userProp ?? user} {...rest} />;\n};\n\nUserAvatar.displayName = 'UserAvatar';\n\nexport default UserAvatar;\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;AAgCA,MAAMA,cAAmC,EAAC,MAAM,SAAU,GAAG,WAAwC;CACnG,MAAM,EAAC,SAAQC,sBAAc;AAC7B,QAAO,oBAACC;EAAe,MAAM,YAAY;EAAM,GAAI;GAAQ;;AAG7D,WAAW,cAAc;AAEzB,yBAAe"}
|
|
@@ -1,20 +1,3 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Copyright (c) 2025, WSO2 LLC. (https://www.wso2.com).
|
|
3
|
-
*
|
|
4
|
-
* WSO2 LLC. licenses this file to you under the Apache License,
|
|
5
|
-
* Version 2.0 (the "License"); you may not use this file except
|
|
6
|
-
* in compliance with the License.
|
|
7
|
-
* You may obtain a copy of the License at
|
|
8
|
-
*
|
|
9
|
-
* http://www.apache.org/licenses/LICENSE-2.0
|
|
10
|
-
*
|
|
11
|
-
* Unless required by applicable law or agreed to in writing,
|
|
12
|
-
* software distributed under the License is distributed on an
|
|
13
|
-
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
|
14
|
-
* KIND, either express or implied. See the License for the
|
|
15
|
-
* specific language governing permissions and limitations
|
|
16
|
-
* under the License.
|
|
17
|
-
*/
|
|
18
1
|
import { FC, ReactElement, ReactNode } from 'react';
|
|
19
2
|
interface MenuItem {
|
|
20
3
|
href?: string;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BaseUserDropdown.d.ts","sourceRoot":"","sources":["../../../../src/components/presentation/UserDropdown/BaseUserDropdown.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"BaseUserDropdown.d.ts","sourceRoot":"","sources":["../../../../src/components/presentation/UserDropdown/BaseUserDropdown.tsx"],"names":[],"mappings":"AAkBA,OAAO,EAAC,EAAE,EAAE,YAAY,EAAE,SAAS,EAAW,MAAM,OAAO,CAAC;AAW5D,UAAU,QAAQ;IAChB,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,IAAI,CAAC,EAAE,SAAS,CAAC;IACjB,KAAK,EAAE,SAAS,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,IAAI,CAAC;CACtB;AAED,MAAM,WAAW,qBAAqB;IACpC;;;OAGG;IACH,gBAAgB,CAAC,EAAE;QACjB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,EAAE,GAAG,SAAS,CAAC;QAC7C,SAAS,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;QAC9B,QAAQ,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;QAC7B,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;QAC5B,QAAQ,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;KAC9B,CAAC;IACF;;OAEG;IACH,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB;;OAEG;IACH,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB;;OAEG;IACH,QAAQ,CAAC,EAAE,YAAY,GAAG,IAAI,CAAC;IAC/B;;OAEG;IACH,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB;;OAEG;IACH,SAAS,CAAC,EAAE,QAAQ,EAAE,CAAC;IACvB;;OAEG;IACH,eAAe,CAAC,EAAE,MAAM,IAAI,CAAC;IAC7B;;OAEG;IACH,SAAS,CAAC,EAAE,MAAM,IAAI,CAAC;IACvB;;OAEG;IACH,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB;;OAEG;IACH,kBAAkB,CAAC,EAAE,OAAO,CAAC;IAC7B;;OAEG;IACH,gBAAgB,CAAC,EAAE,OAAO,CAAC;IAC3B;;OAEG;IACH,IAAI,EAAE,GAAG,CAAC;CACX;AAED;;;;GAIG;AACH,eAAO,MAAM,gBAAgB,EAAE,EAAE,CAAC,qBAAqB,CAwNtD,CAAC;AAEF,eAAe,gBAAgB,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BaseUserDropdown.js","names":["BaseUserDropdown: FC<BaseUserDropdownProps>","useTheme","styles: Record<string, string>","useStyles","mergedMappings: Record<string, string | string[]>","defaultMenuItems: MenuItem[]","User","LogOut","allMenuItems: MenuItem[]","Button","getMappedUserProfileValue","getDisplayName","Typography"],"sources":["../../../../src/components/presentation/UserDropdown/BaseUserDropdown.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 useFloating,\n autoUpdate,\n offset,\n flip,\n shift,\n useClick,\n useDismiss,\n useRole,\n useInteractions,\n FloatingFocusManager,\n FloatingPortal,\n} from '@floating-ui/react';\nimport {withVendorCSSClassPrefix} from '@thunderid/browser';\nimport {FC, ReactElement, ReactNode, useState} from 'react';\nimport useStyles from './BaseUserDropdown.styles';\nimport useTheme from '../../../contexts/Theme/useTheme';\nimport getDisplayName from '../../../utils/getDisplayName';\nimport getMappedUserProfileValue from '../../../utils/getMappedUserProfileValue';\nimport {Avatar} from '../../primitives/Avatar/Avatar';\nimport Button from '../../primitives/Button/Button';\nimport LogOut from '../../primitives/Icons/LogOut';\nimport User from '../../primitives/Icons/User';\nimport Typography from '../../primitives/Typography/Typography';\n\ninterface MenuItem {\n href?: string;\n icon?: ReactNode;\n label: ReactNode;\n onClick?: () => void;\n}\n\nexport interface BaseUserDropdownProps {\n /**\n * Mapping of component attribute names to identity provider field names.\n * Allows customizing which user profile fields should be used for each attribute.\n */\n attributeMapping?: {\n [key: string]: string | string[] | undefined;\n firstName?: string | string[];\n lastName?: string | string[];\n picture?: string | string[];\n username?: string | string[];\n };\n /**\n * Optional size for the avatar\n */\n avatarSize?: number;\n /**\n * Optional className for the dropdown container.\n */\n className?: string;\n /**\n * Optional element to render when no user is signed in.\n */\n fallback?: ReactElement | null;\n /**\n * Whether the user data is currently loading\n */\n isLoading?: boolean;\n /**\n * Menu items to display in the dropdown\n */\n menuItems?: MenuItem[];\n /**\n * Callback function for \"Manage Profile\" action\n */\n onManageProfile?: () => void;\n /**\n * Callback function for \"Sign Out\" action\n */\n onSignOut?: () => void;\n /**\n * The HTML element ID where the portal should be mounted\n */\n portalId?: string;\n /**\n * Show dropdown header with user information\n */\n showDropdownHeader?: boolean;\n /**\n * Show user's display name next to avatar in the trigger button\n */\n showTriggerLabel?: boolean;\n /**\n * The user object containing profile information\n */\n user: any;\n}\n\n/**\n * BaseUserDropdown component displays a user avatar with a dropdown menu.\n * When clicked, it shows a popover with customizable menu items.\n * This component serves as the base for framework-specific implementations.\n */\nexport const BaseUserDropdown: FC<BaseUserDropdownProps> = ({\n fallback = null,\n className = '',\n user,\n isLoading = false,\n portalId = 'thunderid-user-dropdown',\n menuItems = [],\n showTriggerLabel = false,\n avatarSize = 32,\n onManageProfile,\n onSignOut,\n attributeMapping = {},\n}: BaseUserDropdownProps): ReactElement | null => {\n const {theme, colorScheme} = useTheme();\n const styles: Record<string, string> = useStyles(theme, colorScheme);\n const [isOpen, setIsOpen] = useState(false);\n const [hoveredItemIndex, setHoveredItemIndex] = useState<number | null>(null);\n\n const {refs, floatingStyles, context} = useFloating({\n middleware: [offset(5), flip({fallbackAxisSideDirection: 'end'}), shift({padding: 5})],\n onOpenChange: setIsOpen,\n open: isOpen,\n placement: 'bottom-end',\n whileElementsMounted: autoUpdate,\n });\n\n const click: any = useClick(context);\n const dismiss: any = useDismiss(context);\n const role: any = useRole(context);\n\n const {getReferenceProps, getFloatingProps} = useInteractions([click, dismiss, role]);\n\n const defaultAttributeMappings: Record<string, string | string[]> = {\n email: ['emails'],\n firstName: ['name.givenName', 'given_name'],\n lastName: ['name.familyName', 'family_name'],\n picture: ['profile', 'profileUrl', 'picture', 'URL'],\n username: ['userName', 'username', 'user_name'],\n };\n\n const mergedMappings: Record<string, string | string[]> = Object.fromEntries(\n Object.entries({...defaultAttributeMappings, ...attributeMapping}).filter(\n (entry): entry is [string, string | string[]] => entry[1] !== undefined,\n ),\n );\n\n if (fallback && !user && !isLoading) {\n return fallback;\n }\n\n const handleMenuItemClick = (item: MenuItem): void => {\n if (item.onClick) {\n item.onClick();\n }\n setIsOpen(false);\n };\n\n const defaultMenuItems: MenuItem[] = [];\n\n if (onManageProfile) {\n defaultMenuItems.push({\n icon: <User width=\"16\" height=\"16\" />,\n label: 'Manage Profile',\n onClick: onManageProfile,\n });\n }\n\n if (onSignOut) {\n defaultMenuItems.push({\n icon: <LogOut width=\"16\" height=\"16\" />,\n label: 'Sign Out',\n onClick: onSignOut,\n });\n }\n\n const allMenuItems: MenuItem[] = [...menuItems];\n\n if (defaultMenuItems.length > 0) {\n if (menuItems.length > 0) {\n allMenuItems.push({label: '', onClick: undefined});\n }\n\n allMenuItems.push(...defaultMenuItems);\n }\n\n return (\n <div className={cx(withVendorCSSClassPrefix('user-dropdown'), className)}>\n <Button\n ref={refs.setReference}\n className={cx(withVendorCSSClassPrefix('user-dropdown__trigger'), styles['trigger'])}\n color=\"tertiary\"\n variant=\"text\"\n size=\"medium\"\n data-testid=\"thunderid-user-dropdown-trigger\"\n startIcon={\n <Avatar\n imageUrl={getMappedUserProfileValue('picture', mergedMappings, user)}\n name={getDisplayName(mergedMappings, user)}\n size={avatarSize}\n alt={`${getDisplayName(mergedMappings, user)}'s avatar`}\n />\n }\n {...getReferenceProps()}\n >\n {showTriggerLabel && (\n <Typography\n variant=\"body2\"\n className={cx(withVendorCSSClassPrefix('user-dropdown__trigger-label'), styles['userName'])}\n >\n {getDisplayName(mergedMappings, user)}\n </Typography>\n )}\n </Button>\n\n {isOpen && (\n <FloatingPortal id={portalId}>\n <FloatingFocusManager context={context} modal={false} initialFocus={-1}>\n <div\n ref={refs.setFloating}\n className={cx(withVendorCSSClassPrefix('user-dropdown__content'), styles['dropdownContent'])}\n style={{\n ...floatingStyles,\n // Floating UI doesn't set a z-index by default, so we set a high value to ensure the dropdown appears above other elements.\n // https://floating-ui.com/docs/misc#z-index-stacking\n zIndex: 9999,\n }}\n {...getFloatingProps()}\n >\n <div className={cx(withVendorCSSClassPrefix('user-dropdown__header'), styles['dropdownHeader'])}>\n <Avatar\n imageUrl={getMappedUserProfileValue('picture', mergedMappings, user)}\n name={getDisplayName(mergedMappings, user)}\n size={avatarSize * 1.25}\n alt={`${getDisplayName(mergedMappings, user)}'s avatar`}\n />\n <div className={cx(withVendorCSSClassPrefix('user-dropdown__header-info'), styles['headerInfo'])}>\n <Typography\n noWrap\n className={withVendorCSSClassPrefix('user-dropdown__header-name')}\n variant=\"body1\"\n fontWeight=\"medium\"\n >\n {getDisplayName(mergedMappings, user)}\n </Typography>\n <Typography\n noWrap\n className={withVendorCSSClassPrefix('user-dropdown__header-email')}\n variant=\"caption\"\n color=\"secondary\"\n >\n {getMappedUserProfileValue('username', mergedMappings, user) ||\n getMappedUserProfileValue('email', mergedMappings, user)}\n </Typography>\n </div>\n </div>\n <div className={cx(withVendorCSSClassPrefix('user-dropdown__menu'), styles['dropdownMenu'])}>\n {allMenuItems.map((item: any, index: number) => (\n <div key={index}>\n {((): ReactElement => {\n if (item.label === '') {\n return (\n <div\n className={cx(withVendorCSSClassPrefix('user-dropdown__menu-divider'), styles['divider'])}\n />\n );\n }\n if (item.href) {\n return (\n <a\n href={item.href}\n style={{\n backgroundColor:\n hoveredItemIndex === index ? theme.vars.colors.action?.hover : 'transparent',\n }}\n className={cx(\n withVendorCSSClassPrefix('user-dropdown__menu-item'),\n styles['menuItemAnchor'],\n )}\n onMouseEnter={(): void => setHoveredItemIndex(index)}\n onMouseLeave={(): void => setHoveredItemIndex(null)}\n onFocus={(): void => setHoveredItemIndex(index)}\n onBlur={(): void => setHoveredItemIndex(null)}\n >\n {item.icon}\n <span>{item.label}</span>\n </a>\n );\n }\n return (\n <Button\n onClick={(): void => handleMenuItemClick(item)}\n style={{\n backgroundColor:\n hoveredItemIndex === index ? theme.vars.colors.action?.hover : 'transparent',\n }}\n className={cx(withVendorCSSClassPrefix('user-dropdown__menu-item'), styles['menuItem'])}\n color=\"tertiary\"\n variant=\"text\"\n size=\"small\"\n startIcon={item.icon}\n onMouseEnter={(): void => setHoveredItemIndex(index)}\n onMouseLeave={(): void => setHoveredItemIndex(null)}\n >\n {item.label}\n </Button>\n );\n })()}\n </div>\n ))}\n </div>\n </div>\n </FloatingFocusManager>\n </FloatingPortal>\n )}\n </div>\n );\n};\n\nexport default BaseUserDropdown;\n"],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"BaseUserDropdown.js","names":["BaseUserDropdown: FC<BaseUserDropdownProps>","useTheme","styles: Record<string, string>","useStyles","mergedMappings: Record<string, string | string[]>","defaultMenuItems: MenuItem[]","User","LogOut","allMenuItems: MenuItem[]","Button","getMappedUserProfileValue","getDisplayName","Typography"],"sources":["../../../../src/components/presentation/UserDropdown/BaseUserDropdown.tsx"],"sourcesContent":["// Copyright 2025 The ThunderID Authors\n// SPDX-License-Identifier: Apache-2.0\n\nimport {cx} from '@emotion/css';\nimport {\n useFloating,\n autoUpdate,\n offset,\n flip,\n shift,\n useClick,\n useDismiss,\n useRole,\n useInteractions,\n FloatingFocusManager,\n FloatingPortal,\n} from '@floating-ui/react';\nimport {withVendorCSSClassPrefix} from '@thunderid/browser';\nimport {FC, ReactElement, ReactNode, useState} from 'react';\nimport useStyles from './BaseUserDropdown.styles';\nimport useTheme from '../../../contexts/Theme/useTheme';\nimport getDisplayName from '../../../utils/getDisplayName';\nimport getMappedUserProfileValue from '../../../utils/getMappedUserProfileValue';\nimport {Avatar} from '../../primitives/Avatar/Avatar';\nimport Button from '../../primitives/Button/Button';\nimport LogOut from '../../primitives/Icons/LogOut';\nimport User from '../../primitives/Icons/User';\nimport Typography from '../../primitives/Typography/Typography';\n\ninterface MenuItem {\n href?: string;\n icon?: ReactNode;\n label: ReactNode;\n onClick?: () => void;\n}\n\nexport interface BaseUserDropdownProps {\n /**\n * Mapping of component attribute names to identity provider field names.\n * Allows customizing which user profile fields should be used for each attribute.\n */\n attributeMapping?: {\n [key: string]: string | string[] | undefined;\n firstName?: string | string[];\n lastName?: string | string[];\n picture?: string | string[];\n username?: string | string[];\n };\n /**\n * Optional size for the avatar\n */\n avatarSize?: number;\n /**\n * Optional className for the dropdown container.\n */\n className?: string;\n /**\n * Optional element to render when no user is signed in.\n */\n fallback?: ReactElement | null;\n /**\n * Whether the user data is currently loading\n */\n isLoading?: boolean;\n /**\n * Menu items to display in the dropdown\n */\n menuItems?: MenuItem[];\n /**\n * Callback function for \"Manage Profile\" action\n */\n onManageProfile?: () => void;\n /**\n * Callback function for \"Sign Out\" action\n */\n onSignOut?: () => void;\n /**\n * The HTML element ID where the portal should be mounted\n */\n portalId?: string;\n /**\n * Show dropdown header with user information\n */\n showDropdownHeader?: boolean;\n /**\n * Show user's display name next to avatar in the trigger button\n */\n showTriggerLabel?: boolean;\n /**\n * The user object containing profile information\n */\n user: any;\n}\n\n/**\n * BaseUserDropdown component displays a user avatar with a dropdown menu.\n * When clicked, it shows a popover with customizable menu items.\n * This component serves as the base for framework-specific implementations.\n */\nexport const BaseUserDropdown: FC<BaseUserDropdownProps> = ({\n fallback = null,\n className = '',\n user,\n isLoading = false,\n portalId = 'thunderid-user-dropdown',\n menuItems = [],\n showTriggerLabel = false,\n avatarSize = 32,\n onManageProfile,\n onSignOut,\n attributeMapping = {},\n}: BaseUserDropdownProps): ReactElement | null => {\n const {theme, colorScheme} = useTheme();\n const styles: Record<string, string> = useStyles(theme, colorScheme);\n const [isOpen, setIsOpen] = useState(false);\n const [hoveredItemIndex, setHoveredItemIndex] = useState<number | null>(null);\n\n const {refs, floatingStyles, context} = useFloating({\n middleware: [offset(5), flip({fallbackAxisSideDirection: 'end'}), shift({padding: 5})],\n onOpenChange: setIsOpen,\n open: isOpen,\n placement: 'bottom-end',\n whileElementsMounted: autoUpdate,\n });\n\n const click: any = useClick(context);\n const dismiss: any = useDismiss(context);\n const role: any = useRole(context);\n\n const {getReferenceProps, getFloatingProps} = useInteractions([click, dismiss, role]);\n\n const defaultAttributeMappings: Record<string, string | string[]> = {\n email: ['emails'],\n firstName: ['name.givenName', 'given_name'],\n lastName: ['name.familyName', 'family_name'],\n picture: ['profile', 'profileUrl', 'picture', 'URL'],\n username: ['userName', 'username', 'user_name'],\n };\n\n const mergedMappings: Record<string, string | string[]> = Object.fromEntries(\n Object.entries({...defaultAttributeMappings, ...attributeMapping}).filter(\n (entry): entry is [string, string | string[]] => entry[1] !== undefined,\n ),\n );\n\n if (fallback && !user && !isLoading) {\n return fallback;\n }\n\n const handleMenuItemClick = (item: MenuItem): void => {\n if (item.onClick) {\n item.onClick();\n }\n setIsOpen(false);\n };\n\n const defaultMenuItems: MenuItem[] = [];\n\n if (onManageProfile) {\n defaultMenuItems.push({\n icon: <User width=\"16\" height=\"16\" />,\n label: 'Manage Profile',\n onClick: onManageProfile,\n });\n }\n\n if (onSignOut) {\n defaultMenuItems.push({\n icon: <LogOut width=\"16\" height=\"16\" />,\n label: 'Sign Out',\n onClick: onSignOut,\n });\n }\n\n const allMenuItems: MenuItem[] = [...menuItems];\n\n if (defaultMenuItems.length > 0) {\n if (menuItems.length > 0) {\n allMenuItems.push({label: '', onClick: undefined});\n }\n\n allMenuItems.push(...defaultMenuItems);\n }\n\n return (\n <div className={cx(withVendorCSSClassPrefix('user-dropdown'), className)}>\n <Button\n ref={refs.setReference}\n className={cx(withVendorCSSClassPrefix('user-dropdown__trigger'), styles['trigger'])}\n color=\"tertiary\"\n variant=\"text\"\n size=\"medium\"\n data-testid=\"thunderid-user-dropdown-trigger\"\n startIcon={\n <Avatar\n imageUrl={getMappedUserProfileValue('picture', mergedMappings, user)}\n name={getDisplayName(mergedMappings, user)}\n size={avatarSize}\n alt={`${getDisplayName(mergedMappings, user)}'s avatar`}\n />\n }\n {...getReferenceProps()}\n >\n {showTriggerLabel && (\n <Typography\n variant=\"body2\"\n className={cx(withVendorCSSClassPrefix('user-dropdown__trigger-label'), styles['userName'])}\n >\n {getDisplayName(mergedMappings, user)}\n </Typography>\n )}\n </Button>\n\n {isOpen && (\n <FloatingPortal id={portalId}>\n <FloatingFocusManager context={context} modal={false} initialFocus={-1}>\n <div\n ref={refs.setFloating}\n className={cx(withVendorCSSClassPrefix('user-dropdown__content'), styles['dropdownContent'])}\n style={{\n ...floatingStyles,\n // Floating UI doesn't set a z-index by default, so we set a high value to ensure the dropdown appears above other elements.\n // https://floating-ui.com/docs/misc#z-index-stacking\n zIndex: 9999,\n }}\n {...getFloatingProps()}\n >\n <div className={cx(withVendorCSSClassPrefix('user-dropdown__header'), styles['dropdownHeader'])}>\n <Avatar\n imageUrl={getMappedUserProfileValue('picture', mergedMappings, user)}\n name={getDisplayName(mergedMappings, user)}\n size={avatarSize * 1.25}\n alt={`${getDisplayName(mergedMappings, user)}'s avatar`}\n />\n <div className={cx(withVendorCSSClassPrefix('user-dropdown__header-info'), styles['headerInfo'])}>\n <Typography\n noWrap\n className={withVendorCSSClassPrefix('user-dropdown__header-name')}\n variant=\"body1\"\n fontWeight=\"medium\"\n >\n {getDisplayName(mergedMappings, user)}\n </Typography>\n <Typography\n noWrap\n className={withVendorCSSClassPrefix('user-dropdown__header-email')}\n variant=\"caption\"\n color=\"secondary\"\n >\n {getMappedUserProfileValue('username', mergedMappings, user) ||\n getMappedUserProfileValue('email', mergedMappings, user)}\n </Typography>\n </div>\n </div>\n <div className={cx(withVendorCSSClassPrefix('user-dropdown__menu'), styles['dropdownMenu'])}>\n {allMenuItems.map((item: any, index: number) => (\n <div key={index}>\n {((): ReactElement => {\n if (item.label === '') {\n return (\n <div\n className={cx(withVendorCSSClassPrefix('user-dropdown__menu-divider'), styles['divider'])}\n />\n );\n }\n if (item.href) {\n return (\n <a\n href={item.href}\n style={{\n backgroundColor:\n hoveredItemIndex === index ? theme.vars.colors.action?.hover : 'transparent',\n }}\n className={cx(\n withVendorCSSClassPrefix('user-dropdown__menu-item'),\n styles['menuItemAnchor'],\n )}\n onMouseEnter={(): void => setHoveredItemIndex(index)}\n onMouseLeave={(): void => setHoveredItemIndex(null)}\n onFocus={(): void => setHoveredItemIndex(index)}\n onBlur={(): void => setHoveredItemIndex(null)}\n >\n {item.icon}\n <span>{item.label}</span>\n </a>\n );\n }\n return (\n <Button\n onClick={(): void => handleMenuItemClick(item)}\n style={{\n backgroundColor:\n hoveredItemIndex === index ? theme.vars.colors.action?.hover : 'transparent',\n }}\n className={cx(withVendorCSSClassPrefix('user-dropdown__menu-item'), styles['menuItem'])}\n color=\"tertiary\"\n variant=\"text\"\n size=\"small\"\n startIcon={item.icon}\n onMouseEnter={(): void => setHoveredItemIndex(index)}\n onMouseLeave={(): void => setHoveredItemIndex(null)}\n >\n {item.label}\n </Button>\n );\n })()}\n </div>\n ))}\n </div>\n </div>\n </FloatingFocusManager>\n </FloatingPortal>\n )}\n </div>\n );\n};\n\nexport default BaseUserDropdown;\n"],"mappings":"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"}
|
|
@@ -1,20 +1,3 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Copyright (c) 2025, WSO2 LLC. (https://www.wso2.com).
|
|
3
|
-
*
|
|
4
|
-
* WSO2 LLC. licenses this file to you under the Apache License,
|
|
5
|
-
* Version 2.0 (the "License"); you may not use this file except
|
|
6
|
-
* in compliance with the License.
|
|
7
|
-
* You may obtain a copy of the License at
|
|
8
|
-
*
|
|
9
|
-
* http://www.apache.org/licenses/LICENSE-2.0
|
|
10
|
-
*
|
|
11
|
-
* Unless required by applicable law or agreed to in writing,
|
|
12
|
-
* software distributed under the License is distributed on an
|
|
13
|
-
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
|
14
|
-
* KIND, either express or implied. See the License for the
|
|
15
|
-
* specific language governing permissions and limitations
|
|
16
|
-
* under the License.
|
|
17
|
-
*/
|
|
18
1
|
import { Theme } from '@thunderid/browser';
|
|
19
2
|
/**
|
|
20
3
|
* Creates styles for the BaseUserDropdown component
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BaseUserDropdown.styles.d.ts","sourceRoot":"","sources":["../../../../src/components/presentation/UserDropdown/BaseUserDropdown.styles.ts"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"BaseUserDropdown.styles.d.ts","sourceRoot":"","sources":["../../../../src/components/presentation/UserDropdown/BaseUserDropdown.styles.ts"],"names":[],"mappings":"AAIA,OAAO,EAAC,KAAK,EAAC,MAAM,oBAAoB,CAAC;AAGzC;;;;;GAKG;AACH,QAAA,MAAM,SAAS,GAAI,OAAO,KAAK,EAAE,aAAa,MAAM,KAAG,MAAM,CAAC,MAAM,EAAE,MAAM,CAuMxE,CAAC;AAEL,eAAe,SAAS,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BaseUserDropdown.styles.js","names":["trigger: string","userName: string","dropdownContent: string","dropdownMenu: string","menuItem: string","menuItemAnchor: string","divider: string","dropdownHeader: string","headerInfo: string","headerName: string"],"sources":["../../../../src/components/presentation/UserDropdown/BaseUserDropdown.styles.ts"],"sourcesContent":["
|
|
1
|
+
{"version":3,"file":"BaseUserDropdown.styles.js","names":["trigger: string","userName: string","dropdownContent: string","dropdownMenu: string","menuItem: string","menuItemAnchor: string","divider: string","dropdownHeader: string","headerInfo: string","headerName: string"],"sources":["../../../../src/components/presentation/UserDropdown/BaseUserDropdown.styles.ts"],"sourcesContent":["// Copyright 2025 The ThunderID Authors\n// SPDX-License-Identifier: Apache-2.0\n\nimport {css} from '@emotion/css';\nimport {Theme} from '@thunderid/browser';\nimport {useMemo} from 'react';\n\n/**\n * Creates styles for the BaseUserDropdown component\n * @param theme - The theme object containing design tokens\n * @param colorScheme - The current color scheme (used for memoization)\n * @returns Object containing CSS class names for component styling\n */\nconst useStyles = (theme: Theme, colorScheme: string): Record<string, string> =>\n useMemo(() => {\n const trigger: string = css`\n display: inline-flex;\n align-items: center;\n gap: calc(${theme.vars.spacing.unit} * 0.75);\n padding: calc(${theme.vars.spacing.unit} * 0.5);\n background: none;\n border: none;\n cursor: pointer;\n border-radius: ${theme.vars.borderRadius.medium};\n transition: none;\n box-shadow: none;\n background-color: transparent;\n\n &:hover {\n background-color: ${theme.vars.colors.action?.hover || 'rgba(0, 0, 0, 0.05)'};\n }\n\n &:focus {\n outline: 2px solid ${theme.vars.colors.primary};\n outline-offset: 2px;\n }\n\n &:hover,\n &:focus,\n &:active,\n &:focus-visible {\n transition: none;\n box-shadow: none;\n }\n `;\n\n const userName: string = css`\n color: ${theme.vars.colors.text.primary};\n font-size: 0.875rem;\n font-weight: 500;\n max-width: 150px;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n `;\n\n const dropdownContent: string = css`\n background: ${theme.vars.colors.background.surface};\n border-radius: ${theme.vars.borderRadius.large};\n box-shadow:\n 0 4px 6px -1px rgba(0, 0, 0, 0.1),\n 0 2px 4px -1px rgba(0, 0, 0, 0.06);\n border: 1px solid ${theme.vars.colors.border};\n font-family: ${theme.vars.typography.fontFamily};\n min-width: 250px;\n max-width: 600px;\n z-index: 1000;\n overflow: hidden;\n `;\n\n const dropdownMenu: string = css`\n display: flex;\n flex-direction: column;\n width: 100%;\n `;\n\n const menuItem: string = css`\n display: flex;\n align-items: center;\n justify-content: flex-start;\n gap: ${theme.vars.spacing.unit};\n padding: calc(${theme.vars.spacing.unit} * 1.5) calc(${theme.vars.spacing.unit} * 2);\n width: 100%;\n color: ${theme.vars.colors.text.primary};\n text-decoration: none;\n border: none;\n cursor: pointer;\n font-size: 0.875rem;\n text-align: start;\n border-radius: ${theme.vars.borderRadius.medium};\n transition: none;\n box-shadow: none;\n background: transparent;\n\n &:hover {\n background-color: ${theme.vars.colors.action?.hover || 'rgba(0, 0, 0, 0.05)'};\n }\n\n &:hover,\n &:focus,\n &:active,\n &:focus-visible {\n transition: none;\n box-shadow: none;\n }\n `;\n\n const menuItemAnchor: string = css`\n display: flex;\n align-items: center;\n justify-content: flex-start;\n gap: ${theme.vars.spacing.unit};\n padding: calc(${theme.vars.spacing.unit} * 1.5) calc(${theme.vars.spacing.unit} * 2);\n width: 100%;\n color: ${theme.vars.colors.text.primary};\n text-decoration: none;\n border: none;\n background: none;\n cursor: pointer;\n font-size: 0.875rem;\n text-align: start;\n border-radius: ${theme.vars.borderRadius.medium};\n transition: background-color 0.15s ease-in-out;\n\n &:hover {\n background-color: ${theme.vars.colors.action?.hover || 'rgba(0, 0, 0, 0.05)'};\n }\n `;\n\n const divider: string = css`\n margin: calc(${theme.vars.spacing.unit} * 0.5) 0;\n border-bottom: 1px solid ${theme.vars.colors.border};\n `;\n\n const dropdownHeader: string = css`\n display: flex;\n align-items: center;\n gap: ${theme.vars.spacing.unit};\n padding: calc(${theme.vars.spacing.unit} * 1.5);\n border-bottom: 1px solid ${theme.vars.colors.border};\n `;\n\n const headerInfo: string = css`\n display: flex;\n flex-direction: column;\n gap: calc(${theme.vars.spacing.unit} / 4);\n flex: 1;\n min-width: 0;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n `;\n\n const headerName: string = css`\n color: ${theme.vars.colors.text.primary};\n font-size: 1rem;\n font-weight: 500;\n margin: 0;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n `;\n\n const headerEmail: string = css`\n color: ${theme.vars.colors.text.secondary};\n font-size: 0.875rem;\n margin: 0;\n overflow: hidden;\n text-overflow: ellipsis;\n white-space: nowrap;\n `;\n\n const loadingContainer: string = css`\n display: flex;\n align-items: center;\n justify-content: center;\n min-height: 80px;\n gap: ${theme.vars.spacing.unit};\n `;\n\n const loadingText: string = css`\n color: ${theme.vars.colors.text.secondary};\n font-size: 0.875rem;\n `;\n\n return {\n divider,\n dropdownContent,\n dropdownHeader,\n dropdownMenu,\n headerEmail,\n headerInfo,\n headerName,\n loadingContainer,\n loadingText,\n menuItem,\n menuItemAnchor,\n trigger,\n userName,\n };\n }, [\n theme.vars.colors.background.surface,\n theme.vars.colors.text.primary,\n theme.vars.colors.text.secondary,\n theme.vars.colors.border,\n theme.vars.colors.primary,\n theme.vars.colors.action?.hover,\n theme.vars.borderRadius.medium,\n theme.vars.borderRadius.large,\n theme.vars.spacing.unit,\n theme.vars.typography.fontFamily,\n colorScheme,\n ]);\n\nexport default useStyles;\n"],"mappings":";;;;;;;;;;AAaA,MAAM,aAAa,OAAc,gBAC/B,cAAc;CACZ,MAAMA,UAAkB,GAAG;;;kBAGb,MAAM,KAAK,QAAQ,KAAK;sBACpB,MAAM,KAAK,QAAQ,KAAK;;;;uBAIvB,MAAM,KAAK,aAAa,OAAO;;;;;;4BAM1B,MAAM,KAAK,OAAO,QAAQ,SAAS,sBAAsB;;;;6BAIxD,MAAM,KAAK,OAAO,QAAQ;;;;;;;;;;;;CAanD,MAAMC,WAAmB,GAAG;eACjB,MAAM,KAAK,OAAO,KAAK,QAAQ;;;;;;;;CAS1C,MAAMC,kBAA0B,GAAG;oBACnB,MAAM,KAAK,OAAO,WAAW,QAAQ;uBAClC,MAAM,KAAK,aAAa,MAAM;;;;0BAI3B,MAAM,KAAK,OAAO,OAAO;qBAC9B,MAAM,KAAK,WAAW,WAAW;;;;;;CAOlD,MAAMC,eAAuB,GAAG;;;;;CAMhC,MAAMC,WAAmB,GAAG;;;;aAInB,MAAM,KAAK,QAAQ,KAAK;sBACf,MAAM,KAAK,QAAQ,KAAK,eAAe,MAAM,KAAK,QAAQ,KAAK;;eAEtE,MAAM,KAAK,OAAO,KAAK,QAAQ;;;;;;uBAMvB,MAAM,KAAK,aAAa,OAAO;;;;;;4BAM1B,MAAM,KAAK,OAAO,QAAQ,SAAS,sBAAsB;;;;;;;;;;;CAYjF,MAAMC,iBAAyB,GAAG;;;;aAIzB,MAAM,KAAK,QAAQ,KAAK;sBACf,MAAM,KAAK,QAAQ,KAAK,eAAe,MAAM,KAAK,QAAQ,KAAK;;eAEtE,MAAM,KAAK,OAAO,KAAK,QAAQ;;;;;;;uBAOvB,MAAM,KAAK,aAAa,OAAO;;;;4BAI1B,MAAM,KAAK,OAAO,QAAQ,SAAS,sBAAsB;;;CAIjF,MAAMC,UAAkB,GAAG;qBACV,MAAM,KAAK,QAAQ,KAAK;iCACZ,MAAM,KAAK,OAAO,OAAO;;CAGtD,MAAMC,iBAAyB,GAAG;;;aAGzB,MAAM,KAAK,QAAQ,KAAK;sBACf,MAAM,KAAK,QAAQ,KAAK;iCACb,MAAM,KAAK,OAAO,OAAO;;CAGtD,MAAMC,aAAqB,GAAG;;;kBAGhB,MAAM,KAAK,QAAQ,KAAK;;;;;;;CAQtC,MAAMC,aAAqB,GAAG;eACnB,MAAM,KAAK,OAAO,KAAK,QAAQ;;;;;;;;AA+B1C,QAAO;EACL;EACA;EACA;EACA;EACA,aA3B0B,GAAG;eACpB,MAAM,KAAK,OAAO,KAAK,UAAU;;;;;;;EA2B1C;EACA;EACA,kBArB+B,GAAG;;;;;aAK3B,MAAM,KAAK,QAAQ,KAAK;;EAiB/B,aAd0B,GAAG;eACpB,MAAM,KAAK,OAAO,KAAK,UAAU;;;EAc1C;EACA;EACA;EACA;EACD;GACA;CACD,MAAM,KAAK,OAAO,WAAW;CAC7B,MAAM,KAAK,OAAO,KAAK;CACvB,MAAM,KAAK,OAAO,KAAK;CACvB,MAAM,KAAK,OAAO;CAClB,MAAM,KAAK,OAAO;CAClB,MAAM,KAAK,OAAO,QAAQ;CAC1B,MAAM,KAAK,aAAa;CACxB,MAAM,KAAK,aAAa;CACxB,MAAM,KAAK,QAAQ;CACnB,MAAM,KAAK,WAAW;CACtB;CACD,CAAC;AAEJ,sCAAe"}
|
|
@@ -1,20 +1,3 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Copyright (c) 2025, WSO2 LLC. (https://www.wso2.com).
|
|
3
|
-
*
|
|
4
|
-
* WSO2 LLC. licenses this file to you under the Apache License,
|
|
5
|
-
* Version 2.0 (the "License"); you may not use this file except
|
|
6
|
-
* in compliance with the License.
|
|
7
|
-
* You may obtain a copy of the License at
|
|
8
|
-
*
|
|
9
|
-
* http://www.apache.org/licenses/LICENSE-2.0
|
|
10
|
-
*
|
|
11
|
-
* Unless required by applicable law or agreed to in writing,
|
|
12
|
-
* software distributed under the License is distributed on an
|
|
13
|
-
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
|
14
|
-
* KIND, either express or implied. See the License for the
|
|
15
|
-
* specific language governing permissions and limitations
|
|
16
|
-
* under the License.
|
|
17
|
-
*/
|
|
18
1
|
import { FlowMetadataResponse } from '@thunderid/browser';
|
|
19
2
|
import { FC, ReactNode } from 'react';
|
|
20
3
|
import { BaseUserDropdownProps } from './BaseUserDropdown';
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"UserDropdown.d.ts","sourceRoot":"","sources":["../../../../src/components/presentation/UserDropdown/UserDropdown.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"UserDropdown.d.ts","sourceRoot":"","sources":["../../../../src/components/presentation/UserDropdown/UserDropdown.tsx"],"names":[],"mappings":"AAGA,OAAO,EAAC,oBAAoB,EAAC,MAAM,oBAAoB,CAAC;AACxD,OAAO,EAAC,EAAE,EAAgB,SAAS,EAAW,MAAM,OAAO,CAAC;AAC5D,OAAO,EAAgD,qBAAqB,EAAC,MAAM,oBAAoB,CAAC;AAIxG;;GAEG;AACH,MAAM,WAAW,uBAAuB;IACtC,2CAA2C;IAC3C,YAAY,EAAE,MAAM,IAAI,CAAC;IACzB,6CAA6C;IAC7C,SAAS,EAAE,OAAO,CAAC;IACnB,mDAAmD;IACnD,aAAa,EAAE,OAAO,CAAC;IACvB,6FAA6F;IAC7F,IAAI,EAAE,oBAAoB,GAAG,IAAI,CAAC;IAClC,+CAA+C;IAC/C,WAAW,EAAE,MAAM,IAAI,CAAC;IACxB,oCAAoC;IACpC,OAAO,EAAE,MAAM,IAAI,CAAC;IACpB,oCAAoC;IACpC,IAAI,EAAE,GAAG,CAAC;CACX;AAED;;;GAGG;AACH,MAAM,MAAM,iBAAiB,GAAG,IAAI,CAAC,qBAAqB,EAAE,MAAM,GAAG,iBAAiB,CAAC,GAAG;IACxF;;;OAGG;IACH,QAAQ,CAAC,EAAE,CAAC,KAAK,EAAE,uBAAuB,KAAK,SAAS,CAAC;IACzD;;;OAGG;IACH,cAAc,CAAC,EAAE,CAAC,KAAK,EAAE,uBAAuB,KAAK,SAAS,CAAC;IAC/D;;;OAGG;IACH,aAAa,CAAC,EAAE,CAAC,KAAK,EAAE,uBAAuB,KAAK,SAAS,CAAC;CAC/D,CAAC;AAEF;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA6CG;AACH,QAAA,MAAM,YAAY,EAAE,EAAE,CAAC,iBAAiB,CAkFvC,CAAC;AAEF,eAAe,YAAY,CAAC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"UserDropdown.js","names":["UserDropdown: FC<UserDropdownProps>","useThunderID","renderProps: UserDropdownRenderProps","UserProfile","BaseUserDropdownComponent"],"sources":["../../../../src/components/presentation/UserDropdown/UserDropdown.tsx"],"sourcesContent":["
|
|
1
|
+
{"version":3,"file":"UserDropdown.js","names":["UserDropdown: FC<UserDropdownProps>","useThunderID","renderProps: UserDropdownRenderProps","UserProfile","BaseUserDropdownComponent"],"sources":["../../../../src/components/presentation/UserDropdown/UserDropdown.tsx"],"sourcesContent":["// Copyright 2025 The ThunderID Authors\n// SPDX-License-Identifier: Apache-2.0\n\nimport {FlowMetadataResponse} from '@thunderid/browser';\nimport {FC, ReactElement, ReactNode, useState} from 'react';\nimport {BaseUserDropdown as BaseUserDropdownComponent, BaseUserDropdownProps} from './BaseUserDropdown';\nimport useThunderID from '../../../contexts/ThunderID/useThunderID';\nimport UserProfile from '../UserProfile/UserProfile';\n\n/**\n * Render props data passed to the children function\n */\nexport interface UserDropdownRenderProps {\n /** Function to close the profile dialog */\n closeProfile: () => void;\n /** Whether user data is currently loading */\n isLoading: boolean;\n /** Whether the profile dialog is currently open */\n isProfileOpen: boolean;\n /** Flow metadata returned by the platform (v2 only). `null` while loading or unavailable. */\n meta: FlowMetadataResponse | null;\n /** Function to open the user profile dialog */\n openProfile: () => void;\n /** Function to sign out the user */\n signOut: () => void;\n /** The authenticated user object */\n user: any;\n}\n\n/**\n * Props for the UserDropdown component.\n * Extends BaseUserDropdownProps but excludes user, onManageProfile, and onSignOut since they're handled internally\n */\nexport type UserDropdownProps = Omit<BaseUserDropdownProps, 'user' | 'onManageProfile'> & {\n /**\n * Render prop function that receives user state and actions.\n * When provided, this completely replaces the default dropdown rendering.\n */\n children?: (props: UserDropdownRenderProps) => ReactNode;\n /**\n * Custom render function for the dropdown content.\n * When provided, this replaces just the dropdown content while keeping the trigger.\n */\n renderDropdown?: (props: UserDropdownRenderProps) => ReactNode;\n /**\n * Custom render function for the trigger button.\n * When provided, this replaces just the trigger button while keeping the dropdown.\n */\n renderTrigger?: (props: UserDropdownRenderProps) => ReactNode;\n};\n\n/**\n * UserDropdown component displays a user avatar with a dropdown menu.\n * When clicked, it shows a popover with customizable menu items.\n * This component is the React-specific implementation that uses the BaseUserDropdown\n * and automatically retrieves the user data from ThunderID context.\n *\n * Supports render props for complete customization of the dropdown appearance and behavior.\n *\n * @example\n * ```tsx\n * // Basic usage - will use user from ThunderID context\n * <UserDropdown menuItems={[\n * { label: 'Profile', onClick: () => {} },\n * { label: 'Settings', href: '/settings' },\n * { label: 'Sign Out', onClick: () => {} }\n * ]} />\n *\n * // With custom configuration\n * <UserDropdown\n * showTriggerLabel={true}\n * avatarSize={40}\n * fallback={<div>Please sign in</div>}\n * />\n *\n * // Using render props for complete customization\n * <UserDropdown>\n * {({ user, isLoading, openProfile, signOut }) => (\n * <div>\n * <button onClick={openProfile}>\n * {user?.name || 'Loading...'}\n * </button>\n * <button onClick={signOut}>Logout</button>\n * </div>\n * )}\n * </UserDropdown>\n *\n * // Using partial render props\n * <UserDropdown\n * renderTrigger={({ user, openProfile }) => (\n * <button onClick={openProfile} className=\"custom-trigger\">\n * Welcome, {user?.name}!\n * </button>\n * )}\n * />\n * ```\n */\nconst UserDropdown: FC<UserDropdownProps> = ({\n children,\n renderTrigger,\n renderDropdown,\n onSignOut,\n ...rest\n}: UserDropdownProps): ReactElement => {\n const {user, isLoading, signOut, meta} = useThunderID();\n const [isProfileOpen, setIsProfileOpen] = useState(false);\n\n const handleManageProfile = (): void => {\n setIsProfileOpen(true);\n };\n\n const handleSignOut = (): void => {\n signOut();\n if (onSignOut) {\n onSignOut();\n }\n };\n\n const closeProfile = (): void => {\n setIsProfileOpen(false);\n };\n\n // Prepare render props data\n const renderProps: UserDropdownRenderProps = {\n closeProfile,\n isLoading: isLoading,\n isProfileOpen,\n meta,\n openProfile: handleManageProfile,\n signOut: handleSignOut,\n user,\n };\n\n // If children render prop is provided, use it for complete customization\n if (children) {\n return (\n <>\n {children(renderProps)}\n <UserProfile mode=\"popup\" open={isProfileOpen} onOpenChange={setIsProfileOpen} />\n </>\n );\n }\n\n // If partial render props are provided, customize specific parts\n if (renderTrigger || renderDropdown) {\n // This would require significant changes to BaseUserDropdown to support partial customization\n // For now, we'll provide a simple implementation that shows how it could work\n return (\n <>\n {renderTrigger ? (\n renderTrigger(renderProps)\n ) : (\n <BaseUserDropdownComponent\n user={user}\n isLoading={isLoading}\n onManageProfile={handleManageProfile}\n onSignOut={handleSignOut}\n {...rest}\n />\n )}\n {/* Note: renderDropdown would need BaseUserDropdown modifications to implement properly */}\n <UserProfile mode=\"popup\" open={isProfileOpen} onOpenChange={setIsProfileOpen} />\n </>\n );\n }\n\n // Default behavior - use BaseUserDropdown as before\n return (\n <>\n <BaseUserDropdownComponent\n user={user}\n isLoading={isLoading}\n onManageProfile={handleManageProfile}\n onSignOut={handleSignOut}\n {...rest}\n />\n {isProfileOpen && <UserProfile mode=\"popup\" open={isProfileOpen} onOpenChange={setIsProfileOpen} />}\n </>\n );\n};\n\nexport default UserDropdown;\n"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAiGA,MAAMA,gBAAuC,EAC3C,UACA,eACA,gBACA,UACA,GAAG,WACkC;CACrC,MAAM,EAAC,MAAM,WAAW,SAAS,SAAQC,sBAAc;CACvD,MAAM,CAAC,eAAe,oBAAoB,SAAS,MAAM;CAEzD,MAAM,4BAAkC;AACtC,mBAAiB,KAAK;;CAGxB,MAAM,sBAA4B;AAChC,WAAS;AACT,MAAI,UACF,YAAW;;CAIf,MAAM,qBAA2B;AAC/B,mBAAiB,MAAM;;CAIzB,MAAMC,cAAuC;EAC3C;EACW;EACX;EACA;EACA,aAAa;EACb,SAAS;EACT;EACD;AAGD,KAAI,SACF,QACE,4CACG,SAAS,YAAY,EACtB,oBAACC;EAAY,MAAK;EAAQ,MAAM;EAAe,cAAc;GAAoB,IAChF;AAKP,KAAI,iBAAiB,eAGnB,QACE,4CACG,gBACC,cAAc,YAAY,GAE1B,oBAACC;EACO;EACK;EACX,iBAAiB;EACjB,WAAW;EACX,GAAI;GACJ,EAGJ,oBAACD;EAAY,MAAK;EAAQ,MAAM;EAAe,cAAc;GAAoB,IAChF;AAKP,QACE,4CACE,oBAACC;EACO;EACK;EACX,iBAAiB;EACjB,WAAW;EACX,GAAI;GACJ,EACD,iBAAiB,oBAACD;EAAY,MAAK;EAAQ,MAAM;EAAe,cAAc;GAAoB,IAClG;;AAIP,2BAAe"}
|
|
@@ -1,20 +1,3 @@
|
|
|
1
|
-
/**
|
|
2
|
-
* Copyright (c) 2025, WSO2 LLC. (https://www.wso2.com).
|
|
3
|
-
*
|
|
4
|
-
* WSO2 LLC. licenses this file to you under the Apache License,
|
|
5
|
-
* Version 2.0 (the "License"); you may not use this file except
|
|
6
|
-
* in compliance with the License.
|
|
7
|
-
* You may obtain a copy of the License at
|
|
8
|
-
*
|
|
9
|
-
* http://www.apache.org/licenses/LICENSE-2.0
|
|
10
|
-
*
|
|
11
|
-
* Unless required by applicable law or agreed to in writing,
|
|
12
|
-
* software distributed under the License is distributed on an
|
|
13
|
-
* "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
|
|
14
|
-
* KIND, either express or implied. See the License for the
|
|
15
|
-
* specific language governing permissions and limitations
|
|
16
|
-
* under the License.
|
|
17
|
-
*/
|
|
18
1
|
import { User, Preferences } from '@thunderid/browser';
|
|
19
2
|
import { FC, ReactElement } from 'react';
|
|
20
3
|
export interface BaseUserProfileProps {
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BaseUserProfile.d.ts","sourceRoot":"","sources":["../../../../src/components/presentation/UserProfile/BaseUserProfile.tsx"],"names":[],"mappings":"
|
|
1
|
+
{"version":3,"file":"BaseUserProfile.d.ts","sourceRoot":"","sources":["../../../../src/components/presentation/UserProfile/BaseUserProfile.tsx"],"names":[],"mappings":"AAIA,OAAO,EAAC,IAAI,EAAiC,WAAW,EAAY,MAAM,oBAAoB,CAAC;AAC/F,OAAO,EAAC,EAAE,EAAE,YAAY,EAAmC,MAAM,OAAO,CAAC;AAuCzE,MAAM,WAAW,oBAAoB;IACnC,gBAAgB,CAAC,EAAE;QACjB,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,GAAG,MAAM,EAAE,GAAG,SAAS,CAAC;QAC7C,SAAS,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;QAC9B,QAAQ,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;QAC7B,OAAO,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;QAC5B,QAAQ,CAAC,EAAE,MAAM,GAAG,MAAM,EAAE,CAAC;KAC9B,CAAC;IACF,UAAU,CAAC,EAAE,OAAO,CAAC;IACrB,SAAS,CAAC,EAAE,MAAM,CAAC;IACnB,qBAAqB,CAAC,EAAE,MAAM,EAAE,CAAC;IACjC,QAAQ,CAAC,EAAE,OAAO,CAAC;IACnB,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,QAAQ,CAAC,EAAE,YAAY,GAAG,IAAI,CAAC;IAC/B,gBAAgB,CAAC,EAAE,IAAI,CAAC;IACxB,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;IACtB,SAAS,CAAC,EAAE,OAAO,CAAC;IACpB,IAAI,CAAC,EAAE,QAAQ,GAAG,OAAO,CAAC;IAC1B,YAAY,CAAC,EAAE,CAAC,IAAI,EAAE,OAAO,KAAK,IAAI,CAAC;IACvC,QAAQ,CAAC,EAAE,CAAC,OAAO,EAAE,GAAG,KAAK,OAAO,CAAC,IAAI,CAAC,CAAC;IAC3C,IAAI,CAAC,EAAE,OAAO,CAAC;IACf;;;;OAIG;IACH,WAAW,CAAC,EAAE,WAAW,CAAC;IAC1B,OAAO,CAAC,EAAE,IAAI,CAAC;IACf,UAAU,CAAC,EAAE,MAAM,EAAE,CAAC;IAEtB,KAAK,CAAC,EAAE,MAAM,CAAC;CAChB;AA+BD,QAAA,MAAM,eAAe,EAAE,EAAE,CAAC,oBAAoB,CAwkB7C,CAAC;AAEF,eAAe,eAAe,CAAC"}
|