@openedx/frontend-app-authn 1.0.0-alpha.4 → 1.0.0-alpha.6
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/Main.d.ts +3 -0
- package/{src/Main.tsx → dist/Main.js} +4 -15
- package/dist/Main.js.map +1 -0
- package/dist/app.d.ts +3 -0
- package/dist/app.js +41 -0
- package/dist/app.js.map +1 -0
- package/dist/app.scss +2 -0
- package/dist/base-container/components/default-layout/LargeLayout.d.ts +2 -0
- package/dist/base-container/components/default-layout/LargeLayout.js +11 -0
- package/dist/base-container/components/default-layout/LargeLayout.js.map +1 -0
- package/dist/base-container/components/default-layout/MediumLayout.d.ts +2 -0
- package/dist/base-container/components/default-layout/MediumLayout.js +11 -0
- package/dist/base-container/components/default-layout/MediumLayout.js.map +1 -0
- package/dist/base-container/components/default-layout/SmallLayout.d.ts +2 -0
- package/dist/base-container/components/default-layout/SmallLayout.js +11 -0
- package/dist/base-container/components/default-layout/SmallLayout.js.map +1 -0
- package/dist/base-container/components/default-layout/index.d.ts +3 -0
- package/{src/base-container/components/default-layout/index.jsx → dist/base-container/components/default-layout/index.js} +1 -0
- package/dist/base-container/components/default-layout/index.js.map +1 -0
- package/dist/base-container/components/default-layout/messages.d.ts +13 -0
- package/dist/base-container/components/default-layout/messages.js +15 -0
- package/dist/base-container/components/default-layout/messages.js.map +1 -0
- package/dist/base-container/components/image-layout/ExtraSmallLayout.d.ts +2 -0
- package/dist/base-container/components/image-layout/ExtraSmallLayout.js +10 -0
- package/dist/base-container/components/image-layout/ExtraSmallLayout.js.map +1 -0
- package/dist/base-container/components/image-layout/LargeLayout.d.ts +2 -0
- package/dist/base-container/components/image-layout/LargeLayout.js +11 -0
- package/dist/base-container/components/image-layout/LargeLayout.js.map +1 -0
- package/dist/base-container/components/image-layout/MediumLayout.d.ts +2 -0
- package/dist/base-container/components/image-layout/MediumLayout.js +11 -0
- package/dist/base-container/components/image-layout/MediumLayout.js.map +1 -0
- package/dist/base-container/components/image-layout/SmallLayout.d.ts +2 -0
- package/dist/base-container/components/image-layout/SmallLayout.js +10 -0
- package/dist/base-container/components/image-layout/SmallLayout.js.map +1 -0
- package/dist/base-container/components/image-layout/index.d.ts +4 -0
- package/{src/base-container/components/image-layout/index.jsx → dist/base-container/components/image-layout/index.js} +1 -0
- package/dist/base-container/components/image-layout/index.js.map +1 -0
- package/dist/base-container/components/image-layout/messages.d.ts +13 -0
- package/dist/base-container/components/image-layout/messages.js +15 -0
- package/dist/base-container/components/image-layout/messages.js.map +1 -0
- package/dist/base-container/components/welcome-page-layout/LargeLayout.d.ts +10 -0
- package/dist/base-container/components/welcome-page-layout/LargeLayout.js +14 -0
- package/dist/base-container/components/welcome-page-layout/LargeLayout.js.map +1 -0
- package/dist/base-container/components/welcome-page-layout/MediumLayout.d.ts +10 -0
- package/dist/base-container/components/welcome-page-layout/MediumLayout.js +14 -0
- package/dist/base-container/components/welcome-page-layout/MediumLayout.js.map +1 -0
- package/dist/base-container/components/welcome-page-layout/SmallLayout.d.ts +10 -0
- package/dist/base-container/components/welcome-page-layout/SmallLayout.js +14 -0
- package/dist/base-container/components/welcome-page-layout/SmallLayout.js.map +1 -0
- package/dist/base-container/components/welcome-page-layout/index.d.ts +3 -0
- package/{src/base-container/components/welcome-page-layout/index.jsx → dist/base-container/components/welcome-page-layout/index.js} +1 -0
- package/dist/base-container/components/welcome-page-layout/index.js.map +1 -0
- package/dist/base-container/components/welcome-page-layout/messages.d.ts +18 -0
- package/dist/base-container/components/welcome-page-layout/messages.js +20 -0
- package/dist/base-container/components/welcome-page-layout/messages.js.map +1 -0
- package/dist/base-container/index.d.ts +20 -0
- package/dist/base-container/index.js +27 -0
- package/dist/base-container/index.js.map +1 -0
- package/dist/common-components/EmbeddedRegistrationRoute.d.ts +14 -0
- package/{src/common-components/EmbeddedRegistrationRoute.jsx → dist/common-components/EmbeddedRegistrationRoute.js} +9 -13
- package/dist/common-components/EmbeddedRegistrationRoute.js.map +1 -0
- package/dist/common-components/EnterpriseSSO.d.ts +29 -0
- package/dist/common-components/EnterpriseSSO.js +55 -0
- package/dist/common-components/EnterpriseSSO.js.map +1 -0
- package/dist/common-components/FormGroup.d.ts +60 -0
- package/dist/common-components/FormGroup.js +66 -0
- package/dist/common-components/FormGroup.js.map +1 -0
- package/dist/common-components/InstitutionLogistration.d.ts +34 -0
- package/dist/common-components/InstitutionLogistration.js +38 -0
- package/dist/common-components/InstitutionLogistration.js.map +1 -0
- package/dist/common-components/NotFoundPage.d.ts +2 -0
- package/dist/common-components/NotFoundPage.js +5 -0
- package/dist/common-components/NotFoundPage.js.map +1 -0
- package/dist/common-components/PasswordField.d.ts +39 -0
- package/dist/common-components/PasswordField.js +94 -0
- package/dist/common-components/PasswordField.js.map +1 -0
- package/dist/common-components/RedirectLogistration.d.ts +39 -0
- package/dist/common-components/RedirectLogistration.js +68 -0
- package/dist/common-components/RedirectLogistration.js.map +1 -0
- package/dist/common-components/RegisterFaIcons.d.ts +1 -0
- package/dist/common-components/RegisterFaIcons.js +6 -0
- package/dist/common-components/RegisterFaIcons.js.map +1 -0
- package/dist/common-components/SocialAuthProviders.d.ts +23 -0
- package/dist/common-components/SocialAuthProviders.js +42 -0
- package/dist/common-components/SocialAuthProviders.js.map +1 -0
- package/dist/common-components/ThirdPartyAuth.d.ts +42 -0
- package/dist/common-components/ThirdPartyAuth.js +56 -0
- package/dist/common-components/ThirdPartyAuth.js.map +1 -0
- package/dist/common-components/ThirdPartyAuthAlert.d.ts +15 -0
- package/dist/common-components/ThirdPartyAuthAlert.js +32 -0
- package/dist/common-components/ThirdPartyAuthAlert.js.map +1 -0
- package/dist/common-components/UnAuthOnlyRoute.d.ts +14 -0
- package/dist/common-components/UnAuthOnlyRoute.js +31 -0
- package/dist/common-components/UnAuthOnlyRoute.js.map +1 -0
- package/dist/common-components/data/actions.d.ts +26 -0
- package/{src → dist}/common-components/data/actions.js +8 -13
- package/dist/common-components/data/actions.js.map +1 -0
- package/dist/common-components/data/reducers.d.ts +62 -0
- package/dist/common-components/data/reducers.js +39 -0
- package/dist/common-components/data/reducers.js.map +1 -0
- package/dist/common-components/data/sagas.d.ts +12 -0
- package/dist/common-components/data/sagas.js +21 -0
- package/dist/common-components/data/sagas.js.map +1 -0
- package/dist/common-components/data/selectors.d.ts +98 -0
- package/dist/common-components/data/selectors.js +11 -0
- package/dist/common-components/data/selectors.js.map +1 -0
- package/dist/common-components/data/service.d.ts +5 -0
- package/dist/common-components/data/service.js +31 -0
- package/dist/common-components/data/service.js.map +1 -0
- package/dist/common-components/index.d.ts +13 -0
- package/{src/common-components/index.jsx → dist/common-components/index.js} +1 -0
- package/dist/common-components/index.js.map +1 -0
- package/dist/common-components/messages.d.ts +113 -0
- package/dist/common-components/messages.js +126 -0
- package/dist/common-components/messages.js.map +1 -0
- package/dist/constants.d.ts +1 -0
- package/{src/constants.ts → dist/constants.js} +1 -0
- package/dist/constants.js.map +1 -0
- package/dist/data/configureStore.d.ts +3 -0
- package/{src → dist}/data/configureStore.js +11 -20
- package/dist/data/configureStore.js.map +1 -0
- package/dist/data/constants.d.ts +24 -0
- package/{src → dist}/data/constants.js +4 -8
- package/dist/data/constants.js.map +1 -0
- package/dist/data/countries.d.ts +26 -0
- package/{src/data/countries.ts → dist/data/countries.js} +6 -9
- package/dist/data/countries.js.map +1 -0
- package/dist/data/oneTrust.d.ts +2 -0
- package/dist/data/oneTrust.js +3 -0
- package/dist/data/oneTrust.js.map +1 -0
- package/dist/data/reducers.d.ts +254 -0
- package/dist/data/reducers.js +17 -0
- package/dist/data/reducers.js.map +1 -0
- package/dist/data/sagas.d.ts +1 -0
- package/{src → dist}/data/sagas.js +9 -10
- package/dist/data/sagas.js.map +1 -0
- package/dist/data/utils/cookies.d.ts +1 -0
- package/dist/data/utils/cookies.js +12 -0
- package/dist/data/utils/cookies.js.map +1 -0
- package/dist/data/utils/dataUtils.d.ts +11 -0
- package/dist/data/utils/dataUtils.js +67 -0
- package/dist/data/utils/dataUtils.js.map +1 -0
- package/dist/data/utils/index.d.ts +3 -0
- package/dist/data/utils/index.js +4 -0
- package/dist/data/utils/index.js.map +1 -0
- package/dist/data/utils/reduxUtils.d.ts +15 -0
- package/dist/data/utils/reduxUtils.js +29 -0
- package/dist/data/utils/reduxUtils.js.map +1 -0
- package/dist/data/utils/useMobileResponsive.d.ts +7 -0
- package/dist/data/utils/useMobileResponsive.js +22 -0
- package/dist/data/utils/useMobileResponsive.js.map +1 -0
- package/dist/field-renderer/FieldRenderer.d.ts +34 -0
- package/dist/field-renderer/FieldRenderer.js +70 -0
- package/dist/field-renderer/FieldRenderer.js.map +1 -0
- package/dist/field-renderer/index.d.ts +1 -0
- package/{src/field-renderer/index.jsx → dist/field-renderer/index.js} +1 -0
- package/dist/field-renderer/index.js.map +1 -0
- package/dist/forgot-password/ForgotPasswordAlert.d.ts +16 -0
- package/dist/forgot-password/ForgotPasswordAlert.js +66 -0
- package/dist/forgot-password/ForgotPasswordAlert.js.map +1 -0
- package/dist/forgot-password/ForgotPasswordPage.d.ts +36 -0
- package/dist/forgot-password/ForgotPasswordPage.js +91 -0
- package/dist/forgot-password/ForgotPasswordPage.js.map +1 -0
- package/dist/forgot-password/data/actions.d.ts +30 -0
- package/{src → dist}/forgot-password/data/actions.js +10 -16
- package/dist/forgot-password/data/actions.js.map +1 -0
- package/dist/forgot-password/data/reducers.d.ts +13 -0
- package/dist/forgot-password/data/reducers.js +46 -0
- package/dist/forgot-password/data/reducers.js.map +1 -0
- package/dist/forgot-password/data/sagas.d.ts +4 -0
- package/dist/forgot-password/data/sagas.js +28 -0
- package/dist/forgot-password/data/sagas.js.map +1 -0
- package/dist/forgot-password/data/selectors.d.ts +23 -0
- package/dist/forgot-password/data/selectors.js +5 -0
- package/dist/forgot-password/data/selectors.js.map +1 -0
- package/dist/forgot-password/data/service.d.ts +1 -0
- package/dist/forgot-password/data/service.js +26 -0
- package/dist/forgot-password/data/service.js.map +1 -0
- package/dist/forgot-password/index.d.ts +5 -0
- package/{src → dist}/forgot-password/index.js +1 -0
- package/dist/forgot-password/index.js.map +1 -0
- package/dist/forgot-password/messages.d.ts +123 -0
- package/dist/forgot-password/messages.js +128 -0
- package/dist/forgot-password/messages.js.map +1 -0
- package/dist/i18n/index.d.ts +25 -0
- package/dist/i18n/index.js +26 -0
- package/dist/i18n/index.js.map +1 -0
- package/dist/index.js +4 -0
- package/dist/index.js.map +1 -0
- package/dist/login/AccountActivationMessage.d.ts +14 -0
- package/dist/login/AccountActivationMessage.js +49 -0
- package/dist/login/AccountActivationMessage.js.map +1 -0
- package/dist/login/ChangePasswordPrompt.d.ts +18 -0
- package/dist/login/ChangePasswordPrompt.js +45 -0
- package/dist/login/ChangePasswordPrompt.js.map +1 -0
- package/dist/login/LoginFailure.d.ts +25 -0
- package/dist/login/LoginFailure.js +109 -0
- package/dist/login/LoginFailure.js.map +1 -0
- package/dist/login/LoginPage.d.ts +10 -0
- package/dist/login/LoginPage.js +216 -0
- package/dist/login/LoginPage.js.map +1 -0
- package/dist/login/data/actions.d.ts +36 -0
- package/{src → dist}/login/data/actions.js +12 -19
- package/dist/login/data/actions.js.map +1 -0
- package/dist/login/data/constants.d.ts +17 -0
- package/{src → dist}/login/data/constants.js +4 -4
- package/dist/login/data/constants.js.map +1 -0
- package/dist/login/data/reducers.d.ts +82 -0
- package/dist/login/data/reducers.js +44 -0
- package/dist/login/data/reducers.js.map +1 -0
- package/dist/login/data/sagas.d.ts +10 -0
- package/dist/login/data/sagas.js +34 -0
- package/dist/login/data/sagas.js.map +1 -0
- package/dist/login/data/service.d.ts +4 -0
- package/dist/login/data/service.js +32 -0
- package/dist/login/data/service.js.map +1 -0
- package/dist/login/index.d.ts +4 -0
- package/{src → dist}/login/index.js +1 -1
- package/dist/login/index.js.map +1 -0
- package/dist/login/messages.d.ts +198 -0
- package/dist/login/messages.js +210 -0
- package/dist/login/messages.js.map +1 -0
- package/dist/logistration/Logistration.d.ts +32 -0
- package/dist/logistration/Logistration.js +106 -0
- package/dist/logistration/Logistration.js.map +1 -0
- package/dist/progressive-profiling/ProgressiveProfiling.d.ts +46 -0
- package/dist/progressive-profiling/ProgressiveProfiling.js +167 -0
- package/dist/progressive-profiling/ProgressiveProfiling.js.map +1 -0
- package/dist/progressive-profiling/ProgressiveProfilingPageModal.d.ts +13 -0
- package/dist/progressive-profiling/ProgressiveProfilingPageModal.js +24 -0
- package/dist/progressive-profiling/ProgressiveProfilingPageModal.js.map +1 -0
- package/dist/progressive-profiling/data/actions.d.ts +19 -0
- package/{src → dist}/progressive-profiling/data/actions.js +6 -10
- package/dist/progressive-profiling/data/actions.js.map +1 -0
- package/dist/progressive-profiling/data/reducers.d.ts +22 -0
- package/dist/progressive-profiling/data/reducers.js +23 -0
- package/dist/progressive-profiling/data/reducers.js.map +1 -0
- package/dist/progressive-profiling/data/sagas.d.ts +4 -0
- package/dist/progressive-profiling/data/sagas.js +17 -0
- package/dist/progressive-profiling/data/sagas.js.map +1 -0
- package/dist/progressive-profiling/data/selectors.d.ts +39 -0
- package/{src → dist}/progressive-profiling/data/selectors.js +4 -9
- package/dist/progressive-profiling/data/selectors.js.map +1 -0
- package/dist/progressive-profiling/data/service.d.ts +1 -0
- package/dist/progressive-profiling/data/service.js +23 -0
- package/dist/progressive-profiling/data/service.js.map +1 -0
- package/dist/progressive-profiling/index.d.ts +4 -0
- package/{src → dist}/progressive-profiling/index.js +1 -1
- package/dist/progressive-profiling/index.js.map +1 -0
- package/dist/progressive-profiling/messages.d.ts +53 -0
- package/dist/progressive-profiling/messages.js +57 -0
- package/dist/progressive-profiling/messages.js.map +1 -0
- package/dist/register/RegistrationFields/CountryField/CountryField.d.ts +38 -0
- package/dist/register/RegistrationFields/CountryField/CountryField.js +95 -0
- package/dist/register/RegistrationFields/CountryField/CountryField.js.map +1 -0
- package/dist/register/RegistrationFields/CountryField/validator.d.ts +8 -0
- package/dist/register/RegistrationFields/CountryField/validator.js +29 -0
- package/dist/register/RegistrationFields/CountryField/validator.js.map +1 -0
- package/dist/register/RegistrationFields/EmailField/EmailField.d.ts +30 -0
- package/dist/register/RegistrationFields/EmailField/EmailField.js +80 -0
- package/dist/register/RegistrationFields/EmailField/EmailField.js.map +1 -0
- package/dist/register/RegistrationFields/EmailField/constants.d.ts +3 -0
- package/dist/register/RegistrationFields/EmailField/constants.js +130 -0
- package/dist/register/RegistrationFields/EmailField/constants.js.map +1 -0
- package/dist/register/RegistrationFields/EmailField/validator.d.ts +17 -0
- package/dist/register/RegistrationFields/EmailField/validator.js +107 -0
- package/dist/register/RegistrationFields/EmailField/validator.js.map +1 -0
- package/dist/register/RegistrationFields/HonorCodeField/HonorCode.d.ts +21 -0
- package/dist/register/RegistrationFields/HonorCodeField/HonorCode.js +40 -0
- package/dist/register/RegistrationFields/HonorCodeField/HonorCode.js.map +1 -0
- package/dist/register/RegistrationFields/NameField/NameField.d.ts +29 -0
- package/dist/register/RegistrationFields/NameField/NameField.js +52 -0
- package/dist/register/RegistrationFields/NameField/NameField.js.map +1 -0
- package/dist/register/RegistrationFields/NameField/validator.d.ts +5 -0
- package/{src → dist}/register/RegistrationFields/NameField/validator.js +9 -12
- package/dist/register/RegistrationFields/NameField/validator.js.map +1 -0
- package/dist/register/RegistrationFields/TermsOfServiceField/TermsOfService.d.ts +16 -0
- package/dist/register/RegistrationFields/TermsOfServiceField/TermsOfService.js +24 -0
- package/dist/register/RegistrationFields/TermsOfServiceField/TermsOfService.js.map +1 -0
- package/dist/register/RegistrationFields/UsernameField/UsernameField.d.ts +31 -0
- package/dist/register/RegistrationFields/UsernameField/UsernameField.js +113 -0
- package/dist/register/RegistrationFields/UsernameField/UsernameField.js.map +1 -0
- package/dist/register/RegistrationFields/UsernameField/validator.d.ts +4 -0
- package/dist/register/RegistrationFields/UsernameField/validator.js +15 -0
- package/dist/register/RegistrationFields/UsernameField/validator.js.map +1 -0
- package/dist/register/RegistrationFields/index.d.ts +6 -0
- package/{src → dist}/register/RegistrationFields/index.js +1 -0
- package/dist/register/RegistrationFields/index.js.map +1 -0
- package/dist/register/RegistrationPage.d.ts +18 -0
- package/dist/register/RegistrationPage.js +216 -0
- package/dist/register/RegistrationPage.js.map +1 -0
- package/dist/register/components/ConfigurableRegistrationForm.d.ts +37 -0
- package/dist/register/components/ConfigurableRegistrationForm.js +145 -0
- package/dist/register/components/ConfigurableRegistrationForm.js.map +1 -0
- package/dist/register/components/RegistrationFailure.d.ts +19 -0
- package/dist/register/components/RegistrationFailure.js +57 -0
- package/dist/register/components/RegistrationFailure.js.map +1 -0
- package/dist/register/data/actions.d.ts +80 -0
- package/{src → dist}/register/data/actions.js +26 -42
- package/dist/register/data/actions.js.map +1 -0
- package/dist/register/data/constants.d.ts +10 -0
- package/{src → dist}/register/data/constants.js +4 -4
- package/dist/register/data/constants.js.map +1 -0
- package/dist/register/data/reducers.d.ts +237 -0
- package/dist/register/data/reducers.js +86 -0
- package/dist/register/data/reducers.js.map +1 -0
- package/dist/register/data/sagas.d.ts +19 -0
- package/dist/register/data/sagas.js +45 -0
- package/dist/register/data/sagas.js.map +1 -0
- package/dist/register/data/selectors.d.ts +26 -0
- package/dist/register/data/selectors.js +25 -0
- package/dist/register/data/selectors.js.map +1 -0
- package/dist/register/data/service.d.ts +8 -0
- package/dist/register/data/service.js +46 -0
- package/dist/register/data/service.js.map +1 -0
- package/dist/register/data/utils.d.ts +6 -0
- package/dist/register/data/utils.js +128 -0
- package/dist/register/data/utils.js.map +1 -0
- package/dist/register/index.d.ts +3 -0
- package/{src → dist}/register/index.js +1 -0
- package/dist/register/index.js.map +1 -0
- package/dist/register/messages.d.ts +193 -0
- package/dist/register/messages.js +205 -0
- package/dist/register/messages.js.map +1 -0
- package/dist/reset-password/ResetPasswordFailure.d.ts +15 -0
- package/dist/reset-password/ResetPasswordFailure.js +44 -0
- package/dist/reset-password/ResetPasswordFailure.js.map +1 -0
- package/dist/reset-password/ResetPasswordPage.d.ts +32 -0
- package/dist/reset-password/ResetPasswordPage.js +150 -0
- package/dist/reset-password/ResetPasswordPage.js.map +1 -0
- package/dist/reset-password/ResetPasswordSuccess.d.ts +2 -0
- package/dist/reset-password/ResetPasswordSuccess.js +10 -0
- package/dist/reset-password/ResetPasswordSuccess.js.map +1 -0
- package/dist/reset-password/data/actions.d.ts +56 -0
- package/{src → dist}/reset-password/data/actions.js +17 -26
- package/dist/reset-password/data/actions.js.map +1 -0
- package/dist/reset-password/data/constants.d.ts +13 -0
- package/{src → dist}/reset-password/data/constants.js +6 -7
- package/dist/reset-password/data/constants.js.map +1 -0
- package/dist/reset-password/data/reducers.d.ts +19 -0
- package/dist/reset-password/data/reducers.js +25 -0
- package/dist/reset-password/data/reducers.js.map +1 -0
- package/dist/reset-password/data/sagas.d.ts +7 -0
- package/dist/reset-password/data/sagas.js +63 -0
- package/dist/reset-password/data/sagas.js.map +1 -0
- package/dist/reset-password/data/selectors.d.ts +23 -0
- package/dist/reset-password/data/selectors.js +5 -0
- package/dist/reset-password/data/selectors.js.map +1 -0
- package/dist/reset-password/data/service.d.ts +3 -0
- package/dist/reset-password/data/service.js +62 -0
- package/dist/reset-password/data/service.js.map +1 -0
- package/dist/reset-password/index.d.ts +5 -0
- package/{src → dist}/reset-password/index.js +1 -0
- package/dist/reset-password/index.js.map +1 -0
- package/dist/reset-password/messages.d.ts +83 -0
- package/dist/reset-password/messages.js +87 -0
- package/dist/reset-password/messages.js.map +1 -0
- package/dist/routes.d.ts +18 -0
- package/dist/routes.js +75 -0
- package/dist/routes.js.map +1 -0
- package/{src → dist}/sass/_base_component.scss +57 -54
- package/{src → dist}/sass/_progressive_profiling_page.scss +1 -3
- package/{src → dist}/sass/_registration.scss +7 -8
- package/{src → dist}/sass/_style.scss +40 -43
- package/package.json +17 -6
- package/src/__mocks__/file.js +0 -1
- package/src/__mocks__/svg.js +0 -1
- package/src/app.scss +0 -6
- package/src/app.ts +0 -43
- package/src/base-container/components/default-layout/DefaultLayout.test.jsx +0 -48
- package/src/base-container/components/default-layout/LargeLayout.jsx +0 -42
- package/src/base-container/components/default-layout/MediumLayout.jsx +0 -49
- package/src/base-container/components/default-layout/SmallLayout.jsx +0 -37
- package/src/base-container/components/default-layout/messages.js +0 -16
- package/src/base-container/components/image-layout/ExtraSmallLayout.jsx +0 -31
- package/src/base-container/components/image-layout/LargeLayout.jsx +0 -32
- package/src/base-container/components/image-layout/MediumLayout.jsx +0 -32
- package/src/base-container/components/image-layout/SmallLayout.jsx +0 -31
- package/src/base-container/components/image-layout/messages.js +0 -16
- package/src/base-container/components/welcome-page-layout/LargeLayout.jsx +0 -46
- package/src/base-container/components/welcome-page-layout/MediumLayout.jsx +0 -49
- package/src/base-container/components/welcome-page-layout/SmallLayout.jsx +0 -38
- package/src/base-container/components/welcome-page-layout/messages.js +0 -21
- package/src/base-container/index.jsx +0 -70
- package/src/base-container/tests/BaseContainer.test.jsx +0 -44
- package/src/common-components/EnterpriseSSO.jsx +0 -110
- package/src/common-components/FormGroup.jsx +0 -106
- package/src/common-components/InstitutionLogistration.jsx +0 -102
- package/src/common-components/NotFoundPage.jsx +0 -15
- package/src/common-components/PasswordField.jsx +0 -175
- package/src/common-components/RedirectLogistration.jsx +0 -94
- package/src/common-components/RegisterFaIcons.jsx +0 -8
- package/src/common-components/SocialAuthProviders.jsx +0 -75
- package/src/common-components/ThirdPartyAuth.jsx +0 -123
- package/src/common-components/ThirdPartyAuthAlert.jsx +0 -49
- package/src/common-components/UnAuthOnlyRoute.jsx +0 -41
- package/src/common-components/data/reducers.js +0 -63
- package/src/common-components/data/sagas.js +0 -32
- package/src/common-components/data/selectors.js +0 -28
- package/src/common-components/data/service.js +0 -23
- package/src/common-components/data/tests/reducer.test.js +0 -82
- package/src/common-components/data/tests/sagas.test.js +0 -71
- package/src/common-components/messages.jsx +0 -127
- package/src/common-components/tests/EmbeddedRegistrationRoute.test.jsx +0 -76
- package/src/common-components/tests/FormField.test.jsx +0 -289
- package/src/common-components/tests/SocialAuthProviders.test.jsx +0 -75
- package/src/common-components/tests/ThirdPartyAuthAlert.test.jsx +0 -39
- package/src/common-components/tests/UnAuthOnlyRoute.test.jsx +0 -73
- package/src/common-components/tests/__snapshots__/SocialAuthProviders.test.jsx.snap +0 -156
- package/src/common-components/tests/__snapshots__/ThirdPartyAuthAlert.test.jsx.snap +0 -53
- package/src/data/oneTrust.js +0 -3
- package/src/data/reducers.js +0 -36
- package/src/data/tests/cookies.test.js +0 -42
- package/src/data/tests/dataUtils.test.js +0 -19
- package/src/data/tests/reduxUtils.test.js +0 -14
- package/src/data/utils/cookies.js +0 -12
- package/src/data/utils/dataUtils.js +0 -81
- package/src/data/utils/index.js +0 -11
- package/src/data/utils/reduxUtils.js +0 -34
- package/src/data/utils/useMobileResponsive.js +0 -24
- package/src/field-renderer/FieldRenderer.jsx +0 -156
- package/src/field-renderer/tests/FieldRenderer.test.jsx +0 -201
- package/src/forgot-password/ForgotPasswordAlert.jsx +0 -97
- package/src/forgot-password/ForgotPasswordPage.jsx +0 -193
- package/src/forgot-password/data/reducers.js +0 -58
- package/src/forgot-password/data/sagas.js +0 -35
- package/src/forgot-password/data/selectors.js +0 -10
- package/src/forgot-password/data/service.js +0 -21
- package/src/forgot-password/data/tests/reducers.test.js +0 -34
- package/src/forgot-password/data/tests/sagas.test.js +0 -67
- package/src/forgot-password/messages.js +0 -128
- package/src/forgot-password/tests/ForgotPasswordPage.test.jsx +0 -269
- package/src/i18n/index.js +0 -25
- package/src/login/AccountActivationMessage.jsx +0 -78
- package/src/login/ChangePasswordPrompt.jsx +0 -91
- package/src/login/LoginFailure.jsx +0 -231
- package/src/login/LoginPage.jsx +0 -368
- package/src/login/data/reducers.js +0 -76
- package/src/login/data/sagas.js +0 -45
- package/src/login/data/service.js +0 -27
- package/src/login/data/tests/reducers.test.js +0 -155
- package/src/login/data/tests/sagas.test.js +0 -110
- package/src/login/messages.jsx +0 -211
- package/src/login/tests/AccountActivationMessage.test.jsx +0 -122
- package/src/login/tests/ChangePasswordPrompt.test.jsx +0 -75
- package/src/login/tests/LoginFailure.test.jsx +0 -323
- package/src/login/tests/LoginPage.test.jsx +0 -839
- package/src/logistration/Logistration.jsx +0 -189
- package/src/logistration/Logistration.test.jsx +0 -275
- package/src/progressive-profiling/ProgressiveProfiling.jsx +0 -313
- package/src/progressive-profiling/ProgressiveProfilingPageModal.jsx +0 -56
- package/src/progressive-profiling/data/reducers.js +0 -38
- package/src/progressive-profiling/data/sagas.js +0 -24
- package/src/progressive-profiling/data/service.js +0 -17
- package/src/progressive-profiling/messages.jsx +0 -57
- package/src/progressive-profiling/tests/ProgressiveProfiling.test.jsx +0 -322
- package/src/register/RegistrationFields/CountryField/CountryField.jsx +0 -164
- package/src/register/RegistrationFields/CountryField/CountryField.test.jsx +0 -204
- package/src/register/RegistrationFields/CountryField/validator.js +0 -32
- package/src/register/RegistrationFields/EmailField/EmailField.jsx +0 -140
- package/src/register/RegistrationFields/EmailField/EmailField.test.jsx +0 -236
- package/src/register/RegistrationFields/EmailField/constants.js +0 -131
- package/src/register/RegistrationFields/EmailField/validator.js +0 -126
- package/src/register/RegistrationFields/EmailField/validator.test.js +0 -39
- package/src/register/RegistrationFields/HonorCodeField/HonorCode.jsx +0 -104
- package/src/register/RegistrationFields/HonorCodeField/HonorCode.test.jsx +0 -70
- package/src/register/RegistrationFields/NameField/NameField.jsx +0 -68
- package/src/register/RegistrationFields/NameField/NameField.test.jsx +0 -146
- package/src/register/RegistrationFields/TermsOfServiceField/TermsOfService.jsx +0 -58
- package/src/register/RegistrationFields/TermsOfServiceField/TermsOfService.test.jsx +0 -55
- package/src/register/RegistrationFields/UsernameField/UsernameField.jsx +0 -162
- package/src/register/RegistrationFields/UsernameField/UsernameField.test.jsx +0 -319
- package/src/register/RegistrationFields/UsernameField/validator.js +0 -16
- package/src/register/RegistrationPage.jsx +0 -428
- package/src/register/RegistrationPage.test.jsx +0 -854
- package/src/register/components/ConfigurableRegistrationForm.jsx +0 -244
- package/src/register/components/RegistrationFailure.jsx +0 -80
- package/src/register/components/tests/ConfigurableRegistrationForm.test.jsx +0 -401
- package/src/register/components/tests/RegistrationFailure.test.jsx +0 -212
- package/src/register/components/tests/ThirdPartyAuth.test.jsx +0 -439
- package/src/register/data/reducers.js +0 -140
- package/src/register/data/sagas.js +0 -58
- package/src/register/data/selectors.js +0 -34
- package/src/register/data/service.js +0 -45
- package/src/register/data/tests/reducers.test.js +0 -277
- package/src/register/data/tests/sagas.test.js +0 -239
- package/src/register/data/tests/utils.test.js +0 -98
- package/src/register/data/utils.js +0 -153
- package/src/register/messages.jsx +0 -206
- package/src/reset-password/ResetPasswordFailure.jsx +0 -55
- package/src/reset-password/ResetPasswordPage.jsx +0 -224
- package/src/reset-password/ResetPasswordSuccess.jsx +0 -19
- package/src/reset-password/data/reducers.js +0 -44
- package/src/reset-password/data/sagas.js +0 -67
- package/src/reset-password/data/selectors.js +0 -10
- package/src/reset-password/data/service.js +0 -61
- package/src/reset-password/data/tests/sagas.test.js +0 -185
- package/src/reset-password/messages.js +0 -88
- package/src/reset-password/tests/ResetPasswordPage.test.jsx +0 -241
- package/src/routes.jsx +0 -79
- package/src/setupTest.js +0 -68
- /package/{src → dist}/base-container/components/image-layout/index.scss +0 -0
- /package/{src/index.ts → dist/index.d.ts} +0 -0
- /package/{src → dist}/sass/_forgot_password.scss +0 -0
- /package/{src → dist}/sass/_login_page.scss +0 -0
- /package/{src → dist}/sass/_reset_password.scss +0 -0
|
@@ -1,31 +0,0 @@
|
|
|
1
|
-
import { useAppConfig, getSiteConfig, useIntl } from '@openedx/frontend-base';
|
|
2
|
-
import { Hyperlink, Image } from '@openedx/paragon';
|
|
3
|
-
|
|
4
|
-
import messages from './messages';
|
|
5
|
-
|
|
6
|
-
const SmallLayout = () => {
|
|
7
|
-
const { formatMessage } = useIntl();
|
|
8
|
-
|
|
9
|
-
return (
|
|
10
|
-
<span
|
|
11
|
-
className="w-100 bg-primary-500 banner__image small-layout"
|
|
12
|
-
style={{ backgroundImage: `url(${useAppConfig().BANNER_IMAGE_SMALL})` }}
|
|
13
|
-
>
|
|
14
|
-
<Hyperlink destination={useAppConfig().MARKETING_SITE_BASE_URL}>
|
|
15
|
-
<Image className="company-logo" alt={getSiteConfig().siteName} src={useAppConfig().LOGO_WHITE_URL} />
|
|
16
|
-
</Hyperlink>
|
|
17
|
-
<div className="ml-5 mr-1 pb-3.5 pt-3.5">
|
|
18
|
-
<h1 className="display-2">
|
|
19
|
-
<span className="text-light-500">
|
|
20
|
-
{formatMessage(messages['your.career.turning.point'])}{' '}
|
|
21
|
-
</span>
|
|
22
|
-
<span className="text-warning-300">
|
|
23
|
-
{formatMessage(messages['is.here'])}
|
|
24
|
-
</span>
|
|
25
|
-
</h1>
|
|
26
|
-
</div>
|
|
27
|
-
</span>
|
|
28
|
-
);
|
|
29
|
-
};
|
|
30
|
-
|
|
31
|
-
export default SmallLayout;
|
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
import { defineMessages } from '@openedx/frontend-base';
|
|
2
|
-
|
|
3
|
-
const messages = defineMessages({
|
|
4
|
-
'your.career.turning.point': {
|
|
5
|
-
id: 'your.career.turning.point',
|
|
6
|
-
defaultMessage: 'Your career turning point',
|
|
7
|
-
description: 'Part of the heading "Your career turning point is here." shown on Authn MFE',
|
|
8
|
-
},
|
|
9
|
-
'is.here': {
|
|
10
|
-
id: 'is.here',
|
|
11
|
-
defaultMessage: 'is here.',
|
|
12
|
-
description: 'Part of the heading "Your career turning point is here." shown on Authn MFE',
|
|
13
|
-
},
|
|
14
|
-
});
|
|
15
|
-
|
|
16
|
-
export default messages;
|
|
@@ -1,46 +0,0 @@
|
|
|
1
|
-
import { useAppConfig, getSiteConfig, useIntl } from '@openedx/frontend-base';
|
|
2
|
-
import { Hyperlink, Image } from '@openedx/paragon';
|
|
3
|
-
import PropTypes from 'prop-types';
|
|
4
|
-
|
|
5
|
-
import messages from './messages';
|
|
6
|
-
|
|
7
|
-
const LargeLayout = ({ fullName }) => {
|
|
8
|
-
const { formatMessage } = useIntl();
|
|
9
|
-
|
|
10
|
-
return (
|
|
11
|
-
<div className="w-50 d-flex">
|
|
12
|
-
<div className="col-md-10 bg-light-200 p-0">
|
|
13
|
-
<Hyperlink destination={useAppConfig().MARKETING_SITE_BASE_URL}>
|
|
14
|
-
<Image className="logo position-absolute" alt={getSiteConfig().siteName} src={useAppConfig().LOGO_URL} />
|
|
15
|
-
</Hyperlink>
|
|
16
|
-
<div className="min-vh-100 d-flex align-items-center">
|
|
17
|
-
<div className="large-screen-left-container mr-n4.5 large-yellow-line mt-5" />
|
|
18
|
-
<div>
|
|
19
|
-
<h1 className="welcome-to-platform data-hj-suppress">
|
|
20
|
-
{formatMessage(messages['welcome.to.platform'], { siteName: getSiteConfig().siteName, fullName })}
|
|
21
|
-
</h1>
|
|
22
|
-
<h2 className="complete-your-profile">
|
|
23
|
-
{formatMessage(messages['complete.your.profile.1'])}
|
|
24
|
-
<div className="text-accent-a">
|
|
25
|
-
{formatMessage(messages['complete.your.profile.2'])}
|
|
26
|
-
</div>
|
|
27
|
-
</h2>
|
|
28
|
-
</div>
|
|
29
|
-
</div>
|
|
30
|
-
</div>
|
|
31
|
-
<div className="col-md-2 bg-white p-0">
|
|
32
|
-
<svg className="m1-n1 w-100 h-100 large-screen-svg-light" preserveAspectRatio="xMaxYMin meet">
|
|
33
|
-
<g transform="skewX(171.6)">
|
|
34
|
-
<rect x="0" y="0" height="100%" width="100%" />
|
|
35
|
-
</g>
|
|
36
|
-
</svg>
|
|
37
|
-
</div>
|
|
38
|
-
</div>
|
|
39
|
-
);
|
|
40
|
-
};
|
|
41
|
-
|
|
42
|
-
LargeLayout.propTypes = {
|
|
43
|
-
fullName: PropTypes.string.isRequired,
|
|
44
|
-
};
|
|
45
|
-
|
|
46
|
-
export default LargeLayout;
|
|
@@ -1,49 +0,0 @@
|
|
|
1
|
-
import { useAppConfig, getSiteConfig, useIntl } from '@openedx/frontend-base';
|
|
2
|
-
import { Hyperlink, Image } from '@openedx/paragon';
|
|
3
|
-
import PropTypes from 'prop-types';
|
|
4
|
-
|
|
5
|
-
import messages from './messages';
|
|
6
|
-
|
|
7
|
-
const MediumLayout = ({ fullName }) => {
|
|
8
|
-
const { formatMessage } = useIntl();
|
|
9
|
-
|
|
10
|
-
return (
|
|
11
|
-
<>
|
|
12
|
-
<div className="w-100 medium-screen-top-stripe" />
|
|
13
|
-
<div className="w-100 p-0 mb-3 d-flex">
|
|
14
|
-
<div className="col-md-10 bg-light-200">
|
|
15
|
-
<Hyperlink destination={useAppConfig().MARKETING_SITE_BASE_URL}>
|
|
16
|
-
<Image className="logo" alt={getSiteConfig().siteName} src={useAppConfig().LOGO_URL} />
|
|
17
|
-
</Hyperlink>
|
|
18
|
-
<div className="d-flex align-items-center justify-content-center mb-4 ml-5">
|
|
19
|
-
<div className="medium-yellow-line mt-5 mr-n2" />
|
|
20
|
-
<div>
|
|
21
|
-
<h1 className="h3 data-hj-suppress mw-320">
|
|
22
|
-
{formatMessage(messages['welcome.to.platform'], { siteName: getSiteConfig().siteName, fullName })}
|
|
23
|
-
</h1>
|
|
24
|
-
<h2 className="display-1">
|
|
25
|
-
{formatMessage(messages['complete.your.profile.1'])}
|
|
26
|
-
<div className="text-accent-a">
|
|
27
|
-
{formatMessage(messages['complete.your.profile.2'])}
|
|
28
|
-
</div>
|
|
29
|
-
</h2>
|
|
30
|
-
</div>
|
|
31
|
-
</div>
|
|
32
|
-
</div>
|
|
33
|
-
<div className="col-md-2 bg-white p-0">
|
|
34
|
-
<svg className="w-100 h-100 medium-screen-svg-light" preserveAspectRatio="xMaxYMin meet">
|
|
35
|
-
<g transform="skewX(168)">
|
|
36
|
-
<rect x="0" y="0" height="100%" width="100%" />
|
|
37
|
-
</g>
|
|
38
|
-
</svg>
|
|
39
|
-
</div>
|
|
40
|
-
</div>
|
|
41
|
-
</>
|
|
42
|
-
);
|
|
43
|
-
};
|
|
44
|
-
|
|
45
|
-
MediumLayout.propTypes = {
|
|
46
|
-
fullName: PropTypes.string.isRequired,
|
|
47
|
-
};
|
|
48
|
-
|
|
49
|
-
export default MediumLayout;
|
|
@@ -1,38 +0,0 @@
|
|
|
1
|
-
import { useAppConfig, getSiteConfig, useIntl } from '@openedx/frontend-base';
|
|
2
|
-
import { Hyperlink, Image } from '@openedx/paragon';
|
|
3
|
-
import PropTypes from 'prop-types';
|
|
4
|
-
|
|
5
|
-
import messages from './messages';
|
|
6
|
-
|
|
7
|
-
const SmallLayout = ({ fullName }) => {
|
|
8
|
-
const { formatMessage } = useIntl();
|
|
9
|
-
|
|
10
|
-
return (
|
|
11
|
-
<div className="min-vw-100 bg-light-200">
|
|
12
|
-
<div className="col-md-12 small-screen-top-stripe" />
|
|
13
|
-
<Hyperlink destination={useAppConfig().MARKETING_SITE_BASE_URL}>
|
|
14
|
-
<Image className="logo-small" alt={getSiteConfig().siteName} src={useAppConfig().LOGO_URL} />
|
|
15
|
-
</Hyperlink>
|
|
16
|
-
<div className="d-flex align-items-center m-3.5">
|
|
17
|
-
<div className="small-yellow-line mt-4.5" />
|
|
18
|
-
<div>
|
|
19
|
-
<h1 className="h5 data-hj-suppress">
|
|
20
|
-
{formatMessage(messages['welcome.to.platform'], { siteName: getSiteConfig().siteName, fullName })}
|
|
21
|
-
</h1>
|
|
22
|
-
<h2 className="h1">
|
|
23
|
-
{formatMessage(messages['complete.your.profile.1'])}
|
|
24
|
-
<div className="text-accent-a">
|
|
25
|
-
{formatMessage(messages['complete.your.profile.2'])}
|
|
26
|
-
</div>
|
|
27
|
-
</h2>
|
|
28
|
-
</div>
|
|
29
|
-
</div>
|
|
30
|
-
</div>
|
|
31
|
-
);
|
|
32
|
-
};
|
|
33
|
-
|
|
34
|
-
SmallLayout.propTypes = {
|
|
35
|
-
fullName: PropTypes.string.isRequired,
|
|
36
|
-
};
|
|
37
|
-
|
|
38
|
-
export default SmallLayout;
|
|
@@ -1,21 +0,0 @@
|
|
|
1
|
-
import { defineMessages } from '@openedx/frontend-base';
|
|
2
|
-
|
|
3
|
-
const messages = defineMessages({
|
|
4
|
-
'welcome.to.platform': {
|
|
5
|
-
id: 'welcome.to.platform',
|
|
6
|
-
defaultMessage: 'Welcome to {siteName}, {fullName}!',
|
|
7
|
-
description: 'Welcome message that appears on progressive profile page',
|
|
8
|
-
},
|
|
9
|
-
'complete.your.profile.1': {
|
|
10
|
-
id: 'complete.your.profile.1',
|
|
11
|
-
defaultMessage: 'Complete',
|
|
12
|
-
description: 'part of text "complete your profile"',
|
|
13
|
-
},
|
|
14
|
-
'complete.your.profile.2': {
|
|
15
|
-
id: 'complete.your.profile.2',
|
|
16
|
-
defaultMessage: 'your profile',
|
|
17
|
-
description: 'part of text "complete your profile"',
|
|
18
|
-
},
|
|
19
|
-
});
|
|
20
|
-
|
|
21
|
-
export default messages;
|
|
@@ -1,70 +0,0 @@
|
|
|
1
|
-
import { useAppConfig } from '@openedx/frontend-base';
|
|
2
|
-
import { breakpoints } from '@openedx/paragon';
|
|
3
|
-
import classNames from 'classnames';
|
|
4
|
-
import PropTypes from 'prop-types';
|
|
5
|
-
import MediaQuery from 'react-responsive';
|
|
6
|
-
|
|
7
|
-
import { DefaultLargeLayout, DefaultMediumLayout, DefaultSmallLayout } from './components/default-layout';
|
|
8
|
-
import {
|
|
9
|
-
ImageExtraSmallLayout, ImageLargeLayout, ImageMediumLayout, ImageSmallLayout,
|
|
10
|
-
} from './components/image-layout';
|
|
11
|
-
import { AuthLargeLayout, AuthMediumLayout, AuthSmallLayout } from './components/welcome-page-layout';
|
|
12
|
-
|
|
13
|
-
const BaseContainer = ({ children, showWelcomeBanner, fullName }) => {
|
|
14
|
-
const enableImageLayout = useAppConfig().ENABLE_IMAGE_LAYOUT;
|
|
15
|
-
|
|
16
|
-
if (enableImageLayout) {
|
|
17
|
-
return (
|
|
18
|
-
<div className="layout">
|
|
19
|
-
<MediaQuery maxWidth={breakpoints.extraSmall.maxWidth - 1}>
|
|
20
|
-
{showWelcomeBanner ? <AuthSmallLayout fullName={fullName} /> : <ImageExtraSmallLayout />}
|
|
21
|
-
</MediaQuery>
|
|
22
|
-
<MediaQuery minWidth={breakpoints.small.minWidth} maxWidth={breakpoints.small.maxWidth - 1}>
|
|
23
|
-
{showWelcomeBanner ? <AuthSmallLayout fullName={fullName} /> : <ImageSmallLayout />}
|
|
24
|
-
</MediaQuery>
|
|
25
|
-
<MediaQuery minWidth={breakpoints.medium.minWidth} maxWidth={breakpoints.large.maxWidth - 1}>
|
|
26
|
-
{showWelcomeBanner ? <AuthMediumLayout fullName={fullName} /> : <ImageMediumLayout />}
|
|
27
|
-
</MediaQuery>
|
|
28
|
-
<MediaQuery minWidth={breakpoints.extraLarge.minWidth}>
|
|
29
|
-
{showWelcomeBanner ? <AuthLargeLayout fullName={fullName} /> : <ImageLargeLayout />}
|
|
30
|
-
</MediaQuery>
|
|
31
|
-
<div className={classNames('content', { 'align-items-center mt-0': showWelcomeBanner })}>
|
|
32
|
-
{children}
|
|
33
|
-
</div>
|
|
34
|
-
</div>
|
|
35
|
-
);
|
|
36
|
-
}
|
|
37
|
-
|
|
38
|
-
return (
|
|
39
|
-
<>
|
|
40
|
-
<div className="col-md-12 extra-large-screen-top-stripe" />
|
|
41
|
-
<div className="layout">
|
|
42
|
-
<MediaQuery maxWidth={breakpoints.small.maxWidth - 1}>
|
|
43
|
-
{showWelcomeBanner ? <AuthSmallLayout fullName={fullName} /> : <DefaultSmallLayout />}
|
|
44
|
-
</MediaQuery>
|
|
45
|
-
<MediaQuery minWidth={breakpoints.medium.minWidth} maxWidth={breakpoints.large.maxWidth - 1}>
|
|
46
|
-
{showWelcomeBanner ? <AuthMediumLayout fullName={fullName} /> : <DefaultMediumLayout />}
|
|
47
|
-
</MediaQuery>
|
|
48
|
-
<MediaQuery minWidth={breakpoints.extraLarge.minWidth}>
|
|
49
|
-
{showWelcomeBanner ? <AuthLargeLayout fullName={fullName} /> : <DefaultLargeLayout />}
|
|
50
|
-
</MediaQuery>
|
|
51
|
-
<div className={classNames('content', { 'align-items-center mt-0': showWelcomeBanner })}>
|
|
52
|
-
{children}
|
|
53
|
-
</div>
|
|
54
|
-
</div>
|
|
55
|
-
</>
|
|
56
|
-
);
|
|
57
|
-
};
|
|
58
|
-
|
|
59
|
-
BaseContainer.defaultProps = {
|
|
60
|
-
showWelcomeBanner: false,
|
|
61
|
-
fullName: null,
|
|
62
|
-
};
|
|
63
|
-
|
|
64
|
-
BaseContainer.propTypes = {
|
|
65
|
-
children: PropTypes.node.isRequired,
|
|
66
|
-
showWelcomeBanner: PropTypes.bool,
|
|
67
|
-
fullName: PropTypes.string,
|
|
68
|
-
};
|
|
69
|
-
|
|
70
|
-
export default BaseContainer;
|
|
@@ -1,44 +0,0 @@
|
|
|
1
|
-
import { IntlProvider, mergeAppConfig } from '@openedx/frontend-base';
|
|
2
|
-
import { render } from '@testing-library/react';
|
|
3
|
-
import { Context as ResponsiveContext } from 'react-responsive';
|
|
4
|
-
|
|
5
|
-
import BaseContainer from '../index';
|
|
6
|
-
import { appId } from '../../constants';
|
|
7
|
-
|
|
8
|
-
const LargeScreen = {
|
|
9
|
-
wrappingComponent: ResponsiveContext.Provider,
|
|
10
|
-
wrappingComponentProps: { value: { width: 1200 } },
|
|
11
|
-
};
|
|
12
|
-
|
|
13
|
-
describe('Base component tests', () => {
|
|
14
|
-
it('should show default layout', () => {
|
|
15
|
-
const { container } = render(
|
|
16
|
-
<IntlProvider locale="en">
|
|
17
|
-
<BaseContainer>
|
|
18
|
-
<div>Test Content</div>
|
|
19
|
-
</BaseContainer>
|
|
20
|
-
</IntlProvider>,
|
|
21
|
-
LargeScreen,
|
|
22
|
-
);
|
|
23
|
-
|
|
24
|
-
expect(container.querySelector('.banner__image')).toBeNull();
|
|
25
|
-
expect(container.querySelector('.large-screen-svg-primary')).toBeDefined();
|
|
26
|
-
});
|
|
27
|
-
|
|
28
|
-
it('renders Image layout when ENABLE_IMAGE_LAYOUT configuration is enabled', () => {
|
|
29
|
-
mergeAppConfig(appId, {
|
|
30
|
-
ENABLE_IMAGE_LAYOUT: true,
|
|
31
|
-
});
|
|
32
|
-
|
|
33
|
-
const { container } = render(
|
|
34
|
-
<IntlProvider locale="en">
|
|
35
|
-
<BaseContainer showWelcomeBanner={false}>
|
|
36
|
-
<div>Test Content</div>
|
|
37
|
-
</BaseContainer>
|
|
38
|
-
</IntlProvider>,
|
|
39
|
-
LargeScreen,
|
|
40
|
-
);
|
|
41
|
-
|
|
42
|
-
expect(container.querySelector('.banner__image')).toBeDefined();
|
|
43
|
-
});
|
|
44
|
-
});
|
|
@@ -1,110 +0,0 @@
|
|
|
1
|
-
import { FontAwesomeIcon } from '@fortawesome/react-fontawesome';
|
|
2
|
-
import { useAppConfig, getSiteConfig, useIntl } from '@openedx/frontend-base';
|
|
3
|
-
import {
|
|
4
|
-
Button, Form,
|
|
5
|
-
Icon,
|
|
6
|
-
} from '@openedx/paragon';
|
|
7
|
-
import { Login } from '@openedx/paragon/icons';
|
|
8
|
-
import PropTypes from 'prop-types';
|
|
9
|
-
|
|
10
|
-
import { LOGIN_PAGE, SUPPORTED_ICON_CLASSES } from '../data/constants';
|
|
11
|
-
import messages from './messages';
|
|
12
|
-
|
|
13
|
-
/**
|
|
14
|
-
* This component renders the Single sign-on (SSO) button only for the tpa provider passed
|
|
15
|
-
* */
|
|
16
|
-
const EnterpriseSSO = (props) => {
|
|
17
|
-
const { formatMessage } = useIntl();
|
|
18
|
-
const tpaProvider = props.provider;
|
|
19
|
-
const hideRegistrationLink = useAppConfig().ALLOW_PUBLIC_ACCOUNT_CREATION === false
|
|
20
|
-
|| useAppConfig().SHOW_REGISTRATION_LINKS === false;
|
|
21
|
-
|
|
22
|
-
const handleSubmit = (e, url) => {
|
|
23
|
-
e.preventDefault();
|
|
24
|
-
window.location.href = getSiteConfig().lmsBaseUrl + url;
|
|
25
|
-
};
|
|
26
|
-
|
|
27
|
-
const handleClick = (e) => {
|
|
28
|
-
e.preventDefault();
|
|
29
|
-
window.location.href = LOGIN_PAGE;
|
|
30
|
-
};
|
|
31
|
-
|
|
32
|
-
if (tpaProvider) {
|
|
33
|
-
return (
|
|
34
|
-
<div className="d-flex justify-content-center m-4">
|
|
35
|
-
<div className="d-flex flex-column">
|
|
36
|
-
<div className="mw-450">
|
|
37
|
-
<Form className="m-0">
|
|
38
|
-
<p>{formatMessage(messages['enterprisetpa.title.heading'], { providerName: tpaProvider.name })}</p>
|
|
39
|
-
<Button
|
|
40
|
-
id={tpaProvider.id}
|
|
41
|
-
key={tpaProvider.id}
|
|
42
|
-
type="submit"
|
|
43
|
-
variant="link"
|
|
44
|
-
className={`btn-tpa btn-${tpaProvider.id}`}
|
|
45
|
-
onClick={(e) => handleSubmit(e, tpaProvider.loginUrl)}
|
|
46
|
-
>
|
|
47
|
-
{tpaProvider.iconImage ? (
|
|
48
|
-
<div aria-hidden="true">
|
|
49
|
-
<img className="btn-tpa__image-icon" src={tpaProvider.iconImage} alt={`icon ${tpaProvider.name}`} />
|
|
50
|
-
<span className="pl-2" aria-hidden="true">{tpaProvider.name}</span>
|
|
51
|
-
</div>
|
|
52
|
-
)
|
|
53
|
-
: (
|
|
54
|
-
<>
|
|
55
|
-
<div className="btn-tpa__font-container" aria-hidden="true">
|
|
56
|
-
{SUPPORTED_ICON_CLASSES.includes(tpaProvider.iconClass) ? (
|
|
57
|
-
<FontAwesomeIcon icon={['fab', tpaProvider.iconClass]} />)
|
|
58
|
-
: (
|
|
59
|
-
<Icon className="h-75" src={Login} />
|
|
60
|
-
)}
|
|
61
|
-
</div>
|
|
62
|
-
<span className="pl-2" aria-hidden="true">{tpaProvider.name}</span>
|
|
63
|
-
</>
|
|
64
|
-
)}
|
|
65
|
-
</Button>
|
|
66
|
-
<div className="mb-4" />
|
|
67
|
-
<Button
|
|
68
|
-
type="submit"
|
|
69
|
-
id="other-ways-to-sign-in"
|
|
70
|
-
variant="outline-primary"
|
|
71
|
-
state="Complete"
|
|
72
|
-
className="w-100"
|
|
73
|
-
onClick={(e) => handleClick(e)}
|
|
74
|
-
>
|
|
75
|
-
{hideRegistrationLink
|
|
76
|
-
? formatMessage(messages['enterprisetpa.login.button.text.public.account.creation.disabled'])
|
|
77
|
-
: formatMessage(messages['enterprisetpa.login.button.text'])}
|
|
78
|
-
</Button>
|
|
79
|
-
</Form>
|
|
80
|
-
</div>
|
|
81
|
-
</div>
|
|
82
|
-
</div>
|
|
83
|
-
);
|
|
84
|
-
}
|
|
85
|
-
return <div />;
|
|
86
|
-
};
|
|
87
|
-
|
|
88
|
-
EnterpriseSSO.defaultProps = {
|
|
89
|
-
provider: {
|
|
90
|
-
id: '',
|
|
91
|
-
name: '',
|
|
92
|
-
iconClass: '',
|
|
93
|
-
iconImage: '',
|
|
94
|
-
loginUrl: '',
|
|
95
|
-
registerUrl: '',
|
|
96
|
-
},
|
|
97
|
-
};
|
|
98
|
-
|
|
99
|
-
EnterpriseSSO.propTypes = {
|
|
100
|
-
provider: PropTypes.shape({
|
|
101
|
-
id: PropTypes.string,
|
|
102
|
-
name: PropTypes.string,
|
|
103
|
-
iconClass: PropTypes.string,
|
|
104
|
-
iconImage: PropTypes.string,
|
|
105
|
-
loginUrl: PropTypes.string,
|
|
106
|
-
registerUrl: PropTypes.string,
|
|
107
|
-
}),
|
|
108
|
-
};
|
|
109
|
-
|
|
110
|
-
export default EnterpriseSSO;
|
|
@@ -1,106 +0,0 @@
|
|
|
1
|
-
import { useState } from 'react';
|
|
2
|
-
|
|
3
|
-
import {
|
|
4
|
-
Form, TransitionReplace,
|
|
5
|
-
} from '@openedx/paragon';
|
|
6
|
-
import PropTypes from 'prop-types';
|
|
7
|
-
|
|
8
|
-
const FormGroup = (props) => {
|
|
9
|
-
const [hasFocus, setHasFocus] = useState(false);
|
|
10
|
-
|
|
11
|
-
const handleFocus = (e) => {
|
|
12
|
-
setHasFocus(true);
|
|
13
|
-
if (props.handleFocus) { props.handleFocus(e); }
|
|
14
|
-
};
|
|
15
|
-
const handleClick = (e) => {
|
|
16
|
-
if (props.handleClick) { props.handleClick(e); }
|
|
17
|
-
};
|
|
18
|
-
const handleOnBlur = (e) => {
|
|
19
|
-
setHasFocus(false);
|
|
20
|
-
if (props.handleBlur) { props.handleBlur(e); }
|
|
21
|
-
};
|
|
22
|
-
|
|
23
|
-
return (
|
|
24
|
-
<Form.Group controlId={props.name} className={props.className} isInvalid={props.errorMessage !== ''}>
|
|
25
|
-
<Form.Control
|
|
26
|
-
as={props.as}
|
|
27
|
-
readOnly={props.readOnly}
|
|
28
|
-
type={props.type}
|
|
29
|
-
aria-invalid={props.errorMessage !== ''}
|
|
30
|
-
className="form-group__form-field"
|
|
31
|
-
autoComplete={props.autoComplete}
|
|
32
|
-
spellCheck={props.spellCheck}
|
|
33
|
-
name={props.name}
|
|
34
|
-
value={props.value}
|
|
35
|
-
onFocus={handleFocus}
|
|
36
|
-
onBlur={handleOnBlur}
|
|
37
|
-
onClick={handleClick}
|
|
38
|
-
onChange={props.handleChange}
|
|
39
|
-
controlClassName={props.borderClass}
|
|
40
|
-
trailingElement={props.trailingElement}
|
|
41
|
-
floatingLabel={props.floatingLabel}
|
|
42
|
-
>
|
|
43
|
-
{props.options ? props.options() : null}
|
|
44
|
-
</Form.Control>
|
|
45
|
-
<TransitionReplace>
|
|
46
|
-
{hasFocus && props.helpText ? (
|
|
47
|
-
<Form.Control.Feedback type="default" key="help-text" className="d-block form-text-size">
|
|
48
|
-
{props.helpText.map((message, index) => (
|
|
49
|
-
<span key={`help-text-${index.toString()}`}>
|
|
50
|
-
{message}
|
|
51
|
-
<br />
|
|
52
|
-
</span>
|
|
53
|
-
))}
|
|
54
|
-
</Form.Control.Feedback>
|
|
55
|
-
) : <div key="empty" />}
|
|
56
|
-
</TransitionReplace>
|
|
57
|
-
{props.errorMessage !== '' && (
|
|
58
|
-
<Form.Control.Feedback key="error" className="form-text-size" hasIcon={false} feedback-for={props.name} type="invalid">{props.errorMessage}</Form.Control.Feedback>
|
|
59
|
-
)}
|
|
60
|
-
{props.children}
|
|
61
|
-
</Form.Group>
|
|
62
|
-
);
|
|
63
|
-
};
|
|
64
|
-
|
|
65
|
-
FormGroup.defaultProps = {
|
|
66
|
-
as: 'input',
|
|
67
|
-
autoComplete: null,
|
|
68
|
-
borderClass: '',
|
|
69
|
-
children: null,
|
|
70
|
-
className: '',
|
|
71
|
-
errorMessage: '',
|
|
72
|
-
handleBlur: null,
|
|
73
|
-
handleChange: () => {},
|
|
74
|
-
handleClick: null,
|
|
75
|
-
handleFocus: null,
|
|
76
|
-
helpText: [],
|
|
77
|
-
options: null,
|
|
78
|
-
readOnly: false,
|
|
79
|
-
spellCheck: null,
|
|
80
|
-
trailingElement: null,
|
|
81
|
-
type: 'text',
|
|
82
|
-
};
|
|
83
|
-
|
|
84
|
-
FormGroup.propTypes = {
|
|
85
|
-
as: PropTypes.string,
|
|
86
|
-
autoComplete: PropTypes.string,
|
|
87
|
-
borderClass: PropTypes.string,
|
|
88
|
-
children: PropTypes.element,
|
|
89
|
-
className: PropTypes.string,
|
|
90
|
-
errorMessage: PropTypes.string,
|
|
91
|
-
floatingLabel: PropTypes.string.isRequired,
|
|
92
|
-
handleBlur: PropTypes.func,
|
|
93
|
-
handleChange: PropTypes.func,
|
|
94
|
-
handleClick: PropTypes.func,
|
|
95
|
-
handleFocus: PropTypes.func,
|
|
96
|
-
helpText: PropTypes.arrayOf(PropTypes.string),
|
|
97
|
-
name: PropTypes.string.isRequired,
|
|
98
|
-
options: PropTypes.func,
|
|
99
|
-
readOnly: PropTypes.bool,
|
|
100
|
-
spellCheck: PropTypes.string,
|
|
101
|
-
trailingElement: PropTypes.element,
|
|
102
|
-
type: PropTypes.string,
|
|
103
|
-
value: PropTypes.string.isRequired,
|
|
104
|
-
};
|
|
105
|
-
|
|
106
|
-
export default FormGroup;
|
|
@@ -1,102 +0,0 @@
|
|
|
1
|
-
import { getSiteConfig, useIntl } from '@openedx/frontend-base';
|
|
2
|
-
import { Button, Hyperlink, Icon } from '@openedx/paragon';
|
|
3
|
-
import { Institution } from '@openedx/paragon/icons';
|
|
4
|
-
import PropTypes from 'prop-types';
|
|
5
|
-
|
|
6
|
-
import messages from './messages';
|
|
7
|
-
|
|
8
|
-
/**
|
|
9
|
-
* This component renders the Institution login button
|
|
10
|
-
* */
|
|
11
|
-
export const RenderInstitutionButton = props => {
|
|
12
|
-
const { onSubmitHandler, buttonTitle } = props;
|
|
13
|
-
|
|
14
|
-
return (
|
|
15
|
-
<Button
|
|
16
|
-
className="btn-sm text-body p-0 mb-4 border-0"
|
|
17
|
-
variant="link"
|
|
18
|
-
data-event-name="institution_login"
|
|
19
|
-
onClick={onSubmitHandler}
|
|
20
|
-
>
|
|
21
|
-
<Icon src={Institution} className="institute-icon" />
|
|
22
|
-
{buttonTitle}
|
|
23
|
-
</Button>
|
|
24
|
-
);
|
|
25
|
-
};
|
|
26
|
-
|
|
27
|
-
/**
|
|
28
|
-
* This component renders the page list of available institutions for login
|
|
29
|
-
* */
|
|
30
|
-
const InstitutionLogistration = props => {
|
|
31
|
-
const lmsBaseUrl = getSiteConfig().lmsBaseUrl;
|
|
32
|
-
const { formatMessage } = useIntl();
|
|
33
|
-
const {
|
|
34
|
-
secondaryProviders,
|
|
35
|
-
headingTitle,
|
|
36
|
-
} = props;
|
|
37
|
-
|
|
38
|
-
return (
|
|
39
|
-
<>
|
|
40
|
-
<div className="d-flex justify-content-left mb-4 mt-2">
|
|
41
|
-
<div className="flex-column">
|
|
42
|
-
<h4 className="mb-2 font-weight-bold institutions__heading">
|
|
43
|
-
{headingTitle}
|
|
44
|
-
</h4>
|
|
45
|
-
<p className="mb-2">
|
|
46
|
-
{formatMessage(messages['institution.login.page.sub.heading'])}
|
|
47
|
-
</p>
|
|
48
|
-
</div>
|
|
49
|
-
</div>
|
|
50
|
-
<div className="mb-5">
|
|
51
|
-
<table className="pgn__data-table table-striped table-borderless">
|
|
52
|
-
<tbody>
|
|
53
|
-
{secondaryProviders.map(provider => (
|
|
54
|
-
<tr key={provider} className="pgn__data-table-row">
|
|
55
|
-
<td>
|
|
56
|
-
<Hyperlink
|
|
57
|
-
className="btn nav-item p-0 mb-1 institutions--provider-link"
|
|
58
|
-
destination={lmsBaseUrl + provider.loginUrl}
|
|
59
|
-
>
|
|
60
|
-
{provider.name}
|
|
61
|
-
</Hyperlink>
|
|
62
|
-
</td>
|
|
63
|
-
</tr>
|
|
64
|
-
))}
|
|
65
|
-
</tbody>
|
|
66
|
-
</table>
|
|
67
|
-
</div>
|
|
68
|
-
</>
|
|
69
|
-
);
|
|
70
|
-
};
|
|
71
|
-
|
|
72
|
-
const LogistrationDefaultProps = {
|
|
73
|
-
secondaryProviders: [],
|
|
74
|
-
buttonTitle: '',
|
|
75
|
-
};
|
|
76
|
-
const LogistrationProps = {
|
|
77
|
-
secondaryProviders: PropTypes.arrayOf(PropTypes.shape({
|
|
78
|
-
name: PropTypes.string.isRequired,
|
|
79
|
-
loginUrl: PropTypes.string.isRequired,
|
|
80
|
-
})),
|
|
81
|
-
};
|
|
82
|
-
|
|
83
|
-
RenderInstitutionButton.propTypes = {
|
|
84
|
-
...LogistrationProps,
|
|
85
|
-
buttonTitle: PropTypes.string,
|
|
86
|
-
onSubmitHandler: PropTypes.func.isRequired,
|
|
87
|
-
|
|
88
|
-
};
|
|
89
|
-
RenderInstitutionButton.defaultProps = {
|
|
90
|
-
...LogistrationDefaultProps,
|
|
91
|
-
};
|
|
92
|
-
|
|
93
|
-
InstitutionLogistration.propTypes = {
|
|
94
|
-
...LogistrationProps,
|
|
95
|
-
headingTitle: PropTypes.string,
|
|
96
|
-
};
|
|
97
|
-
InstitutionLogistration.defaultProps = {
|
|
98
|
-
...LogistrationDefaultProps,
|
|
99
|
-
headingTitle: '',
|
|
100
|
-
};
|
|
101
|
-
|
|
102
|
-
export default InstitutionLogistration;
|
|
@@ -1,15 +0,0 @@
|
|
|
1
|
-
import { FormattedMessage } from '@openedx/frontend-base';
|
|
2
|
-
|
|
3
|
-
const NotFoundPage = () => (
|
|
4
|
-
<div className="container-fluid d-flex py-5 justify-content-center align-items-start text-center">
|
|
5
|
-
<p className="my-0 py-5 text-muted mw-32em">
|
|
6
|
-
<FormattedMessage
|
|
7
|
-
id="error.notfound.message"
|
|
8
|
-
defaultMessage="The page you're looking for is unavailable or there's an error in the URL. Please check the URL and try again."
|
|
9
|
-
description="error message when a page does not exist"
|
|
10
|
-
/>
|
|
11
|
-
</p>
|
|
12
|
-
</div>
|
|
13
|
-
);
|
|
14
|
-
|
|
15
|
-
export default NotFoundPage;
|