@egovernments/digit-ui-module-core 2.0.0-dev-20 → 2.0.0-dev-21
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CHANGELOG.md +513 -0
- package/dist/main.08f8755983b7134bc9cd.hot-update.js +643 -0
- package/dist/main.08f8755983b7134bc9cd.hot-update.js.map +1 -0
- package/dist/main.08f8755983b7134bc9cd.hot-update.json +1 -0
- package/dist/main.5cddd7524feabea78c32.hot-update.js +125 -0
- package/dist/main.5cddd7524feabea78c32.hot-update.json +1 -0
- package/dist/main.67dccefddc0b941541c8.hot-update.js +126 -0
- package/dist/main.67dccefddc0b941541c8.hot-update.json +1 -0
- package/dist/main.js +19901 -2
- package/dist/main.js.map +1 -1
- package/package.json +2 -2
- package/dist/main.js.LICENSE.txt +0 -9
- package/dist/main.js.br +0 -0
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"main.08f8755983b7134bc9cd.hot-update.js","mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAAA;AAEA;AAAA;AACA;AAAA;AAGA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AAAA;AACA;AAAA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAAA;AACA;AAKA;AACA;AACA;AACA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;;AAIA;AACA;AACA;AACA;AACA;AACA;AAEA;AAEA;AACA;;AAMA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA;AACA;AACA;AACA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AAAA;AAAA;AACA;AAAA;AAAA;AAAA;AACA;AACA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AAGA;AACA;AACA;AACA;AACA;AACA;AAEA;;AAEA;AACA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AAAA;AACA;AACA;;AAEA;AACA;AAGA;AACA;AACA;;AAEA;AACA;AAGA;AACA;AACA;AAEA;AAAA;AAAA;AACA;;AAEA;AACA;AAAA;AAAA;AACA;AACA;AACA;AAAA;AACA;AACA;AACA;AACA;AAIA;AACA;AACA;AACA;AACA;AACA;AACA;AAAA;AACA;AAAA;AACA;AAAA;AAEA;AAEA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAOA;AACA;AAEA;AACA;AAAA;AAAA;AAAA;AAEA;AACA;AAAA;AAAA;AACA;AACA;AACA;AACA;;AAGA;AACA;AACA;AACA;AACA;AAAA;;AAGA;AACA;AACA;AACA;AACA;AAAA;AAEA;AACA;AACA;AACA;AAAA;AApEA;AAAA;AAAA;AAsEA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA;AACA;AACA;AAEA;AAGA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;;AAEA;AACA;AACA;AACA;AACA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA;AACA;AAEA;AAAA;AACA;AACA;AACA;AAEA;AACA;AACA;;AAEA;AACA;AACA;AACA;AAAA;AAZA;AAAA;AAAA;AAcA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAAA;AArCA;AAAA;AAAA;AAuCA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA;AACA;AACA;AAGA;AAAA;AAEA;AACA;AACA;AACA;AAAA;AAAA;AAAA;AAAA;AACA;AACA;AAAA;AAAA;AACA;AAAA;AACA;AAKA;AACA;AACA;AACA;AACA;AAAA;AAnCA;AAAA;AAAA;AAqCA;AACA;AACA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA;AAAA;AAAA;AACA;AACA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAEA;AAAA;AACA;AAKA;AACA;AACA;AAAA;AAAA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAAA;AAPA;AAAA;AAAA;AAAA;AAQA;AAEA;AAAA;AAnCA;AAAA;AAAA;AAqCA;AACA;AACA;AAEA;AAAA;AACA;AACA;AACA;AAEA;AACA;AACA;AAGA;AAEA;AAAA;AAAA;AAEA;AACA;AACA;AAEA;AACA;AACA;AAAA;AAGA;AACA;AACA;AAAA;AAAA;AAGA;AAEA;AAIA;AAEA;AAAA;AACA;AAIA;AAGA;AAAA;AAAA;AACA;AAKA;AACA;AACA;AACA;AAEA;AAKA;AAAA;AACA;AAUA;AAEA;AACA;AAEA;AACA;AACA;AACA;AAEA;AACA;AAEA;AAAA;AAAA;AAAA;AAAA;AAAA;AAEA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAIA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAAA;AAEA;AAAA;AAAA;AACA;AAGA;AAAA;AAAA;AACA;AAAA;AAAA;AAAA;AAAA;AAEA;AACA;AACA;AAAA;AAAA;AACA;AAAA;AACA;AACA;AAAA;AACA;AACA;AAGA;AACA;AAAA;AAAA;AAAA;AACA;AACA;AACA;AAAA;AAEA;AAAA;AACA;AAAA;AAGA;AAAA;AAAA;AAAA;AACA;AACA;AAGA;AAGA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AAAA;AAEA;AAGA;AAAA;AACA;AAAA;AAAA;AAQA;AAAA;AAAA;AAAA;AACA;AAIA;AAEA;AACA;AACA;AAEA;AACA;AACA;AAEA;;;;;;;;AClmBA","sources":["webpack://@egovernments/digit-ui-module-core/./src/pages/employee/Login/login.js","webpack://@egovernments/digit-ui-module-core/webpack/runtime/getFullHash"],"sourcesContent":["import { BackLink, Loader, FormComposerV2, Toast } from \"@egovernments/digit-ui-components\";\nimport PropTypes from \"prop-types\";\nimport React, { useEffect, useMemo, useState } from \"react\";\nimport { useNavigate } from \"react-router-dom\";\nimport Background from \"../../../components/Background\";\nimport Header from \"../../../components/Header\";\nimport Carousel from \"./Carousel/Carousel\";\nimport ImageComponent from \"../../../components/ImageComponent\";\n// import SkipToMainContent from \"../SkipToMainContent/SkipToMainContent\";\nimport withAutoFocusMain from \"../../../hoc/withAutoFocusMain\";\n\nconst setEmployeeDetail = (userObject, token) => {\n if (Digit.Utils.getMultiRootTenant() && process.env.NODE_ENV !== \"development\") {\n return;\n }\n let locale = JSON.parse(sessionStorage.getItem(\"Digit.locale\"))?.value || Digit.Utils.getDefaultLanguage();\n localStorage.setItem(\"Employee.tenant-id\", userObject?.tenantId);\n localStorage.setItem(\"tenant-id\", userObject?.tenantId);\n localStorage.setItem(\"citizen.userRequestObject\", JSON.stringify(userObject));\n localStorage.setItem(\"locale\", locale);\n localStorage.setItem(\"Employee.locale\", locale);\n localStorage.setItem(\"token\", token);\n localStorage.setItem(\"Employee.token\", token);\n localStorage.setItem(\"user-info\", JSON.stringify(userObject));\n localStorage.setItem(\"Employee.user-info\", JSON.stringify(userObject));\n};\n\nconst Login = ({ config: propsConfig, t, isDisabled, loginOTPBased }) => {\n const { data: cities, isLoading } = Digit.Hooks.useTenants();\n const {\n data: storeData,\n isLoading: isStoreLoading,\n } = Digit.Hooks.useStore.getInitData();\n const {\n data: ssoMDMSData,\n isLoading: isSSOMDMSLoading,\n } = Digit.Hooks.useSSOConfig(Digit.ULBService.getStateId(), {\n select: (data) => {\n const config =\n data?.MdmsRes?.[\"SSO\"]?.IdentityProviders ||\n data?.[\"SSO\"]?.IdentityProviders ||\n data?.[\"IdentityProviders\"] ||\n [];\n return Array.isArray(config) ? config : [];\n },\n });\n const { stateInfo } = storeData || {};\n const [user, setUser] = useState(null);\n const [showToast, setShowToast] = useState(null);\n const [disable, setDisable] = useState(false);\n const [loginLoader, setLoginLoader] = useState(false);\n const navigate = useNavigate();\n const DynamicLoginComponent = Digit.ComponentRegistryService?.getComponent(\n \"DynamicLoginComponent\",\n );\n\n /* Generic SSO Callback Handler - runs on mount / when disable/user/stateInfo change */\n useEffect(() => {\n const hashParams = new URLSearchParams(window.location.hash.slice(1));\n const searchParams = new URLSearchParams(window.location.search);\n const idToken = hashParams.get(\"id_token\") || searchParams.get(\"id_token\");\n const accessToken =\n hashParams.get(\"access_token\") || searchParams.get(\"access_token\");\n const code = searchParams.get(\"code\");\n\n const error = searchParams.get(\"error\") || hashParams.get(\"error\");\n const errorDescription =\n searchParams.get(\"error_description\") ||\n hashParams.get(\"error_description\") ||\n searchParams.get(\"errorDescription\") ||\n hashParams.get(\"errorDescription\");\n\n // If we are not on an SSO callback URL, never keep the SSO overlay loader.\n // Important: we intentionally don't set the loader before redirecting to the provider,\n // so browser back (including bfcache restores) won't get stuck with a stale loader.\n // Note: do NOT reset `disable` here — it is also used for form-validation gating and\n // resetting it would fight FormComposerV2's onFormValueChange, causing an infinite loop.\n if (!idToken && !code && !error) {\n if (loginLoader) setLoginLoader(false);\n return;\n }\n\n if (error && !showToast) {\n setShowToast(errorDescription || \"SSO Login Failed!\");\n setTimeout(closeToast, 5000);\n setLoginLoader(false);\n setDisable(false);\n return;\n }\n\n if (!stateInfo?.code) {\n // Tenant/state not ready yet; wait and retry when stateInfo arrives.\n return;\n }\n\n if ((idToken || code) && !user && !disable) {\n if (idToken) {\n handleDigitLogin(idToken, accessToken);\n } else if (code) {\n setDisable(true);\n setLoginLoader(true);\n Digit.UserService.microsoftAuthenticate({ code })\n .then(({ UserRequest: info, ...tokens }) => {\n Digit.SessionStorage.set(\"Employee.tenantId\", info?.tenantId);\n setUser({ info, ...tokens });\n setDisable(false);\n setLoginLoader(false);\n })\n .catch((err) => {\n setShowToast(\n err?.response?.data?.error_description || \"Login Failed!\",\n );\n setTimeout(closeToast, 5000);\n setDisable(false);\n setLoginLoader(false);\n });\n }\n }\n\n }, [user, disable, stateInfo, loginLoader, showToast]);\n\n /* Post-login redirect and user setup */\n useEffect(() => {\n if (!user) {\n return;\n }\n Digit.SessionStorage.set(\"citizen.userRequestObject\", user);\n const filteredRoles = user?.info?.roles?.filter((role) => role.tenantId === Digit.SessionStorage.get(\"Employee.tenantId\"));\n if (user?.info?.roles?.length > 0) user.info.roles = filteredRoles;\n Digit.UserService.setUser(user);\n setEmployeeDetail(user?.info, user?.access_token);\n let redirectPath = `/${window?.contextPath}/employee`;\n\n /* logic to redirect back to same screen where we left off */\n if (window?.location?.href?.includes(\"from=\")) {\n redirectPath = decodeURIComponent(window?.location?.href?.split(\"from=\")?.[1]) || `/${window?.contextPath}/employee`;\n }\n\n /* RAIN-6489 Logic to navigate to National DSS home in case user has only one role [NATADMIN]*/\n if (\n user?.info?.roles &&\n user?.info?.roles?.every((e) => e.code === \"NATADMIN\")\n ) {\n redirectPath = `/${window?.contextPath}/employee/dss/landing/NURT_DASHBOARD`;\n }\n\n /* RAIN-6489 Logic to navigate to National DSS home incase user has only one role [NATADMIN]*/\n if (\n user?.info?.roles &&\n user?.info?.roles?.every((e) => e.code === \"STADMIN\")\n ) {\n redirectPath = `/${window?.contextPath}/employee/dss/landing/home`;\n }\n\n navigate(redirectPath, { replace: true });\n }, [user]);\n\n /* Generic Token Exchange with DIGIT Backend */\n const handleDigitLogin = async (idToken, accessToken = null) => {\n setDisable(true);\n setLoginLoader(true);\n try {\n const response = await fetch(\"/user/oauth/token\", {\n method: \"POST\",\n headers: {\n Authorization: `Basic ${\n window?.globalConfigs?.getConfig(\"JWT_TOKEN\") ||\n \"ZWdvdi11c2VyLWNsaWVudDo=\"\n }`,\n \"Content-Type\": \"application/x-www-form-urlencoded\",\n },\n body: new URLSearchParams({\n grant_type: \"jwt_exchange\",\n scope: \"read\",\n userType: \"EMPLOYEE\",\n assertion: idToken,\n ...(accessToken && { access_token: accessToken }),\n tenantId: stateInfo?.code,\n }),\n });\n\n if (!response.ok) {\n const raw = await response.text();\n let parsed;\n try {\n parsed = raw ? JSON.parse(raw) : null;\n } catch (e) {\n parsed = null;\n }\n const message =\n parsed?.error_description ||\n parsed?.errorDescription ||\n parsed?.message ||\n parsed?.error ||\n raw ||\n \"DIGIT Login Failed\";\n throw new Error(message);\n }\n\n const data = await response.json();\n const { UserRequest: info, ...tokens } = data;\n\n Digit.SessionStorage.set(\"Employee.tenantId\", info?.tenantId);\n setUser({ info, ...tokens });\n } catch (error) {\n console.error(\"DIGIT Login Error:\", error);\n setShowToast(error?.message || \"DIGIT Login Failed\");\n setTimeout(closeToast, 5000);\n\n\n // If token exchange fails, force Microsoft to prompt credentials on next SSO click.\n try {\n window.sessionStorage.setItem(\"sso.force.prompt.login\", \"true\");\n } catch (e) {\n // no-op\n }\n\n // Prevent retry loop: clear `id_token`/`code` from URL (stay on same page).\n try {\n window.history.replaceState({}, document.title, window.location.pathname);\n } catch (e) {\n // no-op\n }\n }\n setDisable(false);\n setLoginLoader(false);\n };\n\n const buildOIDCAuthorizeUrl = (uiConfig) => {\n const {\n authorizeUrl,\n clientId,\n scopes = [\"openid\", \"profile\", \"email\"],\n responseType = \"id_token\",\n responseMode = \"fragment\",\n nonceRequired = true,\n redirectPath = \"employee/user/login\",\n resource,\n provider,\n prompt,\n } = uiConfig || {};\n\n if (!authorizeUrl || !clientId) {\n throw new Error(\"Missing authorizeUrl or clientId for OIDC login\");\n }\n\n const nonce = nonceRequired\n ? Math.random().toString(36).substring(2)\n : undefined;\n const redirectUri = `${window.location.origin}/${window?.contextPath}/${redirectPath}`;\n\n const params = new URLSearchParams();\n params.set(\"client_id\", clientId);\n params.set(\"response_type\", responseType);\n params.set(\"redirect_uri\", redirectUri);\n if (nonce) params.set(\"nonce\", nonce);\n if (responseMode) params.set(\"response_mode\", responseMode);\n if (scopes && scopes.length) params.set(\"scope\", scopes.join(\" \"));\n if (resource) params.set(\"resource\", resource);\n\n // Handle prompt parameter with priority:\n // 1. Use configured prompt from SSO config (respects admin configuration)\n // 2. Fall back to forced login only if no prompt is configured AND a previous login failed\n try {\n const forcePromptLogin = window.sessionStorage.getItem(\"sso.force.prompt.login\") === \"true\";\n\n if (prompt) {\n // Respect configured prompt (e.g., \"select_account\", \"consent\")\n params.set(\"prompt\", prompt);\n // Clear the force flag since we're using configured prompt\n if (forcePromptLogin) {\n window.sessionStorage.removeItem(\"sso.force.prompt.login\");\n }\n } else if (forcePromptLogin) {\n // Only force login if no prompt is configured\n params.set(\"prompt\", \"login\");\n window.sessionStorage.removeItem(\"sso.force.prompt.login\");\n }\n } catch (e) {\n // If prompt is configured, still set it even if sessionStorage fails\n if (prompt) {\n params.set(\"prompt\", prompt);\n }\n }\n\n return `${authorizeUrl}?${params.toString()}`;\n };\n\n const onSSOLogin = async (ssoConfig) => {\n // For OIDC-like providers (MICROSOFT, GOOGLE, etc.), use generic OIDC login\n const ui = ssoConfig?.ui || {};\n const hasOidcConfig = Boolean((ui.authorizeUrl || ssoConfig?.authorizeUrl) && ui.clientId);\n\n if (ui.authStrategy === \"OIDC_POPUP\" || ui.provider === \"MICROSOFT\" || hasOidcConfig) {\n return onOIDCLogin(ssoConfig);\n }\n\n // If the config doesn't match any known SSO strategy, don't leave the overlay loader stuck.\n setShowToast(\"SSO configuration is invalid or unsupported\");\n setTimeout(closeToast, 5000);\n };\n\n const onOIDCLogin = async (ssoConfig) => {\n try {\n const ui = { ...(ssoConfig?.ui || {}) };\n // Backward-compatibility for older configs where authorizeUrl/resource\n // might be on the top level instead of inside ui.\n ui.authorizeUrl = ui.authorizeUrl || ssoConfig?.authorizeUrl;\n ui.resource = ui.resource || ssoConfig?.resource;\n // For Microsoft, if resource is not explicitly provided, default it to clientId (v1 behavior).\n if (ui.provider === \"MICROSOFT\" && !ui.resource) {\n ui.resource = ui.clientId;\n }\n // Persist provider + logout-relevant info for later use during logout\n if (ui.provider) {\n localStorage.setItem(\"sso-provider\", ui.provider);\n }\n if (ui.logoutUrl) {\n localStorage.setItem(\"sso-logout-url\", ui.logoutUrl);\n }\n if (ui.logoutRedirectParam) {\n localStorage.setItem(\"sso-logout-redirect-param\", ui.logoutRedirectParam);\n }\n if (ui.tenantId) {\n localStorage.setItem(\"sso-tenant-id\", ui.tenantId);\n }\n if (ui.authority) {\n localStorage.setItem(\"sso-authority\", ui.authority);\n }\n const url = buildOIDCAuthorizeUrl(ui);\n // Simple implementation: redirect for OIDC if no library is present\n // For a better experience, a popup and message bridge should be used\n window.location.href = url;\n } catch (error) {\n console.error(\"OIDC Login Error:\", error);\n setShowToast(error.message || \"OIDC Login Failed\");\n setTimeout(closeToast, 5000);\n setLoginLoader(false);\n }\n };\n\n const onLogin = async (data) => {\n // if (!data.city) {\n // alert(\"Please Select City!\");\n // return;\n // }\n if (data?.username) {\n data.username = data.username.trim();\n }\n if (data?.password) {\n data.password = data.password.trim();\n }\n\n setDisable(true);\n setLoginLoader(true);\n const requestData = {\n ...data,\n ...defaultValues,\n userType: \"EMPLOYEE\",\n };\n requestData.tenantId = requestData?.city?.code || Digit?.ULBService?.getStateId();\n delete requestData.city;\n try {\n const { UserRequest: info, ...tokens } = await Digit.UserService.authenticate(requestData);\n Digit.SessionStorage.set(\"Employee.tenantId\", info?.tenantId);\n setUser({ info, ...tokens });\n } catch (err) {\n setShowToast(\n err?.response?.data?.error_description ||\n (err?.message == \"ES_ERROR_USER_NOT_PERMITTED\" && t(\"ES_ERROR_USER_NOT_PERMITTED\")) ||\n t(\"INVALID_LOGIN_CREDENTIALS\")\n );\n setTimeout(closeToast, 5000);\n }\n setDisable(false);\n setLoginLoader(false);\n };\n\n const reqCreate = {\n url: `/user-otp/v1/_send`,\n params: { tenantId: Digit?.ULBService?.getStateId() },\n body: {},\n config: {\n enable: false,\n },\n };\n const mutation = Digit.Hooks.useCustomAPIMutationHook(reqCreate);\n\n const onOtpLogin = async (data) => {\n const inputEmail = data.email;\n await mutation.mutate(\n {\n body: {\n otp: {\n userName: data.email,\n type: \"login\",\n tenantId: Digit?.ULBService?.getStateId(),\n userType: \"EMPLOYEE\",\n },\n },\n config: {\n enable: true,\n },\n },\n {\n onError: (error, variables) => {\n setShowToast(\n error?.response?.data?.Errors?.[0].code\n ? `SANDBOX_RESEND_OTP${error?.response?.data?.Errors?.[0]?.code}`\n : `SANDBOX_RESEND_OTP_ERROR`,\n );\n setTimeout(closeToast, 5000);\n },\n onSuccess: async (data) => {\n navigate(`/${window?.contextPath}/employee/user/login/otp`, {\n state: {\n email: inputEmail,\n tenant: Digit?.ULBService?.getStateId(),\n },\n });\n },\n },\n );\n };\n\n const closeToast = () => {\n setShowToast(null);\n };\n\n const onForgotPassword = () => {\n navigate(`/${window?.contextPath}/employee/user/forgot-password`);\n };\n const defaultTenant = Digit.ULBService.getStateId();\n\n const defaultValue = {\n code: defaultTenant,\n name: Digit.Utils.locale.getTransformedLocale(\n `TENANT_TENANTS_${defaultTenant}`,\n ),\n };\n\n const ssoConfigs = ssoMDMSData?.map((sso) => ({\n ...sso,\n provider: sso.ui?.provider || sso.provider || \"sso\",\n label: t(`SSO_PROVIDER_${sso.ui?.name || sso.id}`),\n icon: sso.ui?.logo ? (\n <img\n src={sso.ui.logo}\n alt={sso.ui?.name}\n className=\"employee-login-sso-logo\"\n />\n ) : sso.ui?.provider === \"MICROSOFT\" ? \"Microsoft\" : sso.ui?.icon,\n onLogin: (ssoConfig) => {\n onSSOLogin(ssoConfig);\n },\n }));\n\n let config = [\n {\n body: propsConfig?.inputs?.map((field) =>\n field?.component === \"EmployeeSSOLoginOptions\"\n ? {\n ...field,\n customProps: {\n ...field.customProps,\n ssoConfigs,\n },\n }\n : field,\n ),\n },\n ];\n\n const { mode } = Digit.Hooks.useQueryParams();\n if (\n mode === \"admin\" &&\n config?.[0]?.body?.[2]?.disable == false &&\n config?.[0]?.body?.[2]?.populators?.defaultValue == undefined\n ) {\n config[0].body[2].disable = true;\n config[0].body[2].isMandatory = false;\n config[0].body[2].populators.defaultValue = defaultValue;\n }\n\n const defaultValues = useMemo(\n () =>\n Object.fromEntries(\n config[0].body\n .filter(\n (field) =>\n field?.populators?.defaultValue && field?.populators?.name,\n )\n .map((field) => [\n field.populators.name,\n field.populators.defaultValue,\n ]),\n ),\n [],\n );\n\n const onFormValueChange = (setValue, formData, formState) => {\n\n // Extract keys from the config \n const keys = config[0].body.filter(field => field?.isMandatory).map((field) => field?.key);\n\n const hasEmptyFields = keys.some((key) => {\n const value = formData[key];\n return value == null || value === \"\" || value === false;\n });\n\n setDisable(hasEmptyFields);\n };\n\n const renderLoginForm = (extraClasses = \"\", cardClassName = \"\", wrapperClass = \"\") => (\n <FormComposerV2\n onSubmit={loginOTPBased ? onOtpLogin : onLogin}\n isDisabled={isDisabled || disable}\n noBoxShadow\n inline\n submitInForm\n config={config}\n label={propsConfig?.texts?.submitButtonLabel}\n secondaryActionLabel={\n propsConfig?.texts?.secondaryButtonLabel +\n (extraClasses.includes(\"login-form-container\") ? \"?\" : \"\")\n }\n onSecondayActionClick={onForgotPassword}\n onFormValueChange={onFormValueChange}\n heading={propsConfig?.texts?.header}\n className={`${wrapperClass}`}\n cardSubHeaderClassName=\"loginCardSubHeaderClassName\"\n cardClassName={cardClassName}\n buttonClassName=\"buttonClassName\"\n defaultValues={defaultValues}\n >\n {stateInfo?.code ? <Header /> : <Header showTenant={false} />}\n </FormComposerV2>\n );\n \n const renderFooter = (footerClassName) => (\n <div className={footerClassName} style={{ backgroundColor: \"unset\" }}>\n <ImageComponent\n alt=\"Powered by DIGIT\"\n src={window?.globalConfigs?.getConfig?.(\"DIGIT_FOOTER_BW\")}\n style={{ cursor: \"pointer\" }}\n onClick={() => {\n window.open(window?.globalConfigs?.getConfig?.(\"DIGIT_HOME_URL\"), \"_blank\").focus();\n }}\n />\n </div>\n );\n\n if (isLoading || isStoreLoading) {\n return <Loader page={true} variant=\"PageLoader\" />;\n }\n return propsConfig?.bannerImages ? (\n <div className=\"login-container\">\n {/* <SkipToMainContent class_name={\".login-form-container\"}/> */}\n <Carousel bannerImages={propsConfig?.bannerImages} />\n <div className=\"login-form-container\">\n {renderLoginForm(\"login-form-container\", \"\", loginOTPBased ? \"sandbox-onboarding-wrapper\" : \"\")}\n {DynamicLoginComponent && <DynamicLoginComponent />} \n {showToast && <Toast type=\"error\" label={t(showToast)} onClose={closeToast} />}\n {renderFooter(\"EmployeeLoginFooter\")}\n </div>\n </div>\n ) : (\n <Background>\n {loginLoader && (\n <div\n style={{\n position: \"fixed\",\n top: 0,\n left: 0,\n width: \"100vw\",\n height: \"100vh\",\n background: \"rgba(0,0,0,0.35)\",\n display: \"flex\",\n alignItems: \"center\",\n justifyContent: \"center\",\n zIndex: 9999,\n }}\n >\n <Loader />\n </div>\n )}\n <div className=\"employeeBackbuttonAlign\">\n <BackLink onClick={() => window.history.back()} />\n </div>\n {renderLoginForm(\n \"loginFormStyleEmployee\",\n \"loginCardClassName\",\n loginOTPBased ? \"sandbox-onboarding-wrapper\" : \"\",\n )}\n {DynamicLoginComponent && <DynamicLoginComponent />}\n {showToast && <Toast type=\"error\" label={t(showToast)} onClose={closeToast} />}\n {renderFooter(\"employee-login-home-footer\")}\n </Background>\n );\n \n};\n\nLogin.propTypes = {\n loginParams: PropTypes.any,\n};\n\nLogin.defaultProps = {\n loginParams: null,\n};\n\nexport default withAutoFocusMain(Login, \".login-form-container\");\n","__webpack_require__.h = () => (\"5a340d1659238e20c0b3\")"],"names":[],"ignoreList":[],"sourceRoot":""}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"c":["main"],"r":[],"m":[]}
|
|
@@ -0,0 +1,125 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
this["webpackHotUpdate_egovernments_digit_ui_module_core"]("main",{
|
|
3
|
+
|
|
4
|
+
/***/ "./src/pages/employee/Login/index.js":
|
|
5
|
+
/*!*******************************************!*\
|
|
6
|
+
!*** ./src/pages/employee/Login/index.js ***!
|
|
7
|
+
\*******************************************/
|
|
8
|
+
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
|
|
9
|
+
|
|
10
|
+
__webpack_require__.r(__webpack_exports__);
|
|
11
|
+
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
|
|
12
|
+
/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__)
|
|
13
|
+
/* harmony export */ });
|
|
14
|
+
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "react");
|
|
15
|
+
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
|
|
16
|
+
/* harmony import */ var react_i18next__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! react-i18next */ "react-i18next");
|
|
17
|
+
/* harmony import */ var react_i18next__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(react_i18next__WEBPACK_IMPORTED_MODULE_1__);
|
|
18
|
+
/* harmony import */ var react_router_dom__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! react-router-dom */ "react-router-dom");
|
|
19
|
+
/* harmony import */ var react_router_dom__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(react_router_dom__WEBPACK_IMPORTED_MODULE_2__);
|
|
20
|
+
/* harmony import */ var _config__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./config */ "./src/pages/employee/Login/config.js");
|
|
21
|
+
/* harmony import */ var _ConfigOtp__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./ConfigOtp */ "./src/pages/employee/Login/ConfigOtp.js");
|
|
22
|
+
/* harmony import */ var _login__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./login */ "./src/pages/employee/Login/login.js");
|
|
23
|
+
/* harmony import */ var _hooks_useLoginConfig__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../../hooks/useLoginConfig */ "./src/hooks/useLoginConfig.js");
|
|
24
|
+
/* harmony import */ var _egovernments_digit_ui_components__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! @egovernments/digit-ui-components */ "@egovernments/digit-ui-components");
|
|
25
|
+
/* harmony import */ var _egovernments_digit_ui_components__WEBPACK_IMPORTED_MODULE_7___default = /*#__PURE__*/__webpack_require__.n(_egovernments_digit_ui_components__WEBPACK_IMPORTED_MODULE_7__);
|
|
26
|
+
/* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! react/jsx-runtime */ "../../../node_modules/react/jsx-runtime.js");
|
|
27
|
+
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
28
|
+
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
29
|
+
function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
|
|
30
|
+
function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : i + ""; }
|
|
31
|
+
function _toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != typeof i) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
|
|
32
|
+
|
|
33
|
+
|
|
34
|
+
// Updated imports for v6
|
|
35
|
+
|
|
36
|
+
|
|
37
|
+
|
|
38
|
+
|
|
39
|
+
|
|
40
|
+
|
|
41
|
+
var EmployeeLogin = _ref => {
|
|
42
|
+
var _window;
|
|
43
|
+
var {
|
|
44
|
+
stateCode
|
|
45
|
+
} = _ref;
|
|
46
|
+
var {
|
|
47
|
+
t
|
|
48
|
+
} = (0,react_i18next__WEBPACK_IMPORTED_MODULE_1__.useTranslation)();
|
|
49
|
+
var [loginConfig, setloginConfig] = (0,react__WEBPACK_IMPORTED_MODULE_0__.useState)(_config__WEBPACK_IMPORTED_MODULE_3__.loginConfig);
|
|
50
|
+
var [loginOtpConfig, setloginOtpConfig] = (0,react__WEBPACK_IMPORTED_MODULE_0__.useState)(_ConfigOtp__WEBPACK_IMPORTED_MODULE_4__.LoginOtpConfig);
|
|
51
|
+
var moduleCode = ["privacy-policy"];
|
|
52
|
+
var language = Digit.StoreData.getCurrentLanguage();
|
|
53
|
+
var modulePrefix = "digit";
|
|
54
|
+
var loginType = ((_window = window) === null || _window === void 0 || (_window = _window.globalConfigs) === null || _window === void 0 ? void 0 : _window.getConfig("OTP_BASED_LOGIN")) || false;
|
|
55
|
+
var {
|
|
56
|
+
data: mdmsData,
|
|
57
|
+
isLoading
|
|
58
|
+
} = (0,_hooks_useLoginConfig__WEBPACK_IMPORTED_MODULE_6__.useLoginConfig)(stateCode);
|
|
59
|
+
var {
|
|
60
|
+
data: store
|
|
61
|
+
} = Digit.Services.useStore({
|
|
62
|
+
stateCode,
|
|
63
|
+
moduleCode,
|
|
64
|
+
language,
|
|
65
|
+
modulePrefix
|
|
66
|
+
});
|
|
67
|
+
(0,react__WEBPACK_IMPORTED_MODULE_0__.useEffect)(() => {
|
|
68
|
+
if (!isLoading && mdmsData !== null && mdmsData !== void 0 && mdmsData.config) {
|
|
69
|
+
setloginConfig(mdmsData === null || mdmsData === void 0 ? void 0 : mdmsData.config);
|
|
70
|
+
} else {
|
|
71
|
+
setloginConfig(_config__WEBPACK_IMPORTED_MODULE_3__.loginConfig);
|
|
72
|
+
}
|
|
73
|
+
}, [mdmsData, isLoading]);
|
|
74
|
+
var loginParams = (0,react__WEBPACK_IMPORTED_MODULE_0__.useMemo)(() => loginConfig.map(step => {
|
|
75
|
+
var texts = {};
|
|
76
|
+
for (var key in step.texts) {
|
|
77
|
+
texts[key] = t(step.texts[key]);
|
|
78
|
+
}
|
|
79
|
+
return _objectSpread(_objectSpread({}, step), {}, {
|
|
80
|
+
texts
|
|
81
|
+
});
|
|
82
|
+
}, [loginConfig]));
|
|
83
|
+
var loginOtpParams = (0,react__WEBPACK_IMPORTED_MODULE_0__.useMemo)(() => loginOtpConfig.map(step => {
|
|
84
|
+
var texts = {};
|
|
85
|
+
for (var key in step.texts) {
|
|
86
|
+
texts[key] = t(step.texts[key]);
|
|
87
|
+
}
|
|
88
|
+
return _objectSpread(_objectSpread({}, step), {}, {
|
|
89
|
+
texts
|
|
90
|
+
});
|
|
91
|
+
}, [loginOtpConfig]));
|
|
92
|
+
if (isLoading) {
|
|
93
|
+
return /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_8__.jsx)(_egovernments_digit_ui_components__WEBPACK_IMPORTED_MODULE_7__.Loader, {
|
|
94
|
+
page: false,
|
|
95
|
+
variant: "PageLoader"
|
|
96
|
+
});
|
|
97
|
+
}
|
|
98
|
+
return /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_8__.jsxs)(react_router_dom__WEBPACK_IMPORTED_MODULE_2__.Routes, {
|
|
99
|
+
children: [" ", /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_8__.jsx)(react_router_dom__WEBPACK_IMPORTED_MODULE_2__.Route, {
|
|
100
|
+
path: "/",
|
|
101
|
+
element: loginType ? /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_8__.jsx)(_login__WEBPACK_IMPORTED_MODULE_5__["default"], {
|
|
102
|
+
config: loginOtpParams[0],
|
|
103
|
+
t: t,
|
|
104
|
+
loginOTPBased: loginType
|
|
105
|
+
}) : /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_8__.jsx)(_login__WEBPACK_IMPORTED_MODULE_5__["default"], {
|
|
106
|
+
config: loginParams[0],
|
|
107
|
+
t: t
|
|
108
|
+
})
|
|
109
|
+
})]
|
|
110
|
+
});
|
|
111
|
+
};
|
|
112
|
+
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (EmployeeLogin);
|
|
113
|
+
|
|
114
|
+
/***/ })
|
|
115
|
+
|
|
116
|
+
},
|
|
117
|
+
/******/ function(__webpack_require__) { // webpackRuntimeModules
|
|
118
|
+
/******/ /* webpack/runtime/getFullHash */
|
|
119
|
+
/******/ (() => {
|
|
120
|
+
/******/ __webpack_require__.h = () => ("08f8755983b7134bc9cd")
|
|
121
|
+
/******/ })();
|
|
122
|
+
/******/
|
|
123
|
+
/******/ }
|
|
124
|
+
);
|
|
125
|
+
//# sourceMappingURL=main.5cddd7524feabea78c32.hot-update.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"c":["main"],"r":[],"m":[]}
|
|
@@ -0,0 +1,126 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
this["webpackHotUpdate_egovernments_digit_ui_module_core"]("main",{
|
|
3
|
+
|
|
4
|
+
/***/ "./src/pages/employee/Login/index.js":
|
|
5
|
+
/*!*******************************************!*\
|
|
6
|
+
!*** ./src/pages/employee/Login/index.js ***!
|
|
7
|
+
\*******************************************/
|
|
8
|
+
/***/ ((__unused_webpack_module, __webpack_exports__, __webpack_require__) => {
|
|
9
|
+
|
|
10
|
+
__webpack_require__.r(__webpack_exports__);
|
|
11
|
+
/* harmony export */ __webpack_require__.d(__webpack_exports__, {
|
|
12
|
+
/* harmony export */ "default": () => (__WEBPACK_DEFAULT_EXPORT__)
|
|
13
|
+
/* harmony export */ });
|
|
14
|
+
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0__ = __webpack_require__(/*! react */ "react");
|
|
15
|
+
/* harmony import */ var react__WEBPACK_IMPORTED_MODULE_0___default = /*#__PURE__*/__webpack_require__.n(react__WEBPACK_IMPORTED_MODULE_0__);
|
|
16
|
+
/* harmony import */ var react_i18next__WEBPACK_IMPORTED_MODULE_1__ = __webpack_require__(/*! react-i18next */ "react-i18next");
|
|
17
|
+
/* harmony import */ var react_i18next__WEBPACK_IMPORTED_MODULE_1___default = /*#__PURE__*/__webpack_require__.n(react_i18next__WEBPACK_IMPORTED_MODULE_1__);
|
|
18
|
+
/* harmony import */ var react_router_dom__WEBPACK_IMPORTED_MODULE_2__ = __webpack_require__(/*! react-router-dom */ "react-router-dom");
|
|
19
|
+
/* harmony import */ var react_router_dom__WEBPACK_IMPORTED_MODULE_2___default = /*#__PURE__*/__webpack_require__.n(react_router_dom__WEBPACK_IMPORTED_MODULE_2__);
|
|
20
|
+
/* harmony import */ var _config__WEBPACK_IMPORTED_MODULE_3__ = __webpack_require__(/*! ./config */ "./src/pages/employee/Login/config.js");
|
|
21
|
+
/* harmony import */ var _ConfigOtp__WEBPACK_IMPORTED_MODULE_4__ = __webpack_require__(/*! ./ConfigOtp */ "./src/pages/employee/Login/ConfigOtp.js");
|
|
22
|
+
/* harmony import */ var _login__WEBPACK_IMPORTED_MODULE_5__ = __webpack_require__(/*! ./login */ "./src/pages/employee/Login/login.js");
|
|
23
|
+
/* harmony import */ var _hooks_useLoginConfig__WEBPACK_IMPORTED_MODULE_6__ = __webpack_require__(/*! ../../../hooks/useLoginConfig */ "./src/hooks/useLoginConfig.js");
|
|
24
|
+
/* harmony import */ var _egovernments_digit_ui_components__WEBPACK_IMPORTED_MODULE_7__ = __webpack_require__(/*! @egovernments/digit-ui-components */ "@egovernments/digit-ui-components");
|
|
25
|
+
/* harmony import */ var _egovernments_digit_ui_components__WEBPACK_IMPORTED_MODULE_7___default = /*#__PURE__*/__webpack_require__.n(_egovernments_digit_ui_components__WEBPACK_IMPORTED_MODULE_7__);
|
|
26
|
+
/* harmony import */ var react_jsx_runtime__WEBPACK_IMPORTED_MODULE_8__ = __webpack_require__(/*! react/jsx-runtime */ "../../../node_modules/react/jsx-runtime.js");
|
|
27
|
+
function ownKeys(e, r) { var t = Object.keys(e); if (Object.getOwnPropertySymbols) { var o = Object.getOwnPropertySymbols(e); r && (o = o.filter(function (r) { return Object.getOwnPropertyDescriptor(e, r).enumerable; })), t.push.apply(t, o); } return t; }
|
|
28
|
+
function _objectSpread(e) { for (var r = 1; r < arguments.length; r++) { var t = null != arguments[r] ? arguments[r] : {}; r % 2 ? ownKeys(Object(t), !0).forEach(function (r) { _defineProperty(e, r, t[r]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(e, Object.getOwnPropertyDescriptors(t)) : ownKeys(Object(t)).forEach(function (r) { Object.defineProperty(e, r, Object.getOwnPropertyDescriptor(t, r)); }); } return e; }
|
|
29
|
+
function _defineProperty(e, r, t) { return (r = _toPropertyKey(r)) in e ? Object.defineProperty(e, r, { value: t, enumerable: !0, configurable: !0, writable: !0 }) : e[r] = t, e; }
|
|
30
|
+
function _toPropertyKey(t) { var i = _toPrimitive(t, "string"); return "symbol" == typeof i ? i : i + ""; }
|
|
31
|
+
function _toPrimitive(t, r) { if ("object" != typeof t || !t) return t; var e = t[Symbol.toPrimitive]; if (void 0 !== e) { var i = e.call(t, r || "default"); if ("object" != typeof i) return i; throw new TypeError("@@toPrimitive must return a primitive value."); } return ("string" === r ? String : Number)(t); }
|
|
32
|
+
|
|
33
|
+
|
|
34
|
+
// Updated imports for v6
|
|
35
|
+
|
|
36
|
+
|
|
37
|
+
|
|
38
|
+
|
|
39
|
+
|
|
40
|
+
|
|
41
|
+
var EmployeeLogin = _ref => {
|
|
42
|
+
var _window;
|
|
43
|
+
var {
|
|
44
|
+
stateCode
|
|
45
|
+
} = _ref;
|
|
46
|
+
var {
|
|
47
|
+
t
|
|
48
|
+
} = (0,react_i18next__WEBPACK_IMPORTED_MODULE_1__.useTranslation)();
|
|
49
|
+
var [loginConfig, setloginConfig] = (0,react__WEBPACK_IMPORTED_MODULE_0__.useState)(_config__WEBPACK_IMPORTED_MODULE_3__.loginConfig);
|
|
50
|
+
var [loginOtpConfig, setloginOtpConfig] = (0,react__WEBPACK_IMPORTED_MODULE_0__.useState)(_ConfigOtp__WEBPACK_IMPORTED_MODULE_4__.LoginOtpConfig);
|
|
51
|
+
var moduleCode = ["privacy-policy"];
|
|
52
|
+
var language = Digit.StoreData.getCurrentLanguage();
|
|
53
|
+
var modulePrefix = "digit";
|
|
54
|
+
var loginType = ((_window = window) === null || _window === void 0 || (_window = _window.globalConfigs) === null || _window === void 0 ? void 0 : _window.getConfig("OTP_BASED_LOGIN")) || false;
|
|
55
|
+
var {
|
|
56
|
+
data: mdmsData,
|
|
57
|
+
isLoading
|
|
58
|
+
} = (0,_hooks_useLoginConfig__WEBPACK_IMPORTED_MODULE_6__.useLoginConfig)(stateCode);
|
|
59
|
+
var {
|
|
60
|
+
data: store
|
|
61
|
+
} = Digit.Services.useStore({
|
|
62
|
+
stateCode,
|
|
63
|
+
moduleCode,
|
|
64
|
+
language,
|
|
65
|
+
modulePrefix
|
|
66
|
+
});
|
|
67
|
+
(0,react__WEBPACK_IMPORTED_MODULE_0__.useEffect)(() => {
|
|
68
|
+
if (!isLoading && mdmsData !== null && mdmsData !== void 0 && mdmsData.config) {
|
|
69
|
+
setloginConfig(mdmsData === null || mdmsData === void 0 ? void 0 : mdmsData.config);
|
|
70
|
+
} else {
|
|
71
|
+
setloginConfig(_config__WEBPACK_IMPORTED_MODULE_3__.loginConfig);
|
|
72
|
+
}
|
|
73
|
+
}, [mdmsData, isLoading]);
|
|
74
|
+
var loginParams = (0,react__WEBPACK_IMPORTED_MODULE_0__.useMemo)(() => loginConfig.map(step => {
|
|
75
|
+
var texts = {};
|
|
76
|
+
for (var key in step.texts) {
|
|
77
|
+
texts[key] = t(step.texts[key]);
|
|
78
|
+
}
|
|
79
|
+
return _objectSpread(_objectSpread({}, step), {}, {
|
|
80
|
+
texts
|
|
81
|
+
});
|
|
82
|
+
}, [loginConfig]));
|
|
83
|
+
console.log(loginParams, "Login");
|
|
84
|
+
var loginOtpParams = (0,react__WEBPACK_IMPORTED_MODULE_0__.useMemo)(() => loginOtpConfig.map(step => {
|
|
85
|
+
var texts = {};
|
|
86
|
+
for (var key in step.texts) {
|
|
87
|
+
texts[key] = t(step.texts[key]);
|
|
88
|
+
}
|
|
89
|
+
return _objectSpread(_objectSpread({}, step), {}, {
|
|
90
|
+
texts
|
|
91
|
+
});
|
|
92
|
+
}, [loginOtpConfig]));
|
|
93
|
+
if (isLoading) {
|
|
94
|
+
return /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_8__.jsx)(_egovernments_digit_ui_components__WEBPACK_IMPORTED_MODULE_7__.Loader, {
|
|
95
|
+
page: false,
|
|
96
|
+
variant: "PageLoader"
|
|
97
|
+
});
|
|
98
|
+
}
|
|
99
|
+
return /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_8__.jsxs)(react_router_dom__WEBPACK_IMPORTED_MODULE_2__.Routes, {
|
|
100
|
+
children: [" ", /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_8__.jsx)(react_router_dom__WEBPACK_IMPORTED_MODULE_2__.Route, {
|
|
101
|
+
path: "/",
|
|
102
|
+
element: loginType ? /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_8__.jsx)(_login__WEBPACK_IMPORTED_MODULE_5__["default"], {
|
|
103
|
+
config: loginOtpParams[0],
|
|
104
|
+
t: t,
|
|
105
|
+
loginOTPBased: loginType
|
|
106
|
+
}) : /*#__PURE__*/(0,react_jsx_runtime__WEBPACK_IMPORTED_MODULE_8__.jsx)(_login__WEBPACK_IMPORTED_MODULE_5__["default"], {
|
|
107
|
+
config: loginParams[0],
|
|
108
|
+
t: t
|
|
109
|
+
})
|
|
110
|
+
})]
|
|
111
|
+
});
|
|
112
|
+
};
|
|
113
|
+
/* harmony default export */ const __WEBPACK_DEFAULT_EXPORT__ = (EmployeeLogin);
|
|
114
|
+
|
|
115
|
+
/***/ })
|
|
116
|
+
|
|
117
|
+
},
|
|
118
|
+
/******/ function(__webpack_require__) { // webpackRuntimeModules
|
|
119
|
+
/******/ /* webpack/runtime/getFullHash */
|
|
120
|
+
/******/ (() => {
|
|
121
|
+
/******/ __webpack_require__.h = () => ("5cddd7524feabea78c32")
|
|
122
|
+
/******/ })();
|
|
123
|
+
/******/
|
|
124
|
+
/******/ }
|
|
125
|
+
);
|
|
126
|
+
//# sourceMappingURL=main.67dccefddc0b941541c8.hot-update.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"c":["main"],"r":[],"m":[]}
|